/*!--------------------------------------------------------
 * Copyright (C) Microsoft Corporation. All rights reserved.
 *--------------------------------------------------------*/
/******************************************************************************
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 */

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);
};

export 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 __());
}

export 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);
}

export 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;
}

export 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;
}

export function __param(paramIndex, decorator) {
    return function (target, key) { decorator(target, key, paramIndex); }
}

export 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;
};

export 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;
};

export function __propKey(x) {
    return typeof x === "symbol" ? x : "".concat(x);
};

export 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 });
};

export function __metadata(metadataKey, metadataValue) {
    if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}

export 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());
    });
}

export function __generator(thisArg, body) {
    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
    return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (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 };
    }
}

export 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];
});

export function __exportStar(m, o) {
    for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
}

export 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.");
}

export 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 */
export function __spread() {
    for (var ar = [], i = 0; i < arguments.length; i++)
        ar = ar.concat(__read(arguments[i]));
    return ar;
}

/** @deprecated */
export 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;
}

export 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));
}

export function __await(v) {
    return this instanceof __await ? (this.v = v, this) : new __await(v);
}

export function __asyncGenerator(thisArg, _arguments, generator) {
    if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
    var g = generator.apply(thisArg, _arguments || []), i, q = [];
    return i = {}, verb("next"), verb("throw"), verb("return", 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]); }
}

export 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; }
}

export 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); }
}

export 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;
};

export function __importStar(mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
}

export function __importDefault(mod) {
    return (mod && mod.__esModule) ? mod : { default: mod };
}

export 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);
}

export 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;
}

export 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);
}

export 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;
};

export 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;
    }
    function next() {
        while (env.stack.length) {
            var rec = env.stack.pop();
            try {
                var result = rec.dispose && rec.dispose.call(rec.value);
                if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
            }
            catch (e) {
                fail(e);
            }
        }
        if (env.hasError) throw env.error;
    }
    return next();
}

export default {
    __extends: __extends,
    __assign: __assign,
    __rest: __rest,
    __decorate: __decorate,
    __param: __param,
    __metadata: __metadata,
    __awaiter: __awaiter,
    __generator: __generator,
    __createBinding: __createBinding,
    __exportStar: __exportStar,
    __values: __values,
    __read: __read,
    __spread: __spread,
    __spreadArrays: __spreadArrays,
    __spreadArray: __spreadArray,
    __await: __await,
    __asyncGenerator: __asyncGenerator,
    __asyncDelegator: __asyncDelegator,
    __asyncValues: __asyncValues,
    __makeTemplateObject: __makeTemplateObject,
    __importStar: __importStar,
    __importDefault: __importDefault,
    __classPrivateFieldGet: __classPrivateFieldGet,
    __classPrivateFieldSet: __classPrivateFieldSet,
    __classPrivateFieldIn: __classPrivateFieldIn,
    __addDisposableResource: __addDisposableResource,
    __disposeResources: __disposeResources,
};

