/*!--------------------------------------------------------
 * 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, Iterator */

var extendStatics = function(d, b) {
    extendStatics = Object.setPrototypeOf ||
        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
        function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
    return extendStatics(d, b);
};

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 = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
    return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
    function verb(n) { return function (v) { return step([n, v]); }; }
    function step(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (g && (g = 0, op[0] && (_ = 0)), _) try {
            if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
            if (y = 0, t) op = [op[0] & 2, t.value];
            switch (op[0]) {
                case 0: case 1: t = op; break;
                case 4: _.label++; return { value: op[1], done: false };
                case 5: _.label++; y = op[1]; op = [0]; continue;
                case 7: op = _.ops.pop(); _.trys.pop(); continue;
                default:
                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                    if (t[2]) _.ops.pop();
                    _.trys.pop(); continue;
            }
            op = body.call(thisArg, _);
        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
    }
}

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 = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
    function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
    function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
    function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
    function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
    function fulfill(value) { resume("next", value); }
    function reject(value) { resume("throw", value); }
    function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
}

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

var ownKeys = function(o) {
    ownKeys = Object.getOwnPropertyNames || function (o) {
        var ar = [];
        for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
        return ar;
    };
    return ownKeys(o);
};

export function __importStar(mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
    __setModuleDefault(result, mod);
    return result;
}

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;
    }
    var r, s = 0;
    function next() {
        while (r = env.stack.pop()) {
            try {
                if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
                if (r.dispose) {
                    var result = r.dispose.call(r.value);
                    if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
                }
                else s |= 1;
            }
            catch (e) {
                fail(e);
            }
        }
        if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
        if (env.hasError) throw env.error;
    }
    return next();
}

export function __rewriteRelativeImportExtension(path, preserveJsx) {
    if (typeof path === "string" && /^\.\.?\//.test(path)) {
        return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
            return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
        });
    }
    return path;
}

export default {
    __extends: __extends,
    __assign: __assign,
    __rest: __rest,
    __decorate: __decorate,
    __param: __param,
    __esDecorate: __esDecorate,
    __runInitializers: __runInitializers,
    __propKey: __propKey,
    __setFunctionName: __setFunctionName,
    __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,
    __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,
};

