code-server
Version:
Run VS Code on a remote server.
433 lines • 168 kB
JavaScript
/*!--------------------------------------------------------
* 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 Pt=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?Ne.isErrorNoTelemetry(e)?new Ne(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)}},In=new Pt;function ue(n){At(n)||In.onUnexpectedError(n)}function En(n){At(n)||In.onUnexpectedExternalError(n)}function Je(n){if(n instanceof Error){let{name:e,message:t,cause:r}=n,i=n.stacktrace||n.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:Ne.isErrorNoTelemetry(n),cause:r?Je(r):void 0,code:n.code}}return n}var kt="Canceled";function At(n){return n instanceof Pe?!0:n instanceof Error&&n.name===kt&&n.message===kt}var Pe=class extends Error{constructor(){super(kt),this.name=this.message}},yn=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 Ne=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"}},Ie=class n extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,n.prototype)}};function kn(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 Rn,Pn,wn=class{constructor(e,t){this.toKey=t;this._map=new Map;this[Rn]="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))}[(Pn=Symbol.iterator,Rn=Symbol.toStringTag,Pn)](){return this.values()}};function Hr(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 An=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=Hr(this._array,e,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=t+1,t===-1?void 0:this._array[t]}};var Dn;(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})(Dn||={});function Ln(n,e){return(t,r)=>e(n(t),n(r))}var Un=(n,e)=>n-e;var Sn=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||Dn.isGreaterThan(e(i,t)))&&(r=!1,t=i),!0)),t}};var St=class{constructor(e,t){this.uri=e;this.value=t}};function Gr(n){return Array.isArray(n)}var Fn,Me=class n{constructor(e,t){this[Fn]="ResourceMap";if(e instanceof n)this.map=new Map(e.map),this.toKey=t??n.defaultToKey;else if(Gr(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 St(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]}*[(Fn=Symbol.toStringTag,Symbol.iterator)](){for(let[,e]of this.map)yield[e.uri,e.value]}},Nn,On=class{constructor(e,t){this[Nn]="ResourceSet";!e||typeof e=="function"?this._map=new Me(e):(this._map=new Me(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()}[(Nn=Symbol.toStringTag,Symbol.iterator)](){return this.keys()}};var Mn,Dt=class{constructor(){this[Mn]="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}[(Mn=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)}},Lt=class extends Dt{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))}},Ce=class extends Lt{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}};var et=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 Wn(n){return!!n&&typeof n[Symbol.iterator]=="function"}var Ut;(J=>{function n(v){return!!v&&typeof v=="object"&&typeof v[Symbol.iterator]=="function"}J.is=n;let e=Object.freeze([]);function t(){return e}J.empty=t;function*r(v){yield v}J.single=r;function i(v){return n(v)?v:r(v)}J.wrap=i;function s(v){return v??e}J.from=s;function*o(v){for(let T=v.length-1;T>=0;T--)yield v[T]}J.reverse=o;function a(v){return!v||v[Symbol.iterator]().next().done===!0}J.isEmpty=a;function l(v){return v[Symbol.iterator]().next().value}J.first=l;function u(v,T){let R=0;for(let q of v)if(T(q,R++))return!0;return!1}J.some=u;function d(v,T){let R=0;for(let q of v)if(!T(q,R++))return!1;return!0}J.every=d;function c(v,T){for(let R of v)if(T(R))return R}J.find=c;function*f(v,T){for(let R of v)T(R)&&(yield R)}J.filter=f;function*x(v,T){let R=0;for(let q of v)yield T(q,R++)}J.map=x;function*S(v,T){let R=0;for(let q of v)yield*T(q,R++)}J.flatMap=S;function*m(...v){for(let T of v)Wn(T)?yield*T:yield T}J.concat=m;function k(v,T,R){let q=R;for(let se of v)q=T(q,se);return q}J.reduce=k;function V(v){let T=0;for(let R of v)T++;return T}J.length=V;function*F(v,T,R=v.length){for(T<-v.length&&(T=0),T<0&&(T+=v.length),R<0?R+=v.length:R>v.length&&(R=v.length);T<R;T++)yield v[T]}J.slice=F;function E(v,T=Number.POSITIVE_INFINITY){let R=[];if(T===0)return[R,v];let q=v[Symbol.iterator]();for(let se=0;se<T;se++){let te=q.next();if(te.done)return[R,J.empty()];R.push(te.value)}return[R,{[Symbol.iterator](){return q}}]}J.consume=E;async function L(v){let T=[];for await(let R of v)T.push(R);return T}J.asyncToArray=L;async function N(v){let T=[];for await(let R of v)T=T.concat(R);return T}J.asyncToArrayFlat=N})(Ut||={});var Xr=!1,ke=null;var Bn=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(x=>typeof x=="string"?x===c[0]:c[0].match(x));)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 et;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(Ln(l=>l.idx,Un));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 S=s.get(u.slice(0,c).join(`
`)),m=kn([...S].map(k=>i(k)[c]),k=>k);delete m[u[c]];for(let[k,V]of Object.entries(m))V&&d.unshift(` - stacktraces of ${V.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 Yr(n){ke=n}if(Xr){let n="__is_disposable_tracked__";Yr(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!==ne.None)try{e[n]=!0}catch{}}markAsDisposed(e){if(e&&e!==ne.None)try{e[n]=!0}catch{}}markAsSingleton(e){}})}function Nt(n){return ke?.trackDisposable(n),n}function Mt(n){ke?.markAsDisposed(n)}function Ot(n,e){ke?.setParent(n,e)}function Zr(n,e){if(ke)for(let t of n)ke.setParent(t,e)}function Vn(n){if(Ut.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 qn(...n){let e=Ae(()=>Vn(n));return Zr(n,e),e}var Ft=class{constructor(e){this._isDisposed=!1,this._fn=e,Nt(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,Mt(this),this._fn()}}};function Ae(n){return new Ft(n)}var he=class n{constructor(){this._toDispose=new Set;this._isDisposed=!1;Nt(this)}static{this.DISABLE_DISPOSED_WARNING=!1}dispose(){this._isDisposed||(Mt(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{Vn(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e||e===ne.None)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return Ot(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)&&Ot(e,null)}assertNotDisposed(){this._isDisposed&&ue(new Ie("Object disposed"))}},ne=class{constructor(){this._store=new he;Nt(this),Ot(this._store,this)}static{this.None=Object.freeze({dispose(){}})}dispose(){Mt(this),this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};var Kn=class n{static{this.Undefined=new n(void 0)}constructor(e){this.element=e,this.next=n.Undefined,this.prev=n.Undefined}};function Wt(){return globalThis._VSCODE_NLS_LANGUAGE}var io=Wt()==="pseudo"||typeof document<"u"&&document.location&&typeof document.location.hash=="string"&&document.location.hash.indexOf("pseudo=true")>=0;var Se="en",rt=!1,it=!1,We=!1,Cr=!1,jn=!1,Vt=!1,ei=!1,ti=!1,ni=!1,ri=!1,tt,nt=Se,$n=Se,ii,ce,de=globalThis,X;typeof de.vscode<"u"&&typeof de.vscode.process<"u"?X=de.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(X=process);var zn=typeof X?.versions?.electron=="string",si=zn&&X?.type==="renderer";if(typeof X=="object"){rt=X.platform==="win32",it=X.platform==="darwin",We=X.platform==="linux",Cr=We&&!!X.env.SNAP&&!!X.env.SNAP_REVISION,ei=zn,ni=!!X.env.CI||!!X.env.BUILD_ARTIFACTSTAGINGDIRECTORY||!!X.env.GITHUB_WORKSPACE,tt=Se,nt=Se;let n=X.env.VSCODE_NLS_CONFIG;if(n)try{let e=JSON.parse(n);tt=e.userLocale,$n=e.osLocale,nt=e.resolvedLanguage||Se,ii=e.languagePack?.translationsConfigFile}catch{}jn=!0}else typeof navigator=="object"&&!si?(ce=navigator.userAgent,rt=ce.indexOf("Windows")>=0,it=ce.indexOf("Macintosh")>=0,ti=(ce.indexOf("Macintosh")>=0||ce.indexOf("iPad")>=0||ce.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,We=ce.indexOf("Linux")>=0,ri=ce?.indexOf("Mobi")>=0,Vt=!0,nt=Wt()||Se,tt=navigator.language.toLowerCase(),$n=tt):console.error("Unable to resolve platform.");var Bt=0;it?Bt=1:rt?Bt=3:We&&(Bt=2);var oe=rt,Hn=it,st=We;var Gn=jn;var ot=Vt,oi=Vt&&typeof de.importScripts=="function",Qn=oi?de.origin:void 0;var ee=ce,ge=nt,ai;(r=>{function n(){return ge}r.value=n;function e(){return ge.length===2?ge==="en":ge.length>=3?ge[0]==="e"&&ge[1]==="n"&&ge[2]==="-":!1}r.isDefaultVariant=e;function t(){return ge==="en"}r.isDefault=t})(ai||={});var li=typeof de.postMessage=="function"&&!de.importScripts,Xn=(()=>{if(li){let n=[];de.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}),de.postMessage({vscodeScheduleAsyncWork:r},"*")}}return n=>setTimeout(n)})();var ui=!!(ee&&ee.indexOf("Chrome")>=0),so=!!(ee&&ee.indexOf("Firefox")>=0),oo=!!(!ui&&ee&&ee.indexOf("Safari")>=0),ao=!!(ee&&ee.indexOf("Edg/")>=0),lo=!!(ee&&ee.indexOf("Android")>=0),uo=!!(ee&&ee.indexOf("Electron")>=0);var Ee,qt=globalThis.vscode;if(typeof qt<"u"&&typeof qt.process<"u"){let n=qt.process;Ee={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"?Ee={get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd(){return process.env.VSCODE_CWD||process.cwd()}}:Ee={get platform(){return oe?"win32":Hn?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};var Be=Ee.cwd,at=Ee.env,Yn=Ee.platform,po=Ee.arch;var fi=globalThis.performance.now.bind(globalThis.performance),lt=class n{static create(e){return new n(e)}constructor(e){this._now=e===!1?Date.now:fi,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 Zn=!1,mi=!1,hi=100,Jn=6e4;function Cn(){return!!at.VSCODE_DEV}var Ve;(C=>{C.None=()=>ne.None;function e(g){if(mi){let{onDidAddListener:p}=g,h=Le.create(),b=0;g.onDidAddListener=()=>{++b===2&&(console.warn("snapshotted emitter LIKELY used public and SHOULD HAVE BEEN created with DisposableStore. snapshotted here"),h.print()),p?.()}}}function t(g,p,h){return x(g,()=>{},0,void 0,p??!0,void 0,h)}C.defer=t;function r(g){return(p,h=null,b)=>{let _=!1,y;return y=g(w=>{if(!_)return y?y.dispose():_=!0,p.call(h,w)},null,b),_&&y.dispose(),y}}C.once=r;function i(g,p){return C.once(C.filter(g,p))}C.onceIf=i;function s(g,p,h){return c((b,_=null,y)=>g(w=>b.call(_,p(w)),null,y),h)}C.map=s;function o(g,p,h){return c((b,_=null,y)=>g(w=>{p(w),b.call(_,w)},null,y),h)}C.forEach=o;function a(g,p,h){return c((b,_=null,y)=>g(w=>p(w)&&b.call(_,w),null,y),h)}C.filter=a;function l(g){return g}C.signal=l;function u(...g){return(p,h=null,b)=>{let _=qn(...g.map(y=>y(w=>p.call(h,w))));return f(_,b)}}C.any=u;function d(g,p,h,b){let _=h;return s(g,y=>(_=p(_,y),_),b)}C.reduce=d;function c(g,p){let h,b={onWillAddFirstListener(){h=g(_.fire,_)},onDidRemoveLastListener(){h?.dispose()}};p||e(b);let _=new Q(b);return p?.add(_),_.event}function f(g,p){return p instanceof Array?p.push(g):p&&p.add(g),g}function x(g,p,h=100,b=!1,_=!1,y,w){let K,U,H,$=0,G,le={leakWarningThreshold:y,onWillAddFirstListener(){K=g(vn=>{$++,U=p(U,vn),b&&!H&&(ye.fire(U),U=void 0),G=()=>{let xn=U;U=void 0,H=void 0,(!b||$>1)&&ye.fire(xn),$=0},typeof h=="number"?(H&&clearTimeout(H),H=setTimeout(G,h)):H===void 0&&(H=null,queueMicrotask(G))})},onWillRemoveListener(){_&&$>0&&G?.()},onDidRemoveLastListener(){G=void 0,K.dispose()}};w||e(le);let ye=new Q(le);return w?.add(ye),ye.event}C.debounce=x;function S(g,p=0,h,b){return C.debounce(g,(_,y)=>_?(_.push(y),_):[y],p,void 0,h??!0,void 0,b)}C.accumulate=S;function m(g,p,h=100,b=!0,_=!0,y,w){let K,U,H,$=0,G={leakWarningThreshold:y,onWillAddFirstListener(){K=g(ye=>{$++,U=p(U,ye),H===void 0&&(b&&(le.fire(U),U=void 0,$=0),typeof h=="number"?H=setTimeout(()=>{_&&$>0&&le.fire(U),U=void 0,H=void 0,$=0},h):(H=0,queueMicrotask(()=>{_&&$>0&&le.fire(U),U=void 0,H=void 0,$=0})))})},onDidRemoveLastListener(){K.dispose()}};w||e(G);let le=new Q(G);return w?.add(le),le.event}C.throttle=m;function k(g,p=(b,_)=>b===_,h){let b=!0,_;return a(g,y=>{let w=b||!p(y,_);return b=!1,_=y,w},h)}C.latch=k;function V(g,p,h){return[C.filter(g,p,h),C.filter(g,b=>!p(b),h)]}C.split=V;function F(g,p,h=!1,b=[],_){let y=b.slice(),w;Cn()&&(w={stack:Le.create(),timerId:setTimeout(()=>{y&&y.length>0&&w&&!w.warned&&(w.warned=!0,console.warn(`[Event.buffer][${p}] potential LEAK detected: ${y.length} events buffered for ${Jn/1e3}s without being consumed. Buffered here:`),w.stack.print())},Jn),warned:!1},_&&_.add(Ae(()=>clearTimeout(w.timerId))));let K=()=>{w&&clearTimeout(w.timerId)},U=g(G=>{y?(y.push(G),Cn()&&w&&!w.warned&&y.length>=hi&&(w.warned=!0,console.warn(`[Event.buffer][${p}] potential LEAK detected: ${y.length} events buffered without being consumed. Buffered here:`),w.stack.print())):$.fire(G)});_&&_.add(U);let H=()=>{y?.forEach(G=>$.fire(G)),y=null,K()},$=new Q({onWillAddFirstListener(){U||(U=g(G=>$.fire(G)),_&&_.add(U))},onDidAddFirstListener(){y&&(h?setTimeout(H):H())},onDidRemoveLastListener(){U&&U.dispose(),U=null,K()}});return _&&_.add($),$.event}C.buffer=F;function E(g,p){return(b,_,y)=>{let w=p(new N);return g(function(K){let U=w.evaluate(K);U!==L&&b.call(_,U)},void 0,y)}}C.chain=E;let L=Symbol("HaltChainable");class N{constructor(){this.steps=[]}map(p){return this.steps.push(p),this}forEach(p){return this.steps.push(h=>(p(h),h)),this}filter(p){return this.steps.push(h=>p(h)?h:L),this}reduce(p,h){let b=h;return this.steps.push(_=>(b=p(b,_),b)),this}latch(p=(h,b)=>h===b){let h=!0,b;return this.steps.push(_=>{let y=h||!p(_,b);return h=!1,b=_,y?_:L}),this}evaluate(p){for(let h of this.steps)if(p=h(p),p===L)break;return p}}function J(g,p,h=b=>b){let b=(...K)=>w.fire(h(...K)),_=()=>g.on(p,b),y=()=>g.removeListener(p,b),w=new Q({onWillAddFirstListener:_,onDidRemoveLastListener:y});return w.event}C.fromNodeEventEmitter=J;function v(g,p,h=b=>b){let b=(...K)=>w.fire(h(...K)),_=()=>g.addEventListener(p,b),y=()=>g.removeEventListener(p,b),w=new Q({onWillAddFirstListener:_,onDidRemoveLastListener:y});return w.event}C.fromDOMEventEmitter=v;function T(g,p){let h,b,_=new Promise(y=>{b=r(g)(y),Ht(b,p),h=()=>{tr(b,p)}});return _.cancel=h,p&&_.finally(()=>tr(b,p)),_}C.toPromise=T;function R(g,p){return g(h=>p.fire(h))}C.forward=R;function q(g,p,h){return p(h),g(b=>p(b))}C.runAndSubscribe=q;class se{constructor(p,h){this._observable=p;this._counter=0;this._hasChanged=!1;let b={onWillAddFirstListener:()=>{p.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{p.removeObserver(this)}};h||e(b),this.emitter=new Q(b),h&&h.add(this.emitter)}beginUpdate(p){this._counter++}handlePossibleChange(p){}handleChange(p,h){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 te(g,p){return new se(g,p).emitter.event}C.fromObservable=te;function xe(g){return(p,h,b)=>{let _=0,y=!1,w={beginUpdate(){_++},endUpdate(){_--,_===0&&(g.reportChanges(),y&&(y=!1,p.call(h)))},handlePossibleChange(){},handleChange(){y=!0}};g.addObserver(w),g.reportChanges();let K={dispose(){g.removeObserver(w)}};return Ht(K,b),K}}C.fromObservableLight=xe})(Ve||={});var Kt=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 lt,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}}},er=-1;var gi=1;function nr(){return(gi++).toString(16).padStart(3,"0")}var $t=class{constructor(e,t,r=nr()){this._errorHandler=e;this.threshold=t;this.name=r;this._warnCountdown=0}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=e.value,s=this._stacks.get(i)||0;if(this._stacks.set(i,s+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=r*.5;let[o,a]=this.getMostFrequentStack(),l=/^[0-9a-f]+$/i.test(this.name)?void 0:this.name,u=`[${this.name}] potential listener LEAK detected, having ${t} listeners already. MOST frequent listener (${a}):`;console.warn(u),console.warn(o);let d=a/t>.3?"dominated":"popular",c=new ut(d,u,o,t,l);this._errorHandler(c)}return()=>{let o=this._stacks.get(i)||0;o<=1?this._stacks.delete(i):this._stacks.set(i,o-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}},Le=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(`
`))}},ut=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"}},jt=class extends ut{constructor(e,t,r,i,s){super(e,t,r,i,s),this.name="ListenerRefusalError"}},bi=0,De=class{constructor(e){this.value=e;this.id=bi++}},Ti=2,_i=(n,e)=>{if(n instanceof De)e(n);else for(let t=0;t<n.length;t++){let r=n[t];r&&e(r)}},Q=class{constructor(e){this._size=0;this._options=e,(er>0||this._options?.leakWarningThreshold)&&(this._leakWarningThreshold=this._options?.leakWarningThreshold??er,this._leakWarningName=this._options?.leakWarningName??nr(),this._leakWarningErrorHandler=this._options?.onListenerError??ue),this._perfMon=this._options?._profName?new Kt(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}_getLeakageMonitor(){if(!(this._leakWarningThreshold===void 0||this._leakWarningName===void 0||this._leakWarningErrorHandler===void 0))return this._leakageMon??=new $t(this._leakWarningErrorHandler,this._leakWarningThreshold,this._leakWarningName)}dispose(){if(!this._disposed){if(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners){if(Zn){let e=this._listeners;queueMicrotask(()=>{_i(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._leakWarningThreshold!==void 0&&this._size>this._leakWarningThreshold**2){let l=this._getLeakageMonitor();if(l){let u=`[${l.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${l.threshold})`;console.warn(u);let d=l.getMostFrequentStack()??["UNKNOWN stack",-1],c=d[1]/this._size>.3?"dominated":"popular",f=new jt(c,`${u}. HINT: Stack shows most frequent listener (${d[1]}-times)`,d[0],this._size,this._options?.leakWarningName);return(this._options?.onListenerError||ue)(f),ne.None}}if(this._disposed)return ne.None;t&&(e=e.bind(t));let i=new De(e),s,o;if(this._leakWarningThreshold!==void 0&&this._size>=Math.ceil(this._leakWarningThreshold*.2)){let l=this._getLeakageMonitor();l&&(i.stack=Le.create(),s=l.check(i.stack,this._size+1))}Zn&&(i.stack=o??Le.create()),this._listeners?this._listeners instanceof De?(this._deliveryQueue??=new zt,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=Ae(()=>{s?.(),this._removeListener(i)});return Ht(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*Ti<=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||ue;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 De)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 zt=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}};function Ht(n,e){e instanceof he?e.add(n):Array.isArray(e)&&e.push(n)}function tr(n,e){if(e instanceof he)e.delete(n);else if(Array.isArray(e)){let t=e.indexOf(n);t!==-1&&e.splice(t,1)}n.dispose()}var rr=Object.freeze(function(n,e){let t=setTimeout(n.bind(e),0);return{dispose(){clearTimeout(t)}}}),Gt;(r=>{function n(i){return i===r.None||i===r.Cancelled||i instanceof Ue?!0:!i||typeof i!="object"?!1:typeof i.isCancellationRequested=="boolean"&&typeof i.onCancellationRequested=="function"}r.isCancellationToken=n,r.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Ve.None}),r.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:rr})})(Gt||={});var Ue=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?rr:(this._emitter||(this._emitter=new Q),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},Oe=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 Ue),this._token}cancel(){this._token?this._token instanceof Ue&&this._token.cancel():this._token=Gt.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof Ue&&this._token.dispose():this._token=Gt.None}};function vi(n){return n}var ct=class{constructor(e,t){this.lastCache=void 0;this.lastArgKey=void 0;typeof e=="function"?(this._fn=e,this._computeKey=vi):(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 be=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 dt(n){return n.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function lr(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,t={}){if(!n)throw new Error("Cannot create regex from empty string");e||(n=dt(n)),t.wholeWord&&(/\B/.test(n.charAt(0))||(n="\\b"+n),/\B/.test(n.charAt(n.length-1))||(n=n+"\\b"));let r="";return t.global&&(r+="g"),t.matchCase||(r+="i"),t.multiline&&(r+="m"),t.unicode&&(r+="u"),new RegExp(n,r)}function cr(n,e){return n<e?-1:n>e?1:0}function xi(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 Qt(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 xi(n.toLowerCase(),e.toLowerCase(),t,r,i,s);ir(l)&&(l-=32),ir(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 ir(n){return n>=97&&n<=122}function Xt(n){return n>=65&&n<=90}function we(n,e){return n.length===e.length&&Qt(n,e)===0}function Ke(n,e){let t=e.length;return t<=n.length&&Qt(n,e,0,t)===0}function dr(n,e){let t=n.length,r=t-e.length;return r>=0&&Qt(n,e,r,t)===0}var yi=/(?:\x1b\[|\x9b)[=?>!]?[\d;:]*["$#'* ]?[a-zA-Z@^`{}|~]/,Ii=/(?:\x1b\]|\x9d).*?(?:\x1b\\|\x07|\x9c)/,Ei=/\x1b(?:[ #%\(\)\*\+\-\.\/]?[a-zA-Z0-9\|}~@])/,Vo=new RegExp("(?:"+[yi.source,Ii.source,Ei.source].join("|")+")","g");var qo=String.fromCharCode(65279);var sr=class n{static{this._INSTANCE=null}static getInstance(){return n._INSTANCE||(n._INSTANCE=new n),n._INSTANCE}constructor(){this._data=wi()}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 wi(){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 or=class n{constructor(e){this.confusableDictionary=e}static{this.ambiguousCharacterData=new be(()=>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 ct(e=>{let t=e.split(",");function r(c){let f=new Map;for(let x=0;x<c.length;x+=2)f.set(c[x],c[x+1]);return f}function i(c,f){let x=new Map(c);for(let[S,m]of f)x.set(S,m);return x}function s(c,f){if(!c)return f;let x=new Map;for(let[S,m]of c)f.has(S)&&x.set(S,m);return x}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 be(()=>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())}},ar=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()}};var Yt="default",Pi="$initialize";var Zt=class{constructor(e,t,r,i,s){this.vsWorker=e;this.req=t;this.channel=r;this.method=i;this.args=s;this.type=0}},ft=class{constructor(e,t,r,i){this.vsWorker=e;this.seq=t;this.res=r;this.err=i;this.type=1}},Jt=class{constructor(e,t,r,i,s){this.vsWorker=e;this.req=t;this.channel=r;this.eventName=i;this.arg=s;this.type=2}},Ct=class{constructor(e,t,r){this.vsWorker=e;this.req=t;this.event=r;this.type=3}},en=class{constructor(e,t){this.vsWorker=e;this.req=t;this.type=4}},tn=class{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}async sendMessage(e,t,r){let i=String(++this._lastSentReq);return new Promise((s,o)=>{this._pendingReplies[i]={resolve:s,reject:o},this._send(new Zt(this._workerId,i,e,t,r))})}listen(e,t,r){let i=null,s=new Q({onWillAddFirstListener:()=>{i=String(++this._lastSentReq),this._pendingEmitters.set(i,s),this._send(new Jt(this._workerId,i,e,t,r))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(i),this._send(new en(this._workerId,i)),i=null}});return s.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}createProxyToRemoteChannel(e,t){let r={get:(i,s)=>(typeof s=="string"&&!i[s]&&(pr(s)?i[s]=o=>this.listen(e,s,o):fr(s)?i[s]=this.listen(e,s,void 0):s.charCodeAt(0)===36&&(i[s]=async(...o)=>(await t?.(),this.sendMessage(e,s,o)))),i[s])};return new Proxy(Object.create(null),r)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}let t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let r=e.err;if(e.err.$isError){let i=new Error;i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack,r=i}t.reject(r);return}t.resolve(e.res)}_handleRequestMessage(e){let t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(i=>{this._send(new ft(this._workerId,t,i,void 0))},i=>{i.detail instanceof Error&&(i.detail=Je(i.detail)),this._send(new ft(this._workerId,t,void 0,Je(i)))})}_handleSubscribeEventMessage(e){let t=e.req,r=this._handler.handleEvent(e.channel,e.eventName,e.arg)(i=>{this._send(new Ct(this._workerId,t,i))});this._pendingEvents.set(t,r)}_handleEventMessage(e){let t=this._pendingEmitters.get(e.req);if(t===void 0){console.warn("Got event for unknown req");return}t.fire(e.event)}_handleUnsubscribeEventMessage(e){let t=this._pendingEvents.get(e.req);if(t===void 0){console.warn("Got unsubscribe for unknown req");return}t.dispose(),this._pendingEvents.delete(e.req)}_send(e){let t=[];if(e.type===0)for(let r=0;r<e.args.length;r++){let i=e.args[r];i instanceof ArrayBuffer&&t.push(i)}else e.type===1&&e.res instanceof ArrayBuffer&&t.push(e.res);this._handler.sendMessage(e,t)}};function fr(n){return n[0]==="o"&&n[1]==="n"&&Xt(n.charCodeAt(2))}function pr(n){return/^onDynamic/.test(n)&&Xt(n.charCodeAt(9))}var pt=class{constructor(e,t){this._localChannels=new Map;this._remoteChannels=new Map;this._protocol=new tn({sendMessage:(r,i)=>{e(r,i)},handleMessage:(r,i,s)=>this._handleMessage(r,i,s),handleEvent:(r,i,s)=>this._handleEvent(r,i,s)}),this.requestHandler=t(this)}onmessage(e){this._protocol.handleMessage(e)}_handleMessage(e,t,r){if(e===Yt&&t===Pi)return this.initialize(r[0]);let i=e===Yt?this.requestHandler:this._localChannels.get(e);if(!i)return Promise.reject(new Error(`Missing channel ${e} on worker thread`));let s=i[t];if(typeof s!="function")return Promise.reject(new Error(`Missing method ${t} on worker thread channel ${e}`));try{return Promise.resolve(s.apply(i,r))}catch(o){return Promise.reject(o)}}_handleEvent(e,t,r){let i=e===Yt?this.requestHandler:this._localChannels.get(e);if(!i)throw new Error(`Missing channel ${e} on worker thread`);if(pr(t)){let s=i[t];if(typeof s!="function")throw new Error(`Missing dynamic event ${t} on request handler.`);let o=s.call(i,r);if(typeof o!="function")throw new Error(`Missing dynamic event ${t} on request handler.`);return o}if(fr(t)){let s=i[t];if(typeof s!="function")throw new Error(`Missing event ${t} on request handler.`);return s}throw new Error(`Malformed event name ${t}`)}setChannel(e,t){this._localChannels.set(e,t)}getChannel(e){let t=this._remoteChannels.get(e);return t===void 0&&(t=this._protocol.createProxyToRemoteChannel(e),this._remoteChannels.set(e,t)),t}async initialize(e){this._protocol.setWorkerId(e)}};var nn=!1;function ki(n){if(nn)throw new Error("WebWorker already initialized!");nn=!0;let e=new pt(t=>globalThis.postMessage(t),t=>n(t));return globalThis.onmessage=t=>{e.onmessage(t.data)},e}function mr(n){globalThis.onmessage=e=>{nn||ki(n)}}var Ai=65,Si=97,Di=90,Li=122,Re=46,j=47,Y=92,fe=58,Ui=63,mt=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 Oi(n,e){if(n===null||typeof n!="object")throw new mt(e,"Object",n)}function W(n,e){if(typeof n!="string")throw new mt(e,"string",n)}var Z=Yn==="win32";function P(n){return n===j||n===Y}function rn(n){return n===j}function pe(n){return n>=Ai&&n<=Di||n>=Si&&n<=Li}function ht(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)!==Re||i.charCodeAt(i.length-2)!==Re){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===Re&&a!==-1?++a:a=-1}return i}function Fi(n){return n?`${n[0]==="."?"":"."}${n}`:""}function hr(n,e){Oi(e,"pathObject");let t=e.dir||e.root,r=e.base||`${e.name||""}${Fi(e.ext)}`;return t?t===e.root?`${t}${r}`:`${t}${n}${r}`:r}var B={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],W(s,`paths[${i}]`),s.length===0)continue}else e.length===0?s=Be():(s=at[`=${e}`]||Be(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===Y)&&(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 x=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=`\\\\${x}\\${s.slice(f,c)}`,a=c)}}}else a=1;else pe(d)&&s.charCodeAt(1)===fe&&(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=ht(t,!r,"\\",P),r?`${e}\\${t}`:`${e}${t}`||"."},normalize(n){W(n,"path");let e=n.length;if(e===0)return".";let t=0,r,i=!1,s=n.charCodeAt(0);if(e===1)return rn(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 pe(s)&&n.charCodeAt(1)===fe&&(r=n.slice(0,2),t=2,e>2&&P(n.charCodeAt(2))&&(i=!0,t=3));let o=t<e?ht(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&&pe(o.charCodeAt(0))&&o.charCodeAt(1)===fe)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){W(n,"path");let e=n.length;if(e===0)return!1;let t=n.charCodeAt(0);return P(t)||e>2&&pe(t)&&n.charCodeAt(1)===fe&&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];W(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 B.normalize(e)},relative(n,e){if(W(n,"from"),W(e,"to"),n===e)return"";let t=B.resolve(n),r=B.resolve(e);if(t===r||(n=t.toLowerCase(),e=r.toLowerCase(),n===e))return"";if(t.length!==n.length||r.length!==e.length){let S=t.split("\\"),m=r.split("\\");S[S.length-1]===""&&S.pop(),m[m.length-1]===""&&m.pop();let k=S.length,V=m.length,F=k<V?k:V,E;for(E=0;E<F&&S[E].toLowerCase()===m[E].toLowerCase();E++);return E===0?r:E===F?V>F?m.slice(E).join("\\"):k>F?"..\\".repeat(k-1-E)+"..":"":"..\\".repeat(k-E)+m.slice(E).join("\\")}let i=0;for(;i<n.length&&n.charCodeAt(i)===Y;)i++;let s=n.length;for(;s-1>i&&n.charCodeAt(s-1)===Y;)s--;let o=s-i,a=0;for(;a<e.length&&e.charCodeAt(a)===Y;)a++;let l=e.length;for(;l-1>a&&e.charCodeAt(l-1)===Y;)l--;let u=l-a,d=o<u?o:u,c=-1,f=0;for(;f<d;f++){let S=n.charCodeAt(i+f);if(S!==e.charCodeAt(a+f))break;S===Y&&(c=f)}if(f!==d){if(c===-1)return r}else{if(u>d){if(e.charCodeAt(a+f)===Y)return r.slice(a+f+1);if(f===2)return r.slice(a+f)}o>d&&(n.charCodeAt(i+f)===Y?c=f:f===2&&(c=3)),c===-1&&(c=0)}let x="";for(f=i+c+1;f<=s;++f)(f===s||n.charCodeAt(f)===Y)&&(x+=x.length===0?"..":"\\..");return a+=c,x.length>0?`${x}${r.slice(a,l)}`:(r.charCodeAt(a)===Y&&++a,r.slice(a,l))},toNamespacedPath(n){if(typeof n!="string"||n.length===0)return n;let e=B.resolve(n);if(e.length<=2)return n;if(e.charCodeAt(0)===Y){if(e.charCodeAt(1)===Y){let t=e.charCodeAt(2);if(t!==Ui&&t!==Re)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(pe(e.charCodeAt(0))&&e.charCodeAt(1)===fe&&e.charCodeAt(2)===Y)return`\\\\?\\${e}`;return e},dirname(n){W(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 pe(i)&&n.charCodeAt(1)===fe&&(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&&W(e,"suffix"),W(n,"path");let t=0,r=-1,i=!0,s;if(n.length>=2&&pe(n.charCodeAt(0))&&n.charCodeAt(1)===fe&&(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){W(n,"path");let e=0,t=-1,r=0,i=-1,s=!0,o=0;n.length>=2&&n.charCodeAt(1)===fe&&pe(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===Re?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:hr.bind(null,"\\"),parse(n){W(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(pe(i)&&n.charCodeAt(1)===fe){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===Re?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},Ni=(()=>{if(Z){let n=/\\/g;return()=>{let e=Be().replace(n,"/");return e.slice(e.indexOf("/"))}}return()=>Be()})(),A={resolve(...n){let e="",t=!1;for(let r=n.length-1;r>=0&&!t;r--){let i=n[r];W(i,`paths[${r}]`),i.length!==0&&(e=`${i}/${e}`,t=i.charCodeAt(0)===j)}if(!t){let r=Ni();e=`${r}/${e}`,t=r.charCodeAt(0)===j}return e=ht(e,!t,"/",rn),t?`/${e}`:e.length>0?e:"."},normalize(n){if(W(n,"path"),n.length===0)return".";let e=n.charCodeAt(0)===j,t=n.charCodeAt(n.length-1)===j;return n=ht(n,!e,"/",rn),n.length===0?e?"/":t?"./":".":(t&&(n+="/"),e?`/${n}`:n)},isAbsolute(n){return W(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];W(r,"path"),r.length>0&&e.push(r)}return e.length===0?".":A.normalize(e.join("/"))},relative(n,e){if(W(n,"from"),W(e,"to"),n===e||(n=A.resolve(n),e=A.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(W(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&&W(e,"suffix"),W(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){W(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:hr.bind(null,"/"),parse(n){W(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===Re?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};A.win32=B.win32=B;A.posix=B.posix=A;var $e=Z?B.normalize:A.normalize,Mi=Z?B.isAbsolute:A.isAbsolute,sn=Z?B.join:A.join,gr=Z?B.resolve:A.resolve,gt=Z?B.relative:A.relative,br=Z?B.dirname:A.dirname,Tr=Z?B.basename:A.basename,_r=Z?B.extname:A.extname,t1=Z?B.format:A.format,n1=Z?B.parse:A.parse,r1=Z?B.toNamespacedPath:A.toNamespacedPath,re=Z?B.sep:A.sep,i1=Z?B.delimiter:A.delimiter;function Te(n){return n===47||n===92}function on(n){return n.replace(/[\\/]/g,A.sep)}function vr(n){return n.indexOf("/")===-1&&(n=on(n)),/^[a-zA-Z]:(\/|$)/.test(n)&&(n="/"+n),n}function an(n,e=A.sep){if(!n)return"";let t=n.length,r=n.charCodeAt(0);if(Te(r)){if(Te(n.charCodeAt(1))&&!Te(n.charCodeAt(2))){let s=3,o=s;for(;s<t&&!Te(n.charCodeAt(s));s++);if(o!==s&&!Te(n.charCodeAt(s+1))){for(s+=1;s<t;s++)if(Te(n.charCodeAt(s)))return n.slice(0,s+1).replace(/[\\/]/g,e)}}return e}else if(Wi(r)&&n.charCodeAt(1)===58)return Te(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(Te(n.charCodeAt(i)))return n.slice(0,i+1)}return""}function je(n,e,t,r=!1){let i=r?A.sep:re;if(n===e)return!0;if(!n||!e||((n.indexOf("..")>=0||e.indexOf("..")>=0)&&(n=r?A.normalize(n):$e(n),e=r?A.normalize(e):$e(e)),e.length>n.length))return!1;if(t){if(!Ke(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 Wi(n){return n>=65&&n<=90||n>=97&&n<=122}var qi=/^\w[\w\d+.-]*$/,Ki=/^\//,$i=/^\/\//;function ji(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&&!qi.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(!Ki.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($i.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 zi(n,e){return!n&&!e?"file":n}function Hi(n,e){switch(n){case"https":case"http":case"file":e?e[0]!==ie&&(e=ie+e):e=ie;break}return e}var O="",ie="/",Gi=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/,M=class n{static isUri(e){return e instanceof n?!0:!e||typeof e!="object"?!1:typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function"}constructor(e,t,r,i,s,o=!1){typeof e=="object"?(this.scheme=e.scheme||O,this.authority=e.authority||O,this.path=e.path||O,this.query=e.query||O,this.fragment=e.fragment||O):(this.scheme=zi(e,o),this.authority=t||O,this.path=Hi(this.scheme,r||O),this.query=i||O,this.fragment=s||O,ji(this,o))}get fsPath(){return ze(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:i,query:s,fragment:o}=e;return t===void 0?t=this.scheme:t===null&&(t=O),r===void 0?r=this.authority:r===null&&(r=O),i===void 0?i=this.path:i===null&&(i=O),s===void 0?s=this.query:s===null&&(s=O),o===void 0?o=this.fragment:o===null&&(o=O),t===this.scheme&&r===this.authority&&i===this.path&&s===this.query&&o===this.fragment?this:new _e(t,r,i,s,o)}static parse(e,t=!1){let r=Gi.exec(e);return r?new _e(r[2]||O,Tt(r[4]||O),Tt(r[5]||O),Tt(r[7]||O),Tt(r[9]||O),t):new _e(O,O,O,O,O)}static file(e){let t=O;if(oe&&(e=e.replace(/\\/g,ie)),e[0]===ie&&e[1]===ie){let r=e.indexOf(ie,2);r===-1?(t=e.substring(2),e=ie):(t=e.substring(2,r),e=e.substring(r)||ie)}return new _e("file",t,e,O,O)}static from(e,t){return new _e(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 oe&&e.scheme==="file"?r=n.file(B.join(ze(e,!0),...t)).path:r=A.join(e.path,...t),e.with({path:r})}toString(e=!1){return ln(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof n)return e;{let t=new _e(e);return t._formatted=e.external??null,t._fsPath=e._sep===Ir?e.fsPath??null:null,t}}else return e}[Symbol.for("debug.description")](){return`URI(${this.toString()})`}};var Ir=oe?1:void 0,_e=class extends M{constructor(){super(...arguments);this._formatted=null;this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=ze(this,!1)),this._fsPath}toString(t=!1){return t?ln(this,!0):(this._formatted||(this._formatted=ln(this,!1)),this._formatted)}toJSON(){let t={$mid:1};return this._fsPath&&(t.fsPath=this._fsPath,t._sep=Ir),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}},Er={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 xr(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=Er[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 Qi(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+=Er[r]):e!==void 0&&(e+=n[t])}return e!==void 0?e:n}function ze(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,oe&&(t=t.replace(/\//g,"\\")),t}function ln(n,e){let t=e?Qi:xr,r="",{scheme:i,authority:s,path:o,query:a,fragment:l}=n;if(i&&(r+=i,r+=":"),(s||i==="file")&&(r+=ie,r+=ie),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:xr(l,!1,!1)),r}function wr(n){try{return decodeURIComponent(n)}catch{return n.length>3?n.substr(0,3)+wr(n.substr(3)):n}}var yr=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Tt(n){return n.match(yr)?n.replace(yr,e=>wr(e)):n}var z;(I=>(I.inMemory="inmemory",I.vscode="vscode",I.internal="private",I.walkThrough="walkThrough",I.walkThroughSnippet="walkThroughSnippet",I.http="http",I.https="https",I.file="file",I.mailto="mailto",I.untitled="untitled",I.data="data",I.command="command",I.vscodeRemote="vscode-remote",I.vscodeRemoteResource="vscode-remote-resource",I.vscodeManagedRemoteResource="vscode-managed-remote-resource",I.vscodeUserData="vscode-userdata",I.vscodeCustomEditor="vscode-custom-editor",I.vscodeNotebookCell="vscode-notebook-cell",I.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",I.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",I.vscodeNotebookCellOutput="vscode-notebook-cell-output",I.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",I.vscodeNotebookMetadata="vscode-notebook-metadata",I.vscodeInteractiveInput="vscode-interactive-input",I.vscodeSettings="vscode-settings",I.vscodeWorkspaceTrust="vscode-workspace-trust",I.vscodeTerminal="vscode-terminal",I.vscodeImageCarousel="vscode-image-carousel",I.vscodeChatCodeBlock="vscode-chat-code-block",I.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",I.vscodeChatEditor="vscode-chat-editor",I.vscodeChatInput="chatSessionInput",I.sessionsChatInput="sessions-chat",I.vscodeLocalChatSession="vscode-chat-session",I.vscodeChatResponseResource="vscode-chat-response-resource",I.webviewPanel="webview-panel",I.vscodeWebview="vscode-webview",I.vscodeBrowser="vscode-browser",I.extension="extension",I.vscodeFileResource="vscode-file",I.tmp="tmp",I.vsls="vsls",I.vscodeSourceControl="vscode-scm",I.commentsInput="comment",I.codeSetting="code-setting",I.outputChannel="output",I.accessibleView="accessible-view",I.chatEditingSnapshotScheme="chat-editing-snapshot-text-model",I.chatEditingModel="chat-editing-text-model",I.copilotPr="copilot-pr"))(z||={});var Xi="tkn",un=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=A.join(t??"/",Zi(e))}getServerRootPath(){return this._serverRootPath}get _remoteResourcesPath(){return A.join(this._serverRootPath,z.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 En(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+=`&${Xi}=${encodeURIComponent(s)}`),M.from({scheme:ot?this._preferredWebSchema:z.vscodeRemoteResource,authority:`${r}:${i}`,path:ot?(window.location.pathname+"/"+this._remoteResourcesPath).replace(/\/\/+/g,"/"):this._remoteResourcesPath,query:o})}},Yi=new un;function Zi(n){return`${n.quality??"oss"}-${n.commit??"dev"}`}var Ji="vscode-app",cn=class n{static{this.FALLBACK_AUTHORITY=Ji}asBrowserUri(e){let t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===z.vscodeRemote?Yi.rewrite(e):e.scheme===z.file&&(Gn||Qn===`${z.vscodeFileResource}://${n.FALLBACK_AUTHORITY}`)?e.with({scheme:z.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===z.vscodeFileResource?e.with({scheme:z.file,authority:e.authority!==n.FALLBACK_AUTHORITY?e.authority:null,query:null,fragment:null}):e}toUri(e){if(M.isUri(e))return e;if(globalThis._VSCODE_FILE_ROOT){let t=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(t))return M.joinPath(M.parse(t,!0),e);let r=sn(t,e);return M.file(r)}throw new Error("Cannot determine URI for module id!")}},_1=new cn,v1=Object.freeze({"Cache-Control":"no-cache, no-store"}),x1=Object.freeze({"Document-Policy":"include-js-call-stacks-in-crash-reports"}),Ci;(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:M.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})(Ci||={});function me(n){return ze(n,!0)}var ve=class{constructor(e){this._ignorePathCasing=e}compare(e,t,r=!1){return e===t?0:cr(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===z.file)return je(me(e),me(t),this._ignorePathCasing(e))&&e.query===t.query&&(r||e.fragment===t.fragment);if(Rr(e.authority,t.authority))return je(e.path,t.path,this._ignorePathCasing(e),!0)&&e.query===t.query&&(r||e.fragment===t.fragment)}return!1}joinPath(e,...t){return M.joinPath(e,...t)}basenameOrAuthority(e){return es(e)||e.authority}basename(e,t){return A.basename(e.path,t)}extname(e){return A.extname(e.path)}dirname(e){if(e.path.length===0)return e;let t;return e.scheme===z.file?t=M.file(br(me(e))).path:(t=A.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===z.file?t=M.file($e(me(e))).path:t=A.normalize(e.path),e.with({path:t})}relativePath(e,t){if(e.scheme!==t.scheme||!Rr(e.authority,t.authority))return;if(e.scheme===z.file){let s=gt(me(e),me(t));return oe?on(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 A.relative(r,i)}resolvePath(e,t){if(e.scheme===z.file){let r=M.file(gr(me(e),t));return e.with({authority:r.authority,path:r.path})}return t=vr(t),e.with({path:A.resolve(e.path,t)})}isAbsolutePath(e){return!!e.path&&e.path[0]==="/"}isEqualAuthority(e,t){return e===t||e!==void 0&&t!==void 0&&we(e,t)}hasTrailingPathSeparator(e,t=re){if(e.scheme===z.file){let r=me(e);return r.length>an(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=re){return Pr(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=re){let r=!1;if(e.scheme===z.file){let i=me(e);r=i!==void 0&&i.length===an(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&&!Pr(e,t)?e.with({path:e.path+"/"}):e}},D=new ve(()=>!1),k1=new ve(n=>n.scheme===z.file?!st:!0),A1=new ve(n=>!0),S1=D.isEqual.bind(D),D1=D.isEqualOrParent.bind(D),L1=D.getComparisonKey.bind(D),U1=D.basenameOrAuthority.bind(D),es=D.basename.bind(D),O1=D.extname.bind(D),F1=D.dirname.bind(D),N1=D.joinPath.bind(D),M1=D.normalizePath.bind(D),W1=D.relativePath.bind(D),B1=D.resolvePath.bind(D),V1=D.isAbsolutePath.bind(D),Rr=D.isEqualAuthority.bind(D),Pr=D.hasTrailingPathSeparator.bind(D),q1=D.removeTrailingPathSeparator.bind(D),K1=D.addTrailingPathSeparator.bind(D);var ts;(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})(ts||={});function vt(n){return!!n&&typeof n.then=="function"}var oa=2**31-1;var ns,dn;(function(){let n=globalThis;typeof n.requestIdleCallback!="function"||typeof n.cancelIdleCallback!="function"?dn=(e,t,r)=>{Xn(()=>{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)}}}:dn=(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))}}},ns=(e,t)=>dn(globalThis,e,t)})();var _t=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 Pe)}},pn;(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})(pn||={});var kr=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 Q,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=()=>{},r.emitMany=()=>{},r.reject=()=>{}}})}[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 Ve.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 fn=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 Ie("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 _t;return this._unsatisfiedConsumers.push(e),e.p}}},Ar=class n{constructor(e,t){this._onReturn=t;this._producerConsumer=new fn;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 _t,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 xt="**",Sr="/",yt="[/\\\\]",It="[^/\\\\]",rs=/\//g;function Dr(n,e){switch(n){case 0:return"";case 1:return`${It}*?`;default:return`(?:${yt}|${It}+${yt}${e?`|${yt}${It}+`:""})*?`}}function Lr(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 Mr(n){if(!n)return"";let e="",t=Lr(n,Sr);if(t.every(r=>r===xt))e=".*";else{let r=!1;t.forEach((i,s)=>{if(i===xt){if(r)return;e+=Dr(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===Sr?c="":c=dt(d),u+=c;continue}switch(d){case"{":o=!0;continue;case"[":l=!0;continue;case"}":{let f=`(?:${Lr(a,",").map(x=>Mr(x)).join("|")})`;e+=f,o=!1,a="";break}case"]":{e+="["+u+"]",l=!1,u="";break}case"?":e+=It;continue;case"*":e+=Dr(1);continue;default:e+=dt(d)}}s<t.length-1&&(t[s+1]!==xt||s+2<t.length)&&(e+=yt)}r=i===xt})}return e}var is=/^\*\*\/\*\.[\w\.-]+$/,ss=/^\*\*\/([\w\.-]+)\/?$/,os=/^{\*\*\/\*?[\w\.-]+\/?(,\*\*\/\*?[\w\.-]+\/?)*}$/,as=/^{\*\*\/\*?[\w\.-]+(\/(\*\*)?)?(,\*\*\/\*?[\w\.-]+(\/(\*\*)?)?)*}$/,ls=/^\*\*((\/[\w\.-]+)+)\/?$/,us=/^([\w\.-]+(\/[\w\.-]+)*)\/?$/,Ur=new Ce(1e4),Or=function(){return!1},ae=function(){return null};function hn(n,e,t){if(!n)return ae;let r;typeof n!="string"?r=n.pattern:r=n,r=r.trim();let i=e.ignoreCase??!1,s={...e,equals:i?we:(u,d)=>u===d,endsWith:i?dr:(u,d)=>u.endsWith(d),isEqualOrParent:(u,d)=>je(u,d,e.ignoreCase??!st)},o=`${t===void 0?`default:${i?r.toLowerCase():r}`:`custom:${t}`}_${!!e.trimForExclusions}_${i}`,a=Ur.get(o);if(a)return Fr(a,n,s);let l;return is.test(r)?a=cs(r.substring(4),r,s):(l=ss.exec(mn(r,s)))?a=ds(l[1],r,s):(e.trimForExclusions?as:os).test(r)?a=fs(r,s):(l=ls.exec(mn(r,s)))?a=Nr(l[1].substring(1),r,!0,s):(l=us.exec(mn(r,s)))?a=Nr(l[1],r,!1,s):a=ps(r,s),Ur.set(o,a),Fr(a,n,s)}function Fr(n,e,t){if(typeof e=="string")return n;let r=function(i,s){return t.isEqualOrParent(i,e.base)?n(lr(i.substring(e.base.length),re),s):null};return r.allBasenames=n.allBasenames,r.allPaths=n.allPaths,r.basenames=n.basenames,r.patterns=n.patterns,r}function mn(n,e){return e.trimForExclusions&&n.endsWith("/**")?n.substring(0,n.length-2):n}function cs(n,e,t){return function(r,i){return typeof r=="string"&&t.endsWith(r,n)?e:null}}function ds(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 fs(n,e){let t=Wr(n.slice(1,-1).split(",").map(a=>hn(a,e)).filter(a=>a!==ae),n,e.ignoreCase),r=t.length;if(!r)return ae;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 Nr(n,e,t,r){let i=re===A.sep,s=i?n:n.replace(rs,re),o=re+s,a=A.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 ps(n,e){try{let t=new RegExp(`^${Mr(n)}$`,e.ignoreCase?"i":void 0);return function(r){return t.lastIndex=0,typeof r=="string"&&t.test(r)?n:null}}catch{return ae}}function He(n,e,t){return!n||typeof e!="string"?!1:Ge(n,t)(e)}function Ge(n,e={}){if(!n)return Or;if(typeof n=="string"||ms(n)){let t=hn(n,e);if(t===ae)return Or;let r=function(i,s){return!!t(i,s)};return t.allBasenames&&(r.allBasenames=t.allBasenames),t.allPaths&&(r.allPaths=t.allPaths),r}return hs(n,e)}function ms(n){let e=n;return e?typeof e.base=="string"&&typeof e.pattern=="string":!1}function hs(n,e){let t=Wr(Object.getOwnPropertyNames(n).map(a=>gs(a,n[a],e)).filter(a=>a!==ae),void 0,e.ignoreCase),r=t.length;if(!r)return ae;if(!t.some(a=>!!a.requiresSiblings)){if(r===1)return t[0];let a=function(d,c){let f;for(let x=0,S=t.length;x<S;x++){let m=t[x](d,c);if(typeof m=="string")return m;vt(m)&&(f||(f=[]),f.push(m))}return f?(async()=>{for(let x of f){let S=await x;if(typeof S=="string")return S}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,x=t.length;f<x;f++){let S=t[f];S.requiresSiblings&&u&&(l||(l=Tr(a)),d||(d=l.substring(0,l.length-_r(a).length)));let m=S(a,l,d,u);if(typeof m=="string")return m;vt(m)&&(c||(c=[]),c.push(m))}return c?(async()=>{for(let f of c){let x=await f;if(typeof x=="string")return x}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 gs(n,e,t){if(e===!1)return ae;let r=hn(n,t,n);if(r===ae)return ae;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 vt(c)?c.then(f=>f?n:null):c?n:null};return s.requiresSiblings=!0,s}}return r}function Wr(n,e,t){let r=n.filter(l=>!!l.basenames);if(r.length<2)return n;let i=r.reduce((l,u)=>{let d=u.basenames;return d?l.concat(d):l},[]),s;if(e){s=[];for(let l=0,u=i.length;l<u;l++)s.push(e)}else s=r.reduce((l,u)=>{let d=u.patterns;return d?l.concat(d):l},[]);let o=function(l,u){if(typeof l!="string")return null;if(!u){let c;for(c=l.length;c>0;c--){let f=l.charCodeAt(c-1);if(f===47||f===92)break}u=l.substring(c)}let d=t?i.findIndex(c=>we(c,u)):i.indexOf(u);return d!==-1?s[d]:null};o.basenames=i,o.patterns=s,o.allBasenames=i;let a=n.filter(l=>!l.basenames);return a.push(o),a}var Et=class n{static{this.CHANNEL_NAME="localFileSearchWorkerHost"}static getChannel(e){return e.getChannel(n.CHANNEL_NAME)}static setChannel(e,t){e.setChannel(n.CHANNEL_NAME,t)}};var Qe=class n{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new n(e,t)}delta(e=0,t=0){return this.with(Math.max(1,this.lineNumber+e),Math.max(1,this.column+t))}equals(e){return n.equals(this,e)}static equals(e,t){return!e&&!t?!0:!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return n.isBefore(this,e)}static isBefore(e,t){return e.lineNumber<t.lineNumber?!0:t.lineNumber<e.lineNumber?!1:e.column<t.column}isBeforeOrEqual(e){return n.isBeforeOrEqual(this,e)}static isBeforeOrEqual(e,t){return e.lineNumber<t.lineNumber?!0:t.lineNumber<e.lineNumber?!1:e.column<=t.column}static compare(e,t){let r=e.lineNumber|0,i=t.lineNumber|0;if(r===i){let s=e.column|0,o=t.column|0;return s-o}return r-i}clone(){return new n(this.lineNumber,this.column)}toString(){return"("+this.lineNumber+","+this.column+")"}static lift(e){return new n(e.lineNumber,e.column)}static isIPosition(e){return!!e&&typeof e.lineNumber=="number"&&typeof e.column=="number"}toJSON(){return{lineNumber:this.lineNumber,column:this.column}}};var Xe=class n{constructor(e,t,r,i){e>r||e===r&&t>i?(this.startLineNumber=r,this.startColumn=i,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=r,this.endColumn=i)}isEmpty(){return n.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return n.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<e.startColumn||t.lineNumber===e.endLineNumber&&t.column>e.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return n.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber||t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>e.endColumn)}strictContainsRange(e){return n.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber||t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return n.plusRange(this,e)}static plusRange(e,t){let r,i,s,o;return t.startLineNumber<e.startLineNumber?(r=t.startLineNumber,i=t.startColumn):t.startLineNumber===e.startLineNumber?(r=t.startLineNumber,i=Math.min(t.startColumn,e.startColumn)):(r=e.startLineNumber,i=e.startColumn),t.endLineNumber>e.endLineNumber?(s=t.endLineNumber,o=t.endColumn):t.endLineNumber===e.endLineNumber?(s=t.endLineNumber,o=Math.max(t.endColumn,e.endColumn)):(s=e.endLineNumber,o=e.endColumn),new n(r,i,s,o)}intersectRanges(e){return n.intersectRanges(this,e)}static intersectRanges(e,t){let r=e.startLineNumber,i=e.startColumn,s=e.endLineNumber,o=e.endColumn,a=t.startLineNumber,l=t.startColumn,u=t.endLineNumber,d=t.endColumn;return r<a?(r=a,i=l):r===a&&(i=Math.max(i,l)),s>u?(s=u,o=d):s===u&&(o=Math.min(o,d)),r>s||r===s&&i>o?null:new n(r,i,s,o)}equalsRange(e){return n.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t?!0:!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return n.getEndPosition(this)}static getEndPosition(e){return new Qe(e.endLineNumber,e.endColumn)}getStartPosition(){return n.getStartPosition(this)}static getStartPosition(e){return new Qe(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new n(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new n(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return n.collapseToStart(this)}static collapseToStart(e){return new n(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return n.collapseToEnd(this)}static collapseToEnd(e){return new n(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new n(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}isSingleLine(){return this.startLineNumber===this.endLineNumber}static fromPositions(e,t=e){return new n(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new n(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return!!e&&typeof e.startLineNumber=="number"&&typeof e.startColumn=="number"&&typeof e.endLineNumber=="number"&&typeof e.endColumn=="number"}static areIntersectingOrTouching(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<t.startColumn||t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<e.startColumn)}static areIntersecting(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<=t.startColumn||t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<=e.startColumn)}static areOnlyIntersecting(e,t){return!(e.endLineNumber<t.startLineNumber-1||e.endLineNumber===t.startLineNumber&&e.endColumn<t.startColumn-1||t.endLineNumber<e.startLineNumber-1||t.endLineNumber===e.startLineNumber&&t.endColumn<e.startColumn-1)}static compareRangesUsingStarts(e,t){if(e&&t){let s=e.startLineNumber|0,o=t.startLineNumber|0;if(s===o){let a=e.startColumn|0,l=t.startColumn|0;if(a===l){let u=e.endLineNumber|0,d=t.endLineNumber|0;if(u===d){let c=e.endColumn|0,f=t.endColumn|0;return c-f}return u-d}return a-l}return s-o}return(e?1:0)-(t?1:0)}static compareRangesUsingEnds(e,t){return e.endLineNumber===t.endLineNumber?e.endColumn===t.endColumn?e.startLineNumber===t.startLineNumber?e.startColumn-t.startColumn:e.startLineNumber-t.startLineNumber:e.endColumn-t.endColumn:e.endLineNumber-t.endLineNumber}static spansMultipleLines(e){return e.endLineNumber>e.startLineNumber}toJSON(){return this}};var Vr=(n,e,t)=>{let r;if(n[0]===255&&n[1]===254)r=new TextDecoder("utf-16le").decode(n);else if(n[0]===254&&n[1]===255)r=new TextDecoder("utf-16be").decode(n);else if(r=new TextDecoder("utf8").decode(n),r.slice(0,1e3).includes("\uFFFD")&&n.includes(0))return[];let i=[],s=[],o=null,a=t.remainingResultQuota;for(;a>=0&&(o=e.exec(r));)s.push({matchStartIndex:o.index,matchedText:o[0]}),a--;if(s.length){let l=new Set,u=new Set,d=[],c=k=>r.slice(d[k].start,d[k].end),f=0,x=null,S=/\r?\n/g;for(;x=S.exec(r);)d.push({start:f,end:x.index}),f=x.index+x[0].length;f<r.length&&d.push({start:f,end:r.length});let m=0;for(let{matchStartIndex:k,matchedText:V}of s){if(a<0)break;for(;d[m+1]&&k>d[m].end;)m++;let F=m;for(;d[F+1]&&k+V.length>d[F].end;)F++;if(t.surroundingContext)for(let T=Math.max(0,m-t.surroundingContext);T<m;T++)l.add(T);let E="",L=0;for(let T=m;T<=F;T++){let R=c(T);t.previewOptions?.charsPerLine&&R.length>t.previewOptions.charsPerLine&&(L=Math.max(k-d[m].start-20,0),R=R.substr(L,t.previewOptions.charsPerLine)),E+=`${R}
`,u.add(T)}let N=new Xe(m,k-d[m].start,F,k+V.length-d[F].start),J=new Xe(0,k-d[m].start-L,F-m,k+V.length-d[F].start-(F===m?L:0)),v={rangeLocations:[{source:N,preview:J}],previewText:E};if(i.push(v),t.surroundingContext)for(let T=F+1;T<=Math.min(F+t.surroundingContext,d.length-1);T++)l.add(T)}for(let k of l)u.has(k)||i.push({text:c(k),lineNumber:k+1})}return i};var wt=class{constructor(e,t,r,i=!1){this.location=t;this.parent=r;this.ignoreCase=i;if(t[t.length-1]==="\\")throw Error("Unexpected path format, do not use trailing backslashes");t[t.length-1]!=="/"&&(t+="/"),this.isPathIgnored=this.parseIgnoreFile(e,this.location,this.parent)}updateContents(e){this.isPathIgnored=this.parseIgnoreFile(e,this.location,this.parent)}isPathIncludedInTraversal(e,t){if(e[0]!=="/"||e[e.length-1]==="/")throw Error("Unexpected path format, expected to begin with slash and end without. got:"+e);return!this.isPathIgnored(e,t)}isArbitraryPathIgnored(e,t){if(e[0]!=="/"||e[e.length-1]==="/")throw Error("Unexpected path format, expected to begin with slash and end without. got:"+e);let r=e.split("/").filter(o=>o),i=!1,s="";for(let o=0;o<r.length;o++){let a=o===r.length-1,l=r[o];if(s=s+"/"+l,!this.isPathIncludedInTraversal(s,a?t:!0)){i=!0;break}}return i}gitignoreLinesToExpression(e,t,r){let i=e.map(o=>this.gitignoreLineToGlob(o,t)),s=Object.create(null);for(let o of i)s[o]=!0;return Ge(s,{trimForExclusions:r,ignoreCase:this.ignoreCase})}parseIgnoreFile(e,t,r){let i=e.split(`
`).map(m=>m.trim()).filter(m=>m&&m[0]!=="#"),s=i.filter(m=>!m.endsWith("/")),o=s.filter(m=>!m.includes("!")),a=this.gitignoreLinesToExpression(o,t,!0),l=s.filter(m=>m.includes("!")).map(m=>m.replace(/!/g,"")),u=this.gitignoreLinesToExpression(l,t,!1),d=i.filter(m=>!m.includes("!")),c=this.gitignoreLinesToExpression(d,t,!0),f=i.filter(m=>m.includes("!")).map(m=>m.replace(/!/g,"")),x=this.gitignoreLinesToExpression(f,t,!1);return(m,k)=>{if(!(this.ignoreCase?Ke(m,t):m.startsWith(t)))return!1;let V=k&&x(m);if(k&&c(m)&&!V)return!0;let F=u(m);return a(m)&&!F?!0:V||F?!1:r?r.isPathIgnored(m,k):!1}}gitignoreLineToGlob(e,t){let r=e.indexOf("/");return r===-1||r===e.length-1?e="**/"+e:(r===0?t.slice(-1)==="/"&&(e=e.slice(1)):t.slice(-1)!=="/"&&(e="/"+e),e=t+e),e}};var Ye=typeof Buffer<"u",Ts=new be(()=>new Uint8Array(256)),gn,bn,Rt=class n{static alloc(e){return Ye?new n(Buffer.allocUnsafe(e)):new n(new Uint8Array(e))}static wrap(e){return Ye&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new n(e)}static fromString(e,t){return!(t?.dontUseNodeBuffer||!1)&&Ye?new n(Buffer.from(e)):(gn||(gn=new TextEncoder),new n(gn.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 Ye&&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 Ye?this.buffer.toString():(bn||(bn=new TextDecoder(void 0,{ignoreBOM:!0})),bn.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 vs(this.buffer,e)}writeUInt32BE(e,t){xs(this.buffer,e,t)}readUInt32LE(e){return ys(this.buffer,e)}writeUInt32LE(e,t){Is(this.buffer,e,t)}readUInt8(e){return Es(this.buffer,e)}writeUInt8(e,t){ws(this.buffer,e,t)}indexOf(e,t=0){return _s(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 _s(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=Ts.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 vs(n,e){return n[e]*2**24+n[e+1]*2**16+n[e+2]*2**8+n[e+3]}function xs(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 ys(n,e){return n[e+0]<<0>>>0|n[e+1]<<8>>>0|n[e+2]<<16>>>0|n[e+3]<<24>>>0}function Is(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 Es(n,e){return n[e]}function ws(n,e,t){n[t]=e}function Ze(n,e=0){if(!n||e>200)return n;if(typeof n=="object"){switch(n.$mid){case 1:return M.revive(n);case 2:return new RegExp(n.source,n.flags);case 17:return new Date(n.source)}if(n instanceof Rt||n instanceof Uint8Array)return n;if(Array.isArray(n))for(let t=0;t<n.length;++t)n[t]=Ze(n[t],e+1);else for(let t in n)Object.hasOwnProperty.call(n,t)&&(n[t]=Ze(n[t],e+1))}return n}var $r=!1,Rs=+new Date,qr={},Fe=async(n,e)=>{if(!$r)return e();let t=Date.now(),r=(qr[n]??0)+1;console.info(n,r,"starting",Math.round((t-Rs)*10)/1e4),qr[n]=r;let i=await e(),s=Date.now();return console.info(n,r,"took",s-t),i};function jr(n){return new Tn(n)}var Tn=class{constructor(e){this._requestHandlerBrand=void 0;this.cancellationTokens=new Map;this.host=Et.getChannel(e)}$cancelQuery(e){this.cancellationTokens.get(e)?.cancel()}registerCancellationToken(e){let t=new Oe;return this.cancellationTokens.set(e,t),t}async $listDirectory(e,t,r,i,s){let o=_n(r),a=new ve(()=>i),l=this.registerCancellationToken(s),u=[],d=!1,c=0,f=t.maxResults||512,x=t.filePattern?S=>t.filePattern.split("").every(m=>S.includes(m)):S=>!0;return await Fe("listDirectory",()=>this.walkFolderQuery(e,Kr(t),o,a,S=>{if(x(S.name))return c++,f&&c>f&&(d=!0,l.cancel()),u.push(S.path)},l.token)),{results:u,limitHit:d}}async $searchDirectory(e,t,r,i,s){let o=_n(r),a=new ve(()=>i);return Fe("searchInFiles",async()=>{let l=this.registerCancellationToken(s),u=[],d=Ps(t.contentPattern),c=[],f=0,x=0,S=!1,m=async k=>{if(l.token.isCancellationRequested)return;f++;let V=await k.resolve();if(l.token.isCancellationRequested)return;let F=new Uint8Array(V),E=Vr(F,d,{surroundingContext:t.surroundingContext??0,previewOptions:t.previewOptions,remainingResultQuota:t.maxResults?t.maxResults-x:1e4});if(E.length){x+=E.length,t.maxResults&&x>t.maxResults&&l.cancel();let L={resource:M.joinPath(o.folder,k.path),results:E};this.host.$sendTextSearchMatch(L,s),u.push(L)}};return await Fe("walkFolderToResolve",()=>this.walkFolderQuery(e,Kr(t),o,a,async k=>c.push(m(k)),l.token)),await Fe("resolveOngoingProcesses",()=>Promise.all(c)),$r&&console.log("Searched in",f,"files"),{results:u,limitHit:S}})}async walkFolderQuery(e,t,r,i,s,o){let a=t.ignoreGlobCase||r.ignoreGlobCase,l={trimForExclusions:!0,ignoreCase:a},u=r.excludePattern?.map(E=>Ge(E.pattern??{},l)),d=(E,L,N)=>u?.some(J=>J(E,L,N)),c=(E,L,N)=>(E=E.slice(1),!!(d(E,L,N)||ks(t,E))),f=(E,L,N)=>(E=E.slice(1),!(d(E,L,N)||!As(t,E,i))),x=(E,L)=>({type:"file",name:E.name,path:L,resolve:()=>E.getFile().then(J=>J.arrayBuffer())}),S=E=>E.kind==="directory",m=E=>E.kind==="file",k=async(E,L,N)=>{if(!r.disregardIgnoreFiles){let v=await Promise.all([E.getFileHandle(".gitignore").catch(T=>{}),E.getFileHandle(".ignore").catch(T=>{})]);await Promise.all(v.map(async T=>{if(!T)return;let R=new TextDecoder("utf8").decode(new Uint8Array(await(await T.getFile()).arrayBuffer()));N=new wt(R,L,N,a)}))}let J=pn.withAsyncBody(async v=>{let T=[],R=[],q=[],se=new Set;for await(let te of E.entries())q.push(te),se.add(te[0]);for(let[te,xe]of q){if(o.isCancellationRequested)break;let C=L+te;if(N&&!N.isPathIncludedInTraversal(C,xe.kind==="directory"))continue;let g=p=>se.has(p);S(xe)&&!c(C,te,g)?R.push(k(xe,C+"/",N)):m(xe)&&f(C,te,g)&&T.push(x(xe,C))}v([...await Promise.all(R),...T])});return{type:"dir",name:E.name,entries:J}},V=async(E,L)=>{o.isCancellationRequested||await Promise.all((await E.entries).sort((N,J)=>-(N.type==="dir"?0:1)+(J.type==="dir"?0:1)).map(async N=>N.type==="dir"?V(N,L):L(N)))},F=await Fe("process",()=>k(e,"/"));await Fe("resolve",()=>V(F,s))}};function Ps(n){return ur(n.pattern,!!n.isRegExp,{wholeWord:n.isWordMatch,global:!0,matchCase:n.isCaseSensitive,multiline:!0,unicode:!0})}function _n(n){return Ze({...Ze(n),excludePattern:n.excludePattern?.map(e=>({folder:M.revive(e.folder),pattern:e.pattern})),folder:M.revive(n.folder)})}function Kr(n){return{...n,extraFileResources:n.extraFileResources?.map(e=>M.revive(e)),folderQueries:n.folderQueries.map(e=>_n(e))}}function ks(n,e){let t=n.ignoreGlobCase?{ignoreCase:!0}:void 0;return!!(n.excludePattern&&He(n.excludePattern,e,t))}function As(n,e,t){let r=n.ignoreGlobCase?{ignoreCase:!0}:void 0;return n.excludePattern&&He(n.excludePattern,e,r)?!1:n.includePattern||n.usingSearchPaths?n.includePattern&&He(n.includePattern,e,r)?!0:n.usingSearchPaths?!!n.folderQueries&&n.folderQueries.some(i=>{let s=i.folder,o=M.file(e);if(t.isEqualOrParent(o,s)){let a=gt(s.path,o.path);return!i.includePattern||!!He(i.includePattern,a,r)}else return!1}):!1:!0}mr(jr);