var Vs=Object.defineProperty;var Ks=Object.getOwnPropertyDescriptor;var Kr=(n,e,t,r)=>{for(var i=r>1?void 0:r?Ks(e,t):e,s=n.length-1,o;s>=0;s--)(o=n[s])&&(i=(r?o(e,t,i):o(i))||i);return r&&i&&Vs(e,t,i),i};function js(n,e,t=0,r=n.length){let i=t,s=r;for(;i<s;){let o=Math.floor((i+s)/2);e(n[o])?i=o+1:s=o}return i-1}var jr=class n{constructor(e){this._array=e;this._findLastMonotonousLastIdx=0}static{this.assertInvariants=!1}findLastMonotonous(e){if(n.assertInvariants){if(this._prevFindLastPredicate){for(let r of this._array)if(this._prevFindLastPredicate(r)&&!e(r))throw new Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=e}let t=js(this._array,e,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=t+1,t===-1?void 0:this._array[t]}};var On=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?De.isErrorNoTelemetry(e)?new De(e.message+`

`+e.stack):new Error(e.message+`

`+e.stack):e},0)}}addListener(e){return this.listeners.push(e),()=>{this._removeListener(e)}}emit(e){this.listeners.forEach(t=>{t(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}},zs=new On;function ce(n){Gs(n)||zs.onUnexpectedError(n)}var Wn="Canceled";function Gs(n){return n instanceof re?!0:n instanceof Error&&n.name===Wn&&n.message===Wn}var re=class extends Error{constructor(){super(Wn),this.name=this.message}},zr=class n extends Error{static{this._name="PendingMigrationError"}static is(e){return e instanceof n||e instanceof Error&&e.name===n._name}constructor(e){super(e),this.name=n._name}};var De=class n extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof n)return e;let t=new n;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}},Se=class n extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,n.prototype)}};function Qr(n,e,t=(r,i)=>r===i){if(n===e)return!0;if(!n||!e||n.length!==e.length)return!1;for(let r=0,i=n.length;r<i;r++)if(!t(n[r],e[r]))return!1;return!0}function Jr(n){return n.filter(e=>!!e)}function Nn(n,e){let t;if(typeof e=="number"){let r=e;t=()=>{let i=Math.sin(r++)*179426549;return i-Math.floor(i)}}else t=Math.random;for(let r=n.length-1;r>0;r-=1){let i=Math.floor(t()*(r+1)),s=n[r];n[r]=n[i],n[i]=s}}function Yr(n){return n[Math.floor(Math.random()*n.length)]}var Xr;(a=>{function n(l){return l<0}a.isLessThan=n;function e(l){return l<=0}a.isLessThanOrEqual=e;function t(l){return l>0}a.isGreaterThan=t;function r(l){return l===0}a.isNeitherLessOrGreaterThan=r,a.greaterThan=1,a.lessThan=-1,a.neitherLessOrGreaterThan=0})(Xr||={});function Zr(n,e){return(t,r)=>e(n(t),n(r))}var ei=(n,e)=>n-e;var Hr=class n{constructor(e){this.iterate=e}static{this.empty=new n(e=>{})}forEach(e){this.iterate(t=>(e(t),!0))}toArray(){let e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new n(t=>this.iterate(r=>e(r)?t(r):!0))}map(e){return new n(t=>this.iterate(r=>t(e(r))))}some(e){let t=!1;return this.iterate(r=>(t=e(r),!t)),t}findFirst(e){let t;return this.iterate(r=>e(r)?(t=r,!1):!0),t}findLast(e){let t;return this.iterate(r=>(e(r)&&(t=r),!0)),t}findLastMaxBy(e){let t,r=!0;return this.iterate(i=>((r||Xr.isGreaterThan(e(i,t)))&&(r=!1,t=i),!0)),t}};function ii(n,e){let t=Object.create(null);for(let r of n){let i=e(r),s=t[i];s||(s=t[i]=[]),s.push(r)}return t}var ni,ri,ti=class{constructor(e,t){this.toKey=t;this._map=new Map;this[ni]="SetWithKey";for(let r of e)this.add(r)}get size(){return this._map.size}add(e){let t=this.toKey(e);return this._map.set(t,e),this}delete(e){return this._map.delete(this.toKey(e))}has(e){return this._map.has(this.toKey(e))}*entries(){for(let e of this._map.values())yield[e,e]}keys(){return this.values()}*values(){for(let e of this._map.values())yield e}clear(){this._map.clear()}forEach(e,t){this._map.forEach(r=>e.call(t,r,r,this))}[(ri=Symbol.iterator,ni=Symbol.toStringTag,ri)](){return this.values()}};var Cn=class{constructor(e,t){this.uri=e;this.value=t}};function Qs(n){return Array.isArray(n)}var oi,bt=class n{constructor(e,t){this[oi]="ResourceMap";if(e instanceof n)this.map=new Map(e.map),this.toKey=t??n.defaultToKey;else if(Qs(e)){this.map=new Map,this.toKey=t??n.defaultToKey;for(let[r,i]of e)this.set(r,i)}else this.map=new Map,this.toKey=e??n.defaultToKey}static{this.defaultToKey=e=>e.toString()}set(e,t){return this.map.set(this.toKey(e),new Cn(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){typeof t<"u"&&(e=e.bind(t));for(let[r,i]of this.map)e(i.value,i.uri,this)}*values(){for(let e of this.map.values())yield e.value}*keys(){for(let e of this.map.values())yield e.uri}*entries(){for(let e of this.map.values())yield[e.uri,e.value]}*[(oi=Symbol.toStringTag,Symbol.iterator)](){for(let[,e]of this.map)yield[e.uri,e.value]}},ai,si=class{constructor(e,t){this[ai]="ResourceSet";!e||typeof e=="function"?this._map=new bt(e):(this._map=new bt(t),e.forEach(this.add,this))}get size(){return this._map.size}add(e){return this._map.set(e,e),this}clear(){this._map.clear()}delete(e){return this._map.delete(e)}forEach(e,t){this._map.forEach((r,i)=>e.call(t,i,i,this))}has(e){return this._map.has(e)}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.keys()}[(ai=Symbol.toStringTag,Symbol.iterator)](){return this.keys()}};var li,Mn=class{constructor(){this[li]="LinkedMap";this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){let r=this._map.get(e);if(r)return t!==0&&this.touch(r,t),r.value}set(e,t,r=0){let i=this._map.get(e);if(i)i.value=t,r!==0&&this.touch(i,r);else{switch(i={key:e,value:t,next:void 0,previous:void 0},r){case 0:this.addItemLast(i);break;case 1:this.addItemFirst(i);break;case 2:this.addItemLast(i);break;default:this.addItemLast(i);break}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){let r=this._state,i=this._head;for(;i;){if(t?e.bind(t)(i.value,i.key,this):e(i.value,i.key,this),this._state!==r)throw new Error("LinkedMap got modified during iteration.");i=i.next}}keys(){let e=this,t=this._state,r=this._head,i={[Symbol.iterator](){return i},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(r){let s={value:r.key,done:!1};return r=r.next,s}else return{value:void 0,done:!0}}};return i}values(){let e=this,t=this._state,r=this._head,i={[Symbol.iterator](){return i},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(r){let s={value:r.value,done:!1};return r=r.next,s}else return{value:void 0,done:!0}}};return i}entries(){let e=this,t=this._state,r=this._head,i={[Symbol.iterator](){return i},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(r){let s={value:[r.key,r.value],done:!1};return r=r.next,s}else return{value:void 0,done:!0}}};return i}[(li=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._head,r=this.size;for(;t&&r>e;)this._map.delete(t.key),t=t.next,r--;this._head=t,this._size=r,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._tail,r=this.size;for(;t&&r>e;)this._map.delete(t.key),t=t.previous,r--;this._tail=t,this._size=r,t&&(t.next=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let t=e.next,r=e.previous;if(!t||!r)throw new Error("Invalid list");t.previous=r,r.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(t!==1&&t!==2)){if(t===1){if(e===this._head)return;let r=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(r.previous=i,i.next=r),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===2){if(e===this._tail)return;let r=e.next,i=e.previous;e===this._head?(r.previous=void 0,this._head=r):(r.previous=i,i.next=r),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((t,r)=>{e.push([r,t])}),e}fromJSON(e){this.clear();for(let[t,r]of e)this.set(t,r)}},qn=class extends Mn{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}},Ae=class extends qn{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}};var qt=class{constructor(){this.map=new Map}add(e,t){let r=this.map.get(e);r||(r=new Set,this.map.set(e,r)),r.add(t)}delete(e,t){let r=this.map.get(e);r&&(r.delete(t),r.size===0&&this.map.delete(e))}forEach(e,t){let r=this.map.get(e);r&&r.forEach(t)}get(e){let t=this.map.get(e);return t||new Set}};function Tt(n,e){let t=this,r=!1,i;return function(){if(r)return i;if(r=!0,e)try{i=n.apply(t,arguments)}finally{e()}else i=n.apply(t,arguments);return i}}function Bt(n,e="unexpected state"){if(!n)throw typeof e=="string"?new Se(`Assertion Failed: ${e}`):e}function Bn(n){return typeof n=="string"}function $n(n){return typeof n=="number"&&!isNaN(n)}function ui(n){return!!n&&typeof n[Symbol.iterator]=="function"}function Js(n){return typeof n>"u"}function Vn(n){return Js(n)||n===null}function ci(n,e){if(!n)throw new Error(e?`Unexpected type, expected '${e}'`:"Unexpected type")}function Kn(n){return typeof n=="function"}var jn;(Un=>{function n(I){return!!I&&typeof I=="object"&&typeof I[Symbol.iterator]=="function"}Un.is=n;let e=Object.freeze([]);function t(){return e}Un.empty=t;function*r(I){yield I}Un.single=r;function i(I){return n(I)?I:r(I)}Un.wrap=i;function s(I){return I??e}Un.from=s;function*o(I){for(let R=I.length-1;R>=0;R--)yield I[R]}Un.reverse=o;function a(I){return!I||I[Symbol.iterator]().next().done===!0}Un.isEmpty=a;function l(I){return I[Symbol.iterator]().next().value}Un.first=l;function u(I,R){let F=0;for(let X of I)if(R(X,F++))return!0;return!1}Un.some=u;function d(I,R){let F=0;for(let X of I)if(!R(X,F++))return!1;return!0}Un.every=d;function c(I,R){for(let F of I)if(R(F))return F}Un.find=c;function*f(I,R){for(let F of I)R(F)&&(yield F)}Un.filter=f;function*m(I,R){let F=0;for(let X of I)yield R(X,F++)}Un.map=m;function*v(I,R){let F=0;for(let X of I)yield*R(X,F++)}Un.flatMap=v;function*y(...I){for(let R of I)ui(R)?yield*R:yield R}Un.concat=y;function L(I,R,F){let X=F;for(let $e of I)X=R(X,$e);return X}Un.reduce=L;function W(I){let R=0;for(let F of I)R++;return R}Un.length=W;function*te(I,R,F=I.length){for(R<-I.length&&(R=0),R<0&&(R+=I.length),F<0?F+=I.length:F>I.length&&(F=I.length);R<F;R++)yield I[R]}Un.slice=te;function J(I,R=Number.POSITIVE_INFINITY){let F=[];if(R===0)return[F,I];let X=I[Symbol.iterator]();for(let $e=0;$e<R;$e++){let Mt=X.next();if(Mt.done)return[F,Un.empty()];F.push(Mt.value)}return[F,{[Symbol.iterator](){return X}}]}Un.consume=J;async function be(I){let R=[];for await(let F of I)R.push(F);return R}Un.asyncToArray=be;async function M(I){let R=[];for await(let F of I)R=R.concat(F);return R}Un.asyncToArrayFlat=M})(jn||={});var Ys=!1,it=null;var fi=class n{constructor(){this.livingDisposables=new Map}static{this.idx=0}getDisposableData(e){let t=this.livingDisposables.get(e);return t||(t={parent:null,source:null,isSingleton:!1,value:e,idx:n.idx++},this.livingDisposables.set(e,t)),t}trackDisposable(e){let t=this.getDisposableData(e);t.source||(t.source=new Error().stack)}setParent(e,t){let r=this.getDisposableData(e);r.parent=t}markAsDisposed(e){this.livingDisposables.delete(e)}markAsSingleton(e){this.getDisposableData(e).isSingleton=!0}getRootParent(e,t){let r=t.get(e);if(r)return r;let i=e.parent?this.getRootParent(this.getDisposableData(e.parent),t):e;return t.set(e,i),i}getTrackedDisposables(){let e=new Map;return[...this.livingDisposables.entries()].filter(([,r])=>r.source!==null&&!this.getRootParent(r,e).isSingleton).flatMap(([r])=>r)}computeLeakingDisposables(e=10,t){let r;if(t)r=t;else{let l=new Map,u=[...this.livingDisposables.values()].filter(c=>c.source!==null&&!this.getRootParent(c,l).isSingleton);if(u.length===0)return;let d=new Set(u.map(c=>c.value));if(r=u.filter(c=>!(c.parent&&d.has(c.parent))),r.length===0)throw new Error("There are cyclic diposable chains!")}if(!r)return;function i(l){function u(c,f){for(;c.length>0&&f.some(m=>typeof m=="string"?m===c[0]:c[0].match(m));)c.shift()}let d=l.source.split(`
`).map(c=>c.trim().replace("at ","")).filter(c=>c!=="");return u(d,["Error",/^trackDisposable \(.*\)$/,/^DisposableTracker.trackDisposable \(.*\)$/]),d.reverse()}let s=new qt;for(let l of r){let u=i(l);for(let d=0;d<=u.length;d++)s.add(u.slice(0,d).join(`
`),l)}r.sort(Zr(l=>l.idx,ei));let o="",a=0;for(let l of r.slice(0,e)){a++;let u=i(l),d=[];for(let c=0;c<u.length;c++){let f=u[c];f=`(shared with ${s.get(u.slice(0,c+1).join(`
`)).size}/${r.length} leaks) at ${f}`;let v=s.get(u.slice(0,c).join(`
`)),y=ii([...v].map(L=>i(L)[c]),L=>L);delete y[u[c]];for(let[L,W]of Object.entries(y))W&&d.unshift(`    - stacktraces of ${W.length} other leaks continue with ${L}`);d.unshift(f)}o+=`


==================== Leaking disposable ${a}/${r.length}: ${l.value.constructor.name} ====================
${d.join(`
`)}
============================================================

`}return r.length>e&&(o+=`


... and ${r.length-e} more leaking disposables

`),{leaks:r,details:o}}};function Xs(n){it=n}if(Ys){let n="__is_disposable_tracked__";Xs(new class{trackDisposable(e){let t=new Error("Potentially leaked disposable").stack;setTimeout(()=>{e[n]||console.log(t)},3e3)}setParent(e,t){if(e&&e!==B.None)try{e[n]=!0}catch{}}markAsDisposed(e){if(e&&e!==B.None)try{e[n]=!0}catch{}}markAsSingleton(e){}})}function yt(n){return it?.trackDisposable(n),n}function It(n){it?.markAsDisposed(n)}function je(n,e){it?.setParent(n,e)}function Zs(n,e){if(it)for(let t of n)it.setParent(t,e)}function pi(n){return typeof n=="object"&&n!==null&&typeof n.dispose=="function"&&n.dispose.length===0}function ze(n){if(jn.is(n)){let e=[];for(let t of n)if(t)try{t.dispose()}catch(r){e.push(r)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(n)?[]:n}else if(n)return n.dispose(),n}function hi(...n){let e=j(()=>ze(n));return Zs(n,e),e}var zn=class{constructor(e){this._isDisposed=!1,this._fn=e,yt(this)}dispose(){if(!this._isDisposed){if(!this._fn)throw new Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,It(this),this._fn()}}};function j(n){return new zn(n)}var q=class n{constructor(){this._toDispose=new Set;this._isDisposed=!1;yt(this)}static{this.DISABLE_DISPOSED_WARNING=!1}dispose(){this._isDisposed||(It(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{ze(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e||e===B.None)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return je(e,this),this._isDisposed?n.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}delete(e){if(e){if(e===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}deleteAndLeak(e){e&&this._toDispose.delete(e)&&je(e,null)}assertNotDisposed(){this._isDisposed&&ce(new Se("Object disposed"))}},B=class{constructor(){this._store=new q;yt(this),je(this._store,this)}static{this.None=Object.freeze({dispose(){}})}dispose(){It(this),this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}},Fe=class{constructor(){this._isDisposed=!1;yt(this)}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),e&&je(e,this),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,It(this),this._value?.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e&&je(e,null),e}};var ke=class{constructor(e=new Map){this._isDisposed=!1;this._store=e,yt(this)}dispose(){It(this),this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{ze(this._store.values())}finally{this._store.clear()}}has(e){return this._store.has(e)}get size(){return this._store.size}get(e){return this._store.get(e)}set(e,t,r=!1){this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),r||this._store.get(e)?.dispose(),this._store.set(e,t),je(t,this)}deleteAndDispose(e){this._store.get(e)?.dispose(),this._store.delete(e)}deleteAndLeak(e){let t=this._store.get(e);return t&&je(t,null),this._store.delete(e),t}keys(){return this._store.keys()}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}};function mi(n,e){return n.then(t=>(e.isDisposed?t.dispose():e.add(t),t))}var gi=class n{static{this.Undefined=new n(void 0)}constructor(e){this.element=e,this.next=n.Undefined,this.prev=n.Undefined}};var eo=globalThis.performance.now.bind(globalThis.performance),$t=class n{static create(e){return new n(e)}constructor(e){this._now=e===!1?Date.now:eo,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}};var vi=!1,to=!1,k;(Ve=>{Ve.None=()=>B.None;function e(b){if(to){let{onDidAddListener:p}=b,g=_t.create(),h=0;b.onDidAddListener=()=>{++h===2&&(console.warn("snapshotted emitter LIKELY used public and SHOULD HAVE BEEN created with DisposableStore. snapshotted here"),g.print()),p?.()}}}function t(b,p,g){return m(b,()=>{},0,void 0,p??!0,void 0,g)}Ve.defer=t;function r(b){return(p,g=null,h)=>{let T=!1,x;return x=b(A=>{if(!T)return x?x.dispose():T=!0,p.call(g,A)},null,h),T&&x.dispose(),x}}Ve.once=r;function i(b,p){return Ve.once(Ve.filter(b,p))}Ve.onceIf=i;function s(b,p,g){return c((h,T=null,x)=>b(A=>h.call(T,p(A)),null,x),g)}Ve.map=s;function o(b,p,g){return c((h,T=null,x)=>b(A=>{p(A),h.call(T,A)},null,x),g)}Ve.forEach=o;function a(b,p,g){return c((h,T=null,x)=>b(A=>p(A)&&h.call(T,A),null,x),g)}Ve.filter=a;function l(b){return b}Ve.signal=l;function u(...b){return(p,g=null,h)=>{let T=hi(...b.map(x=>x(A=>p.call(g,A))));return f(T,h)}}Ve.any=u;function d(b,p,g,h){let T=g;return s(b,x=>(T=p(T,x),T),h)}Ve.reduce=d;function c(b,p){let g,h={onWillAddFirstListener(){g=b(T.fire,T)},onDidRemoveLastListener(){g?.dispose()}};p||e(h);let T=new D(h);return p?.add(T),T.event}function f(b,p){return p instanceof Array?p.push(b):p&&p.add(b),b}function m(b,p,g=100,h=!1,T=!1,x,A){let K,N,ne,ue=0,Te,ye={leakWarningThreshold:x,onWillAddFirstListener(){K=b($r=>{ue++,N=p(N,$r),h&&!ne&&(Ke.fire(N),N=void 0),Te=()=>{let Vr=N;N=void 0,ne=void 0,(!h||ue>1)&&Ke.fire(Vr),ue=0},typeof g=="number"?(ne&&clearTimeout(ne),ne=setTimeout(Te,g)):ne===void 0&&(ne=null,queueMicrotask(Te))})},onWillRemoveListener(){T&&ue>0&&Te?.()},onDidRemoveLastListener(){Te=void 0,K.dispose()}};A||e(ye);let Ke=new D(ye);return A?.add(Ke),Ke.event}Ve.debounce=m;function v(b,p=0,g,h){return Ve.debounce(b,(T,x)=>T?(T.push(x),T):[x],p,void 0,g??!0,void 0,h)}Ve.accumulate=v;function y(b,p,g=100,h=!0,T=!0,x,A){let K,N,ne,ue=0,Te={leakWarningThreshold:x,onWillAddFirstListener(){K=b(Ke=>{ue++,N=p(N,Ke),ne===void 0&&(h&&(ye.fire(N),N=void 0,ue=0),typeof g=="number"?ne=setTimeout(()=>{T&&ue>0&&ye.fire(N),N=void 0,ne=void 0,ue=0},g):(ne=0,queueMicrotask(()=>{T&&ue>0&&ye.fire(N),N=void 0,ne=void 0,ue=0})))})},onDidRemoveLastListener(){K.dispose()}};A||e(Te);let ye=new D(Te);return A?.add(ye),ye.event}Ve.throttle=y;function L(b,p=(h,T)=>h===T,g){let h=!0,T;return a(b,x=>{let A=h||!p(x,T);return h=!1,T=x,A},g)}Ve.latch=L;function W(b,p,g){return[Ve.filter(b,p,g),Ve.filter(b,h=>!p(h),g)]}Ve.split=W;function te(b,p=!1,g=[],h){let T=g.slice(),x=b(N=>{T?T.push(N):K.fire(N)});h&&h.add(x);let A=()=>{T?.forEach(N=>K.fire(N)),T=null},K=new D({onWillAddFirstListener(){x||(x=b(N=>K.fire(N)),h&&h.add(x))},onDidAddFirstListener(){T&&(p?setTimeout(A):A())},onDidRemoveLastListener(){x&&x.dispose(),x=null}});return h&&h.add(K),K.event}Ve.buffer=te;function J(b,p){return(h,T,x)=>{let A=p(new M);return b(function(K){let N=A.evaluate(K);N!==be&&h.call(T,N)},void 0,x)}}Ve.chain=J;let be=Symbol("HaltChainable");class M{constructor(){this.steps=[]}map(p){return this.steps.push(p),this}forEach(p){return this.steps.push(g=>(p(g),g)),this}filter(p){return this.steps.push(g=>p(g)?g:be),this}reduce(p,g){let h=g;return this.steps.push(T=>(h=p(h,T),h)),this}latch(p=(g,h)=>g===h){let g=!0,h;return this.steps.push(T=>{let x=g||!p(T,h);return g=!1,h=T,x?T:be}),this}evaluate(p){for(let g of this.steps)if(p=g(p),p===be)break;return p}}function Un(b,p,g=h=>h){let h=(...K)=>A.fire(g(...K)),T=()=>b.on(p,h),x=()=>b.removeListener(p,h),A=new D({onWillAddFirstListener:T,onDidRemoveLastListener:x});return A.event}Ve.fromNodeEventEmitter=Un;function I(b,p,g=h=>h){let h=(...K)=>A.fire(g(...K)),T=()=>b.addEventListener(p,h),x=()=>b.removeEventListener(p,h),A=new D({onWillAddFirstListener:T,onDidRemoveLastListener:x});return A.event}Ve.fromDOMEventEmitter=I;function R(b,p){let g,h,T=new Promise(x=>{h=r(b)(x),Xn(h,p),g=()=>{Ti(h,p)}});return T.cancel=g,p&&T.finally(()=>Ti(h,p)),T}Ve.toPromise=R;function F(b,p){return b(g=>p.fire(g))}Ve.forward=F;function X(b,p,g){return p(g),b(h=>p(h))}Ve.runAndSubscribe=X;class $e{constructor(p,g){this._observable=p;this._counter=0;this._hasChanged=!1;let h={onWillAddFirstListener:()=>{p.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{p.removeObserver(this)}};g||e(h),this.emitter=new D(h),g&&g.add(this.emitter)}beginUpdate(p){this._counter++}handlePossibleChange(p){}handleChange(p,g){this._hasChanged=!0}endUpdate(p){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function Mt(b,p){return new $e(b,p).emitter.event}Ve.fromObservable=Mt;function $s(b){return(p,g,h)=>{let T=0,x=!1,A={beginUpdate(){T++},endUpdate(){T--,T===0&&(b.reportChanges(),x&&(x=!1,p.call(g)))},handlePossibleChange(){},handleChange(){x=!0}};b.addObserver(A),b.reportChanges();let K={dispose(){b.removeObserver(A)}};return Xn(K,h),K}}Ve.fromObservableLight=$s})(k||={});var Gn=class n{constructor(e){this.listenerCount=0;this.invocationCount=0;this.elapsedOverall=0;this.durations=[];this.name=`${e}_${n._idPool++}`,n.all.add(this)}static{this.all=new Set}static{this._idPool=0}start(e){this._stopWatch=new $t,this.listenerCount=e}stop(){if(this._stopWatch){let e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}},bi=-1;var Hn=class n{constructor(e,t,r=(n._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e;this.threshold=t;this.name=r;this._warnCountdown=0}static{this._idPool=1}dispose(){this._stacks?.clear()}check(e,t){let r=this.threshold;if(r<=0||t<r)return;this._stacks||(this._stacks=new Map);let i=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,i+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=r*.5;let[s,o]=this.getMostFrequentStack(),a=`[${this.name}] potential listener LEAK detected, having ${t} listeners already. MOST frequent listener (${o}):`;console.warn(a),console.warn(s);let l=new Qn(a,s);this._errorHandler(l)}return()=>{let s=this._stacks.get(e.value)||0;this._stacks.set(e.value,s-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(let[r,i]of this._stacks)(!e||t<i)&&(e=[r,i],t=i);return e}},_t=class n{constructor(e){this.value=e}static create(){let e=new Error;return new n(e.stack??"")}print(){console.warn(this.value.split(`
`).slice(2).join(`
`))}},Qn=class extends Error{constructor(e,t){super(e),this.name="ListenerLeakError",this.stack=t}},Jn=class extends Error{constructor(e,t){super(e),this.name="ListenerRefusalError",this.stack=t}},no=0,st=class{constructor(e){this.value=e;this.id=no++}},ro=2,io=(n,e)=>{if(n instanceof st)e(n);else for(let t=0;t<n.length;t++){let r=n[t];r&&e(r)}},D=class{constructor(e){this._size=0;this._options=e,this._leakageMon=bi>0||this._options?.leakWarningThreshold?new Hn(e?.onListenerError??ce,this._options?.leakWarningThreshold??bi):void 0,this._perfMon=this._options?._profName?new Gn(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){if(!this._disposed){if(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners){if(vi){let e=this._listeners;queueMicrotask(()=>{io(e,t=>t.stack?.print())})}this._listeners=void 0,this._size=0}this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose()}}get event(){return this._event??=(e,t,r)=>{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let l=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(l);let u=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],d=new Jn(`${l}. HINT: Stack shows most frequent listener (${u[1]}-times)`,u[0]);return(this._options?.onListenerError||ce)(d),B.None}if(this._disposed)return B.None;t&&(e=e.bind(t));let i=new st(e),s,o;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(i.stack=_t.create(),s=this._leakageMon.check(i.stack,this._size+1)),vi&&(i.stack=o??_t.create()),this._listeners?this._listeners instanceof st?(this._deliveryQueue??=new Yn,this._listeners=[this._listeners,i]):this._listeners.push(i):(this._options?.onWillAddFirstListener?.(this),this._listeners=i,this._options?.onDidAddFirstListener?.(this)),this._options?.onDidAddListener?.(this),this._size++;let a=j(()=>{s?.(),this._removeListener(i)});return Xn(a,r),a},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let t=this._listeners,r=t.indexOf(e);if(r===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[r]=void 0;let i=this._deliveryQueue.current===this;if(this._size*ro<=t.length){let s=0;for(let o=0;o<t.length;o++)t[o]?t[s++]=t[o]:i&&s<this._deliveryQueue.end&&(this._deliveryQueue.end--,s<this._deliveryQueue.i&&this._deliveryQueue.i--);t.length=s}}_deliver(e,t){if(!e)return;let r=this._options?.onListenerError||ce;if(!r){e.value(t);return}try{e.value(t)}catch(i){r(i)}}_deliverQueue(e){let t=e.current._listeners;for(;e.i<e.end;)this._deliver(t[e.i++],e.value);e.reset()}fire(e){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof st)this._deliver(this._listeners,e);else{let t=this._deliveryQueue;t.enqueue(this,e,this._listeners.length),this._deliverQueue(t)}this._perfMon?.stop()}hasListeners(){return this._size>0}};var Yn=class{constructor(){this.i=-1;this.end=0}enqueue(e,t,r){this.i=0,this.end=r,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}};var Vt=class{constructor(){this.hasListeners=!1;this.events=[];this.emitter=new D({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){let t={event:e,listener:null};return this.events.push(t),this.hasListeners&&this.hook(t),j(Tt(()=>{this.hasListeners&&this.unhook(t);let i=this.events.indexOf(t);this.events.splice(i,1)}))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach(e=>this.hook(e))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach(e=>this.unhook(e))}hook(e){e.listener=e.event(t=>this.emitter.fire(t))}unhook(e){e.listener?.dispose(),e.listener=null}dispose(){this.emitter.dispose();for(let e of this.events)e.listener?.dispose();this.events=[]}};var Kt=class{constructor(){this.listening=!1;this.inputEvent=k.None;this.inputEventListener=B.None;this.emitter=new D({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}});this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}};function Xn(n,e){e instanceof q?e.add(n):Array.isArray(e)&&e.push(n)}function Ti(n,e){if(e instanceof q)e.delete(n);else if(Array.isArray(e)){let t=e.indexOf(n);t!==-1&&e.splice(t,1)}n.dispose()}var yi=Object.freeze(function(n,e){let t=setTimeout(n.bind(e),0);return{dispose(){clearTimeout(t)}}}),Ge;(r=>{function n(i){return i===r.None||i===r.Cancelled||i instanceof ot?!0:!i||typeof i!="object"?!1:typeof i.isCancellationRequested=="boolean"&&typeof i.onCancellationRequested=="function"}r.isCancellationToken=n,r.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:k.None}),r.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:yi})})(Ge||={});var ot=class{constructor(){this._isCancelled=!1;this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?yi:(this._emitter||(this._emitter=new D),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},ee=class{constructor(e){this._token=void 0;this._parentListener=void 0;this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new ot),this._token}cancel(){this._token?this._token instanceof ot&&this._token.cancel():this._token=Ge.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof ot&&this._token.dispose():this._token=Ge.None}};function so(){return globalThis._VSCODE_NLS_MESSAGES}function Zn(){return globalThis._VSCODE_NLS_LANGUAGE}var oo=Zn()==="pseudo"||typeof document<"u"&&document.location&&typeof document.location.hash=="string"&&document.location.hash.indexOf("pseudo=true")>=0;function Ii(n,e){let t;return e.length===0?t=n:t=n.replace(/\{(\d+)\}/g,(r,i)=>{let s=e[parseInt(i)],o=r;return typeof s=="string"?o=s:(typeof s=="number"||typeof s=="boolean"||s===void 0||s===null)&&(o=String(s)),o}),oo&&(t="\uFF3B"+t.replace(/[aouei]/g,"$&$&")+"\uFF3D"),t}function le(n,e,...t){return Ii(typeof n=="number"?ao(n,e):e,t)}function ao(n,e){let t=so()?.[n];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${n} !!!`)}return t}var at="en",Gt=!1,Ht=!1,xt=!1,lo=!1,Ei=!1,tr=!1,uo=!1,co=!1,fo=!1,po=!1,jt,zt=at,xi=at,ho,Ie,_e=globalThis,ie;typeof _e.vscode<"u"&&typeof _e.vscode.process<"u"?ie=_e.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(ie=process);var Ri=typeof ie?.versions?.electron=="string",mo=Ri&&ie?.type==="renderer";if(typeof ie=="object"){Gt=ie.platform==="win32",Ht=ie.platform==="darwin",xt=ie.platform==="linux",lo=xt&&!!ie.env.SNAP&&!!ie.env.SNAP_REVISION,uo=Ri,fo=!!ie.env.CI||!!ie.env.BUILD_ARTIFACTSTAGINGDIRECTORY||!!ie.env.GITHUB_WORKSPACE,jt=at,zt=at;let n=ie.env.VSCODE_NLS_CONFIG;if(n)try{let e=JSON.parse(n);jt=e.userLocale,xi=e.osLocale,zt=e.resolvedLanguage||at,ho=e.languagePack?.translationsConfigFile}catch{}Ei=!0}else typeof navigator=="object"&&!mo?(Ie=navigator.userAgent,Gt=Ie.indexOf("Windows")>=0,Ht=Ie.indexOf("Macintosh")>=0,co=(Ie.indexOf("Macintosh")>=0||Ie.indexOf("iPad")>=0||Ie.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,xt=Ie.indexOf("Linux")>=0,po=Ie?.indexOf("Mobi")>=0,tr=!0,zt=Zn()||at,jt=navigator.language.toLowerCase(),xi=jt):console.error("Unable to resolve platform.");var er=0;Ht?er=1:Gt?er=3:xt&&(er=2);var z=Gt,ge=Ht,C=xt;var wi=Ei;var nr=tr,go=tr&&typeof _e.importScripts=="function",Pi=go?_e.origin:void 0;var me=Ie,Le=zt,vo;(r=>{function n(){return Le}r.value=n;function e(){return Le.length===2?Le==="en":Le.length>=3?Le[0]==="e"&&Le[1]==="n"&&Le[2]==="-":!1}r.isDefaultVariant=e;function t(){return Le==="en"}r.isDefault=t})(vo||={});var bo=typeof _e.postMessage=="function"&&!_e.importScripts,Di=(()=>{if(bo){let n=[];_e.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let r=0,i=n.length;r<i;r++){let s=n[r];if(s.id===t.data.vscodeScheduleAsyncWork){n.splice(r,1),s.callback();return}}});let e=0;return t=>{let r=++e;n.push({id:r,callback:t}),_e.postMessage({vscodeScheduleAsyncWork:r},"*")}}return n=>setTimeout(n)})();var To=!!(me&&me.indexOf("Chrome")>=0),Hl=!!(me&&me.indexOf("Firefox")>=0),Ql=!!(!To&&me&&me.indexOf("Safari")>=0),Jl=!!(me&&me.indexOf("Edg/")>=0),Yl=!!(me&&me.indexOf("Android")>=0);var He,rr=globalThis.vscode;if(typeof rr<"u"&&typeof rr.process<"u"){let n=rr.process;He={get platform(){return n.platform},get arch(){return n.arch},get env(){return n.env},cwd(){return n.cwd()}}}else typeof process<"u"&&typeof process?.versions?.node=="string"?He={get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd(){return process.env.VSCODE_CWD||process.cwd()}}:He={get platform(){return z?"win32":ge?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};var lt=He.cwd,ir=He.env,Ai=He.platform,e1=He.arch;var yo=65,Io=97,_o=90,xo=122,Qe=46,Q=47,se=92,xe=58,Eo=63,Qt=class extends Error{constructor(e,t,r){let i;typeof t=="string"&&t.indexOf("not ")===0?(i="must not be",t=t.replace(/^not /,"")):i="must be";let s=e.indexOf(".")!==-1?"property":"argument",o=`The "${e}" ${s} ${i} of type ${t}`;o+=`. Received type ${typeof r}`,super(o),this.code="ERR_INVALID_ARG_TYPE"}};function Ro(n,e){if(n===null||typeof n!="object")throw new Qt(e,"Object",n)}function $(n,e){if(typeof n!="string")throw new Qt(e,"string",n)}var oe=Ai==="win32";function w(n){return n===Q||n===se}function sr(n){return n===Q}function Ee(n){return n>=yo&&n<=_o||n>=Io&&n<=xo}function Jt(n,e,t,r){let i="",s=0,o=-1,a=0,l=0;for(let u=0;u<=n.length;++u){if(u<n.length)l=n.charCodeAt(u);else{if(r(l))break;l=Q}if(r(l)){if(!(o===u-1||a===1))if(a===2){if(i.length<2||s!==2||i.charCodeAt(i.length-1)!==Qe||i.charCodeAt(i.length-2)!==Qe){if(i.length>2){let d=i.lastIndexOf(t);d===-1?(i="",s=0):(i=i.slice(0,d),s=i.length-1-i.lastIndexOf(t)),o=u,a=0;continue}else if(i.length!==0){i="",s=0,o=u,a=0;continue}}e&&(i+=i.length>0?`${t}..`:"..",s=2)}else i.length>0?i+=`${t}${n.slice(o+1,u)}`:i=n.slice(o+1,u),s=u-o-1;o=u,a=0}else l===Qe&&a!==-1?++a:a=-1}return i}function wo(n){return n?`${n[0]==="."?"":"."}${n}`:""}function ki(n,e){Ro(e,"pathObject");let t=e.dir||e.root,r=e.base||`${e.name||""}${wo(e.ext)}`;return t?t===e.root?`${t}${r}`:`${t}${n}${r}`:r}var V={resolve(...n){let e="",t="",r=!1;for(let i=n.length-1;i>=-1;i--){let s;if(i>=0){if(s=n[i],$(s,`paths[${i}]`),s.length===0)continue}else e.length===0?s=lt():(s=ir[`=${e}`]||lt(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===se)&&(s=`${e}\\`));let o=s.length,a=0,l="",u=!1,d=s.charCodeAt(0);if(o===1)w(d)&&(a=1,u=!0);else if(w(d))if(u=!0,w(s.charCodeAt(1))){let c=2,f=c;for(;c<o&&!w(s.charCodeAt(c));)c++;if(c<o&&c!==f){let m=s.slice(f,c);for(f=c;c<o&&w(s.charCodeAt(c));)c++;if(c<o&&c!==f){for(f=c;c<o&&!w(s.charCodeAt(c));)c++;(c===o||c!==f)&&(l=`\\\\${m}\\${s.slice(f,c)}`,a=c)}}}else a=1;else Ee(d)&&s.charCodeAt(1)===xe&&(l=s.slice(0,2),a=2,o>2&&w(s.charCodeAt(2))&&(u=!0,a=3));if(l.length>0)if(e.length>0){if(l.toLowerCase()!==e.toLowerCase())continue}else e=l;if(r){if(e.length>0)break}else if(t=`${s.slice(a)}\\${t}`,r=u,u&&e.length>0)break}return t=Jt(t,!r,"\\",w),r?`${e}\\${t}`:`${e}${t}`||"."},normalize(n){$(n,"path");let e=n.length;if(e===0)return".";let t=0,r,i=!1,s=n.charCodeAt(0);if(e===1)return sr(s)?"\\":n;if(w(s))if(i=!0,w(n.charCodeAt(1))){let a=2,l=a;for(;a<e&&!w(n.charCodeAt(a));)a++;if(a<e&&a!==l){let u=n.slice(l,a);for(l=a;a<e&&w(n.charCodeAt(a));)a++;if(a<e&&a!==l){for(l=a;a<e&&!w(n.charCodeAt(a));)a++;if(a===e)return`\\\\${u}\\${n.slice(l)}\\`;a!==l&&(r=`\\\\${u}\\${n.slice(l,a)}`,t=a)}}}else t=1;else Ee(s)&&n.charCodeAt(1)===xe&&(r=n.slice(0,2),t=2,e>2&&w(n.charCodeAt(2))&&(i=!0,t=3));let o=t<e?Jt(n.slice(t),!i,"\\",w):"";if(o.length===0&&!i&&(o="."),o.length>0&&w(n.charCodeAt(e-1))&&(o+="\\"),!i&&r===void 0&&n.includes(":")){if(o.length>=2&&Ee(o.charCodeAt(0))&&o.charCodeAt(1)===xe)return`.\\${o}`;let a=n.indexOf(":");do if(a===e-1||w(n.charCodeAt(a+1)))return`.\\${o}`;while((a=n.indexOf(":",a+1))!==-1)}return r===void 0?i?`\\${o}`:o:i?`${r}\\${o}`:`${r}${o}`},isAbsolute(n){$(n,"path");let e=n.length;if(e===0)return!1;let t=n.charCodeAt(0);return w(t)||e>2&&Ee(t)&&n.charCodeAt(1)===xe&&w(n.charCodeAt(2))},join(...n){if(n.length===0)return".";let e,t;for(let s=0;s<n.length;++s){let o=n[s];$(o,"path"),o.length>0&&(e===void 0?e=t=o:e+=`\\${o}`)}if(e===void 0)return".";let r=!0,i=0;if(typeof t=="string"&&w(t.charCodeAt(0))){++i;let s=t.length;s>1&&w(t.charCodeAt(1))&&(++i,s>2&&(w(t.charCodeAt(2))?++i:r=!1))}if(r){for(;i<e.length&&w(e.charCodeAt(i));)i++;i>=2&&(e=`\\${e.slice(i)}`)}return V.normalize(e)},relative(n,e){if($(n,"from"),$(e,"to"),n===e)return"";let t=V.resolve(n),r=V.resolve(e);if(t===r||(n=t.toLowerCase(),e=r.toLowerCase(),n===e))return"";if(t.length!==n.length||r.length!==e.length){let v=t.split("\\"),y=r.split("\\");v[v.length-1]===""&&v.pop(),y[y.length-1]===""&&y.pop();let L=v.length,W=y.length,te=L<W?L:W,J;for(J=0;J<te&&v[J].toLowerCase()===y[J].toLowerCase();J++);return J===0?r:J===te?W>te?y.slice(J).join("\\"):L>te?"..\\".repeat(L-1-J)+"..":"":"..\\".repeat(L-J)+y.slice(J).join("\\")}let i=0;for(;i<n.length&&n.charCodeAt(i)===se;)i++;let s=n.length;for(;s-1>i&&n.charCodeAt(s-1)===se;)s--;let o=s-i,a=0;for(;a<e.length&&e.charCodeAt(a)===se;)a++;let l=e.length;for(;l-1>a&&e.charCodeAt(l-1)===se;)l--;let u=l-a,d=o<u?o:u,c=-1,f=0;for(;f<d;f++){let v=n.charCodeAt(i+f);if(v!==e.charCodeAt(a+f))break;v===se&&(c=f)}if(f!==d){if(c===-1)return r}else{if(u>d){if(e.charCodeAt(a+f)===se)return r.slice(a+f+1);if(f===2)return r.slice(a+f)}o>d&&(n.charCodeAt(i+f)===se?c=f:f===2&&(c=3)),c===-1&&(c=0)}let m="";for(f=i+c+1;f<=s;++f)(f===s||n.charCodeAt(f)===se)&&(m+=m.length===0?"..":"\\..");return a+=c,m.length>0?`${m}${r.slice(a,l)}`:(r.charCodeAt(a)===se&&++a,r.slice(a,l))},toNamespacedPath(n){if(typeof n!="string"||n.length===0)return n;let e=V.resolve(n);if(e.length<=2)return n;if(e.charCodeAt(0)===se){if(e.charCodeAt(1)===se){let t=e.charCodeAt(2);if(t!==Eo&&t!==Qe)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Ee(e.charCodeAt(0))&&e.charCodeAt(1)===xe&&e.charCodeAt(2)===se)return`\\\\?\\${e}`;return e},dirname(n){$(n,"path");let e=n.length;if(e===0)return".";let t=-1,r=0,i=n.charCodeAt(0);if(e===1)return w(i)?n:".";if(w(i)){if(t=r=1,w(n.charCodeAt(1))){let a=2,l=a;for(;a<e&&!w(n.charCodeAt(a));)a++;if(a<e&&a!==l){for(l=a;a<e&&w(n.charCodeAt(a));)a++;if(a<e&&a!==l){for(l=a;a<e&&!w(n.charCodeAt(a));)a++;if(a===e)return n;a!==l&&(t=r=a+1)}}}}else Ee(i)&&n.charCodeAt(1)===xe&&(t=e>2&&w(n.charCodeAt(2))?3:2,r=t);let s=-1,o=!0;for(let a=e-1;a>=r;--a)if(w(n.charCodeAt(a))){if(!o){s=a;break}}else o=!1;if(s===-1){if(t===-1)return".";s=t}return n.slice(0,s)},basename(n,e){e!==void 0&&$(e,"suffix"),$(n,"path");let t=0,r=-1,i=!0,s;if(n.length>=2&&Ee(n.charCodeAt(0))&&n.charCodeAt(1)===xe&&(t=2),e!==void 0&&e.length>0&&e.length<=n.length){if(e===n)return"";let o=e.length-1,a=-1;for(s=n.length-1;s>=t;--s){let l=n.charCodeAt(s);if(w(l)){if(!i){t=s+1;break}}else a===-1&&(i=!1,a=s+1),o>=0&&(l===e.charCodeAt(o)?--o===-1&&(r=s):(o=-1,r=a))}return t===r?r=a:r===-1&&(r=n.length),n.slice(t,r)}for(s=n.length-1;s>=t;--s)if(w(n.charCodeAt(s))){if(!i){t=s+1;break}}else r===-1&&(i=!1,r=s+1);return r===-1?"":n.slice(t,r)},extname(n){$(n,"path");let e=0,t=-1,r=0,i=-1,s=!0,o=0;n.length>=2&&n.charCodeAt(1)===xe&&Ee(n.charCodeAt(0))&&(e=r=2);for(let a=n.length-1;a>=e;--a){let l=n.charCodeAt(a);if(w(l)){if(!s){r=a+1;break}continue}i===-1&&(s=!1,i=a+1),l===Qe?t===-1?t=a:o!==1&&(o=1):t!==-1&&(o=-1)}return t===-1||i===-1||o===0||o===1&&t===i-1&&t===r+1?"":n.slice(t,i)},format:ki.bind(null,"\\"),parse(n){$(n,"path");let e={root:"",dir:"",base:"",ext:"",name:""};if(n.length===0)return e;let t=n.length,r=0,i=n.charCodeAt(0);if(t===1)return w(i)?(e.root=e.dir=n,e):(e.base=e.name=n,e);if(w(i)){if(r=1,w(n.charCodeAt(1))){let c=2,f=c;for(;c<t&&!w(n.charCodeAt(c));)c++;if(c<t&&c!==f){for(f=c;c<t&&w(n.charCodeAt(c));)c++;if(c<t&&c!==f){for(f=c;c<t&&!w(n.charCodeAt(c));)c++;c===t?r=c:c!==f&&(r=c+1)}}}}else if(Ee(i)&&n.charCodeAt(1)===xe){if(t<=2)return e.root=e.dir=n,e;if(r=2,w(n.charCodeAt(2))){if(t===3)return e.root=e.dir=n,e;r=3}}r>0&&(e.root=n.slice(0,r));let s=-1,o=r,a=-1,l=!0,u=n.length-1,d=0;for(;u>=r;--u){if(i=n.charCodeAt(u),w(i)){if(!l){o=u+1;break}continue}a===-1&&(l=!1,a=u+1),i===Qe?s===-1?s=u:d!==1&&(d=1):s!==-1&&(d=-1)}return a!==-1&&(s===-1||d===0||d===1&&s===a-1&&s===o+1?e.base=e.name=n.slice(o,a):(e.name=n.slice(o,s),e.base=n.slice(o,a),e.ext=n.slice(s,a))),o>0&&o!==r?e.dir=n.slice(0,o-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},Po=(()=>{if(oe){let n=/\\/g;return()=>{let e=lt().replace(n,"/");return e.slice(e.indexOf("/"))}}return()=>lt()})(),P={resolve(...n){let e="",t=!1;for(let r=n.length-1;r>=0&&!t;r--){let i=n[r];$(i,`paths[${r}]`),i.length!==0&&(e=`${i}/${e}`,t=i.charCodeAt(0)===Q)}if(!t){let r=Po();e=`${r}/${e}`,t=r.charCodeAt(0)===Q}return e=Jt(e,!t,"/",sr),t?`/${e}`:e.length>0?e:"."},normalize(n){if($(n,"path"),n.length===0)return".";let e=n.charCodeAt(0)===Q,t=n.charCodeAt(n.length-1)===Q;return n=Jt(n,!e,"/",sr),n.length===0?e?"/":t?"./":".":(t&&(n+="/"),e?`/${n}`:n)},isAbsolute(n){return $(n,"path"),n.length>0&&n.charCodeAt(0)===Q},join(...n){if(n.length===0)return".";let e=[];for(let t=0;t<n.length;++t){let r=n[t];$(r,"path"),r.length>0&&e.push(r)}return e.length===0?".":P.normalize(e.join("/"))},relative(n,e){if($(n,"from"),$(e,"to"),n===e||(n=P.resolve(n),e=P.resolve(e),n===e))return"";let t=1,r=n.length,i=r-t,s=1,o=e.length-s,a=i<o?i:o,l=-1,u=0;for(;u<a;u++){let c=n.charCodeAt(t+u);if(c!==e.charCodeAt(s+u))break;c===Q&&(l=u)}if(u===a)if(o>a){if(e.charCodeAt(s+u)===Q)return e.slice(s+u+1);if(u===0)return e.slice(s+u)}else i>a&&(n.charCodeAt(t+u)===Q?l=u:u===0&&(l=0));let d="";for(u=t+l+1;u<=r;++u)(u===r||n.charCodeAt(u)===Q)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(s+l)}`},toNamespacedPath(n){return n},dirname(n){if($(n,"path"),n.length===0)return".";let e=n.charCodeAt(0)===Q,t=-1,r=!0;for(let i=n.length-1;i>=1;--i)if(n.charCodeAt(i)===Q){if(!r){t=i;break}}else r=!1;return t===-1?e?"/":".":e&&t===1?"//":n.slice(0,t)},basename(n,e){e!==void 0&&$(e,"suffix"),$(n,"path");let t=0,r=-1,i=!0,s;if(e!==void 0&&e.length>0&&e.length<=n.length){if(e===n)return"";let o=e.length-1,a=-1;for(s=n.length-1;s>=0;--s){let l=n.charCodeAt(s);if(l===Q){if(!i){t=s+1;break}}else a===-1&&(i=!1,a=s+1),o>=0&&(l===e.charCodeAt(o)?--o===-1&&(r=s):(o=-1,r=a))}return t===r?r=a:r===-1&&(r=n.length),n.slice(t,r)}for(s=n.length-1;s>=0;--s)if(n.charCodeAt(s)===Q){if(!i){t=s+1;break}}else r===-1&&(i=!1,r=s+1);return r===-1?"":n.slice(t,r)},extname(n){$(n,"path");let e=-1,t=0,r=-1,i=!0,s=0;for(let o=n.length-1;o>=0;--o){let a=n[o];if(a==="/"){if(!i){t=o+1;break}continue}r===-1&&(i=!1,r=o+1),a==="."?e===-1?e=o:s!==1&&(s=1):e!==-1&&(s=-1)}return e===-1||r===-1||s===0||s===1&&e===r-1&&e===t+1?"":n.slice(e,r)},format:ki.bind(null,"/"),parse(n){$(n,"path");let e={root:"",dir:"",base:"",ext:"",name:""};if(n.length===0)return e;let t=n.charCodeAt(0)===Q,r;t?(e.root="/",r=1):r=0;let i=-1,s=0,o=-1,a=!0,l=n.length-1,u=0;for(;l>=r;--l){let d=n.charCodeAt(l);if(d===Q){if(!a){s=l+1;break}continue}o===-1&&(a=!1,o=l+1),d===Qe?i===-1?i=l:u!==1&&(u=1):i!==-1&&(u=-1)}if(o!==-1){let d=s===0&&t?1:s;i===-1||u===0||u===1&&i===o-1&&i===s+1?e.base=e.name=n.slice(d,o):(e.name=n.slice(d,i),e.base=n.slice(d,o),e.ext=n.slice(i,o))}return s>0?e.dir=n.slice(0,s-1):t&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};P.win32=V.win32=V;P.posix=V.posix=P;var Ue=oe?V.normalize:P.normalize,Yt=oe?V.isAbsolute:P.isAbsolute,Y=oe?V.join:P.join,Li=oe?V.resolve:P.resolve,Ui=oe?V.relative:P.relative,Je=oe?V.dirname:P.dirname,Ye=oe?V.basename:P.basename,Oi=oe?V.extname:P.extname,t1=oe?V.format:P.format,n1=oe?V.parse:P.parse,r1=oe?V.toNamespacedPath:P.toNamespacedPath,Z=oe?V.sep:P.sep,Do=oe?V.delimiter:P.delimiter;function So(n){return n}var Zt=class{constructor(e,t){this.lastCache=void 0;this.lastArgKey=void 0;typeof e=="function"?(this._fn=e,this._computeKey=So):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){let t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}};var ae=class{constructor(e){this.executor=e;this._state=0}get hasValue(){return this._state===2}get value(){if(this._state===0){this._state=1;try{this._value=this.executor()}catch(e){this._error=e}finally{this._state=2}}else if(this._state===1)throw new Error("Cannot read the value of a lazy that is being initialized");if(this._error)throw this._error;return this._value}get rawValue(){return this._value}};function or(n){return n.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function qi(n,e){if(!n||!e)return n;let t=e.length,r=0;if(t===1){let i=e.charCodeAt(0);for(;r<n.length&&n.charCodeAt(r)===i;)r++}else for(;n.startsWith(e,r);)r+=t;return n.substring(r)}function ar(n,e){if(!n||!e)return n;let t=e.length,r=n.length;if(t===1){let s=r,o=e.charCodeAt(0);for(;s>0&&n.charCodeAt(s-1)===o;)s--;return n.substring(0,s)}let i=r;for(;i>0&&n.endsWith(e,i);)i-=t;return n.substring(0,i)}function Rt(n,e){return n<e?-1:n>e?1:0}function en(n,e,t=0,r=n.length,i=0,s=e.length){for(;t<r&&i<s;t++,i++){let l=n.charCodeAt(t),u=e.charCodeAt(i);if(l<u)return-1;if(l>u)return 1}let o=r-t,a=s-i;return o<a?-1:o>a?1:0}function lr(n,e){return Xe(n,e,0,n.length,0,e.length)}function Xe(n,e,t=0,r=n.length,i=0,s=e.length){for(;t<r&&i<s;t++,i++){let l=n.charCodeAt(t),u=e.charCodeAt(i);if(l===u)continue;if(l>=128||u>=128)return en(n.toLowerCase(),e.toLowerCase(),t,r,i,s);Wi(l)&&(l-=32),Wi(u)&&(u-=32);let d=l-u;if(d!==0)return d}let o=r-t,a=s-i;return o<a?-1:o>a?1:0}function Wi(n){return n>=97&&n<=122}function ur(n){return n>=65&&n<=90}function Ze(n,e){return n.length===e.length&&Xe(n,e)===0}function wt(n,e){let t=e.length;return t<=n.length&&Xe(n,e,0,t)===0}function Bi(n,e){let t=n.length,r=t-e.length;return r>=0&&Xe(n,e,r,t)===0}function $i(n){return 55296<=n&&n<=56319}function cr(n){return 56320<=n&&n<=57343}function Vi(n,e){return(n-55296<<10)+(e-56320)+65536}var Ao=/(?:\x1b\[|\x9b)[=?>!]?[\d;:]*["$#'* ]?[a-zA-Z@^`{}|~]/,Fo=/(?:\x1b\]|\x9d).*?(?:\x1b\\|\x07|\x9c)/,ko=/\x1b(?:[ #%\(\)\*\+\-\.\/]?[a-zA-Z0-9\|}~@])/,h1=new RegExp("(?:"+[Ao.source,Fo.source,ko.source].join("|")+")","g");var m1=String.fromCharCode(65279);var Ni=class n{static{this._INSTANCE=null}static getInstance(){return n._INSTANCE||(n._INSTANCE=new n),n._INSTANCE}constructor(){this._data=Lo()}getGraphemeBreakType(e){if(e<32)return e===10?3:e===13?2:4;if(e<127)return 0;let t=this._data,r=t.length/3,i=1;for(;i<=r;)if(e<t[3*i])i=2*i;else if(e>t[3*i+1])i=2*i+1;else return t[3*i+2];return 0}};function Lo(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}var Ci=class n{constructor(e){this.confusableDictionary=e}static{this.ambiguousCharacterData=new ae(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"cs":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"es":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"fr":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"it":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ja":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],"ko":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pt-BR":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ru":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"zh-hans":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],"zh-hant":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}'))}static{this.cache=new Zt(e=>{let t=e.split(",");function r(c){let f=new Map;for(let m=0;m<c.length;m+=2)f.set(c[m],c[m+1]);return f}function i(c,f){let m=new Map(c);for(let[v,y]of f)m.set(v,y);return m}function s(c,f){if(!c)return f;let m=new Map;for(let[v,y]of c)f.has(v)&&m.set(v,y);return m}let o=this.ambiguousCharacterData.value,a=t.filter(c=>!c.startsWith("_")&&Object.hasOwn(o,c));a.length===0&&(a=["_default"]);let l;for(let c of a){let f=r(o[c]);l=s(l,f)}let u=r(o._common),d=i(u,l);return new n(d)})}static getInstance(e){return n.cache.get(Array.from(e).join(","))}static{this._locales=new ae(()=>Object.keys(n.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")))}static getLocales(){return n._locales.value}isAmbiguous(e){return this.confusableDictionary.has(e)}containsAmbiguousCharacter(e){for(let t=0;t<e.length;t++){let r=e.codePointAt(t);if(typeof r=="number"&&this.isAmbiguous(r))return!0}return!1}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}},Mi=class n{static getRawData(){return JSON.parse('{"_common":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],"cs":[173,8203,12288],"de":[173,8203,12288],"es":[8203,12288],"fr":[173,8203,12288],"it":[160,173,12288],"ja":[173],"ko":[173,12288],"pl":[173,8203,12288],"pt-BR":[173,8203,12288],"qps-ploc":[160,173,8203,12288],"ru":[173,12288],"tr":[160,173,8203,12288],"zh-hans":[160,173,8203,12288],"zh-hant":[173,12288]}')}static{this._data=void 0}static getData(){return this._data||(this._data=new Set([...Object.values(n.getRawData())].flat())),this._data}static isInvisibleCharacter(e){return n.getData().has(e)}static containsInvisibleCharacter(e){for(let t=0;t<e.length;t++){let r=e.codePointAt(t);if(typeof r=="number"&&(n.isInvisibleCharacter(r)||r===32))return!0}return!1}static get codePoints(){return n.getData()}};function Oe(n){return n===47||n===92}function dr(n){return n.replace(/[\\/]/g,P.sep)}function ji(n){return n.indexOf("/")===-1&&(n=dr(n)),/^[a-zA-Z]:(\/|$)/.test(n)&&(n="/"+n),n}function fr(n,e=P.sep){if(!n)return"";let t=n.length,r=n.charCodeAt(0);if(Oe(r)){if(Oe(n.charCodeAt(1))&&!Oe(n.charCodeAt(2))){let s=3,o=s;for(;s<t&&!Oe(n.charCodeAt(s));s++);if(o!==s&&!Oe(n.charCodeAt(s+1))){for(s+=1;s<t;s++)if(Oe(n.charCodeAt(s)))return n.slice(0,s+1).replace(/[\\/]/g,e)}}return e}else if(zi(r)&&n.charCodeAt(1)===58)return Oe(n.charCodeAt(2))?n.slice(0,2)+e:n.slice(0,2);let i=n.indexOf("://");if(i!==-1){for(i+=3;i<t;i++)if(Oe(n.charCodeAt(i)))return n.slice(0,i+1)}return""}function Pt(n,e,t){let r=n===e;return!t||r?r:!n||!e?!1:Ze(n,e)}function fe(n,e,t,r=Z){if(n===e)return!0;if(!n||!e||e.length>n.length)return!1;if(t){if(!wt(n,e))return!1;if(e.length===n.length)return!0;let s=e.length;return e.charAt(e.length-1)===r&&s--,n.charAt(s)===r}return e.charAt(e.length-1)!==r&&(e+=r),n.indexOf(e)===0}function zi(n){return n>=65&&n<=90||n>=97&&n<=122}function pr(n){let e=Ue(n);return z?n.length>3?!1:Uo(e)&&(n.length===2||e.charCodeAt(2)===92):e===P.sep}function Uo(n,e=z){return e?zi(n.charCodeAt(0))&&n.charCodeAt(1)===58:!1}var Oo="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",Wo="BDEFGHIJKMOQRSTUVWXYZbdefghijkmoqrstuvwxyz0123456789";function tn(n,e,t=8){let r="";for(let s=0;s<t;s++){let o;s===0&&z&&!e&&(t===3||t===4)?o=Wo:o=Oo,r+=o.charAt(Math.floor(Math.random()*o.length))}let i;return e?i=`${e}-${r}`:i=r,n?Y(n,i):i}var Mo=/^\w[\w\d+.-]*$/,qo=/^\//,Bo=/^\/\//;function $o(n,e){if(!n.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${n.authority}", path: "${n.path}", query: "${n.query}", fragment: "${n.fragment}"}`);if(n.scheme&&!Mo.test(n.scheme)){let t=[...n.scheme.matchAll(/[^\w\d+.-]/gu)],r=t.length>0?` Found '${t[0][0]}' at index ${t[0].index} (${t.length} total)`:"";throw new Error(`[UriError]: Scheme contains illegal characters.${r} (len:${n.scheme.length})`)}if(n.path){if(n.authority){if(!qo.test(n.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Bo.test(n.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function Vo(n,e){return!n&&!e?"file":n}function Ko(n,e){switch(n){case"https":case"http":case"file":e?e[0]!==pe&&(e=pe+e):e=pe;break}return e}var O="",pe="/",jo=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,U=class n{static isUri(e){return e instanceof n?!0:!e||typeof e!="object"?!1:typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function"}constructor(e,t,r,i,s,o=!1){typeof e=="object"?(this.scheme=e.scheme||O,this.authority=e.authority||O,this.path=e.path||O,this.query=e.query||O,this.fragment=e.fragment||O):(this.scheme=Vo(e,o),this.authority=t||O,this.path=Ko(this.scheme,r||O),this.query=i||O,this.fragment=s||O,$o(this,o))}get fsPath(){return Dt(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:i,query:s,fragment:o}=e;return t===void 0?t=this.scheme:t===null&&(t=O),r===void 0?r=this.authority:r===null&&(r=O),i===void 0?i=this.path:i===null&&(i=O),s===void 0?s=this.query:s===null&&(s=O),o===void 0?o=this.fragment:o===null&&(o=O),t===this.scheme&&r===this.authority&&i===this.path&&s===this.query&&o===this.fragment?this:new We(t,r,i,s,o)}static parse(e,t=!1){let r=jo.exec(e);return r?new We(r[2]||O,nn(r[4]||O),nn(r[5]||O),nn(r[7]||O),nn(r[9]||O),t):new We(O,O,O,O,O)}static file(e){let t=O;if(z&&(e=e.replace(/\\/g,pe)),e[0]===pe&&e[1]===pe){let r=e.indexOf(pe,2);r===-1?(t=e.substring(2),e=pe):(t=e.substring(2,r),e=e.substring(r)||pe)}return new We("file",t,e,O,O)}static from(e,t){return new We(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let r;return z&&e.scheme==="file"?r=n.file(V.join(Dt(e,!0),...t)).path:r=P.join(e.path,...t),e.with({path:r})}toString(e=!1){return hr(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof n)return e;{let t=new We(e);return t._formatted=e.external??null,t._fsPath=e._sep===Qi?e.fsPath??null:null,t}}else return e}[Symbol.for("debug.description")](){return`URI(${this.toString()})`}};var Qi=z?1:void 0,We=class extends U{constructor(){super(...arguments);this._formatted=null;this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=Dt(this,!1)),this._fsPath}toString(t=!1){return t?hr(this,!0):(this._formatted||(this._formatted=hr(this,!1)),this._formatted)}toJSON(){let t={$mid:1};return this._fsPath&&(t.fsPath=this._fsPath,t._sep=Qi),this._formatted&&(t.external=this._formatted),this.path&&(t.path=this.path),this.scheme&&(t.scheme=this.scheme),this.authority&&(t.authority=this.authority),this.query&&(t.query=this.query),this.fragment&&(t.fragment=this.fragment),t}},Ji={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function Gi(n,e,t){let r,i=-1;for(let s=0;s<n.length;s++){let o=n.charCodeAt(s);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||o===45||o===46||o===95||o===126||e&&o===47||t&&o===91||t&&o===93||t&&o===58)i!==-1&&(r+=encodeURIComponent(n.substring(i,s)),i=-1),r!==void 0&&(r+=n.charAt(s));else{r===void 0&&(r=n.substr(0,s));let a=Ji[o];a!==void 0?(i!==-1&&(r+=encodeURIComponent(n.substring(i,s)),i=-1),r+=a):i===-1&&(i=s)}}return i!==-1&&(r+=encodeURIComponent(n.substring(i))),r!==void 0?r:n}function zo(n){let e;for(let t=0;t<n.length;t++){let r=n.charCodeAt(t);r===35||r===63?(e===void 0&&(e=n.substr(0,t)),e+=Ji[r]):e!==void 0&&(e+=n[t])}return e!==void 0?e:n}function Dt(n,e){let t;return n.authority&&n.path.length>1&&n.scheme==="file"?t=`//${n.authority}${n.path}`:n.path.charCodeAt(0)===47&&(n.path.charCodeAt(1)>=65&&n.path.charCodeAt(1)<=90||n.path.charCodeAt(1)>=97&&n.path.charCodeAt(1)<=122)&&n.path.charCodeAt(2)===58?e?t=n.path.substr(1):t=n.path[1].toLowerCase()+n.path.substr(2):t=n.path,z&&(t=t.replace(/\//g,"\\")),t}function hr(n,e){let t=e?zo:Gi,r="",{scheme:i,authority:s,path:o,query:a,fragment:l}=n;if(i&&(r+=i,r+=":"),(s||i==="file")&&(r+=pe,r+=pe),s){let u=s.indexOf("@");if(u!==-1){let d=s.substr(0,u);s=s.substr(u+1),u=d.lastIndexOf(":"),u===-1?r+=t(d,!1,!1):(r+=t(d.substr(0,u),!1,!1),r+=":",r+=t(d.substr(u+1),!1,!0)),r+="@"}s=s.toLowerCase(),u=s.lastIndexOf(":"),u===-1?r+=t(s,!1,!0):(r+=t(s.substr(0,u),!1,!0),r+=s.substr(u))}if(o){if(o.length>=3&&o.charCodeAt(0)===47&&o.charCodeAt(2)===58){let u=o.charCodeAt(1);u>=65&&u<=90&&(o=`/${String.fromCharCode(u+32)}:${o.substr(3)}`)}else if(o.length>=2&&o.charCodeAt(1)===58){let u=o.charCodeAt(0);u>=65&&u<=90&&(o=`${String.fromCharCode(u+32)}:${o.substr(2)}`)}r+=t(o,!0,!1)}return a&&(r+="?",r+=t(a,!1,!1)),l&&(r+="#",r+=e?l:Gi(l,!1,!1)),r}function Yi(n){try{return decodeURIComponent(n)}catch{return n.length>3?n.substr(0,3)+Yi(n.substr(3)):n}}var Hi=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function nn(n){return n.match(Hi)?n.replace(Hi,e=>Yi(e)):n}var H;(E=>(E.inMemory="inmemory",E.vscode="vscode",E.internal="private",E.walkThrough="walkThrough",E.walkThroughSnippet="walkThroughSnippet",E.http="http",E.https="https",E.file="file",E.mailto="mailto",E.untitled="untitled",E.data="data",E.command="command",E.vscodeRemote="vscode-remote",E.vscodeRemoteResource="vscode-remote-resource",E.vscodeManagedRemoteResource="vscode-managed-remote-resource",E.vscodeUserData="vscode-userdata",E.vscodeCustomEditor="vscode-custom-editor",E.vscodeNotebookCell="vscode-notebook-cell",E.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",E.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",E.vscodeNotebookCellOutput="vscode-notebook-cell-output",E.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",E.vscodeNotebookMetadata="vscode-notebook-metadata",E.vscodeInteractiveInput="vscode-interactive-input",E.vscodeSettings="vscode-settings",E.vscodeWorkspaceTrust="vscode-workspace-trust",E.vscodeTerminal="vscode-terminal",E.vscodeChatCodeBlock="vscode-chat-code-block",E.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",E.vscodeChatEditor="vscode-chat-editor",E.vscodeChatInput="chatSessionInput",E.vscodeLocalChatSession="vscode-chat-session",E.webviewPanel="webview-panel",E.vscodeWebview="vscode-webview",E.vscodeBrowser="vscode-browser",E.extension="extension",E.vscodeFileResource="vscode-file",E.tmp="tmp",E.vsls="vsls",E.vscodeSourceControl="vscode-scm",E.commentsInput="comment",E.codeSetting="code-setting",E.outputChannel="output",E.accessibleView="accessible-view",E.chatEditingSnapshotScheme="chat-editing-snapshot-text-model",E.chatEditingModel="chat-editing-text-model",E.copilotPr="copilot-pr"))(H||={});var Go="tkn",mr=class{constructor(){this._hosts=Object.create(null);this._ports=Object.create(null);this._connectionTokens=Object.create(null);this._preferredWebSchema="http";this._delegate=null;this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}setDelegate(e){this._delegate=e}setServerRootPath(e,t){this._serverRootPath=P.join(t??"/",Qo(e))}getServerRootPath(){return this._serverRootPath}get _remoteResourcesPath(){return P.join(this._serverRootPath,H.vscodeRemoteResource)}set(e,t,r){this._hosts[e]=t,this._ports[e]=r}setConnectionToken(e,t){this._connectionTokens[e]=t}getPreferredWebSchema(){return this._preferredWebSchema}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(a){return ce(a),e}let t=e.authority,r=this._hosts[t];r&&r.indexOf(":")!==-1&&r.indexOf("[")===-1&&(r=`[${r}]`);let i=this._ports[t],s=this._connectionTokens[t],o=`path=${encodeURIComponent(e.path)}`;return typeof s=="string"&&(o+=`&${Go}=${encodeURIComponent(s)}`),U.from({scheme:nr?this._preferredWebSchema:H.vscodeRemoteResource,authority:`${r}:${i}`,path:this._remoteResourcesPath,query:o})}},Ho=new mr;function Qo(n){return`${n.quality??"oss"}-${n.commit??"dev"}`}var Jo="vscode-app",gr=class n{static{this.FALLBACK_AUTHORITY=Jo}asBrowserUri(e){let t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===H.vscodeRemote?Ho.rewrite(e):e.scheme===H.file&&(wi||Pi===`${H.vscodeFileResource}://${n.FALLBACK_AUTHORITY}`)?e.with({scheme:H.vscodeFileResource,authority:e.authority||n.FALLBACK_AUTHORITY,query:null,fragment:null}):e}asFileUri(e){let t=this.toUri(e);return this.uriToFileUri(t)}uriToFileUri(e){return e.scheme===H.vscodeFileResource?e.with({scheme:H.file,authority:e.authority!==n.FALLBACK_AUTHORITY?e.authority:null,query:null,fragment:null}):e}toUri(e){if(U.isUri(e))return e;if(globalThis._VSCODE_FILE_ROOT){let t=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(t))return U.joinPath(U.parse(t,!0),e);let r=Y(t,e);return U.file(r)}throw new Error("Cannot determine URI for module id!")}},Yo=new gr,D1=Object.freeze({"Cache-Control":"no-cache, no-store"}),S1=Object.freeze({"Document-Policy":"include-js-call-stacks-in-crash-reports"}),Xo;(s=>{let n=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);s.CoopAndCoep=Object.freeze(n.get("3"));let t="vscode-coi";function r(o){let a;typeof o=="string"?a=new URL(o).searchParams:o instanceof URL?a=o.searchParams:U.isUri(o)&&(a=new URL(o.toString(!0)).searchParams);let l=a?.get(t);if(l)return n.get(l)}s.getHeadersFromQuery=r;function i(o,a,l){if(!globalThis.crossOriginIsolated)return;let u=a&&l?"3":l?"2":"1";o instanceof URLSearchParams?o.set(t,u):o[t]=u}s.addSearchParam=i})(Xo||={});function Re(n){return Dt(n,!0)}var St=class{constructor(e){this._ignorePathCasing=e}compare(e,t,r=!1){return e===t?0:Rt(this.getComparisonKey(e,r),this.getComparisonKey(t,r))}isEqual(e,t,r=!1){return e===t?!0:!e||!t?!1:this.getComparisonKey(e,r)===this.getComparisonKey(t,r)}getComparisonKey(e,t=!1){return e.with({path:this._ignorePathCasing(e)?e.path.toLowerCase():void 0,fragment:t?null:void 0}).toString()}ignorePathCasing(e){return this._ignorePathCasing(e)}isEqualOrParent(e,t,r=!1){if(e.scheme===t.scheme){if(e.scheme===H.file)return fe(Re(e),Re(t),this._ignorePathCasing(e))&&e.query===t.query&&(r||e.fragment===t.fragment);if(Xi(e.authority,t.authority))return fe(e.path,t.path,this._ignorePathCasing(e),"/")&&e.query===t.query&&(r||e.fragment===t.fragment)}return!1}joinPath(e,...t){return U.joinPath(e,...t)}basenameOrAuthority(e){return Zo(e)||e.authority}basename(e){return P.basename(e.path)}extname(e){return P.extname(e.path)}dirname(e){if(e.path.length===0)return e;let t;return e.scheme===H.file?t=U.file(Je(Re(e))).path:(t=P.dirname(e.path),e.authority&&t.length&&t.charCodeAt(0)!==47&&(console.error(`dirname("${e.toString})) resulted in a relative path`),t="/")),e.with({path:t})}normalizePath(e){if(!e.path.length)return e;let t;return e.scheme===H.file?t=U.file(Ue(Re(e))).path:t=P.normalize(e.path),e.with({path:t})}relativePath(e,t){if(e.scheme!==t.scheme||!Xi(e.authority,t.authority))return;if(e.scheme===H.file){let s=Ui(Re(e),Re(t));return z?dr(s):s}let r=e.path||"/",i=t.path||"/";if(this._ignorePathCasing(e)){let s=0;for(let o=Math.min(r.length,i.length);s<o&&!(r.charCodeAt(s)!==i.charCodeAt(s)&&r.charAt(s).toLowerCase()!==i.charAt(s).toLowerCase());s++);r=i.substr(0,s)+r.substr(s)}return P.relative(r,i)}resolvePath(e,t){if(e.scheme===H.file){let r=U.file(Li(Re(e),t));return e.with({authority:r.authority,path:r.path})}return t=ji(t),e.with({path:P.resolve(e.path,t)})}isAbsolutePath(e){return!!e.path&&e.path[0]==="/"}isEqualAuthority(e,t){return e===t||e!==void 0&&t!==void 0&&Ze(e,t)}hasTrailingPathSeparator(e,t=Z){if(e.scheme===H.file){let r=Re(e);return r.length>fr(r).length&&r[r.length-1]===t}else{let r=e.path;return r.length>1&&r.charCodeAt(r.length-1)===47&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,t=Z){return Zi(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=Z){let r=!1;if(e.scheme===H.file){let i=Re(e);r=i!==void 0&&i.length===fr(i).length&&i[i.length-1]===t}else{t="/";let i=e.path;r=i.length===1&&i.charCodeAt(i.length-1)===47}return!r&&!Zi(e,t)?e.with({path:e.path+"/"}):e}},S=new St(()=>!1),es=new St(n=>n.scheme===H.file?!C:!0),W1=new St(n=>!0),N1=S.isEqual.bind(S),C1=S.isEqualOrParent.bind(S),M1=S.getComparisonKey.bind(S),q1=S.basenameOrAuthority.bind(S),Zo=S.basename.bind(S),B1=S.extname.bind(S),$1=S.dirname.bind(S),vr=S.joinPath.bind(S),V1=S.normalizePath.bind(S),K1=S.relativePath.bind(S),j1=S.resolvePath.bind(S),z1=S.isAbsolutePath.bind(S),Xi=S.isEqualAuthority.bind(S),Zi=S.hasTrailingPathSeparator.bind(S),G1=S.removeTrailingPathSeparator.bind(S),H1=S.addTrailingPathSeparator.bind(S);var ea;(s=>{s.META_DATA_LABEL="label",s.META_DATA_DESCRIPTION="description",s.META_DATA_SIZE="size",s.META_DATA_MIME="mime";function i(o){let a=new Map;o.path.substring(o.path.indexOf(";")+1,o.path.lastIndexOf(";")).split(";").forEach(d=>{let[c,f]=d.split(":");c&&f&&a.set(c,f)});let u=o.path.substring(0,o.path.indexOf(";"));return u&&a.set(s.META_DATA_MIME,u),a}s.parseMetaData=i})(ea||={});var ts=Symbol("MicrotaskDelay");function an(n){return!!n&&typeof n.then=="function"}function At(n){let e=new ee,t=n(e.token),r=!1,i=new Promise((s,o)=>{let a=e.token.onCancellationRequested(()=>{r=!0,a.dispose(),o(new re)});Promise.resolve(t).then(l=>{a.dispose(),e.dispose(),r?pi(l)&&l.dispose():s(l)},l=>{a.dispose(),e.dispose(),o(l)})});return new class{cancel(){e.cancel(),e.dispose()}then(s,o){return i.then(s,o)}catch(s){return this.then(void 0,s)}finally(s){return i.finally(s)}}}var Tr=class{constructor(){this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null,this.cancellationTokenSource=new ee}queue(e){if(this.cancellationTokenSource.token.isCancellationRequested)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){let t=()=>{if(this.queuedPromise=null,this.cancellationTokenSource.token.isCancellationRequested)return;let r=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,r};this.queuedPromise=new Promise(r=>{this.activePromise.then(t,t).then(r)})}return new Promise((t,r)=>{this.queuedPromise.then(t,r)})}return this.activePromise=e(this.cancellationTokenSource.token),new Promise((t,r)=>{this.activePromise.then(i=>{this.activePromise=null,t(i)},i=>{this.activePromise=null,r(i)})})}dispose(){this.cancellationTokenSource.cancel()}};var ta=(n,e)=>{let t=!0,r=setTimeout(()=>{t=!1,e()},n);return{isTriggered:()=>t,dispose:()=>{clearTimeout(r),t=!1}}},na=n=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,n())}),{isTriggered:()=>e,dispose:()=>{e=!1}}},rn=class{constructor(e){this.defaultDelay=e;this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,t=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((i,s)=>{this.doResolve=i,this.doReject=s}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){let i=this.task;return this.task=null,i()}}));let r=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=t===ts?na(r):ta(t,r),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new re),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}},sn=class{constructor(e){this.delayer=new rn(e),this.throttler=new Tr}trigger(e,t){return this.delayer.trigger(()=>this.throttler.queue(e),t)}isTriggered(){return this.delayer.isTriggered()}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}};function ln(n,e){return e?new Promise((t,r)=>{let i=setTimeout(()=>{s.dispose(),t()},n),s=e.onCancellationRequested(()=>{clearTimeout(i),s.dispose(),r(new re)})}):At(t=>ln(n,t))}var yr=class{constructor(e){this._size=0;this._isDisposed=!1;this.maxDegreeOfParalellism=e,this.outstandingPromises=[],this.runningPromises=0,this._onDrained=new D}whenIdle(){return this.size>0?k.toPromise(this.onDrained):Promise.resolve()}get onDrained(){return this._onDrained.event}get size(){return this._size}queue(e){if(this._isDisposed)throw new Error("Object has been disposed");return this._size++,new Promise((t,r)=>{this.outstandingPromises.push({factory:e,c:t,e:r}),this.consume()})}consume(){for(;this.outstandingPromises.length&&this.runningPromises<this.maxDegreeOfParalellism;){let e=this.outstandingPromises.shift();this.runningPromises++;let t=e.factory();t.then(e.c,e.e),t.then(()=>this.consumed(),()=>this.consumed())}}consumed(){this._isDisposed||(this.runningPromises--,--this._size===0&&this._onDrained.fire(),this.outstandingPromises.length>0&&this.consume())}clear(){if(this._isDisposed)throw new Error("Object has been disposed");this.outstandingPromises.length=0,this._size=this.runningPromises}dispose(){this._isDisposed=!0,this.outstandingPromises.length=0,this._size=0,this._onDrained.dispose()}},Ir=class extends yr{constructor(){super(1)}};var on=class{constructor(){this.queues=new Map;this.drainers=new Set;this.drainListeners=void 0;this.drainListenerCount=0}async whenDrained(){if(this.isDrained())return;let e=new de;return this.drainers.add(e),e.p}isDrained(){for(let[,e]of this.queues)if(e.size>0)return!1;return!0}queueSize(e,t=S){let r=t.getComparisonKey(e);return this.queues.get(r)?.size??0}queueFor(e,t,r=S){let i=r.getComparisonKey(e),s=this.queues.get(i);if(!s){s=new Ir;let o=this.drainListenerCount++,a=k.once(s.onDrained)(()=>{s?.dispose(),this.queues.delete(i),this.onDidQueueDrain(),this.drainListeners?.deleteAndDispose(o),this.drainListeners?.size===0&&(this.drainListeners.dispose(),this.drainListeners=void 0)});this.drainListeners||(this.drainListeners=new ke),this.drainListeners.set(o,a),this.queues.set(i,s)}return s.queue(t)}onDidQueueDrain(){this.isDrained()&&this.releaseDrainers()}releaseDrainers(){for(let e of this.drainers)e.complete();this.drainers.clear()}dispose(){for(let[,e]of this.queues)e.dispose();this.queues.clear(),this.releaseDrainers(),this.drainListeners?.dispose()}};var et=class{constructor(e,t){this.timeoutToken=void 0,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=void 0)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return this.timeoutToken!==void 0}flush(){this.isScheduled()&&(this.cancel(),this.doRun())}onTimeout(){this.timeoutToken=void 0,this.runner&&this.doRun()}doRun(){this.runner?.()}};var tt=class extends et{constructor(t,r){super(t,r);this.units=[]}work(t){this.units.push(t),this.isScheduled()||this.schedule()}doRun(){let t=this.units;this.units=[],this.runner?.(t)}dispose(){this.units=[],super.dispose()}},Ne=class extends B{constructor(t,r){super();this.options=t;this.handler=r;this.pendingWork=[];this.throttler=this._register(new Fe);this.disposed=!1;this.lastExecutionTime=0}get pending(){return this.pendingWork.length}work(t){if(this.disposed)return!1;if(typeof this.options.maxBufferedWork=="number"){if(this.throttler.value){if(this.pending+t.length>this.options.maxBufferedWork)return!1}else if(this.pending+t.length-this.options.maxWorkChunkSize>this.options.maxBufferedWork)return!1}for(let i of t)this.pendingWork.push(i);let r=Date.now()-this.lastExecutionTime;return!this.throttler.value&&(!this.options.waitThrottleDelayBetweenWorkUnits||r>=this.options.throttleDelay)?this.doWork():!this.throttler.value&&this.options.waitThrottleDelayBetweenWorkUnits&&this.scheduleThrottler(Math.max(this.options.throttleDelay-r,0)),!0}doWork(){this.lastExecutionTime=Date.now(),this.handler(this.pendingWork.splice(0,this.options.maxWorkChunkSize)),this.pendingWork.length>0&&this.scheduleThrottler()}scheduleThrottler(t=this.options.throttleDelay){this.throttler.value=new et(()=>{this.throttler.clear(),this.doWork()},t),this.throttler.value.schedule()}dispose(){super.dispose(),this.pendingWork.length=0,this.disposed=!0}},ra,br;(function(){let n=globalThis;typeof n.requestIdleCallback!="function"||typeof n.cancelIdleCallback!="function"?br=(e,t,r)=>{Di(()=>{if(i)return;let s=Date.now()+15;t(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,s-Date.now())}}))});let i=!1;return{dispose(){i||(i=!0)}}}:br=(e,t,r)=>{let i=e.requestIdleCallback(t,typeof r=="number"?{timeout:r}:void 0),s=!1;return{dispose(){s||(s=!0,e.cancelIdleCallback(i))}}},ra=(e,t)=>br(globalThis,e,t)})();var de=class n{static fromPromise(e){let t=new n;return t.settleWith(e),t}get isRejected(){return this.outcome?.outcome===1}get isResolved(){return this.outcome?.outcome===0}get isSettled(){return!!this.outcome}get value(){return this.outcome?.outcome===0?this.outcome?.value:void 0}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}settleWith(e){return e.then(t=>this.complete(t),t=>this.error(t))}cancel(){return this.error(new re)}},un;(t=>{async function n(r){let i,s=await Promise.all(r.map(o=>o.then(a=>a,a=>{i||(i=a)})));if(typeof i<"u")throw i;return s}t.settled=n;function e(r){return new Promise(async(i,s)=>{try{await r(i,s)}catch(o){s(o)}})}t.withAsyncBody=e})(un||={});var ns=class n{static fromArray(e){return new n(t=>{t.emitMany(e)})}static fromPromise(e){return new n(async t=>{t.emitMany(await e)})}static fromPromisesResolveOrder(e){return new n(async t=>{await Promise.all(e.map(async r=>t.emitOne(await r)))})}static merge(e){return new n(async t=>{await Promise.all(e.map(async r=>{for await(let i of r)t.emitOne(i)}))})}static{this.EMPTY=n.fromArray([])}constructor(e,t){this._state=0,this._results=[],this._error=null,this._onReturn=t,this._onStateChanged=new D,queueMicrotask(async()=>{let r={emitOne:i=>this.emitOne(i),emitMany:i=>this.emitMany(i),reject:i=>this.reject(i)};try{await Promise.resolve(e(r)),this.resolve()}catch(i){this.reject(i)}finally{r.emitOne=void 0,r.emitMany=void 0,r.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e<this._results.length)return{done:!1,value:this._results[e++]};if(this._state===1)return{done:!0,value:void 0};await k.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(e,t){return new n(async r=>{for await(let i of e)r.emitOne(t(i))})}map(e){return n.map(this,e)}static filter(e,t){return new n(async r=>{for await(let i of e)t(i)&&r.emitOne(i)})}filter(e){return n.filter(this,e)}static coalesce(e){return n.filter(e,t=>!!t)}coalesce(){return n.coalesce(this)}static async toPromise(e){let t=[];for await(let r of e)t.push(r);return t}toPromise(){return n.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};var _r=class{constructor(){this._unsatisfiedConsumers=[];this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(e){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){let t=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(t,e)}else this._unconsumedValues.push(e)}produceFinal(e){this._ensureNoFinalValue(),this._finalValue=e;for(let t of this._unsatisfiedConsumers)this._resolveOrRejectDeferred(t,e);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new Se("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(e,t){t.ok?e.complete(t.value):e.error(t.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){let e=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return e.ok?Promise.resolve(e.value):Promise.reject(e.error)}else{let e=new de;return this._unsatisfiedConsumers.push(e),e.p}}},rs=class n{constructor(e,t){this._onReturn=t;this._producerConsumer=new _r;this._iterator={next:()=>this._producerConsumer.consume(),return:()=>(this._onReturn?.(),Promise.resolve({done:!0,value:void 0})),throw:async e=>(this._finishError(e),{done:!0,value:void 0})};queueMicrotask(async()=>{let r=e({emitOne:i=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:i}}),emitMany:i=>{for(let s of i)this._producerConsumer.produce({ok:!0,value:{done:!1,value:s}})},reject:i=>this._finishError(i)});if(!this._producerConsumer.hasFinalValue)try{await r,this._finishOk()}catch(i){this._finishError(i)}})}static fromArray(e){return new n(t=>{t.emitMany(e)})}static fromPromise(e){return new n(async t=>{t.emitMany(await e)})}static fromPromisesResolveOrder(e){return new n(async t=>{await Promise.all(e.map(async r=>t.emitOne(await r)))})}static merge(e){return new n(async t=>{await Promise.all(e.map(async r=>{for await(let i of r)t.emitOne(i)}))})}static{this.EMPTY=n.fromArray([])}static map(e,t){return new n(async r=>{for await(let i of e)r.emitOne(t(i))})}static tee(e){let t,r,i=new de,s=async()=>{if(!(!t||!r))try{for await(let l of e)t.emitOne(l),r.emitOne(l)}catch(l){t.reject(l),r.reject(l)}finally{i.complete()}},o=new n(async l=>(t=l,s(),i.p)),a=new n(async l=>(r=l,s(),i.p));return[o,a]}map(e){return n.map(this,e)}static coalesce(e){return n.filter(e,t=>!!t)}coalesce(){return n.coalesce(this)}static filter(e,t){return new n(async r=>{for await(let i of e)t(i)&&r.emitOne(i)})}filter(e){return n.filter(this,e)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(e){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:e})}[Symbol.asyncIterator](){return this._iterator}};var Ft=typeof Buffer<"u",sa=new ae(()=>new Uint8Array(256)),xr,Er,G=class n{static alloc(e){return Ft?new n(Buffer.allocUnsafe(e)):new n(new Uint8Array(e))}static wrap(e){return Ft&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new n(e)}static fromString(e,t){return!(t?.dontUseNodeBuffer||!1)&&Ft?new n(Buffer.from(e)):(xr||(xr=new TextEncoder),new n(xr.encode(e)))}static fromByteArray(e){let t=n.alloc(e.length);for(let r=0,i=e.length;r<i;r++)t.buffer[r]=e[r];return t}static concat(e,t){if(typeof t>"u"){t=0;for(let s=0,o=e.length;s<o;s++)t+=e[s].byteLength}let r=n.alloc(t),i=0;for(let s=0,o=e.length;s<o;s++){let a=e[s];r.set(a,i),i+=a.byteLength}return r}static isNativeBuffer(e){return Ft&&Buffer.isBuffer(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}clone(){let e=n.alloc(this.byteLength);return e.set(this),e}toString(){return Ft?this.buffer.toString():(Er||(Er=new TextDecoder(void 0,{ignoreBOM:!0})),Er.decode(this.buffer))}slice(e,t){return new n(this.buffer.subarray(e,t))}set(e,t){if(e instanceof n)this.buffer.set(e.buffer,t);else if(e instanceof Uint8Array)this.buffer.set(e,t);else if(e instanceof ArrayBuffer)this.buffer.set(new Uint8Array(e),t);else if(ArrayBuffer.isView(e))this.buffer.set(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),t);else throw new Error("Unknown argument 'array'")}readUInt32BE(e){return aa(this.buffer,e)}writeUInt32BE(e,t){la(this.buffer,e,t)}readUInt32LE(e){return ua(this.buffer,e)}writeUInt32LE(e,t){ca(this.buffer,e,t)}readUInt8(e){return da(this.buffer,e)}writeUInt8(e,t){fa(this.buffer,e,t)}indexOf(e,t=0){return oa(this.buffer,e instanceof n?e.buffer:e,t)}equals(e){return this===e?!0:this.byteLength!==e.byteLength?!1:this.buffer.every((t,r)=>t===e.buffer[r])}};function oa(n,e,t=0){let r=e.byteLength,i=n.byteLength;if(r===0)return 0;if(r===1)return n.indexOf(e[0],t);if(r>i-t)return-1;let s=sa.value;s.fill(e.length);for(let u=0;u<e.length;u++)s[e[u]]=e.length-u-1;let o=t+e.length-1,a=o,l=-1;for(;o<i;)if(n[o]===e[a]){if(a===0){l=o;break}o--,a--}else o+=Math.max(e.length-a,s[n[o]]),a=e.length-1;return l}function aa(n,e){return n[e]*2**24+n[e+1]*2**16+n[e+2]*2**8+n[e+3]}function la(n,e,t){n[t+3]=e,e=e>>>8,n[t+2]=e,e=e>>>8,n[t+1]=e,e=e>>>8,n[t]=e}function ua(n,e){return n[e+0]<<0>>>0|n[e+1]<<8>>>0|n[e+2]<<16>>>0|n[e+3]<<24>>>0}function ca(n,e,t){n[t+0]=e&255,e=e>>>8,n[t+1]=e&255,e=e>>>8,n[t+2]=e&255,e=e>>>8,n[t+3]=e&255}function da(n,e){return n[e]}function fa(n,e,t){n[t]=e}var is="0123456789abcdef";function ss({buffer:n}){let e="";for(let t=0;t<n.length;t++){let r=n[t];e+=is[r>>>4],e+=is[r&15]}return e}function os(n,e,t){let r=null,i=null;if(typeof t.value=="function"?(r="value",i=t.value,i.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof t.get=="function"&&(r="get",i=t.get),!i)throw new Error("not supported");let s=`$memoize$${e}`;t[r]=function(...o){return this.hasOwnProperty(s)||Object.defineProperty(this,s,{configurable:!1,enumerable:!1,writable:!1,value:i.apply(this,o)}),this[s]}}function kt(n,e=0){if(!n||e>200)return n;if(typeof n=="object"){switch(n.$mid){case 1:return U.revive(n);case 2:return new RegExp(n.source,n.flags);case 17:return new Date(n.source)}if(n instanceof G||n instanceof Uint8Array)return n;if(Array.isArray(n))for(let t=0;t<n.length;++t)n[t]=kt(n[t],e+1);else for(let t in n)Object.hasOwnProperty.call(n,t)&&(n[t]=kt(n[t],e+1))}return n}function dt(n){switch(n){case 100:return"req";case 101:return"cancel";case 102:return"subscribe";case 103:return"unsubscribe"}}function cn(n){switch(n){case 200:return"init";case 201:return"reply:";case 202:case 203:return"replyErr:";case 204:return"event:"}}function ut(n){let e=0;for(let t=0;;t+=7){let r=n.read(1);if(e|=(r.buffer[0]&127)<<t,!(r.buffer[0]&128))return e}}var pa=Ce(0);function ct(n,e){if(e===0){n.write(pa);return}let t=0;for(let i=e;i!==0;i=i>>>7)t++;let r=G.alloc(t);for(let i=0;e!==0;i++)r.buffer[i]=e&127,e=e>>>7,e>0&&(r.buffer[i]|=128);n.write(r)}var Ut=class{constructor(e){this.buffer=e;this.pos=0}read(e){let t=this.buffer.slice(this.pos,this.pos+e);return this.pos+=t.byteLength,t}},dn=class{constructor(){this.buffers=[]}get buffer(){return G.concat(this.buffers)}write(e){this.buffers.push(e)}};function Ce(n){let e=G.alloc(1);return e.writeUInt8(n,0),e}var nt={Undefined:Ce(0),String:Ce(1),Buffer:Ce(2),VSBuffer:Ce(3),Array:Ce(4),Object:Ce(5),Uint:Ce(6)};function Ot(n,e){if(typeof e>"u")n.write(nt.Undefined);else if(typeof e=="string"){let t=G.fromString(e);n.write(nt.String),ct(n,t.byteLength),n.write(t)}else if(G.isNativeBuffer(e)){let t=G.wrap(e);n.write(nt.Buffer),ct(n,t.byteLength),n.write(t)}else if(e instanceof G)n.write(nt.VSBuffer),ct(n,e.byteLength),n.write(e);else if(Array.isArray(e)){n.write(nt.Array),ct(n,e.length);for(let t of e)Ot(n,t)}else if(typeof e=="number"&&(e|0)===e)n.write(nt.Uint),ct(n,e);else{let t=G.fromString(JSON.stringify(e));n.write(nt.Object),ct(n,t.byteLength),n.write(t)}}function ft(n){switch(n.read(1).readUInt8(0)){case 0:return;case 1:return n.read(ut(n)).toString();case 2:return n.read(ut(n)).buffer;case 3:return n.read(ut(n));case 4:{let t=ut(n),r=[];for(let i=0;i<t;i++)r.push(ft(n));return r}case 5:return JSON.parse(n.read(ut(n)).toString());case 6:return ut(n)}}var Wt=class{constructor(e,t,r=null,i=1e3){this.protocol=e;this.ctx=t;this.logger=r;this.timeoutDelay=i;this.channels=new Map;this.activeRequests=new Map;this.pendingRequests=new Map;this.protocolListener=this.protocol.onMessage(s=>this.onRawMessage(s)),this.sendResponse({type:200})}registerChannel(e,t){this.channels.set(e,t),setTimeout(()=>this.flushPendingRequests(e),0)}sendResponse(e){switch(e.type){case 200:{let t=this.send([e.type]);this.logger?.logOutgoing(t,0,1,cn(e.type));return}case 201:case 202:case 204:case 203:{let t=this.send([e.type,e.id],e.data);this.logger?.logOutgoing(t,e.id,1,cn(e.type),e.data);return}}}send(e,t=void 0){let r=new dn;return Ot(r,e),Ot(r,t),this.sendBuffer(r.buffer)}sendBuffer(e){try{return this.protocol.send(e),e.byteLength}catch{return 0}}onRawMessage(e){let t=new Ut(e),r=ft(t),i=ft(t),s=r[0];switch(s){case 100:return this.logger?.logIncoming(e.byteLength,r[1],1,`${dt(s)}: ${r[2]}.${r[3]}`,i),this.onPromise({type:s,id:r[1],channelName:r[2],name:r[3],arg:i});case 102:return this.logger?.logIncoming(e.byteLength,r[1],1,`${dt(s)}: ${r[2]}.${r[3]}`,i),this.onEventListen({type:s,id:r[1],channelName:r[2],name:r[3],arg:i});case 101:return this.logger?.logIncoming(e.byteLength,r[1],1,`${dt(s)}`),this.disposeActiveRequest({type:s,id:r[1]});case 103:return this.logger?.logIncoming(e.byteLength,r[1],1,`${dt(s)}`),this.disposeActiveRequest({type:s,id:r[1]})}}onPromise(e){let t=this.channels.get(e.channelName);if(!t){this.collectPendingRequest(e);return}let r=new ee,i;try{i=t.call(this.ctx,e.name,e.arg,r.token)}catch(a){i=Promise.reject(a)}let s=e.id;i.then(a=>{this.sendResponse({id:s,data:a,type:201})},a=>{a instanceof Error?this.sendResponse({id:s,data:{message:a.message,name:a.name,stack:a.stack?a.stack.split(`
`):void 0},type:202}):this.sendResponse({id:s,data:a,type:203})}).finally(()=>{o.dispose(),this.activeRequests.delete(e.id)});let o=j(()=>r.cancel());this.activeRequests.set(e.id,o)}onEventListen(e){let t=this.channels.get(e.channelName);if(!t){this.collectPendingRequest(e);return}let r=e.id,s=t.listen(this.ctx,e.name,e.arg)(o=>this.sendResponse({id:r,data:o,type:204}));this.activeRequests.set(e.id,s)}disposeActiveRequest(e){let t=this.activeRequests.get(e.id);t&&(t.dispose(),this.activeRequests.delete(e.id))}collectPendingRequest(e){let t=this.pendingRequests.get(e.channelName);t||(t=[],this.pendingRequests.set(e.channelName,t));let r=setTimeout(()=>{console.error(`Unknown channel: ${e.channelName}`),e.type===100&&this.sendResponse({id:e.id,data:{name:"Unknown channel",message:`Channel name '${e.channelName}' timed out after ${this.timeoutDelay}ms`,stack:void 0},type:202})},this.timeoutDelay);t.push({request:e,timeoutTimer:r})}flushPendingRequests(e){let t=this.pendingRequests.get(e);if(t){for(let r of t)switch(clearTimeout(r.timeoutTimer),r.request.type){case 100:this.onPromise(r.request);break;case 102:this.onEventListen(r.request);break}this.pendingRequests.delete(e)}}dispose(){this.protocolListener&&(this.protocolListener.dispose(),this.protocolListener=null),ze(this.activeRequests.values()),this.activeRequests.clear()}};var Lt=class{constructor(e,t=null){this.protocol=e;this.isDisposed=!1;this.state=0;this.activeRequests=new Set;this.handlers=new Map;this.lastRequestId=0;this._onDidInitialize=new D;this.onDidInitialize=this._onDidInitialize.event;this.protocolListener=this.protocol.onMessage(r=>this.onBuffer(r)),this.logger=t}getChannel(e){let t=this;return{call(r,i,s){return t.isDisposed?Promise.reject(new re):t.requestPromise(e,r,i,s)},listen(r,i){return t.isDisposed?k.None:t.requestEvent(e,r,i)}}}requestPromise(e,t,r,i=Ge.None){let s=this.lastRequestId++,a={id:s,type:100,channelName:e,name:t,arg:r};if(i.isCancellationRequested)return Promise.reject(new re);let l,u;return new Promise((c,f)=>{if(i.isCancellationRequested)return f(new re);let m=()=>{let L=W=>{switch(W.type){case 201:this.handlers.delete(s),c(W.data);break;case 202:{this.handlers.delete(s);let te=new Error(W.data.message);te.stack=Array.isArray(W.data.stack)?W.data.stack.join(`
`):W.data.stack,te.name=W.data.name,f(te);break}case 203:this.handlers.delete(s),f(W.data);break}};this.handlers.set(s,L),this.sendRequest(a)},v=null;this.state===1?m():(v=At(L=>this.whenInitialized()),v.then(()=>{v=null,m()}));let y=()=>{v?(v.cancel(),v=null):this.sendRequest({id:s,type:101}),f(new re)};l=i.onCancellationRequested(y),u={dispose:Tt(()=>{y(),l.dispose()})},this.activeRequests.add(u)}).finally(()=>{l?.dispose(),this.activeRequests.delete(u)})}requestEvent(e,t,r){let i=this.lastRequestId++,o={id:i,type:102,channelName:e,name:t,arg:r},a=null,l=new D({onWillAddFirstListener:()=>{let d=()=>{this.activeRequests.add(l),this.sendRequest(o)};this.state===1?d():(a=At(c=>this.whenInitialized()),a.then(()=>{a=null,d()}))},onDidRemoveLastListener:()=>{a?(a.cancel(),a=null):(this.activeRequests.delete(l),this.sendRequest({id:i,type:103})),this.handlers.delete(i)}}),u=d=>l.fire(d.data);return this.handlers.set(i,u),l.event}sendRequest(e){switch(e.type){case 100:case 102:{let t=this.send([e.type,e.id,e.channelName,e.name],e.arg);this.logger?.logOutgoing(t,e.id,0,`${dt(e.type)}: ${e.channelName}.${e.name}`,e.arg);return}case 101:case 103:{let t=this.send([e.type,e.id]);this.logger?.logOutgoing(t,e.id,0,dt(e.type));return}}}send(e,t=void 0){let r=new dn;return Ot(r,e),Ot(r,t),this.sendBuffer(r.buffer)}sendBuffer(e){try{return this.protocol.send(e),e.byteLength}catch{return 0}}onBuffer(e){let t=new Ut(e),r=ft(t),i=ft(t),s=r[0];switch(s){case 200:return this.logger?.logIncoming(e.byteLength,0,0,cn(s)),this.onResponse({type:r[0]});case 201:case 202:case 204:case 203:return this.logger?.logIncoming(e.byteLength,r[1],0,cn(s),i),this.onResponse({type:r[0],id:r[1],data:i})}}onResponse(e){if(e.type===200){this.state=1,this._onDidInitialize.fire();return}this.handlers.get(e.id)?.(e)}get onDidInitializePromise(){return k.toPromise(this.onDidInitialize)}whenInitialized(){return this.state===1?Promise.resolve():this.onDidInitializePromise}dispose(){this.isDisposed=!0,this.protocolListener&&(this.protocolListener.dispose(),this.protocolListener=null),ze(this.activeRequests.values()),this.activeRequests.clear(),this._onDidInitialize.dispose()}};Kr([os],Lt.prototype,"onDidInitializePromise",1);var fn=class{constructor(e,t,r){this.channels=new Map;this._connections=new Set;this._onDidAddConnection=new D;this.onDidAddConnection=this._onDidAddConnection.event;this._onDidRemoveConnection=new D;this.onDidRemoveConnection=this._onDidRemoveConnection.event;this.disposables=new q;this.disposables.add(e(({protocol:i,onDidClientDisconnect:s})=>{let o=k.once(i.onMessage);this.disposables.add(o(a=>{let l=new Ut(a),u=ft(l),d=new Wt(i,u,t,r),c=new Lt(i,t);this.channels.forEach((m,v)=>d.registerChannel(v,m));let f={channelServer:d,channelClient:c,ctx:u};this._connections.add(f),this._onDidAddConnection.fire(f),this.disposables.add(s(()=>{d.dispose(),c.dispose(),this._connections.delete(f),this._onDidRemoveConnection.fire(f)}))}))}))}get connections(){let e=[];return this._connections.forEach(t=>e.push(t)),e}getChannel(e,t){let r=this;return{call(i,s,o){let a;if(Kn(t)){let u=Yr(r.connections.filter(t));a=u?Promise.resolve(u):k.toPromise(k.filter(r.onDidAddConnection,t))}else a=t.routeCall(r,i,s);let l=a.then(u=>u.channelClient.getChannel(e));return as(l).call(i,s,o)},listen(i,s){if(Kn(t))return r.getMulticastEvent(e,t,i,s);let o=t.routeEvent(r,i,s).then(a=>a.channelClient.getChannel(e));return as(o).listen(i,s)}}}getMulticastEvent(e,t,r,i){let s=this,o,a=new D({onWillAddFirstListener:()=>{o=new q;let l=new Vt,u=new Map,d=f=>{let v=f.channelClient.getChannel(e).listen(r,i),y=l.add(v);u.set(f,y)},c=f=>{let m=u.get(f);m&&(m.dispose(),u.delete(f))};s.connections.filter(t).forEach(d),k.filter(s.onDidAddConnection,t)(d,void 0,o),s.onDidRemoveConnection(c,void 0,o),l.event(a.fire,a,o),o.add(l)},onDidRemoveLastListener:()=>{o?.dispose(),o=void 0}});return s.disposables.add(a),a.event}registerChannel(e,t){this.channels.set(e,t);for(let r of this._connections)r.channelServer.registerChannel(e,t)}dispose(){this.disposables.dispose();for(let e of this._connections)e.channelClient.dispose(),e.channelServer.dispose();this._connections.clear(),this.channels.clear(),this._onDidAddConnection.dispose(),this._onDidRemoveConnection.dispose()}};function as(n){return{call(e,t,r){return n.then(i=>i.call(e,t,r))},listen(e,t){let r=new Kt;return n.then(i=>r.input=i.listen(e,t)),r.event}}}var Rr;(i=>{function n(s,o,a){let l=s,u=a?.disableMarshalling,d=new Map;for(let c in l)t(c)&&d.set(c,k.buffer(l[c],!0,void 0,o));return new class{listen(c,f,m){let v=d.get(f);if(v)return v;let y=l[f];if(typeof y=="function"){if(r(f))return y.call(l,m);if(t(f))return d.set(f,k.buffer(l[f],!0,void 0,o)),d.get(f)}throw new De(`Event not found: ${f}`)}call(c,f,m){let v=l[f];if(typeof v=="function"){if(!u&&Array.isArray(m))for(let L=0;L<m.length;L++)m[L]=kt(m[L]);let y=v.apply(l,m);return y instanceof Promise||(y=Promise.resolve(y)),y}throw new De(`Method not found: ${f}`)}}}i.fromService=n;function e(s,o){let a=o?.disableMarshalling;return new Proxy({},{get(l,u){if(typeof u=="string")return o?.properties?.has(u)?o.properties.get(u):r(u)?function(d){return s.listen(u,d)}:t(u)?s.listen(u):async function(...d){let c;o&&!Vn(o.context)?c=[o.context,...d]:c=d;let f=await s.call(u,c);return a?f:kt(f)};throw new De(`Property not found: ${String(u)}`)}})}i.toService=e;function t(s){return s[0]==="o"&&s[1]==="n"&&ur(s.charCodeAt(2))}function r(s){return/^onDynamic/.test(s)&&ur(s.charCodeAt(9))}})(Rr||={});import{fork as Kc}from"child_process";import*as Oa from"child_process";import{promises as Pc}from"fs";import*as _ from"fs";import{tmpdir as ba}from"os";import{promisify as Nt}from"util";var ha=new Ae(1e4);function rt(n){return ls(n,"NFC",ha)}var ma=new Ae(1e4);function ga(n){return ls(n,"NFD",ma)}var va=/[^\u0000-\u0080]/;function ls(n,e,t){if(!n)return n;let r=t.get(n);if(r)return r;let i;return va.test(n)?i=n.normalize(e):i=n,t.set(n,i),i}var uc=(function(){let n=new Ae(1e4),e=/[\u0300-\u036f]/g;return function(t){let r=n.get(t);if(r)return r;let i=ga(t).replace(e,""),s=(i.length===t.length?i:t).toLowerCase();return n.set(t,s),s}})();async function ds(n,e=0,t){if(pr(n))throw new Error("rimraf - will refuse to recursively delete root");return e===0?wr(n):Ta(n,t)}async function Ta(n,e=tn(ba())){try{try{await _.promises.rename(n,e)}catch(t){return t.code==="ENOENT"?void 0:wr(n)}wr(e).catch(()=>{})}catch(t){if(t.code!=="ENOENT")throw t}}async function wr(n){return _.promises.rm(n,{recursive:!0,force:!0,maxRetries:3})}async function hn(n,e){try{return await us(n,e)}catch(t){if(t.code==="ENOENT"&&z&&pr(n))try{return await us(`${n}.`,e)}catch{}throw t}}async function us(n,e){return Ia(await(e?ya(n):_.promises.readdir(n)))}async function ya(n){try{return await _.promises.readdir(n,{withFileTypes:!0})}catch(r){r.code!=="ENOENT"&&console.warn("[node.js fs] readdir with filetypes failed with error: ",r)}let e=[],t=await hn(n);for(let r of t){let i=!1,s=!1,o=!1;try{let a=await _.promises.lstat(Y(n,r));i=a.isFile(),s=a.isDirectory(),o=a.isSymbolicLink()}catch(a){a.code!=="ENOENT"&&console.warn("[node.js fs] unexpected error from lstat after readdir: ",a)}e.push({name:r,isFile:()=>i,isDirectory:()=>s,isSymbolicLink:()=>o})}return e}function Ia(n){return n.map(e=>typeof e=="string"?ge?rt(e):e:(e.name=ge?rt(e.name):e.name,e))}async function _a(n){let e=await hn(n),t=[];for(let r of e)await mn.existsDirectory(Y(n,r))&&t.push(r);return t}var mn;(r=>{async function n(i){let s;try{if(s=await _.promises.lstat(i),!s.isSymbolicLink())return{stat:s}}catch{}try{return{stat:await _.promises.stat(i),symbolicLink:s?.isSymbolicLink()?{dangling:!1}:void 0}}catch(o){if(o.code==="ENOENT"&&s)return{stat:s,symbolicLink:{dangling:!0}};if(z&&o.code==="EACCES")try{return{stat:await _.promises.stat(await _.promises.readlink(i)),symbolicLink:{dangling:!1}}}catch(a){if(a.code==="ENOENT"&&s)return{stat:s,symbolicLink:{dangling:!0}};throw a}throw o}}r.stat=n;async function e(i){try{let{stat:s,symbolicLink:o}=await r.stat(i);return s.isFile()&&o?.dangling!==!0}catch{}return!1}r.existsFile=e;async function t(i){try{let{stat:s,symbolicLink:o}=await r.stat(i);return s.isDirectory()&&o?.dangling!==!0}catch{}return!1}r.existsDirectory=t})(mn||={});var xa=new on;function Ea(n,e,t){return xa.queueFor(U.file(n),()=>{let r=Pa(t);return new Promise((i,s)=>wa(n,e,r,o=>o?s(o):i()))},es)}var fs=!0;function Ra(n){fs=n}function wa(n,e,t,r){if(!fs)return _.writeFile(n,e,{mode:t.mode,flag:t.flag},r);_.open(n,t.flag,t.mode,(i,s)=>{if(i)return r(i);_.writeFile(s,e,o=>{if(o)return _.close(s,()=>r(o));_.fdatasync(s,a=>(a&&(console.warn("[node.js fs] fdatasync is now disabled for this session because it failed: ",a),Ra(!1)),_.close(s,l=>r(l))))})})}function Pa(n){return n?{mode:typeof n.mode=="number"?n.mode:438,flag:typeof n.flag=="string"?n.flag:"w"}:{mode:438,flag:"w"}}async function Da(n,e,t=6e4){if(n!==e)try{z&&typeof t=="number"?await ps(n,e,Date.now(),t):await _.promises.rename(n,e)}catch(r){if(n.toLowerCase()!==e.toLowerCase()&&r.code==="EXDEV"||n.endsWith("."))await hs(n,e,{preserveSymlinks:!1}),await ds(n,1);else throw r}}async function ps(n,e,t,r,i=0){try{return await _.promises.rename(n,e)}catch(s){if(s.code!=="EACCES"&&s.code!=="EPERM"&&s.code!=="EBUSY")throw s;if(Date.now()-t>=r)throw console.error(`[node.js fs] rename failed after ${i} retries with error: ${s}`),s;if(i===0){let o=!1;try{let{stat:a}=await mn.stat(e);a.isFile()||(o=!0)}catch{}if(o)throw s}return await ln(Math.min(100,i*10)),ps(n,e,t,r,i+1)}}async function hs(n,e,t){return ms(n,e,{root:{source:n,target:e},options:t,handledSourcePaths:new Set})}var cs=511;async function ms(n,e,t){if(t.handledSourcePaths.has(n))return;t.handledSourcePaths.add(n);let{stat:r,symbolicLink:i}=await mn.stat(n);if(i){if(t.options.preserveSymlinks)try{return await Fa(n,e,t)}catch{}if(i.dangling)return}return r.isDirectory()?Sa(n,e,r.mode&cs,t):Aa(n,e,r.mode&cs)}async function Sa(n,e,t,r){await _.promises.mkdir(e,{recursive:!0,mode:t});let i=await hn(n);for(let s of i)await ms(Y(n,s),Y(e,s),r)}async function Aa(n,e,t){await _.promises.copyFile(n,e),await _.promises.chmod(e,t)}async function Fa(n,e,t){let r=await _.promises.readlink(n);fe(r,t.root.source,!C)&&(r=Y(t.root.target,r.substr(t.root.source.length+1))),await _.promises.symlink(r,e)}async function pn(n,e){if(C)return n;let t=Je(n);if(n===t)return n;let r=(Ye(n)||n).toLowerCase();try{if(e?.isCancellationRequested)return null;let s=(await he.readdir(t)).filter(o=>o.toLowerCase()===r);if(s.length===1){let o=await pn(t,e);if(o)return Y(o,s[0])}else if(s.length>1){let o=s.indexOf(r);if(o>=0){let a=await pn(t,e);if(a)return Y(a,s[o])}}}catch{}return null}async function ka(n){try{return await Nt(_.realpath)(n)}catch{let e=La(n);return await _.promises.access(e,_.constants.R_OK),e}}function La(n){return ar(Ue(n),Z)}var he=new class{get read(){return(n,e,t,r,i)=>new Promise((s,o)=>{_.read(n,e,t,r,i,(a,l,u)=>a?o(a):s({bytesRead:l,buffer:u}))})}get write(){return(n,e,t,r,i)=>new Promise((s,o)=>{_.write(n,e,t,r,i,(a,l,u)=>a?o(a):s({bytesWritten:l,buffer:u}))})}get fdatasync(){return Nt(_.fdatasync)}get open(){return Nt(_.open)}get close(){return Nt(_.close)}get ftruncate(){return Nt(_.ftruncate)}async exists(n){try{return await _.promises.access(n),!0}catch{return!1}}get readdir(){return hn}get readDirsInDir(){return _a}get writeFile(){return Ea}get rm(){return ds}get rename(){return Da}get copy(){return hs}get realpath(){return ka}};var gn=class extends Wt{constructor(e){super({send:t=>{try{process.send?.(t.buffer.toString("base64"))}catch{}},onMessage:k.fromNodeEventEmitter(process,"message",t=>G.wrap(Buffer.from(t,"base64")))},e),process.once("disconnect",()=>this.dispose())}};function vn(n){return!!n.parentPort}var Pr=class{constructor(e){this.port=e;this.onMessage=k.fromNodeEventEmitter(this.port,"message",t=>t.data?G.wrap(t.data):G.alloc(0)),e.start()}send(e){this.port.postMessage(e.buffer)}disconnect(){this.port.close()}},bn=class n extends fn{static getOnDidClientConnect(e){ci(vn(process),"Electron Utility Process");let t=new D;return process.parentPort.on("message",r=>{if(e?.handledClientConnection(r))return;let i=r.ports.at(0);i&&t.fire(i)}),k.map(t.event,r=>({protocol:new Pr(r),onDidClientDisconnect:k.fromNodeEventEmitter(r,"close")}))}constructor(e){super(n.getOnDidClientConnect(e))}};var Me="**",gs="/",Tn="[/\\\\]",yn="[^/\\\\]",Wa=/\//g;function vs(n,e){switch(n){case 0:return"";case 1:return`${yn}*?`;default:return`(?:${Tn}|${yn}+${Tn}${e?`|${Tn}${yn}+`:""})*?`}}function bs(n,e){if(!n)return[];let t=[],r=!1,i=!1,s="";for(let o of n){switch(o){case e:if(!r&&!i){t.push(s),s="";continue}break;case"{":r=!0;break;case"}":r=!1;break;case"[":i=!0;break;case"]":i=!1;break}s+=o}return s&&t.push(s),t}function xs(n){if(!n)return"";let e="",t=bs(n,gs);if(t.every(r=>r===Me))e=".*";else{let r=!1;t.forEach((i,s)=>{if(i===Me){if(r)return;e+=vs(2,s===t.length-1)}else{let o=!1,a="",l=!1,u="";for(let d of i){if(d!=="}"&&o){a+=d;continue}if(l&&(d!=="]"||!u)){let c;d==="-"?c=d:(d==="^"||d==="!")&&!u?c="^":d===gs?c="":c=or(d),u+=c;continue}switch(d){case"{":o=!0;continue;case"[":l=!0;continue;case"}":{let f=`(?:${bs(a,",").map(m=>xs(m)).join("|")})`;e+=f,o=!1,a="";break}case"]":{e+="["+u+"]",l=!1,u="";break}case"?":e+=yn;continue;case"*":e+=vs(1);continue;default:e+=or(d)}}s<t.length-1&&(t[s+1]!==Me||s+2<t.length)&&(e+=Tn)}r=i===Me})}return e}var Na=/^\*\*\/\*\.[\w\.-]+$/,Ca=/^\*\*\/([\w\.-]+)\/?$/,Ma=/^{\*\*\/\*?[\w\.-]+\/?(,\*\*\/\*?[\w\.-]+\/?)*}$/,qa=/^{\*\*\/\*?[\w\.-]+(\/(\*\*)?)?(,\*\*\/\*?[\w\.-]+(\/(\*\*)?)?)*}$/,Ba=/^\*\*((\/[\w\.-]+)+)\/?$/,$a=/^([\w\.-]+(\/[\w\.-]+)*)\/?$/,Ts=new Ae(1e4),ys=function(){return!1},ve=function(){return null};function Sr(n,e){if(!n)return ve;let t;typeof n!="string"?t=n.pattern:t=n,t=t.trim();let r=e.ignoreCase??!1,i={...e,equals:r?Ze:(l,u)=>l===u,endsWith:r?Bi:(l,u)=>l.endsWith(u),isEqualOrParent:(l,u)=>fe(l,u,!C||r)},s=`${r?t.toLowerCase():t}_${!!e.trimForExclusions}_${r}`,o=Ts.get(s);if(o)return Is(o,n,i);let a;return Na.test(t)?o=Va(t.substring(4),t,i):(a=Ca.exec(Dr(t,i)))?o=Ka(a[1],t,i):(e.trimForExclusions?qa:Ma).test(t)?o=ja(t,i):(a=Ba.exec(Dr(t,i)))?o=_s(a[1].substring(1),t,!0,i):(a=$a.exec(Dr(t,i)))?o=_s(a[1],t,!1,i):o=za(t,i),Ts.set(s,o),Is(o,n,i)}function Is(n,e,t){if(typeof e=="string")return n;let r=function(i,s){return t.isEqualOrParent(i,e.base)?n(qi(i.substring(e.base.length),Z),s):null};return r.allBasenames=n.allBasenames,r.allPaths=n.allPaths,r.basenames=n.basenames,r.patterns=n.patterns,r}function Dr(n,e){return e.trimForExclusions&&n.endsWith("/**")?n.substring(0,n.length-2):n}function Va(n,e,t){return function(r,i){return typeof r=="string"&&t.endsWith(r,n)?e:null}}function Ka(n,e,t){let r=`/${n}`,i=`\\${n}`,s=function(a,l){return typeof a!="string"?null:l?t.equals(l,n)?e:null:t.equals(a,n)||t.endsWith(a,r)||t.endsWith(a,i)?e:null},o=[n];return s.basenames=o,s.patterns=[e],s.allBasenames=o,s}function ja(n,e){let t=Rs(n.slice(1,-1).split(",").map(a=>Sr(a,e)).filter(a=>a!==ve),n),r=t.length;if(!r)return ve;if(r===1)return t[0];let i=function(a,l){for(let u=0,d=t.length;u<d;u++)if(t[u](a,l))return n;return null},s=t.find(a=>!!a.allBasenames);s&&(i.allBasenames=s.allBasenames);let o=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return o.length&&(i.allPaths=o),i}function _s(n,e,t,r){let i=Z===P.sep,s=i?n:n.replace(Wa,Z),o=Z+s,a=P.sep+n,l;return t?l=function(u,d){return typeof u=="string"&&(r.equals(u,s)||r.endsWith(u,o)||!i&&(r.equals(u,n)||r.endsWith(u,a)))?e:null}:l=function(u,d){return typeof u=="string"&&(r.equals(u,s)||!i&&r.equals(u,n))?e:null},l.allPaths=[(t?"*/":"./")+n],l}function za(n,e){try{let t=new RegExp(`^${xs(n)}$`,e.ignoreCase?"i":void 0);return function(r){return t.lastIndex=0,typeof r=="string"&&t.test(r)?n:null}}catch{return ve}}function Es(n,e={}){if(!n)return ys;if(typeof n=="string"||Ga(n)){let t=Sr(n,e);if(t===ve)return ys;let r=function(i,s){return!!t(i,s)};return t.allBasenames&&(r.allBasenames=t.allBasenames),t.allPaths&&(r.allPaths=t.allPaths),r}return Ha(n,e)}function Ga(n){let e=n;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function Ha(n,e){let t=Rs(Object.getOwnPropertyNames(n).map(a=>Qa(a,n[a],e)).filter(a=>a!==ve)),r=t.length;if(!r)return ve;if(!t.some(a=>!!a.requiresSiblings)){if(r===1)return t[0];let a=function(d,c){let f;for(let m=0,v=t.length;m<v;m++){let y=t[m](d,c);if(typeof y=="string")return y;an(y)&&(f||(f=[]),f.push(y))}return f?(async()=>{for(let m of f){let v=await m;if(typeof v=="string")return v}return null})():null},l=t.find(d=>!!d.allBasenames);l&&(a.allBasenames=l.allBasenames);let u=t.reduce((d,c)=>c.allPaths?d.concat(c.allPaths):d,[]);return u.length&&(a.allPaths=u),a}let i=function(a,l,u){let d,c;for(let f=0,m=t.length;f<m;f++){let v=t[f];v.requiresSiblings&&u&&(l||(l=Ye(a)),d||(d=l.substring(0,l.length-Oi(a).length)));let y=v(a,l,d,u);if(typeof y=="string")return y;an(y)&&(c||(c=[]),c.push(y))}return c?(async()=>{for(let f of c){let m=await f;if(typeof m=="string")return m}return null})():null},s=t.find(a=>!!a.allBasenames);s&&(i.allBasenames=s.allBasenames);let o=t.reduce((a,l)=>l.allPaths?a.concat(l.allPaths):a,[]);return o.length&&(i.allPaths=o),i}function Qa(n,e,t){if(e===!1)return ve;let r=Sr(n,t);if(r===ve)return ve;if(typeof e=="boolean")return r;if(e){let i=e.when;if(typeof i=="string"){let s=(o,a,l,u)=>{if(!u||!r(o,a))return null;let d=i.replace("$(basename)",()=>l),c=u(d);return an(c)?c.then(f=>f?n:null):c?n:null};return s.requiresSiblings=!0,s}}return r}function Rs(n,e){let t=n.filter(a=>!!a.basenames);if(t.length<2)return n;let r=t.reduce((a,l)=>{let u=l.basenames;return u?a.concat(u):a},[]),i;if(e){i=[];for(let a=0,l=r.length;a<l;a++)i.push(e)}else i=t.reduce((a,l)=>{let u=l.patterns;return u?a.concat(u):a},[]);let s=function(a,l){if(typeof a!="string")return null;if(!l){let d;for(d=a.length;d>0;d--){let c=a.charCodeAt(d-1);if(c===47||c===92)break}l=a.substring(d)}let u=r.indexOf(l);return u!==-1?i[u]:null};s.basenames=r,s.patterns=i,s.allBasenames=r;let o=n.filter(a=>!a.basenames);return o.push(s),o}function pt(n,e){return Qr(n,e,(t,r)=>typeof t=="string"&&typeof r=="string"?t===r:typeof t!="string"&&typeof r!="string"?t.base===r.base&&t.pattern===r.pattern:!1)}var Ar=class{constructor(){this._value="";this._pos=0}reset(e){return this._value=e,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos<this._value.length-1}cmp(e){let t=e.charCodeAt(0),r=this._value.charCodeAt(this._pos);return t-r}value(){return this._value[this._pos]}},Fr=class{constructor(e=!0){this._caseSensitive=e}reset(e){return this._value=e,this._from=0,this._to=0,this.next()}hasNext(){return this._to<this._value.length}next(){this._from=this._to;let e=!0;for(;this._to<this._value.length;this._to++)if(this._value.charCodeAt(this._to)===46)if(e)this._from++;else break;else e=!1;return this}cmp(e){return this._caseSensitive?en(e,this._value,0,e.length,this._from,this._to):Xe(e,this._value,0,e.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}},In=class{constructor(e=!0,t=!0){this._splitOnBackslash=e;this._caseSensitive=t}reset(e){this._from=0,this._to=0,this._value=e,this._valueLen=e.length;for(let t=e.length-1;t>=0;t--,this._valueLen--){let r=this._value.charCodeAt(t);if(!(r===47||this._splitOnBackslash&&r===92))break}return this.next()}hasNext(){return this._to<this._valueLen}next(){this._from=this._to;let e=!0;for(;this._to<this._valueLen;this._to++){let t=this._value.charCodeAt(this._to);if(t===47||this._splitOnBackslash&&t===92)if(e)this._from++;else break;else e=!1}return this}cmp(e){return this._caseSensitive?en(e,this._value,0,e.length,this._from,this._to):Xe(e,this._value,0,e.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}};var kr=class{constructor(e,t){this._ignorePathCasing=e;this._ignoreQueryAndFragment=t;this._states=[];this._stateIdx=0}reset(e){return this._value=e,this._states=[],this._value.scheme&&this._states.push(1),this._value.authority&&this._states.push(2),this._value.path&&(this._pathIterator=new In(!1,!this._ignorePathCasing(e)),this._pathIterator.reset(e.path),this._pathIterator.value()&&this._states.push(3)),this._ignoreQueryAndFragment(e)||(this._value.query&&this._states.push(4),this._value.fragment&&this._states.push(5)),this._stateIdx=0,this}next(){return this._states[this._stateIdx]===3&&this._pathIterator.hasNext()?this._pathIterator.next():this._stateIdx+=1,this}hasNext(){return this._states[this._stateIdx]===3&&this._pathIterator.hasNext()||this._stateIdx<this._states.length-1}cmp(e){if(this._states[this._stateIdx]===1)return lr(e,this._value.scheme);if(this._states[this._stateIdx]===2)return lr(e,this._value.authority);if(this._states[this._stateIdx]===3)return this._pathIterator.cmp(e);if(this._states[this._stateIdx]===4)return Rt(e,this._value.query);if(this._states[this._stateIdx]===5)return Rt(e,this._value.fragment);throw new Error}value(){if(this._states[this._stateIdx]===1)return this._value.scheme;if(this._states[this._stateIdx]===2)return this._value.authority;if(this._states[this._stateIdx]===3)return this._pathIterator.value();if(this._states[this._stateIdx]===4)return this._value.query;if(this._states[this._stateIdx]===5)return this._value.fragment;throw new Error}},we=class n{static{this.Val=Symbol("undefined_placeholder")}static wrap(e){return e===void 0?n.Val:e}static unwrap(e){return e===n.Val?void 0:e}},ht=class{constructor(){this.height=1;this.value=void 0;this.key=void 0;this.left=void 0;this.mid=void 0;this.right=void 0}isEmpty(){return!this.left&&!this.mid&&!this.right&&this.value===void 0}rotateLeft(){let e=this.right;return this.right=e.left,e.left=this,this.updateHeight(),e.updateHeight(),e}rotateRight(){let e=this.left;return this.left=e.right,e.right=this,this.updateHeight(),e.updateHeight(),e}updateHeight(){this.height=1+Math.max(this.heightLeft,this.heightRight)}balanceFactor(){return this.heightRight-this.heightLeft}get heightLeft(){return this.left?.height??0}get heightRight(){return this.right?.height??0}};var qe=class n{static forUris(e=()=>!1,t=()=>!1){return new n(new kr(e,t))}static forPaths(e=!1){return new n(new In(void 0,!e))}static forStrings(){return new n(new Ar)}static forConfigKeys(){return new n(new Fr)}constructor(e){this._iter=e}clear(){this._root=void 0}fill(e,t){if(t){let r=t.slice(0);Nn(r);for(let i of r)this.set(i,e)}else{let r=e.slice(0);Nn(r);for(let i of r)this.set(i[0],i[1])}}set(e,t){let r=this._iter.reset(e),i;this._root||(this._root=new ht,this._root.segment=r.value());let s=[];for(i=this._root;;){let a=r.cmp(i.segment);if(a>0)i.left||(i.left=new ht,i.left.segment=r.value()),s.push([-1,i]),i=i.left;else if(a<0)i.right||(i.right=new ht,i.right.segment=r.value()),s.push([1,i]),i=i.right;else if(r.hasNext())r.next(),i.mid||(i.mid=new ht,i.mid.segment=r.value()),s.push([0,i]),i=i.mid;else break}let o=we.unwrap(i.value);i.value=we.wrap(t),i.key=e;for(let a=s.length-1;a>=0;a--){let l=s[a][1];l.updateHeight();let u=l.balanceFactor();if(u<-1||u>1){let d=s[a][0],c=s[a+1][0];if(d===1&&c===1)s[a][1]=l.rotateLeft();else if(d===-1&&c===-1)s[a][1]=l.rotateRight();else if(d===1&&c===-1)l.right=s[a+1][1]=s[a+1][1].rotateRight(),s[a][1]=l.rotateLeft();else if(d===-1&&c===1)l.left=s[a+1][1]=s[a+1][1].rotateLeft(),s[a][1]=l.rotateRight();else throw new Error;if(a>0)switch(s[a-1][0]){case-1:s[a-1][1].left=s[a][1];break;case 1:s[a-1][1].right=s[a][1];break;case 0:s[a-1][1].mid=s[a][1];break}else this._root=s[0][1]}}return o}get(e){return we.unwrap(this._getNode(e)?.value)}_getNode(e){let t=this._iter.reset(e),r=this._root;for(;r;){let i=t.cmp(r.segment);if(i>0)r=r.left;else if(i<0)r=r.right;else if(t.hasNext())t.next(),r=r.mid;else break}return r}has(e){let t=this._getNode(e);return!(t?.value===void 0&&t?.mid===void 0)}delete(e){return this._delete(e,!1)}deleteSuperstr(e){return this._delete(e,!0)}_delete(e,t){let r=this._iter.reset(e),i=[],s=this._root;for(;s;){let o=r.cmp(s.segment);if(o>0)i.push([-1,s]),s=s.left;else if(o<0)i.push([1,s]),s=s.right;else if(r.hasNext())r.next(),i.push([0,s]),s=s.mid;else break}if(s){if(t?(s.left=void 0,s.mid=void 0,s.right=void 0,s.height=1):(s.key=void 0,s.value=void 0),!s.mid&&!s.value)if(s.left&&s.right){let o=[[1,s]],a=this._min(s.right,o);if(a.key){s.key=a.key,s.value=a.value,s.segment=a.segment;let l=a.right;if(o.length>1){let[d,c]=o[o.length-1];switch(d){case-1:c.left=l;break;case 0:Bt(!1);case 1:Bt(!1)}}else s.right=l;let u=this._balanceByStack(o);if(i.length>0){let[d,c]=i[i.length-1];switch(d){case-1:c.left=u;break;case 0:c.mid=u;break;case 1:c.right=u;break}}else this._root=u}}else{let o=s.left??s.right;if(i.length>0){let[a,l]=i[i.length-1];switch(a){case-1:l.left=o;break;case 0:l.mid=o;break;case 1:l.right=o;break}}else this._root=o}this._root=this._balanceByStack(i)??this._root}}_min(e,t){for(;e.left;)t.push([-1,e]),e=e.left;return e}_balanceByStack(e){for(let t=e.length-1;t>=0;t--){let r=e[t][1];r.updateHeight();let i=r.balanceFactor();if(i>1?(r.right.balanceFactor()>=0||(r.right=r.right.rotateRight()),e[t][1]=r.rotateLeft()):i<-1&&(r.left.balanceFactor()<=0||(r.left=r.left.rotateLeft()),e[t][1]=r.rotateRight()),t>0)switch(e[t-1][0]){case-1:e[t-1][1].left=e[t][1];break;case 1:e[t-1][1].right=e[t][1];break;case 0:e[t-1][1].mid=e[t][1];break}else return e[0][1]}}findSubstr(e){let t=this._iter.reset(e),r=this._root,i;for(;r;){let s=t.cmp(r.segment);if(s>0)r=r.left;else if(s<0)r=r.right;else if(t.hasNext())t.next(),i=we.unwrap(r.value)||i,r=r.mid;else break}return r&&we.unwrap(r.value)||i}findSuperstr(e){return this._findSuperstrOrElement(e,!1)}_findSuperstrOrElement(e,t){let r=this._iter.reset(e),i=this._root;for(;i;){let s=r.cmp(i.segment);if(s>0)i=i.left;else if(s<0)i=i.right;else if(r.hasNext())r.next(),i=i.mid;else return i.mid?this._entries(i.mid):t?we.unwrap(i.value):void 0}}hasElementOrSubtree(e){return this._findSuperstrOrElement(e,!0)!==void 0}forEach(e){for(let[t,r]of this)e(r,t)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(e){let t=[];return this._dfsEntries(e,t),t[Symbol.iterator]()}_dfsEntries(e,t){e&&(e.left&&this._dfsEntries(e.left,t),e.value!==void 0&&t.push([e.key,we.unwrap(e.value)]),e.mid&&this._dfsEntries(e.mid,t),e.right&&this._dfsEntries(e.right,t))}_isBalanced(){let e=t=>{if(!t)return!0;let r=t.balanceFactor();return r<-1||r>1?!1:e(t.left)&&e(t.right)};return e(this._root)}};var Be;(i=>{i.serviceIds=new Map,i.DI_TARGET="$di$target",i.DI_DEPENDENCIES="$di$dependencies";function r(s){return s[i.DI_DEPENDENCIES]||[]}i.getServiceDependencies=r})(Be||={});var Fd=Lr("instantiationService");function Ja(n,e,t){e[Be.DI_TARGET]===e?e[Be.DI_DEPENDENCIES].push({id:n,index:t}):(e[Be.DI_DEPENDENCIES]=[{id:n,index:t}],e[Be.DI_TARGET]=e)}function Lr(n){if(Be.serviceIds.has(n))return Be.serviceIds.get(n);let e=function(t,r,i){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");Ja(e,t,i)};return e.toString=()=>n,Be.serviceIds.set(n,e),e}var Vd=Lr("fileService");var ws=class n{constructor(e,t){this.ignorePathCasing=t;this.correlationId=void 0;this.added=new ae(()=>{let e=qe.forUris(()=>this.ignorePathCasing);return e.fill(this.rawAdded.map(t=>[t,!0])),e});this.updated=new ae(()=>{let e=qe.forUris(()=>this.ignorePathCasing);return e.fill(this.rawUpdated.map(t=>[t,!0])),e});this.deleted=new ae(()=>{let e=qe.forUris(()=>this.ignorePathCasing);return e.fill(this.rawDeleted.map(t=>[t,!0])),e});this.rawAdded=[];this.rawUpdated=[];this.rawDeleted=[];for(let r of e){switch(r.type){case 1:this.rawAdded.push(r.resource);break;case 0:this.rawUpdated.push(r.resource);break;case 2:this.rawDeleted.push(r.resource);break}this.correlationId!==n.MIXED_CORRELATION&&(typeof r.cId=="number"?this.correlationId===void 0?this.correlationId=r.cId:this.correlationId!==r.cId&&(this.correlationId=n.MIXED_CORRELATION):this.correlationId!==void 0&&(this.correlationId=n.MIXED_CORRELATION))}}static{this.MIXED_CORRELATION=null}contains(e,...t){return this.doContains(e,{includeChildren:!1},...t)}affects(e,...t){return this.doContains(e,{includeChildren:!0},...t)}doContains(e,t,...r){if(!e)return!1;let i=r.length>0;return!!((!i||r.includes(1))&&(this.added.value.get(e)||t.includeChildren&&this.added.value.findSuperstr(e))||(!i||r.includes(0))&&(this.updated.value.get(e)||t.includeChildren&&this.updated.value.findSuperstr(e))||(!i||r.includes(2))&&(this.deleted.value.findSubstr(e)||t.includeChildren&&this.deleted.value.findSuperstr(e)))}gotAdded(){return this.rawAdded.length>0}gotDeleted(){return this.rawDeleted.length>0}gotUpdated(){return this.rawUpdated.length>0}correlates(e){return this.correlationId===e}hasCorrelation(){return typeof this.correlationId=="number"}};function Ds(n,e,t){return!n||!e||n===e||e.length>n.length?!1:(e.charAt(e.length-1)!==Z&&(e+=Z),t?wt(n,e):n.indexOf(e)===0)}var Ps=class n{static{this.KB=1024}static{this.MB=n.KB*n.KB}static{this.GB=n.MB*n.KB}static{this.TB=n.GB*n.KB}static formatSize(e){return $n(e)||(e=0),e<n.KB?le(2063,null,e.toFixed(0)):e<n.MB?le(2065,null,(e/n.KB).toFixed(2)):e<n.GB?le(2066,null,(e/n.MB).toFixed(2)):e<n.TB?le(2064,null,(e/n.GB).toFixed(2)):le(2067,null,(e/n.TB).toFixed(2))}};function _n(n){return typeof n.correlationId=="number"}function mt(n){return n.recursive===!0}var Ss=class n extends B{constructor(t,r,i,s){super();this.onFileChanges=t;this.onLogMessage=r;this.verboseLogging=i;this.options=s;this.watcherDisposables=this._register(new Fe);this.requests=void 0;this.restartCounter=0}static{this.MAX_RESTARTS=5}init(){let t=new q;this.watcherDisposables.value=t,this.watcher=this.createWatcher(t),this.watcher.setVerboseLogging(this.verboseLogging),t.add(this.watcher.onDidChangeFile(r=>this.onFileChanges(r))),t.add(this.watcher.onDidLogMessage(r=>this.onLogMessage(r))),t.add(this.watcher.onDidError(r=>this.onError(r.error,r.request)))}onError(t,r){this.canRestart(t,r)?this.restartCounter<n.MAX_RESTARTS&&this.requests?(this.error(`restarting watcher after unexpected error: ${t}`),this.restart(this.requests)):this.error(`gave up attempting to restart watcher after unexpected error: ${t}`):this.error(t)}canRestart(t,r){return!(!this.options.restartOnError||r||t.indexOf("No space left on device")!==-1||t.indexOf("EMFILE")!==-1)}restart(t){this.restartCounter++,this.init(),this.watch(t)}async watch(t){this.requests=t,await this.watcher?.watch(t)}async setVerboseLogging(t){this.verboseLogging=t,await this.watcher?.setVerboseLogging(t)}error(t){this.onLogMessage({type:"error",message:`[File Watcher (${this.options.type})] ${t}`})}trace(t){this.onLogMessage({type:"trace",message:`[File Watcher (${this.options.type})] ${t}`})}dispose(){return this.watcher=void 0,super.dispose()}};function xn(n){let e=new Ur;for(let t of n)e.processEvent(t);return e.coalesce()}function Ya(n,e){return typeof e=="string"&&!e.startsWith(Me)&&!Yt(e)?{base:n,pattern:e}:e}function gt(n,e,t){let r=[];for(let i of e)r.push(Es(Ya(n,i),{ignoreCase:t}));return r}var Ur=class{constructor(){this.coalesced=new Set;this.mapPathToChange=new Map}toKey(e){return C?e.resource.fsPath:e.resource.fsPath.toLowerCase()}processEvent(e){let t=this.mapPathToChange.get(this.toKey(e)),r=!1;if(t){let i=t.type,s=e.type;t.resource.fsPath!==e.resource.fsPath&&(e.type===2||e.type===1)?r=!0:i===1&&s===2?(this.mapPathToChange.delete(this.toKey(e)),this.coalesced.delete(t)):i===2&&s===1?t.type=0:i===1&&s===0||(t.type=s)}else r=!0;r&&(this.coalesced.add(e),this.mapPathToChange.set(this.toKey(e),e))}coalesce(){let e=[],t=[];return Array.from(this.coalesced).filter(r=>r.type!==2?(e.push(r),!1):!0).sort((r,i)=>r.resource.fsPath.length-i.resource.fsPath.length).filter(r=>t.some(i=>Ds(r.resource.fsPath,i,!C))?!1:(t.push(r.resource.fsPath),!0)).concat(e)}};function En(n,e){if(typeof e=="number")switch(n.type){case 1:return(e&4)===0;case 2:return(e&8)===0;case 0:return(e&2)===0}return!1}function Rn(n){if(typeof n=="number"){let e=[];return n&4&&e.push("Added"),n&8&&e.push("Deleted"),n&2&&e.push("Updated"),e.length===0?"<all>":`[${e.join(", ")}]`}return"<none>"}import Os from"@parcel/watcher";import{promises as Mr}from"fs";import{tmpdir as rl,homedir as il}from"os";function Wr(n,e){return e&&(n.stack||n.stacktrace)?le(119,null,Fs(n),As(n.stack)||As(n.stacktrace)):Fs(n)}function As(n){return Array.isArray(n)?n.join(`
`):n}function Fs(n){return n.code==="ERR_UNC_HOST_NOT_ALLOWED"?`${n.message}. Please update the 'security.allowedUNCHosts' setting if you want to allow this host.`:typeof n.code=="string"&&typeof n.errno=="number"&&typeof n.syscall=="string"?le(118,null,n.message):n.message||le(116,null)}function wn(n=null,e=!1){if(!n)return le(116,null);if(Array.isArray(n)){let t=Jr(n),r=wn(t[0],e);return t.length>1?le(117,null,r,t.length):r}if(Bn(n))return n;if(n.detail){let t=n.detail;if(t.error)return Wr(t.error,e);if(t.exception)return Wr(t.exception,e)}return n.stack?Wr(n,e):n.message?n.message:le(116,null)}import{watchFile as tl,unwatchFile as nl}from"fs";function Ls(n){return Cr(n,0)}function Cr(n,e){switch(typeof n){case"object":return n===null?Pe(349,e):Array.isArray(n)?Za(n,e):el(n,e);case"string":return Us(n,e);case"boolean":return Xa(n,e);case"number":return Pe(n,e);case"undefined":return Pe(937,e);default:return Pe(617,e)}}function Pe(n,e){return(e<<5)-e+n|0}function Xa(n,e){return Pe(n?433:863,e)}function Us(n,e){e=Pe(149417,e);for(let t=0,r=n.length;t<r;t++)e=Pe(n.charCodeAt(t),e);return e}function Za(n,e){return e=Pe(104579,e),n.reduce((t,r)=>Cr(r,t),e)}function el(n,e){return e=Pe(181387,e),Object.keys(n).sort().reduce((t,r)=>(t=Us(r,t),Cr(n[r],t)),e)}function Nr(n,e,t=32){let r=t-e,i=~((1<<r)-1);return(n<<e|(i&n)>>>r)>>>0}function Ct(n,e=32){return n instanceof ArrayBuffer?ss(G.wrap(new Uint8Array(n))):(n>>>0).toString(16).padStart(e/4,"0")}var ks=class n{constructor(){this._h0=1732584193;this._h1=4023233417;this._h2=2562383102;this._h3=271733878;this._h4=3285377520;this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}static{this._bigBlock32=new DataView(new ArrayBuffer(320))}update(e){let t=e.length;if(t===0)return;let r=this._buff,i=this._buffLen,s=this._leftoverHighSurrogate,o,a;for(s!==0?(o=s,a=-1,s=0):(o=e.charCodeAt(0),a=0);;){let l=o;if($i(o))if(a+1<t){let u=e.charCodeAt(a+1);cr(u)?(a++,l=Vi(o,u)):l=65533}else{s=o;break}else cr(o)&&(l=65533);if(i=this._push(r,i,l),a++,a<t)o=e.charCodeAt(a);else break}this._buffLen=i,this._leftoverHighSurrogate=s}_push(e,t,r){return r<128?e[t++]=r:r<2048?(e[t++]=192|(r&1984)>>>6,e[t++]=128|(r&63)>>>0):r<65536?(e[t++]=224|(r&61440)>>>12,e[t++]=128|(r&4032)>>>6,e[t++]=128|(r&63)>>>0):(e[t++]=240|(r&1835008)>>>18,e[t++]=128|(r&258048)>>>12,e[t++]=128|(r&4032)>>>6,e[t++]=128|(r&63)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),Ct(this._h0)+Ct(this._h1)+Ct(this._h2)+Ct(this._h3)+Ct(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));let e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){let e=n._bigBlock32,t=this._buffDV;for(let c=0;c<64;c+=4)e.setUint32(c,t.getUint32(c,!1),!1);for(let c=64;c<320;c+=4)e.setUint32(c,Nr(e.getUint32(c-12,!1)^e.getUint32(c-32,!1)^e.getUint32(c-56,!1)^e.getUint32(c-64,!1),1),!1);let r=this._h0,i=this._h1,s=this._h2,o=this._h3,a=this._h4,l,u,d;for(let c=0;c<80;c++)c<20?(l=i&s|~i&o,u=1518500249):c<40?(l=i^s^o,u=1859775393):c<60?(l=i&s|i&o|s&o,u=2400959708):(l=i^s^o,u=3395469782),d=Nr(r,5)+l+a+u+e.getUint32(c*4,!1)&4294967295,a=o,o=s,s=Nr(i,30),i=r,r=d;this._h0=this._h0+r&4294967295,this._h1=this._h1+i&4294967295,this._h2=this._h2+s&4294967295,this._h3=this._h3+o&4294967295,this._h4=this._h4+a&4294967295}};var vt=class extends B{constructor(){super();this._onDidChangeFile=this._register(new D);this.onDidChangeFile=this._onDidChangeFile.event;this._onDidLogMessage=this._register(new D);this.onDidLogMessage=this._onDidLogMessage.event;this._onDidWatchFail=this._register(new D);this.onDidWatchFail=this._onDidWatchFail.event;this.correlatedWatchRequests=new Map;this.nonCorrelatedWatchRequests=new Map;this.suspendedWatchRequests=this._register(new ke);this.suspendedWatchRequestsWithPolling=new Set;this.updateWatchersDelayer=this._register(new sn(this.getUpdateWatchersDelay()));this.suspendedWatchRequestPollingInterval=5007;this.joinWatch=new de;this.verboseLogging=!1;this._register(this.onDidWatchFail(t=>this.suspendWatchRequest({id:this.computeId(t),correlationId:this.isCorrelated(t)?t.correlationId:void 0,path:t.path})))}isCorrelated(t){return _n(t)}computeId(t){return this.isCorrelated(t)?t.correlationId:Ls(t)}async watch(t){this.joinWatch.isSettled||this.joinWatch.complete(),this.joinWatch=new de;try{this.correlatedWatchRequests.clear(),this.nonCorrelatedWatchRequests.clear();for(let r of t)this.isCorrelated(r)?this.correlatedWatchRequests.set(r.correlationId,r):this.nonCorrelatedWatchRequests.set(this.computeId(r),r);for(let[r]of this.suspendedWatchRequests)!this.nonCorrelatedWatchRequests.has(r)&&!this.correlatedWatchRequests.has(r)&&(this.suspendedWatchRequests.deleteAndDispose(r),this.suspendedWatchRequestsWithPolling.delete(r));return await this.updateWatchers(!1)}finally{this.joinWatch.complete()}}updateWatchers(t){let r=[];for(let[i,s]of[...this.nonCorrelatedWatchRequests,...this.correlatedWatchRequests])this.suspendedWatchRequests.has(i)||r.push(s);return this.updateWatchersDelayer.trigger(()=>this.doWatch(r),t?this.getUpdateWatchersDelay():0).catch(i=>ce(i))}getUpdateWatchersDelay(){return 800}isSuspended(t){let r=this.computeId(t);return this.suspendedWatchRequestsWithPolling.has(r)?"polling":this.suspendedWatchRequests.has(r)}async suspendWatchRequest(t){if(this.suspendedWatchRequests.has(t.id))return;let r=new q;this.suspendedWatchRequests.set(t.id,r),await this.joinWatch.p,!r.isDisposed&&(this.monitorSuspendedWatchRequest(t,r),this.updateWatchers(!0))}resumeWatchRequest(t){this.suspendedWatchRequests.deleteAndDispose(t.id),this.suspendedWatchRequestsWithPolling.delete(t.id),this.updateWatchers(!1)}monitorSuspendedWatchRequest(t,r){this.doMonitorWithExistingWatcher(t,r)?(this.trace(`reusing an existing recursive watcher to monitor ${t.path}`),this.suspendedWatchRequestsWithPolling.delete(t.id)):(this.doMonitorWithNodeJS(t,r),this.suspendedWatchRequestsWithPolling.add(t.id))}doMonitorWithExistingWatcher(t,r){let i=this.recursiveWatcher?.subscribe(t.path,(s,o)=>{r.isDisposed||(s?this.monitorSuspendedWatchRequest(t,r):o?.type===1&&this.onMonitoredPathAdded(t))});return i?(r.add(i),!0):!1}doMonitorWithNodeJS(t,r){let i=!1,s=(o,a)=>{if(r.isDisposed)return;let l=this.isPathNotFound(o),u=this.isPathNotFound(a),d=i;i=l,!l&&(u||d)&&this.onMonitoredPathAdded(t)};this.trace(`starting fs.watchFile() on ${t.path} (correlationId: ${t.correlationId})`);try{tl(t.path,{persistent:!1,interval:this.suspendedWatchRequestPollingInterval},s)}catch(o){this.warn(`fs.watchFile() failed with error ${o} on path ${t.path} (correlationId: ${t.correlationId})`)}r.add(j(()=>{this.trace(`stopping fs.watchFile() on ${t.path} (correlationId: ${t.correlationId})`);try{nl(t.path,s)}catch(o){this.warn(`fs.unwatchFile() failed with error ${o} on path ${t.path} (correlationId: ${t.correlationId})`)}}))}onMonitoredPathAdded(t){this.trace(`detected ${t.path} exists again, resuming watcher (correlationId: ${t.correlationId})`);let r={resource:U.file(t.path),type:1,cId:t.correlationId};this._onDidChangeFile.fire([r]),this.traceEvent(r,t),this.resumeWatchRequest(t)}isPathNotFound(t){return t.ctimeMs===0&&t.ino===0}async stop(){this.suspendedWatchRequests.clearAndDisposeAll(),this.suspendedWatchRequestsWithPolling.clear()}traceEvent(t,r){if(this.verboseLogging){let i=` >> normalized ${t.type===1?"[ADDED]":t.type===2?"[DELETED]":"[CHANGED]"} ${t.resource.fsPath}`;this.traceWithCorrelation(i,r)}}traceWithCorrelation(t,r){this.verboseLogging&&this.trace(`${t}${typeof r.correlationId=="number"?` <${r.correlationId}> `:""}`)}requestToString(t){return`${t.path} (excludes: ${t.excludes.length>0?t.excludes:"<none>"}, includes: ${t.includes&&t.includes.length>0?JSON.stringify(t.includes):"<all>"}, filter: ${Rn(t.filter)}, correlationId: ${typeof t.correlationId=="number"?t.correlationId:"<none>"})`}async setVerboseLogging(t){this.verboseLogging=t}};var Pn=class extends B{constructor(t,r,i,s,o,a){super();this.ready=t;this.request=r;this.restarts=i;this.token=s;this.worker=o;this.stopFn=a;this._onDidStop=this._register(new D);this.onDidStop=this._onDidStop.event;this._onDidFail=this._register(new D);this.onDidFail=this._onDidFail.event;this.didFail=!1;this.didStop=!1;this.subscriptions=new Map;let l=!C;this.includes=this.request.includes?gt(this.request.path,this.request.includes,l):void 0,this.excludes=this.request.excludes?gt(this.request.path,this.request.excludes,l):void 0,this._register(j(()=>this.subscriptions.clear()))}get failed(){return this.didFail}get stopped(){return this.didStop}subscribe(t,r){t=U.file(t).fsPath;let i=this.subscriptions.get(t);return i||(i=new Set,this.subscriptions.set(t,i)),i.add(r),j(()=>{let s=this.subscriptions.get(t);s&&(s.delete(r),s.size===0&&this.subscriptions.delete(t))})}get subscriptionsCount(){return this.subscriptions.size}notifyFileChange(t,r){let i=this.subscriptions.get(t);if(i)for(let s of i)s(r)}notifyWatchFailed(){this.didFail=!0,this._onDidFail.fire()}include(t){return!this.includes||this.includes.length===0?!0:this.includes.some(r=>r(t))}exclude(t){return!!this.excludes?.some(r=>r(t))}async stop(t){this.didStop=!0;try{await this.stopFn()}finally{this._onDidStop.fire({joinRestart:t}),this.dispose()}}},Dn=class n extends vt{constructor(){super();this._onDidError=this._register(new D);this.onDidError=this._onDidError.event;this._watchers=new Map;this.throttledFileChangesEmitter=this._register(new Ne({maxWorkChunkSize:500,throttleDelay:200,maxBufferedWork:3e4},t=>this._onDidChangeFile.fire(t)));this.enospcErrorLogged=!1;this.registerListeners()}static{this.MAP_PARCEL_WATCHER_ACTION_TO_FILE_CHANGE=new Map([["create",1],["update",0],["delete",2]])}static{this.PREDEFINED_EXCLUDES={win32:[],darwin:[Y(il(),"Library","Containers")],linux:[]}}static{this.PARCEL_WATCHER_BACKEND=z?"windows":C?"inotify":"fs-events"}get watchers(){return this._watchers.values()}static{this.FILE_CHANGES_HANDLER_DELAY=75}registerListeners(){let t=i=>this.onUnexpectedError(i),r=i=>this.onUnexpectedError(i);process.on("uncaughtException",t),process.on("unhandledRejection",r),this._register(j(()=>{process.off("uncaughtException",t),process.off("unhandledRejection",r)}))}async doWatch(t){t=await this.removeDuplicateRequests(t);let r=[],i=new Set(Array.from(this.watchers));for(let s of t){let o=this._watchers.get(this.requestToWatcherKey(s));o&&pt(o.request.excludes,s.excludes)&&pt(o.request.includes,s.includes)&&o.request.pollingInterval===s.pollingInterval?i.delete(o):r.push(s)}r.length&&this.trace(`Request to start watching: ${r.map(s=>this.requestToString(s)).join(",")}`),i.size&&this.trace(`Request to stop watching: ${Array.from(i).map(s=>this.requestToString(s.request)).join(",")}`);for(let s of i)await this.stopWatching(s);for(let s of r)s.pollingInterval?await this.startPolling(s,s.pollingInterval):await this.startWatching(s)}requestToWatcherKey(t){return typeof t.correlationId=="number"?t.correlationId:this.pathToWatcherKey(t.path)}pathToWatcherKey(t){return C?t:t.toLowerCase()}async startPolling(t,r,i=0){let s=new ee,o=new de,a=tn(rl(),"vscode-watcher-snapshot"),l=new Pn(o.p,t,i,s.token,new tt(v=>this.handleParcelEvents(v,l),n.FILE_CHANGES_HANDLER_DELAY),async()=>{s.dispose(!0),l.worker.flush(),l.worker.dispose(),m.dispose(),await Mr.unlink(a)});this._watchers.set(this.requestToWatcherKey(t),l);let{realPath:u,realPathDiffers:d,realPathLength:c}=await this.normalizePath(t);this.trace(`Started watching: '${u}' with polling interval '${r}'`);let f=0,m=new et(async()=>{if(f++,s.token.isCancellationRequested)return;let v=Os;try{if(f>1){let y=await v.getEventsSince(u,a,{ignore:this.addPredefinedExcludes(t.excludes),backend:n.PARCEL_WATCHER_BACKEND});if(s.token.isCancellationRequested)return;this.onParcelEvents(y,l,d,c)}await v.writeSnapshot(u,a,{ignore:this.addPredefinedExcludes(t.excludes),backend:n.PARCEL_WATCHER_BACKEND})}catch(y){this.onUnexpectedError(y,t)}f===1&&o.complete(),!s.token.isCancellationRequested&&m.schedule()},r);m.schedule(0)}async startWatching(t,r=0){let i=new ee,s=new de,o=new Pn(s.p,t,r,i.token,new tt(d=>this.handleParcelEvents(d,o),n.FILE_CHANGES_HANDLER_DELAY),async()=>{i.dispose(!0),o.worker.flush(),o.worker.dispose(),await(await s.p)?.unsubscribe()});this._watchers.set(this.requestToWatcherKey(t),o);let{realPath:a,realPathDiffers:l,realPathLength:u}=await this.normalizePath(t);try{let c=await Os.subscribe(a,(f,m)=>{o.token.isCancellationRequested||(f&&this.onUnexpectedError(f,t),this.onParcelEvents(m,o,l,u))},{backend:n.PARCEL_WATCHER_BACKEND,ignore:this.addPredefinedExcludes(o.request.excludes)});this.trace(`Started watching: '${a}' with backend '${n.PARCEL_WATCHER_BACKEND}'`),s.complete(c)}catch(d){this.onUnexpectedError(d,t),s.complete(void 0),o.notifyWatchFailed(),this._onDidWatchFail.fire(t)}}addPredefinedExcludes(t){let r=[...t],i=n.PREDEFINED_EXCLUDES[process.platform];if(Array.isArray(i))for(let s of i)r.includes(s)||r.push(s);return r}onParcelEvents(t,r,i,s){if(t.length===0)return;this.normalizeEvents(t,r.request,i,s);let o=this.handleIncludes(r,t);for(let a of o)r.worker.work(a)}handleIncludes(t,r){let i=[];for(let{path:s,type:o}of r){let a=n.MAP_PARCEL_WATCHER_ACTION_TO_FILE_CHANGE.get(o);this.verboseLogging&&this.traceWithCorrelation(`${a===1?"[ADDED]":a===2?"[DELETED]":"[CHANGED]"} ${s}`,t.request),t.include(s)?i.push({type:a,resource:U.file(s),cId:t.request.correlationId}):this.verboseLogging&&this.traceWithCorrelation(` >> ignored (not included) ${s}`,t.request)}return i}handleParcelEvents(t,r){let i=xn(t),{events:s,rootDeleted:o}=this.filterEvents(i,r);this.emitEvents(s,r),o&&this.onWatchedPathDeleted(r)}emitEvents(t,r){if(t.length===0)return;this.throttledFileChangesEmitter.work(t)?this.throttledFileChangesEmitter.pending>0&&this.trace(`started throttling events due to large amount of file change events at once (pending: ${this.throttledFileChangesEmitter.pending}, most recent change: ${t[0].resource.fsPath}). Use 'files.watcherExclude' setting to exclude folders with lots of changing files (e.g. compilation output).`,r):this.warn(`started ignoring events due to too many file change events at once (incoming: ${t.length}, most recent change: ${t[0].resource.fsPath}). Use 'files.watcherExclude' setting to exclude folders with lots of changing files (e.g. compilation output).`)}async normalizePath(t){let r=t.path,i=!1,s=t.path.length;try{r=await he.realpath(t.path),t.path===r&&(r=await pn(t.path)??t.path),t.path!==r&&(s=r.length,i=!0,this.trace(`correcting a path to watch that seems to be a symbolic link or wrong casing (original: ${t.path}, real: ${r})`))}catch{}return{realPath:r,realPathDiffers:i,realPathLength:s}}normalizeEvents(t,r,i,s){for(let o of t)ge&&(o.path=rt(o.path)),z&&r.path.length<=3&&(o.path=Ue(o.path)),i&&(o.path=r.path+o.path.substr(s))}filterEvents(t,r){let i=[],s=!1,o=this.isCorrelated(r.request)?r.request.filter:void 0;for(let a of t){if(r.subscriptionsCount>0&&r.notifyFileChange(a.resource.fsPath,a),s=a.type===2&&Pt(a.resource.fsPath,r.request.path,!C),En(a,o)){this.verboseLogging&&this.traceWithCorrelation(` >> ignored (filtered) ${a.resource.fsPath}`,r.request);continue}this.traceEvent(a,r.request),i.push(a)}return{events:i,rootDeleted:s}}onWatchedPathDeleted(t){this.warn("Watcher shutdown because watched path got deleted",t),t.notifyWatchFailed(),this._onDidWatchFail.fire(t.request)}onUnexpectedError(t,r){let i=wn(t);i.indexOf("No space left on device")!==-1?this.enospcErrorLogged||(this.error("Inotify limit reached (ENOSPC)",r),this.enospcErrorLogged=!0):i.indexOf("File system must be re-scanned")!==-1?this.error(i,r):(this.error(`Unexpected error: ${i} (EUNKNOWN)`,r),this._onDidError.fire({request:r,error:i}))}async stop(){await super.stop();for(let t of this.watchers)await this.stopWatching(t)}restartWatching(t,r=800){let i=new et(async()=>{if(t.token.isCancellationRequested)return;let s=new de;try{await this.stopWatching(t,s.p),t.request.pollingInterval?await this.startPolling(t.request,t.request.pollingInterval,t.restarts+1):await this.startWatching(t.request,t.restarts+1)}finally{s.complete()}},r);i.schedule(),t.token.onCancellationRequested(()=>i.dispose())}async stopWatching(t,r){this.trace("stopping file watcher",t),this._watchers.delete(this.requestToWatcherKey(t.request));try{await t.stop(r)}catch(i){this.error(`Unexpected error stopping watcher: ${wn(i)}`,t.request)}}async removeDuplicateRequests(t,r=!0){t.sort((o,a)=>o.path.length-a.path.length);let i=new Map;for(let o of t){if(o.excludes.includes(Me))continue;let a=i.get(o.correlationId);a||(a=new Map,i.set(o.correlationId,a));let l=this.pathToWatcherKey(o.path);a.has(l)&&this.trace(`ignoring a request for watching who's path is already watched: ${this.requestToString(o)}`),a.set(l,o)}let s=[];for(let o of i.values()){let a=qe.forPaths(!C);for(let l of o.values()){if(a.findSubstr(l.path))if(a.has(l.path))this.trace(`ignoring a request for watching who's path is already watched: ${this.requestToString(l)}`);else try{if(!(await Mr.lstat(l.path)).isSymbolicLink()){this.trace(`ignoring a request for watching who's parent is already watched: ${this.requestToString(l)}`);continue}}catch(u){this.trace(`ignoring a request for watching who's lstat failed to resolve: ${this.requestToString(l)} (error: ${u})`),this._onDidWatchFail.fire(l);continue}if(r&&!await this.isPathValid(l.path)){this._onDidWatchFail.fire(l);continue}a.set(l.path,l)}s.push(...Array.from(a).map(([,l])=>l))}return s}async isPathValid(t){try{if(!(await Mr.stat(t)).isDirectory())return this.trace(`ignoring a path for watching that is a file and not a folder: ${t}`),!1}catch(r){return this.trace(`ignoring a path for watching who's stat info failed to resolve: ${t} (error: ${r})`),!1}return!0}subscribe(t,r){for(let i of this.watchers){if(i.failed||!fe(t,i.request.path,!C)||i.exclude(t)||!i.include(t))continue;let s=new q;return s.add(k.once(i.onDidStop)(async o=>{await o.joinRestart,!s.isDisposed&&r(!0)})),s.add(k.once(i.onDidFail)(()=>r(!0))),s.add(i.subscribe(t,o=>r(null,o))),s}}trace(t,r){this.verboseLogging&&this._onDidLogMessage.fire({type:"trace",message:this.toMessage(t,r?.request)})}warn(t,r){this._onDidLogMessage.fire({type:"warn",message:this.toMessage(t,r?.request)})}error(t,r){this._onDidLogMessage.fire({type:"error",message:this.toMessage(t,r)})}toMessage(t,r){return r?`[File Watcher ('parcel')] ${t} (path: ${r.path})`:`[File Watcher ('parcel')] ${t}`}get recursiveWatcher(){return this}};import{watch as sl,promises as ol}from"fs";var Sn=class n extends B{constructor(t,r,i,s,o,a){super();this.request=t;this.recursiveWatcher=r;this.onDidFilesChange=i;this.onDidWatchFail=s;this.onLogMessage=o;this.verboseLogging=a;this.throttledFileChangesEmitter=this._register(new Ne({maxWorkChunkSize:100,throttleDelay:200,maxBufferedWork:1e4},t=>this.onDidFilesChange(t)));this.fileChangesAggregator=this._register(new tt(t=>this.handleFileChanges(t),n.FILE_CHANGES_HANDLER_DELAY));this.cts=new ee;this.realPath=new ae(async()=>{let t=this.request.path;try{t=await he.realpath(this.request.path),this.request.path!==t&&this.trace(`correcting a path to watch that seems to be a symbolic link (original: ${this.request.path}, real: ${t})`)}catch{}return t});this._isReusingRecursiveWatcher=!1;this.didFail=!1;let l=!C;this.excludes=gt(this.request.path,this.request.excludes,l),this.includes=this.request.includes?gt(this.request.path,this.request.includes,l):void 0,this.filter=_n(this.request)?this.request.filter:void 0,this.ready=this.watch()}static{this.FILE_DELETE_HANDLER_DELAY=100}static{this.FILE_CHANGES_HANDLER_DELAY=75}get isReusingRecursiveWatcher(){return this._isReusingRecursiveWatcher}get failed(){return this.didFail}async watch(){try{let t=await ol.stat(this.request.path);if(this.cts.token.isCancellationRequested)return;this._register(await this.doWatch(t.isDirectory()))}catch(t){t.code!=="ENOENT"?this.error(t):this.trace(`ignoring a path for watching who's stat info failed to resolve: ${this.request.path} (error: ${t})`),this.notifyWatchFailed()}}notifyWatchFailed(){this.didFail=!0,this.onDidWatchFail?.()}async doWatch(t){let r=new q;return this.doWatchWithExistingWatcher(t,r)?(this.trace(`reusing an existing recursive watcher for ${this.request.path}`),this._isReusingRecursiveWatcher=!0):(this._isReusingRecursiveWatcher=!1,await this.doWatchWithNodeJS(t,r)),r}doWatchWithExistingWatcher(t,r){if(t)return!1;let i=U.file(this.request.path),s=this.recursiveWatcher?.subscribe(this.request.path,async(o,a)=>{r.isDisposed||(o?await mi(this.doWatch(t),r):a&&(typeof a.cId=="number"||typeof this.request.correlationId=="number")&&this.onFileChange({resource:i,type:a.type,cId:this.request.correlationId},!0))});return s?(r.add(s),!0):!1}async doWatchWithNodeJS(t,r){let i=await this.realPath.value;if(this.cts.token.isCancellationRequested)return;if(ge&&fe(i,"/Volumes/",!0)){this.error(`Refusing to watch ${i} for changes using fs.watch() for possibly being a network share where watching is unreliable and unstable.`);return}let s=new ee(this.cts.token);r.add(j(()=>s.dispose(!0)));let o=new q;r.add(o);try{let a=U.file(this.request.path),l=Ye(i),u=sl(i);o.add(j(()=>{u.removeAllListeners(),u.close()})),this.trace(`Started watching: '${i}'`);let d=new Set;if(t)try{for(let f of await he.readdir(i))d.add(f)}catch(f){this.error(f)}if(s.token.isCancellationRequested)return;let c=new Map;o.add(j(()=>{for(let[,f]of c)f.dispose();c.clear()})),u.on("error",(f,m)=>{s.token.isCancellationRequested||(this.error(`Failed to watch ${i} for changes using fs.watch() (${f}, ${m})`),this.notifyWatchFailed())}),u.on("change",(f,m)=>{if(s.token.isCancellationRequested)return;this.verboseLogging&&this.traceWithCorrelation(`[raw] ["${f}"] ${m}`);let v="";if(m&&(v=m.toString(),ge&&(v=rt(v))),!(!v||f!=="change"&&f!=="rename"))if(t)if(f==="rename"){c.get(v)?.dispose();let y=setTimeout(async()=>{if(c.delete(v),Pt(v,l,!C)&&!await he.exists(i)){this.onWatchedPathDeleted(a);return}if(s.token.isCancellationRequested)return;let L=await this.existsChildStrictCase(Y(i,v));if(s.token.isCancellationRequested)return;let W;L?d.has(v)?W=0:(W=1,d.add(v)):(d.delete(v),W=2),this.onFileChange({resource:vr(a,v),type:W,cId:this.request.correlationId})},n.FILE_DELETE_HANDLER_DELAY);c.set(v,j(()=>clearTimeout(y)))}else{let y;d.has(v)?y=0:(y=1,d.add(v)),this.onFileChange({resource:vr(a,v),type:y,cId:this.request.correlationId})}else if(f==="rename"||!Pt(v,l,!C)){let y=setTimeout(async()=>{let L=await he.exists(i);s.token.isCancellationRequested||(L?(this.onFileChange({resource:a,type:0,cId:this.request.correlationId},!0),o.add(await this.doWatch(!1))):this.onWatchedPathDeleted(a))},n.FILE_DELETE_HANDLER_DELAY);o.clear(),o.add(j(()=>clearTimeout(y)))}else this.onFileChange({resource:a,type:0,cId:this.request.correlationId},!0)})}catch(a){if(s.token.isCancellationRequested)return;this.error(`Failed to watch ${i} for changes using fs.watch() (${a.toString()})`),this.notifyWatchFailed()}}onWatchedPathDeleted(t){this.warn("Watcher shutdown because watched path got deleted"),this.onFileChange({resource:t,type:2,cId:this.request.correlationId},!0),this.fileChangesAggregator.flush(),this.notifyWatchFailed()}onFileChange(t,r=!1){this.cts.token.isCancellationRequested||(this.verboseLogging&&this.traceWithCorrelation(`${t.type===1?"[ADDED]":t.type===2?"[DELETED]":"[CHANGED]"} ${t.resource.fsPath}`),!r&&this.excludes.some(i=>i(t.resource.fsPath))?this.verboseLogging&&this.traceWithCorrelation(` >> ignored (excluded) ${t.resource.fsPath}`):!r&&this.includes&&this.includes.length>0&&!this.includes.some(i=>i(t.resource.fsPath))?this.verboseLogging&&this.traceWithCorrelation(` >> ignored (not included) ${t.resource.fsPath}`):this.fileChangesAggregator.work(t))}handleFileChanges(t){let r=xn(t),i=[];for(let o of r){if(En(o,this.filter)){this.verboseLogging&&this.traceWithCorrelation(` >> ignored (filtered) ${o.resource.fsPath}`);continue}i.push(o)}if(i.length===0)return;if(this.verboseLogging)for(let o of i)this.traceWithCorrelation(` >> normalized ${o.type===1?"[ADDED]":o.type===2?"[DELETED]":"[CHANGED]"} ${o.resource.fsPath}`);this.throttledFileChangesEmitter.work(i)?this.throttledFileChangesEmitter.pending>0&&this.trace(`started throttling events due to large amount of file change events at once (pending: ${this.throttledFileChangesEmitter.pending}, most recent change: ${i[0].resource.fsPath}). Use 'files.watcherExclude' setting to exclude folders with lots of changing files (e.g. compilation output).`):this.warn(`started ignoring events due to too many file change events at once (incoming: ${i.length}, most recent change: ${i[0].resource.fsPath}). Use 'files.watcherExclude' setting to exclude folders with lots of changing files (e.g. compilation output).`)}async existsChildStrictCase(t){if(C)return he.exists(t);try{let r=Ye(t);return(await he.readdir(Je(t))).some(s=>s===r)}catch(r){return this.trace(r),!1}}setVerboseLogging(t){this.verboseLogging=t}error(t){this.cts.token.isCancellationRequested||this.onLogMessage?.({type:"error",message:`[File Watcher (node.js)] ${t}`})}warn(t){this.cts.token.isCancellationRequested||this.onLogMessage?.({type:"warn",message:`[File Watcher (node.js)] ${t}`})}trace(t){!this.cts.token.isCancellationRequested&&this.verboseLogging&&this.onLogMessage?.({type:"trace",message:`[File Watcher (node.js)] ${t}`})}traceWithCorrelation(t){!this.cts.token.isCancellationRequested&&this.verboseLogging&&this.trace(`${t}${typeof this.request.correlationId=="number"?` <${this.request.correlationId}> `:""}`)}dispose(){this.cts.dispose(!0),super.dispose()}};var An=class extends vt{constructor(t){super();this.recursiveWatcher=t;this.onDidError=k.None;this._watchers=new Map;this.worker=this._register(new Fe)}get watchers(){return this._watchers.values()}async doWatch(t){t=this.removeDuplicateRequests(t);let r=[],i=new Set(Array.from(this.watchers));for(let s of t){let o=this._watchers.get(this.requestToWatcherKey(s));o&&pt(o.request.excludes,s.excludes)&&pt(o.request.includes,s.includes)?i.delete(o):r.push(s)}r.length&&this.trace(`Request to start watching: ${r.map(s=>this.requestToString(s)).join(",")}`),i.size&&this.trace(`Request to stop watching: ${Array.from(i).map(s=>this.requestToString(s.request)).join(",")}`),this.worker.clear();for(let s of i)this.stopWatching(s);this.createWatchWorker().work(r)}createWatchWorker(){return this.worker.value=new Ne({maxWorkChunkSize:100,throttleDelay:100,maxBufferedWork:Number.MAX_VALUE},t=>{for(let r of t)this.startWatching(r)}),this.worker.value}requestToWatcherKey(t){return typeof t.correlationId=="number"?t.correlationId:this.pathToWatcherKey(t.path)}pathToWatcherKey(t){return C?t:t.toLowerCase()}startWatching(t){let r=new Sn(t,this.recursiveWatcher,s=>this._onDidChangeFile.fire(s),()=>this._onDidWatchFail.fire(t),s=>this._onDidLogMessage.fire(s),this.verboseLogging),i={request:t,instance:r};this._watchers.set(this.requestToWatcherKey(t),i)}async stop(){await super.stop();for(let t of this.watchers)this.stopWatching(t)}stopWatching(t){this.trace("stopping file watcher",t),this._watchers.delete(this.requestToWatcherKey(t.request)),t.instance.dispose()}removeDuplicateRequests(t){let r=new Map;for(let i of t){let s=r.get(i.correlationId);s||(s=new Map,r.set(i.correlationId,s));let o=this.pathToWatcherKey(i.path);s.has(o)&&this.trace(`ignoring a request for watching who's path is already watched: ${this.requestToString(i)}`),s.set(o,i)}return Array.from(r.values()).flatMap(i=>Array.from(i.values()))}async setVerboseLogging(t){super.setVerboseLogging(t);for(let r of this.watchers)r.instance.setVerboseLogging(t)}trace(t,r){this.verboseLogging&&this._onDidLogMessage.fire({type:"trace",message:this.toMessage(t,r)})}warn(t){this._onDidLogMessage.fire({type:"warn",message:this.toMessage(t)})}toMessage(t,r){return r?`[File Watcher (node.js)] ${t} (${this.requestToString(r.request)})`:`[File Watcher (node.js)] ${t}`}};function Ms(n,e,t,r){let i=[],s=kn(n.filter(M=>mt(M))),o=s.filter(M=>t.isSuspended(M)===!1),a=s.filter(M=>t.isSuspended(M)==="polling"),l=s.filter(M=>t.isSuspended(M)===!0),u=Ws(s,t),d=qs(t),c=kn(n.filter(M=>!mt(M))),f=c.filter(M=>r.isSuspended(M)===!1),m=c.filter(M=>r.isSuspended(M)==="polling"),v=c.filter(M=>r.isSuspended(M)===!0),y=Ws(c,r),L=Bs(r);i.push("[Summary]"),i.push(`- Recursive Requests:     total: ${s.length}, suspended: ${u.suspended}, polling: ${u.polling}, failed: ${e}`),i.push(`- Non-Recursive Requests: total: ${c.length}, suspended: ${y.suspended}, polling: ${y.polling}`),i.push(`- Recursive Watchers:     total: ${Array.from(t.watchers).length}, active: ${d.active}, failed: ${d.failed}, stopped: ${d.stopped}`),i.push(`- Non-Recursive Watchers: total: ${Array.from(r.watchers).length}, active: ${L.active}, failed: ${L.failed}, reusing: ${L.reusing}`),i.push(`- I/O Handles Impact:     total: ${u.polling+y.polling+d.active+L.active}`),i.push(`
[Recursive Requests (${s.length}, suspended: ${u.suspended}, polling: ${u.polling})]:`);let W=[];for(let M of[o,a,l].flat())Cs(W,M,t);i.push(...Fn(W));let te=[];al(te,t),i.push(...Fn(te)),i.push(`
[Non-Recursive Requests (${c.length}, suspended: ${y.suspended}, polling: ${y.polling})]:`);let J=[];for(let M of[f,m,v].flat())Cs(J,M,r);i.push(...Fn(J));let be=[];return ll(be,r),i.push(...Fn(be)),`

[File Watcher] request stats:

${i.join(`
`)}

`}function Fn(n){let e=0;for(let t of n)e=Math.max(e,t.split("	")[0].length);for(let t=0;t<n.length;t++){let i=n[t].split("	");if(i.length===2){let s=" ".repeat(e-i[0].length);n[t]=`${i[0]}${s}	${i[1]}`}}return n}function Ws(n,e){let t=0,r=0;for(let i of n){let s=e.isSuspended(i);s!==!1&&(r++,s==="polling"&&t++)}return{suspended:r,polling:t}}function qs(n){let e=0,t=0,r=0;for(let i of n.watchers)!i.failed&&!i.stopped&&e++,i.failed&&t++,i.stopped&&r++;return{active:e,failed:t,stopped:r}}function Bs(n){let e=0,t=0,r=0;for(let i of n.watchers)!i.instance.failed&&!i.instance.isReusingRecursiveWatcher&&e++,i.instance.failed&&t++,i.instance.isReusingRecursiveWatcher&&r++;return{active:e,failed:t,reusing:r}}function kn(n){return n.sort((e,t)=>{let r=Ns(e)?e.path:e.request.path,i=Ns(t)?t.path:t.request.path,s=Math.min(r.length,i.length);for(let o=0;o<s;o++)if(r[o]!==i[o])return r[o]<i[o]?-1:1;return r.length-i.length}),n}function Ns(n){return typeof n?.path=="string"}function Cs(n,e,t){let r=[],i=t.isSuspended(e);i!==!1&&(i==="polling"?r.push("[SUSPENDED <polling>]"):r.push("[SUSPENDED <non-polling>]")),n.push(` ${e.path}	${r.length>0?r.join(" ")+" ":""}(${qr(e)})`)}function qr(n){return`excludes: ${n.excludes.length>0?n.excludes:"<none>"}, includes: ${n.includes&&n.includes.length>0?JSON.stringify(n.includes):"<all>"}, filter: ${Rn(n.filter)}, correlationId: ${typeof n.correlationId=="number"?n.correlationId:"<none>"}`}function al(n,e){let t=kn(Array.from(e.watchers)),{active:r,failed:i,stopped:s}=qs(e);n.push(`
[Recursive Watchers (${t.length}, active: ${r}, failed: ${i}, stopped: ${s})]:`);for(let o of t){let a=[];o.failed&&a.push("[FAILED]"),o.stopped&&a.push("[STOPPED]"),o.subscriptionsCount>0&&a.push(`[SUBSCRIBED:${o.subscriptionsCount}]`),o.restarts>0&&a.push(`[RESTARTED:${o.restarts}]`),n.push(` ${o.request.path}	${a.length>0?a.join(" ")+" ":""}(${qr(o.request)})`)}}function ll(n,e){let t=kn(Array.from(e.watchers)),r=t.filter(u=>!u.instance.failed&&!u.instance.isReusingRecursiveWatcher),i=t.filter(u=>u.instance.failed),s=t.filter(u=>u.instance.isReusingRecursiveWatcher),{active:o,failed:a,reusing:l}=Bs(e);n.push(`
[Non-Recursive Watchers (${t.length}, active: ${o}, failed: ${a}, reusing: ${l})]:`);for(let u of[r,i,s].flat()){let d=[];u.instance.failed&&d.push("[FAILED]"),u.instance.isReusingRecursiveWatcher&&d.push("[REUSING]"),n.push(` ${u.request.path}	${d.length>0?d.join(" ")+" ":""}(${qr(u.request)})`)}}var Ln=class extends B{constructor(){super();this.recursiveWatcher=this._register(new Dn);this.nonRecursiveWatcher=this._register(new An(this.recursiveWatcher));this.onDidChangeFile=k.any(this.recursiveWatcher.onDidChangeFile,this.nonRecursiveWatcher.onDidChangeFile);this.onDidError=k.any(this.recursiveWatcher.onDidError,this.nonRecursiveWatcher.onDidError);this._onDidLogMessage=this._register(new D);this.onDidLogMessage=k.any(this._onDidLogMessage.event,this.recursiveWatcher.onDidLogMessage,this.nonRecursiveWatcher.onDidLogMessage);this.requests=[];this.failedRecursiveRequests=0;this._register(this.recursiveWatcher.onDidError(t=>{t.request&&this.failedRecursiveRequests++}))}async watch(t){this.requests=t,this.failedRecursiveRequests=0;let r;try{await this.recursiveWatcher.watch(t.filter(i=>mt(i)))}catch(i){r=i}try{await this.nonRecursiveWatcher.watch(t.filter(i=>!mt(i)))}catch(i){r||(r=i)}if(r)throw r}async setVerboseLogging(t){t&&this.requests.length>0&&this._onDidLogMessage.fire({type:"trace",message:Ms(this.requests,this.failedRecursiveRequests,this.recursiveWatcher,this.nonRecursiveWatcher)}),await un.settled([this.recursiveWatcher.setVerboseLogging(t),this.nonRecursiveWatcher.setVerboseLogging(t)])}async stop(){await un.settled([this.recursiveWatcher.stop(),this.nonRecursiveWatcher.stop()])}};var Br;vn(process)?Br=new bn:Br=new gn("watcher");var ul=new Ln;Br.registerChannel("watcher",Rr.fromService(ul,new q));
//# sourceMappingURL=https://cdn.windsurf.com/sourcemaps/0d4bf12ed4a7597cb8ae9016fe8474468aad98a2/core/vs/platform/files/node/watcher/watcherMain.js.map