var Hs=Object.defineProperty;var Qs=Object.getOwnPropertyDescriptor;var zr=(n,e,t,r)=>{for(var i=r>1?void 0:r?Qs(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&&Hs(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 Gr=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 Nn=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?Se.isErrorNoTelemetry(e)?new Se(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)}},Qr=new Nn;function me(n){Mn(n)||Qr.onUnexpectedError(n)}function Jr(n){Mn(n)||Qr.onUnexpectedExternalError(n)}var Cn="Canceled";function Mn(n){return n instanceof se?!0:n instanceof Error&&n.name===Cn&&n.message===Cn}var se=class extends Error{constructor(){super(Cn),this.name=this.message}},Hr=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 Se=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"}},Ae=class n extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,n.prototype)}};function Zr(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 ei(n){return n.filter(e=>!!e)}function qn(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 ti(n){return n[Math.floor(Math.random()*n.length)]}var ni;(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})(ni||={});function ri(n,e){return(t,r)=>e(n(t),n(r))}var ii=(n,e)=>n-e;var Xr=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||ni.isGreaterThan(e(i,t)))&&(r=!1,t=i),!0)),t}};function li(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 oi,ai,si=class{constructor(e,t){this.toKey=t;this._map=new Map;this[oi]="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))}[(ai=Symbol.iterator,oi=Symbol.toStringTag,ai)](){return this.values()}};var Bn=class{constructor(e,t){this.uri=e;this.value=t}};function Xs(n){return Array.isArray(n)}var ci,Tt=class n{constructor(e,t){this[ci]="ResourceMap";if(e instanceof n)this.map=new Map(e.map),this.toKey=t??n.defaultToKey;else if(Xs(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 Bn(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]}*[(ci=Symbol.toStringTag,Symbol.iterator)](){for(let[,e]of this.map)yield[e.uri,e.value]}},di,ui=class{constructor(e,t){this[di]="ResourceSet";!e||typeof e=="function"?this._map=new Tt(e):(this._map=new Tt(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()}[(di=Symbol.toStringTag,Symbol.iterator)](){return this.keys()}};var fi,$n=class{constructor(){this[fi]="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},[Symbol.dispose](){},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},[Symbol.dispose](){},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},[Symbol.dispose](){},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}[(fi=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)}},Vn=class extends $n{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))}},ke=class extends Vn{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}};var Bt=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 yt(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 $t(n,e="unexpected state"){if(!n)throw typeof e=="string"?new Ae(`Assertion Failed: ${e}`):e}function Kn(n){return typeof n=="string"}function jn(n){return typeof n=="number"&&!isNaN(n)}function pi(n){return!!n&&typeof n[Symbol.iterator]=="function"}function Zs(n){return typeof n>"u"}function zn(n){return Zs(n)||n===null}function hi(n,e){if(!n)throw new Error(e?`Unexpected type, expected '${e}'`:"Unexpected type")}function Gn(n){return typeof n=="function"}var Hn;(Wn=>{function n(I){return!!I&&typeof I=="object"&&typeof I[Symbol.iterator]=="function"}Wn.is=n;let e=Object.freeze([]);function t(){return e}Wn.empty=t;function*r(I){yield I}Wn.single=r;function i(I){return n(I)?I:r(I)}Wn.wrap=i;function s(I){return I??e}Wn.from=s;function*o(I){for(let R=I.length-1;R>=0;R--)yield I[R]}Wn.reverse=o;function a(I){return!I||I[Symbol.iterator]().next().done===!0}Wn.isEmpty=a;function l(I){return I[Symbol.iterator]().next().value}Wn.first=l;function u(I,R){let F=0;for(let ee of I)if(R(ee,F++))return!0;return!1}Wn.some=u;function d(I,R){let F=0;for(let ee of I)if(!R(ee,F++))return!1;return!0}Wn.every=d;function c(I,R){for(let F of I)if(R(F))return F}Wn.find=c;function*f(I,R){for(let F of I)R(F)&&(yield F)}Wn.filter=f;function*h(I,R){let F=0;for(let ee of I)yield R(ee,F++)}Wn.map=h;function*m(I,R){let F=0;for(let ee of I)yield*R(ee,F++)}Wn.flatMap=m;function*y(...I){for(let R of I)pi(R)?yield*R:yield R}Wn.concat=y;function k(I,R,F){let ee=F;for(let $e of I)ee=R(ee,$e);return ee}Wn.reduce=k;function O(I){let R=0;for(let F of I)R++;return R}Wn.length=O;function*ie(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]}Wn.slice=ie;function Y(I,R=Number.POSITIVE_INFINITY){let F=[];if(R===0)return[F,I];let ee=I[Symbol.iterator]();for(let $e=0;$e<R;$e++){let qt=ee.next();if(qt.done)return[F,Wn.empty()];F.push(qt.value)}return[F,{[Symbol.iterator](){return ee}}]}Wn.consume=Y;async function ye(I){let R=[];for await(let F of I)R.push(F);return R}Wn.asyncToArray=ye;async function M(I){let R=[];for await(let F of I)R=R.concat(F);return R}Wn.asyncToArrayFlat=M})(Hn||={});var eo=!1,it=null;var gi=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(h=>typeof h=="string"?h===c[0]:c[0].match(h));)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 Bt;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(ri(l=>l.idx,ii));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 m=s.get(u.slice(0,c).join(`
`)),y=li([...m].map(k=>i(k)[c]),k=>k);delete y[u[c]];for(let[k,O]of Object.entries(y))O&&d.unshift(`    - stacktraces of ${O.length} other leaks continue with ${k}`);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 to(n){it=n}if(eo){let n="__is_disposable_tracked__";to(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 It(n){return it?.trackDisposable(n),n}function _t(n){it?.markAsDisposed(n)}function je(n,e){it?.setParent(n,e)}function no(n,e){if(it)for(let t of n)it.setParent(t,e)}function vi(n){return typeof n=="object"&&n!==null&&typeof n.dispose=="function"&&n.dispose.length===0}function ze(n){if(Hn.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 bi(...n){let e=$(()=>ze(n));return no(n,e),e}var Qn=class{constructor(e){this._isDisposed=!1,this._fn=e,It(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,_t(this),this._fn()}}};function $(n){return new Qn(n)}var q=class n{constructor(){this._toDispose=new Set;this._isDisposed=!1;It(this)}static{this.DISABLE_DISPOSED_WARNING=!1}dispose(){this._isDisposed||(_t(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&&me(new Ae("Object disposed"))}},B=class{constructor(){this._store=new q;It(this),je(this._store,this)}static{this.None=Object.freeze({dispose(){}})}dispose(){_t(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;It(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,_t(this),this._value?.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e&&je(e,null),e}};var Le=class{constructor(e=new Map){this._isDisposed=!1;this._store=e,It(this)}dispose(){_t(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 Jn(n,e){return n.then(t=>(e.isDisposed?t.dispose():e.add(t),t))}var Ti=class n{static{this.Undefined=new n(void 0)}constructor(e){this.element=e,this.next=n.Undefined,this.prev=n.Undefined}};function ro(){return globalThis._VSCODE_NLS_MESSAGES}function Yn(){return globalThis._VSCODE_NLS_LANGUAGE}var io=Yn()==="pseudo"||typeof document<"u"&&document.location&&typeof document.location.hash=="string"&&document.location.hash.indexOf("pseudo=true")>=0;function yi(n,e){let t;return e.length===0?t=n:t=n.replace(/\{(\d+)\}/g,(r,i)=>{let s=i[0],o=e[s],a=r;return typeof o=="string"?a=o:(typeof o=="number"||typeof o=="boolean"||o===void 0||o===null)&&(a=String(o)),a}),io&&(t="\uFF3B"+t.replace(/[aouei]/g,"$&$&")+"\uFF3D"),t}function ce(n,e,...t){return yi(typeof n=="number"?so(n,e):e,t)}function so(n,e){let t=ro()?.[n];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${n} !!!`)}return t}var st="en",jt=!1,zt=!1,xt=!1,oo=!1,xi=!1,Zn=!1,ao=!1,lo=!1,uo=!1,co=!1,Vt,Kt=st,_i=st,fo,_e,xe=globalThis,oe;typeof xe.vscode<"u"&&typeof xe.vscode.process<"u"?oe=xe.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(oe=process);var Ei=typeof oe?.versions?.electron=="string",po=Ei&&oe?.type==="renderer";if(typeof oe=="object"){jt=oe.platform==="win32",zt=oe.platform==="darwin",xt=oe.platform==="linux",oo=xt&&!!oe.env.SNAP&&!!oe.env.SNAP_REVISION,ao=Ei,uo=!!oe.env.CI||!!oe.env.BUILD_ARTIFACTSTAGINGDIRECTORY||!!oe.env.GITHUB_WORKSPACE,Vt=st,Kt=st;let n=oe.env.VSCODE_NLS_CONFIG;if(n)try{let e=JSON.parse(n);Vt=e.userLocale,_i=e.osLocale,Kt=e.resolvedLanguage||st,fo=e.languagePack?.translationsConfigFile}catch{}xi=!0}else typeof navigator=="object"&&!po?(_e=navigator.userAgent,jt=_e.indexOf("Windows")>=0,zt=_e.indexOf("Macintosh")>=0,lo=(_e.indexOf("Macintosh")>=0||_e.indexOf("iPad")>=0||_e.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,xt=_e.indexOf("Linux")>=0,co=_e?.indexOf("Mobi")>=0,Zn=!0,Kt=Yn()||st,Vt=navigator.language.toLowerCase(),_i=Vt):console.error("Unable to resolve platform.");var Xn=0;zt?Xn=1:jt?Xn=3:xt&&(Xn=2);var j=jt,ve=zt,C=xt;var Ri=xi;var er=Zn,ho=Zn&&typeof xe.importScripts=="function",wi=ho?xe.origin:void 0;var ge=_e,Ue=Kt,mo;(r=>{function n(){return Ue}r.value=n;function e(){return Ue.length===2?Ue==="en":Ue.length>=3?Ue[0]==="e"&&Ue[1]==="n"&&Ue[2]==="-":!1}r.isDefaultVariant=e;function t(){return Ue==="en"}r.isDefault=t})(mo||={});var go=typeof xe.postMessage=="function"&&!xe.importScripts,Pi=(()=>{if(go){let n=[];xe.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}),xe.postMessage({vscodeScheduleAsyncWork:r},"*")}}return n=>setTimeout(n)})();var vo=!!(ge&&ge.indexOf("Chrome")>=0),Nl=!!(ge&&ge.indexOf("Firefox")>=0),Cl=!!(!vo&&ge&&ge.indexOf("Safari")>=0),Ml=!!(ge&&ge.indexOf("Edg/")>=0),ql=!!(ge&&ge.indexOf("Android")>=0);var Ge,tr=globalThis.vscode;if(typeof tr<"u"&&typeof tr.process<"u"){let n=tr.process;Ge={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"?Ge={get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd(){return process.env.VSCODE_CWD||process.cwd()}}:Ge={get platform(){return j?"win32":ve?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};var ot=Ge.cwd,Et=Ge.env,Si=Ge.platform,Vl=Ge.arch;var bo=globalThis.performance.now.bind(globalThis.performance),Gt=class n{static create(e){return new n(e)}constructor(e){this._now=e===!1?Date.now:bo,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 ki=!1,To=!1,yo=100,Fi=6e4;function Li(){return!!Et.VSCODE_DEV}var L;(Ve=>{Ve.None=()=>B.None;function e(b){if(To){let{onDidAddListener:p}=b,g=lt.create(),v=0;b.onDidAddListener=()=>{++v===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 h(b,()=>{},0,void 0,p??!0,void 0,g)}Ve.defer=t;function r(b){return(p,g=null,v)=>{let T=!1,_;return _=b(w=>{if(!T)return _?_.dispose():T=!0,p.call(g,w)},null,v),T&&_.dispose(),_}}Ve.once=r;function i(b,p){return Ve.once(Ve.filter(b,p))}Ve.onceIf=i;function s(b,p,g){return c((v,T=null,_)=>b(w=>v.call(T,p(w)),null,_),g)}Ve.map=s;function o(b,p,g){return c((v,T=null,_)=>b(w=>{p(w),v.call(T,w)},null,_),g)}Ve.forEach=o;function a(b,p,g){return c((v,T=null,_)=>b(w=>p(w)&&v.call(T,w),null,_),g)}Ve.filter=a;function l(b){return b}Ve.signal=l;function u(...b){return(p,g=null,v)=>{let T=bi(...b.map(_=>_(w=>p.call(g,w))));return f(T,v)}}Ve.any=u;function d(b,p,g,v){let T=g;return s(b,_=>(T=p(T,_),T),v)}Ve.reduce=d;function c(b,p){let g,v={onWillAddFirstListener(){g=b(T.fire,T)},onDidRemoveLastListener(){g?.dispose()}};p||e(v);let T=new S(v);return p?.add(T),T.event}function f(b,p){return p instanceof Array?p.push(b):p&&p.add(b),b}function h(b,p,g=100,v=!1,T=!1,_,w){let H,W,X,Q=0,te,Ie={leakWarningThreshold:_,onWillAddFirstListener(){H=b(Kr=>{Q++,W=p(W,Kr),v&&!X&&(Ke.fire(W),W=void 0),te=()=>{let jr=W;W=void 0,X=void 0,(!v||Q>1)&&Ke.fire(jr),Q=0},typeof g=="number"?(X&&clearTimeout(X),X=setTimeout(te,g)):X===void 0&&(X=null,queueMicrotask(te))})},onWillRemoveListener(){T&&Q>0&&te?.()},onDidRemoveLastListener(){te=void 0,H.dispose()}};w||e(Ie);let Ke=new S(Ie);return w?.add(Ke),Ke.event}Ve.debounce=h;function m(b,p=0,g,v){return Ve.debounce(b,(T,_)=>T?(T.push(_),T):[_],p,void 0,g??!0,void 0,v)}Ve.accumulate=m;function y(b,p,g=100,v=!0,T=!0,_,w){let H,W,X,Q=0,te={leakWarningThreshold:_,onWillAddFirstListener(){H=b(Ke=>{Q++,W=p(W,Ke),X===void 0&&(v&&(Ie.fire(W),W=void 0,Q=0),typeof g=="number"?X=setTimeout(()=>{T&&Q>0&&Ie.fire(W),W=void 0,X=void 0,Q=0},g):(X=0,queueMicrotask(()=>{T&&Q>0&&Ie.fire(W),W=void 0,X=void 0,Q=0})))})},onDidRemoveLastListener(){H.dispose()}};w||e(te);let Ie=new S(te);return w?.add(Ie),Ie.event}Ve.throttle=y;function k(b,p=(v,T)=>v===T,g){let v=!0,T;return a(b,_=>{let w=v||!p(_,T);return v=!1,T=_,w},g)}Ve.latch=k;function O(b,p,g){return[Ve.filter(b,p,g),Ve.filter(b,v=>!p(v),g)]}Ve.split=O;function ie(b,p,g=!1,v=[],T){let _=v.slice(),w;Li()&&(w={stack:lt.create(),timerId:setTimeout(()=>{_&&_.length>0&&w&&!w.warned&&(w.warned=!0,console.warn(`[Event.buffer][${p}] potential LEAK detected: ${_.length} events buffered for ${Fi/1e3}s without being consumed. Buffered here:`),w.stack.print())},Fi),warned:!1},T&&T.add($(()=>clearTimeout(w.timerId))));let H=()=>{w&&clearTimeout(w.timerId)},W=b(te=>{_?(_.push(te),Li()&&w&&!w.warned&&_.length>=yo&&(w.warned=!0,console.warn(`[Event.buffer][${p}] potential LEAK detected: ${_.length} events buffered without being consumed. Buffered here:`),w.stack.print())):Q.fire(te)});T&&T.add(W);let X=()=>{_?.forEach(te=>Q.fire(te)),_=null,H()},Q=new S({onWillAddFirstListener(){W||(W=b(te=>Q.fire(te)),T&&T.add(W))},onDidAddFirstListener(){_&&(g?setTimeout(X):X())},onDidRemoveLastListener(){W&&W.dispose(),W=null,H()}});return T&&T.add(Q),Q.event}Ve.buffer=ie;function Y(b,p){return(v,T,_)=>{let w=p(new M);return b(function(H){let W=w.evaluate(H);W!==ye&&v.call(T,W)},void 0,_)}}Ve.chain=Y;let ye=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:ye),this}reduce(p,g){let v=g;return this.steps.push(T=>(v=p(v,T),v)),this}latch(p=(g,v)=>g===v){let g=!0,v;return this.steps.push(T=>{let _=g||!p(T,v);return g=!1,v=T,_?T:ye}),this}evaluate(p){for(let g of this.steps)if(p=g(p),p===ye)break;return p}}function Wn(b,p,g=v=>v){let v=(...H)=>w.fire(g(...H)),T=()=>b.on(p,v),_=()=>b.removeListener(p,v),w=new S({onWillAddFirstListener:T,onDidRemoveLastListener:_});return w.event}Ve.fromNodeEventEmitter=Wn;function I(b,p,g=v=>v){let v=(...H)=>w.fire(g(...H)),T=()=>b.addEventListener(p,v),_=()=>b.removeEventListener(p,v),w=new S({onWillAddFirstListener:T,onDidRemoveLastListener:_});return w.event}Ve.fromDOMEventEmitter=I;function R(b,p){let g,v,T=new Promise(_=>{v=r(b)(_),or(v,p),g=()=>{Oi(v,p)}});return T.cancel=g,p&&T.finally(()=>Oi(v,p)),T}Ve.toPromise=R;function F(b,p){return b(g=>p.fire(g))}Ve.forward=F;function ee(b,p,g){return p(g),b(v=>p(v))}Ve.runAndSubscribe=ee;class $e{constructor(p,g){this._observable=p;this._counter=0;this._hasChanged=!1;let v={onWillAddFirstListener:()=>{p.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{p.removeObserver(this)}};g||e(v),this.emitter=new S(v),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 qt(b,p){return new $e(b,p).emitter.event}Ve.fromObservable=qt;function Gs(b){return(p,g,v)=>{let T=0,_=!1,w={beginUpdate(){T++},endUpdate(){T--,T===0&&(b.reportChanges(),_&&(_=!1,p.call(g)))},handlePossibleChange(){},handleChange(){_=!0}};b.addObserver(w),b.reportChanges();let H={dispose(){b.removeObserver(w)}};return or(H,v),H}}Ve.fromObservableLight=Gs})(L||={});var nr=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 Gt,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}}},Ui=-1;var rr=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=/^[0-9a-f]+$/i.test(this.name)?void 0:this.name,l=`[${this.name}] potential listener LEAK detected, having ${t} listeners already. MOST frequent listener (${o}):`;console.warn(l),console.warn(s);let u=o/t>.3?"dominated":"popular",d=new Ht(u,l,s,t,a);this._errorHandler(d)}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}},lt=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(`
`))}},Ht=class n extends Error{constructor(e,t,r,i,s){super(s?`[${s}] potential listener LEAK detected, ${e}`:`potential listener LEAK detected, ${e}`),this.name="ListenerLeakError",this.kind=e,this.listenerCount=i,this.details=t,this.stack=r}static is(e){return e instanceof n||e instanceof Error&&typeof e.kind=="string"&&typeof e.listenerCount=="number"}},ir=class extends Ht{constructor(e,t,r,i,s){super(e,t,r,i,s),this.name="ListenerRefusalError"}},Io=0,at=class{constructor(e){this.value=e;this.id=Io++}},_o=2,xo=(n,e)=>{if(n instanceof at)e(n);else for(let t=0;t<n.length;t++){let r=n[t];r&&e(r)}},S=class{constructor(e){this._size=0;this._options=e,this._leakageMon=Ui>0||this._options?.leakWarningThreshold?new rr(e?.onListenerError??me,this._options?.leakWarningThreshold??Ui,this._options?.leakWarningName):void 0,this._perfMon=this._options?._profName?new nr(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(ki){let e=this._listeners;queueMicrotask(()=>{xo(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=u[1]/this._size>.3?"dominated":"popular",c=new ir(d,`${l}. HINT: Stack shows most frequent listener (${u[1]}-times)`,u[0],this._size,this._options?.leakWarningName);return(this._options?.onListenerError||me)(c),B.None}if(this._disposed)return B.None;t&&(e=e.bind(t));let i=new at(e),s,o;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(i.stack=lt.create(),s=this._leakageMon.check(i.stack,this._size+1)),ki&&(i.stack=o??lt.create()),this._listeners?this._listeners instanceof at?(this._deliveryQueue??=new sr,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=$(()=>{s?.(),this._removeListener(i)});return or(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*_o<=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||me;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 at)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 sr=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 Qt=class{constructor(){this.hasListeners=!1;this.events=[];this.emitter=new S({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),$(yt(()=>{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 Jt=class{constructor(){this.listening=!1;this.inputEvent=L.None;this.inputEventListener=B.None;this.emitter=new S({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 or(n,e){e instanceof q?e.add(n):Array.isArray(e)&&e.push(n)}function Oi(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 Wi=Object.freeze(function(n,e){let t=setTimeout(n.bind(e),0);return{dispose(){clearTimeout(t)}}}),He;(r=>{function n(i){return i===r.None||i===r.Cancelled||i instanceof ut?!0:!i||typeof i!="object"?!1:typeof i.isCancellationRequested=="boolean"&&typeof i.onCancellationRequested=="function"}r.isCancellationToken=n,r.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:L.None}),r.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Wi})})(He||={});var ut=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?Wi:(this._emitter||(this._emitter=new S),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},re=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 ut),this._token}cancel(){this._token?this._token instanceof ut&&this._token.cancel():this._token=He.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof ut&&this._token.dispose():this._token=He.None}};var Eo=65,Ro=97,wo=90,Po=122,Qe=46,J=47,ae=92,Ee=58,Do=63,Yt=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 So(n,e){if(n===null||typeof n!="object")throw new Yt(e,"Object",n)}function V(n,e){if(typeof n!="string")throw new Yt(e,"string",n)}var le=Si==="win32";function P(n){return n===J||n===ae}function ar(n){return n===J}function Re(n){return n>=Eo&&n<=wo||n>=Ro&&n<=Po}function Xt(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=J}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 Ao(n){return n?`${n[0]==="."?"":"."}${n}`:""}function Ni(n,e){So(e,"pathObject");let t=e.dir||e.root,r=e.base||`${e.name||""}${Ao(e.ext)}`;return t?t===e.root?`${t}${r}`:`${t}${n}${r}`:r}var K={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],V(s,`paths[${i}]`),s.length===0)continue}else e.length===0?s=ot():(s=Et[`=${e}`]||ot(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===ae)&&(s=`${e}\\`));let o=s.length,a=0,l="",u=!1,d=s.charCodeAt(0);if(o===1)P(d)&&(a=1,u=!0);else if(P(d))if(u=!0,P(s.charCodeAt(1))){let c=2,f=c;for(;c<o&&!P(s.charCodeAt(c));)c++;if(c<o&&c!==f){let h=s.slice(f,c);for(f=c;c<o&&P(s.charCodeAt(c));)c++;if(c<o&&c!==f){for(f=c;c<o&&!P(s.charCodeAt(c));)c++;(c===o||c!==f)&&(l=`\\\\${h}\\${s.slice(f,c)}`,a=c)}}}else a=1;else Re(d)&&s.charCodeAt(1)===Ee&&(l=s.slice(0,2),a=2,o>2&&P(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=Xt(t,!r,"\\",P),r?`${e}\\${t}`:`${e}${t}`||"."},normalize(n){V(n,"path");let e=n.length;if(e===0)return".";let t=0,r,i=!1,s=n.charCodeAt(0);if(e===1)return ar(s)?"\\":n;if(P(s))if(i=!0,P(n.charCodeAt(1))){let a=2,l=a;for(;a<e&&!P(n.charCodeAt(a));)a++;if(a<e&&a!==l){let u=n.slice(l,a);for(l=a;a<e&&P(n.charCodeAt(a));)a++;if(a<e&&a!==l){for(l=a;a<e&&!P(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 Re(s)&&n.charCodeAt(1)===Ee&&(r=n.slice(0,2),t=2,e>2&&P(n.charCodeAt(2))&&(i=!0,t=3));let o=t<e?Xt(n.slice(t),!i,"\\",P):"";if(o.length===0&&!i&&(o="."),o.length>0&&P(n.charCodeAt(e-1))&&(o+="\\"),!i&&r===void 0&&n.includes(":")){if(o.length>=2&&Re(o.charCodeAt(0))&&o.charCodeAt(1)===Ee)return`.\\${o}`;let a=n.indexOf(":");do if(a===e-1||P(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){V(n,"path");let e=n.length;if(e===0)return!1;let t=n.charCodeAt(0);return P(t)||e>2&&Re(t)&&n.charCodeAt(1)===Ee&&P(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];V(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"&&P(t.charCodeAt(0))){++i;let s=t.length;s>1&&P(t.charCodeAt(1))&&(++i,s>2&&(P(t.charCodeAt(2))?++i:r=!1))}if(r){for(;i<e.length&&P(e.charCodeAt(i));)i++;i>=2&&(e=`\\${e.slice(i)}`)}return K.normalize(e)},relative(n,e){if(V(n,"from"),V(e,"to"),n===e)return"";let t=K.resolve(n),r=K.resolve(e);if(t===r||(n=t.toLowerCase(),e=r.toLowerCase(),n===e))return"";if(t.length!==n.length||r.length!==e.length){let m=t.split("\\"),y=r.split("\\");m[m.length-1]===""&&m.pop(),y[y.length-1]===""&&y.pop();let k=m.length,O=y.length,ie=k<O?k:O,Y;for(Y=0;Y<ie&&m[Y].toLowerCase()===y[Y].toLowerCase();Y++);return Y===0?r:Y===ie?O>ie?y.slice(Y).join("\\"):k>ie?"..\\".repeat(k-1-Y)+"..":"":"..\\".repeat(k-Y)+y.slice(Y).join("\\")}let i=0;for(;i<n.length&&n.charCodeAt(i)===ae;)i++;let s=n.length;for(;s-1>i&&n.charCodeAt(s-1)===ae;)s--;let o=s-i,a=0;for(;a<e.length&&e.charCodeAt(a)===ae;)a++;let l=e.length;for(;l-1>a&&e.charCodeAt(l-1)===ae;)l--;let u=l-a,d=o<u?o:u,c=-1,f=0;for(;f<d;f++){let m=n.charCodeAt(i+f);if(m!==e.charCodeAt(a+f))break;m===ae&&(c=f)}if(f!==d){if(c===-1)return r}else{if(u>d){if(e.charCodeAt(a+f)===ae)return r.slice(a+f+1);if(f===2)return r.slice(a+f)}o>d&&(n.charCodeAt(i+f)===ae?c=f:f===2&&(c=3)),c===-1&&(c=0)}let h="";for(f=i+c+1;f<=s;++f)(f===s||n.charCodeAt(f)===ae)&&(h+=h.length===0?"..":"\\..");return a+=c,h.length>0?`${h}${r.slice(a,l)}`:(r.charCodeAt(a)===ae&&++a,r.slice(a,l))},toNamespacedPath(n){if(typeof n!="string"||n.length===0)return n;let e=K.resolve(n);if(e.length<=2)return n;if(e.charCodeAt(0)===ae){if(e.charCodeAt(1)===ae){let t=e.charCodeAt(2);if(t!==Do&&t!==Qe)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Re(e.charCodeAt(0))&&e.charCodeAt(1)===Ee&&e.charCodeAt(2)===ae)return`\\\\?\\${e}`;return e},dirname(n){V(n,"path");let e=n.length;if(e===0)return".";let t=-1,r=0,i=n.charCodeAt(0);if(e===1)return P(i)?n:".";if(P(i)){if(t=r=1,P(n.charCodeAt(1))){let a=2,l=a;for(;a<e&&!P(n.charCodeAt(a));)a++;if(a<e&&a!==l){for(l=a;a<e&&P(n.charCodeAt(a));)a++;if(a<e&&a!==l){for(l=a;a<e&&!P(n.charCodeAt(a));)a++;if(a===e)return n;a!==l&&(t=r=a+1)}}}}else Re(i)&&n.charCodeAt(1)===Ee&&(t=e>2&&P(n.charCodeAt(2))?3:2,r=t);let s=-1,o=!0;for(let a=e-1;a>=r;--a)if(P(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&&V(e,"suffix"),V(n,"path");let t=0,r=-1,i=!0,s;if(n.length>=2&&Re(n.charCodeAt(0))&&n.charCodeAt(1)===Ee&&(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(P(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(P(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){V(n,"path");let e=0,t=-1,r=0,i=-1,s=!0,o=0;n.length>=2&&n.charCodeAt(1)===Ee&&Re(n.charCodeAt(0))&&(e=r=2);for(let a=n.length-1;a>=e;--a){let l=n.charCodeAt(a);if(P(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:Ni.bind(null,"\\"),parse(n){V(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 P(i)?(e.root=e.dir=n,e):(e.base=e.name=n,e);if(P(i)){if(r=1,P(n.charCodeAt(1))){let c=2,f=c;for(;c<t&&!P(n.charCodeAt(c));)c++;if(c<t&&c!==f){for(f=c;c<t&&P(n.charCodeAt(c));)c++;if(c<t&&c!==f){for(f=c;c<t&&!P(n.charCodeAt(c));)c++;c===t?r=c:c!==f&&(r=c+1)}}}}else if(Re(i)&&n.charCodeAt(1)===Ee){if(t<=2)return e.root=e.dir=n,e;if(r=2,P(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),P(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},ko=(()=>{if(le){let n=/\\/g;return()=>{let e=ot().replace(n,"/");return e.slice(e.indexOf("/"))}}return()=>ot()})(),D={resolve(...n){let e="",t=!1;for(let r=n.length-1;r>=0&&!t;r--){let i=n[r];V(i,`paths[${r}]`),i.length!==0&&(e=`${i}/${e}`,t=i.charCodeAt(0)===J)}if(!t){let r=ko();e=`${r}/${e}`,t=r.charCodeAt(0)===J}return e=Xt(e,!t,"/",ar),t?`/${e}`:e.length>0?e:"."},normalize(n){if(V(n,"path"),n.length===0)return".";let e=n.charCodeAt(0)===J,t=n.charCodeAt(n.length-1)===J;return n=Xt(n,!e,"/",ar),n.length===0?e?"/":t?"./":".":(t&&(n+="/"),e?`/${n}`:n)},isAbsolute(n){return V(n,"path"),n.length>0&&n.charCodeAt(0)===J},join(...n){if(n.length===0)return".";let e=[];for(let t=0;t<n.length;++t){let r=n[t];V(r,"path"),r.length>0&&e.push(r)}return e.length===0?".":D.normalize(e.join("/"))},relative(n,e){if(V(n,"from"),V(e,"to"),n===e||(n=D.resolve(n),e=D.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===J&&(l=u)}if(u===a)if(o>a){if(e.charCodeAt(s+u)===J)return e.slice(s+u+1);if(u===0)return e.slice(s+u)}else i>a&&(n.charCodeAt(t+u)===J?l=u:u===0&&(l=0));let d="";for(u=t+l+1;u<=r;++u)(u===r||n.charCodeAt(u)===J)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(s+l)}`},toNamespacedPath(n){return n},dirname(n){if(V(n,"path"),n.length===0)return".";let e=n.charCodeAt(0)===J,t=-1,r=!0;for(let i=n.length-1;i>=1;--i)if(n.charCodeAt(i)===J){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&&V(e,"suffix"),V(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===J){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)===J){if(!i){t=s+1;break}}else r===-1&&(i=!1,r=s+1);return r===-1?"":n.slice(t,r)},extname(n){V(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:Ni.bind(null,"/"),parse(n){V(n,"path");let e={root:"",dir:"",base:"",ext:"",name:""};if(n.length===0)return e;let t=n.charCodeAt(0)===J,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===J){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};D.win32=K.win32=K;D.posix=K.posix=D;var be=le?K.normalize:D.normalize,Zt=le?K.isAbsolute:D.isAbsolute,Z=le?K.join:D.join,Ci=le?K.resolve:D.resolve,Mi=le?K.relative:D.relative,Je=le?K.dirname:D.dirname,Ye=le?K.basename:D.basename,qi=le?K.extname:D.extname,a1=le?K.format:D.format,l1=le?K.parse:D.parse,u1=le?K.toNamespacedPath:D.toNamespacedPath,ne=le?K.sep:D.sep,Fo=le?K.delimiter:D.delimiter;function Lo(n){return n}var tn=class{constructor(e,t){this.lastCache=void 0;this.lastArgKey=void 0;typeof e=="function"?(this._fn=e,this._computeKey=Lo):(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 ue=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 lr(n){return n.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function ji(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 ur(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 wt(n,e){return n<e?-1:n>e?1:0}function nn(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 cr(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 nn(n.toLowerCase(),e.toLowerCase(),t,r,i,s);Bi(l)&&(l-=32),Bi(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 Bi(n){return n>=97&&n<=122}function dr(n){return n>=65&&n<=90}function Ze(n,e){return n.length===e.length&&Xe(n,e)===0}function Pt(n,e){let t=e.length;return t<=n.length&&Xe(n,e,0,t)===0}function zi(n,e){let t=n.length,r=t-e.length;return r>=0&&Xe(n,e,r,t)===0}function Gi(n){return 55296<=n&&n<=56319}function fr(n){return 56320<=n&&n<=57343}function Hi(n,e){return(n-55296<<10)+(e-56320)+65536}var Uo=/(?:\x1b\[|\x9b)[=?>!]?[\d;:]*["$#'* ]?[a-zA-Z@^`{}|~]/,Oo=/(?:\x1b\]|\x9d).*?(?:\x1b\\|\x07|\x9c)/,Wo=/\x1b(?:[ #%\(\)\*\+\-\.\/]?[a-zA-Z0-9\|}~@])/,y1=new RegExp("(?:"+[Uo.source,Oo.source,Wo.source].join("|")+")","g");var I1=String.fromCharCode(65279);var $i=class n{static{this._INSTANCE=null}static getInstance(){return n._INSTANCE||(n._INSTANCE=new n),n._INSTANCE}constructor(){this._data=No()}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 No(){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 Vi=class n{constructor(e){this.confusableDictionary=e}static{this.ambiguousCharacterData=new ue(()=>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 tn(e=>{let t=e.split(",");function r(c){let f=new Map;for(let h=0;h<c.length;h+=2)f.set(c[h],c[h+1]);return f}function i(c,f){let h=new Map(c);for(let[m,y]of f)h.set(m,y);return h}function s(c,f){if(!c)return f;let h=new Map;for(let[m,y]of c)f.has(m)&&h.set(m,y);return h}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 ue(()=>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())}},Ki=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 pr(n){return n.replace(/[\\/]/g,D.sep)}function Ji(n){return n.indexOf("/")===-1&&(n=pr(n)),/^[a-zA-Z]:(\/|$)/.test(n)&&(n="/"+n),n}function hr(n,e=D.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(Yi(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 Dt(n,e,t){let r=n===e;return!t||r?r:!n||!e?!1:Ze(n,e)}function fe(n,e,t,r=!1){let i=r?D.sep:ne;if(n===e)return!0;if(!n||!e||((n.indexOf("..")>=0||e.indexOf("..")>=0)&&(n=r?D.normalize(n):be(n),e=r?D.normalize(e):be(e)),e.length>n.length))return!1;if(t){if(!Pt(n,e))return!1;if(e.length===n.length)return!0;let o=e.length;return e.charAt(e.length-1)===i&&o--,n.charAt(o)===i}return e.charAt(e.length-1)!==i&&(e+=i),n.indexOf(e)===0}function Yi(n){return n>=65&&n<=90||n>=97&&n<=122}function mr(n){let e=be(n);return j?n.length>3?!1:Co(e)&&(n.length===2||e.charCodeAt(2)===92):e===D.sep}function Co(n,e=j){return e?Yi(n.charCodeAt(0))&&n.charCodeAt(1)===58:!1}var Mo="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",qo="BDEFGHIJKMOQRSTUVWXYZbdefghijkmoqrstuvwxyz0123456789";function rn(n,e,t=8){let r="";for(let s=0;s<t;s++){let o;s===0&&j&&!e&&(t===3||t===4)?o=qo:o=Mo,r+=o.charAt(Math.floor(Math.random()*o.length))}let i;return e?i=`${e}-${r}`:i=r,n?Z(n,i):i}var Vo=/^\w[\w\d+.-]*$/,Ko=/^\//,jo=/^\/\//;function zo(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&&!Vo.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(!Ko.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(jo.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 Go(n,e){return!n&&!e?"file":n}function Ho(n,e){switch(n){case"https":case"http":case"file":e?e[0]!==pe&&(e=pe+e):e=pe;break}return e}var N="",pe="/",Qo=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,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||N,this.authority=e.authority||N,this.path=e.path||N,this.query=e.query||N,this.fragment=e.fragment||N):(this.scheme=Go(e,o),this.authority=t||N,this.path=Ho(this.scheme,r||N),this.query=i||N,this.fragment=s||N,zo(this,o))}get fsPath(){return St(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=N),r===void 0?r=this.authority:r===null&&(r=N),i===void 0?i=this.path:i===null&&(i=N),s===void 0?s=this.query:s===null&&(s=N),o===void 0?o=this.fragment:o===null&&(o=N),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=Qo.exec(e);return r?new We(r[2]||N,sn(r[4]||N),sn(r[5]||N),sn(r[7]||N),sn(r[9]||N),t):new We(N,N,N,N,N)}static file(e){let t=N;if(j&&(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,N,N)}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: ${e.toString()}`);let r;return j&&e.scheme==="file"?r=n.file(K.join(St(e,!0),...t)).path:r=D.join(e.path,...t),e.with({path:r})}toString(e=!1){return gr(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===es?e.fsPath??null:null,t}}else return e}[Symbol.for("debug.description")](){return`URI(${this.toString()})`}};var es=j?1:void 0,We=class extends U{constructor(){super(...arguments);this._formatted=null;this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=St(this,!1)),this._fsPath}toString(t=!1){return t?gr(this,!0):(this._formatted||(this._formatted=gr(this,!1)),this._formatted)}toJSON(){let t={$mid:1};return this._fsPath&&(t.fsPath=this._fsPath,t._sep=es),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}},ts={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 Xi(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=ts[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 Jo(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+=ts[r]):e!==void 0&&(e+=n[t])}return e!==void 0?e:n}function St(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,j&&(t=t.replace(/\//g,"\\")),t}function gr(n,e){let t=e?Jo:Xi,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:Xi(l,!1,!1)),r}function ns(n){try{return decodeURIComponent(n)}catch{return n.length>3?n.substr(0,3)+ns(n.substr(3)):n}}var Zi=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function sn(n){return n.match(Zi)?n.replace(Zi,e=>ns(e)):n}var G;(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.vscodeImageCarousel="vscode-image-carousel",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"))(G||={});var Yo="tkn",vr=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=D.join(t??"/",Zo(e))}getServerRootPath(){return this._serverRootPath}get _remoteResourcesPath(){return D.join(this._serverRootPath,G.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 Jr(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+=`&${Yo}=${encodeURIComponent(s)}`),U.from({scheme:er?this._preferredWebSchema:G.vscodeRemoteResource,authority:`${r}:${i}`,path:this._remoteResourcesPath,query:o})}},Xo=new vr;function Zo(n){return`${n.quality??"oss"}-${n.commit??"dev"}`}var ea="vscode-app",br=class n{static{this.FALLBACK_AUTHORITY=ea}asBrowserUri(e){let t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===G.vscodeRemote?Xo.rewrite(e):e.scheme===G.file&&(Ri||wi===`${G.vscodeFileResource}://${n.FALLBACK_AUTHORITY}`)?e.with({scheme:G.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===G.vscodeFileResource?e.with({scheme:G.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=Z(t,e);return U.file(r)}throw new Error("Cannot determine URI for module id!")}},ta=new br,U1=Object.freeze({"Cache-Control":"no-cache, no-store"}),O1=Object.freeze({"Document-Policy":"include-js-call-stacks-in-crash-reports"}),na;(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})(na||={});function we(n){return St(n,!0)}var At=class{constructor(e){this._ignorePathCasing=e}compare(e,t,r=!1){return e===t?0:wt(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===G.file)return fe(we(e),we(t),this._ignorePathCasing(e))&&e.query===t.query&&(r||e.fragment===t.fragment);if(rs(e.authority,t.authority))return fe(e.path,t.path,this._ignorePathCasing(e),!0)&&e.query===t.query&&(r||e.fragment===t.fragment)}return!1}joinPath(e,...t){return U.joinPath(e,...t)}basenameOrAuthority(e){return ra(e)||e.authority}basename(e,t){return D.basename(e.path,t)}extname(e){return D.extname(e.path)}dirname(e){if(e.path.length===0)return e;let t;return e.scheme===G.file?t=U.file(Je(we(e))).path:(t=D.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===G.file?t=U.file(be(we(e))).path:t=D.normalize(e.path),e.with({path:t})}relativePath(e,t){if(e.scheme!==t.scheme||!rs(e.authority,t.authority))return;if(e.scheme===G.file){let s=Mi(we(e),we(t));return j?pr(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 D.relative(r,i)}resolvePath(e,t){if(e.scheme===G.file){let r=U.file(Ci(we(e),t));return e.with({authority:r.authority,path:r.path})}return t=Ji(t),e.with({path:D.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=ne){if(e.scheme===G.file){let r=we(e);return r.length>hr(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=ne){return is(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=ne){let r=!1;if(e.scheme===G.file){let i=we(e);r=i!==void 0&&i.length===hr(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&&!is(e,t)?e.with({path:e.path+"/"}):e}},A=new At(()=>!1),ss=new At(n=>n.scheme===G.file?!C:!0),$1=new At(n=>!0),V1=A.isEqual.bind(A),K1=A.isEqualOrParent.bind(A),j1=A.getComparisonKey.bind(A),z1=A.basenameOrAuthority.bind(A),ra=A.basename.bind(A),G1=A.extname.bind(A),H1=A.dirname.bind(A),Tr=A.joinPath.bind(A),Q1=A.normalizePath.bind(A),J1=A.relativePath.bind(A),Y1=A.resolvePath.bind(A),X1=A.isAbsolutePath.bind(A),rs=A.isEqualAuthority.bind(A),is=A.hasTrailingPathSeparator.bind(A),Z1=A.removeTrailingPathSeparator.bind(A),eu=A.addTrailingPathSeparator.bind(A);var ia;(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})(ia||={});var os=Symbol("MicrotaskDelay");function un(n){return!!n&&typeof n.then=="function"}function kt(n){let e=new re,t=n(e.token),r=!1,i=new Promise((s,o)=>{let a=e.token.onCancellationRequested(()=>{r=!0,a.dispose(),o(new se)});Promise.resolve(t).then(l=>{a.dispose(),e.dispose(),r?vi(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 Ir=class{constructor(){this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null,this.cancellationTokenSource=new re}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 sa=(n,e)=>{let t=!0,r=setTimeout(()=>{t=!1,e()},n);return{isTriggered:()=>t,dispose:()=>{clearTimeout(r),t=!1}}},oa=n=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,n())}),{isTriggered:()=>e,dispose:()=>{e=!1}}},on=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===os?oa(r):sa(t,r),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new se),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}},an=class{constructor(e){this.delayer=new on(e),this.throttler=new Ir}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 cn(n,e){return e?new Promise((t,r)=>{let i=setTimeout(()=>{s.dispose(),t()},n),s=e.onCancellationRequested(()=>{clearTimeout(i),s.dispose(),r(new se)})}):kt(t=>cn(n,t))}var _r=class{constructor(e){this._size=0;this._isDisposed=!1;this.maxDegreeOfParalellism=e,this.outstandingPromises=[],this.runningPromises=0,this._onDrained=new S}whenIdle(){return this.size>0?L.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()}},xr=class extends _r{constructor(){super(1)}};var ln=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=A){let r=t.getComparisonKey(e);return this.queues.get(r)?.size??0}queueFor(e,t,r=A){let i=r.getComparisonKey(e),s=this.queues.get(i);if(!s){s=new xr;let o=this.drainListenerCount++,a=L.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 Le),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}},aa,yr;(function(){let n=globalThis;typeof n.requestIdleCallback!="function"||typeof n.cancelIdleCallback!="function"?yr=(e,t,r)=>{Pi(()=>{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)}}}:yr=(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))}}},aa=(e,t)=>yr(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 se)}},dn;(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})(dn||={});var as=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 S,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 L.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 Er=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 Ae("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}}},ls=class n{constructor(e,t){this._onReturn=t;this._producerConsumer=new Er;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",ua=new ue(()=>new Uint8Array(256)),Rr,wr,z=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)):(Rr||(Rr=new TextEncoder),new n(Rr.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():(wr||(wr=new TextDecoder(void 0,{ignoreBOM:!0})),wr.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 da(this.buffer,e)}writeUInt32BE(e,t){fa(this.buffer,e,t)}readUInt32LE(e){return pa(this.buffer,e)}writeUInt32LE(e,t){ha(this.buffer,e,t)}readUInt8(e){return ma(this.buffer,e)}writeUInt8(e,t){ga(this.buffer,e,t)}indexOf(e,t=0){return ca(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 ca(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=ua.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 da(n,e){return n[e]*2**24+n[e+1]*2**16+n[e+2]*2**8+n[e+3]}function fa(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 pa(n,e){return n[e+0]<<0>>>0|n[e+1]<<8>>>0|n[e+2]<<16>>>0|n[e+3]<<24>>>0}function ha(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 ma(n,e){return n[e]}function ga(n,e,t){n[t]=e}var us="0123456789abcdef";function cs({buffer:n}){let e="";for(let t=0;t<n.length;t++){let r=n[t];e+=us[r>>>4],e+=us[r&15]}return e}function ds(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 Lt(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 z||n instanceof Uint8Array)return n;if(Array.isArray(n))for(let t=0;t<n.length;++t)n[t]=Lt(n[t],e+1);else for(let t in n)Object.hasOwnProperty.call(n,t)&&(n[t]=Lt(n[t],e+1))}return n}function ft(n){switch(n){case 100:return"req";case 101:return"cancel";case 102:return"subscribe";case 103:return"unsubscribe"}}function fn(n){switch(n){case 200:return"init";case 201:return"reply:";case 202:case 203:return"replyErr:";case 204:return"event:"}}function ct(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 va=Ce(0);function dt(n,e){if(e===0){n.write(va);return}let t=0;for(let i=e;i!==0;i=i>>>7)t++;let r=z.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 Ot=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}},pn=class{constructor(){this.buffers=[]}get buffer(){return z.concat(this.buffers)}write(e){this.buffers.push(e)}dispose(){this.buffers.length=0}};function Ce(n){let e=z.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 Wt(n,e){if(typeof e>"u")n.write(nt.Undefined);else if(typeof e=="string"){let t=z.fromString(e);n.write(nt.String),dt(n,t.byteLength),n.write(t)}else if(z.isNativeBuffer(e)){let t=z.wrap(e);n.write(nt.Buffer),dt(n,t.byteLength),n.write(t)}else if(e instanceof z)n.write(nt.VSBuffer),dt(n,e.byteLength),n.write(e);else if(Array.isArray(e)){n.write(nt.Array),dt(n,e.length);for(let t of e)Wt(n,t)}else if(typeof e=="number"&&(e|0)===e)n.write(nt.Uint),dt(n,e);else{let t=z.fromString(JSON.stringify(e));n.write(nt.Object),dt(n,t.byteLength),n.write(t)}}function pt(n){switch(n.read(1).readUInt8(0)){case 0:return;case 1:return n.read(ct(n)).toString();case 2:return n.read(ct(n)).buffer;case 3:return n.read(ct(n));case 4:{let t=ct(n),r=[];for(let i=0;i<t;i++)r.push(pt(n));return r}case 5:return JSON.parse(n.read(ct(n)).toString());case 6:return ct(n)}}var Nt=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,fn(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,fn(e.type),e.data);return}}}send(e,t=void 0){let r=new pn;try{return Wt(r,e),Wt(r,t),this.sendBuffer(r.buffer)}finally{r.dispose()}}sendBuffer(e){try{return this.protocol.send(e),e.byteLength}catch{return 0}}onRawMessage(e){let t=new Ot(e),r=pt(t),i=pt(t),s=r[0];switch(s){case 100:return this.logger?.logIncoming(e.byteLength,r[1],1,`${ft(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,`${ft(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,`${ft(s)}`),this.disposeActiveRequest({type:s,id:r[1]});case 103:return this.logger?.logIncoming(e.byteLength,r[1],1,`${ft(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 re,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=$(()=>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 Ut=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 S;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 se):t.requestPromise(e,r,i,s)},listen(r,i){return t.isDisposed?L.None:t.requestEvent(e,r,i)}}}requestPromise(e,t,r,i=He.None){let s=this.lastRequestId++,a={id:s,type:100,channelName:e,name:t,arg:r};if(i.isCancellationRequested)return Promise.reject(new se);let l,u;return new Promise((c,f)=>{if(i.isCancellationRequested)return f(new se);let h=()=>{let k=O=>{switch(O.type){case 201:this.handlers.delete(s),c(O.data);break;case 202:{this.handlers.delete(s);let ie=new Error(O.data.message);ie.stack=Array.isArray(O.data.stack)?O.data.stack.join(`
`):O.data.stack,ie.name=O.data.name,f(ie);break}case 203:this.handlers.delete(s),f(O.data);break}};this.handlers.set(s,k);try{this.sendRequest(a)}catch(O){this.handlers.delete(s),f(O)}},m=null;this.state===1?h():(m=kt(k=>this.whenInitialized()),m.then(()=>{m=null,h()}));let y=()=>{m?(m.cancel(),m=null):this.sendRequest({id:s,type:101}),f(new se)};l=i.onCancellationRequested(y),u={dispose:yt(()=>{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 S({onWillAddFirstListener:()=>{let d=()=>{this.activeRequests.add(l),this.sendRequest(o)};this.state===1?d():(a=kt(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,`${ft(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,ft(e.type));return}}}send(e,t=void 0){let r=new pn;try{return Wt(r,e),Wt(r,t),this.sendBuffer(r.buffer)}finally{r.dispose()}}sendBuffer(e){try{return this.protocol.send(e),e.byteLength}catch{return 0}}onBuffer(e){let t=new Ot(e),r=pt(t),i=pt(t),s=r[0];switch(s){case 200:return this.logger?.logIncoming(e.byteLength,0,0,fn(s)),this.onResponse({type:r[0]});case 201:case 202:case 204:case 203:return this.logger?.logIncoming(e.byteLength,r[1],0,fn(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 L.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()}};zr([ds],Ut.prototype,"onDidInitializePromise",1);var hn=class{constructor(e,t,r){this.channels=new Map;this._connections=new Set;this._onDidAddConnection=new S;this.onDidAddConnection=this._onDidAddConnection.event;this._onDidRemoveConnection=new S;this.onDidRemoveConnection=this._onDidRemoveConnection.event;this.disposables=new q;this.disposables.add(e(({protocol:i,onDidClientDisconnect:s})=>{let o=L.once(i.onMessage),a=new q,l=o(u=>{let d=new Ot(u),c=pt(d),f=new Nt(i,c,t,r),h=new Ut(i,t);this.channels.forEach((y,k)=>f.registerChannel(k,y));let m={channelServer:f,channelClient:h,ctx:c};this._connections.add(m),this._onDidAddConnection.fire(m),a.add(s(()=>{f.dispose(),h.dispose(),this._connections.delete(m),this._onDidRemoveConnection.fire(m),this.disposables.delete(a),a.dispose()}))});a.add(l),this.disposables.add(a)}))}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(Gn(t)){let u=ti(r.connections.filter(t));a=u?Promise.resolve(u):L.toPromise(L.filter(r.onDidAddConnection,t))}else a=t.routeCall(r,i,s);let l=a.then(u=>u.channelClient.getChannel(e));return fs(l).call(i,s,o)},listen(i,s){if(Gn(t))return r.getMulticastEvent(e,t,i,s);let o=t.routeEvent(r,i,s).then(a=>a.channelClient.getChannel(e));return fs(o).listen(i,s)}}}getMulticastEvent(e,t,r,i){let s=this,o,a=new S({onWillAddFirstListener:()=>{o=new q;let l=new Qt,u=new Map,d=f=>{let m=f.channelClient.getChannel(e).listen(r,i),y=l.add(m);u.set(f,y)},c=f=>{let h=u.get(f);h&&(h.dispose(),u.delete(f))};s.connections.filter(t).forEach(d),L.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 fs(n){return{call(e,t,r){return n.then(i=>i.call(e,t,r))},listen(e,t){let r=new Jt;return n.then(i=>r.input=i.listen(e,t)),r.event}}}var Pr;(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,L.buffer(l[c],c,!0,void 0,o));return new class{listen(c,f,h){let m=d.get(f);if(m)return m;let y=l[f];if(typeof y=="function"){if(r(f))return y.call(l,h);if(t(f))return d.set(f,L.buffer(l[f],f,!0,void 0,o)),d.get(f)}throw new Se(`Event not found: ${f}`)}call(c,f,h){let m=l[f];if(typeof m=="function"){if(!u&&Array.isArray(h))for(let k=0;k<h.length;k++)h[k]=Lt(h[k]);let y=m.apply(l,h);return y instanceof Promise||(y=Promise.resolve(y)),y}throw new Se(`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&&!zn(o.context)?c=[o.context,...d]:c=d;let f=await s.call(u,c);return a?f:Lt(f)};throw new Se(`Property not found: ${String(u)}`)}})}i.toService=e;function t(s){return s[0]==="o"&&s[1]==="n"&&dr(s.charCodeAt(2))}function r(s){return/^onDynamic/.test(s)&&dr(s.charCodeAt(9))}})(Pr||={});import{fork as Jc}from"child_process";import*as Ma from"child_process";import{promises as Lc}from"fs";import*as x from"fs";import{tmpdir as _a}from"os";import{promisify as Ct}from"util";var ba=new ke(1e4);function rt(n){return ps(n,"NFC",ba)}var Ta=new ke(1e4);function ya(n){return ps(n,"NFD",Ta)}var Ia=/[^\u0000-\u0080]/;function ps(n,e,t){if(!n)return n;let r=t.get(n);if(r)return r;let i;return Ia.test(n)?i=n.normalize(e):i=n,t.set(n,i),i}var mc=(function(){let n=new ke(1e4),e=/[\u0300-\u036f]/g;return function(t){let r=n.get(t);if(r)return r;let i=ya(t).replace(e,""),s=(i.length===t.length?i:t).toLowerCase();return n.set(t,s),s}})();async function gs(n,e=0,t){if(mr(n))throw new Error("rimraf - will refuse to recursively delete root");return e===0?Dr(n):xa(n,t)}async function xa(n,e=rn(_a())){try{try{await x.promises.rename(n,e)}catch(t){return t.code==="ENOENT"?void 0:Dr(n)}Dr(e).catch(()=>{})}catch(t){if(t.code!=="ENOENT")throw t}}async function Dr(n){return x.promises.rm(n,{recursive:!0,force:!0,maxRetries:3})}async function gn(n,e){try{return await hs(n,e)}catch(t){if(t.code==="ENOENT"&&j&&mr(n))try{return await hs(`${n}.`,e)}catch{}throw t}}async function hs(n,e){return Ra(await(e?Ea(n):x.promises.readdir(n)))}async function Ea(n){try{return await x.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 gn(n);for(let r of t){let i=!1,s=!1,o=!1;try{let a=await x.promises.lstat(Z(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 Ra(n){return n.map(e=>typeof e=="string"?ve?rt(e):e:(e.name=ve?rt(e.name):e.name,e))}async function wa(n){let e=await gn(n),t=[];for(let r of e)await vn.existsDirectory(Z(n,r))&&t.push(r);return t}var vn;(r=>{async function n(i){let s;try{if(s=await x.promises.lstat(i),!s.isSymbolicLink())return{stat:s}}catch{}try{return{stat:await x.promises.stat(i),symbolicLink:s?.isSymbolicLink()?{dangling:!1}:void 0}}catch(o){if(o.code==="ENOENT"&&s)return{stat:s,symbolicLink:{dangling:!0}};if(j&&o.code==="EACCES")try{return{stat:await x.promises.stat(await x.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})(vn||={});var Pa=new ln;function Da(n,e,t){return Pa.queueFor(U.file(n),()=>{let r=ka(t);return new Promise((i,s)=>Aa(n,e,r,o=>o?s(o):i()))},ss)}var vs=!0;function Sa(n){vs=n}function Aa(n,e,t,r){if(!vs)return x.writeFile(n,e,{mode:t.mode,flag:t.flag},r);x.open(n,t.flag,t.mode,(i,s)=>{if(i)return r(i);x.writeFile(s,e,o=>{if(o)return x.close(s,()=>r(o));x.fdatasync(s,a=>(a&&(console.warn("[node.js fs] fdatasync is now disabled for this session because it failed: ",a),Sa(!1)),x.close(s,l=>r(l))))})})}function ka(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 Fa(n,e,t=6e4){if(n!==e)try{j&&typeof t=="number"?await bs(n,e,Date.now(),t):await x.promises.rename(n,e)}catch(r){if(n.toLowerCase()!==e.toLowerCase()&&r.code==="EXDEV"||n.endsWith("."))await Ts(n,e,{preserveSymlinks:!1}),await gs(n,1);else throw r}}async function bs(n,e,t,r,i=0){try{return await x.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 vn.stat(e);a.isFile()||(o=!0)}catch{}if(o)throw s}return await cn(Math.min(100,i*10)),bs(n,e,t,r,i+1)}}async function Ts(n,e,t){return ys(n,e,{root:{source:n,target:e},options:t,handledSourcePaths:new Set})}var ms=511;async function ys(n,e,t){if(t.handledSourcePaths.has(n))return;t.handledSourcePaths.add(n);let{stat:r,symbolicLink:i}=await vn.stat(n);if(i){if(t.options.preserveSymlinks)try{return await Oa(n,e,t)}catch{}if(i.dangling)return}return r.isDirectory()?La(n,e,r.mode&ms,t):Ua(n,e,r.mode&ms)}async function La(n,e,t,r){await x.promises.mkdir(e,{recursive:!0,mode:t});let i=await gn(n);for(let s of i)await ys(Z(n,s),Z(e,s),r)}async function Ua(n,e,t){await x.promises.copyFile(n,e),await x.promises.chmod(e,t)}async function Oa(n,e,t){let r=await x.promises.readlink(n);fe(r,t.root.source,!C)&&(r=Z(t.root.target,r.substr(t.root.source.length+1))),await x.promises.symlink(r,e)}async function mn(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 mn(t,e);if(o)return Z(o,s[0])}else if(s.length>1){let o=s.indexOf(r);if(o>=0){let a=await mn(t,e);if(a)return Z(a,s[o])}}}catch{}return null}async function Wa(n){try{return await Ct(x.realpath)(n)}catch{let e=Na(n);return await x.promises.access(e,x.constants.R_OK),e}}function Na(n){return ur(be(n),ne)}var he=new class{get read(){return(n,e,t,r,i)=>new Promise((s,o)=>{x.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)=>{x.write(n,e,t,r,i,(a,l,u)=>a?o(a):s({bytesWritten:l,buffer:u}))})}get fdatasync(){return Ct(x.fdatasync)}get open(){return Ct(x.open)}get close(){return Ct(x.close)}get ftruncate(){return Ct(x.ftruncate)}async exists(n){try{return await x.promises.access(n),!0}catch{return!1}}get readdir(){return gn}get readDirsInDir(){return wa}get writeFile(){return Da}get rm(){return gs}get rename(){return Fa}get copy(){return Ts}get realpath(){return Wa}};var bn=class extends Nt{constructor(e){super({send:t=>{try{process.send?.(t.buffer.toString("base64"))}catch{}},onMessage:L.fromNodeEventEmitter(process,"message",t=>z.wrap(Buffer.from(t,"base64")))},e),process.once("disconnect",()=>this.dispose())}};function Tn(n){return!!n.parentPort}var Sr=class{constructor(e){this.port=e;this.onMessage=L.fromNodeEventEmitter(this.port,"message",t=>t.data?z.wrap(t.data):z.alloc(0)),e.start()}send(e){this.port.postMessage(e.buffer)}disconnect(){this.port.close()}},yn=class n extends hn{static getOnDidClientConnect(e){hi(Tn(process),"Electron Utility Process");let t=new S;return process.parentPort.on("message",r=>{if(e?.handledClientConnection(r))return;let i=r.ports.at(0);i&&t.fire(i)}),L.map(t.event,r=>({protocol:new Sr(r),onDidClientDisconnect:L.fromNodeEventEmitter(r,"close")}))}constructor(e){super(n.getOnDidClientConnect(e))}};var Me="**",Is="/",In="[/\\\\]",_n="[^/\\\\]",qa=/\//g;function _s(n,e){switch(n){case 0:return"";case 1:return`${_n}*?`;default:return`(?:${In}|${_n}+${In}${e?`|${In}${_n}+`:""})*?`}}function xs(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 Ds(n){if(!n)return"";let e="",t=xs(n,Is);if(t.every(r=>r===Me))e=".*";else{let r=!1;t.forEach((i,s)=>{if(i===Me){if(r)return;e+=_s(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===Is?c="":c=lr(d),u+=c;continue}switch(d){case"{":o=!0;continue;case"[":l=!0;continue;case"}":{let f=`(?:${xs(a,",").map(h=>Ds(h)).join("|")})`;e+=f,o=!1,a="";break}case"]":{e+="["+u+"]",l=!1,u="";break}case"?":e+=_n;continue;case"*":e+=_s(1);continue;default:e+=lr(d)}}s<t.length-1&&(t[s+1]!==Me||s+2<t.length)&&(e+=In)}r=i===Me})}return e}var Ba=/^\*\*\/\*\.[\w\.-]+$/,$a=/^\*\*\/([\w\.-]+)\/?$/,Va=/^{\*\*\/\*?[\w\.-]+\/?(,\*\*\/\*?[\w\.-]+\/?)*}$/,Ka=/^{\*\*\/\*?[\w\.-]+(\/(\*\*)?)?(,\*\*\/\*?[\w\.-]+(\/(\*\*)?)?)*}$/,ja=/^\*\*((\/[\w\.-]+)+)\/?$/,za=/^([\w\.-]+(\/[\w\.-]+)*)\/?$/,Es=new ke(1e4),Rs=function(){return!1},Te=function(){return null};function kr(n,e){if(!n)return Te;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?zi:(l,u)=>l.endsWith(u),isEqualOrParent:(l,u)=>fe(l,u,e.ignoreCase??!C)},s=`${r?t.toLowerCase():t}_${!!e.trimForExclusions}_${r}`,o=Es.get(s);if(o)return ws(o,n,i);let a;return Ba.test(t)?o=Ga(t.substring(4),t,i):(a=$a.exec(Ar(t,i)))?o=Ha(a[1],t,i):(e.trimForExclusions?Ka:Va).test(t)?o=Qa(t,i):(a=ja.exec(Ar(t,i)))?o=Ps(a[1].substring(1),t,!0,i):(a=za.exec(Ar(t,i)))?o=Ps(a[1],t,!1,i):o=Ja(t,i),Es.set(s,o),ws(o,n,i)}function ws(n,e,t){if(typeof e=="string")return n;let r=function(i,s){return t.isEqualOrParent(i,e.base)?n(ji(i.substring(e.base.length),ne),s):null};return r.allBasenames=n.allBasenames,r.allPaths=n.allPaths,r.basenames=n.basenames,r.patterns=n.patterns,r}function Ar(n,e){return e.trimForExclusions&&n.endsWith("/**")?n.substring(0,n.length-2):n}function Ga(n,e,t){return function(r,i){return typeof r=="string"&&t.endsWith(r,n)?e:null}}function Ha(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 Qa(n,e){let t=As(n.slice(1,-1).split(",").map(a=>kr(a,e)).filter(a=>a!==Te),n),r=t.length;if(!r)return Te;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 Ps(n,e,t,r){let i=ne===D.sep,s=i?n:n.replace(qa,ne),o=ne+s,a=D.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 Ja(n,e){try{let t=new RegExp(`^${Ds(n)}$`,e.ignoreCase?"i":void 0);return function(r){return t.lastIndex=0,typeof r=="string"&&t.test(r)?n:null}}catch{return Te}}function Ss(n,e={}){if(!n)return Rs;if(typeof n=="string"||Ya(n)){let t=kr(n,e);if(t===Te)return Rs;let r=function(i,s){return!!t(i,s)};return t.allBasenames&&(r.allBasenames=t.allBasenames),t.allPaths&&(r.allPaths=t.allPaths),r}return Xa(n,e)}function Ya(n){let e=n;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function Xa(n,e){let t=As(Object.getOwnPropertyNames(n).map(a=>Za(a,n[a],e)).filter(a=>a!==Te)),r=t.length;if(!r)return Te;if(!t.some(a=>!!a.requiresSiblings)){if(r===1)return t[0];let a=function(d,c){let f;for(let h=0,m=t.length;h<m;h++){let y=t[h](d,c);if(typeof y=="string")return y;un(y)&&(f||(f=[]),f.push(y))}return f?(async()=>{for(let h of f){let m=await h;if(typeof m=="string")return m}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,h=t.length;f<h;f++){let m=t[f];m.requiresSiblings&&u&&(l||(l=Ye(a)),d||(d=l.substring(0,l.length-qi(a).length)));let y=m(a,l,d,u);if(typeof y=="string")return y;un(y)&&(c||(c=[]),c.push(y))}return c?(async()=>{for(let f of c){let h=await f;if(typeof h=="string")return h}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 Za(n,e,t){if(e===!1)return Te;let r=kr(n,t);if(r===Te)return Te;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 un(c)?c.then(f=>f?n:null):c?n:null};return s.requiresSiblings=!0,s}}return r}function As(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 ht(n,e){return Zr(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 Fr=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]}},Lr=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?nn(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)}},xn=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?nn(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 Ur=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 xn(!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 cr(e,this._value.scheme);if(this._states[this._stateIdx]===2)return cr(e,this._value.authority);if(this._states[this._stateIdx]===3)return this._pathIterator.cmp(e);if(this._states[this._stateIdx]===4)return wt(e,this._value.query);if(this._states[this._stateIdx]===5)return wt(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}},Pe=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}},mt=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 Ur(e,t))}static forPaths(e=!1){return new n(new xn(void 0,!e))}static forStrings(){return new n(new Fr)}static forConfigKeys(){return new n(new Lr)}constructor(e){this._iter=e}clear(){this._root=void 0}fill(e,t){if(t){let r=t.slice(0);qn(r);for(let i of r)this.set(i,e)}else{let r=e.slice(0);qn(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 mt,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 mt,i.left.segment=r.value()),s.push([-1,i]),i=i.left;else if(a<0)i.right||(i.right=new mt,i.right.segment=r.value()),s.push([1,i]),i=i.right;else if(r.hasNext())r.next(),i.mid||(i.mid=new mt,i.mid.segment=r.value()),s.push([0,i]),i=i.mid;else break}let o=Pe.unwrap(i.value);i.value=Pe.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 Pe.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:$t(!1);case 1:$t(!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=Pe.unwrap(r.value)||i,r=r.mid;else break}return r&&Pe.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?Pe.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,Pe.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 Nd=Or("instantiationService");function el(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 Or(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");el(e,t,i)};return e.toString=()=>n,Be.serviceIds.set(n,e),e}var Qd=Or("fileService");var ks=class n{constructor(e,t){this.ignorePathCasing=t;this.correlationId=void 0;this.added=new ue(()=>{let e=qe.forUris(()=>this.ignorePathCasing);return e.fill(this.rawAdded.map(t=>[t,!0])),e});this.updated=new ue(()=>{let e=qe.forUris(()=>this.ignorePathCasing);return e.fill(this.rawUpdated.map(t=>[t,!0])),e});this.deleted=new ue(()=>{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 Ls(n,e,t){return!n||!e||n===e||e.length>n.length?!1:(e.charAt(e.length-1)!==ne&&(e+=ne),t?Pt(n,e):n.indexOf(e)===0)}var Fs=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 jn(e)||(e=0),e<n.KB?ce(2501,null,e.toFixed(0)):e<n.MB?ce(2503,null,(e/n.KB).toFixed(2)):e<n.GB?ce(2504,null,(e/n.MB).toFixed(2)):e<n.TB?ce(2502,null,(e/n.GB).toFixed(2)):ce(2505,null,(e/n.TB).toFixed(2))}};function En(n){return typeof n.correlationId=="number"}function gt(n){return n.recursive===!0}var Us=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 Rn(n){let e=new Wr;for(let t of n)e.processEvent(t);return e.coalesce()}function tl(n,e){return typeof e=="string"&&!e.startsWith(Me)&&!Zt(e)?{base:n,pattern:e}:e}function vt(n,e,t){let r=[];for(let i of e)r.push(Ss(tl(n,i),{ignoreCase:t}));return r}var Wr=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=>Ls(r.resource.fsPath,i,!C))?!1:(t.push(r.resource.fsPath),!0)).concat(e)}};function wn(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 Pn(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 qs from"@parcel/watcher";import{promises as Br}from"fs";import{tmpdir as al,homedir as ll}from"os";function Cr(n,e){return e&&(n.stack||n.stacktrace)?ce(116,null,Ws(n),Os(n.stack)||Os(n.stacktrace)):Ws(n)}function Os(n){return Array.isArray(n)?n.join(`
`):n}function Ws(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"?ce(115,null,n.message):n.message||ce(113,null)}function Dn(n=null,e=!1){if(!n)return ce(113,null);if(Array.isArray(n)){let t=ei(n),r=Dn(t[0],e);return t.length>1?ce(114,null,r,t.length):r}if(Kn(n))return n;if(n.detail){let t=n.detail;if(t.error)return Cr(t.error,e);if(t.exception)return Cr(t.exception,e)}return n.stack?Cr(n,e):n.message?n.message:ce(113,null)}import{watchFile as sl,unwatchFile as ol}from"fs";function Cs(n){return qr(n,0)}function qr(n,e){switch(typeof n){case"object":return n===null?De(349,e):Array.isArray(n)?rl(n,e):il(n,e);case"string":return Ms(n,e);case"boolean":return nl(n,e);case"number":return De(n,e);case"undefined":return De(937,e);default:return De(617,e)}}function De(n,e){return(e<<5)-e+n|0}function nl(n,e){return De(n?433:863,e)}function Ms(n,e){e=De(149417,e);for(let t=0,r=n.length;t<r;t++)e=De(n.charCodeAt(t),e);return e}function rl(n,e){return e=De(104579,e),n.reduce((t,r)=>qr(r,t),e)}function il(n,e){return e=De(181387,e),Object.keys(n).sort().reduce((t,r)=>(t=Ms(r,t),qr(n[r],t)),e)}function Mr(n,e,t=32){let r=t-e,i=~((1<<r)-1);return(n<<e|(i&n)>>>r)>>>0}function Mt(n,e=32){return n instanceof ArrayBuffer?cs(z.wrap(new Uint8Array(n))):(n>>>0).toString(16).padStart(e/4,"0")}var Ns=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(Gi(o))if(a+1<t){let u=e.charCodeAt(a+1);fr(u)?(a++,l=Hi(o,u)):l=65533}else{s=o;break}else fr(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()),Mt(this._h0)+Mt(this._h1)+Mt(this._h2)+Mt(this._h3)+Mt(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,Mr(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=Mr(r,5)+l+a+u+e.getUint32(c*4,!1)&4294967295,a=o,o=s,s=Mr(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 bt=class extends B{constructor(){super();this._onDidChangeFile=this._register(new S);this.onDidChangeFile=this._onDidChangeFile.event;this._onDidLogMessage=this._register(new S);this.onDidLogMessage=this._onDidLogMessage.event;this._onDidWatchFail=this._register(new S);this.onDidWatchFail=this._onDidWatchFail.event;this.correlatedWatchRequests=new Map;this.nonCorrelatedWatchRequests=new Map;this.suspendedWatchRequests=this._register(new Le);this.suspendedWatchRequestsWithPolling=new Set;this.updateWatchersDelayer=this._register(new an(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 En(t)}computeId(t){return this.isCorrelated(t)?t.correlationId:Cs(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=>me(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{sl(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($(()=>{this.trace(`stopping fs.watchFile() on ${t.path} (correlationId: ${t.correlationId})`);try{ol(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: ${Pn(t.filter)}, correlationId: ${typeof t.correlationId=="number"?t.correlationId:"<none>"})`}async setVerboseLogging(t){this.verboseLogging=t}};var Sn=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 S);this.onDidStop=this._onDidStop.event;this._onDidFail=this._register(new S);this.onDidFail=this._onDidFail.event;this.didFail=!1;this.didStop=!1;this.subscriptions=new Map;let l=!C;this.includes=this.request.includes?vt(this.request.path,this.request.includes,l):void 0,this.excludes=this.request.excludes?vt(this.request.path,this.request.excludes,l):void 0,this._register($(()=>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),$(()=>{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()}}},An=class n extends bt{constructor(){super();this._onDidError=this._register(new S);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:[Z(ll(),"Library","Containers")],linux:[]}}static{this.PARCEL_WATCHER_BACKEND=j?"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($(()=>{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&&ht(o.request.excludes,s.excludes)&&ht(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 re,o=new de,a=rn(al(),"vscode-watcher-snapshot"),l=new Sn(o.p,t,i,s.token,new tt(m=>this.handleParcelEvents(m,l),n.FILE_CHANGES_HANDLER_DELAY),async()=>{s.dispose(!0),l.worker.flush(),l.worker.dispose(),h.dispose(),await Br.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,h=new et(async()=>{if(f++,s.token.isCancellationRequested)return;let m=qs;try{if(f>1){let y=await m.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 m.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&&h.schedule()},r);h.schedule(0)}async startWatching(t,r=0){let i=new re,s=new de,o=new Sn(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 qs.subscribe(a,(f,h)=>{o.token.isCancellationRequested||(f&&this.onUnexpectedError(f,t),this.onParcelEvents(h,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=Rn(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 mn(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)ve&&(o.path=rt(o.path)),j&&r.path.length<=3&&(o.path=be(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&&Dt(a.resource.fsPath,r.request.path,!C),wn(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=Dn(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: ${Dn(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 Br.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 Br.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(L.once(i.onDidStop)(async o=>{await o.joinRestart,!s.isDisposed&&r(!0)})),s.add(L.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 ul,promises as cl}from"fs";var kn=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 re;this.realPath=new ue(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=vt(this.request.path,this.request.excludes,l),this.includes=this.request.includes?vt(this.request.path,this.request.includes,l):void 0,this.filter=En(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 cl.stat(this.request.path);if(this.cts.token.isCancellationRequested)return;await Jn(this.doWatch(t.isDirectory()),this._store)}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 Jn(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(ve&&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 re(this.cts.token);r.add($(()=>s.dispose(!0)));let o=new q;r.add(o);try{let a=U.file(this.request.path),l=Ye(i),u=ul(i);o.add($(()=>{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($(()=>{for(let[,f]of c)f.dispose();c.clear()})),u.on("error",(f,h)=>{s.token.isCancellationRequested||(this.error(`Failed to watch ${i} for changes using fs.watch() (${f}, ${h})`),this.notifyWatchFailed())}),u.on("change",(f,h)=>{if(s.token.isCancellationRequested)return;this.verboseLogging&&this.traceWithCorrelation(`[raw] ["${f}"] ${h}`);let m="";if(h&&(m=h.toString(),ve&&(m=rt(m))),!(!m||f!=="change"&&f!=="rename"))if(t)if(f==="rename"){c.get(m)?.dispose();let y=setTimeout(async()=>{if(c.delete(m),Dt(m,l,!C)&&!await he.exists(i)){this.onWatchedPathDeleted(a);return}if(s.token.isCancellationRequested)return;let k=await this.existsChildStrictCase(Z(i,m));if(s.token.isCancellationRequested)return;let O;k?d.has(m)?O=0:(O=1,d.add(m)):(d.delete(m),O=2),this.onFileChange({resource:Tr(a,m),type:O,cId:this.request.correlationId})},n.FILE_DELETE_HANDLER_DELAY);c.set(m,$(()=>clearTimeout(y)))}else{let y;d.has(m)?y=0:(y=1,d.add(m)),this.onFileChange({resource:Tr(a,m),type:y,cId:this.request.correlationId})}else if(f==="rename"||!Dt(m,l,!C)){let y=setTimeout(async()=>{let k=await he.exists(i);s.token.isCancellationRequested||(k?(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($(()=>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=Rn(t),i=[];for(let o of r){if(wn(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 Fn=class extends bt{constructor(t){super();this.recursiveWatcher=t;this.onDidError=L.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&&ht(o.request.excludes,s.excludes)&&ht(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 kn(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 Ks(n,e,t,r){let i=[],s=Un(n.filter(M=>gt(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=Bs(s,t),d=js(t),c=Un(n.filter(M=>!gt(M))),f=c.filter(M=>r.isSuspended(M)===!1),h=c.filter(M=>r.isSuspended(M)==="polling"),m=c.filter(M=>r.isSuspended(M)===!0),y=Bs(c,r),k=zs(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: ${k.active}, failed: ${k.failed}, reusing: ${k.reusing}`),i.push(`- I/O Handles Impact:     total: ${u.polling+y.polling+d.active+k.active}`),i.push(`
[Recursive Requests (${s.length}, suspended: ${u.suspended}, polling: ${u.polling})]:`);let O=[];for(let M of[o,a,l].flat())Vs(O,M,t);i.push(...Ln(O));let ie=[];dl(ie,t),i.push(...Ln(ie)),i.push(`
[Non-Recursive Requests (${c.length}, suspended: ${y.suspended}, polling: ${y.polling})]:`);let Y=[];for(let M of[f,h,m].flat())Vs(Y,M,r);i.push(...Ln(Y));let ye=[];return fl(ye,r),i.push(...Ln(ye)),`

[File Watcher] request stats:

${i.join(`
`)}

`}function Ln(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 Bs(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 js(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 zs(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 Un(n){return n.sort((e,t)=>{let r=$s(e)?e.path:e.request.path,i=$s(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 $s(n){return typeof n?.path=="string"}function Vs(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(" ")+" ":""}(${$r(e)})`)}function $r(n){return`excludes: ${n.excludes.length>0?n.excludes:"<none>"}, includes: ${n.includes&&n.includes.length>0?JSON.stringify(n.includes):"<all>"}, filter: ${Pn(n.filter)}, correlationId: ${typeof n.correlationId=="number"?n.correlationId:"<none>"}`}function dl(n,e){let t=Un(Array.from(e.watchers)),{active:r,failed:i,stopped:s}=js(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(" ")+" ":""}(${$r(o.request)})`)}}function fl(n,e){let t=Un(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}=zs(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(" ")+" ":""}(${$r(u.request)})`)}}var On=class extends B{constructor(){super();this.recursiveWatcher=this._register(new An);this.nonRecursiveWatcher=this._register(new Fn(this.recursiveWatcher));this.onDidChangeFile=L.any(this.recursiveWatcher.onDidChangeFile,this.nonRecursiveWatcher.onDidChangeFile);this.onDidError=L.any(this.recursiveWatcher.onDidError,this.nonRecursiveWatcher.onDidError);this._onDidLogMessage=this._register(new S);this.onDidLogMessage=L.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=>gt(i)))}catch(i){r=i}try{await this.nonRecursiveWatcher.watch(t.filter(i=>!gt(i)))}catch(i){r||(r=i)}if(r)throw r}async setVerboseLogging(t){t&&this.requests.length>0&&this._onDidLogMessage.fire({type:"trace",message:Ks(this.requests,this.failedRecursiveRequests,this.recursiveWatcher,this.nonRecursiveWatcher)}),await dn.settled([this.recursiveWatcher.setVerboseLogging(t),this.nonRecursiveWatcher.setVerboseLogging(t)])}async stop(){await dn.settled([this.recursiveWatcher.stop(),this.nonRecursiveWatcher.stop()])}};var Vr;Tn(process)?Vr=new yn:Vr=new bn("watcher");var pl=new On;Vr.registerChannel("watcher",Pr.fromService(pl,new q));
//# sourceMappingURL=https://main.vscode-cdn.net/sourcemaps/93cfdd489c3b228840d0f86ec77c3636277c93ea/core/vs/platform/files/node/watcher/watcherMain.js.map
