(() => { 'use strict'; var e = {}; e.g = (function () { if ('object' == typeof globalThis) return globalThis; try { return this || new Function('return this')(); } catch (e) { if ('object' == typeof window) return window; } })(); const t = new (class { constructor() { (this.listeners = []), (this.unexpectedErrorHandler = function (e) { setTimeout(() => { if (e.stack) throw new Error(e.message + '\n\n' + e.stack); throw e; }, 0); }); } emit(e) { this.listeners.forEach((t) => { t(e); }); } onUnexpectedError(e) { this.unexpectedErrorHandler(e), this.emit(e); } onUnexpectedExternalError(e) { this.unexpectedErrorHandler(e); } })(); function n(e) { var n; ((n = e) instanceof Error && n.name === r && n.message === r) || t.onUnexpectedError(e); } function i(e) { if (e instanceof Error) { let { name: t, message: n } = e; return { $isError: !0, name: t, message: n, stack: e.stacktrace || e.stack, }; } return e; } const r = 'Canceled'; var s; function o(e) {} !(function (e) { e.is = function (e) { return ( e && 'object' == typeof e && 'function' == typeof e[Symbol.iterator] ); }; const t = Object.freeze([]); (e.empty = function () { return t; }), (e.single = function* (e) { yield e; }), (e.from = function (e) { return e || t; }), (e.first = function (e) { return e[Symbol.iterator]().next().value; }), (e.some = function (e, t) { for (const n of e) if (t(n)) return !0; return !1; }), (e.filter = function* (e, t) { for (const n of e) t(n) && (yield n); }), (e.map = function* (e, t) { for (const n of e) yield t(n); }), (e.concat = function* (...e) { for (const t of e) for (const e of t) yield e; }), (e.consume = function (t, n = Number.POSITIVE_INFINITY) { const i = []; if (0 === n) return [i, t]; const r = t[Symbol.iterator](); for (let t = 0; t < n; t++) { const t = r.next(); if (t.done) return [i, e.empty()]; i.push(t.value); } return [i, { [Symbol.iterator]: () => r }]; }); })(s || (s = {})); class a extends Error { constructor(e) { super( `Encounter errors while disposing of store. Errors: [${e.join(', ')}]` ), (this.errors = e); } } function l(e) { if (s.is(e)) { let t = []; for (const n of e) if (n) try { n.dispose(); } catch (e) { t.push(e); } if (1 === t.length) throw t[0]; if (t.length > 1) throw new a(t); return Array.isArray(e) ? [] : e; } if (e) return e.dispose(), e; } class u { constructor() { (this._toDispose = new Set()), (this._isDisposed = !1); } dispose() { this._isDisposed || ((this._isDisposed = !0), this.clear()); } clear() { try { l(this._toDispose.values()); } finally { this._toDispose.clear(); } } add(e) { if (!e) return e; if (e === this) throw new Error('Cannot register a disposable on itself!'); return ( this._isDisposed ? u.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 ); } } u.DISABLE_DISPOSED_WARNING = !1; class h { constructor() { this._store = new u(); } dispose() { this._store.dispose(); } _register(e) { if (e === this) throw new Error('Cannot register a disposable on itself!'); return this._store.add(e); } } h.None = Object.freeze({ dispose() {} }); const d = 'en'; let c, f, m, g = !1, _ = !1, p = !1, C = !1, b = !1, L = !1, N = null; const S = 'undefined' != typeof process && void 0 !== process.versions && void 0 !== process.versions.electron && 'renderer' === process.type; if ('object' != typeof navigator || S) { if ('object' == typeof process) { (g = 'win32' === process.platform), (_ = 'darwin' === process.platform), (p = 'linux' === process.platform), (c = d), (N = d); const e = process.env.VSCODE_NLS_CONFIG; if (e) try { const t = JSON.parse(e), n = t.availableLanguages['*']; (c = t.locale), (N = n || d), (f = t._translationsConfigFile); } catch (e) {} C = !0; } } else (m = navigator.userAgent), (g = m.indexOf('Windows') >= 0), (_ = m.indexOf('Macintosh') >= 0), (m.indexOf('Macintosh') >= 0 || m.indexOf('iPad') >= 0 || m.indexOf('iPhone') >= 0) && !!navigator.maxTouchPoints && navigator.maxTouchPoints > 0, (p = m.indexOf('Linux') >= 0), !0, (c = navigator.language), (N = c); let E = 0; _ ? (E = 1) : g ? (E = 3) : p && (E = 2); const A = g, y = _, w = 'object' == typeof self ? self : 'object' == typeof e.g ? e.g : {}, v = (function () { if (w.setImmediate) return w.setImmediate.bind(w); if ('function' == typeof w.postMessage && !w.importScripts) { let e = []; w.addEventListener('message', (t) => { if (t.data && t.data.vscodeSetImmediateId) for (let n = 0, i = e.length; n < i; n++) { const i = e[n]; if (i.id === t.data.vscodeSetImmediateId) return e.splice(n, 1), void i.callback(); } }); let t = 0; return (n) => { const i = ++t; e.push({ id: i, callback: n }), w.postMessage({ vscodeSetImmediateId: i }, '*'); }; } if ( 'undefined' != typeof process && 'function' == typeof process.nextTick ) return process.nextTick.bind(process); const e = Promise.resolve(); return (t) => e.then(t); })(); function T(e) { const t = []; for (const n of (function (e) { let t = [], n = Object.getPrototypeOf(e); for (; Object.prototype !== n; ) (t = t.concat(Object.getOwnPropertyNames(n))), (n = Object.getPrototypeOf(n)); return t; })(e)) 'function' == typeof e[n] && t.push(n); return t; } function O(e, t) { const n = (e) => function () { const n = Array.prototype.slice.call(arguments, 0); return t(e, n); }; let i = {}; for (const t of e) i[t] = n(t); return i; } class I { constructor(e) { (this._workerId = -1), (this._handler = e), (this._lastSentReq = 0), (this._pendingReplies = Object.create(null)); } setWorkerId(e) { this._workerId = e; } sendMessage(e, t) { let n = String(++this._lastSentReq); return new Promise((i, r) => { (this._pendingReplies[n] = { resolve: i, reject: r }), this._send({ vsWorker: this._workerId, req: n, method: e, args: t }); }); } handleMessage(e) { e && e.vsWorker && ((-1 !== this._workerId && e.vsWorker !== this._workerId) || this._handleMessage(e)); } _handleMessage(e) { if (e.seq) { let t = e; if (!this._pendingReplies[t.seq]) return void console.warn('Got reply to unknown seq'); let n = this._pendingReplies[t.seq]; if ((delete this._pendingReplies[t.seq], t.err)) { let e = t.err; return ( t.err.$isError && ((e = new Error()), (e.name = t.err.name), (e.message = t.err.message), (e.stack = t.err.stack)), void n.reject(e) ); } return void n.resolve(t.res); } let t = e, n = t.req; this._handler.handleMessage(t.method, t.args).then( (e) => { this._send({ vsWorker: this._workerId, seq: n, res: e, err: void 0 }); }, (e) => { e.detail instanceof Error && (e.detail = i(e.detail)), this._send({ vsWorker: this._workerId, seq: n, res: void 0, err: i(e), }); } ); } _send(e) { let t = []; if (e.req) { const n = e; for (let e = 0; e < n.args.length; e++) n.args[e] instanceof ArrayBuffer && t.push(n.args[e]); } else { const n = e; n.res instanceof ArrayBuffer && t.push(n.res); } this._handler.sendMessage(e, t); } } class M { constructor(e, t) { (this._requestHandlerFactory = t), (this._requestHandler = null), (this._protocol = new I({ sendMessage: (t, n) => { e(t, n); }, handleMessage: (e, t) => this._handleMessage(e, t), })); } onmessage(e) { this._protocol.handleMessage(e); } _handleMessage(e, t) { if ('$initialize' === e) return this.initialize(t[0], t[1], t[2], t[3]); if (!this._requestHandler || 'function' != typeof this._requestHandler[e]) return Promise.reject( new Error('Missing requestHandler or method: ' + e) ); try { return Promise.resolve( this._requestHandler[e].apply(this._requestHandler, t) ); } catch (e) { return Promise.reject(e); } } initialize(e, t, n, i) { this._protocol.setWorkerId(e); const r = O(i, (e, t) => this._protocol.sendMessage(e, t)); return this._requestHandlerFactory ? ((this._requestHandler = this._requestHandlerFactory(r)), Promise.resolve(T(this._requestHandler))) : (t && (void 0 !== t.baseUrl && delete t.baseUrl, void 0 !== t.paths && void 0 !== t.paths.vs && delete t.paths.vs, (t.catchError = !0), self.require.config(t)), new Promise((e, t) => { self.require( [n], (n) => { (this._requestHandler = n.create(r)), this._requestHandler ? e(T(this._requestHandler)) : t(new Error('No RequestHandler!')); }, t ); })); } } function x(e, t) { return R(e, t, 0, e.length - 1, []), e; } function R(e, t, n, i, r) { if (i <= n) return; const s = (n + (i - n) / 2) | 0; R(e, t, n, s, r), R(e, t, s + 1, i, r), t(e[s], e[s + 1]) <= 0 || (function (e, t, n, i, r, s) { let o = n, a = i + 1; for (let t = n; t <= r; t++) s[t] = e[t]; for (let l = n; l <= r; l++) o > i ? (e[l] = s[a++]) : a > r ? (e[l] = s[o++]) : t(s[a], s[o]) < 0 ? (e[l] = s[a++]) : (e[l] = s[o++]); })(e, t, n, s, i, r); } class P { constructor(e, t, n, i) { (this.originalStart = e), (this.originalLength = t), (this.modifiedStart = n), (this.modifiedLength = i); } getOriginalEnd() { return this.originalStart + this.originalLength; } getModifiedEnd() { return this.modifiedStart + this.modifiedLength; } } function U(e) { return 55296 <= e && e <= 56319; } function k(e) { return 56320 <= e && e <= 57343; } String.fromCharCode(65279); class D { constructor() { this._data = JSON.parse( '[0,0,0,51592,51592,11,44424,44424,11,72251,72254,5,7150,7150,7,48008,48008,11,55176,55176,11,128420,128420,14,3276,3277,5,9979,9980,14,46216,46216,11,49800,49800,11,53384,53384,11,70726,70726,5,122915,122916,5,129320,129327,14,2558,2558,5,5906,5908,5,9762,9763,14,43360,43388,8,45320,45320,11,47112,47112,11,48904,48904,11,50696,50696,11,52488,52488,11,54280,54280,11,70082,70083,1,71350,71350,7,73111,73111,5,127892,127893,14,128726,128727,14,129473,129474,14,2027,2035,5,2901,2902,5,3784,3789,5,6754,6754,5,8418,8420,5,9877,9877,14,11088,11088,14,44008,44008,5,44872,44872,11,45768,45768,11,46664,46664,11,47560,47560,11,48456,48456,11,49352,49352,11,50248,50248,11,51144,51144,11,52040,52040,11,52936,52936,11,53832,53832,11,54728,54728,11,69811,69814,5,70459,70460,5,71096,71099,7,71998,71998,5,72874,72880,5,119149,119149,7,127374,127374,14,128335,128335,14,128482,128482,14,128765,128767,14,129399,129400,14,129680,129685,14,1476,1477,5,2377,2380,7,2759,2760,5,3137,3140,7,3458,3459,7,4153,4154,5,6432,6434,5,6978,6978,5,7675,7679,5,9723,9726,14,9823,9823,14,9919,9923,14,10035,10036,14,42736,42737,5,43596,43596,5,44200,44200,11,44648,44648,11,45096,45096,11,45544,45544,11,45992,45992,11,46440,46440,11,46888,46888,11,47336,47336,11,47784,47784,11,48232,48232,11,48680,48680,11,49128,49128,11,49576,49576,11,50024,50024,11,50472,50472,11,50920,50920,11,51368,51368,11,51816,51816,11,52264,52264,11,52712,52712,11,53160,53160,11,53608,53608,11,54056,54056,11,54504,54504,11,54952,54952,11,68108,68111,5,69933,69940,5,70197,70197,7,70498,70499,7,70845,70845,5,71229,71229,5,71727,71735,5,72154,72155,5,72344,72345,5,73023,73029,5,94095,94098,5,121403,121452,5,126981,127182,14,127538,127546,14,127990,127990,14,128391,128391,14,128445,128449,14,128500,128505,14,128752,128752,14,129160,129167,14,129356,129356,14,129432,129442,14,129648,129651,14,129751,131069,14,173,173,4,1757,1757,1,2274,2274,1,2494,2494,5,2641,2641,5,2876,2876,5,3014,3016,7,3262,3262,7,3393,3396,5,3570,3571,7,3968,3972,5,4228,4228,7,6086,6086,5,6679,6680,5,6912,6915,5,7080,7081,5,7380,7392,5,8252,8252,14,9096,9096,14,9748,9749,14,9784,9786,14,9833,9850,14,9890,9894,14,9938,9938,14,9999,9999,14,10085,10087,14,12349,12349,14,43136,43137,7,43454,43456,7,43755,43755,7,44088,44088,11,44312,44312,11,44536,44536,11,44760,44760,11,44984,44984,11,45208,45208,11,45432,45432,11,45656,45656,11,45880,45880,11,46104,46104,11,46328,46328,11,46552,46552,11,46776,46776,11,47000,47000,11,47224,47224,11,47448,47448,11,47672,47672,11,47896,47896,11,48120,48120,11,48344,48344,11,48568,48568,11,48792,48792,11,49016,49016,11,49240,49240,11,49464,49464,11,49688,49688,11,49912,49912,11,50136,50136,11,50360,50360,11,50584,50584,11,50808,50808,11,51032,51032,11,51256,51256,11,51480,51480,11,51704,51704,11,51928,51928,11,52152,52152,11,52376,52376,11,52600,52600,11,52824,52824,11,53048,53048,11,53272,53272,11,53496,53496,11,53720,53720,11,53944,53944,11,54168,54168,11,54392,54392,11,54616,54616,11,54840,54840,11,55064,55064,11,65438,65439,5,69633,69633,5,69837,69837,1,70018,70018,7,70188,70190,7,70368,70370,7,70465,70468,7,70712,70719,5,70835,70840,5,70850,70851,5,71132,71133,5,71340,71340,7,71458,71461,5,71985,71989,7,72002,72002,7,72193,72202,5,72281,72283,5,72766,72766,7,72885,72886,5,73104,73105,5,92912,92916,5,113824,113827,4,119173,119179,5,121505,121519,5,125136,125142,5,127279,127279,14,127489,127490,14,127570,127743,14,127900,127901,14,128254,128254,14,128369,128370,14,128400,128400,14,128425,128432,14,128468,128475,14,128489,128494,14,128715,128720,14,128745,128745,14,128759,128760,14,129004,129023,14,129296,129304,14,129340,129342,14,129388,129392,14,129404,129407,14,129454,129455,14,129485,129487,14,129659,129663,14,129719,129727,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2363,2363,7,2402,2403,5,2507,2508,7,2622,2624,7,2691,2691,7,2786,2787,5,2881,2884,5,3006,3006,5,3072,3072,5,3170,3171,5,3267,3268,7,3330,3331,7,3406,3406,1,3538,3540,5,3655,3662,5,3897,3897,5,4038,4038,5,4184,4185,5,4352,4447,8,6068,6069,5,6155,6157,5,6448,6449,7,6742,6742,5,6783,6783,5,6966,6970,5,7042,7042,7,7143,7143,7,7212,7219,5,7412,7412,5,8206,8207,4,8294,8303,4,8596,8601,14,9410,9410,14,9742,9742,14,9757,9757,14,9770,9770,14,9794,9794,14,9828,9828,14,9855,9855,14,9882,9882,14,9900,9903,14,9929,9933,14,9963,9967,14,9987,9988,14,10006,10006,14,10062,10062,14,10175,10175,14,11744,11775,5,42607,42607,5,43043,43044,7,43263,43263,5,43444,43445,7,43569,43570,5,43698,43700,5,43766,43766,5,44032,44032,11,44144,44144,11,44256,44256,11,44368,44368,11,44480,44480,11,44592,44592,11,44704,44704,11,44816,44816,11,44928,44928,11,45040,45040,11,45152,45152,11,45264,45264,11,45376,45376,11,45488,45488,11,45600,45600,11,45712,45712,11,45824,45824,11,45936,45936,11,46048,46048,11,46160,46160,11,46272,46272,11,46384,46384,11,46496,46496,11,46608,46608,11,46720,46720,11,46832,46832,11,46944,46944,11,47056,47056,11,47168,47168,11,47280,47280,11,47392,47392,11,47504,47504,11,47616,47616,11,47728,47728,11,47840,47840,11,47952,47952,11,48064,48064,11,48176,48176,11,48288,48288,11,48400,48400,11,48512,48512,11,48624,48624,11,48736,48736,11,48848,48848,11,48960,48960,11,49072,49072,11,49184,49184,11,49296,49296,11,49408,49408,11,49520,49520,11,49632,49632,11,49744,49744,11,49856,49856,11,49968,49968,11,50080,50080,11,50192,50192,11,50304,50304,11,50416,50416,11,50528,50528,11,50640,50640,11,50752,50752,11,50864,50864,11,50976,50976,11,51088,51088,11,51200,51200,11,51312,51312,11,51424,51424,11,51536,51536,11,51648,51648,11,51760,51760,11,51872,51872,11,51984,51984,11,52096,52096,11,52208,52208,11,52320,52320,11,52432,52432,11,52544,52544,11,52656,52656,11,52768,52768,11,52880,52880,11,52992,52992,11,53104,53104,11,53216,53216,11,53328,53328,11,53440,53440,11,53552,53552,11,53664,53664,11,53776,53776,11,53888,53888,11,54000,54000,11,54112,54112,11,54224,54224,11,54336,54336,11,54448,54448,11,54560,54560,11,54672,54672,11,54784,54784,11,54896,54896,11,55008,55008,11,55120,55120,11,64286,64286,5,66272,66272,5,68900,68903,5,69762,69762,7,69817,69818,5,69927,69931,5,70003,70003,5,70070,70078,5,70094,70094,7,70194,70195,7,70206,70206,5,70400,70401,5,70463,70463,7,70475,70477,7,70512,70516,5,70722,70724,5,70832,70832,5,70842,70842,5,70847,70848,5,71088,71089,7,71102,71102,7,71219,71226,5,71231,71232,5,71342,71343,7,71453,71455,5,71463,71467,5,71737,71738,5,71995,71996,5,72000,72000,7,72145,72147,7,72160,72160,5,72249,72249,7,72273,72278,5,72330,72342,5,72752,72758,5,72850,72871,5,72882,72883,5,73018,73018,5,73031,73031,5,73109,73109,5,73461,73462,7,94031,94031,5,94192,94193,7,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,126976,126979,14,127184,127231,14,127344,127345,14,127405,127461,14,127514,127514,14,127561,127567,14,127778,127779,14,127896,127896,14,127985,127986,14,127995,127999,5,128326,128328,14,128360,128366,14,128378,128378,14,128394,128397,14,128405,128406,14,128422,128423,14,128435,128443,14,128453,128464,14,128479,128480,14,128484,128487,14,128496,128498,14,128640,128709,14,128723,128724,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129096,129103,14,129292,129292,14,129311,129311,14,129329,129330,14,129344,129349,14,129360,129374,14,129394,129394,14,129402,129402,14,129413,129425,14,129445,129450,14,129466,129471,14,129483,129483,14,129511,129535,14,129653,129655,14,129667,129670,14,129705,129711,14,129731,129743,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,2307,2307,7,2366,2368,7,2382,2383,7,2434,2435,7,2497,2500,5,2519,2519,5,2563,2563,7,2631,2632,5,2677,2677,5,2750,2752,7,2763,2764,7,2817,2817,5,2879,2879,5,2891,2892,7,2914,2915,5,3008,3008,5,3021,3021,5,3076,3076,5,3146,3149,5,3202,3203,7,3264,3265,7,3271,3272,7,3298,3299,5,3390,3390,5,3402,3404,7,3426,3427,5,3535,3535,5,3544,3550,7,3635,3635,7,3763,3763,7,3893,3893,5,3953,3966,5,3981,3991,5,4145,4145,7,4157,4158,5,4209,4212,5,4237,4237,5,4520,4607,10,5970,5971,5,6071,6077,5,6089,6099,5,6277,6278,5,6439,6440,5,6451,6456,7,6683,6683,5,6744,6750,5,6765,6770,7,6846,6846,5,6964,6964,5,6972,6972,5,7019,7027,5,7074,7077,5,7083,7085,5,7146,7148,7,7154,7155,7,7222,7223,5,7394,7400,5,7416,7417,5,8204,8204,5,8233,8233,4,8288,8292,4,8413,8416,5,8482,8482,14,8986,8987,14,9193,9203,14,9654,9654,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9775,14,9792,9792,14,9800,9811,14,9825,9826,14,9831,9831,14,9852,9853,14,9872,9873,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9936,9936,14,9941,9960,14,9974,9974,14,9982,9985,14,9992,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10145,10145,14,11013,11015,14,11503,11505,5,12334,12335,5,12951,12951,14,42612,42621,5,43014,43014,5,43047,43047,7,43204,43205,5,43335,43345,5,43395,43395,7,43450,43451,7,43561,43566,5,43573,43574,5,43644,43644,5,43710,43711,5,43758,43759,7,44005,44005,5,44012,44012,7,44060,44060,11,44116,44116,11,44172,44172,11,44228,44228,11,44284,44284,11,44340,44340,11,44396,44396,11,44452,44452,11,44508,44508,11,44564,44564,11,44620,44620,11,44676,44676,11,44732,44732,11,44788,44788,11,44844,44844,11,44900,44900,11,44956,44956,11,45012,45012,11,45068,45068,11,45124,45124,11,45180,45180,11,45236,45236,11,45292,45292,11,45348,45348,11,45404,45404,11,45460,45460,11,45516,45516,11,45572,45572,11,45628,45628,11,45684,45684,11,45740,45740,11,45796,45796,11,45852,45852,11,45908,45908,11,45964,45964,11,46020,46020,11,46076,46076,11,46132,46132,11,46188,46188,11,46244,46244,11,46300,46300,11,46356,46356,11,46412,46412,11,46468,46468,11,46524,46524,11,46580,46580,11,46636,46636,11,46692,46692,11,46748,46748,11,46804,46804,11,46860,46860,11,46916,46916,11,46972,46972,11,47028,47028,11,47084,47084,11,47140,47140,11,47196,47196,11,47252,47252,11,47308,47308,11,47364,47364,11,47420,47420,11,47476,47476,11,47532,47532,11,47588,47588,11,47644,47644,11,47700,47700,11,47756,47756,11,47812,47812,11,47868,47868,11,47924,47924,11,47980,47980,11,48036,48036,11,48092,48092,11,48148,48148,11,48204,48204,11,48260,48260,11,48316,48316,11,48372,48372,11,48428,48428,11,48484,48484,11,48540,48540,11,48596,48596,11,48652,48652,11,48708,48708,11,48764,48764,11,48820,48820,11,48876,48876,11,48932,48932,11,48988,48988,11,49044,49044,11,49100,49100,11,49156,49156,11,49212,49212,11,49268,49268,11,49324,49324,11,49380,49380,11,49436,49436,11,49492,49492,11,49548,49548,11,49604,49604,11,49660,49660,11,49716,49716,11,49772,49772,11,49828,49828,11,49884,49884,11,49940,49940,11,49996,49996,11,50052,50052,11,50108,50108,11,50164,50164,11,50220,50220,11,50276,50276,11,50332,50332,11,50388,50388,11,50444,50444,11,50500,50500,11,50556,50556,11,50612,50612,11,50668,50668,11,50724,50724,11,50780,50780,11,50836,50836,11,50892,50892,11,50948,50948,11,51004,51004,11,51060,51060,11,51116,51116,11,51172,51172,11,51228,51228,11,51284,51284,11,51340,51340,11,51396,51396,11,51452,51452,11,51508,51508,11,51564,51564,11,51620,51620,11,51676,51676,11,51732,51732,11,51788,51788,11,51844,51844,11,51900,51900,11,51956,51956,11,52012,52012,11,52068,52068,11,52124,52124,11,52180,52180,11,52236,52236,11,52292,52292,11,52348,52348,11,52404,52404,11,52460,52460,11,52516,52516,11,52572,52572,11,52628,52628,11,52684,52684,11,52740,52740,11,52796,52796,11,52852,52852,11,52908,52908,11,52964,52964,11,53020,53020,11,53076,53076,11,53132,53132,11,53188,53188,11,53244,53244,11,53300,53300,11,53356,53356,11,53412,53412,11,53468,53468,11,53524,53524,11,53580,53580,11,53636,53636,11,53692,53692,11,53748,53748,11,53804,53804,11,53860,53860,11,53916,53916,11,53972,53972,11,54028,54028,11,54084,54084,11,54140,54140,11,54196,54196,11,54252,54252,11,54308,54308,11,54364,54364,11,54420,54420,11,54476,54476,11,54532,54532,11,54588,54588,11,54644,54644,11,54700,54700,11,54756,54756,11,54812,54812,11,54868,54868,11,54924,54924,11,54980,54980,11,55036,55036,11,55092,55092,11,55148,55148,11,55216,55238,9,65056,65071,5,65529,65531,4,68097,68099,5,68159,68159,5,69446,69456,5,69688,69702,5,69808,69810,7,69815,69816,7,69821,69821,1,69888,69890,5,69932,69932,7,69957,69958,7,70016,70017,5,70067,70069,7,70079,70080,7,70089,70092,5,70095,70095,5,70191,70193,5,70196,70196,5,70198,70199,5,70367,70367,5,70371,70378,5,70402,70403,7,70462,70462,5,70464,70464,5,70471,70472,7,70487,70487,5,70502,70508,5,70709,70711,7,70720,70721,7,70725,70725,7,70750,70750,5,70833,70834,7,70841,70841,7,70843,70844,7,70846,70846,7,70849,70849,7,71087,71087,5,71090,71093,5,71100,71101,5,71103,71104,5,71216,71218,7,71227,71228,7,71230,71230,7,71339,71339,5,71341,71341,5,71344,71349,5,71351,71351,5,71456,71457,7,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,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,123628,123631,5,125252,125258,5,126980,126980,14,127183,127183,14,127245,127247,14,127340,127343,14,127358,127359,14,127377,127386,14,127462,127487,6,127491,127503,14,127535,127535,14,127548,127551,14,127568,127569,14,127744,127777,14,127780,127891,14,127894,127895,14,127897,127899,14,127902,127984,14,127987,127989,14,127991,127994,14,128000,128253,14,128255,128317,14,128329,128334,14,128336,128359,14,128367,128368,14,128371,128377,14,128379,128390,14,128392,128393,14,128398,128399,14,128401,128404,14,128407,128419,14,128421,128421,14,128424,128424,14,128433,128434,14,128444,128444,14,128450,128452,14,128465,128467,14,128476,128478,14,128481,128481,14,128483,128483,14,128488,128488,14,128495,128495,14,128499,128499,14,128506,128591,14,128710,128714,14,128721,128722,14,128725,128725,14,128728,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,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,129664,129666,14,129671,129679,14,129686,129704,14,129712,129718,14,129728,129730,14,129744,129750,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,2259,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,3134,3136,5,3142,3144,5,3157,3158,5,3201,3201,5,3260,3260,5,3263,3263,5,3266,3266,5,3270,3270,5,3274,3275,7,3285,3286,5,3328,3329,5,3387,3388,5,3391,3392,7,3398,3400,7,3405,3405,5,3415,3415,5,3457,3457,5,3530,3530,5,3536,3537,7,3542,3542,5,3551,3551,5,3633,3633,5,3636,3642,5,3761,3761,5,3764,3772,5,3864,3865,5,3895,3895,5,3902,3903,7,3967,3967,7,3974,3975,5,3993,4028,5,4141,4144,5,4146,4151,5,4155,4156,7,4182,4183,7,4190,4192,5,4226,4226,5,4229,4230,5,4253,4253,5,4448,4519,9,4957,4959,5,5938,5940,5,6002,6003,5,6070,6070,7,6078,6085,7,6087,6088,7,6109,6109,5,6158,6158,4,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,6848,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,7673,5,8203,8203,4,8205,8205,13,8232,8232,4,8234,8238,4,8265,8265,14,8293,8293,4,8400,8412,5,8417,8417,5,8421,8432,5,8505,8505,14,8617,8618,14,9000,9000,14,9167,9167,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,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,9776,9783,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,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,9935,14,9937,9937,14,9939,9940,14,9961,9962,14,9968,9973,14,9975,9978,14,9981,9981,14,9986,9986,14,9989,9989,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,10084,14,10133,10135,14,10160,10160,14,10548,10549,14,11035,11036,14,11093,11093,14,11647,11647,5,12330,12333,5,12336,12336,14,12441,12442,5,12953,12953,14,42608,42610,5,42654,42655,5,43010,43010,5,43019,43019,5,43045,43046,5,43052,43052,5,43188,43203,7,43232,43249,5,43302,43309,5,43346,43347,7,43392,43394,5,43443,43443,5,43446,43449,5,43452,43453,5,43493,43493,5,43567,43568,7,43571,43572,7,43587,43587,5,43597,43597,7,43696,43696,5,43703,43704,5,43713,43713,5,43756,43757,5,43765,43765,7,44003,44004,7,44006,44007,7,44009,44010,7,44013,44013,5,44033,44059,12,44061,44087,12,44089,44115,12,44117,44143,12,44145,44171,12,44173,44199,12,44201,44227,12,44229,44255,12,44257,44283,12,44285,44311,12,44313,44339,12,44341,44367,12,44369,44395,12,44397,44423,12,44425,44451,12,44453,44479,12,44481,44507,12,44509,44535,12,44537,44563,12,44565,44591,12,44593,44619,12,44621,44647,12,44649,44675,12,44677,44703,12,44705,44731,12,44733,44759,12,44761,44787,12,44789,44815,12,44817,44843,12,44845,44871,12,44873,44899,12,44901,44927,12,44929,44955,12,44957,44983,12,44985,45011,12,45013,45039,12,45041,45067,12,45069,45095,12,45097,45123,12,45125,45151,12,45153,45179,12,45181,45207,12,45209,45235,12,45237,45263,12,45265,45291,12,45293,45319,12,45321,45347,12,45349,45375,12,45377,45403,12,45405,45431,12,45433,45459,12,45461,45487,12,45489,45515,12,45517,45543,12,45545,45571,12,45573,45599,12,45601,45627,12,45629,45655,12,45657,45683,12,45685,45711,12,45713,45739,12,45741,45767,12,45769,45795,12,45797,45823,12,45825,45851,12,45853,45879,12,45881,45907,12,45909,45935,12,45937,45963,12,45965,45991,12,45993,46019,12,46021,46047,12,46049,46075,12,46077,46103,12,46105,46131,12,46133,46159,12,46161,46187,12,46189,46215,12,46217,46243,12,46245,46271,12,46273,46299,12,46301,46327,12,46329,46355,12,46357,46383,12,46385,46411,12,46413,46439,12,46441,46467,12,46469,46495,12,46497,46523,12,46525,46551,12,46553,46579,12,46581,46607,12,46609,46635,12,46637,46663,12,46665,46691,12,46693,46719,12,46721,46747,12,46749,46775,12,46777,46803,12,46805,46831,12,46833,46859,12,46861,46887,12,46889,46915,12,46917,46943,12,46945,46971,12,46973,46999,12,47001,47027,12,47029,47055,12,47057,47083,12,47085,47111,12,47113,47139,12,47141,47167,12,47169,47195,12,47197,47223,12,47225,47251,12,47253,47279,12,47281,47307,12,47309,47335,12,47337,47363,12,47365,47391,12,47393,47419,12,47421,47447,12,47449,47475,12,47477,47503,12,47505,47531,12,47533,47559,12,47561,47587,12,47589,47615,12,47617,47643,12,47645,47671,12,47673,47699,12,47701,47727,12,47729,47755,12,47757,47783,12,47785,47811,12,47813,47839,12,47841,47867,12,47869,47895,12,47897,47923,12,47925,47951,12,47953,47979,12,47981,48007,12,48009,48035,12,48037,48063,12,48065,48091,12,48093,48119,12,48121,48147,12,48149,48175,12,48177,48203,12,48205,48231,12,48233,48259,12,48261,48287,12,48289,48315,12,48317,48343,12,48345,48371,12,48373,48399,12,48401,48427,12,48429,48455,12,48457,48483,12,48485,48511,12,48513,48539,12,48541,48567,12,48569,48595,12,48597,48623,12,48625,48651,12,48653,48679,12,48681,48707,12,48709,48735,12,48737,48763,12,48765,48791,12,48793,48819,12,48821,48847,12,48849,48875,12,48877,48903,12,48905,48931,12,48933,48959,12,48961,48987,12,48989,49015,12,49017,49043,12,49045,49071,12,49073,49099,12,49101,49127,12,49129,49155,12,49157,49183,12,49185,49211,12,49213,49239,12,49241,49267,12,49269,49295,12,49297,49323,12,49325,49351,12,49353,49379,12,49381,49407,12,49409,49435,12,49437,49463,12,49465,49491,12,49493,49519,12,49521,49547,12,49549,49575,12,49577,49603,12,49605,49631,12,49633,49659,12,49661,49687,12,49689,49715,12,49717,49743,12,49745,49771,12,49773,49799,12,49801,49827,12,49829,49855,12,49857,49883,12,49885,49911,12,49913,49939,12,49941,49967,12,49969,49995,12,49997,50023,12,50025,50051,12,50053,50079,12,50081,50107,12,50109,50135,12,50137,50163,12,50165,50191,12,50193,50219,12,50221,50247,12,50249,50275,12,50277,50303,12,50305,50331,12,50333,50359,12,50361,50387,12,50389,50415,12,50417,50443,12,50445,50471,12,50473,50499,12,50501,50527,12,50529,50555,12,50557,50583,12,50585,50611,12,50613,50639,12,50641,50667,12,50669,50695,12,50697,50723,12,50725,50751,12,50753,50779,12,50781,50807,12,50809,50835,12,50837,50863,12,50865,50891,12,50893,50919,12,50921,50947,12,50949,50975,12,50977,51003,12,51005,51031,12,51033,51059,12,51061,51087,12,51089,51115,12,51117,51143,12,51145,51171,12,51173,51199,12,51201,51227,12,51229,51255,12,51257,51283,12,51285,51311,12,51313,51339,12,51341,51367,12,51369,51395,12,51397,51423,12,51425,51451,12,51453,51479,12,51481,51507,12,51509,51535,12,51537,51563,12,51565,51591,12,51593,51619,12,51621,51647,12,51649,51675,12,51677,51703,12,51705,51731,12,51733,51759,12,51761,51787,12,51789,51815,12,51817,51843,12,51845,51871,12,51873,51899,12,51901,51927,12,51929,51955,12,51957,51983,12,51985,52011,12,52013,52039,12,52041,52067,12,52069,52095,12,52097,52123,12,52125,52151,12,52153,52179,12,52181,52207,12,52209,52235,12,52237,52263,12,52265,52291,12,52293,52319,12,52321,52347,12,52349,52375,12,52377,52403,12,52405,52431,12,52433,52459,12,52461,52487,12,52489,52515,12,52517,52543,12,52545,52571,12,52573,52599,12,52601,52627,12,52629,52655,12,52657,52683,12,52685,52711,12,52713,52739,12,52741,52767,12,52769,52795,12,52797,52823,12,52825,52851,12,52853,52879,12,52881,52907,12,52909,52935,12,52937,52963,12,52965,52991,12,52993,53019,12,53021,53047,12,53049,53075,12,53077,53103,12,53105,53131,12,53133,53159,12,53161,53187,12,53189,53215,12,53217,53243,12,53245,53271,12,53273,53299,12,53301,53327,12,53329,53355,12,53357,53383,12,53385,53411,12,53413,53439,12,53441,53467,12,53469,53495,12,53497,53523,12,53525,53551,12,53553,53579,12,53581,53607,12,53609,53635,12,53637,53663,12,53665,53691,12,53693,53719,12,53721,53747,12,53749,53775,12,53777,53803,12,53805,53831,12,53833,53859,12,53861,53887,12,53889,53915,12,53917,53943,12,53945,53971,12,53973,53999,12,54001,54027,12,54029,54055,12,54057,54083,12,54085,54111,12,54113,54139,12,54141,54167,12,54169,54195,12,54197,54223,12,54225,54251,12,54253,54279,12,54281,54307,12,54309,54335,12,54337,54363,12,54365,54391,12,54393,54419,12,54421,54447,12,54449,54475,12,54477,54503,12,54505,54531,12,54533,54559,12,54561,54587,12,54589,54615,12,54617,54643,12,54645,54671,12,54673,54699,12,54701,54727,12,54729,54755,12,54757,54783,12,54785,54811,12,54813,54839,12,54841,54867,12,54869,54895,12,54897,54923,12,54925,54951,12,54953,54979,12,54981,55007,12,55009,55035,12,55037,55063,12,55065,55091,12,55093,55119,12,55121,55147,12,55149,55175,12,55177,55203,12,55243,55291,10,65024,65039,5,65279,65279,4,65520,65528,4,66045,66045,5,66422,66426,5,68101,68102,5,68152,68154,5,68325,68326,5,69291,69292,5,69632,69632,7,69634,69634,7,69759,69761,5]' ); } static getInstance() { return D._INSTANCE || (D._INSTANCE = new D()), D._INSTANCE; } getGraphemeBreakType(e) { if (e < 32) return 10 === e ? 3 : 13 === e ? 2 : 4; if (e < 127) return 0; const t = this._data, n = t.length / 3; let i = 1; for (; i <= n; ) if (e < t[3 * i]) i *= 2; else { if (!(e > t[3 * i + 1])) return t[3 * i + 2]; i = 2 * i + 1; } return 0; } } function F(e, t) { return ((t << 5) - t + e) | 0; } function K(e, t) { t = F(149417, t); for (let n = 0, i = e.length; n < i; n++) t = F(e.charCodeAt(n), t); return t; } function B(e, t, n = 32) { const i = n - t; return ((e << t) | ((~((1 << i) - 1) & e) >>> i)) >>> 0; } function W(e, t = 0, n = e.byteLength, i = 0) { for (let r = 0; r < n; r++) e[t + r] = i; } function q(e, t = 32) { return (function (e, t, n = '0') { for (; e.length < t; ) e = n + e; return e; })((e >>> 0).toString(16), t / 4); } D._INSTANCE = null; class H { constructor() { (this._h0 = 1732584193), (this._h1 = 4023233417), (this._h2 = 2562383102), (this._h3 = 271733878), (this._h4 = 3285377520), (this._buff = new Uint8Array(67)), (this._buffDV = new DataView(this._buff.buffer)), (this._buffLen = 0), (this._totalLen = 0), (this._leftoverHighSurrogate = 0), (this._finished = !1); } update(e) { const t = e.length; if (0 === t) return; const n = this._buff; let i, r, s = this._buffLen, o = this._leftoverHighSurrogate; for ( 0 !== o ? ((i = o), (r = -1), (o = 0)) : ((i = e.charCodeAt(0)), (r = 0)); ; ) { let a = i; if (U(i)) { if (!(r + 1 < t)) { o = i; break; } { const t = e.charCodeAt(r + 1); k(t) ? (r++, (a = t - 56320 + ((i - 55296) << 10) + 65536)) : (a = 65533); } } else k(i) && (a = 65533); if (((s = this._push(n, s, a)), r++, !(r < t))) break; i = e.charCodeAt(r); } (this._buffLen = s), (this._leftoverHighSurrogate = o); } _push(e, t, n) { return ( n < 128 ? (e[t++] = n) : n < 2048 ? ((e[t++] = 192 | ((1984 & n) >>> 6)), (e[t++] = 128 | ((63 & n) >>> 0))) : n < 65536 ? ((e[t++] = 224 | ((61440 & n) >>> 12)), (e[t++] = 128 | ((4032 & n) >>> 6)), (e[t++] = 128 | ((63 & n) >>> 0))) : ((e[t++] = 240 | ((1835008 & n) >>> 18)), (e[t++] = 128 | ((258048 & n) >>> 12)), (e[t++] = 128 | ((4032 & n) >>> 6)), (e[t++] = 128 | ((63 & n) >>> 0))), t >= 64 && (this._step(), (t -= 64), (this._totalLen += 64), (e[0] = e[64]), (e[1] = e[65]), (e[2] = e[66])), t ); } digest() { return ( this._finished || ((this._finished = !0), this._leftoverHighSurrogate && ((this._leftoverHighSurrogate = 0), (this._buffLen = this._push(this._buff, this._buffLen, 65533))), (this._totalLen += this._buffLen), this._wrapUp()), q(this._h0) + q(this._h1) + q(this._h2) + q(this._h3) + q(this._h4) ); } _wrapUp() { (this._buff[this._buffLen++] = 128), W(this._buff, this._buffLen), this._buffLen > 56 && (this._step(), W(this._buff)); const e = 8 * this._totalLen; this._buffDV.setUint32(56, Math.floor(e / 4294967296), !1), this._buffDV.setUint32(60, e % 4294967296, !1), this._step(); } _step() { const e = H._bigBlock32, t = this._buffDV; for (let n = 0; n < 64; n += 4) e.setUint32(n, t.getUint32(n, !1), !1); for (let t = 64; t < 320; t += 4) e.setUint32( t, B( e.getUint32(t - 12, !1) ^ e.getUint32(t - 32, !1) ^ e.getUint32(t - 56, !1) ^ e.getUint32(t - 64, !1), 1 ), !1 ); let n, i, r, s = this._h0, o = this._h1, a = this._h2, l = this._h3, u = this._h4; for (let t = 0; t < 80; t++) t < 20 ? ((n = (o & a) | (~o & l)), (i = 1518500249)) : t < 40 ? ((n = o ^ a ^ l), (i = 1859775393)) : t < 60 ? ((n = (o & a) | (o & l) | (a & l)), (i = 2400959708)) : ((n = o ^ a ^ l), (i = 3395469782)), (r = (B(s, 5) + n + u + i + e.getUint32(4 * t, !1)) & 4294967295), (u = l), (l = a), (a = B(o, 30)), (o = s), (s = r); (this._h0 = (this._h0 + s) & 4294967295), (this._h1 = (this._h1 + o) & 4294967295), (this._h2 = (this._h2 + a) & 4294967295), (this._h3 = (this._h3 + l) & 4294967295), (this._h4 = (this._h4 + u) & 4294967295); } } H._bigBlock32 = new DataView(new ArrayBuffer(320)); class V { constructor(e) { this.source = e; } getElements() { const e = this.source, t = new Int32Array(e.length); for (let n = 0, i = e.length; n < i; n++) t[n] = e.charCodeAt(n); return t; } } function Y(e, t, n) { return new z(new V(e), new V(t)).ComputeDiff(n).changes; } class $ { static Assert(e, t) { if (!e) throw new Error(t); } } class j { static Copy(e, t, n, i, r) { for (let s = 0; s < r; s++) n[i + s] = e[t + s]; } static Copy2(e, t, n, i, r) { for (let s = 0; s < r; s++) n[i + s] = e[t + s]; } } class G { constructor() { (this.m_changes = []), (this.m_originalStart = 1073741824), (this.m_modifiedStart = 1073741824), (this.m_originalCount = 0), (this.m_modifiedCount = 0); } MarkNextChange() { (this.m_originalCount > 0 || this.m_modifiedCount > 0) && this.m_changes.push( new P( this.m_originalStart, this.m_originalCount, this.m_modifiedStart, this.m_modifiedCount ) ), (this.m_originalCount = 0), (this.m_modifiedCount = 0), (this.m_originalStart = 1073741824), (this.m_modifiedStart = 1073741824); } AddOriginalElement(e, t) { (this.m_originalStart = Math.min(this.m_originalStart, e)), (this.m_modifiedStart = Math.min(this.m_modifiedStart, t)), this.m_originalCount++; } AddModifiedElement(e, t) { (this.m_originalStart = Math.min(this.m_originalStart, e)), (this.m_modifiedStart = Math.min(this.m_modifiedStart, t)), this.m_modifiedCount++; } getChanges() { return ( (this.m_originalCount > 0 || this.m_modifiedCount > 0) && this.MarkNextChange(), this.m_changes ); } getReverseChanges() { return ( (this.m_originalCount > 0 || this.m_modifiedCount > 0) && this.MarkNextChange(), this.m_changes.reverse(), this.m_changes ); } } class z { constructor(e, t, n = null) { this.ContinueProcessingPredicate = n; const [i, r, s] = z._getElements(e), [o, a, l] = z._getElements(t); (this._hasStrings = s && l), (this._originalStringElements = i), (this._originalElementsOrHash = r), (this._modifiedStringElements = o), (this._modifiedElementsOrHash = a), (this.m_forwardHistory = []), (this.m_reverseHistory = []); } static _isStringArray(e) { return e.length > 0 && 'string' == typeof e[0]; } static _getElements(e) { const t = e.getElements(); if (z._isStringArray(t)) { const e = new Int32Array(t.length); for (let n = 0, i = t.length; n < i; n++) e[n] = K(t[n], 0); return [t, e, !0]; } return t instanceof Int32Array ? [[], t, !1] : [[], new Int32Array(t), !1]; } ElementsAreEqual(e, t) { return ( this._originalElementsOrHash[e] === this._modifiedElementsOrHash[t] && (!this._hasStrings || this._originalStringElements[e] === this._modifiedStringElements[t]) ); } OriginalElementsAreEqual(e, t) { return ( this._originalElementsOrHash[e] === this._originalElementsOrHash[t] && (!this._hasStrings || this._originalStringElements[e] === this._originalStringElements[t]) ); } ModifiedElementsAreEqual(e, t) { return ( this._modifiedElementsOrHash[e] === this._modifiedElementsOrHash[t] && (!this._hasStrings || this._modifiedStringElements[e] === this._modifiedStringElements[t]) ); } ComputeDiff(e) { return this._ComputeDiff( 0, this._originalElementsOrHash.length - 1, 0, this._modifiedElementsOrHash.length - 1, e ); } _ComputeDiff(e, t, n, i, r) { const s = [!1]; let o = this.ComputeDiffRecursive(e, t, n, i, s); return ( r && (o = this.PrettifyChanges(o)), { quitEarly: s[0], changes: o } ); } ComputeDiffRecursive(e, t, n, i, r) { for (r[0] = !1; e <= t && n <= i && this.ElementsAreEqual(e, n); ) e++, n++; for (; t >= e && i >= n && this.ElementsAreEqual(t, i); ) t--, i--; if (e > t || n > i) { let r; return ( n <= i ? ($.Assert( e === t + 1, 'originalStart should only be one more than originalEnd' ), (r = [new P(e, 0, n, i - n + 1)])) : e <= t ? ($.Assert( n === i + 1, 'modifiedStart should only be one more than modifiedEnd' ), (r = [new P(e, t - e + 1, n, 0)])) : ($.Assert( e === t + 1, 'originalStart should only be one more than originalEnd' ), $.Assert( n === i + 1, 'modifiedStart should only be one more than modifiedEnd' ), (r = [])), r ); } const s = [0], o = [0], a = this.ComputeRecursionPoint(e, t, n, i, s, o, r), l = s[0], u = o[0]; if (null !== a) return a; if (!r[0]) { const s = this.ComputeDiffRecursive(e, l, n, u, r); let o = []; return ( (o = r[0] ? [new P(l + 1, t - (l + 1) + 1, u + 1, i - (u + 1) + 1)] : this.ComputeDiffRecursive(l + 1, t, u + 1, i, r)), this.ConcatenateChanges(s, o) ); } return [new P(e, t - e + 1, n, i - n + 1)]; } WALKTRACE(e, t, n, i, r, s, o, a, l, u, h, d, c, f, m, g, _, p) { let C = null, b = null, L = new G(), N = t, S = n, E = c[0] - g[0] - i, A = -1073741824, y = this.m_forwardHistory.length - 1; do { const t = E + e; t === N || (t < S && l[t - 1] < l[t + 1]) ? ((f = (h = l[t + 1]) - E - i), h < A && L.MarkNextChange(), (A = h), L.AddModifiedElement(h + 1, f), (E = t + 1 - e)) : ((f = (h = l[t - 1] + 1) - E - i), h < A && L.MarkNextChange(), (A = h - 1), L.AddOriginalElement(h, f + 1), (E = t - 1 - e)), y >= 0 && ((e = (l = this.m_forwardHistory[y])[0]), (N = 1), (S = l.length - 1)); } while (--y >= -1); if (((C = L.getReverseChanges()), p[0])) { let e = c[0] + 1, t = g[0] + 1; if (null !== C && C.length > 0) { const n = C[C.length - 1]; (e = Math.max(e, n.getOriginalEnd())), (t = Math.max(t, n.getModifiedEnd())); } b = [new P(e, d - e + 1, t, m - t + 1)]; } else { (L = new G()), (N = s), (S = o), (E = c[0] - g[0] - a), (A = 1073741824), (y = _ ? this.m_reverseHistory.length - 1 : this.m_reverseHistory.length - 2); do { const e = E + r; e === N || (e < S && u[e - 1] >= u[e + 1]) ? ((f = (h = u[e + 1] - 1) - E - a), h > A && L.MarkNextChange(), (A = h + 1), L.AddOriginalElement(h + 1, f + 1), (E = e + 1 - r)) : ((f = (h = u[e - 1]) - E - a), h > A && L.MarkNextChange(), (A = h), L.AddModifiedElement(h + 1, f + 1), (E = e - 1 - r)), y >= 0 && ((r = (u = this.m_reverseHistory[y])[0]), (N = 1), (S = u.length - 1)); } while (--y >= -1); b = L.getChanges(); } return this.ConcatenateChanges(C, b); } ComputeRecursionPoint(e, t, n, i, r, s, o) { let a = 0, l = 0, u = 0, h = 0, d = 0, c = 0; e--, n--, (r[0] = 0), (s[0] = 0), (this.m_forwardHistory = []), (this.m_reverseHistory = []); const f = t - e + (i - n), m = f + 1, g = new Int32Array(m), _ = new Int32Array(m), p = i - n, C = t - e, b = e - n, L = t - i, N = (C - p) % 2 == 0; (g[p] = e), (_[C] = t), (o[0] = !1); for (let S = 1; S <= f / 2 + 1; S++) { let f = 0, E = 0; (u = this.ClipDiagonalBound(p - S, S, p, m)), (h = this.ClipDiagonalBound(p + S, S, p, m)); for (let e = u; e <= h; e += 2) { (a = e === u || (e < h && g[e - 1] < g[e + 1]) ? g[e + 1] : g[e - 1] + 1), (l = a - (e - p) - b); const n = a; for (; a < t && l < i && this.ElementsAreEqual(a + 1, l + 1); ) a++, l++; if ( ((g[e] = a), a + l > f + E && ((f = a), (E = l)), !N && Math.abs(e - C) <= S - 1 && a >= _[e]) ) return ( (r[0] = a), (s[0] = l), n <= _[e] && S <= 1448 ? this.WALKTRACE( p, u, h, b, C, d, c, L, g, _, a, t, r, l, i, s, N, o ) : null ); } const A = (f - e + (E - n) - S) / 2; if ( null !== this.ContinueProcessingPredicate && !this.ContinueProcessingPredicate(f, A) ) return ( (o[0] = !0), (r[0] = f), (s[0] = E), A > 0 && S <= 1448 ? this.WALKTRACE( p, u, h, b, C, d, c, L, g, _, a, t, r, l, i, s, N, o ) : (e++, n++, [new P(e, t - e + 1, n, i - n + 1)]) ); (d = this.ClipDiagonalBound(C - S, S, C, m)), (c = this.ClipDiagonalBound(C + S, S, C, m)); for (let f = d; f <= c; f += 2) { (a = f === d || (f < c && _[f - 1] >= _[f + 1]) ? _[f + 1] - 1 : _[f - 1]), (l = a - (f - C) - L); const m = a; for (; a > e && l > n && this.ElementsAreEqual(a, l); ) a--, l--; if (((_[f] = a), N && Math.abs(f - p) <= S && a <= g[f])) return ( (r[0] = a), (s[0] = l), m >= g[f] && S <= 1448 ? this.WALKTRACE( p, u, h, b, C, d, c, L, g, _, a, t, r, l, i, s, N, o ) : null ); } if (S <= 1447) { let e = new Int32Array(h - u + 2); (e[0] = p - u + 1), j.Copy2(g, u, e, 1, h - u + 1), this.m_forwardHistory.push(e), (e = new Int32Array(c - d + 2)), (e[0] = C - d + 1), j.Copy2(_, d, e, 1, c - d + 1), this.m_reverseHistory.push(e); } } return this.WALKTRACE( p, u, h, b, C, d, c, L, g, _, a, t, r, l, i, s, N, o ); } PrettifyChanges(e) { for (let t = 0; t < e.length; t++) { const n = e[t], i = t < e.length - 1 ? e[t + 1].originalStart : this._originalElementsOrHash.length, r = t < e.length - 1 ? e[t + 1].modifiedStart : this._modifiedElementsOrHash.length, s = n.originalLength > 0, o = n.modifiedLength > 0; for ( ; n.originalStart + n.originalLength < i && n.modifiedStart + n.modifiedLength < r && (!s || this.OriginalElementsAreEqual( n.originalStart, n.originalStart + n.originalLength )) && (!o || this.ModifiedElementsAreEqual( n.modifiedStart, n.modifiedStart + n.modifiedLength )); ) n.originalStart++, n.modifiedStart++; let a = [null]; t < e.length - 1 && this.ChangesOverlap(e[t], e[t + 1], a) && ((e[t] = a[0]), e.splice(t + 1, 1), t--); } for (let t = e.length - 1; t >= 0; t--) { const n = e[t]; let i = 0, r = 0; if (t > 0) { const n = e[t - 1]; n.originalLength > 0 && (i = n.originalStart + n.originalLength), n.modifiedLength > 0 && (r = n.modifiedStart + n.modifiedLength); } const s = n.originalLength > 0, o = n.modifiedLength > 0; let a = 0, l = this._boundaryScore( n.originalStart, n.originalLength, n.modifiedStart, n.modifiedLength ); for (let e = 1; ; e++) { const t = n.originalStart - e, u = n.modifiedStart - e; if (t < i || u < r) break; if (s && !this.OriginalElementsAreEqual(t, t + n.originalLength)) break; if (o && !this.ModifiedElementsAreEqual(u, u + n.modifiedLength)) break; const h = this._boundaryScore( t, n.originalLength, u, n.modifiedLength ); h > l && ((l = h), (a = e)); } (n.originalStart -= a), (n.modifiedStart -= a); } return e; } _OriginalIsBoundary(e) { return ( e <= 0 || e >= this._originalElementsOrHash.length - 1 || (this._hasStrings && /^\s*$/.test(this._originalStringElements[e])) ); } _OriginalRegionIsBoundary(e, t) { if (this._OriginalIsBoundary(e) || this._OriginalIsBoundary(e - 1)) return !0; if (t > 0) { const n = e + t; if (this._OriginalIsBoundary(n - 1) || this._OriginalIsBoundary(n)) return !0; } return !1; } _ModifiedIsBoundary(e) { return ( e <= 0 || e >= this._modifiedElementsOrHash.length - 1 || (this._hasStrings && /^\s*$/.test(this._modifiedStringElements[e])) ); } _ModifiedRegionIsBoundary(e, t) { if (this._ModifiedIsBoundary(e) || this._ModifiedIsBoundary(e - 1)) return !0; if (t > 0) { const n = e + t; if (this._ModifiedIsBoundary(n - 1) || this._ModifiedIsBoundary(n)) return !0; } return !1; } _boundaryScore(e, t, n, i) { return ( (this._OriginalRegionIsBoundary(e, t) ? 1 : 0) + (this._ModifiedRegionIsBoundary(n, i) ? 1 : 0) ); } ConcatenateChanges(e, t) { let n = []; if (0 === e.length || 0 === t.length) return t.length > 0 ? t : e; if (this.ChangesOverlap(e[e.length - 1], t[0], n)) { const i = new Array(e.length + t.length - 1); return ( j.Copy(e, 0, i, 0, e.length - 1), (i[e.length - 1] = n[0]), j.Copy(t, 1, i, e.length, t.length - 1), i ); } { const n = new Array(e.length + t.length); return ( j.Copy(e, 0, n, 0, e.length), j.Copy(t, 0, n, e.length, t.length), n ); } } ChangesOverlap(e, t, n) { if ( ($.Assert( e.originalStart <= t.originalStart, 'Left change is not less than or equal to right change' ), $.Assert( e.modifiedStart <= t.modifiedStart, 'Left change is not less than or equal to right change' ), e.originalStart + e.originalLength >= t.originalStart || e.modifiedStart + e.modifiedLength >= t.modifiedStart) ) { const i = e.originalStart; let r = e.originalLength; const s = e.modifiedStart; let o = e.modifiedLength; return ( e.originalStart + e.originalLength >= t.originalStart && (r = t.originalStart + t.originalLength - e.originalStart), e.modifiedStart + e.modifiedLength >= t.modifiedStart && (o = t.modifiedStart + t.modifiedLength - e.modifiedStart), (n[0] = new P(i, r, s, o)), !0 ); } return (n[0] = null), !1; } ClipDiagonalBound(e, t, n, i) { if (e >= 0 && e < i) return e; const r = t % 2 == 0; return e < 0 ? r === (n % 2 == 0) ? 0 : 1 : r === ((i - n - 1) % 2 == 0) ? i - 1 : i - 2; } } const Q = 'undefined' == typeof process ? { cwd: () => '/', env: Object.create(null), get platform() { return A ? 'win32' : y ? 'darwin' : 'linux'; }, nextTick: (e) => v(e), } : process, X = Q.cwd, Z = Q.env, J = Q.platform, ee = 46, te = 47, ne = 92, ie = 58; class re extends Error { constructor(e, t, n) { let i; 'string' == typeof t && 0 === t.indexOf('not ') ? ((i = 'must not be'), (t = t.replace(/^not /, ''))) : (i = 'must be'); const r = -1 !== e.indexOf('.') ? 'property' : 'argument'; let s = `The "${e}" ${r} ${i} of type ${t}`; (s += '. Received type ' + typeof n), super(s), (this.code = 'ERR_INVALID_ARG_TYPE'); } } function se(e, t) { if ('string' != typeof e) throw new re(t, 'string', e); } function oe(e) { return e === te || e === ne; } function ae(e) { return e === te; } function le(e) { return (e >= 65 && e <= 90) || (e >= 97 && e <= 122); } function ue(e, t, n, i) { let r = '', s = 0, o = -1, a = 0, l = 0; for (let u = 0; u <= e.length; ++u) { if (u < e.length) l = e.charCodeAt(u); else { if (i(l)) break; l = te; } if (i(l)) { if (o === u - 1 || 1 === a); else if (2 === a) { if ( r.length < 2 || 2 !== s || r.charCodeAt(r.length - 1) !== ee || r.charCodeAt(r.length - 2) !== ee ) { if (r.length > 2) { const e = r.lastIndexOf(n); -1 === e ? ((r = ''), (s = 0)) : ((r = r.slice(0, e)), (s = r.length - 1 - r.lastIndexOf(n))), (o = u), (a = 0); continue; } if (0 !== r.length) { (r = ''), (s = 0), (o = u), (a = 0); continue; } } t && ((r += r.length > 0 ? `${n}..` : '..'), (s = 2)); } else r.length > 0 ? (r += `${n}${e.slice(o + 1, u)}`) : (r = e.slice(o + 1, u)), (s = u - o - 1); (o = u), (a = 0); } else l === ee && -1 !== a ? ++a : (a = -1); } return r; } function he(e, t) { if (null === t || 'object' != typeof t) throw new re('pathObject', 'Object', t); const n = t.dir || t.root, i = t.base || `${t.name || ''}${t.ext || ''}`; return n ? (n === t.root ? `${n}${i}` : `${n}${e}${i}`) : i; } const de = { resolve(...e) { let t = '', n = '', i = !1; for (let r = e.length - 1; r >= -1; r--) { let s; if (r >= 0) { if (((s = e[r]), se(s, 'path'), 0 === s.length)) continue; } else 0 === t.length ? (s = X()) : ((s = Z[`=${t}`] || X()), (void 0 === s || (s.slice(0, 2).toLowerCase() !== t.toLowerCase() && s.charCodeAt(2) === ne)) && (s = `${t}\\`)); const o = s.length; let a = 0, l = '', u = !1; const h = s.charCodeAt(0); if (1 === o) oe(h) && ((a = 1), (u = !0)); else if (oe(h)) if (((u = !0), oe(s.charCodeAt(1)))) { let e = 2, t = e; for (; e < o && !oe(s.charCodeAt(e)); ) e++; if (e < o && e !== t) { const n = s.slice(t, e); for (t = e; e < o && oe(s.charCodeAt(e)); ) e++; if (e < o && e !== t) { for (t = e; e < o && !oe(s.charCodeAt(e)); ) e++; (e !== o && e === t) || ((l = `\\\\${n}\\${s.slice(t, e)}`), (a = e)); } } } else a = 1; else le(h) && s.charCodeAt(1) === ie && ((l = s.slice(0, 2)), (a = 2), o > 2 && oe(s.charCodeAt(2)) && ((u = !0), (a = 3))); if (l.length > 0) if (t.length > 0) { if (l.toLowerCase() !== t.toLowerCase()) continue; } else t = l; if (i) { if (t.length > 0) break; } else if (((n = `${s.slice(a)}\\${n}`), (i = u), u && t.length > 0)) break; } return (n = ue(n, !i, '\\', oe)), i ? `${t}\\${n}` : `${t}${n}` || '.'; }, normalize(e) { se(e, 'path'); const t = e.length; if (0 === t) return '.'; let n, i = 0, r = !1; const s = e.charCodeAt(0); if (1 === t) return ae(s) ? '\\' : e; if (oe(s)) if (((r = !0), oe(e.charCodeAt(1)))) { let r = 2, s = r; for (; r < t && !oe(e.charCodeAt(r)); ) r++; if (r < t && r !== s) { const o = e.slice(s, r); for (s = r; r < t && oe(e.charCodeAt(r)); ) r++; if (r < t && r !== s) { for (s = r; r < t && !oe(e.charCodeAt(r)); ) r++; if (r === t) return `\\\\${o}\\${e.slice(s)}\\`; r !== s && ((n = `\\\\${o}\\${e.slice(s, r)}`), (i = r)); } } } else i = 1; else le(s) && e.charCodeAt(1) === ie && ((n = e.slice(0, 2)), (i = 2), t > 2 && oe(e.charCodeAt(2)) && ((r = !0), (i = 3))); let o = i < t ? ue(e.slice(i), !r, '\\', oe) : ''; return ( 0 !== o.length || r || (o = '.'), o.length > 0 && oe(e.charCodeAt(t - 1)) && (o += '\\'), void 0 === n ? (r ? `\\${o}` : o) : r ? `${n}\\${o}` : `${n}${o}` ); }, isAbsolute(e) { se(e, 'path'); const t = e.length; if (0 === t) return !1; const n = e.charCodeAt(0); return ( oe(n) || (t > 2 && le(n) && e.charCodeAt(1) === ie && oe(e.charCodeAt(2))) ); }, join(...e) { if (0 === e.length) return '.'; let t, n; for (let i = 0; i < e.length; ++i) { const r = e[i]; se(r, 'path'), r.length > 0 && (void 0 === t ? (t = n = r) : (t += `\\${r}`)); } if (void 0 === t) return '.'; let i = !0, r = 0; if ('string' == typeof n && oe(n.charCodeAt(0))) { ++r; const e = n.length; e > 1 && oe(n.charCodeAt(1)) && (++r, e > 2 && (oe(n.charCodeAt(2)) ? ++r : (i = !1))); } if (i) { for (; r < t.length && oe(t.charCodeAt(r)); ) r++; r >= 2 && (t = `\\${t.slice(r)}`); } return de.normalize(t); }, relative(e, t) { if ((se(e, 'from'), se(t, 'to'), e === t)) return ''; const n = de.resolve(e), i = de.resolve(t); if (n === i) return ''; if ((e = n.toLowerCase()) === (t = i.toLowerCase())) return ''; let r = 0; for (; r < e.length && e.charCodeAt(r) === ne; ) r++; let s = e.length; for (; s - 1 > r && e.charCodeAt(s - 1) === ne; ) s--; const o = s - r; let a = 0; for (; a < t.length && t.charCodeAt(a) === ne; ) a++; let l = t.length; for (; l - 1 > a && t.charCodeAt(l - 1) === ne; ) l--; const u = l - a, h = o < u ? o : u; let d = -1, c = 0; for (; c < h; c++) { const n = e.charCodeAt(r + c); if (n !== t.charCodeAt(a + c)) break; n === ne && (d = c); } if (c !== h) { if (-1 === d) return i; } else { if (u > h) { if (t.charCodeAt(a + c) === ne) return i.slice(a + c + 1); if (2 === c) return i.slice(a + c); } o > h && (e.charCodeAt(r + c) === ne ? (d = c) : 2 === c && (d = 3)), -1 === d && (d = 0); } let f = ''; for (c = r + d + 1; c <= s; ++c) (c !== s && e.charCodeAt(c) !== ne) || (f += 0 === f.length ? '..' : '\\..'); return ( (a += d), f.length > 0 ? `${f}${i.slice(a, l)}` : (i.charCodeAt(a) === ne && ++a, i.slice(a, l)) ); }, toNamespacedPath(e) { if ('string' != typeof e) return e; if (0 === e.length) return ''; const t = de.resolve(e); if (t.length <= 2) return e; if (t.charCodeAt(0) === ne) { if (t.charCodeAt(1) === ne) { const e = t.charCodeAt(2); if (63 !== e && e !== ee) return `\\\\?\\UNC\\${t.slice(2)}`; } } else if ( le(t.charCodeAt(0)) && t.charCodeAt(1) === ie && t.charCodeAt(2) === ne ) return `\\\\?\\${t}`; return e; }, dirname(e) { se(e, 'path'); const t = e.length; if (0 === t) return '.'; let n = -1, i = 0; const r = e.charCodeAt(0); if (1 === t) return oe(r) ? e : '.'; if (oe(r)) { if (((n = i = 1), oe(e.charCodeAt(1)))) { let r = 2, s = r; for (; r < t && !oe(e.charCodeAt(r)); ) r++; if (r < t && r !== s) { for (s = r; r < t && oe(e.charCodeAt(r)); ) r++; if (r < t && r !== s) { for (s = r; r < t && !oe(e.charCodeAt(r)); ) r++; if (r === t) return e; r !== s && (n = i = r + 1); } } } } else le(r) && e.charCodeAt(1) === ie && ((n = t > 2 && oe(e.charCodeAt(2)) ? 3 : 2), (i = n)); let s = -1, o = !0; for (let n = t - 1; n >= i; --n) if (oe(e.charCodeAt(n))) { if (!o) { s = n; break; } } else o = !1; if (-1 === s) { if (-1 === n) return '.'; s = n; } return e.slice(0, s); }, basename(e, t) { void 0 !== t && se(t, 'ext'), se(e, 'path'); let n, i = 0, r = -1, s = !0; if ( (e.length >= 2 && le(e.charCodeAt(0)) && e.charCodeAt(1) === ie && (i = 2), void 0 !== t && t.length > 0 && t.length <= e.length) ) { if (t === e) return ''; let o = t.length - 1, a = -1; for (n = e.length - 1; n >= i; --n) { const l = e.charCodeAt(n); if (oe(l)) { if (!s) { i = n + 1; break; } } else -1 === a && ((s = !1), (a = n + 1)), o >= 0 && (l === t.charCodeAt(o) ? -1 == --o && (r = n) : ((o = -1), (r = a))); } return i === r ? (r = a) : -1 === r && (r = e.length), e.slice(i, r); } for (n = e.length - 1; n >= i; --n) if (oe(e.charCodeAt(n))) { if (!s) { i = n + 1; break; } } else -1 === r && ((s = !1), (r = n + 1)); return -1 === r ? '' : e.slice(i, r); }, extname(e) { se(e, 'path'); let t = 0, n = -1, i = 0, r = -1, s = !0, o = 0; e.length >= 2 && e.charCodeAt(1) === ie && le(e.charCodeAt(0)) && (t = i = 2); for (let a = e.length - 1; a >= t; --a) { const t = e.charCodeAt(a); if (oe(t)) { if (!s) { i = a + 1; break; } } else -1 === r && ((s = !1), (r = a + 1)), t === ee ? -1 === n ? (n = a) : 1 !== o && (o = 1) : -1 !== n && (o = -1); } return -1 === n || -1 === r || 0 === o || (1 === o && n === r - 1 && n === i + 1) ? '' : e.slice(n, r); }, format: he.bind(null, '\\'), parse(e) { se(e, 'path'); const t = { root: '', dir: '', base: '', ext: '', name: '' }; if (0 === e.length) return t; const n = e.length; let i = 0, r = e.charCodeAt(0); if (1 === n) return oe(r) ? ((t.root = t.dir = e), t) : ((t.base = t.name = e), t); if (oe(r)) { if (((i = 1), oe(e.charCodeAt(1)))) { let t = 2, r = t; for (; t < n && !oe(e.charCodeAt(t)); ) t++; if (t < n && t !== r) { for (r = t; t < n && oe(e.charCodeAt(t)); ) t++; if (t < n && t !== r) { for (r = t; t < n && !oe(e.charCodeAt(t)); ) t++; t === n ? (i = t) : t !== r && (i = t + 1); } } } } else if (le(r) && e.charCodeAt(1) === ie) { if (n <= 2) return (t.root = t.dir = e), t; if (((i = 2), oe(e.charCodeAt(2)))) { if (3 === n) return (t.root = t.dir = e), t; i = 3; } } i > 0 && (t.root = e.slice(0, i)); let s = -1, o = i, a = -1, l = !0, u = e.length - 1, h = 0; for (; u >= i; --u) if (((r = e.charCodeAt(u)), oe(r))) { if (!l) { o = u + 1; break; } } else -1 === a && ((l = !1), (a = u + 1)), r === ee ? -1 === s ? (s = u) : 1 !== h && (h = 1) : -1 !== s && (h = -1); return ( -1 !== a && (-1 === s || 0 === h || (1 === h && s === a - 1 && s === o + 1) ? (t.base = t.name = e.slice(o, a)) : ((t.name = e.slice(o, s)), (t.base = e.slice(o, a)), (t.ext = e.slice(s, a)))), (t.dir = o > 0 && o !== i ? e.slice(0, o - 1) : t.root), t ); }, sep: '\\', delimiter: ';', win32: null, posix: null, }, ce = { resolve(...e) { let t = '', n = !1; for (let i = e.length - 1; i >= -1 && !n; i--) { const r = i >= 0 ? e[i] : X(); se(r, 'path'), 0 !== r.length && ((t = `${r}/${t}`), (n = r.charCodeAt(0) === te)); } return (t = ue(t, !n, '/', ae)), n ? `/${t}` : t.length > 0 ? t : '.'; }, normalize(e) { if ((se(e, 'path'), 0 === e.length)) return '.'; const t = e.charCodeAt(0) === te, n = e.charCodeAt(e.length - 1) === te; return 0 === (e = ue(e, !t, '/', ae)).length ? t ? '/' : n ? './' : '.' : (n && (e += '/'), t ? `/${e}` : e); }, isAbsolute: (e) => ( se(e, 'path'), e.length > 0 && e.charCodeAt(0) === te ), join(...e) { if (0 === e.length) return '.'; let t; for (let n = 0; n < e.length; ++n) { const i = e[n]; se(i, 'path'), i.length > 0 && (void 0 === t ? (t = i) : (t += `/${i}`)); } return void 0 === t ? '.' : ce.normalize(t); }, relative(e, t) { if ((se(e, 'from'), se(t, 'to'), e === t)) return ''; if ((e = ce.resolve(e)) === (t = ce.resolve(t))) return ''; const n = e.length, i = n - 1, r = t.length - 1, s = i < r ? i : r; let o = -1, a = 0; for (; a < s; a++) { const n = e.charCodeAt(1 + a); if (n !== t.charCodeAt(1 + a)) break; n === te && (o = a); } if (a === s) if (r > s) { if (t.charCodeAt(1 + a) === te) return t.slice(1 + a + 1); if (0 === a) return t.slice(1 + a); } else i > s && (e.charCodeAt(1 + a) === te ? (o = a) : 0 === a && (o = 0)); let l = ''; for (a = 1 + o + 1; a <= n; ++a) (a !== n && e.charCodeAt(a) !== te) || (l += 0 === l.length ? '..' : '/..'); return `${l}${t.slice(1 + o)}`; }, toNamespacedPath: (e) => e, dirname(e) { if ((se(e, 'path'), 0 === e.length)) return '.'; const t = e.charCodeAt(0) === te; let n = -1, i = !0; for (let t = e.length - 1; t >= 1; --t) if (e.charCodeAt(t) === te) { if (!i) { n = t; break; } } else i = !1; return -1 === n ? (t ? '/' : '.') : t && 1 === n ? '//' : e.slice(0, n); }, basename(e, t) { void 0 !== t && se(t, 'ext'), se(e, 'path'); let n, i = 0, r = -1, s = !0; if (void 0 !== t && t.length > 0 && t.length <= e.length) { if (t === e) return ''; let o = t.length - 1, a = -1; for (n = e.length - 1; n >= 0; --n) { const l = e.charCodeAt(n); if (l === te) { if (!s) { i = n + 1; break; } } else -1 === a && ((s = !1), (a = n + 1)), o >= 0 && (l === t.charCodeAt(o) ? -1 == --o && (r = n) : ((o = -1), (r = a))); } return i === r ? (r = a) : -1 === r && (r = e.length), e.slice(i, r); } for (n = e.length - 1; n >= 0; --n) if (e.charCodeAt(n) === te) { if (!s) { i = n + 1; break; } } else -1 === r && ((s = !1), (r = n + 1)); return -1 === r ? '' : e.slice(i, r); }, extname(e) { se(e, 'path'); let t = -1, n = 0, i = -1, r = !0, s = 0; for (let o = e.length - 1; o >= 0; --o) { const a = e.charCodeAt(o); if (a !== te) -1 === i && ((r = !1), (i = o + 1)), a === ee ? -1 === t ? (t = o) : 1 !== s && (s = 1) : -1 !== t && (s = -1); else if (!r) { n = o + 1; break; } } return -1 === t || -1 === i || 0 === s || (1 === s && t === i - 1 && t === n + 1) ? '' : e.slice(t, i); }, format: he.bind(null, '/'), parse(e) { se(e, 'path'); const t = { root: '', dir: '', base: '', ext: '', name: '' }; if (0 === e.length) return t; const n = e.charCodeAt(0) === te; let i; n ? ((t.root = '/'), (i = 1)) : (i = 0); let r = -1, s = 0, o = -1, a = !0, l = e.length - 1, u = 0; for (; l >= i; --l) { const t = e.charCodeAt(l); if (t !== te) -1 === o && ((a = !1), (o = l + 1)), t === ee ? -1 === r ? (r = l) : 1 !== u && (u = 1) : -1 !== r && (u = -1); else if (!a) { s = l + 1; break; } } if (-1 !== o) { const i = 0 === s && n ? 1 : s; -1 === r || 0 === u || (1 === u && r === o - 1 && r === s + 1) ? (t.base = t.name = e.slice(i, o)) : ((t.name = e.slice(i, r)), (t.base = e.slice(i, o)), (t.ext = e.slice(r, o))); } return s > 0 ? (t.dir = e.slice(0, s - 1)) : n && (t.dir = '/'), t; }, sep: '/', delimiter: ':', win32: null, posix: null, }; (ce.win32 = de.win32 = de), (ce.posix = de.posix = ce), 'win32' === J ? de.normalize : ce.normalize, 'win32' === J ? de.resolve : ce.resolve, 'win32' === J ? de.relative : ce.relative, 'win32' === J ? de.dirname : ce.dirname, 'win32' === J ? de.basename : ce.basename, 'win32' === J ? de.extname : ce.extname, 'win32' === J ? de.sep : ce.sep; const fe = /^\w[\w\d+.-]*$/, me = /^\//, ge = /^\/\//, _e = '', pe = '/', Ce = /^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/; class be { constructor(e, t, n, i, r, s = !1) { 'object' == typeof e ? ((this.scheme = e.scheme || _e), (this.authority = e.authority || _e), (this.path = e.path || _e), (this.query = e.query || _e), (this.fragment = e.fragment || _e)) : ((this.scheme = (function (e, t) { return e || t ? e : 'file'; })(e, s)), (this.authority = t || _e), (this.path = (function (e, t) { switch (e) { case 'https': case 'http': case 'file': t ? t[0] !== pe && (t = pe + t) : (t = pe); } return t; })(this.scheme, n || _e)), (this.query = i || _e), (this.fragment = r || _e), (function (e, t) { if (!e.scheme && t) throw new Error( `[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}` ); if (e.scheme && !fe.test(e.scheme)) throw new Error( '[UriError]: Scheme contains illegal characters.' ); if (e.path) if (e.authority) { if (!me.test(e.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 (ge.test(e.path)) throw new Error( '[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")' ); })(this, s)); } static isUri(e) { return ( e instanceof be || (!!e && 'string' == typeof e.authority && 'string' == typeof e.fragment && 'string' == typeof e.path && 'string' == typeof e.query && 'string' == typeof e.scheme && 'function' == typeof e.fsPath && 'function' == typeof e.with && 'function' == typeof e.toString) ); } get fsPath() { return ye(this, !1); } with(e) { if (!e) return this; let { scheme: t, authority: n, path: i, query: r, fragment: s } = e; return ( void 0 === t ? (t = this.scheme) : null === t && (t = _e), void 0 === n ? (n = this.authority) : null === n && (n = _e), void 0 === i ? (i = this.path) : null === i && (i = _e), void 0 === r ? (r = this.query) : null === r && (r = _e), void 0 === s ? (s = this.fragment) : null === s && (s = _e), t === this.scheme && n === this.authority && i === this.path && r === this.query && s === this.fragment ? this : new Ne(t, n, i, r, s) ); } static parse(e, t = !1) { const n = Ce.exec(e); return n ? new Ne( n[2] || _e, Oe(n[4] || _e), Oe(n[5] || _e), Oe(n[7] || _e), Oe(n[9] || _e), t ) : new Ne(_e, _e, _e, _e, _e); } static file(e) { let t = _e; if ((A && (e = e.replace(/\\/g, pe)), e[0] === pe && e[1] === pe)) { const n = e.indexOf(pe, 2); -1 === n ? ((t = e.substring(2)), (e = pe)) : ((t = e.substring(2, n)), (e = e.substring(n) || pe)); } return new Ne('file', t, e, _e, _e); } static from(e) { return new Ne(e.scheme, e.authority, e.path, e.query, e.fragment); } static joinPath(e, ...t) { if (!e.path) throw new Error( '[UriError]: cannot call joinPaths on URI without path' ); let n; return ( (n = A && 'file' === e.scheme ? be.file(de.join(ye(e, !0), ...t)).path : ce.join(e.path, ...t)), e.with({ path: n }) ); } toString(e = !1) { return we(this, e); } toJSON() { return this; } static revive(e) { if (e) { if (e instanceof be) return e; { const t = new Ne(e); return ( (t._formatted = e.external), (t._fsPath = e._sep === Le ? e.fsPath : null), t ); } } return e; } } const Le = A ? 1 : void 0; class Ne extends be { constructor() { super(...arguments), (this._formatted = null), (this._fsPath = null); } get fsPath() { return this._fsPath || (this._fsPath = ye(this, !1)), this._fsPath; } toString(e = !1) { return e ? we(this, !0) : (this._formatted || (this._formatted = we(this, !1)), this._formatted); } toJSON() { const e = { $mid: 1 }; return ( this._fsPath && ((e.fsPath = this._fsPath), (e._sep = Le)), this._formatted && (e.external = this._formatted), this.path && (e.path = this.path), this.scheme && (e.scheme = this.scheme), this.authority && (e.authority = this.authority), this.query && (e.query = this.query), this.fragment && (e.fragment = this.fragment), e ); } } const Se = { 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 Ee(e, t) { let n, i = -1; for (let r = 0; r < e.length; r++) { const s = e.charCodeAt(r); if ( (s >= 97 && s <= 122) || (s >= 65 && s <= 90) || (s >= 48 && s <= 57) || 45 === s || 46 === s || 95 === s || 126 === s || (t && 47 === s) ) -1 !== i && ((n += encodeURIComponent(e.substring(i, r))), (i = -1)), void 0 !== n && (n += e.charAt(r)); else { void 0 === n && (n = e.substr(0, r)); const t = Se[s]; void 0 !== t ? (-1 !== i && ((n += encodeURIComponent(e.substring(i, r))), (i = -1)), (n += t)) : -1 === i && (i = r); } } return ( -1 !== i && (n += encodeURIComponent(e.substring(i))), void 0 !== n ? n : e ); } function Ae(e) { let t; for (let n = 0; n < e.length; n++) { const i = e.charCodeAt(n); 35 === i || 63 === i ? (void 0 === t && (t = e.substr(0, n)), (t += Se[i])) : void 0 !== t && (t += e[n]); } return void 0 !== t ? t : e; } function ye(e, t) { let n; return ( (n = e.authority && e.path.length > 1 && 'file' === e.scheme ? `//${e.authority}${e.path}` : 47 === e.path.charCodeAt(0) && ((e.path.charCodeAt(1) >= 65 && e.path.charCodeAt(1) <= 90) || (e.path.charCodeAt(1) >= 97 && e.path.charCodeAt(1) <= 122)) && 58 === e.path.charCodeAt(2) ? t ? e.path.substr(1) : e.path[1].toLowerCase() + e.path.substr(2) : e.path), A && (n = n.replace(/\//g, '\\')), n ); } function we(e, t) { const n = t ? Ae : Ee; let i = '', { scheme: r, authority: s, path: o, query: a, fragment: l } = e; if ( (r && ((i += r), (i += ':')), (s || 'file' === r) && ((i += pe), (i += pe)), s) ) { let e = s.indexOf('@'); if (-1 !== e) { const t = s.substr(0, e); (s = s.substr(e + 1)), (e = t.indexOf(':')), -1 === e ? (i += n(t, !1)) : ((i += n(t.substr(0, e), !1)), (i += ':'), (i += n(t.substr(e + 1), !1))), (i += '@'); } (s = s.toLowerCase()), (e = s.indexOf(':')), -1 === e ? (i += n(s, !1)) : ((i += n(s.substr(0, e), !1)), (i += s.substr(e))); } if (o) { if (o.length >= 3 && 47 === o.charCodeAt(0) && 58 === o.charCodeAt(2)) { const e = o.charCodeAt(1); e >= 65 && e <= 90 && (o = `/${String.fromCharCode(e + 32)}:${o.substr(3)}`); } else if (o.length >= 2 && 58 === o.charCodeAt(1)) { const e = o.charCodeAt(0); e >= 65 && e <= 90 && (o = `${String.fromCharCode(e + 32)}:${o.substr(2)}`); } i += n(o, !0); } return ( a && ((i += '?'), (i += n(a, !1))), l && ((i += '#'), (i += t ? l : Ee(l, !1))), i ); } function ve(e) { try { return decodeURIComponent(e); } catch (t) { return e.length > 3 ? e.substr(0, 3) + ve(e.substr(3)) : e; } } const Te = /(%[0-9A-Za-z][0-9A-Za-z])+/g; function Oe(e) { return e.match(Te) ? e.replace(Te, (e) => ve(e)) : e; } class Ie { 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 Ie(e, t); } delta(e = 0, t = 0) { return this.with(this.lineNumber + e, this.column + t); } equals(e) { return Ie.equals(this, e); } static equals(e, t) { return ( (!e && !t) || (!!e && !!t && e.lineNumber === t.lineNumber && e.column === t.column) ); } isBefore(e) { return Ie.isBefore(this, e); } static isBefore(e, t) { return ( e.lineNumber < t.lineNumber || (!(t.lineNumber < e.lineNumber) && e.column < t.column) ); } isBeforeOrEqual(e) { return Ie.isBeforeOrEqual(this, e); } static isBeforeOrEqual(e, t) { return ( e.lineNumber < t.lineNumber || (!(t.lineNumber < e.lineNumber) && e.column <= t.column) ); } static compare(e, t) { let n = 0 | e.lineNumber, i = 0 | t.lineNumber; return n === i ? (0 | e.column) - (0 | t.column) : n - i; } clone() { return new Ie(this.lineNumber, this.column); } toString() { return '(' + this.lineNumber + ',' + this.column + ')'; } static lift(e) { return new Ie(e.lineNumber, e.column); } static isIPosition(e) { return ( e && 'number' == typeof e.lineNumber && 'number' == typeof e.column ); } } class Me { constructor(e, t, n, i) { e > n || (e === n && t > i) ? ((this.startLineNumber = n), (this.startColumn = i), (this.endLineNumber = e), (this.endColumn = t)) : ((this.startLineNumber = e), (this.startColumn = t), (this.endLineNumber = n), (this.endColumn = i)); } isEmpty() { return Me.isEmpty(this); } static isEmpty(e) { return ( e.startLineNumber === e.endLineNumber && e.startColumn === e.endColumn ); } containsPosition(e) { return Me.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) ); } containsRange(e) { return Me.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 Me.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 Me.plusRange(this, e); } static plusRange(e, t) { let n, i, r, s; return ( t.startLineNumber < e.startLineNumber ? ((n = t.startLineNumber), (i = t.startColumn)) : t.startLineNumber === e.startLineNumber ? ((n = t.startLineNumber), (i = Math.min(t.startColumn, e.startColumn))) : ((n = e.startLineNumber), (i = e.startColumn)), t.endLineNumber > e.endLineNumber ? ((r = t.endLineNumber), (s = t.endColumn)) : t.endLineNumber === e.endLineNumber ? ((r = t.endLineNumber), (s = Math.max(t.endColumn, e.endColumn))) : ((r = e.endLineNumber), (s = e.endColumn)), new Me(n, i, r, s) ); } intersectRanges(e) { return Me.intersectRanges(this, e); } static intersectRanges(e, t) { let n = e.startLineNumber, i = e.startColumn, r = e.endLineNumber, s = e.endColumn, o = t.startLineNumber, a = t.startColumn, l = t.endLineNumber, u = t.endColumn; return ( n < o ? ((n = o), (i = a)) : n === o && (i = Math.max(i, a)), r > l ? ((r = l), (s = u)) : r === l && (s = Math.min(s, u)), n > r || (n === r && i > s) ? null : new Me(n, i, r, s) ); } equalsRange(e) { return Me.equalsRange(this, e); } static equalsRange(e, t) { return ( !!e && !!t && e.startLineNumber === t.startLineNumber && e.startColumn === t.startColumn && e.endLineNumber === t.endLineNumber && e.endColumn === t.endColumn ); } getEndPosition() { return Me.getEndPosition(this); } static getEndPosition(e) { return new Ie(e.endLineNumber, e.endColumn); } getStartPosition() { return Me.getStartPosition(this); } static getStartPosition(e) { return new Ie(e.startLineNumber, e.startColumn); } toString() { return ( '[' + this.startLineNumber + ',' + this.startColumn + ' -> ' + this.endLineNumber + ',' + this.endColumn + ']' ); } setEndPosition(e, t) { return new Me(this.startLineNumber, this.startColumn, e, t); } setStartPosition(e, t) { return new Me(e, t, this.endLineNumber, this.endColumn); } collapseToStart() { return Me.collapseToStart(this); } static collapseToStart(e) { return new Me( e.startLineNumber, e.startColumn, e.startLineNumber, e.startColumn ); } static fromPositions(e, t = e) { return new Me(e.lineNumber, e.column, t.lineNumber, t.column); } static lift(e) { return e ? new Me(e.startLineNumber, e.startColumn, e.endLineNumber, e.endColumn) : null; } static isIRange(e) { return ( e && 'number' == typeof e.startLineNumber && 'number' == typeof e.startColumn && 'number' == typeof e.endLineNumber && 'number' == typeof e.endColumn ); } 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 compareRangesUsingStarts(e, t) { if (e && t) { const n = 0 | e.startLineNumber, i = 0 | t.startLineNumber; if (n === i) { const n = 0 | e.startColumn, i = 0 | t.startColumn; if (n === i) { const n = 0 | e.endLineNumber, i = 0 | t.endLineNumber; return n === i ? (0 | e.endColumn) - (0 | t.endColumn) : n - i; } return n - i; } return n - i; } 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; } } function xe(e, t, n, i) { return new z(e, t, n).ComputeDiff(i); } class Re { constructor(e) { const t = [], n = []; for (let i = 0, r = e.length; i < r; i++) (t[i] = Fe(e[i], 1)), (n[i] = Ke(e[i], 1)); (this.lines = e), (this._startColumns = t), (this._endColumns = n); } getElements() { const e = []; for (let t = 0, n = this.lines.length; t < n; t++) e[t] = this.lines[t].substring( this._startColumns[t] - 1, this._endColumns[t] - 1 ); return e; } getStartLineNumber(e) { return e + 1; } getEndLineNumber(e) { return e + 1; } createCharSequence(e, t, n) { const i = [], r = [], s = []; let o = 0; for (let a = t; a <= n; a++) { const t = this.lines[a], n = e ? this._startColumns[a] : 1, l = e ? this._endColumns[a] : t.length + 1; for (let e = n; e < l; e++) (i[o] = t.charCodeAt(e - 1)), (r[o] = a + 1), (s[o] = e), o++; } return new Pe(i, r, s); } } class Pe { constructor(e, t, n) { (this._charCodes = e), (this._lineNumbers = t), (this._columns = n); } getElements() { return this._charCodes; } getStartLineNumber(e) { return this._lineNumbers[e]; } getStartColumn(e) { return this._columns[e]; } getEndLineNumber(e) { return this._lineNumbers[e]; } getEndColumn(e) { return this._columns[e] + 1; } } class Ue { constructor(e, t, n, i, r, s, o, a) { (this.originalStartLineNumber = e), (this.originalStartColumn = t), (this.originalEndLineNumber = n), (this.originalEndColumn = i), (this.modifiedStartLineNumber = r), (this.modifiedStartColumn = s), (this.modifiedEndLineNumber = o), (this.modifiedEndColumn = a); } static createFromDiffChange(e, t, n) { let i, r, s, o, a, l, u, h; return ( 0 === e.originalLength ? ((i = 0), (r = 0), (s = 0), (o = 0)) : ((i = t.getStartLineNumber(e.originalStart)), (r = t.getStartColumn(e.originalStart)), (s = t.getEndLineNumber(e.originalStart + e.originalLength - 1)), (o = t.getEndColumn(e.originalStart + e.originalLength - 1))), 0 === e.modifiedLength ? ((a = 0), (l = 0), (u = 0), (h = 0)) : ((a = n.getStartLineNumber(e.modifiedStart)), (l = n.getStartColumn(e.modifiedStart)), (u = n.getEndLineNumber(e.modifiedStart + e.modifiedLength - 1)), (h = n.getEndColumn(e.modifiedStart + e.modifiedLength - 1))), new Ue(i, r, s, o, a, l, u, h) ); } } class ke { constructor(e, t, n, i, r) { (this.originalStartLineNumber = e), (this.originalEndLineNumber = t), (this.modifiedStartLineNumber = n), (this.modifiedEndLineNumber = i), (this.charChanges = r); } static createFromDiffResult(e, t, n, i, r, s, o) { let a, l, u, h, d; if ( (0 === t.originalLength ? ((a = n.getStartLineNumber(t.originalStart) - 1), (l = 0)) : ((a = n.getStartLineNumber(t.originalStart)), (l = n.getEndLineNumber(t.originalStart + t.originalLength - 1))), 0 === t.modifiedLength ? ((u = i.getStartLineNumber(t.modifiedStart) - 1), (h = 0)) : ((u = i.getStartLineNumber(t.modifiedStart)), (h = i.getEndLineNumber(t.modifiedStart + t.modifiedLength - 1))), s && t.originalLength > 0 && t.originalLength < 20 && t.modifiedLength > 0 && t.modifiedLength < 20 && r()) ) { const s = n.createCharSequence( e, t.originalStart, t.originalStart + t.originalLength - 1 ), a = i.createCharSequence( e, t.modifiedStart, t.modifiedStart + t.modifiedLength - 1 ); let l = xe(s, a, r, !0).changes; o && (l = (function (e) { if (e.length <= 1) return e; const t = [e[0]]; let n = t[0]; for (let i = 1, r = e.length; i < r; i++) { const r = e[i], s = r.originalStart - (n.originalStart + n.originalLength), o = r.modifiedStart - (n.modifiedStart + n.modifiedLength); Math.min(s, o) < 3 ? ((n.originalLength = r.originalStart + r.originalLength - n.originalStart), (n.modifiedLength = r.modifiedStart + r.modifiedLength - n.modifiedStart)) : (t.push(r), (n = r)); } return t; })(l)), (d = []); for (let e = 0, t = l.length; e < t; e++) d.push(Ue.createFromDiffChange(l[e], s, a)); } return new ke(a, l, u, h, d); } } class De { constructor(e, t, n) { (this.shouldComputeCharChanges = n.shouldComputeCharChanges), (this.shouldPostProcessCharChanges = n.shouldPostProcessCharChanges), (this.shouldIgnoreTrimWhitespace = n.shouldIgnoreTrimWhitespace), (this.shouldMakePrettyDiff = n.shouldMakePrettyDiff), (this.originalLines = e), (this.modifiedLines = t), (this.original = new Re(e)), (this.modified = new Re(t)), (this.continueLineDiff = Be(n.maxComputationTime)), (this.continueCharDiff = Be( 0 === n.maxComputationTime ? 0 : Math.min(n.maxComputationTime, 5e3) )); } computeDiff() { if ( 1 === this.original.lines.length && 0 === this.original.lines[0].length ) return { quitEarly: !1, changes: [ { originalStartLineNumber: 1, originalEndLineNumber: 1, modifiedStartLineNumber: 1, modifiedEndLineNumber: this.modified.lines.length, charChanges: [ { modifiedEndColumn: 0, modifiedEndLineNumber: 0, modifiedStartColumn: 0, modifiedStartLineNumber: 0, originalEndColumn: 0, originalEndLineNumber: 0, originalStartColumn: 0, originalStartLineNumber: 0, }, ], }, ], }; if ( 1 === this.modified.lines.length && 0 === this.modified.lines[0].length ) return { quitEarly: !1, changes: [ { originalStartLineNumber: 1, originalEndLineNumber: this.original.lines.length, modifiedStartLineNumber: 1, modifiedEndLineNumber: 1, charChanges: [ { modifiedEndColumn: 0, modifiedEndLineNumber: 0, modifiedStartColumn: 0, modifiedStartLineNumber: 0, originalEndColumn: 0, originalEndLineNumber: 0, originalStartColumn: 0, originalStartLineNumber: 0, }, ], }, ], }; const e = xe( this.original, this.modified, this.continueLineDiff, this.shouldMakePrettyDiff ), t = e.changes, n = e.quitEarly; if (this.shouldIgnoreTrimWhitespace) { const e = []; for (let n = 0, i = t.length; n < i; n++) e.push( ke.createFromDiffResult( this.shouldIgnoreTrimWhitespace, t[n], this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges ) ); return { quitEarly: n, changes: e }; } const i = []; let r = 0, s = 0; for (let e = -1, n = t.length; e < n; e++) { const o = e + 1 < n ? t[e + 1] : null, a = o ? o.originalStart : this.originalLines.length, l = o ? o.modifiedStart : this.modifiedLines.length; for (; r < a && s < l; ) { const e = this.originalLines[r], t = this.modifiedLines[s]; if (e !== t) { { let n = Fe(e, 1), o = Fe(t, 1); for ( ; n > 1 && o > 1 && e.charCodeAt(n - 2) === t.charCodeAt(o - 2); ) n--, o--; (n > 1 || o > 1) && this._pushTrimWhitespaceCharChange(i, r + 1, 1, n, s + 1, 1, o); } { let n = Ke(e, 1), o = Ke(t, 1); const a = e.length + 1, l = t.length + 1; for ( ; n < a && o < l && e.charCodeAt(n - 1) === e.charCodeAt(o - 1); ) n++, o++; (n < a || o < l) && this._pushTrimWhitespaceCharChange(i, r + 1, n, a, s + 1, o, l); } } r++, s++; } o && (i.push( ke.createFromDiffResult( this.shouldIgnoreTrimWhitespace, o, this.original, this.modified, this.continueCharDiff, this.shouldComputeCharChanges, this.shouldPostProcessCharChanges ) ), (r += o.originalLength), (s += o.modifiedLength)); } return { quitEarly: n, changes: i }; } _pushTrimWhitespaceCharChange(e, t, n, i, r, s, o) { if (this._mergeTrimWhitespaceCharChange(e, t, n, i, r, s, o)) return; let a; this.shouldComputeCharChanges && (a = [new Ue(t, n, t, i, r, s, r, o)]), e.push(new ke(t, t, r, r, a)); } _mergeTrimWhitespaceCharChange(e, t, n, i, r, s, o) { const a = e.length; if (0 === a) return !1; const l = e[a - 1]; return ( 0 !== l.originalEndLineNumber && 0 !== l.modifiedEndLineNumber && l.originalEndLineNumber + 1 === t && l.modifiedEndLineNumber + 1 === r && ((l.originalEndLineNumber = t), (l.modifiedEndLineNumber = r), this.shouldComputeCharChanges && l.charChanges && l.charChanges.push(new Ue(t, n, t, i, r, s, r, o)), !0) ); } } function Fe(e, t) { const n = (function (e) { for (let t = 0, n = e.length; t < n; t++) { const n = e.charCodeAt(t); if (32 !== n && 9 !== n) return t; } return -1; })(e); return -1 === n ? t : n + 1; } function Ke(e, t) { const n = (function (e, t = e.length - 1) { for (let n = t; n >= 0; n--) { const t = e.charCodeAt(n); if (32 !== t && 9 !== t) return n; } return -1; })(e); return -1 === n ? t : n + 2; } function Be(e) { if (0 === e) return () => !0; const t = Date.now(); return () => Date.now() - t < e; } function We(e) { return e < 0 ? 0 : e > 255 ? 255 : 0 | e; } function qe(e) { return e < 0 ? 0 : e > 4294967295 ? 4294967295 : 0 | e; } class He { constructor(e, t) { (this.index = e), (this.remainder = t); } } class Ve { constructor(e) { (this.values = e), (this.prefixSum = new Uint32Array(e.length)), (this.prefixSumValidIndex = new Int32Array(1)), (this.prefixSumValidIndex[0] = -1); } insertValues(e, t) { e = qe(e); const n = this.values, i = this.prefixSum, r = t.length; return ( 0 !== r && ((this.values = new Uint32Array(n.length + r)), this.values.set(n.subarray(0, e), 0), this.values.set(n.subarray(e), e + r), this.values.set(t, e), e - 1 < this.prefixSumValidIndex[0] && (this.prefixSumValidIndex[0] = e - 1), (this.prefixSum = new Uint32Array(this.values.length)), this.prefixSumValidIndex[0] >= 0 && this.prefixSum.set(i.subarray(0, this.prefixSumValidIndex[0] + 1)), !0) ); } changeValue(e, t) { return ( (e = qe(e)), (t = qe(t)), this.values[e] !== t && ((this.values[e] = t), e - 1 < this.prefixSumValidIndex[0] && (this.prefixSumValidIndex[0] = e - 1), !0) ); } removeValues(e, t) { (e = qe(e)), (t = qe(t)); const n = this.values, i = this.prefixSum; if (e >= n.length) return !1; let r = n.length - e; return ( t >= r && (t = r), 0 !== t && ((this.values = new Uint32Array(n.length - t)), this.values.set(n.subarray(0, e), 0), this.values.set(n.subarray(e + t), e), (this.prefixSum = new Uint32Array(this.values.length)), e - 1 < this.prefixSumValidIndex[0] && (this.prefixSumValidIndex[0] = e - 1), this.prefixSumValidIndex[0] >= 0 && this.prefixSum.set(i.subarray(0, this.prefixSumValidIndex[0] + 1)), !0) ); } getTotalValue() { return 0 === this.values.length ? 0 : this._getAccumulatedValue(this.values.length - 1); } getAccumulatedValue(e) { return e < 0 ? 0 : ((e = qe(e)), this._getAccumulatedValue(e)); } _getAccumulatedValue(e) { if (e <= this.prefixSumValidIndex[0]) return this.prefixSum[e]; let t = this.prefixSumValidIndex[0] + 1; 0 === t && ((this.prefixSum[0] = this.values[0]), t++), e >= this.values.length && (e = this.values.length - 1); for (let n = t; n <= e; n++) this.prefixSum[n] = this.prefixSum[n - 1] + this.values[n]; return ( (this.prefixSumValidIndex[0] = Math.max( this.prefixSumValidIndex[0], e )), this.prefixSum[e] ); } getIndexOf(e) { (e = Math.floor(e)), this.getTotalValue(); let t = 0, n = this.values.length - 1, i = 0, r = 0, s = 0; for (; t <= n; ) if ( ((i = (t + (n - t) / 2) | 0), (r = this.prefixSum[i]), (s = r - this.values[i]), e < s) ) n = i - 1; else { if (!(e >= r)) break; t = i + 1; } return new He(i, e - s); } } const Ye = (function (e = '') { let t = '(-?\\d*\\.\\d\\w*)|([^'; for (const n of '`~!@#$%^&*()-=+[{]}\\|;:\'",.<>/?') e.indexOf(n) >= 0 || (t += '\\' + n); return (t += '\\s]+)'), new RegExp(t, 'g'); })(), $e = { maxLen: 1e3, windowSize: 15, timeBudget: 150 }; function je(e, t, n, i, r = $e) { if (n.length > r.maxLen) { let s = e - r.maxLen / 2; return ( s < 0 ? ((i += e), (s = 0)) : (i += s), je(e, t, (n = n.substring(s, e + r.maxLen / 2)), i, r) ); } Date.now(); const s = e - 1 - i; let o = -1, a = null; for (let e = 1; ; e++) { Date.now(), r.timeBudget; const i = s - r.windowSize * e; t.lastIndex = Math.max(0, i); const l = Ge(t, n, s, o); if (!l && a) break; if (((a = l), i <= 0)) break; o = i; } if (a) { let e = { word: a[0], startColumn: i + 1 + a.index, endColumn: i + 1 + a.index + a[0].length, }; return (t.lastIndex = 0), e; } return null; } function Ge(e, t, n, i) { let r; for (; (r = e.exec(t)); ) { const t = r.index || 0; if (t <= n && e.lastIndex >= n) return r; if (i > 0 && t > i) return null; } return null; } class ze { constructor(e) { let t = We(e); (this._defaultValue = t), (this._asciiMap = ze._createAsciiMap(t)), (this._map = new Map()); } static _createAsciiMap(e) { let t = new Uint8Array(256); for (let n = 0; n < 256; n++) t[n] = e; return t; } set(e, t) { let n = We(t); e >= 0 && e < 256 ? (this._asciiMap[e] = n) : this._map.set(e, n); } get(e) { return e >= 0 && e < 256 ? this._asciiMap[e] : this._map.get(e) || this._defaultValue; } } class Qe { constructor(e, t, n) { const i = new Uint8Array(e * t); for (let r = 0, s = e * t; r < s; r++) i[r] = n; (this._data = i), (this.rows = e), (this.cols = t); } get(e, t) { return this._data[e * this.cols + t]; } set(e, t, n) { this._data[e * this.cols + t] = n; } } class Xe { constructor(e) { let t = 0, n = 0; for (let i = 0, r = e.length; i < r; i++) { let [r, s, o] = e[i]; s > t && (t = s), r > n && (n = r), o > n && (n = o); } t++, n++; let i = new Qe(n, t, 0); for (let t = 0, n = e.length; t < n; t++) { let [n, r, s] = e[t]; i.set(n, r, s); } (this._states = i), (this._maxCharCode = t); } nextState(e, t) { return t < 0 || t >= this._maxCharCode ? 0 : this._states.get(e, t); } } let Ze = null, Je = null; class et { static _createLink(e, t, n, i, r) { let s = r - 1; do { const n = t.charCodeAt(s); if (2 !== e.get(n)) break; s--; } while (s > i); if (i > 0) { const e = t.charCodeAt(i - 1), n = t.charCodeAt(s); ((40 === e && 41 === n) || (91 === e && 93 === n) || (123 === e && 125 === n)) && s--; } return { range: { startLineNumber: n, startColumn: i + 1, endLineNumber: n, endColumn: s + 2, }, url: t.substring(i, s + 1), }; } static computeLinks( e, t = (function () { return ( null === Ze && (Ze = new Xe([ [1, 104, 2], [1, 72, 2], [1, 102, 6], [1, 70, 6], [2, 116, 3], [2, 84, 3], [3, 116, 4], [3, 84, 4], [4, 112, 5], [4, 80, 5], [5, 115, 9], [5, 83, 9], [5, 58, 10], [6, 105, 7], [6, 73, 7], [7, 108, 8], [7, 76, 8], [8, 101, 9], [8, 69, 9], [9, 58, 10], [10, 47, 11], [11, 47, 12], ])), Ze ); })() ) { const n = (function () { if (null === Je) { Je = new ze(0); const e = ' \t<>\'"、。。、,.:;‘“〈《「『【〔([{「」}])〕】』」》〉”’`~…'; for (let t = 0; t < e.length; t++) Je.set(e.charCodeAt(t), 1); const t = '.,;'; for (let e = 0; e < t.length; e++) Je.set(t.charCodeAt(e), 2); } return Je; })(); let i = []; for (let r = 1, s = e.getLineCount(); r <= s; r++) { const s = e.getLineContent(r), o = s.length; let a = 0, l = 0, u = 0, h = 1, d = !1, c = !1, f = !1, m = !1; for (; a < o; ) { let e = !1; const o = s.charCodeAt(a); if (13 === h) { let t; switch (o) { case 40: (d = !0), (t = 0); break; case 41: t = d ? 0 : 1; break; case 91: (f = !0), (c = !0), (t = 0); break; case 93: (f = !1), (t = c ? 0 : 1); break; case 123: (m = !0), (t = 0); break; case 125: t = m ? 0 : 1; break; case 39: t = 34 === u || 96 === u ? 0 : 1; break; case 34: t = 39 === u || 96 === u ? 0 : 1; break; case 96: t = 39 === u || 34 === u ? 0 : 1; break; case 42: t = 42 === u ? 1 : 0; break; case 124: t = 124 === u ? 1 : 0; break; case 32: t = f ? 0 : 1; break; default: t = n.get(o); } 1 === t && (i.push(et._createLink(n, s, r, l, a)), (e = !0)); } else if (12 === h) { let t; 91 === o ? ((c = !0), (t = 0)) : (t = n.get(o)), 1 === t ? (e = !0) : (h = 13); } else (h = t.nextState(h, o)), 0 === h && (e = !0); e && ((h = 1), (d = !1), (c = !1), (m = !1), (l = a + 1), (u = o)), a++; } 13 === h && i.push(et._createLink(n, s, r, l, o)); } return i; } } class tt { constructor() { this._defaultValueSet = [ ['true', 'false'], ['True', 'False'], [ 'Private', 'Public', 'Friend', 'ReadOnly', 'Partial', 'Protected', 'WriteOnly', ], ['public', 'protected', 'private'], ]; } navigateValueSet(e, t, n, i, r) { if (e && t) { let n = this.doNavigateValueSet(t, r); if (n) return { range: e, value: n }; } if (n && i) { let e = this.doNavigateValueSet(i, r); if (e) return { range: n, value: e }; } return null; } doNavigateValueSet(e, t) { let n = this.numberReplace(e, t); return null !== n ? n : this.textReplace(e, t); } numberReplace(e, t) { let n = Math.pow(10, e.length - (e.lastIndexOf('.') + 1)), i = Number(e), r = parseFloat(e); return isNaN(i) || isNaN(r) || i !== r ? null : 0 !== i || t ? ((i = Math.floor(i * n)), (i += t ? n : -n), String(i / n)) : null; } textReplace(e, t) { return this.valueSetsReplace(this._defaultValueSet, e, t); } valueSetsReplace(e, t, n) { let i = null; for (let r = 0, s = e.length; null === i && r < s; r++) i = this.valueSetReplace(e[r], t, n); return i; } valueSetReplace(e, t, n) { let i = e.indexOf(t); return i >= 0 ? ((i += n ? 1 : -1), i < 0 ? (i = e.length - 1) : (i %= e.length), e[i]) : null; } } tt.INSTANCE = new tt(); class nt { constructor(e) { (this.element = e), (this.next = nt.Undefined), (this.prev = nt.Undefined); } } nt.Undefined = new nt(void 0); class it { constructor() { (this._first = nt.Undefined), (this._last = nt.Undefined), (this._size = 0); } get size() { return this._size; } isEmpty() { return this._first === nt.Undefined; } clear() { (this._first = nt.Undefined), (this._last = nt.Undefined), (this._size = 0); } unshift(e) { return this._insert(e, !1); } push(e) { return this._insert(e, !0); } _insert(e, t) { const n = new nt(e); if (this._first === nt.Undefined) (this._first = n), (this._last = n); else if (t) { const e = this._last; (this._last = n), (n.prev = e), (e.next = n); } else { const e = this._first; (this._first = n), (n.next = e), (e.prev = n); } this._size += 1; let i = !1; return () => { i || ((i = !0), this._remove(n)); }; } shift() { if (this._first !== nt.Undefined) { const e = this._first.element; return this._remove(this._first), e; } } pop() { if (this._last !== nt.Undefined) { const e = this._last.element; return this._remove(this._last), e; } } _remove(e) { if (e.prev !== nt.Undefined && e.next !== nt.Undefined) { const t = e.prev; (t.next = e.next), (e.next.prev = t); } else e.prev === nt.Undefined && e.next === nt.Undefined ? ((this._first = nt.Undefined), (this._last = nt.Undefined)) : e.next === nt.Undefined ? ((this._last = this._last.prev), (this._last.next = nt.Undefined)) : e.prev === nt.Undefined && ((this._first = this._first.next), (this._first.prev = nt.Undefined)); this._size -= 1; } *[Symbol.iterator]() { let e = this._first; for (; e !== nt.Undefined; ) yield e.element, (e = e.next); } toArray() { const e = []; for (let t = this._first; t !== nt.Undefined; t = t.next) e.push(t.element); return e; } } var rt; !(function (e) { function t(e) { return (t, n = null, i) => { let r, s = !1; return ( (r = e( (e) => { if (!s) return r ? r.dispose() : (s = !0), t.call(n, e); }, null, i )), s && r.dispose(), r ); }; } function n(e, t) { return a((n, i = null, r) => e((e) => n.call(i, t(e)), null, r)); } function i(e, t) { return a((n, i = null, r) => e( (e) => { t(e), n.call(i, e); }, null, r ) ); } function r(e, t) { return a((n, i = null, r) => e((e) => t(e) && n.call(i, e), null, r)); } function s(e, t, i) { let r = i; return n(e, (e) => ((r = t(r, e)), r)); } function a(e) { let t; const n = new st({ onFirstListenerAdd() { t = e(n.fire, n); }, onLastListenerRemove() { t.dispose(); }, }); return n.event; } function u(e, t, n = 100, i = !1, r) { let s, o, a, l = 0; const u = new st({ leakWarningThreshold: r, onFirstListenerAdd() { s = e((e) => { l++, (o = t(o, e)), i && !a && (u.fire(o), (o = void 0)), clearTimeout(a), (a = setTimeout(() => { const e = o; (o = void 0), (a = void 0), (!i || l > 1) && u.fire(e), (l = 0); }, n)); }); }, onLastListenerRemove() { s.dispose(); }, }); return u.event; } function d(e) { let t, n = !0; return r(e, (e) => { const i = n || e !== t; return (n = !1), (t = e), i; }); } (e.None = () => h.None), (e.once = t), (e.map = n), (e.forEach = i), (e.filter = r), (e.signal = function (e) { return e; }), (e.any = function (...e) { return (t, n = null, i) => (function (...e) { return e.forEach(o), { dispose: () => l(e) }; })(...e.map((e) => e((e) => t.call(n, e), null, i))); }), (e.reduce = s), (e.snapshot = a), (e.debounce = u), (e.stopwatch = function (e) { const i = new Date().getTime(); return n(t(e), (e) => new Date().getTime() - i); }), (e.latch = d), (e.buffer = function (e, t = !1, n = []) { let i = n.slice(), r = e((e) => { i ? i.push(e) : o.fire(e); }); const s = () => { i && i.forEach((e) => o.fire(e)), (i = null); }, o = new st({ onFirstListenerAdd() { r || (r = e((e) => o.fire(e))); }, onFirstListenerDidAdd() { i && (t ? setTimeout(s) : s()); }, onLastListenerRemove() { r && r.dispose(), (r = null); }, }); return o.event; }); class c { constructor(e) { this.event = e; } map(e) { return new c(n(this.event, e)); } forEach(e) { return new c(i(this.event, e)); } filter(e) { return new c(r(this.event, e)); } reduce(e, t) { return new c(s(this.event, e, t)); } latch() { return new c(d(this.event)); } debounce(e, t = 100, n = !1, i) { return new c(u(this.event, e, t, n, i)); } on(e, t, n) { return this.event(e, t, n); } once(e, n, i) { return t(this.event)(e, n, i); } } (e.chain = function (e) { return new c(e); }), (e.fromNodeEventEmitter = function (e, t, n = (e) => e) { const i = (...e) => r.fire(n(...e)), r = new st({ onFirstListenerAdd: () => e.on(t, i), onLastListenerRemove: () => e.removeListener(t, i), }); return r.event; }), (e.fromDOMEventEmitter = function (e, t, n = (e) => e) { const i = (...e) => r.fire(n(...e)), r = new st({ onFirstListenerAdd: () => e.addEventListener(t, i), onLastListenerRemove: () => e.removeEventListener(t, i), }); return r.event; }), (e.fromPromise = function (e) { const t = new st(); let n = !1; return ( e .then(void 0, () => null) .then(() => { n ? t.fire(void 0) : setTimeout(() => t.fire(void 0), 0); }), (n = !0), t.event ); }), (e.toPromise = function (e) { return new Promise((n) => t(e)(n)); }); })(rt || (rt = {})); class st { constructor(e) { (this._disposed = !1), (this._options = e), (this._leakageMon = void 0); } get event() { return ( this._event || (this._event = (e, t, n) => { this._listeners || (this._listeners = new it()); const i = this._listeners.isEmpty(); i && this._options && this._options.onFirstListenerAdd && this._options.onFirstListenerAdd(this); const r = this._listeners.push(t ? [e, t] : e); let s, o; return ( i && this._options && this._options.onFirstListenerDidAdd && this._options.onFirstListenerDidAdd(this), this._options && this._options.onListenerDidAdd && this._options.onListenerDidAdd(this, e, t), this._leakageMon && (s = this._leakageMon.check(this._listeners.size)), (o = { dispose: () => { s && s(), (o.dispose = st._noop), !this._disposed && (r(), this._options && this._options.onLastListenerRemove) && ((this._listeners && !this._listeners.isEmpty()) || this._options.onLastListenerRemove(this)); }, }), n instanceof u ? n.add(o) : Array.isArray(n) && n.push(o), o ); }), this._event ); } fire(e) { if (this._listeners) { this._deliveryQueue || (this._deliveryQueue = new it()); for (let t of this._listeners) this._deliveryQueue.push([t, e]); for (; this._deliveryQueue.size > 0; ) { const [e, t] = this._deliveryQueue.shift(); try { 'function' == typeof e ? e.call(void 0, t) : e[0].call(e[1], t); } catch (e) { n(e); } } } } dispose() { this._listeners && this._listeners.clear(), this._deliveryQueue && this._deliveryQueue.clear(), this._leakageMon && this._leakageMon.dispose(), (this._disposed = !0); } } st._noop = function () {}; const ot = Object.freeze(function (e, t) { const n = setTimeout(e.bind(t), 0); return { dispose() { clearTimeout(n); }, }; }); var at; !(function (e) { (e.isCancellationToken = function (t) { return ( t === e.None || t === e.Cancelled || t instanceof lt || (!(!t || 'object' != typeof t) && 'boolean' == typeof t.isCancellationRequested && 'function' == typeof t.onCancellationRequested) ); }), (e.None = Object.freeze({ isCancellationRequested: !1, onCancellationRequested: rt.None, })), (e.Cancelled = Object.freeze({ isCancellationRequested: !0, onCancellationRequested: ot, })); })(at || (at = {})); class lt { 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 ? ot : (this._emitter || (this._emitter = new st()), this._emitter.event); } dispose() { this._emitter && (this._emitter.dispose(), (this._emitter = null)); } } class ut { constructor() { (this._keyCodeToStr = []), (this._strToKeyCode = Object.create(null)); } define(e, t) { (this._keyCodeToStr[e] = t), (this._strToKeyCode[t.toLowerCase()] = e); } keyCodeToStr(e) { return this._keyCodeToStr[e]; } strToKeyCode(e) { return this._strToKeyCode[e.toLowerCase()] || 0; } } const ht = new ut(), dt = new ut(), ct = new ut(); var ft, mt, gt, _t, pt, Ct, bt, Lt, Nt, St, Et, At, yt, wt, vt, Tt, Ot, It, Mt, xt, Rt, Pt, Ut, kt, Dt, Ft, Kt, Bt, Wt, qt, Ht, Vt, Yt, $t; !(function () { function e(e, t, n = t, i = n) { ht.define(e, t), dt.define(e, n), ct.define(e, i); } e(0, 'unknown'), e(1, 'Backspace'), e(2, 'Tab'), e(3, 'Enter'), e(4, 'Shift'), e(5, 'Ctrl'), e(6, 'Alt'), e(7, 'PauseBreak'), e(8, 'CapsLock'), e(9, 'Escape'), e(10, 'Space'), e(11, 'PageUp'), e(12, 'PageDown'), e(13, 'End'), e(14, 'Home'), e(15, 'LeftArrow', 'Left'), e(16, 'UpArrow', 'Up'), e(17, 'RightArrow', 'Right'), e(18, 'DownArrow', 'Down'), e(19, 'Insert'), e(20, 'Delete'), e(21, '0'), e(22, '1'), e(23, '2'), e(24, '3'), e(25, '4'), e(26, '5'), e(27, '6'), e(28, '7'), e(29, '8'), e(30, '9'), e(31, 'A'), e(32, 'B'), e(33, 'C'), e(34, 'D'), e(35, 'E'), e(36, 'F'), e(37, 'G'), e(38, 'H'), e(39, 'I'), e(40, 'J'), e(41, 'K'), e(42, 'L'), e(43, 'M'), e(44, 'N'), e(45, 'O'), e(46, 'P'), e(47, 'Q'), e(48, 'R'), e(49, 'S'), e(50, 'T'), e(51, 'U'), e(52, 'V'), e(53, 'W'), e(54, 'X'), e(55, 'Y'), e(56, 'Z'), e(57, 'Meta'), e(58, 'ContextMenu'), e(59, 'F1'), e(60, 'F2'), e(61, 'F3'), e(62, 'F4'), e(63, 'F5'), e(64, 'F6'), e(65, 'F7'), e(66, 'F8'), e(67, 'F9'), e(68, 'F10'), e(69, 'F11'), e(70, 'F12'), e(71, 'F13'), e(72, 'F14'), e(73, 'F15'), e(74, 'F16'), e(75, 'F17'), e(76, 'F18'), e(77, 'F19'), e(78, 'NumLock'), e(79, 'ScrollLock'), e(80, ';', ';', 'OEM_1'), e(81, '=', '=', 'OEM_PLUS'), e(82, ',', ',', 'OEM_COMMA'), e(83, '-', '-', 'OEM_MINUS'), e(84, '.', '.', 'OEM_PERIOD'), e(85, '/', '/', 'OEM_2'), e(86, '`', '`', 'OEM_3'), e(110, 'ABNT_C1'), e(111, 'ABNT_C2'), e(87, '[', '[', 'OEM_4'), e(88, '\\', '\\', 'OEM_5'), e(89, ']', ']', 'OEM_6'), e(90, "'", "'", 'OEM_7'), e(91, 'OEM_8'), e(92, 'OEM_102'), e(93, 'NumPad0'), e(94, 'NumPad1'), e(95, 'NumPad2'), e(96, 'NumPad3'), e(97, 'NumPad4'), e(98, 'NumPad5'), e(99, 'NumPad6'), e(100, 'NumPad7'), e(101, 'NumPad8'), e(102, 'NumPad9'), e(103, 'NumPad_Multiply'), e(104, 'NumPad_Add'), e(105, 'NumPad_Separator'), e(106, 'NumPad_Subtract'), e(107, 'NumPad_Decimal'), e(108, 'NumPad_Divide'); })(), (function (e) { (e.toString = function (e) { return ht.keyCodeToStr(e); }), (e.fromString = function (e) { return ht.strToKeyCode(e); }), (e.toUserSettingsUS = function (e) { return dt.keyCodeToStr(e); }), (e.toUserSettingsGeneral = function (e) { return ct.keyCodeToStr(e); }), (e.fromUserSettings = function (e) { return dt.strToKeyCode(e) || ct.strToKeyCode(e); }); })(ft || (ft = {})); class jt extends Me { constructor(e, t, n, i) { super(e, t, n, i), (this.selectionStartLineNumber = e), (this.selectionStartColumn = t), (this.positionLineNumber = n), (this.positionColumn = i); } toString() { return ( '[' + this.selectionStartLineNumber + ',' + this.selectionStartColumn + ' -> ' + this.positionLineNumber + ',' + this.positionColumn + ']' ); } equalsSelection(e) { return jt.selectionsEqual(this, e); } static selectionsEqual(e, t) { return ( e.selectionStartLineNumber === t.selectionStartLineNumber && e.selectionStartColumn === t.selectionStartColumn && e.positionLineNumber === t.positionLineNumber && e.positionColumn === t.positionColumn ); } getDirection() { return this.selectionStartLineNumber === this.startLineNumber && this.selectionStartColumn === this.startColumn ? 0 : 1; } setEndPosition(e, t) { return 0 === this.getDirection() ? new jt(this.startLineNumber, this.startColumn, e, t) : new jt(e, t, this.startLineNumber, this.startColumn); } getPosition() { return new Ie(this.positionLineNumber, this.positionColumn); } setStartPosition(e, t) { return 0 === this.getDirection() ? new jt(e, t, this.endLineNumber, this.endColumn) : new jt(this.endLineNumber, this.endColumn, e, t); } static fromPositions(e, t = e) { return new jt(e.lineNumber, e.column, t.lineNumber, t.column); } static liftSelection(e) { return new jt( e.selectionStartLineNumber, e.selectionStartColumn, e.positionLineNumber, e.positionColumn ); } static selectionsArrEqual(e, t) { if ((e && !t) || (!e && t)) return !1; if (!e && !t) return !0; if (e.length !== t.length) return !1; for (let n = 0, i = e.length; n < i; n++) if (!this.selectionsEqual(e[n], t[n])) return !1; return !0; } static isISelection(e) { return ( e && 'number' == typeof e.selectionStartLineNumber && 'number' == typeof e.selectionStartColumn && 'number' == typeof e.positionLineNumber && 'number' == typeof e.positionColumn ); } static createWithDirection(e, t, n, i, r) { return 0 === r ? new jt(e, t, n, i) : new jt(n, i, e, t); } } !(function (e) { (e[(e.Unknown = 0)] = 'Unknown'), (e[(e.Disabled = 1)] = 'Disabled'), (e[(e.Enabled = 2)] = 'Enabled'); })(mt || (mt = {})), (function (e) { (e[(e.KeepWhitespace = 1)] = 'KeepWhitespace'), (e[(e.InsertAsSnippet = 4)] = 'InsertAsSnippet'); })(gt || (gt = {})), (function (e) { (e[(e.Method = 0)] = 'Method'), (e[(e.Function = 1)] = 'Function'), (e[(e.Constructor = 2)] = 'Constructor'), (e[(e.Field = 3)] = 'Field'), (e[(e.Variable = 4)] = 'Variable'), (e[(e.Class = 5)] = 'Class'), (e[(e.Struct = 6)] = 'Struct'), (e[(e.Interface = 7)] = 'Interface'), (e[(e.Module = 8)] = 'Module'), (e[(e.Property = 9)] = 'Property'), (e[(e.Event = 10)] = 'Event'), (e[(e.Operator = 11)] = 'Operator'), (e[(e.Unit = 12)] = 'Unit'), (e[(e.Value = 13)] = 'Value'), (e[(e.Constant = 14)] = 'Constant'), (e[(e.Enum = 15)] = 'Enum'), (e[(e.EnumMember = 16)] = 'EnumMember'), (e[(e.Keyword = 17)] = 'Keyword'), (e[(e.Text = 18)] = 'Text'), (e[(e.Color = 19)] = 'Color'), (e[(e.File = 20)] = 'File'), (e[(e.Reference = 21)] = 'Reference'), (e[(e.Customcolor = 22)] = 'Customcolor'), (e[(e.Folder = 23)] = 'Folder'), (e[(e.TypeParameter = 24)] = 'TypeParameter'), (e[(e.User = 25)] = 'User'), (e[(e.Issue = 26)] = 'Issue'), (e[(e.Snippet = 27)] = 'Snippet'); })(_t || (_t = {})), (function (e) { e[(e.Deprecated = 1)] = 'Deprecated'; })(pt || (pt = {})), (function (e) { (e[(e.Invoke = 0)] = 'Invoke'), (e[(e.TriggerCharacter = 1)] = 'TriggerCharacter'), (e[(e.TriggerForIncompleteCompletions = 2)] = 'TriggerForIncompleteCompletions'); })(Ct || (Ct = {})), (function (e) { (e[(e.EXACT = 0)] = 'EXACT'), (e[(e.ABOVE = 1)] = 'ABOVE'), (e[(e.BELOW = 2)] = 'BELOW'); })(bt || (bt = {})), (function (e) { (e[(e.NotSet = 0)] = 'NotSet'), (e[(e.ContentFlush = 1)] = 'ContentFlush'), (e[(e.RecoverFromMarkers = 2)] = 'RecoverFromMarkers'), (e[(e.Explicit = 3)] = 'Explicit'), (e[(e.Paste = 4)] = 'Paste'), (e[(e.Undo = 5)] = 'Undo'), (e[(e.Redo = 6)] = 'Redo'); })(Lt || (Lt = {})), (function (e) { (e[(e.LF = 1)] = 'LF'), (e[(e.CRLF = 2)] = 'CRLF'); })(Nt || (Nt = {})), (function (e) { (e[(e.Text = 0)] = 'Text'), (e[(e.Read = 1)] = 'Read'), (e[(e.Write = 2)] = 'Write'); })(St || (St = {})), (function (e) { (e[(e.None = 0)] = 'None'), (e[(e.Keep = 1)] = 'Keep'), (e[(e.Brackets = 2)] = 'Brackets'), (e[(e.Advanced = 3)] = 'Advanced'), (e[(e.Full = 4)] = 'Full'); })(Et || (Et = {})), (function (e) { (e[(e.acceptSuggestionOnCommitCharacter = 0)] = 'acceptSuggestionOnCommitCharacter'), (e[(e.acceptSuggestionOnEnter = 1)] = 'acceptSuggestionOnEnter'), (e[(e.accessibilitySupport = 2)] = 'accessibilitySupport'), (e[(e.accessibilityPageSize = 3)] = 'accessibilityPageSize'), (e[(e.ariaLabel = 4)] = 'ariaLabel'), (e[(e.autoClosingBrackets = 5)] = 'autoClosingBrackets'), (e[(e.autoClosingOvertype = 6)] = 'autoClosingOvertype'), (e[(e.autoClosingQuotes = 7)] = 'autoClosingQuotes'), (e[(e.autoIndent = 8)] = 'autoIndent'), (e[(e.automaticLayout = 9)] = 'automaticLayout'), (e[(e.autoSurround = 10)] = 'autoSurround'), (e[(e.codeLens = 11)] = 'codeLens'), (e[(e.colorDecorators = 12)] = 'colorDecorators'), (e[(e.columnSelection = 13)] = 'columnSelection'), (e[(e.comments = 14)] = 'comments'), (e[(e.contextmenu = 15)] = 'contextmenu'), (e[(e.copyWithSyntaxHighlighting = 16)] = 'copyWithSyntaxHighlighting'), (e[(e.cursorBlinking = 17)] = 'cursorBlinking'), (e[(e.cursorSmoothCaretAnimation = 18)] = 'cursorSmoothCaretAnimation'), (e[(e.cursorStyle = 19)] = 'cursorStyle'), (e[(e.cursorSurroundingLines = 20)] = 'cursorSurroundingLines'), (e[(e.cursorSurroundingLinesStyle = 21)] = 'cursorSurroundingLinesStyle'), (e[(e.cursorWidth = 22)] = 'cursorWidth'), (e[(e.disableLayerHinting = 23)] = 'disableLayerHinting'), (e[(e.disableMonospaceOptimizations = 24)] = 'disableMonospaceOptimizations'), (e[(e.dragAndDrop = 25)] = 'dragAndDrop'), (e[(e.emptySelectionClipboard = 26)] = 'emptySelectionClipboard'), (e[(e.extraEditorClassName = 27)] = 'extraEditorClassName'), (e[(e.fastScrollSensitivity = 28)] = 'fastScrollSensitivity'), (e[(e.find = 29)] = 'find'), (e[(e.fixedOverflowWidgets = 30)] = 'fixedOverflowWidgets'), (e[(e.folding = 31)] = 'folding'), (e[(e.foldingStrategy = 32)] = 'foldingStrategy'), (e[(e.foldingHighlight = 33)] = 'foldingHighlight'), (e[(e.unfoldOnClickAfterEndOfLine = 34)] = 'unfoldOnClickAfterEndOfLine'), (e[(e.fontFamily = 35)] = 'fontFamily'), (e[(e.fontInfo = 36)] = 'fontInfo'), (e[(e.fontLigatures = 37)] = 'fontLigatures'), (e[(e.fontSize = 38)] = 'fontSize'), (e[(e.fontWeight = 39)] = 'fontWeight'), (e[(e.formatOnPaste = 40)] = 'formatOnPaste'), (e[(e.formatOnType = 41)] = 'formatOnType'), (e[(e.glyphMargin = 42)] = 'glyphMargin'), (e[(e.gotoLocation = 43)] = 'gotoLocation'), (e[(e.hideCursorInOverviewRuler = 44)] = 'hideCursorInOverviewRuler'), (e[(e.highlightActiveIndentGuide = 45)] = 'highlightActiveIndentGuide'), (e[(e.hover = 46)] = 'hover'), (e[(e.inDiffEditor = 47)] = 'inDiffEditor'), (e[(e.letterSpacing = 48)] = 'letterSpacing'), (e[(e.lightbulb = 49)] = 'lightbulb'), (e[(e.lineDecorationsWidth = 50)] = 'lineDecorationsWidth'), (e[(e.lineHeight = 51)] = 'lineHeight'), (e[(e.lineNumbers = 52)] = 'lineNumbers'), (e[(e.lineNumbersMinChars = 53)] = 'lineNumbersMinChars'), (e[(e.links = 54)] = 'links'), (e[(e.matchBrackets = 55)] = 'matchBrackets'), (e[(e.minimap = 56)] = 'minimap'), (e[(e.mouseStyle = 57)] = 'mouseStyle'), (e[(e.mouseWheelScrollSensitivity = 58)] = 'mouseWheelScrollSensitivity'), (e[(e.mouseWheelZoom = 59)] = 'mouseWheelZoom'), (e[(e.multiCursorMergeOverlapping = 60)] = 'multiCursorMergeOverlapping'), (e[(e.multiCursorModifier = 61)] = 'multiCursorModifier'), (e[(e.multiCursorPaste = 62)] = 'multiCursorPaste'), (e[(e.occurrencesHighlight = 63)] = 'occurrencesHighlight'), (e[(e.overviewRulerBorder = 64)] = 'overviewRulerBorder'), (e[(e.overviewRulerLanes = 65)] = 'overviewRulerLanes'), (e[(e.padding = 66)] = 'padding'), (e[(e.parameterHints = 67)] = 'parameterHints'), (e[(e.peekWidgetDefaultFocus = 68)] = 'peekWidgetDefaultFocus'), (e[(e.definitionLinkOpensInPeek = 69)] = 'definitionLinkOpensInPeek'), (e[(e.quickSuggestions = 70)] = 'quickSuggestions'), (e[(e.quickSuggestionsDelay = 71)] = 'quickSuggestionsDelay'), (e[(e.readOnly = 72)] = 'readOnly'), (e[(e.renameOnType = 73)] = 'renameOnType'), (e[(e.renderControlCharacters = 74)] = 'renderControlCharacters'), (e[(e.renderIndentGuides = 75)] = 'renderIndentGuides'), (e[(e.renderFinalNewline = 76)] = 'renderFinalNewline'), (e[(e.renderLineHighlight = 77)] = 'renderLineHighlight'), (e[(e.renderLineHighlightOnlyWhenFocus = 78)] = 'renderLineHighlightOnlyWhenFocus'), (e[(e.renderValidationDecorations = 79)] = 'renderValidationDecorations'), (e[(e.renderWhitespace = 80)] = 'renderWhitespace'), (e[(e.revealHorizontalRightPadding = 81)] = 'revealHorizontalRightPadding'), (e[(e.roundedSelection = 82)] = 'roundedSelection'), (e[(e.rulers = 83)] = 'rulers'), (e[(e.scrollbar = 84)] = 'scrollbar'), (e[(e.scrollBeyondLastColumn = 85)] = 'scrollBeyondLastColumn'), (e[(e.scrollBeyondLastLine = 86)] = 'scrollBeyondLastLine'), (e[(e.scrollPredominantAxis = 87)] = 'scrollPredominantAxis'), (e[(e.selectionClipboard = 88)] = 'selectionClipboard'), (e[(e.selectionHighlight = 89)] = 'selectionHighlight'), (e[(e.selectOnLineNumbers = 90)] = 'selectOnLineNumbers'), (e[(e.showFoldingControls = 91)] = 'showFoldingControls'), (e[(e.showUnused = 92)] = 'showUnused'), (e[(e.snippetSuggestions = 93)] = 'snippetSuggestions'), (e[(e.smoothScrolling = 94)] = 'smoothScrolling'), (e[(e.stopRenderingLineAfter = 95)] = 'stopRenderingLineAfter'), (e[(e.suggest = 96)] = 'suggest'), (e[(e.suggestFontSize = 97)] = 'suggestFontSize'), (e[(e.suggestLineHeight = 98)] = 'suggestLineHeight'), (e[(e.suggestOnTriggerCharacters = 99)] = 'suggestOnTriggerCharacters'), (e[(e.suggestSelection = 100)] = 'suggestSelection'), (e[(e.tabCompletion = 101)] = 'tabCompletion'), (e[(e.tabIndex = 102)] = 'tabIndex'), (e[(e.unusualLineTerminators = 103)] = 'unusualLineTerminators'), (e[(e.useTabStops = 104)] = 'useTabStops'), (e[(e.wordSeparators = 105)] = 'wordSeparators'), (e[(e.wordWrap = 106)] = 'wordWrap'), (e[(e.wordWrapBreakAfterCharacters = 107)] = 'wordWrapBreakAfterCharacters'), (e[(e.wordWrapBreakBeforeCharacters = 108)] = 'wordWrapBreakBeforeCharacters'), (e[(e.wordWrapColumn = 109)] = 'wordWrapColumn'), (e[(e.wordWrapMinified = 110)] = 'wordWrapMinified'), (e[(e.wrappingIndent = 111)] = 'wrappingIndent'), (e[(e.wrappingStrategy = 112)] = 'wrappingStrategy'), (e[(e.showDeprecated = 113)] = 'showDeprecated'), (e[(e.editorClassName = 114)] = 'editorClassName'), (e[(e.pixelRatio = 115)] = 'pixelRatio'), (e[(e.tabFocusMode = 116)] = 'tabFocusMode'), (e[(e.layoutInfo = 117)] = 'layoutInfo'), (e[(e.wrappingInfo = 118)] = 'wrappingInfo'); })(At || (At = {})), (function (e) { (e[(e.TextDefined = 0)] = 'TextDefined'), (e[(e.LF = 1)] = 'LF'), (e[(e.CRLF = 2)] = 'CRLF'); })(yt || (yt = {})), (function (e) { (e[(e.LF = 0)] = 'LF'), (e[(e.CRLF = 1)] = 'CRLF'); })(wt || (wt = {})), (function (e) { (e[(e.None = 0)] = 'None'), (e[(e.Indent = 1)] = 'Indent'), (e[(e.IndentOutdent = 2)] = 'IndentOutdent'), (e[(e.Outdent = 3)] = 'Outdent'); })(vt || (vt = {})), (function (e) { (e[(e.Unknown = 0)] = 'Unknown'), (e[(e.Backspace = 1)] = 'Backspace'), (e[(e.Tab = 2)] = 'Tab'), (e[(e.Enter = 3)] = 'Enter'), (e[(e.Shift = 4)] = 'Shift'), (e[(e.Ctrl = 5)] = 'Ctrl'), (e[(e.Alt = 6)] = 'Alt'), (e[(e.PauseBreak = 7)] = 'PauseBreak'), (e[(e.CapsLock = 8)] = 'CapsLock'), (e[(e.Escape = 9)] = 'Escape'), (e[(e.Space = 10)] = 'Space'), (e[(e.PageUp = 11)] = 'PageUp'), (e[(e.PageDown = 12)] = 'PageDown'), (e[(e.End = 13)] = 'End'), (e[(e.Home = 14)] = 'Home'), (e[(e.LeftArrow = 15)] = 'LeftArrow'), (e[(e.UpArrow = 16)] = 'UpArrow'), (e[(e.RightArrow = 17)] = 'RightArrow'), (e[(e.DownArrow = 18)] = 'DownArrow'), (e[(e.Insert = 19)] = 'Insert'), (e[(e.Delete = 20)] = 'Delete'), (e[(e.KEY_0 = 21)] = 'KEY_0'), (e[(e.KEY_1 = 22)] = 'KEY_1'), (e[(e.KEY_2 = 23)] = 'KEY_2'), (e[(e.KEY_3 = 24)] = 'KEY_3'), (e[(e.KEY_4 = 25)] = 'KEY_4'), (e[(e.KEY_5 = 26)] = 'KEY_5'), (e[(e.KEY_6 = 27)] = 'KEY_6'), (e[(e.KEY_7 = 28)] = 'KEY_7'), (e[(e.KEY_8 = 29)] = 'KEY_8'), (e[(e.KEY_9 = 30)] = 'KEY_9'), (e[(e.KEY_A = 31)] = 'KEY_A'), (e[(e.KEY_B = 32)] = 'KEY_B'), (e[(e.KEY_C = 33)] = 'KEY_C'), (e[(e.KEY_D = 34)] = 'KEY_D'), (e[(e.KEY_E = 35)] = 'KEY_E'), (e[(e.KEY_F = 36)] = 'KEY_F'), (e[(e.KEY_G = 37)] = 'KEY_G'), (e[(e.KEY_H = 38)] = 'KEY_H'), (e[(e.KEY_I = 39)] = 'KEY_I'), (e[(e.KEY_J = 40)] = 'KEY_J'), (e[(e.KEY_K = 41)] = 'KEY_K'), (e[(e.KEY_L = 42)] = 'KEY_L'), (e[(e.KEY_M = 43)] = 'KEY_M'), (e[(e.KEY_N = 44)] = 'KEY_N'), (e[(e.KEY_O = 45)] = 'KEY_O'), (e[(e.KEY_P = 46)] = 'KEY_P'), (e[(e.KEY_Q = 47)] = 'KEY_Q'), (e[(e.KEY_R = 48)] = 'KEY_R'), (e[(e.KEY_S = 49)] = 'KEY_S'), (e[(e.KEY_T = 50)] = 'KEY_T'), (e[(e.KEY_U = 51)] = 'KEY_U'), (e[(e.KEY_V = 52)] = 'KEY_V'), (e[(e.KEY_W = 53)] = 'KEY_W'), (e[(e.KEY_X = 54)] = 'KEY_X'), (e[(e.KEY_Y = 55)] = 'KEY_Y'), (e[(e.KEY_Z = 56)] = 'KEY_Z'), (e[(e.Meta = 57)] = 'Meta'), (e[(e.ContextMenu = 58)] = 'ContextMenu'), (e[(e.F1 = 59)] = 'F1'), (e[(e.F2 = 60)] = 'F2'), (e[(e.F3 = 61)] = 'F3'), (e[(e.F4 = 62)] = 'F4'), (e[(e.F5 = 63)] = 'F5'), (e[(e.F6 = 64)] = 'F6'), (e[(e.F7 = 65)] = 'F7'), (e[(e.F8 = 66)] = 'F8'), (e[(e.F9 = 67)] = 'F9'), (e[(e.F10 = 68)] = 'F10'), (e[(e.F11 = 69)] = 'F11'), (e[(e.F12 = 70)] = 'F12'), (e[(e.F13 = 71)] = 'F13'), (e[(e.F14 = 72)] = 'F14'), (e[(e.F15 = 73)] = 'F15'), (e[(e.F16 = 74)] = 'F16'), (e[(e.F17 = 75)] = 'F17'), (e[(e.F18 = 76)] = 'F18'), (e[(e.F19 = 77)] = 'F19'), (e[(e.NumLock = 78)] = 'NumLock'), (e[(e.ScrollLock = 79)] = 'ScrollLock'), (e[(e.US_SEMICOLON = 80)] = 'US_SEMICOLON'), (e[(e.US_EQUAL = 81)] = 'US_EQUAL'), (e[(e.US_COMMA = 82)] = 'US_COMMA'), (e[(e.US_MINUS = 83)] = 'US_MINUS'), (e[(e.US_DOT = 84)] = 'US_DOT'), (e[(e.US_SLASH = 85)] = 'US_SLASH'), (e[(e.US_BACKTICK = 86)] = 'US_BACKTICK'), (e[(e.US_OPEN_SQUARE_BRACKET = 87)] = 'US_OPEN_SQUARE_BRACKET'), (e[(e.US_BACKSLASH = 88)] = 'US_BACKSLASH'), (e[(e.US_CLOSE_SQUARE_BRACKET = 89)] = 'US_CLOSE_SQUARE_BRACKET'), (e[(e.US_QUOTE = 90)] = 'US_QUOTE'), (e[(e.OEM_8 = 91)] = 'OEM_8'), (e[(e.OEM_102 = 92)] = 'OEM_102'), (e[(e.NUMPAD_0 = 93)] = 'NUMPAD_0'), (e[(e.NUMPAD_1 = 94)] = 'NUMPAD_1'), (e[(e.NUMPAD_2 = 95)] = 'NUMPAD_2'), (e[(e.NUMPAD_3 = 96)] = 'NUMPAD_3'), (e[(e.NUMPAD_4 = 97)] = 'NUMPAD_4'), (e[(e.NUMPAD_5 = 98)] = 'NUMPAD_5'), (e[(e.NUMPAD_6 = 99)] = 'NUMPAD_6'), (e[(e.NUMPAD_7 = 100)] = 'NUMPAD_7'), (e[(e.NUMPAD_8 = 101)] = 'NUMPAD_8'), (e[(e.NUMPAD_9 = 102)] = 'NUMPAD_9'), (e[(e.NUMPAD_MULTIPLY = 103)] = 'NUMPAD_MULTIPLY'), (e[(e.NUMPAD_ADD = 104)] = 'NUMPAD_ADD'), (e[(e.NUMPAD_SEPARATOR = 105)] = 'NUMPAD_SEPARATOR'), (e[(e.NUMPAD_SUBTRACT = 106)] = 'NUMPAD_SUBTRACT'), (e[(e.NUMPAD_DECIMAL = 107)] = 'NUMPAD_DECIMAL'), (e[(e.NUMPAD_DIVIDE = 108)] = 'NUMPAD_DIVIDE'), (e[(e.KEY_IN_COMPOSITION = 109)] = 'KEY_IN_COMPOSITION'), (e[(e.ABNT_C1 = 110)] = 'ABNT_C1'), (e[(e.ABNT_C2 = 111)] = 'ABNT_C2'), (e[(e.MAX_VALUE = 112)] = 'MAX_VALUE'); })(Tt || (Tt = {})), (function (e) { (e[(e.Hint = 1)] = 'Hint'), (e[(e.Info = 2)] = 'Info'), (e[(e.Warning = 4)] = 'Warning'), (e[(e.Error = 8)] = 'Error'); })(Ot || (Ot = {})), (function (e) { (e[(e.Unnecessary = 1)] = 'Unnecessary'), (e[(e.Deprecated = 2)] = 'Deprecated'); })(It || (It = {})), (function (e) { (e[(e.Inline = 1)] = 'Inline'), (e[(e.Gutter = 2)] = 'Gutter'); })(Mt || (Mt = {})), (function (e) { (e[(e.UNKNOWN = 0)] = 'UNKNOWN'), (e[(e.TEXTAREA = 1)] = 'TEXTAREA'), (e[(e.GUTTER_GLYPH_MARGIN = 2)] = 'GUTTER_GLYPH_MARGIN'), (e[(e.GUTTER_LINE_NUMBERS = 3)] = 'GUTTER_LINE_NUMBERS'), (e[(e.GUTTER_LINE_DECORATIONS = 4)] = 'GUTTER_LINE_DECORATIONS'), (e[(e.GUTTER_VIEW_ZONE = 5)] = 'GUTTER_VIEW_ZONE'), (e[(e.CONTENT_TEXT = 6)] = 'CONTENT_TEXT'), (e[(e.CONTENT_EMPTY = 7)] = 'CONTENT_EMPTY'), (e[(e.CONTENT_VIEW_ZONE = 8)] = 'CONTENT_VIEW_ZONE'), (e[(e.CONTENT_WIDGET = 9)] = 'CONTENT_WIDGET'), (e[(e.OVERVIEW_RULER = 10)] = 'OVERVIEW_RULER'), (e[(e.SCROLLBAR = 11)] = 'SCROLLBAR'), (e[(e.OVERLAY_WIDGET = 12)] = 'OVERLAY_WIDGET'), (e[(e.OUTSIDE_EDITOR = 13)] = 'OUTSIDE_EDITOR'); })(xt || (xt = {})), (function (e) { (e[(e.TOP_RIGHT_CORNER = 0)] = 'TOP_RIGHT_CORNER'), (e[(e.BOTTOM_RIGHT_CORNER = 1)] = 'BOTTOM_RIGHT_CORNER'), (e[(e.TOP_CENTER = 2)] = 'TOP_CENTER'); })(Rt || (Rt = {})), (function (e) { (e[(e.Left = 1)] = 'Left'), (e[(e.Center = 2)] = 'Center'), (e[(e.Right = 4)] = 'Right'), (e[(e.Full = 7)] = 'Full'); })(Pt || (Pt = {})), (function (e) { (e[(e.Off = 0)] = 'Off'), (e[(e.On = 1)] = 'On'), (e[(e.Relative = 2)] = 'Relative'), (e[(e.Interval = 3)] = 'Interval'), (e[(e.Custom = 4)] = 'Custom'); })(Ut || (Ut = {})), (function (e) { (e[(e.None = 0)] = 'None'), (e[(e.Text = 1)] = 'Text'), (e[(e.Blocks = 2)] = 'Blocks'); })(kt || (kt = {})), (function (e) { (e[(e.Smooth = 0)] = 'Smooth'), (e[(e.Immediate = 1)] = 'Immediate'); })(Dt || (Dt = {})), (function (e) { (e[(e.Auto = 1)] = 'Auto'), (e[(e.Hidden = 2)] = 'Hidden'), (e[(e.Visible = 3)] = 'Visible'); })(Ft || (Ft = {})), (function (e) { (e[(e.LTR = 0)] = 'LTR'), (e[(e.RTL = 1)] = 'RTL'); })(Kt || (Kt = {})), (function (e) { (e[(e.Invoke = 1)] = 'Invoke'), (e[(e.TriggerCharacter = 2)] = 'TriggerCharacter'), (e[(e.ContentChange = 3)] = 'ContentChange'); })(Bt || (Bt = {})), (function (e) { (e[(e.File = 0)] = 'File'), (e[(e.Module = 1)] = 'Module'), (e[(e.Namespace = 2)] = 'Namespace'), (e[(e.Package = 3)] = 'Package'), (e[(e.Class = 4)] = 'Class'), (e[(e.Method = 5)] = 'Method'), (e[(e.Property = 6)] = 'Property'), (e[(e.Field = 7)] = 'Field'), (e[(e.Constructor = 8)] = 'Constructor'), (e[(e.Enum = 9)] = 'Enum'), (e[(e.Interface = 10)] = 'Interface'), (e[(e.Function = 11)] = 'Function'), (e[(e.Variable = 12)] = 'Variable'), (e[(e.Constant = 13)] = 'Constant'), (e[(e.String = 14)] = 'String'), (e[(e.Number = 15)] = 'Number'), (e[(e.Boolean = 16)] = 'Boolean'), (e[(e.Array = 17)] = 'Array'), (e[(e.Object = 18)] = 'Object'), (e[(e.Key = 19)] = 'Key'), (e[(e.Null = 20)] = 'Null'), (e[(e.EnumMember = 21)] = 'EnumMember'), (e[(e.Struct = 22)] = 'Struct'), (e[(e.Event = 23)] = 'Event'), (e[(e.Operator = 24)] = 'Operator'), (e[(e.TypeParameter = 25)] = 'TypeParameter'); })(Wt || (Wt = {})), (function (e) { e[(e.Deprecated = 1)] = 'Deprecated'; })(qt || (qt = {})), (function (e) { (e[(e.Hidden = 0)] = 'Hidden'), (e[(e.Blink = 1)] = 'Blink'), (e[(e.Smooth = 2)] = 'Smooth'), (e[(e.Phase = 3)] = 'Phase'), (e[(e.Expand = 4)] = 'Expand'), (e[(e.Solid = 5)] = 'Solid'); })(Ht || (Ht = {})), (function (e) { (e[(e.Line = 1)] = 'Line'), (e[(e.Block = 2)] = 'Block'), (e[(e.Underline = 3)] = 'Underline'), (e[(e.LineThin = 4)] = 'LineThin'), (e[(e.BlockOutline = 5)] = 'BlockOutline'), (e[(e.UnderlineThin = 6)] = 'UnderlineThin'); })(Vt || (Vt = {})), (function (e) { (e[(e.AlwaysGrowsWhenTypingAtEdges = 0)] = 'AlwaysGrowsWhenTypingAtEdges'), (e[(e.NeverGrowsWhenTypingAtEdges = 1)] = 'NeverGrowsWhenTypingAtEdges'), (e[(e.GrowsOnlyWhenTypingBefore = 2)] = 'GrowsOnlyWhenTypingBefore'), (e[(e.GrowsOnlyWhenTypingAfter = 3)] = 'GrowsOnlyWhenTypingAfter'); })(Yt || (Yt = {})), (function (e) { (e[(e.None = 0)] = 'None'), (e[(e.Same = 1)] = 'Same'), (e[(e.Indent = 2)] = 'Indent'), (e[(e.DeepIndent = 3)] = 'DeepIndent'); })($t || ($t = {})); class Gt { static chord(e, t) { return (function (e, t) { return (e | (((65535 & t) << 16) >>> 0)) >>> 0; })(e, t); } } (Gt.CtrlCmd = 2048), (Gt.Shift = 1024), (Gt.Alt = 512), (Gt.WinCtrl = 256); var zt = function (e, t, n, i) { return new (n || (n = Promise))(function (r, s) { function o(e) { try { l(i.next(e)); } catch (e) { s(e); } } function a(e) { try { l(i.throw(e)); } catch (e) { s(e); } } function l(e) { var t; e.done ? r(e.value) : ((t = e.value), t instanceof n ? t : new n(function (e) { e(t); })).then(o, a); } l((i = i.apply(e, t || [])).next()); }); }; class Qt extends class { constructor(e, t, n, i) { (this._uri = e), (this._lines = t), (this._eol = n), (this._versionId = i), (this._lineStarts = null), (this._cachedTextValue = null); } dispose() { this._lines.length = 0; } getText() { return ( null === this._cachedTextValue && (this._cachedTextValue = this._lines.join(this._eol)), this._cachedTextValue ); } onEvents(e) { e.eol && e.eol !== this._eol && ((this._eol = e.eol), (this._lineStarts = null)); const t = e.changes; for (const e of t) this._acceptDeleteRange(e.range), this._acceptInsertText( new Ie(e.range.startLineNumber, e.range.startColumn), e.text ); (this._versionId = e.versionId), (this._cachedTextValue = null); } _ensureLineStarts() { if (!this._lineStarts) { const e = this._eol.length, t = this._lines.length, n = new Uint32Array(t); for (let i = 0; i < t; i++) n[i] = this._lines[i].length + e; this._lineStarts = new Ve(n); } } _setLineText(e, t) { (this._lines[e] = t), this._lineStarts && this._lineStarts.changeValue( e, this._lines[e].length + this._eol.length ); } _acceptDeleteRange(e) { if (e.startLineNumber !== e.endLineNumber) this._setLineText( e.startLineNumber - 1, this._lines[e.startLineNumber - 1].substring(0, e.startColumn - 1) + this._lines[e.endLineNumber - 1].substring(e.endColumn - 1) ), this._lines.splice( e.startLineNumber, e.endLineNumber - e.startLineNumber ), this._lineStarts && this._lineStarts.removeValues( e.startLineNumber, e.endLineNumber - e.startLineNumber ); else { if (e.startColumn === e.endColumn) return; this._setLineText( e.startLineNumber - 1, this._lines[e.startLineNumber - 1].substring(0, e.startColumn - 1) + this._lines[e.startLineNumber - 1].substring(e.endColumn - 1) ); } } _acceptInsertText(e, t) { if (0 === t.length) return; let n = t.split(/\r\n|\r|\n/); if (1 === n.length) return void this._setLineText( e.lineNumber - 1, this._lines[e.lineNumber - 1].substring(0, e.column - 1) + n[0] + this._lines[e.lineNumber - 1].substring(e.column - 1) ); (n[n.length - 1] += this._lines[e.lineNumber - 1].substring( e.column - 1 )), this._setLineText( e.lineNumber - 1, this._lines[e.lineNumber - 1].substring(0, e.column - 1) + n[0] ); let i = new Uint32Array(n.length - 1); for (let t = 1; t < n.length; t++) this._lines.splice(e.lineNumber + t - 1, 0, n[t]), (i[t - 1] = n[t].length + this._eol.length); this._lineStarts && this._lineStarts.insertValues(e.lineNumber, i); } } { get uri() { return this._uri; } get version() { return this._versionId; } get eol() { return this._eol; } getValue() { return this.getText(); } getLinesContent() { return this._lines.slice(0); } getLineCount() { return this._lines.length; } getLineContent(e) { return this._lines[e - 1]; } getWordAtPosition(e, t) { let n = je( e.column, (function (e) { let t = Ye; if (e && e instanceof RegExp) if (e.global) t = e; else { let n = 'g'; e.ignoreCase && (n += 'i'), e.multiline && (n += 'm'), e.unicode && (n += 'u'), (t = new RegExp(e.source, n)); } return (t.lastIndex = 0), t; })(t), this._lines[e.lineNumber - 1], 0 ); return n ? new Me(e.lineNumber, n.startColumn, e.lineNumber, n.endColumn) : null; } words(e) { const t = this._lines, n = this._wordenize.bind(this); let i = 0, r = '', s = 0, o = []; return { *[Symbol.iterator]() { for (;;) if (s < o.length) { const e = r.substring(o[s].start, o[s].end); (s += 1), yield e; } else { if (!(i < t.length)) break; (r = t[i]), (o = n(r, e)), (s = 0), (i += 1); } }, }; } getLineWords(e, t) { let n = this._lines[e - 1], i = this._wordenize(n, t), r = []; for (const e of i) r.push({ word: n.substring(e.start, e.end), startColumn: e.start + 1, endColumn: e.end + 1, }); return r; } _wordenize(e, t) { const n = []; let i; for (t.lastIndex = 0; (i = t.exec(e)) && 0 !== i[0].length; ) n.push({ start: i.index, end: i.index + i[0].length }); return n; } getValueInRange(e) { if ((e = this._validateRange(e)).startLineNumber === e.endLineNumber) return this._lines[e.startLineNumber - 1].substring( e.startColumn - 1, e.endColumn - 1 ); let t = this._eol, n = e.startLineNumber - 1, i = e.endLineNumber - 1, r = []; r.push(this._lines[n].substring(e.startColumn - 1)); for (let e = n + 1; e < i; e++) r.push(this._lines[e]); return r.push(this._lines[i].substring(0, e.endColumn - 1)), r.join(t); } offsetAt(e) { return ( (e = this._validatePosition(e)), this._ensureLineStarts(), this._lineStarts.getAccumulatedValue(e.lineNumber - 2) + (e.column - 1) ); } positionAt(e) { (e = Math.floor(e)), (e = Math.max(0, e)), this._ensureLineStarts(); let t = this._lineStarts.getIndexOf(e), n = this._lines[t.index].length; return { lineNumber: 1 + t.index, column: 1 + Math.min(t.remainder, n) }; } _validateRange(e) { const t = this._validatePosition({ lineNumber: e.startLineNumber, column: e.startColumn, }), n = this._validatePosition({ lineNumber: e.endLineNumber, column: e.endColumn, }); return t.lineNumber !== e.startLineNumber || t.column !== e.startColumn || n.lineNumber !== e.endLineNumber || n.column !== e.endColumn ? { startLineNumber: t.lineNumber, startColumn: t.column, endLineNumber: n.lineNumber, endColumn: n.column, } : e; } _validatePosition(e) { if (!Ie.isIPosition(e)) throw new Error('bad position'); let { lineNumber: t, column: n } = e, i = !1; if (t < 1) (t = 1), (n = 1), (i = !0); else if (t > this._lines.length) (t = this._lines.length), (n = this._lines[t - 1].length + 1), (i = !0); else { let e = this._lines[t - 1].length + 1; n < 1 ? ((n = 1), (i = !0)) : n > e && ((n = e), (i = !0)); } return i ? { lineNumber: t, column: n } : e; } } class Xt { constructor(e, t) { (this._host = e), (this._models = Object.create(null)), (this._foreignModuleFactory = t), (this._foreignModule = null); } dispose() { this._models = Object.create(null); } _getModel(e) { return this._models[e]; } _getModels() { let e = []; return ( Object.keys(this._models).forEach((t) => e.push(this._models[t])), e ); } acceptNewModel(e) { this._models[e.url] = new Qt( be.parse(e.url), e.lines, e.EOL, e.versionId ); } acceptModelChanged(e, t) { this._models[e] && this._models[e].onEvents(t); } acceptRemovedModel(e) { this._models[e] && delete this._models[e]; } computeDiff(e, t, n, i) { return zt(this, void 0, void 0, function* () { const r = this._getModel(e), s = this._getModel(t); if (!r || !s) return null; const o = r.getLinesContent(), a = s.getLinesContent(), l = new De(o, a, { shouldComputeCharChanges: !0, shouldPostProcessCharChanges: !0, shouldIgnoreTrimWhitespace: n, shouldMakePrettyDiff: !0, maxComputationTime: i, }).computeDiff(), u = !(l.changes.length > 0) && this._modelsAreIdentical(r, s); return { quitEarly: l.quitEarly, identical: u, changes: l.changes }; }); } _modelsAreIdentical(e, t) { const n = e.getLineCount(); if (n !== t.getLineCount()) return !1; for (let i = 1; i <= n; i++) if (e.getLineContent(i) !== t.getLineContent(i)) return !1; return !0; } computeMoreMinimalEdits(e, t) { return zt(this, void 0, void 0, function* () { const n = this._getModel(e); if (!n) return t; const i = []; let r; t = x(t, (e, t) => e.range && t.range ? Me.compareRangesUsingStarts(e.range, t.range) : (e.range ? 0 : 1) - (t.range ? 0 : 1) ); for (let { range: e, text: s, eol: o } of t) { if (('number' == typeof o && (r = o), Me.isEmpty(e) && !s)) continue; const t = n.getValueInRange(e); if (((s = s.replace(/\r\n|\n|\r/g, n.eol)), t === s)) continue; if (Math.max(s.length, t.length) > Xt._diffLimit) { i.push({ range: e, text: s }); continue; } const a = Y(t, s, !1), l = n.offsetAt(Me.lift(e).getStartPosition()); for (const e of a) { const t = n.positionAt(l + e.originalStart), r = n.positionAt(l + e.originalStart + e.originalLength), o = { text: s.substr(e.modifiedStart, e.modifiedLength), range: { startLineNumber: t.lineNumber, startColumn: t.column, endLineNumber: r.lineNumber, endColumn: r.column, }, }; n.getValueInRange(o.range) !== o.text && i.push(o); } } return ( 'number' == typeof r && i.push({ eol: r, text: '', range: { startLineNumber: 0, startColumn: 0, endLineNumber: 0, endColumn: 0, }, }), i ); }); } computeLinks(e) { return zt(this, void 0, void 0, function* () { let t = this._getModel(e); return t ? (function (e) { return e && 'function' == typeof e.getLineCount && 'function' == typeof e.getLineContent ? et.computeLinks(e) : []; })(t) : null; }); } textualSuggest(e, t, n, i) { return zt(this, void 0, void 0, function* () { const r = this._getModel(e); if (!r) return null; const s = [], o = new Set(), a = new RegExp(n, i), l = r.getWordAtPosition(t, a); l && o.add(r.getValueInRange(l)); for (let e of r.words(a)) if ( !o.has(e) && (o.add(e), isNaN(Number(e)) && (s.push(e), o.size > Xt._suggestionsLimit)) ) break; return s; }); } computeWordRanges(e, t, n, i) { return zt(this, void 0, void 0, function* () { let r = this._getModel(e); if (!r) return Object.create(null); const s = new RegExp(n, i), o = Object.create(null); for (let e = t.startLineNumber; e < t.endLineNumber; e++) { let t = r.getLineWords(e, s); for (const n of t) { if (!isNaN(Number(n.word))) continue; let t = o[n.word]; t || ((t = []), (o[n.word] = t)), t.push({ startLineNumber: e, startColumn: n.startColumn, endLineNumber: e, endColumn: n.endColumn, }); } } return o; }); } navigateValueSet(e, t, n, i, r) { return zt(this, void 0, void 0, function* () { let s = this._getModel(e); if (!s) return null; let o = new RegExp(i, r); t.startColumn === t.endColumn && (t = { startLineNumber: t.startLineNumber, startColumn: t.startColumn, endLineNumber: t.endLineNumber, endColumn: t.endColumn + 1, }); let a = s.getValueInRange(t), l = s.getWordAtPosition( { lineNumber: t.startLineNumber, column: t.startColumn }, o ); if (!l) return null; let u = s.getValueInRange(l); return tt.INSTANCE.navigateValueSet(t, a, l, u, n); }); } loadForeignModule(e, t, n) { let i = { host: O(n, (e, t) => this._host.fhr(e, t)), getMirrorModels: () => this._getModels(), }; return this._foreignModuleFactory ? ((this._foreignModule = this._foreignModuleFactory(i, t)), Promise.resolve(T(this._foreignModule))) : Promise.reject(new Error('Unexpected usage')); } fmr(e, t) { if (!this._foreignModule || 'function' != typeof this._foreignModule[e]) return Promise.reject( new Error('Missing requestHandler or method: ' + e) ); try { return Promise.resolve( this._foreignModule[e].apply(this._foreignModule, t) ); } catch (e) { return Promise.reject(e); } } } (Xt._diffLimit = 1e5), (Xt._suggestionsLimit = 1e4), 'function' == typeof importScripts && (w.monaco = { editor: void 0, languages: void 0, CancellationTokenSource: 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 lt()), this._token; } cancel() { this._token ? this._token instanceof lt && this._token.cancel() : (this._token = at.Cancelled); } dispose(e = !1) { e && this.cancel(), this._parentListener && this._parentListener.dispose(), this._token ? this._token instanceof lt && this._token.dispose() : (this._token = at.None); } }, Emitter: st, KeyCode: Tt, KeyMod: Gt, Position: Ie, Range: Me, Selection: jt, SelectionDirection: Kt, MarkerSeverity: Ot, MarkerTag: It, Uri: be, Token: class { constructor(e, t, n) { (this.offset = 0 | e), (this.type = t), (this.language = n); } toString() { return '(' + this.offset + ', ' + this.type + ')'; } }, }); let Zt = !1; self.onmessage = (e) => { Zt || (function (e) { if (Zt) return; Zt = !0; const t = new M( (e) => { self.postMessage(e); }, (e) => new Xt(e, null) ); self.onmessage = (e) => { t.onmessage(e.data); }; })(); }; })();