-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathjson.worker.js
More file actions
1 lines (1 loc) · 418 KB
/
Copy pathjson.worker.js
File metadata and controls
1 lines (1 loc) · 418 KB
1
(()=>{"use strict";let e,t,r,n,i,s,o,a,l,u,c,h,d,m,g,f,p=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{if(e.stack){if(_.isErrorNoTelemetry(e))throw new _(e.message+"\n\n"+e.stack);throw 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 b(e){w(e)||p.onUnexpectedError(e)}function y(e){if(e instanceof Error){let{name:t,message:r,cause:n}=e;return{$isError:!0,name:t,message:r,stack:e.stacktrace||e.stack,noTelemetry:_.isErrorNoTelemetry(e),cause:n?y(n):void 0,code:e.code}}return e}let v="Canceled";function w(e){return e instanceof C||e instanceof Error&&e.name===v&&e.message===v}class C extends Error{constructor(){super(v),this.name=this.message}}class _ extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof _)return e;let t=new _;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return"CodeExpectedError"===e.name}}class S extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,S.prototype)}}function L(e){e()||(e(),b(new S("Assertion Failed")))}function x(e,t){let r=0;for(;r<e.length-1;){if(!t(e[r],e[r+1]))return!1;r++}return!0}function N(e){if(oo.is(e)){let t=[];for(let r of e)if(r)try{r.dispose()}catch(e){t.push(e)}if(1===t.length)throw t[0];if(t.length>1)throw AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}if(e)return e.dispose(),e}!function(e){function t(e){return!!e&&"object"==typeof e&&"function"==typeof e[Symbol.iterator]}e.is=t;let r=Object.freeze([]);function*n(e){yield e}e.empty=function(){return r},e.single=n,e.wrap=function(e){return t(e)?e:n(e)},e.from=function(e){return e??r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.isEmpty=function(e){return!e||!0===e[Symbol.iterator]().next().done},e.first=function(e){return e[Symbol.iterator]().next().value},e.some=function(e,t){let r=0;for(let n of e)if(t(n,r++))return!0;return!1},e.every=function(e,t){let r=0;for(let n of e)if(!t(n,r++))return!1;return!0},e.find=function(e,t){for(let r of e)if(t(r))return r},e.filter=function*(e,t){for(let r of e)t(r)&&(yield r)},e.map=function*(e,t){let r=0;for(let n of e)yield t(n,r++)},e.flatMap=function*(e,t){let r=0;for(let n of e)yield*t(n,r++)},e.concat=function*(...e){for(let t of e)t&&"function"==typeof t[Symbol.iterator]?yield*t:yield t},e.reduce=function(e,t,r){let n=r;for(let r of e)n=t(n,r);return n},e.length=function(e){let t=0;for(let r of e)t++;return t},e.slice=function*(e,t,r=e.length){for(t<-e.length&&(t=0),t<0&&(t+=e.length),r<0?r+=e.length:r>e.length&&(r=e.length);t<r;t++)yield e[t]},e.consume=function(t,r=1/0){let n=[];if(0===r)return[n,t];let i=t[Symbol.iterator]();for(let t=0;t<r;t++){let t=i.next();if(t.done)return[n,e.empty()];n.push(t.value)}return[n,{[Symbol.iterator]:()=>i}]},e.asyncToArray=async function(e){let t=[];for await(let r of e)t.push(r);return t},e.asyncToArrayFlat=async function(e){let t=[];for await(let r of e)t=t.concat(r);return t}}(oo||(oo={}));class E{constructor(e){this._isDisposed=!1,this._fn=e}dispose(){if(!this._isDisposed){if(!this._fn)throw Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,this._fn()}}}function A(e){return new E(e)}class k{static{this.DISABLE_DISPOSED_WARNING=!1}constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{N(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e||e===R.None)return e;if(e===this)throw Error("Cannot register a disposable on itself!");return this._isDisposed?k.DISABLE_DISPOSED_WARNING||console.warn(Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}delete(e){if(e){if(e===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}}class R{static{this.None=Object.freeze({dispose(){}})}constructor(){this._store=new k,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw Error("Cannot register a disposable on itself!");return this._store.add(e)}}class T{static{this.Undefined=new T(void 0)}constructor(e){this.element=e,this.next=T.Undefined,this.prev=T.Undefined}}class M{constructor(){this._first=T.Undefined,this._last=T.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===T.Undefined}clear(){let e=this._first;for(;e!==T.Undefined;){let t=e.next;e.prev=T.Undefined,e.next=T.Undefined,e=t}this._first=T.Undefined,this._last=T.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){let r=new T(e);if(this._first===T.Undefined)this._first=r,this._last=r;else if(t){let e=this._last;this._last=r,r.prev=e,e.next=r}else{let e=this._first;this._first=r,r.next=e,e.prev=r}this._size+=1;let n=!1;return()=>{n||(n=!0,this._remove(r))}}shift(){if(this._first!==T.Undefined){let e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==T.Undefined){let e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==T.Undefined&&e.next!==T.Undefined){let t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===T.Undefined&&e.next===T.Undefined?(this._first=T.Undefined,this._last=T.Undefined):e.next===T.Undefined?(this._last=this._last.prev,this._last.next=T.Undefined):e.prev===T.Undefined&&(this._first=this._first.next,this._first.prev=T.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==T.Undefined;)yield e.element,e=e.next}}function O(){return globalThis._VSCODE_NLS_LANGUAGE}let I="pseudo"===O()||"u">typeof document&&document.location&&"string"==typeof document.location.hash&&document.location.hash.indexOf("pseudo=true")>=0;function P(e,t){let r;return r=0===t.length?e:e.replace(/\{(\d+)\}/g,(e,r)=>{let n=t[r[0]],i=e;return"string"==typeof n?i=n:("number"==typeof n||"boolean"==typeof n||null==n)&&(i=String(n)),i}),I&&(r="\uFF3B"+r.replace(/[aouei]/g,"$&$&")+"\uFF3D"),r}function F(e,t,...r){return"number"==typeof e?P(function(e,t){let r=globalThis._VSCODE_NLS_MESSAGES?.[e];if("string"!=typeof r){if("string"==typeof t)return t;throw Error(`!!! NLS MISSING: ${e} !!!`)}return r}(e,t),r):P(t,r)}let V=!1,D=!1,q=!1,$=!1,K=globalThis;void 0!==K.vscode&&void 0!==K.vscode.process?a=K.vscode.process:"u">typeof process&&"string"==typeof process?.versions?.node&&(a=process);let B="string"==typeof a?.versions?.electron&&a?.type==="renderer";if("object"==typeof a){V="win32"===a.platform,D="darwin"===a.platform,"linux"===a.platform&&a.env.SNAP&&a.env.SNAP_REVISION,a.env.CI||a.env.BUILD_ARTIFACTSTAGINGDIRECTORY||a.env.GITHUB_WORKSPACE;let e=a.env.VSCODE_NLS_CONFIG;if(e)try{let t=JSON.parse(e);t.userLocale,t.osLocale,t.resolvedLanguage,t.languagePack?.translationsConfigFile}catch(e){}q=!0}else"object"!=typeof navigator||B?console.error("Unable to resolve platform."):(V=(o=navigator.userAgent).indexOf("Windows")>=0,D=o.indexOf("Macintosh")>=0,(o.indexOf("Macintosh")>=0||o.indexOf("iPad")>=0||o.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints,o.indexOf("Linux"),o?.indexOf("Mobi"),$=!0,O(),navigator.language.toLowerCase());let U=V,j=D,W=q,z=$,H=$&&"function"==typeof K.importScripts?K.origin:void 0,G=o,J="function"==typeof K.postMessage&&!K.importScripts,X=(()=>{if(J){let e=[];K.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let r=0,n=e.length;r<n;r++){let n=e[r];if(n.id===t.data.vscodeScheduleAsyncWork){e.splice(r,1),n.callback();return}}});let t=0;return r=>{let n=++t;e.push({id:n,callback:r}),K.postMessage({vscodeScheduleAsyncWork:n},"*")}}return e=>setTimeout(e)})(),Q=!!(G&&G.indexOf("Chrome")>=0);G&&G.indexOf("Firefox"),!Q&&G&&G.indexOf("Safari"),G&&G.indexOf("Edg/"),G&&G.indexOf("Android");let Z=globalThis.vscode;if(void 0!==Z&&void 0!==Z.process){let t=Z.process;e={get platform(){return t.platform},get arch(){return t.arch},get env(){return t.env},cwd:()=>t.cwd()}}else e="u">typeof process&&"string"==typeof process?.versions?.node?{get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd:()=>process.env.VSCODE_CWD||process.cwd()}:{get platform(){return U?"win32":j?"darwin":"linux"},get arch(){return},get env(){return{}},cwd:()=>"/"};let Y=e.cwd,ee=e.env,et=e.platform,er=globalThis.performance.now.bind(globalThis.performance);class en{static create(e){return new en(e)}constructor(e){this._now=!1===e?Date.now:er,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return -1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}}function ei(){return!!ee.VSCODE_DEV}!function(e){function t(e){return(t,r=null,n)=>{let i,s=!1;return i=e(e=>s?void 0:(i?i.dispose():s=!0,t.call(r,e)),null,n),s&&i.dispose(),i}}function r(e,t,r){return i((r,n=null,i)=>e(e=>r.call(n,t(e)),null,i),r)}function n(e,t,r){return i((r,n=null,i)=>e(e=>t(e)&&r.call(n,e),null,i),r)}function i(e,t){let r,n=new eh({onWillAddFirstListener(){r=e(n.fire,n)},onDidRemoveLastListener(){r?.dispose()}});return t?.add(n),n.event}function s(e,t,r=100,n=!1,i=!1,o,a){let l,u,c,h,d=0,m=new eh({leakWarningThreshold:o,onWillAddFirstListener(){l=e(e=>{d++,c=t(c,e),n&&!h&&(m.fire(c),c=void 0),u=()=>{let e=c;c=void 0,h=void 0,(!n||d>1)&&m.fire(e),d=0},"number"==typeof r?(h&&clearTimeout(h),h=setTimeout(u,r)):void 0===h&&(h=null,queueMicrotask(u))})},onWillRemoveListener(){i&&d>0&&u?.()},onDidRemoveLastListener(){u=void 0,l.dispose()}});return a?.add(m),m.event}e.None=()=>R.None,e.defer=function(e,t,r){return s(e,()=>void 0,0,void 0,t??!0,void 0,r)},e.once=t,e.onceIf=function(t,r){return e.once(e.filter(t,r))},e.map=r,e.forEach=function(e,t,r){return i((r,n=null,i)=>e(e=>{t(e),r.call(n,e)},null,i),r)},e.filter=n,e.signal=function(e){return e},e.any=function(...e){return(t,r=null,n)=>{var i,s;return i=function(...e){return A(()=>N(e))}(...e.map(e=>e(e=>t.call(r,e)))),(s=n)instanceof Array?s.push(i):s&&s.add(i),i}},e.reduce=function(e,t,n,i){let s=n;return r(e,e=>s=t(s,e),i)},e.debounce=s,e.accumulate=function(t,r=0,n,i){return e.debounce(t,(e,t)=>e?(e.push(t),e):[t],r,void 0,n??!0,void 0,i)},e.throttle=function(e,t,r=100,n=!0,i=!0,s,o){let a,l,u,c=0,h=new eh({leakWarningThreshold:s,onWillAddFirstListener(){a=e(e=>{c++,l=t(l,e),void 0===u&&(n&&(h.fire(l),l=void 0,c=0),"number"==typeof r?u=setTimeout(()=>{i&&c>0&&h.fire(l),l=void 0,u=void 0,c=0},r):(u=0,queueMicrotask(()=>{i&&c>0&&h.fire(l),l=void 0,u=void 0,c=0})))})},onDidRemoveLastListener(){a.dispose()}});return o?.add(h),h.event},e.latch=function(e,t=(e,t)=>e===t,r){let i,s=!0;return n(e,e=>{let r=s||!t(e,i);return s=!1,i=e,r},r)},e.split=function(t,r,n){return[e.filter(t,r,n),e.filter(t,e=>!r(e),n)]},e.buffer=function(e,t,r=!1,n=[],i){let s,o=n.slice();ei()&&(s={stack:ea.create(),timerId:setTimeout(()=>{o&&o.length>0&&s&&!s.warned&&(s.warned=!0,console.warn(`[Event.buffer][${t}] potential LEAK detected: ${o.length} events buffered for 60s without being consumed. Buffered here:`),s.stack.print())},6e4),warned:!1},i&&i.add(A(()=>clearTimeout(s.timerId))));let a=()=>{s&&clearTimeout(s.timerId)},l=e(e=>{o?(o.push(e),ei()&&s&&!s.warned&&o.length>=100&&(s.warned=!0,console.warn(`[Event.buffer][${t}] potential LEAK detected: ${o.length} events buffered without being consumed. Buffered here:`),s.stack.print())):c.fire(e)});i&&i.add(l);let u=()=>{o?.forEach(e=>c.fire(e)),o=null,a()},c=new eh({onWillAddFirstListener(){!l&&(l=e(e=>c.fire(e)),i&&i.add(l))},onDidAddFirstListener(){o&&(r?setTimeout(u):u())},onDidRemoveLastListener(){l&&l.dispose(),l=null,a()}});return i&&i.add(c),c.event},e.chain=function(e,t){return(r,n,i)=>{let s=t(new a);return e(function(e){let t=s.evaluate(e);t!==o&&r.call(n,t)},void 0,i)}};let o=Symbol("HaltChainable");class a{constructor(){this.steps=[]}map(e){return this.steps.push(e),this}forEach(e){return this.steps.push(t=>(e(t),t)),this}filter(e){return this.steps.push(t=>e(t)?t:o),this}reduce(e,t){let r=t;return this.steps.push(t=>r=e(r,t)),this}latch(e=(e,t)=>e===t){let t,r=!0;return this.steps.push(n=>{let i=r||!e(n,t);return r=!1,t=n,i?n:o}),this}evaluate(e){for(let t of this.steps)if((e=t(e))===o)break;return e}}e.fromNodeEventEmitter=function(e,t,r=e=>e){let n=(...e)=>i.fire(r(...e)),i=new eh({onWillAddFirstListener:()=>e.on(t,n),onDidRemoveLastListener:()=>e.removeListener(t,n)});return i.event},e.fromDOMEventEmitter=function(e,t,r=e=>e){let n=(...e)=>i.fire(r(...e)),i=new eh({onWillAddFirstListener:()=>e.addEventListener(t,n),onDidRemoveLastListener:()=>e.removeEventListener(t,n)});return i.event},e.toPromise=function(e,r){let n,i,s=new Promise(s=>{em(i=t(e)(s),r),n=()=>{eg(i,r)}});return s.cancel=n,r&&s.finally(()=>eg(i,r)),s},e.forward=function(e,t){return e(e=>t.fire(e))},e.runAndSubscribe=function(e,t,r){return t(r),e(e=>t(e))};class l{constructor(e,t){this._observable=e,this._counter=0,this._hasChanged=!1,this.emitter=new eh({onWillAddFirstListener:()=>{e.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{e.removeObserver(this)}}),t&&t.add(this.emitter)}beginUpdate(e){this._counter++}handlePossibleChange(e){}handleChange(e,t){this._hasChanged=!0}endUpdate(e){this._counter--,0===this._counter&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}e.fromObservable=function(e,t){return new l(e,t).emitter.event},e.fromObservableLight=function(e){return(t,r,n)=>{let i=0,s=!1,o={beginUpdate(){i++},endUpdate(){0==--i&&(e.reportChanges(),s&&(s=!1,t.call(r)))},handlePossibleChange(){},handleChange(){s=!0}};e.addObserver(o),e.reportChanges();let a={dispose(){e.removeObserver(o)}};return em(a,n),a}}}(oa||(oa={}));class es{static{this.all=new Set}static{this._idPool=0}constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${es._idPool++}`,es.all.add(this)}start(e){this._stopWatch=new en,this.listenerCount=e}stop(){if(this._stopWatch){let e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}}class eo{static{this._idPool=1}constructor(e,t,r=(eo._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=t,this.name=r,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){let r=this.threshold;if(r<=0||t<r)return;this._stacks||(this._stacks=new Map);let n=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,n+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=.5*r;let[e,n]=this.getMostFrequentStack(),i=/^[0-9a-f]+$/i.test(this.name)?void 0:this.name,s=`[${this.name}] potential listener LEAK detected, having ${t} listeners already. MOST frequent listener (${n}):`;console.warn(s),console.warn(e);let o=new el(n/t>.3?"dominated":"popular",s,e,t,i);this._errorHandler(o)}return()=>{let t=this._stacks.get(e.value)||0;this._stacks.set(e.value,t-1)}}getMostFrequentStack(){let e;if(!this._stacks)return;let t=0;for(let[r,n]of this._stacks)(!e||t<n)&&(e=[r,n],t=n);return e}}class ea{static create(){return new ea(Error().stack??"")}constructor(e){this.value=e}print(){console.warn(this.value.split("\n").slice(2).join("\n"))}}class el extends Error{constructor(e,t,r,n,i){super(i?`[${i}] potential listener LEAK detected, ${e}`:`potential listener LEAK detected, ${e}`),this.name="ListenerLeakError",this.kind=e,this.listenerCount=n,this.details=t,this.stack=r}static is(e){return e instanceof el||e instanceof Error&&"string"==typeof e.kind&&"number"==typeof e.listenerCount}}class eu extends el{constructor(e,t,r,n,i){super(e,t,r,n,i),this.name="ListenerRefusalError"}}class ec{constructor(e){this.value=e}}class eh{constructor(e){this._size=0,this._options=e,this._leakageMon=this._options?.leakWarningThreshold?new eo(e?.onListenerError??b,this._options?.leakWarningThreshold??-1,this._options?.leakWarningName):void 0,this._perfMon=this._options?._profName?new es(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){this._disposed||(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose())}get event(){return this._event??=(e,t,r)=>{let n;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let e=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(e);let t=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],r=new eu(t[1]/this._size>.3?"dominated":"popular",`${e}. HINT: Stack shows most frequent listener (${t[1]}-times)`,t[0],this._size,this._options?.leakWarningName);return(this._options?.onListenerError||b)(r),R.None}if(this._disposed)return R.None;t&&(e=e.bind(t));let i=new ec(e);this._leakageMon&&this._size>=Math.ceil(.2*this._leakageMon.threshold)&&(i.stack=ea.create(),n=this._leakageMon.check(i.stack,this._size+1)),this._listeners?this._listeners instanceof ec?(this._deliveryQueue??=new ed,this._listeners=[this._listeners,i]):this._listeners.push(i):(this._options?.onWillAddFirstListener?.(this),this._listeners=i,this._options?.onDidAddFirstListener?.(this)),this._options?.onDidAddListener?.(this),this._size++;let s=A(()=>{n?.(),this._removeListener(i)});return em(s,r),s},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(1===this._size){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let t=this._listeners,r=t.indexOf(e);if(-1===r)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),Error("Attempted to dispose unknown listener");this._size--,t[r]=void 0;let n=this._deliveryQueue.current===this;if(2*this._size<=t.length){let e=0;for(let r=0;r<t.length;r++)t[r]?t[e++]=t[r]:n&&e<this._deliveryQueue.end&&(this._deliveryQueue.end--,e<this._deliveryQueue.i&&this._deliveryQueue.i--);t.length=e}}_deliver(e,t){if(!e)return;let r=this._options?.onListenerError||b;if(!r)return void e.value(t);try{e.value(t)}catch(e){r(e)}}_deliverQueue(e){let t=e.current._listeners;for(;e.i<e.end;)this._deliver(t[e.i++],e.value);e.reset()}fire(e){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof ec)this._deliver(this._listeners,e);else{let t=this._deliveryQueue;t.enqueue(this,e,this._listeners.length),this._deliverQueue(t)}this._perfMon?.stop()}hasListeners(){return this._size>0}}class ed{constructor(){this.i=-1,this.end=0}enqueue(e,t,r){this.i=0,this.end=r,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}function em(e,t){t instanceof k?t.add(e):Array.isArray(t)&&t.push(e)}function eg(e,t){if(t instanceof k)t.delete(e);else if(Array.isArray(t)){let r=t.indexOf(e);-1!==r&&t.splice(r,1)}e.dispose()}function ef(e){return e}class ep{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,"function"==typeof e?(this._fn=e,this._computeKey=ef):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){let t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}(n9=ol||(ol={}))[n9.Uninitialized=0]="Uninitialized",n9[n9.Running=1]="Running",n9[n9.Completed=2]="Completed";class eb{constructor(e){this.executor=e,this._state=ol.Uninitialized}get value(){if(this._state===ol.Uninitialized){this._state=ol.Running;try{this._value=this.executor()}catch(e){this._error=e}finally{this._state=ol.Completed}}else if(this._state===ol.Running)throw Error("Cannot read the value of a lazy that is being initialized");if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function ey(e){return e>=65&&e<=90}function ev(e,t){let r,n=Math.min(e.length,t.length);for(r=0;r<n;r++)if(e.charCodeAt(r)!==t.charCodeAt(r))return r;return n}function ew(e,t){let r,n=Math.min(e.length,t.length),i=e.length-1,s=t.length-1;for(r=0;r<n;r++)if(e.charCodeAt(i-r)!==t.charCodeAt(s-r))return r;return n}function eC(e){return 55296<=e&&e<=56319}function e_(e){return 56320<=e&&e<=57343}function eS(e,t){return(e-55296<<10)+(t-56320)+65536}let eL=/^[\t\n\r\x20-\x7E]*$/;String.fromCharCode(65279);class ex{static{this._INSTANCE=null}static getInstance(){return ex._INSTANCE||(ex._INSTANCE=new ex),ex._INSTANCE}constructor(){this._data=JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}getGraphemeBreakType(e){if(e<32)return 10===e?3:13===e?2:4;if(e<127)return 0;let t=this._data,r=t.length/3,n=1;for(;n<=r;)if(e<t[3*n])n*=2;else{if(!(e>t[3*n+1]))return t[3*n+2];n=2*n+1}return 0}}class eN{static{this.ambiguousCharacterData=new eb(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"cs":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"es":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"fr":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"it":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ja":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],"ko":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pt-BR":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ru":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"zh-hans":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],"zh-hant":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}'))}static{this.cache=new ep(e=>{let t,r=e.split(",");function n(e){let t=new Map;for(let r=0;r<e.length;r+=2)t.set(e[r],e[r+1]);return t}let i=this.ambiguousCharacterData.value,s=r.filter(e=>!e.startsWith("_")&&Object.hasOwn(i,e));for(let e of(0===s.length&&(s=["_default"]),s))t=function(e,t){if(!e)return t;let r=new Map;for(let[n,i]of e)t.has(n)&&r.set(n,i);return r}(t,n(i[e]));return new eN(function(e,t){let r=new Map(e);for(let[e,n]of t)r.set(e,n);return r}(n(i._common),t))})}static getInstance(e){return eN.cache.get(Array.from(e).join(","))}static{this._locales=new eb(()=>Object.keys(eN.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")))}static getLocales(){return eN._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}class eE{static getRawData(){return JSON.parse('{"_common":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],"cs":[173,8203,12288],"de":[173,8203,12288],"es":[8203,12288],"fr":[173,8203,12288],"it":[160,173,12288],"ja":[173],"ko":[173,12288],"pl":[173,8203,12288],"pt-BR":[173,8203,12288],"qps-ploc":[160,173,8203,12288],"ru":[173,12288],"tr":[160,173,8203,12288],"zh-hans":[160,173,8203,12288],"zh-hant":[173,12288]}')}static{this._data=void 0}static getData(){return this._data||(this._data=new Set([...Object.values(eE.getRawData())].flat())),this._data}static isInvisibleCharacter(e){return eE.getData().has(e)}static get codePoints(){return eE.getData()}}let eA="default";class ek{constructor(e,t,r,n,i){this.vsWorker=e,this.req=t,this.channel=r,this.method=n,this.args=i,this.type=0}}class eR{constructor(e,t,r,n){this.vsWorker=e,this.seq=t,this.res=r,this.err=n,this.type=1}}class eT{constructor(e,t,r,n,i){this.vsWorker=e,this.req=t,this.channel=r,this.eventName=n,this.arg=i,this.type=2}}class eM{constructor(e,t,r){this.vsWorker=e,this.req=t,this.event=r,this.type=3}}class eO{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class eI{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}async sendMessage(e,t,r){let n=String(++this._lastSentReq);return new Promise((i,s)=>{this._pendingReplies[n]={resolve:i,reject:s},this._send(new ek(this._workerId,n,e,t,r))})}listen(e,t,r){let n=null,i=new eh({onWillAddFirstListener:()=>{n=String(++this._lastSentReq),this._pendingEmitters.set(n,i),this._send(new eT(this._workerId,n,e,t,r))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(n),this._send(new eO(this._workerId,n)),n=null}});return i.event}handleMessage(e){e&&e.vsWorker&&(-1===this._workerId||e.vsWorker===this._workerId)&&this._handleMessage(e)}createProxyToRemoteChannel(e,t){return new Proxy(Object.create(null),{get:(r,n)=>("string"!=typeof n||r[n]||(eF(n)?r[n]=t=>this.listen(e,n,t):eP(n)?r[n]=this.listen(e,n,void 0):36===n.charCodeAt(0)&&(r[n]=async(...r)=>(await t?.(),this.sendMessage(e,n,r)))),r[n])})}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq])return void console.warn("Got reply to unknown seq");let t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let r=e.err;if(e.err.$isError){let t=Error();t.name=e.err.name,t.message=e.err.message,t.stack=e.err.stack,r=t}t.reject(r);return}t.resolve(e.res)}_handleRequestMessage(e){let t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(e=>{this._send(new eR(this._workerId,t,e,void 0))},e=>{e.detail instanceof Error&&(e.detail=y(e.detail)),this._send(new eR(this._workerId,t,void 0,y(e)))})}_handleSubscribeEventMessage(e){let t=e.req,r=this._handler.handleEvent(e.channel,e.eventName,e.arg)(e=>{this._send(new eM(this._workerId,t,e))});this._pendingEvents.set(t,r)}_handleEventMessage(e){let t=this._pendingEmitters.get(e.req);void 0===t?console.warn("Got event for unknown req"):t.fire(e.event)}_handleUnsubscribeEventMessage(e){let t=this._pendingEvents.get(e.req);void 0===t?console.warn("Got unsubscribe for unknown req"):(t.dispose(),this._pendingEvents.delete(e.req))}_send(e){let t=[];if(0===e.type)for(let r=0;r<e.args.length;r++){let n=e.args[r];n instanceof ArrayBuffer&&t.push(n)}else 1===e.type&&e.res instanceof ArrayBuffer&&t.push(e.res);this._handler.sendMessage(e,t)}}function eP(e){return"o"===e[0]&&"n"===e[1]&&ey(e.charCodeAt(2))}function eF(e){return/^onDynamic/.test(e)&&ey(e.charCodeAt(9))}class eV{constructor(e,t){this._localChannels=new Map,this._remoteChannels=new Map,this._protocol=new eI({sendMessage:(t,r)=>{e(t,r)},handleMessage:(e,t,r)=>this._handleMessage(e,t,r),handleEvent:(e,t,r)=>this._handleEvent(e,t,r)}),this.requestHandler=t(this)}onmessage(e){this._protocol.handleMessage(e)}_handleMessage(e,t,r){if(e===eA&&"$initialize"===t)return this.initialize(r[0]);let n=e===eA?this.requestHandler:this._localChannels.get(e);if(!n)return Promise.reject(Error(`Missing channel ${e} on worker thread`));let i=n[t];if("function"!=typeof i)return Promise.reject(Error(`Missing method ${t} on worker thread channel ${e}`));try{return Promise.resolve(i.apply(n,r))}catch(e){return Promise.reject(e)}}_handleEvent(e,t,r){let n=e===eA?this.requestHandler:this._localChannels.get(e);if(!n)throw Error(`Missing channel ${e} on worker thread`);if(eF(t)){let e=n[t];if("function"!=typeof e)throw Error(`Missing dynamic event ${t} on request handler.`);let i=e.call(n,r);if("function"!=typeof i)throw Error(`Missing dynamic event ${t} on request handler.`);return i}if(eP(t)){let e=n[t];if("function"!=typeof e)throw Error(`Missing event ${t} on request handler.`);return e}throw Error(`Malformed event name ${t}`)}getChannel(e){let t=this._remoteChannels.get(e);return void 0===t&&(t=this._protocol.createProxyToRemoteChannel(e),this._remoteChannels.set(e,t)),t}async initialize(e){this._protocol.setWorkerId(e)}}let eD=!1;class eq{constructor(e,t,r,n){this.originalStart=e,this.originalLength=t,this.modifiedStart=r,this.modifiedLength=n}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}let e$="u">typeof Buffer;new eb(()=>new Uint8Array(256));class eK{static wrap(e){return e$&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new eK(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return e$?this.buffer.toString():(t||(t=new TextDecoder(void 0,{ignoreBOM:!0})),t.decode(this.buffer))}}let eB="0123456789abcdef";function eU(e,t,r=32){let n=r-t;return(e<<t|(~((1<<n)-1)&e)>>>n)>>>0}function ej(e,t=32){return e instanceof ArrayBuffer?function({buffer:e}){let t="";for(let r=0;r<e.length;r++){let n=e[r];t+=eB[n>>>4],t+=eB[15&n]}return t}(eK.wrap(new Uint8Array(e))):(e>>>0).toString(16).padStart(t/4,"0")}class eW{static{this._bigBlock32=new DataView(new ArrayBuffer(320))}constructor(){this._h0=0x67452301,this._h1=0xefcdab89,this._h2=0x98badcfe,this._h3=0x10325476,this._h4=0xc3d2e1f0,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){let t,r,n=e.length;if(0===n)return;let i=this._buff,s=this._buffLen,o=this._leftoverHighSurrogate;for(0!==o?(t=o,r=-1,o=0):(t=e.charCodeAt(0),r=0);;){let a=t;if(eC(t))if(r+1<n){let n=e.charCodeAt(r+1);e_(n)?(r++,a=eS(t,n)):a=65533}else{o=t;break}else e_(t)&&(a=65533);if(s=this._push(i,s,a),++r<n)t=e.charCodeAt(r);else break}this._buffLen=s,this._leftoverHighSurrogate=o}_push(e,t,r){return r<128?e[t++]=r:(r<2048?e[t++]=192|(1984&r)>>>6:(r<65536?e[t++]=224|(61440&r)>>>12:(e[t++]=240|(1835008&r)>>>18,e[t++]=128|(258048&r)>>>12),e[t++]=128|(4032&r)>>>6),e[t++]=128|(63&r)>>>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()),ej(this._h0)+ej(this._h1)+ej(this._h2)+ej(this._h3)+ej(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));let e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/0x100000000),!1),this._buffDV.setUint32(60,e%0x100000000,!1),this._step()}_step(){let e,t,r,n=eW._bigBlock32,i=this._buffDV;for(let e=0;e<64;e+=4)n.setUint32(e,i.getUint32(e,!1),!1);for(let e=64;e<320;e+=4)n.setUint32(e,eU(n.getUint32(e-12,!1)^n.getUint32(e-32,!1)^n.getUint32(e-56,!1)^n.getUint32(e-64,!1),1),!1);let s=this._h0,o=this._h1,a=this._h2,l=this._h3,u=this._h4;for(let i=0;i<80;i++)i<20?(e=o&a|~o&l,t=0x5a827999):i<40?(e=o^a^l,t=0x6ed9eba1):i<60?(e=o&a|o&l|a&l,t=0x8f1bbcdc):(e=o^a^l,t=0xca62c1d6),r=eU(s,5)+e+u+t+n.getUint32(4*i,!1)|0,u=l,l=a,a=eU(o,30),o=s,s=r;this._h0=this._h0+s|0,this._h1=this._h1+o|0,this._h2=this._h2+a|0,this._h3=this._h3+l|0,this._h4=this._h4+u|0}}class ez{constructor(e){this.source=e}getElements(){let e=this.source,t=new Int32Array(e.length);for(let r=0,n=e.length;r<n;r++)t[r]=e.charCodeAt(r);return t}}class eH{static Assert(e,t){if(!e)throw Error(t)}}class eG{static Copy(e,t,r,n,i){for(let s=0;s<i;s++)r[n+s]=e[t+s]}static Copy2(e,t,r,n,i){for(let s=0;s<i;s++)r[n+s]=e[t+s]}}class eJ{constructor(){this.m_changes=[],this.m_originalStart=0x40000000,this.m_modifiedStart=0x40000000,this.m_originalCount=0,this.m_modifiedCount=0}MarkNextChange(){(this.m_originalCount>0||this.m_modifiedCount>0)&&this.m_changes.push(new eq(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=0x40000000,this.m_modifiedStart=0x40000000}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 eX{constructor(e,t,r=null){this.ContinueProcessingPredicate=r,this._originalSequence=e,this._modifiedSequence=t;let[n,i,s]=eX._getElements(e),[o,a,l]=eX._getElements(t);this._hasStrings=s&&l,this._originalStringElements=n,this._originalElementsOrHash=i,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){let t=e.getElements();if(eX._isStringArray(t)){let e=new Int32Array(t.length);for(let r=0,n=t.length;r<n;r++)e[r]=function(e,t){var r,n,i;t=((r=t)<<5)-r+149417|0;for(let r=0,s=e.length;r<s;r++)n=e.charCodeAt(r),t=((i=t)<<5)-i+n|0;return t}(t[r],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])}ElementsAreStrictEqual(e,t){return!!this.ElementsAreEqual(e,t)&&eX._getStrictElement(this._originalSequence,e)===eX._getStrictElement(this._modifiedSequence,t)}static _getStrictElement(e,t){return"function"==typeof e.getStrictElement?e.getStrictElement(t):null}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,r,n,i){let s=[!1],o=this.ComputeDiffRecursive(e,t,r,n,s);return i&&(o=this.PrettifyChanges(o)),{quitEarly:s[0],changes:o}}ComputeDiffRecursive(e,t,r,n,i){for(i[0]=!1;e<=t&&r<=n&&this.ElementsAreEqual(e,r);)e++,r++;for(;t>=e&&n>=r&&this.ElementsAreEqual(t,n);)t--,n--;if(e>t||r>n){let i;return r<=n?(eH.Assert(e===t+1,"originalStart should only be one more than originalEnd"),i=[new eq(e,0,r,n-r+1)]):e<=t?(eH.Assert(r===n+1,"modifiedStart should only be one more than modifiedEnd"),i=[new eq(e,t-e+1,r,0)]):(eH.Assert(e===t+1,"originalStart should only be one more than originalEnd"),eH.Assert(r===n+1,"modifiedStart should only be one more than modifiedEnd"),i=[]),i}let s=[0],o=[0],a=this.ComputeRecursionPoint(e,t,r,n,s,o,i),l=s[0],u=o[0];if(null!==a)return a;if(!i[0]){let s=this.ComputeDiffRecursive(e,l,r,u,i),o=[];return o=i[0]?[new eq(l+1,t-(l+1)+1,u+1,n-(u+1)+1)]:this.ComputeDiffRecursive(l+1,t,u+1,n,i),this.ConcatenateChanges(s,o)}return[new eq(e,t-e+1,r,n-r+1)]}WALKTRACE(e,t,r,n,i,s,o,a,l,u,c,h,d,m,g,f,p,b){let y=null,v=null,w=new eJ,C=t,_=r,S=d[0]-f[0]-n,L=-0x40000000,x=this.m_forwardHistory.length-1;do{let t=S+e;t===C||t<_&&l[t-1]<l[t+1]?(m=(c=l[t+1])-S-n,c<L&&w.MarkNextChange(),L=c,w.AddModifiedElement(c+1,m),S=t+1-e):(m=(c=l[t-1]+1)-S-n,c<L&&w.MarkNextChange(),L=c-1,w.AddOriginalElement(c,m+1),S=t-1-e),x>=0&&(e=(l=this.m_forwardHistory[x])[0],C=1,_=l.length-1)}while(--x>=-1)if(y=w.getReverseChanges(),b[0]){let e=d[0]+1,t=f[0]+1;if(null!==y&&y.length>0){let r=y[y.length-1];e=Math.max(e,r.getOriginalEnd()),t=Math.max(t,r.getModifiedEnd())}v=[new eq(e,h-e+1,t,g-t+1)]}else{w=new eJ,C=s,_=o,S=d[0]-f[0]-a,L=0x40000000,x=p?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{let e=S+i;e===C||e<_&&u[e-1]>=u[e+1]?(m=(c=u[e+1]-1)-S-a,c>L&&w.MarkNextChange(),L=c+1,w.AddOriginalElement(c+1,m+1),S=e+1-i):(m=(c=u[e-1])-S-a,c>L&&w.MarkNextChange(),L=c,w.AddModifiedElement(c+1,m+1),S=e-1-i),x>=0&&(i=(u=this.m_reverseHistory[x])[0],C=1,_=u.length-1)}while(--x>=-1)v=w.getChanges()}return this.ConcatenateChanges(y,v)}ComputeRecursionPoint(e,t,r,n,i,s,o){let a=0,l=0,u=0,c=0,h=0,d=0;e--,r--,i[0]=0,s[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];let m=t-e+(n-r),g=m+1,f=new Int32Array(g),p=new Int32Array(g),b=n-r,y=t-e,v=e-r,w=t-n,C=(y-b)%2==0;f[b]=e,p[y]=t,o[0]=!1;for(let _=1;_<=m/2+1;_++){let m=0,S=0;u=this.ClipDiagonalBound(b-_,_,b,g),c=this.ClipDiagonalBound(b+_,_,b,g);for(let e=u;e<=c;e+=2){l=(a=e===u||e<c&&f[e-1]<f[e+1]?f[e+1]:f[e-1]+1)-(e-b)-v;let r=a;for(;a<t&&l<n&&this.ElementsAreEqual(a+1,l+1);)a++,l++;if(f[e]=a,a+l>m+S&&(m=a,S=l),!C&&Math.abs(e-y)<=_-1&&a>=p[e]){if(i[0]=a,s[0]=l,r<=p[e]&&_<=1448)return this.WALKTRACE(b,u,c,v,y,h,d,w,f,p,a,t,i,l,n,s,C,o);return null}}let L=(m-e+(S-r)-_)/2;if(null!==this.ContinueProcessingPredicate&&!this.ContinueProcessingPredicate(m,L)){if(o[0]=!0,i[0]=m,s[0]=S,!(L>0)||!(_<=1448))return e++,r++,[new eq(e,t-e+1,r,n-r+1)];break}h=this.ClipDiagonalBound(y-_,_,y,g),d=this.ClipDiagonalBound(y+_,_,y,g);for(let m=h;m<=d;m+=2){l=(a=m===h||m<d&&p[m-1]>=p[m+1]?p[m+1]-1:p[m-1])-(m-y)-w;let g=a;for(;a>e&&l>r&&this.ElementsAreEqual(a,l);)a--,l--;if(p[m]=a,C&&Math.abs(m-b)<=_&&a<=f[m]){if(i[0]=a,s[0]=l,g>=f[m]&&_<=1448)return this.WALKTRACE(b,u,c,v,y,h,d,w,f,p,a,t,i,l,n,s,C,o);return null}}if(_<=1447){let e=new Int32Array(c-u+2);e[0]=b-u+1,eG.Copy2(f,u,e,1,c-u+1),this.m_forwardHistory.push(e),(e=new Int32Array(d-h+2))[0]=y-h+1,eG.Copy2(p,h,e,1,d-h+1),this.m_reverseHistory.push(e)}}return this.WALKTRACE(b,u,c,v,y,h,d,w,f,p,a,t,i,l,n,s,C,o)}PrettifyChanges(e){for(let t=0;t<e.length;t++){let r=e[t],n=t<e.length-1?e[t+1].originalStart:this._originalElementsOrHash.length,i=t<e.length-1?e[t+1].modifiedStart:this._modifiedElementsOrHash.length,s=r.originalLength>0,o=r.modifiedLength>0;for(;r.originalStart+r.originalLength<n&&r.modifiedStart+r.modifiedLength<i&&(!s||this.OriginalElementsAreEqual(r.originalStart,r.originalStart+r.originalLength))&&(!o||this.ModifiedElementsAreEqual(r.modifiedStart,r.modifiedStart+r.modifiedLength));){let e=this.ElementsAreStrictEqual(r.originalStart,r.modifiedStart);if(this.ElementsAreStrictEqual(r.originalStart+r.originalLength,r.modifiedStart+r.modifiedLength)&&!e)break;r.originalStart++,r.modifiedStart++}let a=[null];if(t<e.length-1&&this.ChangesOverlap(e[t],e[t+1],a)){e[t]=a[0],e.splice(t+1,1),t--;continue}}for(let t=e.length-1;t>=0;t--){let r=e[t],n=0,i=0;if(t>0){let r=e[t-1];n=r.originalStart+r.originalLength,i=r.modifiedStart+r.modifiedLength}let s=r.originalLength>0,o=r.modifiedLength>0,a=0,l=this._boundaryScore(r.originalStart,r.originalLength,r.modifiedStart,r.modifiedLength);for(let e=1;;e++){let t=r.originalStart-e,u=r.modifiedStart-e;if(t<n||u<i||s&&!this.OriginalElementsAreEqual(t,t+r.originalLength)||o&&!this.ModifiedElementsAreEqual(u,u+r.modifiedLength))break;let c=5*(t===n&&u===i)+this._boundaryScore(t,r.originalLength,u,r.modifiedLength);c>l&&(l=c,a=e)}r.originalStart-=a,r.modifiedStart-=a;let u=[null];if(t>0&&this.ChangesOverlap(e[t-1],e[t],u)){e[t-1]=u[0],e.splice(t,1),t++;continue}}if(this._hasStrings)for(let t=1,r=e.length;t<r;t++){let r=e[t-1],n=e[t],i=n.originalStart-r.originalStart-r.originalLength,s=r.originalStart,o=n.originalStart+n.originalLength,a=o-s,l=r.modifiedStart,u=n.modifiedStart+n.modifiedLength,c=u-l;if(i<5&&a<20&&c<20){let e=this._findBetterContiguousSequence(s,a,l,c,i);if(e){let[t,s]=e;(t!==r.originalStart+r.originalLength||s!==r.modifiedStart+r.modifiedLength)&&(r.originalLength=t-r.originalStart,r.modifiedLength=s-r.modifiedStart,n.originalStart=t+i,n.modifiedStart=s+i,n.originalLength=o-n.originalStart,n.modifiedLength=u-n.modifiedStart)}}}return e}_findBetterContiguousSequence(e,t,r,n,i){if(t<i||n<i)return null;let s=e+t-i+1,o=r+n-i+1,a=0,l=0,u=0;for(let t=e;t<s;t++)for(let e=r;e<o;e++){let r=this._contiguousSequenceScore(t,e,i);r>0&&r>a&&(a=r,l=t,u=e)}return a>0?[l,u]:null}_contiguousSequenceScore(e,t,r){let n=0;for(let i=0;i<r;i++){if(!this.ElementsAreEqual(e+i,t+i))return 0;n+=this._originalStringElements[e+i].length}return n}_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){let r=e+t;if(this._OriginalIsBoundary(r-1)||this._OriginalIsBoundary(r))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){let r=e+t;if(this._ModifiedIsBoundary(r-1)||this._ModifiedIsBoundary(r))return!0}return!1}_boundaryScore(e,t,r,n){return+!!this._OriginalRegionIsBoundary(e,t)+ +!!this._ModifiedRegionIsBoundary(r,n)}ConcatenateChanges(e,t){let r=[];if(0===e.length||0===t.length)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],r)){let n=Array(e.length+t.length-1);return eG.Copy(e,0,n,0,e.length-1),n[e.length-1]=r[0],eG.Copy(t,1,n,e.length,t.length-1),n}{let r=Array(e.length+t.length);return eG.Copy(e,0,r,0,e.length),eG.Copy(t,0,r,e.length,t.length),r}}ChangesOverlap(e,t,r){if(eH.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),eH.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))return r[0]=null,!1;{let n=e.originalStart,i=e.originalLength,s=e.modifiedStart,o=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(i=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(o=t.modifiedStart+t.modifiedLength-e.modifiedStart),r[0]=new eq(n,i,s,o),!0}}ClipDiagonalBound(e,t,r,n){if(e>=0&&e<n)return e;let i=t%2==0;return e<0?+(i!==(r%2==0)):i===((n-r-1)%2==0)?n-1:n-2}}class eQ{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 eQ(e,t)}delta(e=0,t=0){return this.with(Math.max(1,this.lineNumber+e),Math.max(1,this.column+t))}equals(e){return eQ.equals(this,e)}static equals(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return eQ.isBefore(this,e)}static isBefore(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<t.column}isBeforeOrEqual(e){return eQ.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 r=0|e.lineNumber,n=0|t.lineNumber;return r===n?(0|e.column)-(0|t.column):r-n}clone(){return new eQ(this.lineNumber,this.column)}toString(){return"("+this.lineNumber+","+this.column+")"}static lift(e){return new eQ(e.lineNumber,e.column)}static isIPosition(e){return!!e&&"number"==typeof e.lineNumber&&"number"==typeof e.column}toJSON(){return{lineNumber:this.lineNumber,column:this.column}}}class eZ{constructor(e,t,r,n){e>r||e===r&&t>n?(this.startLineNumber=r,this.startColumn=n,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=r,this.endColumn=n)}isEmpty(){return eZ.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return eZ.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumber<e.startLineNumber)&&!(t.lineNumber>e.endLineNumber)&&(t.lineNumber!==e.startLineNumber||!(t.column<e.startColumn))&&(t.lineNumber!==e.endLineNumber||!(t.column>e.endColumn))}static strictContainsPosition(e,t){return!(t.lineNumber<e.startLineNumber)&&!(t.lineNumber>e.endLineNumber)&&(t.lineNumber!==e.startLineNumber||!(t.column<=e.startColumn))&&(t.lineNumber!==e.endLineNumber||!(t.column>=e.endColumn))}containsRange(e){return eZ.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 eZ.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 eZ.plusRange(this,e)}static plusRange(e,t){let r,n,i,s;return t.startLineNumber<e.startLineNumber?(r=t.startLineNumber,n=t.startColumn):t.startLineNumber===e.startLineNumber?(r=t.startLineNumber,n=Math.min(t.startColumn,e.startColumn)):(r=e.startLineNumber,n=e.startColumn),t.endLineNumber>e.endLineNumber?(i=t.endLineNumber,s=t.endColumn):t.endLineNumber===e.endLineNumber?(i=t.endLineNumber,s=Math.max(t.endColumn,e.endColumn)):(i=e.endLineNumber,s=e.endColumn),new eZ(r,n,i,s)}intersectRanges(e){return eZ.intersectRanges(this,e)}static intersectRanges(e,t){let r=e.startLineNumber,n=e.startColumn,i=e.endLineNumber,s=e.endColumn,o=t.startLineNumber,a=t.startColumn,l=t.endLineNumber,u=t.endColumn;return(r<o?(r=o,n=a):r===o&&(n=Math.max(n,a)),i>l?(i=l,s=u):i===l&&(s=Math.min(s,u)),r>i||r===i&&n>s)?null:new eZ(r,n,i,s)}equalsRange(e){return eZ.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t||!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return eZ.getEndPosition(this)}static getEndPosition(e){return new eQ(e.endLineNumber,e.endColumn)}getStartPosition(){return eZ.getStartPosition(this)}static getStartPosition(e){return new eQ(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new eZ(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new eZ(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return eZ.collapseToStart(this)}static collapseToStart(e){return new eZ(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return eZ.collapseToEnd(this)}static collapseToEnd(e){return new eZ(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new eZ(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}isSingleLine(){return this.startLineNumber===this.endLineNumber}static fromPositions(e,t=e){return new eZ(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new eZ(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 areOnlyIntersecting(e,t){return!(e.endLineNumber<t.startLineNumber-1)&&(e.endLineNumber!==t.startLineNumber||!(e.endColumn<t.startColumn-1))&&!(t.endLineNumber<e.startLineNumber-1)&&(t.endLineNumber!==e.startLineNumber||!(t.endColumn<e.startColumn-1))}static compareRangesUsingStarts(e,t){if(e&&t){let r=0|e.startLineNumber,n=0|t.startLineNumber;if(r===n){let r=0|e.startColumn,n=0|t.startColumn;if(r===n){let r=0|e.endLineNumber,n=0|t.endLineNumber;return r===n?(0|e.endColumn)-(0|t.endColumn):r-n}return r-n}return r-n}return!!e-!!t}static compareRangesUsingEnds(e,t){if(e.endLineNumber===t.endLineNumber)return e.endColumn===t.endColumn?e.startLineNumber===t.startLineNumber?e.startColumn-t.startColumn:e.startLineNumber-t.startLineNumber:e.endColumn-t.endColumn;return e.endLineNumber-t.endLineNumber}static spansMultipleLines(e){return e.endLineNumber>e.startLineNumber}toJSON(){return this}}function eY(e){return e<0?0:e>255?255:0|e}function e1(e){return e<0?0:e>0xffffffff?0xffffffff:0|e}class e0{constructor(e){let t=eY(e);this._defaultValue=t,this._asciiMap=e0._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){let t=new Uint8Array(256);return t.fill(e),t}set(e,t){let r=eY(t);e>=0&&e<256?this._asciiMap[e]=r:this._map.set(e,r)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class e2{constructor(e,t,r){let n=new Uint8Array(e*t);for(let i=0,s=e*t;i<s;i++)n[i]=r;this._data=n,this.rows=e,this.cols=t}get(e,t){return this._data[e*this.cols+t]}set(e,t,r){this._data[e*this.cols+t]=r}}class e4{constructor(e){let t=0,r=0;for(let n=0,i=e.length;n<i;n++){let[i,s,o]=e[n];s>t&&(t=s),i>r&&(r=i),o>r&&(r=o)}t++;let n=new e2(++r,t,0);for(let t=0,r=e.length;t<r;t++){let[r,i,s]=e[t];n.set(r,i,s)}this._states=n,this._maxCharCode=t}nextState(e,t){return t<0||t>=this._maxCharCode?0:this._states.get(e,t)}}let e5=null;function e7(){return null===e5&&(e5=new e4([[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]])),e5}let e9=null;class e6{static _createLink(e,t,r,n,i){let s=i-1;do{let r=t.charCodeAt(s);if(2!==e.get(r))break;s--}while(s>n)if(n>0){let e=t.charCodeAt(n-1),r=t.charCodeAt(s);(40===e&&41===r||91===e&&93===r||123===e&&125===r)&&s--}return{range:{startLineNumber:r,startColumn:n+1,endLineNumber:r,endColumn:s+2},url:t.substring(n,s+1)}}static computeLinks(e,t=e7()){let r=function(){if(null===e9){e9=new e0(0);let e=" <>'\"\u3001\u3002\uFF61\uFF64\uFF0C\uFF0E\uFF1A\uFF1B\u2018\u3008\u300C\u300E\u3014\uFF08\uFF3B\uFF5B\uFF62\uFF63\uFF5D\uFF3D\uFF09\u3015\u300F\u300D\u3009\u2019\uFF40\uFF5E\u2026|";for(let t=0;t<e.length;t++)e9.set(e.charCodeAt(t),1);let t=".,;:";for(let e=0;e<t.length;e++)e9.set(t.charCodeAt(e),2)}return e9}(),n=[];for(let i=1,s=e.getLineCount();i<=s;i++){let s=e.getLineContent(i),o=s.length,a=0,l=0,u=0,c=1,h=!1,d=!1,m=!1,g=!1;for(;a<o;){let e=!1,o=s.charCodeAt(a);if(13===c){let t;switch(o){case 40:h=!0,t=0;break;case 41:t=+!h;break;case 91:m=!0,d=!0,t=0;break;case 93:m=!1,t=+!d;break;case 123:g=!0,t=0;break;case 125:t=+!g;break;case 39:case 34:case 96:t=u===o?1:+(39!==u&&34!==u&&96!==u);break;case 42:t=+(42===u);break;case 32:t=+!m;break;default:t=r.get(o)}1===t&&(n.push(e6._createLink(r,s,i,l,a)),e=!0)}else if(12===c){let t;91===o?(d=!0,t=0):t=r.get(o),1===t?e=!0:c=13}else 0===(c=t.nextState(c,o))&&(e=!0);e&&(c=1,h=!1,d=!1,g=!1,l=a+1,u=o),a++}13===c&&n.push(e6._createLink(r,s,i,l,o))}return n}}class e8{constructor(){this._defaultValueSet=[["true","false"],["True","False"],["Private","Public","Friend","ReadOnly","Partial","Protected","WriteOnly"],["public","protected","private"]]}static{this.INSTANCE=new e8}navigateValueSet(e,t,r,n,i){if(e&&t){let r=this.doNavigateValueSet(t,i);if(r)return{range:e,value:r}}if(r&&n){let e=this.doNavigateValueSet(n,i);if(e)return{range:r,value:e}}return null}doNavigateValueSet(e,t){let r=this.numberReplace(e,t);return null!==r?r:this.textReplace(e,t)}numberReplace(e,t){let r=Math.pow(10,e.length-(e.lastIndexOf(".")+1)),n=Number(e),i=parseFloat(e);if(!isNaN(n)&&!isNaN(i)&&n===i&&(0!==n||t))return String((n=Math.floor(n*r)+(t?r:-r))/r);return null}textReplace(e,t){return this.valueSetsReplace(this._defaultValueSet,e,t)}valueSetsReplace(e,t,r){let n=null;for(let i=0,s=e.length;null===n&&i<s;i++)n=this.valueSetReplace(e[i],t,r);return n}valueSetReplace(e,t,r){let n=e.indexOf(t);return n>=0?((n+=r?1:-1)<0?n=e.length-1:n%=e.length,e[n]):null}}let e3=Object.freeze(function(e,t){let r=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(r)}}});(n6=ou||(ou={})).isCancellationToken=function(e){return e===n6.None||e===n6.Cancelled||e instanceof te||!!e&&"object"==typeof e&&"boolean"==typeof e.isCancellationRequested&&"function"==typeof e.onCancellationRequested},n6.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:oa.None}),n6.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:e3});class te{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?e3:(this._emitter||(this._emitter=new eh),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class tt{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}}let tr=new tt,tn=new tt,ti=new tt,ts=Array(230),to=Object.create(null),ta=Object.create(null),tl=[];for(let e=0;e<=193;e++)tl[e]=-1;let tu=[],tc=[];for(let e of[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Del",46,"VK_DELETE","Delete",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]]){let[t,r,n,i,s,o,a,l,u]=e;if(!tc[r]&&(tc[r]=!0,to[n]=r,ta[n.toLowerCase()]=r,t&&(tl[r]=i)),!tu[i]){if(tu[i]=!0,!s)throw Error(`String representation missing for key code ${i} around scan code ${n}`);tr.define(i,s),tn.define(i,l||s),ti.define(i,u||l||s)}o&&(ts[o]=i)}(n8=oc||(oc={})).toString=function(e){return tr.keyCodeToStr(e)},n8.fromString=function(e){return tr.strToKeyCode(e)},n8.toUserSettingsUS=function(e){return tn.keyCodeToStr(e)},n8.toUserSettingsGeneral=function(e){return ti.keyCodeToStr(e)},n8.fromUserSettings=function(e){return tn.strToKeyCode(e)||ti.strToKeyCode(e)},n8.toElectronAccelerator=function(e){if(e>=98&&e<=113)return null;switch(e){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right";case 20:return"Delete"}return tr.keyCodeToStr(e)};class th extends Error{constructor(e,t,r){let n;"string"==typeof t&&0===t.indexOf("not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";let i=-1!==e.indexOf(".")?"property":"argument",s=`The "${e}" ${i} ${n} of type ${t}`;super(s+=`. Received type ${typeof r}`),this.code="ERR_INVALID_ARG_TYPE"}}function td(e,t){if("string"!=typeof e)throw new th(t,"string",e)}let tm="win32"===et;function tg(e){return 47===e||92===e}function tf(e){return 47===e}function tp(e){return e>=65&&e<=90||e>=97&&e<=122}function tb(e,t,r,n){let i="",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(n(l))break;else l=47;if(n(l)){if(o===u-1||1===a);else if(2===a){if(i.length<2||2!==s||46!==i.charCodeAt(i.length-1)||46!==i.charCodeAt(i.length-2)){if(i.length>2){let e=i.lastIndexOf(r);-1===e?(i="",s=0):s=(i=i.slice(0,e)).length-1-i.lastIndexOf(r),o=u,a=0;continue}else if(0!==i.length){i="",s=0,o=u,a=0;continue}}t&&(i+=i.length>0?`${r}..`:"..",s=2)}else i.length>0?i+=`${r}${e.slice(o+1,u)}`:i=e.slice(o+1,u),s=u-o-1;o=u,a=0}else 46===l&&-1!==a?++a:a=-1}return i}function ty(e,t){var r;if(null===t||"object"!=typeof t)throw new th("pathObject","Object",t);let n=t.dir||t.root,i=t.base||`${t.name||""}${(r=t.ext)?`${"."===r[0]?"":"."}${r}`:""}`;return n?n===t.root?`${n}${i}`:`${n}${e}${i}`:i}let tv={resolve(...e){let t="",r="",n=!1;for(let i=e.length-1;i>=-1;i--){let s;if(i>=0){if(td(s=e[i],`paths[${i}]`),0===s.length)continue}else 0===t.length?s=Y():(void 0===(s=ee[`=${t}`]||Y())||s.slice(0,2).toLowerCase()!==t.toLowerCase()&&92===s.charCodeAt(2))&&(s=`${t}\\`);let o=s.length,a=0,l="",u=!1,c=s.charCodeAt(0);if(1===o)tg(c)&&(a=1,u=!0);else if(tg(c))if(u=!0,tg(s.charCodeAt(1))){let e=2,t=2;for(;e<o&&!tg(s.charCodeAt(e));)e++;if(e<o&&e!==t){let r=s.slice(t,e);for(t=e;e<o&&tg(s.charCodeAt(e));)e++;if(e<o&&e!==t){for(t=e;e<o&&!tg(s.charCodeAt(e));)e++;(e===o||e!==t)&&(l=`\\\\${r}\\${s.slice(t,e)}`,a=e)}}}else a=1;else tp(c)&&58===s.charCodeAt(1)&&(l=s.slice(0,2),a=2,o>2&&tg(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(n){if(t.length>0)break}else if(r=`${s.slice(a)}\\${r}`,n=u,u&&t.length>0)break}return r=tb(r,!n,"\\",tg),n?`${t}\\${r}`:`${t}${r}`||"."},normalize(e){let t;td(e,"path");let r=e.length;if(0===r)return".";let n=0,i=!1,s=e.charCodeAt(0);if(1===r)return tf(s)?"\\":e;if(tg(s))if(i=!0,tg(e.charCodeAt(1))){let i=2,s=2;for(;i<r&&!tg(e.charCodeAt(i));)i++;if(i<r&&i!==s){let o=e.slice(s,i);for(s=i;i<r&&tg(e.charCodeAt(i));)i++;if(i<r&&i!==s){for(s=i;i<r&&!tg(e.charCodeAt(i));)i++;if(i===r)return`\\\\${o}\\${e.slice(s)}\\`;i!==s&&(t=`\\\\${o}\\${e.slice(s,i)}`,n=i)}}}else n=1;else tp(s)&&58===e.charCodeAt(1)&&(t=e.slice(0,2),n=2,r>2&&tg(e.charCodeAt(2))&&(i=!0,n=3));let o=n<r?tb(e.slice(n),!i,"\\",tg):"";if(0!==o.length||i||(o="."),o.length>0&&tg(e.charCodeAt(r-1))&&(o+="\\"),!i&&void 0===t&&e.includes(":")){if(o.length>=2&&tp(o.charCodeAt(0))&&58===o.charCodeAt(1))return`.\\${o}`;let t=e.indexOf(":");do if(t===r-1||tg(e.charCodeAt(t+1)))return`.\\${o}`;while(-1!==(t=e.indexOf(":",t+1)))}return void 0===t?i?`\\${o}`:o:i?`${t}\\${o}`:`${t}${o}`},isAbsolute(e){td(e,"path");let t=e.length;if(0===t)return!1;let r=e.charCodeAt(0);return tg(r)||t>2&&tp(r)&&58===e.charCodeAt(1)&&tg(e.charCodeAt(2))},join(...e){let t,r;if(0===e.length)return".";for(let n=0;n<e.length;++n){let i=e[n];td(i,"path"),i.length>0&&(void 0===t?t=r=i:t+=`\\${i}`)}if(void 0===t)return".";let n=!0,i=0;if("string"==typeof r&&tg(r.charCodeAt(0))){++i;let e=r.length;e>1&&tg(r.charCodeAt(1))&&(++i,e>2&&(tg(r.charCodeAt(2))?++i:n=!1))}if(n){for(;i<t.length&&tg(t.charCodeAt(i));)i++;i>=2&&(t=`\\${t.slice(i)}`)}return tv.normalize(t)},relative(e,t){if(td(e,"from"),td(t,"to"),e===t)return"";let r=tv.resolve(e),n=tv.resolve(t);if(r===n||(e=r.toLowerCase(),t=n.toLowerCase(),e===t))return"";if(r.length!==e.length||n.length!==t.length){let e,t=r.split("\\"),i=n.split("\\");""===t[t.length-1]&&t.pop(),""===i[i.length-1]&&i.pop();let s=t.length,o=i.length,a=s<o?s:o;for(e=0;e<a&&t[e].toLowerCase()===i[e].toLowerCase();e++);return 0===e?n:e===a?o>a?i.slice(e).join("\\"):s>a?"..\\".repeat(s-1-e)+"..":"":"..\\".repeat(s-e)+i.slice(e).join("\\")}let i=0;for(;i<e.length&&92===e.charCodeAt(i);)i++;let s=e.length;for(;s-1>i&&92===e.charCodeAt(s-1);)s--;let o=s-i,a=0;for(;a<t.length&&92===t.charCodeAt(a);)a++;let l=t.length;for(;l-1>a&&92===t.charCodeAt(l-1);)l--;let u=l-a,c=o<u?o:u,h=-1,d=0;for(;d<c;d++){let r=e.charCodeAt(i+d);if(r!==t.charCodeAt(a+d))break;92===r&&(h=d)}if(d!==c){if(-1===h)return n}else{if(u>c){if(92===t.charCodeAt(a+d))return n.slice(a+d+1);if(2===d)return n.slice(a+d)}o>c&&(92===e.charCodeAt(i+d)?h=d:2===d&&(h=3)),-1===h&&(h=0)}let m="";for(d=i+h+1;d<=s;++d)(d===s||92===e.charCodeAt(d))&&(m+=0===m.length?"..":"\\..");return(a+=h,m.length>0)?`${m}${n.slice(a,l)}`:(92===n.charCodeAt(a)&&++a,n.slice(a,l))},toNamespacedPath(e){if("string"!=typeof e||0===e.length)return e;let t=tv.resolve(e);if(t.length<=2)return e;if(92===t.charCodeAt(0)){if(92===t.charCodeAt(1)){let e=t.charCodeAt(2);if(63!==e&&46!==e)return`\\\\?\\UNC\\${t.slice(2)}`}}else if(tp(t.charCodeAt(0))&&58===t.charCodeAt(1)&&92===t.charCodeAt(2))return`\\\\?\\${t}`;return t},dirname(e){td(e,"path");let t=e.length;if(0===t)return".";let r=-1,n=0,i=e.charCodeAt(0);if(1===t)return tg(i)?e:".";if(tg(i)){if(r=n=1,tg(e.charCodeAt(1))){let i=2,s=2;for(;i<t&&!tg(e.charCodeAt(i));)i++;if(i<t&&i!==s){for(s=i;i<t&&tg(e.charCodeAt(i));)i++;if(i<t&&i!==s){for(s=i;i<t&&!tg(e.charCodeAt(i));)i++;if(i===t)return e;i!==s&&(r=n=i+1)}}}}else tp(i)&&58===e.charCodeAt(1)&&(n=r=t>2&&tg(e.charCodeAt(2))?3:2);let s=-1,o=!0;for(let r=t-1;r>=n;--r)if(tg(e.charCodeAt(r))){if(!o){s=r;break}}else o=!1;if(-1===s){if(-1===r)return".";s=r}return e.slice(0,s)},basename(e,t){let r;void 0!==t&&td(t,"suffix"),td(e,"path");let n=0,i=-1,s=!0;if(e.length>=2&&tp(e.charCodeAt(0))&&58===e.charCodeAt(1)&&(n=2),void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let o=t.length-1,a=-1;for(r=e.length-1;r>=n;--r){let l=e.charCodeAt(r);if(tg(l)){if(!s){n=r+1;break}}else -1===a&&(s=!1,a=r+1),o>=0&&(l===t.charCodeAt(o)?-1==--o&&(i=r):(o=-1,i=a))}return n===i?i=a:-1===i&&(i=e.length),e.slice(n,i)}for(r=e.length-1;r>=n;--r)if(tg(e.charCodeAt(r))){if(!s){n=r+1;break}}else -1===i&&(s=!1,i=r+1);return -1===i?"":e.slice(n,i)},extname(e){td(e,"path");let t=0,r=-1,n=0,i=-1,s=!0,o=0;e.length>=2&&58===e.charCodeAt(1)&&tp(e.charCodeAt(0))&&(t=n=2);for(let a=e.length-1;a>=t;--a){let t=e.charCodeAt(a);if(tg(t)){if(!s){n=a+1;break}continue}-1===i&&(s=!1,i=a+1),46===t?-1===r?r=a:1!==o&&(o=1):-1!==r&&(o=-1)}return -1===r||-1===i||0===o||1===o&&r===i-1&&r===n+1?"":e.slice(r,i)},format:ty.bind(null,"\\"),parse(e){td(e,"path");let t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;let r=e.length,n=0,i=e.charCodeAt(0);if(1===r)return tg(i)?t.root=t.dir=e:t.base=t.name=e,t;if(tg(i)){if(n=1,tg(e.charCodeAt(1))){let t=2,i=2;for(;t<r&&!tg(e.charCodeAt(t));)t++;if(t<r&&t!==i){for(i=t;t<r&&tg(e.charCodeAt(t));)t++;if(t<r&&t!==i){for(i=t;t<r&&!tg(e.charCodeAt(t));)t++;t===r?n=t:t!==i&&(n=t+1)}}}}else if(tp(i)&&58===e.charCodeAt(1)){if(r<=2)return t.root=t.dir=e,t;if(n=2,tg(e.charCodeAt(2))){if(3===r)return t.root=t.dir=e,t;n=3}}n>0&&(t.root=e.slice(0,n));let s=-1,o=n,a=-1,l=!0,u=e.length-1,c=0;for(;u>=n;--u){if(tg(i=e.charCodeAt(u))){if(!l){o=u+1;break}continue}-1===a&&(l=!1,a=u+1),46===i?-1===s?s=u:1!==c&&(c=1):-1!==s&&(c=-1)}return -1!==a&&(-1===s||0===c||1===c&&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))),o>0&&o!==n?t.dir=e.slice(0,o-1):t.dir=t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},tw=(()=>{if(tm){let e=/\\/g;return()=>{let t=Y().replace(e,"/");return t.slice(t.indexOf("/"))}}return()=>Y()})(),tC={resolve(...e){let t="",r=!1;for(let n=e.length-1;n>=0&&!r;n--){let i=e[n];td(i,`paths[${n}]`),0!==i.length&&(t=`${i}/${t}`,r=47===i.charCodeAt(0))}if(!r){let e=tw();t=`${e}/${t}`,r=47===e.charCodeAt(0)}return(t=tb(t,!r,"/",tf),r)?`/${t}`:t.length>0?t:"."},normalize(e){if(td(e,"path"),0===e.length)return".";let t=47===e.charCodeAt(0),r=47===e.charCodeAt(e.length-1);return 0===(e=tb(e,!t,"/",tf)).length?t?"/":r?"./":".":(r&&(e+="/"),t?`/${e}`:e)},isAbsolute:e=>(td(e,"path"),e.length>0&&47===e.charCodeAt(0)),join(...e){if(0===e.length)return".";let t=[];for(let r=0;r<e.length;++r){let n=e[r];td(n,"path"),n.length>0&&t.push(n)}return 0===t.length?".":tC.normalize(t.join("/"))},relative(e,t){if(td(e,"from"),td(t,"to"),e===t||(e=tC.resolve(e),t=tC.resolve(t),e===t))return"";let r=e.length,n=r-1,i=t.length-1,s=n<i?n:i,o=-1,a=0;for(;a<s;a++){let r=e.charCodeAt(1+a);if(r!==t.charCodeAt(1+a))break;47===r&&(o=a)}if(a===s)if(i>s){if(47===t.charCodeAt(1+a))return t.slice(1+a+1);if(0===a)return t.slice(1+a)}else n>s&&(47===e.charCodeAt(1+a)?o=a:0===a&&(o=0));let l="";for(a=1+o+1;a<=r;++a)(a===r||47===e.charCodeAt(a))&&(l+=0===l.length?"..":"/..");return`${l}${t.slice(1+o)}`},toNamespacedPath:e=>e,dirname(e){if(td(e,"path"),0===e.length)return".";let t=47===e.charCodeAt(0),r=-1,n=!0;for(let t=e.length-1;t>=1;--t)if(47===e.charCodeAt(t)){if(!n){r=t;break}}else n=!1;return -1===r?t?"/":".":t&&1===r?"//":e.slice(0,r)},basename(e,t){let r;void 0!==t&&td(t,"suffix"),td(e,"path");let n=0,i=-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(r=e.length-1;r>=0;--r){let l=e.charCodeAt(r);if(47===l){if(!s){n=r+1;break}}else -1===a&&(s=!1,a=r+1),o>=0&&(l===t.charCodeAt(o)?-1==--o&&(i=r):(o=-1,i=a))}return n===i?i=a:-1===i&&(i=e.length),e.slice(n,i)}for(r=e.length-1;r>=0;--r)if(47===e.charCodeAt(r)){if(!s){n=r+1;break}}else -1===i&&(s=!1,i=r+1);return -1===i?"":e.slice(n,i)},extname(e){td(e,"path");let t=-1,r=0,n=-1,i=!0,s=0;for(let o=e.length-1;o>=0;--o){let a=e[o];if("/"===a){if(!i){r=o+1;break}continue}-1===n&&(i=!1,n=o+1),"."===a?-1===t?t=o:1!==s&&(s=1):-1!==t&&(s=-1)}return -1===t||-1===n||0===s||1===s&&t===n-1&&t===r+1?"":e.slice(t,n)},format:ty.bind(null,"/"),parse(e){let t;td(e,"path");let r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;let n=47===e.charCodeAt(0);n?(r.root="/",t=1):t=0;let i=-1,s=0,o=-1,a=!0,l=e.length-1,u=0;for(;l>=t;--l){let t=e.charCodeAt(l);if(47===t){if(!a){s=l+1;break}continue}-1===o&&(a=!1,o=l+1),46===t?-1===i?i=l:1!==u&&(u=1):-1!==i&&(u=-1)}if(-1!==o){let t=0===s&&n?1:s;-1===i||0===u||1===u&&i===o-1&&i===s+1?r.base=r.name=e.slice(t,o):(r.name=e.slice(t,i),r.base=e.slice(t,o),r.ext=e.slice(i,o))}return s>0?r.dir=e.slice(0,s-1):n&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};tC.win32=tv.win32=tv,tC.posix=tv.posix=tC,tm?tv.normalize:tC.normalize;let t_=tm?tv.join:tC.join;tm?tv.resolve:tC.resolve,tm?tv.relative:tC.relative,tm?tv.dirname:tC.dirname,tm?tv.basename:tC.basename,tm?tv.extname:tC.extname,tm?tv.sep:tC.sep;let tS=/^\w[\w\d+.-]*$/,tL=/^\//,tx=/^\/\//,tN=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class tE{static isUri(e){return e instanceof tE||!!e&&"object"==typeof e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}constructor(e,t,r,n,i,s=!1){if("object"==typeof e)this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||"";else{if(this.scheme=e||s?e:"file",this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?"/"!==t[0]&&(t="/"+t):t="/"}return t}(this.scheme,r||""),this.query=n||"",this.fragment=i||"",!this.scheme&&s)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${this.authority}", path: "${this.path}", query: "${this.query}", fragment: "${this.fragment}"}`);if(this.scheme&&!tS.test(this.scheme)){let e=[...this.scheme.matchAll(/[^\w\d+.-]/gu)],t=e.length>0?` Found '${e[0][0]}' at index ${e[0].index} (${e.length} total)`:"";throw Error(`[UriError]: Scheme contains illegal characters.${t} (len:${this.scheme.length})`)}if(this.path){if(this.authority){if(!tL.test(this.path))throw 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(tx.test(this.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}}get fsPath(){return tO(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:r,path:n,query:i,fragment:s}=e;return(void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===s?s=this.fragment:null===s&&(s=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&s===this.fragment)?this:new tk(t,r,n,i,s)}static parse(e,t=!1){let r=tN.exec(e);return r?new tk(r[2]||"",tF(r[4]||""),tF(r[5]||""),tF(r[7]||""),tF(r[9]||""),t):new tk("","","","","")}static file(e){let t="";if(U&&(e=e.replace(/\\/g,"/")),"/"===e[0]&&"/"===e[1]){let r=e.indexOf("/",2);-1===r?(t=e.substring(2),e="/"):(t=e.substring(2,r),e=e.substring(r)||"/")}return new tk("file",t,e,"","")}static from(e,t){return new tk(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){let r;if(!e.path)throw Error(`[UriError]: cannot call joinPath on URI without path: ${e.toString()}`);return r=U&&"file"===e.scheme?tE.file(tv.join(tO(e,!0),...t)).path:tC.join(e.path,...t),e.with({path:r})}toString(e=!1){return tI(this,e)}toJSON(){return this}static revive(e){if(!e)return e;{if(e instanceof tE)return e;let t=new tk(e);return t._formatted=e.external??null,t._fsPath=e._sep===tA?e.fsPath??null:null,t}}}let tA=U?1:void 0;class tk extends tE{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=tO(this,!1)),this._fsPath}toString(e=!1){return e?tI(this,!0):(this._formatted||(this._formatted=tI(this,!1)),this._formatted)}toJSON(){let e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=tA),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}}let tR={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 tT(e,t,r){let n,i=-1;for(let s=0;s<e.length;s++){let o=e.charCodeAt(s);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o||r&&91===o||r&&93===o||r&&58===o)-1!==i&&(n+=encodeURIComponent(e.substring(i,s)),i=-1),void 0!==n&&(n+=e.charAt(s));else{void 0===n&&(n=e.substr(0,s));let t=tR[o];void 0!==t?(-1!==i&&(n+=encodeURIComponent(e.substring(i,s)),i=-1),n+=t):-1===i&&(i=s)}}return -1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function tM(e){let t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=tR[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function tO(e,t){let r;return r=e.authority&&e.path.length>1&&"file"===e.scheme?`//${e.authority}${e.path}`:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&90>=e.path.charCodeAt(1)||e.path.charCodeAt(1)>=97&&122>=e.path.charCodeAt(1))&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,U&&(r=r.replace(/\//g,"\\")),r}function tI(e,t){let r=t?tM:tT,n="",{scheme:i,authority:s,path:o,query:a,fragment:l}=e;if(i&&(n+=i,n+=":"),(s||"file"===i)&&(n+="/",n+="/"),s){let e=s.indexOf("@");if(-1!==e){let t=s.substr(0,e);s=s.substr(e+1),-1===(e=t.lastIndexOf(":"))?n+=r(t,!1,!1):(n+=r(t.substr(0,e),!1,!1),n+=":",n+=r(t.substr(e+1),!1,!0)),n+="@"}-1===(e=(s=s.toLowerCase()).lastIndexOf(":"))?n+=r(s,!1,!0):(n+=r(s.substr(0,e),!1,!0),n+=s.substr(e))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2)){let 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)){let e=o.charCodeAt(0);e>=65&&e<=90&&(o=`${String.fromCharCode(e+32)}:${o.substr(2)}`)}n+=r(o,!0,!1)}return a&&(n+="?",n+=r(a,!1,!1)),l&&(n+="#",n+=t?l:tT(l,!1,!1)),n}let tP=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function tF(e){return e.match(tP)?e.replace(tP,e=>(function e(t){try{return decodeURIComponent(t)}catch{if(t.length>3)return t.substr(0,3)+e(t.substr(3));return t}})(e)):e}class tV extends eZ{constructor(e,t,r,n){super(e,t,r,n),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=r,this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return tV.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)}setEndPosition(e,t){return 0===this.getDirection()?new tV(this.startLineNumber,this.startColumn,e,t):new tV(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new eQ(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new eQ(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return 0===this.getDirection()?new tV(e,t,this.endLineNumber,this.endColumn):new tV(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new tV(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return 0===t?new tV(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new tV(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new tV(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 r=0,n=e.length;r<n;r++)if(!this.selectionsEqual(e[r],t[r]))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,r,n,i){return 0===i?new tV(e,t,r,n):new tV(r,n,e,t)}}let tD=Object.create(null);function tq(e,t){if("string"==typeof t){let r=tD[t];if(void 0===r)throw Error(`${e} references an unknown codicon: ${t}`);t=r}return tD[e]=t,{id:e}}let t$={add:tq("add",6e4),plus:tq("plus",6e4),gistNew:tq("gist-new",6e4),repoCreate:tq("repo-create",6e4),lightbulb:tq("lightbulb",60001),lightBulb:tq("light-bulb",60001),repo:tq("repo",60002),repoDelete:tq("repo-delete",60002),gistFork:tq("gist-fork",60003),repoForked:tq("repo-forked",60003),gitPullRequest:tq("git-pull-request",60004),gitPullRequestAbandoned:tq("git-pull-request-abandoned",60004),recordKeys:tq("record-keys",60005),keyboard:tq("keyboard",60005),tag:tq("tag",60006),gitPullRequestLabel:tq("git-pull-request-label",60006),tagAdd:tq("tag-add",60006),tagRemove:tq("tag-remove",60006),person:tq("person",60007),personFollow:tq("person-follow",60007),personOutline:tq("person-outline",60007),personFilled:tq("person-filled",60007),sourceControl:tq("source-control",60008),mirror:tq("mirror",60009),mirrorPublic:tq("mirror-public",60009),star:tq("star",60010),starAdd:tq("star-add",60010),starDelete:tq("star-delete",60010),starEmpty:tq("star-empty",60010),comment:tq("comment",60011),commentAdd:tq("comment-add",60011),alert:tq("alert",60012),warning:tq("warning",60012),search:tq("search",60013),searchSave:tq("search-save",60013),logOut:tq("log-out",60014),signOut:tq("sign-out",60014),logIn:tq("log-in",60015),signIn:tq("sign-in",60015),eye:tq("eye",60016),eyeUnwatch:tq("eye-unwatch",60016),eyeWatch:tq("eye-watch",60016),circleFilled:tq("circle-filled",60017),primitiveDot:tq("primitive-dot",60017),closeDirty:tq("close-dirty",60017),debugBreakpoint:tq("debug-breakpoint",60017),debugBreakpointDisabled:tq("debug-breakpoint-disabled",60017),debugHint:tq("debug-hint",60017),terminalDecorationSuccess:tq("terminal-decoration-success",60017),primitiveSquare:tq("primitive-square",60018),edit:tq("edit",60019),pencil:tq("pencil",60019),info:tq("info",60020),issueOpened:tq("issue-opened",60020),gistPrivate:tq("gist-private",60021),gitForkPrivate:tq("git-fork-private",60021),lock:tq("lock",60021),mirrorPrivate:tq("mirror-private",60021),close:tq("close",60022),removeClose:tq("remove-close",60022),x:tq("x",60022),repoSync:tq("repo-sync",60023),sync:tq("sync",60023),clone:tq("clone",60024),desktopDownload:tq("desktop-download",60024),beaker:tq("beaker",60025),microscope:tq("microscope",60025),vm:tq("vm",60026),deviceDesktop:tq("device-desktop",60026),file:tq("file",60027),more:tq("more",60028),ellipsis:tq("ellipsis",60028),kebabHorizontal:tq("kebab-horizontal",60028),mailReply:tq("mail-reply",60029),reply:tq("reply",60029),organization:tq("organization",60030),organizationFilled:tq("organization-filled",60030),organizationOutline:tq("organization-outline",60030),newFile:tq("new-file",60031),fileAdd:tq("file-add",60031),newFolder:tq("new-folder",60032),fileDirectoryCreate:tq("file-directory-create",60032),trash:tq("trash",60033),trashcan:tq("trashcan",60033),history:tq("history",60034),clock:tq("clock",60034),folder:tq("folder",60035),fileDirectory:tq("file-directory",60035),symbolFolder:tq("symbol-folder",60035),logoGithub:tq("logo-github",60036),markGithub:tq("mark-github",60036),github:tq("github",60036),terminal:tq("terminal",60037),console:tq("console",60037),repl:tq("repl",60037),zap:tq("zap",60038),symbolEvent:tq("symbol-event",60038),error:tq("error",60039),stop:tq("stop",60039),variable:tq("variable",60040),symbolVariable:tq("symbol-variable",60040),array:tq("array",60042),symbolArray:tq("symbol-array",60042),symbolModule:tq("symbol-module",60043),symbolPackage:tq("symbol-package",60043),symbolNamespace:tq("symbol-namespace",60043),symbolObject:tq("symbol-object",60043),symbolMethod:tq("symbol-method",60044),symbolFunction:tq("symbol-function",60044),symbolConstructor:tq("symbol-constructor",60044),symbolBoolean:tq("symbol-boolean",60047),symbolNull:tq("symbol-null",60047),symbolNumeric:tq("symbol-numeric",60048),symbolNumber:tq("symbol-number",60048),symbolStructure:tq("symbol-structure",60049),symbolStruct:tq("symbol-struct",60049),symbolParameter:tq("symbol-parameter",60050),symbolTypeParameter:tq("symbol-type-parameter",60050),symbolKey:tq("symbol-key",60051),symbolText:tq("symbol-text",60051),symbolReference:tq("symbol-reference",60052),goToFile:tq("go-to-file",60052),symbolEnum:tq("symbol-enum",60053),symbolValue:tq("symbol-value",60053),symbolRuler:tq("symbol-ruler",60054),symbolUnit:tq("symbol-unit",60054),activateBreakpoints:tq("activate-breakpoints",60055),archive:tq("archive",60056),arrowBoth:tq("arrow-both",60057),arrowDown:tq("arrow-down",60058),arrowLeft:tq("arrow-left",60059),arrowRight:tq("arrow-right",60060),arrowSmallDown:tq("arrow-small-down",60061),arrowSmallLeft:tq("arrow-small-left",60062),arrowSmallRight:tq("arrow-small-right",60063),arrowSmallUp:tq("arrow-small-up",60064),arrowUp:tq("arrow-up",60065),bell:tq("bell",60066),bold:tq("bold",60067),book:tq("book",60068),bookmark:tq("bookmark",60069),debugBreakpointConditionalUnverified:tq("debug-breakpoint-conditional-unverified",60070),debugBreakpointConditional:tq("debug-breakpoint-conditional",60071),debugBreakpointConditionalDisabled:tq("debug-breakpoint-conditional-disabled",60071),debugBreakpointDataUnverified:tq("debug-breakpoint-data-unverified",60072),debugBreakpointData:tq("debug-breakpoint-data",60073),debugBreakpointDataDisabled:tq("debug-breakpoint-data-disabled",60073),debugBreakpointLogUnverified:tq("debug-breakpoint-log-unverified",60074),debugBreakpointLog:tq("debug-breakpoint-log",60075),debugBreakpointLogDisabled:tq("debug-breakpoint-log-disabled",60075),briefcase:tq("briefcase",60076),broadcast:tq("broadcast",60077),browser:tq("browser",60078),bug:tq("bug",60079),calendar:tq("calendar",60080),caseSensitive:tq("case-sensitive",60081),check:tq("check",60082),checklist:tq("checklist",60083),chevronDown:tq("chevron-down",60084),chevronLeft:tq("chevron-left",60085),chevronRight:tq("chevron-right",60086),chevronUp:tq("chevron-up",60087),chromeClose:tq("chrome-close",60088),chromeMaximize:tq("chrome-maximize",60089),chromeMinimize:tq("chrome-minimize",60090),chromeRestore:tq("chrome-restore",60091),circleOutline:tq("circle-outline",60092),circle:tq("circle",60092),debugBreakpointUnverified:tq("debug-breakpoint-unverified",60092),terminalDecorationIncomplete:tq("terminal-decoration-incomplete",60092),circleSlash:tq("circle-slash",60093),circuitBoard:tq("circuit-board",60094),clearAll:tq("clear-all",60095),clippy:tq("clippy",60096),closeAll:tq("close-all",60097),cloudDownload:tq("cloud-download",60098),cloudUpload:tq("cloud-upload",60099),code:tq("code",60100),collapseAll:tq("collapse-all",60101),colorMode:tq("color-mode",60102),commentDiscussion:tq("comment-discussion",60103),creditCard:tq("credit-card",60105),dash:tq("dash",60108),dashboard:tq("dashboard",60109),database:tq("database",60110),debugContinue:tq("debug-continue",60111),debugDisconnect:tq("debug-disconnect",60112),debugPause:tq("debug-pause",60113),debugRestart:tq("debug-restart",60114),debugStart:tq("debug-start",60115),debugStepInto:tq("debug-step-into",60116),debugStepOut:tq("debug-step-out",60117),debugStepOver:tq("debug-step-over",60118),debugStop:tq("debug-stop",60119),debug:tq("debug",60120),deviceCameraVideo:tq("device-camera-video",60121),deviceCamera:tq("device-camera",60122),deviceMobile:tq("device-mobile",60123),diffAdded:tq("diff-added",60124),diffIgnored:tq("diff-ignored",60125),diffModified:tq("diff-modified",60126),diffRemoved:tq("diff-removed",60127),diffRenamed:tq("diff-renamed",60128),diff:tq("diff",60129),diffSidebyside:tq("diff-sidebyside",60129),discard:tq("discard",60130),editorLayout:tq("editor-layout",60131),emptyWindow:tq("empty-window",60132),exclude:tq("exclude",60133),extensions:tq("extensions",60134),eyeClosed:tq("eye-closed",60135),fileBinary:tq("file-binary",60136),fileCode:tq("file-code",60137),fileMedia:tq("file-media",60138),filePdf:tq("file-pdf",60139),fileSubmodule:tq("file-submodule",60140),fileSymlinkDirectory:tq("file-symlink-directory",60141),fileSymlinkFile:tq("file-symlink-file",60142),fileZip:tq("file-zip",60143),files:tq("files",60144),filter:tq("filter",60145),flame:tq("flame",60146),foldDown:tq("fold-down",60147),foldUp:tq("fold-up",60148),fold:tq("fold",60149),folderActive:tq("folder-active",60150),folderOpened:tq("folder-opened",60151),gear:tq("gear",60152),gift:tq("gift",60153),gistSecret:tq("gist-secret",60154),gist:tq("gist",60155),gitCommit:tq("git-commit",60156),gitCompare:tq("git-compare",60157),compareChanges:tq("compare-changes",60157),gitMerge:tq("git-merge",60158),githubAction:tq("github-action",60159),githubAlt:tq("github-alt",60160),globe:tq("globe",60161),grabber:tq("grabber",60162),graph:tq("graph",60163),gripper:tq("gripper",60164),heart:tq("heart",60165),home:tq("home",60166),horizontalRule:tq("horizontal-rule",60167),hubot:tq("hubot",60168),inbox:tq("inbox",60169),issueReopened:tq("issue-reopened",60171),issues:tq("issues",60172),italic:tq("italic",60173),jersey:tq("jersey",60174),json:tq("json",60175),bracket:tq("bracket",60175),kebabVertical:tq("kebab-vertical",60176),key:tq("key",60177),law:tq("law",60178),lightbulbAutofix:tq("lightbulb-autofix",60179),linkExternal:tq("link-external",60180),link:tq("link",60181),listOrdered:tq("list-ordered",60182),listUnordered:tq("list-unordered",60183),liveShare:tq("live-share",60184),loading:tq("loading",60185),location:tq("location",60186),mailRead:tq("mail-read",60187),mail:tq("mail",60188),markdown:tq("markdown",60189),megaphone:tq("megaphone",60190),mention:tq("mention",60191),milestone:tq("milestone",60192),gitPullRequestMilestone:tq("git-pull-request-milestone",60192),mortarBoard:tq("mortar-board",60193),move:tq("move",60194),multipleWindows:tq("multiple-windows",60195),mute:tq("mute",60196),noNewline:tq("no-newline",60197),note:tq("note",60198),octoface:tq("octoface",60199),openPreview:tq("open-preview",60200),package:tq("package",60201),paintcan:tq("paintcan",60202),pin:tq("pin",60203),play:tq("play",60204),run:tq("run",60204),plug:tq("plug",60205),preserveCase:tq("preserve-case",60206),preview:tq("preview",60207),project:tq("project",60208),pulse:tq("pulse",60209),question:tq("question",60210),quote:tq("quote",60211),radioTower:tq("radio-tower",60212),reactions:tq("reactions",60213),references:tq("references",60214),refresh:tq("refresh",60215),regex:tq("regex",60216),remoteExplorer:tq("remote-explorer",60217),remote:tq("remote",60218),remove:tq("remove",60219),replaceAll:tq("replace-all",60220),replace:tq("replace",60221),repoClone:tq("repo-clone",60222),repoForcePush:tq("repo-force-push",60223),repoPull:tq("repo-pull",60224),repoPush:tq("repo-push",60225),report:tq("report",60226),requestChanges:tq("request-changes",60227),rocket:tq("rocket",60228),rootFolderOpened:tq("root-folder-opened",60229),rootFolder:tq("root-folder",60230),rss:tq("rss",60231),ruby:tq("ruby",60232),saveAll:tq("save-all",60233),saveAs:tq("save-as",60234),save:tq("save",60235),screenFull:tq("screen-full",60236),screenNormal:tq("screen-normal",60237),searchStop:tq("search-stop",60238),server:tq("server",60240),settingsGear:tq("settings-gear",60241),settings:tq("settings",60242),shield:tq("shield",60243),smiley:tq("smiley",60244),sortPrecedence:tq("sort-precedence",60245),splitHorizontal:tq("split-horizontal",60246),splitVertical:tq("split-vertical",60247),squirrel:tq("squirrel",60248),starFull:tq("star-full",60249),starHalf:tq("star-half",60250),symbolClass:tq("symbol-class",60251),symbolColor:tq("symbol-color",60252),symbolConstant:tq("symbol-constant",60253),symbolEnumMember:tq("symbol-enum-member",60254),symbolField:tq("symbol-field",60255),symbolFile:tq("symbol-file",60256),symbolInterface:tq("symbol-interface",60257),symbolKeyword:tq("symbol-keyword",60258),symbolMisc:tq("symbol-misc",60259),symbolOperator:tq("symbol-operator",60260),symbolProperty:tq("symbol-property",60261),wrench:tq("wrench",60261),wrenchSubaction:tq("wrench-subaction",60261),symbolSnippet:tq("symbol-snippet",60262),tasklist:tq("tasklist",60263),telescope:tq("telescope",60264),textSize:tq("text-size",60265),threeBars:tq("three-bars",60266),thumbsdown:tq("thumbsdown",60267),thumbsup:tq("thumbsup",60268),tools:tq("tools",60269),triangleDown:tq("triangle-down",60270),triangleLeft:tq("triangle-left",60271),triangleRight:tq("triangle-right",60272),triangleUp:tq("triangle-up",60273),twitter:tq("twitter",60274),unfold:tq("unfold",60275),unlock:tq("unlock",60276),unmute:tq("unmute",60277),unverified:tq("unverified",60278),verified:tq("verified",60279),versions:tq("versions",60280),vmActive:tq("vm-active",60281),vmOutline:tq("vm-outline",60282),vmRunning:tq("vm-running",60283),watch:tq("watch",60284),whitespace:tq("whitespace",60285),wholeWord:tq("whole-word",60286),window:tq("window",60287),wordWrap:tq("word-wrap",60288),zoomIn:tq("zoom-in",60289),zoomOut:tq("zoom-out",60290),listFilter:tq("list-filter",60291),listFlat:tq("list-flat",60292),listSelection:tq("list-selection",60293),selection:tq("selection",60293),listTree:tq("list-tree",60294),debugBreakpointFunctionUnverified:tq("debug-breakpoint-function-unverified",60295),debugBreakpointFunction:tq("debug-breakpoint-function",60296),debugBreakpointFunctionDisabled:tq("debug-breakpoint-function-disabled",60296),debugStackframeActive:tq("debug-stackframe-active",60297),circleSmallFilled:tq("circle-small-filled",60298),debugStackframeDot:tq("debug-stackframe-dot",60298),terminalDecorationMark:tq("terminal-decoration-mark",60298),debugStackframe:tq("debug-stackframe",60299),debugStackframeFocused:tq("debug-stackframe-focused",60299),debugBreakpointUnsupported:tq("debug-breakpoint-unsupported",60300),symbolString:tq("symbol-string",60301),debugReverseContinue:tq("debug-reverse-continue",60302),debugStepBack:tq("debug-step-back",60303),debugRestartFrame:tq("debug-restart-frame",60304),debugAlt:tq("debug-alt",60305),callIncoming:tq("call-incoming",60306),callOutgoing:tq("call-outgoing",60307),menu:tq("menu",60308),expandAll:tq("expand-all",60309),feedback:tq("feedback",60310),gitPullRequestReviewer:tq("git-pull-request-reviewer",60310),groupByRefType:tq("group-by-ref-type",60311),ungroupByRefType:tq("ungroup-by-ref-type",60312),account:tq("account",60313),gitPullRequestAssignee:tq("git-pull-request-assignee",60313),bellDot:tq("bell-dot",60314),debugConsole:tq("debug-console",60315),library:tq("library",60316),output:tq("output",60317),runAll:tq("run-all",60318),syncIgnored:tq("sync-ignored",60319),pinned:tq("pinned",60320),githubInverted:tq("github-inverted",60321),serverProcess:tq("server-process",60322),serverEnvironment:tq("server-environment",60323),pass:tq("pass",60324),issueClosed:tq("issue-closed",60324),stopCircle:tq("stop-circle",60325),playCircle:tq("play-circle",60326),record:tq("record",60327),debugAltSmall:tq("debug-alt-small",60328),vmConnect:tq("vm-connect",60329),cloud:tq("cloud",60330),merge:tq("merge",60331),export:tq("export",60332),graphLeft:tq("graph-left",60333),magnet:tq("magnet",60334),notebook:tq("notebook",60335),redo:tq("redo",60336),checkAll:tq("check-all",60337),pinnedDirty:tq("pinned-dirty",60338),passFilled:tq("pass-filled",60339),circleLargeFilled:tq("circle-large-filled",60340),circleLarge:tq("circle-large",60341),circleLargeOutline:tq("circle-large-outline",60341),combine:tq("combine",60342),gather:tq("gather",60342),table:tq("table",60343),variableGroup:tq("variable-group",60344),typeHierarchy:tq("type-hierarchy",60345),typeHierarchySub:tq("type-hierarchy-sub",60346),typeHierarchySuper:tq("type-hierarchy-super",60347),gitPullRequestCreate:tq("git-pull-request-create",60348),runAbove:tq("run-above",60349),runBelow:tq("run-below",60350),notebookTemplate:tq("notebook-template",60351),debugRerun:tq("debug-rerun",60352),workspaceTrusted:tq("workspace-trusted",60353),workspaceUntrusted:tq("workspace-untrusted",60354),workspaceUnknown:tq("workspace-unknown",60355),terminalCmd:tq("terminal-cmd",60356),terminalDebian:tq("terminal-debian",60357),terminalLinux:tq("terminal-linux",60358),terminalPowershell:tq("terminal-powershell",60359),terminalTmux:tq("terminal-tmux",60360),terminalUbuntu:tq("terminal-ubuntu",60361),terminalBash:tq("terminal-bash",60362),arrowSwap:tq("arrow-swap",60363),copy:tq("copy",60364),personAdd:tq("person-add",60365),filterFilled:tq("filter-filled",60366),wand:tq("wand",60367),debugLineByLine:tq("debug-line-by-line",60368),inspect:tq("inspect",60369),layers:tq("layers",60370),layersDot:tq("layers-dot",60371),layersActive:tq("layers-active",60372),compass:tq("compass",60373),compassDot:tq("compass-dot",60374),compassActive:tq("compass-active",60375),azure:tq("azure",60376),issueDraft:tq("issue-draft",60377),gitPullRequestClosed:tq("git-pull-request-closed",60378),gitPullRequestDraft:tq("git-pull-request-draft",60379),debugAll:tq("debug-all",60380),debugCoverage:tq("debug-coverage",60381),runErrors:tq("run-errors",60382),folderLibrary:tq("folder-library",60383),debugContinueSmall:tq("debug-continue-small",60384),beakerStop:tq("beaker-stop",60385),graphLine:tq("graph-line",60386),graphScatter:tq("graph-scatter",60387),pieChart:tq("pie-chart",60388),bracketDot:tq("bracket-dot",60389),bracketError:tq("bracket-error",60390),lockSmall:tq("lock-small",60391),azureDevops:tq("azure-devops",60392),verifiedFilled:tq("verified-filled",60393),newline:tq("newline",60394),layout:tq("layout",60395),layoutActivitybarLeft:tq("layout-activitybar-left",60396),layoutActivitybarRight:tq("layout-activitybar-right",60397),layoutPanelLeft:tq("layout-panel-left",60398),layoutPanelCenter:tq("layout-panel-center",60399),layoutPanelJustify:tq("layout-panel-justify",60400),layoutPanelRight:tq("layout-panel-right",60401),layoutPanel:tq("layout-panel",60402),layoutSidebarLeft:tq("layout-sidebar-left",60403),layoutSidebarRight:tq("layout-sidebar-right",60404),layoutStatusbar:tq("layout-statusbar",60405),layoutMenubar:tq("layout-menubar",60406),layoutCentered:tq("layout-centered",60407),target:tq("target",60408),indent:tq("indent",60409),recordSmall:tq("record-small",60410),errorSmall:tq("error-small",60411),terminalDecorationError:tq("terminal-decoration-error",60411),arrowCircleDown:tq("arrow-circle-down",60412),arrowCircleLeft:tq("arrow-circle-left",60413),arrowCircleRight:tq("arrow-circle-right",60414),arrowCircleUp:tq("arrow-circle-up",60415),layoutSidebarRightOff:tq("layout-sidebar-right-off",60416),layoutPanelOff:tq("layout-panel-off",60417),layoutSidebarLeftOff:tq("layout-sidebar-left-off",60418),blank:tq("blank",60419),heartFilled:tq("heart-filled",60420),map:tq("map",60421),mapHorizontal:tq("map-horizontal",60421),foldHorizontal:tq("fold-horizontal",60421),mapFilled:tq("map-filled",60422),mapHorizontalFilled:tq("map-horizontal-filled",60422),foldHorizontalFilled:tq("fold-horizontal-filled",60422),circleSmall:tq("circle-small",60423),bellSlash:tq("bell-slash",60424),bellSlashDot:tq("bell-slash-dot",60425),commentUnresolved:tq("comment-unresolved",60426),gitPullRequestGoToChanges:tq("git-pull-request-go-to-changes",60427),gitPullRequestNewChanges:tq("git-pull-request-new-changes",60428),searchFuzzy:tq("search-fuzzy",60429),commentDraft:tq("comment-draft",60430),send:tq("send",60431),sparkle:tq("sparkle",60432),insert:tq("insert",60433),mic:tq("mic",60434),thumbsdownFilled:tq("thumbsdown-filled",60435),thumbsupFilled:tq("thumbsup-filled",60436),coffee:tq("coffee",60437),snake:tq("snake",60438),game:tq("game",60439),vr:tq("vr",60440),chip:tq("chip",60441),piano:tq("piano",60442),music:tq("music",60443),micFilled:tq("mic-filled",60444),repoFetch:tq("repo-fetch",60445),copilot:tq("copilot",60446),lightbulbSparkle:tq("lightbulb-sparkle",60447),robot:tq("robot",60448),sparkleFilled:tq("sparkle-filled",60449),diffSingle:tq("diff-single",60450),diffMultiple:tq("diff-multiple",60451),surroundWith:tq("surround-with",60452),share:tq("share",60453),gitStash:tq("git-stash",60454),gitStashApply:tq("git-stash-apply",60455),gitStashPop:tq("git-stash-pop",60456),vscode:tq("vscode",60457),vscodeInsiders:tq("vscode-insiders",60458),codeOss:tq("code-oss",60459),runCoverage:tq("run-coverage",60460),runAllCoverage:tq("run-all-coverage",60461),coverage:tq("coverage",60462),githubProject:tq("github-project",60463),mapVertical:tq("map-vertical",60464),foldVertical:tq("fold-vertical",60464),mapVerticalFilled:tq("map-vertical-filled",60465),foldVerticalFilled:tq("fold-vertical-filled",60465),goToSearch:tq("go-to-search",60466),percentage:tq("percentage",60467),sortPercentage:tq("sort-percentage",60467),attach:tq("attach",60468),goToEditingSession:tq("go-to-editing-session",60469),editSession:tq("edit-session",60470),codeReview:tq("code-review",60471),copilotWarning:tq("copilot-warning",60472),python:tq("python",60473),copilotLarge:tq("copilot-large",60474),copilotWarningLarge:tq("copilot-warning-large",60475),keyboardTab:tq("keyboard-tab",60476),copilotBlocked:tq("copilot-blocked",60477),copilotNotConnected:tq("copilot-not-connected",60478),flag:tq("flag",60479),lightbulbEmpty:tq("lightbulb-empty",60480),symbolMethodArrow:tq("symbol-method-arrow",60481),copilotUnavailable:tq("copilot-unavailable",60482),repoPinned:tq("repo-pinned",60483),keyboardTabAbove:tq("keyboard-tab-above",60484),keyboardTabBelow:tq("keyboard-tab-below",60485),gitPullRequestDone:tq("git-pull-request-done",60486),mcp:tq("mcp",60487),extensionsLarge:tq("extensions-large",60488),layoutPanelDock:tq("layout-panel-dock",60489),layoutSidebarLeftDock:tq("layout-sidebar-left-dock",60490),layoutSidebarRightDock:tq("layout-sidebar-right-dock",60491),copilotInProgress:tq("copilot-in-progress",60492),copilotError:tq("copilot-error",60493),copilotSuccess:tq("copilot-success",60494),chatSparkle:tq("chat-sparkle",60495),searchSparkle:tq("search-sparkle",60496),editSparkle:tq("edit-sparkle",60497),copilotSnooze:tq("copilot-snooze",60498),sendToRemoteAgent:tq("send-to-remote-agent",60499),commentDiscussionSparkle:tq("comment-discussion-sparkle",60500),chatSparkleWarning:tq("chat-sparkle-warning",60501),chatSparkleError:tq("chat-sparkle-error",60502),collection:tq("collection",60503),newCollection:tq("new-collection",60504),thinking:tq("thinking",60505),build:tq("build",60506),commentDiscussionQuote:tq("comment-discussion-quote",60507),cursor:tq("cursor",60508),eraser:tq("eraser",60509),fileText:tq("file-text",60510),quotes:tq("quotes",60512),rename:tq("rename",60513),runWithDeps:tq("run-with-deps",60514),debugConnected:tq("debug-connected",60515),strikethrough:tq("strikethrough",60516),openInProduct:tq("open-in-product",60517),indexZero:tq("index-zero",60518),agent:tq("agent",60519),editCode:tq("edit-code",60520),repoSelected:tq("repo-selected",60521),skip:tq("skip",60522),mergeInto:tq("merge-into",60523),gitBranchChanges:tq("git-branch-changes",60524),gitBranchStagedChanges:tq("git-branch-staged-changes",60525),gitBranchConflicts:tq("git-branch-conflicts",60526),gitBranch:tq("git-branch",60527),gitBranchCreate:tq("git-branch-create",60527),gitBranchDelete:tq("git-branch-delete",60527),searchLarge:tq("search-large",60528),terminalGitBash:tq("terminal-git-bash",60529),windowActive:tq("window-active",60530),forward:tq("forward",60531),download:tq("download",60532),clockface:tq("clockface",60533),unarchive:tq("unarchive",60534),sessionInProgress:tq("session-in-progress",60535),collectionSmall:tq("collection-small",60536),vmSmall:tq("vm-small",60537),cloudSmall:tq("cloud-small",60538),addSmall:tq("add-small",60539),removeSmall:tq("remove-small",60540),worktreeSmall:tq("worktree-small",60541),worktree:tq("worktree",60542),screenCut:tq("screen-cut",60543),ask:tq("ask",60544),openai:tq("openai",60545),claude:tq("claude",60546),openInWindow:tq("open-in-window",60547),newSession:tq("new-session",60548),terminalSecure:tq("terminal-secure",60549),chatImport:tq("chat-import",60550),chatExport:tq("chat-export",60551),shareWindow:tq("share-window",60552),circleSlashCompact:tq("circle-slash-compact",60553),copilotCompact:tq("copilot-compact",60554),folderOpenedCompact:tq("folder-opened-compact",60555),folderCompact:tq("folder-compact",60556),gearCompact:tq("gear-compact",60557),gitBranchCompact:tq("git-branch-compact",60558),libraryCompact:tq("library-compact",60559),recordKeysCompact:tq("record-keys-compact",60560),remoteCompact:tq("remote-compact",60561),repoForkedCompact:tq("repo-forked-compact",60562),repoCompact:tq("repo-compact",60563),shieldCompact:tq("shield-compact",60564),sparkleCompact:tq("sparkle-compact",60565),symbolColorCompact:tq("symbol-color-compact",60566),windowCompact:tq("window-compact",60567),errorCompact:tq("error-compact",60568),warningCompact:tq("warning-compact",60569),passCompact:tq("pass-compact",60570),important:tq("important",60571),importantCompact:tq("important-compact",60572),rocketCompact:tq("rocket-compact",60573),unpin:tq("unpin",60574),addCompact:tq("add-compact",60575),attachCompact:tq("attach-compact",60576),beakerCompact:tq("beaker-compact",60577),checkCompact:tq("check-compact",60578),checklistCompact:tq("checklist-compact",60579),chevronDownCompact:tq("chevron-down-compact",60580),chevronLeftCompact:tq("chevron-left-compact",60581),chevronRightCompact:tq("chevron-right-compact",60582),chevronUpCompact:tq("chevron-up-compact",60583),circleFilledCompact:tq("circle-filled-compact",60584),circleSmallFilledCompact:tq("circle-small-filled-compact",60585),closeCompact:tq("close-compact",60586),collapseAllCompact:tq("collapse-all-compact",60587),commentCompact:tq("comment-compact",60588),commentUnresolvedCompact:tq("comment-unresolved-compact",60589),debugConnectedCompact:tq("debug-connected-compact",60590),debugDisconnectCompact:tq("debug-disconnect-compact",60591),editCompact:tq("edit-compact",60592),fileMediaCompact:tq("file-media-compact",60593),gitFetch:tq("git-fetch",60594),lightbulbCompact:tq("lightbulb-compact",60595),loadingCompact:tq("loading-compact",60596),passFilledCompact:tq("pass-filled-compact",60597),projectCompact:tq("project-compact",60598),refreshCompact:tq("refresh-compact",60599),searchCompact:tq("search-compact",60600),sessionInProgressCompact:tq("session-in-progress-compact",60601),syncCompact:tq("sync-compact",60602),terminalCompact:tq("terminal-compact",60603),vmPending:tq("vm-pending",60604),worktreeCompact:tq("worktree-compact",60605),developerTools:tq("developer-tools",60606),cloudCompact:tq("cloud-compact",60607),agentCompact:tq("agent-compact",60608),askCompact:tq("ask-compact",60609),settingsCompact:tq("settings-compact",60610),vmCompact:tq("vm-compact",60611),runCompact:tq("run-compact",60612),gitPullRequestComment:tq("git-pull-request-comment",60613),gitPullRequestError:tq("git-pull-request-error",60614),rightPanelHide:tq("right-panel-hide",60615),rightPanelShow:tq("right-panel-show",60616),vscodeInsidersOutline:tq("vscode-insiders-outline",60617),vscodeOutline:tq("vscode-outline",60618),voiceMode:tq("voice-mode",60619),voiceModeCompact:tq("voice-mode-compact",60620)},tK={dialogError:tq("dialog-error","error"),dialogWarning:tq("dialog-warning","warning"),dialogInfo:tq("dialog-info","info"),dialogClose:tq("dialog-close","close"),treeItemExpanded:tq("tree-item-expanded","chevron-down"),treeFilterOnTypeOn:tq("tree-filter-on-type-on","list-filter"),treeFilterOnTypeOff:tq("tree-filter-on-type-off","list-selection"),treeFilterClear:tq("tree-filter-clear","close"),treeItemLoading:tq("tree-item-loading","loading"),menuSelection:tq("menu-selection","check"),menuSubmenu:tq("menu-submenu","chevron-right"),menuBarMore:tq("menubar-more","more"),scrollbarButtonLeft:tq("scrollbar-button-left","triangle-left"),scrollbarButtonRight:tq("scrollbar-button-right","triangle-right"),scrollbarButtonUp:tq("scrollbar-button-up","triangle-up"),scrollbarButtonDown:tq("scrollbar-button-down","triangle-down"),toolBarMore:tq("toolbar-more","more"),quickInputBack:tq("quick-input-back","arrow-left"),dropDownButton:tq("drop-down-button",60084),symbolCustomColor:tq("symbol-customcolor",60252),exportIcon:tq("export",60332),workspaceUnspecified:tq("workspace-unspecified",60355),newLine:tq("newline",60394),thumbsDownFilled:tq("thumbsdown-filled",60435),thumbsUpFilled:tq("thumbsup-filled",60436),gitFetch:tq("git-fetch",60445),lightbulbSparkleAutofix:tq("lightbulb-sparkle-autofix",60447),debugBreakpointPending:tq("debug-breakpoint-pending",60377),chatImport:tq("chat-import",60550),chatExport:tq("chat-export",60551)},tB={...t$,...tK};class tU extends R{get isResolved(){return this._isResolved}constructor(e,t,r){super(),this._registry=e,this._languageId=t,this._factory=r,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}async resolve(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}async _create(){let e=await this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}}(n3=oh||(oh={}))[n3.Increase=0]="Increase",n3[n3.Decrease=1]="Decrease",ie=od||(od={}),(l=new Map).set(0,tB.symbolMethod),l.set(1,tB.symbolFunction),l.set(2,tB.symbolConstructor),l.set(3,tB.symbolField),l.set(4,tB.symbolVariable),l.set(5,tB.symbolClass),l.set(6,tB.symbolStruct),l.set(7,tB.symbolInterface),l.set(8,tB.symbolModule),l.set(9,tB.symbolProperty),l.set(10,tB.symbolEvent),l.set(11,tB.symbolOperator),l.set(12,tB.symbolUnit),l.set(13,tB.symbolValue),l.set(15,tB.symbolEnum),l.set(14,tB.symbolConstant),l.set(15,tB.symbolEnum),l.set(16,tB.symbolEnumMember),l.set(17,tB.symbolKeyword),l.set(28,tB.symbolSnippet),l.set(18,tB.symbolText),l.set(19,tB.symbolColor),l.set(20,tB.symbolFile),l.set(21,tB.symbolReference),l.set(22,tB.symbolCustomColor),l.set(23,tB.symbolFolder),l.set(24,tB.symbolTypeParameter),l.set(25,tB.account),l.set(26,tB.issues),l.set(27,tB.tools),ie.toIcon=function(e){let t=l.get(e);return t||(console.info("No codicon found for CompletionItemKind "+e),t=tB.symbolProperty),t},ie.toLabel=function(e){switch(e){case 0:return F(763,"Method");case 1:return F(764,"Function");case 2:return F(765,"Constructor");case 3:return F(766,"Field");case 4:return F(767,"Variable");case 5:return F(768,"Class");case 6:return F(769,"Struct");case 7:return F(770,"Interface");case 8:return F(771,"Module");case 9:return F(772,"Property");case 10:return F(773,"Event");case 11:return F(774,"Operator");case 12:return F(775,"Unit");case 13:return F(776,"Value");case 14:return F(777,"Constant");case 15:return F(778,"Enum");case 16:return F(779,"Enum Member");case 17:return F(780,"Keyword");case 18:return F(781,"Text");case 19:return F(782,"Color");case 20:return F(783,"File");case 21:return F(784,"Reference");case 22:return F(785,"Custom Color");case 23:return F(786,"Folder");case 24:return F(787,"Type Parameter");case 25:return F(788,"User");case 26:return F(789,"Issue");case 27:return F(790,"Tool");case 28:return F(791,"Snippet");default:return""}},(u=new Map).set("method",0),u.set("function",1),u.set("constructor",2),u.set("field",3),u.set("variable",4),u.set("class",5),u.set("struct",6),u.set("interface",7),u.set("module",8),u.set("property",9),u.set("event",10),u.set("operator",11),u.set("unit",12),u.set("value",13),u.set("constant",14),u.set("enum",15),u.set("enum-member",16),u.set("enumMember",16),u.set("keyword",17),u.set("snippet",28),u.set("text",18),u.set("color",19),u.set("file",20),u.set("reference",21),u.set("customcolor",22),u.set("folder",23),u.set("type-parameter",24),u.set("typeParameter",24),u.set("account",25),u.set("issue",26),u.set("tool",27),ie.fromString=function(e,t){let r=u.get(e);return void 0!==r||t||(r=9),r},(it=om||(om={}))[it.Automatic=0]="Automatic",it[it.Explicit=1]="Explicit",(ir=og||(og={}))[ir.Code=1]="Code",ir[ir.Label=2]="Label",(ii=of||(of={}))[ii.Accepted=0]="Accepted",ii[ii.Rejected=1]="Rejected",ii[ii.Ignored=2]="Ignored",(is=op||(op={}))[is.Automatic=0]="Automatic",is[is.PasteAs=1]="PasteAs",(io=ob||(ob={}))[io.Invoke=1]="Invoke",io[io.TriggerCharacter=2]="TriggerCharacter",io[io.ContentChange=3]="ContentChange",(ia=oy||(oy={}))[ia.Text=0]="Text",ia[ia.Read=1]="Read",ia[ia.Write=2]="Write",F(792,"array"),F(793,"boolean"),F(794,"class"),F(795,"constant"),F(796,"constructor"),F(797,"enumeration"),F(798,"enumeration member"),F(799,"event"),F(800,"field"),F(801,"file"),F(802,"function"),F(803,"interface"),F(804,"key"),F(805,"method"),F(806,"module"),F(807,"namespace"),F(808,"null"),F(809,"number"),F(810,"object"),F(811,"operator"),F(812,"package"),F(813,"property"),F(814,"string"),F(815,"struct"),F(816,"type parameter"),F(817,"variable"),il=ov||(ov={}),(c=new Map).set(0,tB.symbolFile),c.set(1,tB.symbolModule),c.set(2,tB.symbolNamespace),c.set(3,tB.symbolPackage),c.set(4,tB.symbolClass),c.set(5,tB.symbolMethod),c.set(6,tB.symbolProperty),c.set(7,tB.symbolField),c.set(8,tB.symbolConstructor),c.set(9,tB.symbolEnum),c.set(10,tB.symbolInterface),c.set(11,tB.symbolFunction),c.set(12,tB.symbolVariable),c.set(13,tB.symbolConstant),c.set(14,tB.symbolString),c.set(15,tB.symbolNumber),c.set(16,tB.symbolBoolean),c.set(17,tB.symbolArray),c.set(18,tB.symbolObject),c.set(19,tB.symbolKey),c.set(20,tB.symbolNull),c.set(21,tB.symbolEnumMember),c.set(22,tB.symbolStruct),c.set(23,tB.symbolEvent),c.set(24,tB.symbolOperator),c.set(25,tB.symbolTypeParameter),il.toIcon=function(e){let t=c.get(e);return t||(console.info("No codicon found for SymbolKind "+e),t=tB.symbolProperty),t},(h=new Map).set(0,20),h.set(1,8),h.set(2,8),h.set(3,8),h.set(4,5),h.set(5,0),h.set(6,9),h.set(7,3),h.set(8,2),h.set(9,15),h.set(10,7),h.set(11,1),h.set(12,4),h.set(13,14),h.set(14,18),h.set(15,13),h.set(16,13),h.set(17,13),h.set(18,13),h.set(19,17),h.set(20,13),h.set(21,16),h.set(22,6),h.set(23,10),h.set(24,11),h.set(25,24),il.toCompletionKind=function(e){let t=h.get(e);return void 0===t&&(console.info("No completion kind found for SymbolKind "+e),t=20),t};class tj{static{this.Comment=new tj("comment")}static{this.Imports=new tj("imports")}static{this.Region=new tj("region")}static fromValue(e){switch(e){case"comment":return tj.Comment;case"imports":return tj.Imports;case"region":return tj.Region}return new tj(e)}constructor(e){this.value=e}}(iu=ow||(ow={}))[iu.AIGenerated=1]="AIGenerated",(ic=oC||(oC={}))[ic.Invoke=0]="Invoke",ic[ic.Automatic=1]="Automatic",(o_||(o_={})).is=function(e){return!!e&&"object"==typeof e&&"string"==typeof e.id&&"string"==typeof e.title},(ih=oS||(oS={}))[ih.Type=1]="Type",ih[ih.Parameter=2]="Parameter",new class{constructor(){this._tokenizationSupports=new Map,this._factories=new Map,this._onDidChange=new eh,this.onDidChange=this._onDidChange.event,this._colorMap=null}handleChange(e){this._onDidChange.fire({changedLanguages:e,changedColorMap:!1})}register(e,t){return this._tokenizationSupports.set(e,t),this.handleChange([e]),A(()=>{this._tokenizationSupports.get(e)===t&&(this._tokenizationSupports.delete(e),this.handleChange([e]))})}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,t){this._factories.get(e)?.dispose();let r=new tU(this,e,t);return this._factories.set(e,r),A(()=>{let t=this._factories.get(e);t&&t===r&&(this._factories.delete(e),t.dispose())})}async getOrCreate(e){let t=this.get(e);if(t)return t;let r=this._factories.get(e);return!r||r.isResolved?null:(await r.resolve(),this.get(e))}isResolved(e){if(this.get(e))return!0;let t=this._factories.get(e);return!t||!!t.isResolved}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}},(id=oL||(oL={}))[id.Unknown=0]="Unknown",id[id.Disabled=1]="Disabled",id[id.Enabled=2]="Enabled",(im=ox||(ox={}))[im.Invoke=1]="Invoke",im[im.Auto=2]="Auto",(ig=oN||(oN={}))[ig.None=0]="None",ig[ig.KeepWhitespace=1]="KeepWhitespace",ig[ig.InsertAsSnippet=4]="InsertAsSnippet",(ip=oE||(oE={}))[ip.Method=0]="Method",ip[ip.Function=1]="Function",ip[ip.Constructor=2]="Constructor",ip[ip.Field=3]="Field",ip[ip.Variable=4]="Variable",ip[ip.Class=5]="Class",ip[ip.Struct=6]="Struct",ip[ip.Interface=7]="Interface",ip[ip.Module=8]="Module",ip[ip.Property=9]="Property",ip[ip.Event=10]="Event",ip[ip.Operator=11]="Operator",ip[ip.Unit=12]="Unit",ip[ip.Value=13]="Value",ip[ip.Constant=14]="Constant",ip[ip.Enum=15]="Enum",ip[ip.EnumMember=16]="EnumMember",ip[ip.Keyword=17]="Keyword",ip[ip.Text=18]="Text",ip[ip.Color=19]="Color",ip[ip.File=20]="File",ip[ip.Reference=21]="Reference",ip[ip.Customcolor=22]="Customcolor",ip[ip.Folder=23]="Folder",ip[ip.TypeParameter=24]="TypeParameter",ip[ip.User=25]="User",ip[ip.Issue=26]="Issue",ip[ip.Tool=27]="Tool",ip[ip.Snippet=28]="Snippet",(ib=oA||(oA={}))[ib.Deprecated=1]="Deprecated",(iy=ok||(ok={}))[iy.Invoke=0]="Invoke",iy[iy.TriggerCharacter=1]="TriggerCharacter",iy[iy.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions",(iv=oR||(oR={}))[iv.EXACT=0]="EXACT",iv[iv.ABOVE=1]="ABOVE",iv[iv.BELOW=2]="BELOW",(iw=oT||(oT={}))[iw.NotSet=0]="NotSet",iw[iw.ContentFlush=1]="ContentFlush",iw[iw.RecoverFromMarkers=2]="RecoverFromMarkers",iw[iw.Explicit=3]="Explicit",iw[iw.Paste=4]="Paste",iw[iw.Undo=5]="Undo",iw[iw.Redo=6]="Redo",(iC=oM||(oM={}))[iC.LF=1]="LF",iC[iC.CRLF=2]="CRLF",(i_=oO||(oO={}))[i_.Text=0]="Text",i_[i_.Read=1]="Read",i_[i_.Write=2]="Write",(iS=oI||(oI={}))[iS.None=0]="None",iS[iS.Keep=1]="Keep",iS[iS.Brackets=2]="Brackets",iS[iS.Advanced=3]="Advanced",iS[iS.Full=4]="Full",(iL=oP||(oP={}))[iL.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",iL[iL.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",iL[iL.accessibilitySupport=2]="accessibilitySupport",iL[iL.accessibilityPageSize=3]="accessibilityPageSize",iL[iL.allowOverflow=4]="allowOverflow",iL[iL.allowVariableLineHeights=5]="allowVariableLineHeights",iL[iL.allowVariableFonts=6]="allowVariableFonts",iL[iL.allowVariableFontsInAccessibilityMode=7]="allowVariableFontsInAccessibilityMode",iL[iL.ariaLabel=8]="ariaLabel",iL[iL.ariaRequired=9]="ariaRequired",iL[iL.autoClosingBrackets=10]="autoClosingBrackets",iL[iL.autoClosingComments=11]="autoClosingComments",iL[iL.screenReaderAnnounceInlineSuggestion=12]="screenReaderAnnounceInlineSuggestion",iL[iL.autoClosingDelete=13]="autoClosingDelete",iL[iL.autoClosingOvertype=14]="autoClosingOvertype",iL[iL.autoClosingQuotes=15]="autoClosingQuotes",iL[iL.autoIndent=16]="autoIndent",iL[iL.autoIndentOnPaste=17]="autoIndentOnPaste",iL[iL.autoIndentOnPasteWithinString=18]="autoIndentOnPasteWithinString",iL[iL.automaticLayout=19]="automaticLayout",iL[iL.autoSurround=20]="autoSurround",iL[iL.bracketPairColorization=21]="bracketPairColorization",iL[iL.guides=22]="guides",iL[iL.codeLens=23]="codeLens",iL[iL.codeLensFontFamily=24]="codeLensFontFamily",iL[iL.codeLensFontSize=25]="codeLensFontSize",iL[iL.colorDecorators=26]="colorDecorators",iL[iL.colorDecoratorsLimit=27]="colorDecoratorsLimit",iL[iL.columnSelection=28]="columnSelection",iL[iL.comments=29]="comments",iL[iL.contextmenu=30]="contextmenu",iL[iL.copyWithSyntaxHighlighting=31]="copyWithSyntaxHighlighting",iL[iL.cursorBlinking=32]="cursorBlinking",iL[iL.cursorSmoothCaretAnimation=33]="cursorSmoothCaretAnimation",iL[iL.cursorStyle=34]="cursorStyle",iL[iL.cursorSurroundingLines=35]="cursorSurroundingLines",iL[iL.cursorSurroundingLinesStyle=36]="cursorSurroundingLinesStyle",iL[iL.cursorWidth=37]="cursorWidth",iL[iL.cursorHeight=38]="cursorHeight",iL[iL.disableLayerHinting=39]="disableLayerHinting",iL[iL.disableMonospaceOptimizations=40]="disableMonospaceOptimizations",iL[iL.domReadOnly=41]="domReadOnly",iL[iL.dragAndDrop=42]="dragAndDrop",iL[iL.dropIntoEditor=43]="dropIntoEditor",iL[iL.editContext=44]="editContext",iL[iL.emptySelectionClipboard=45]="emptySelectionClipboard",iL[iL.experimentalGpuAcceleration=46]="experimentalGpuAcceleration",iL[iL.experimentalWhitespaceRendering=47]="experimentalWhitespaceRendering",iL[iL.extraEditorClassName=48]="extraEditorClassName",iL[iL.fastScrollSensitivity=49]="fastScrollSensitivity",iL[iL.find=50]="find",iL[iL.fixedOverflowWidgets=51]="fixedOverflowWidgets",iL[iL.folding=52]="folding",iL[iL.foldingStrategy=53]="foldingStrategy",iL[iL.foldingHighlight=54]="foldingHighlight",iL[iL.foldingImportsByDefault=55]="foldingImportsByDefault",iL[iL.foldingMaximumRegions=56]="foldingMaximumRegions",iL[iL.unfoldOnClickAfterEndOfLine=57]="unfoldOnClickAfterEndOfLine",iL[iL.fontFamily=58]="fontFamily",iL[iL.fontInfo=59]="fontInfo",iL[iL.fontLigatures=60]="fontLigatures",iL[iL.fontSize=61]="fontSize",iL[iL.fontWeight=62]="fontWeight",iL[iL.fontVariations=63]="fontVariations",iL[iL.formatOnPaste=64]="formatOnPaste",iL[iL.formatOnType=65]="formatOnType",iL[iL.glyphMargin=66]="glyphMargin",iL[iL.gotoLocation=67]="gotoLocation",iL[iL.hideCursorInOverviewRuler=68]="hideCursorInOverviewRuler",iL[iL.hover=69]="hover",iL[iL.inDiffEditor=70]="inDiffEditor",iL[iL.inlineSuggest=71]="inlineSuggest",iL[iL.letterSpacing=72]="letterSpacing",iL[iL.lightbulb=73]="lightbulb",iL[iL.lineDecorationsWidth=74]="lineDecorationsWidth",iL[iL.lineHeight=75]="lineHeight",iL[iL.lineNumbers=76]="lineNumbers",iL[iL.lineNumbersMinChars=77]="lineNumbersMinChars",iL[iL.linkedEditing=78]="linkedEditing",iL[iL.links=79]="links",iL[iL.matchBrackets=80]="matchBrackets",iL[iL.minimap=81]="minimap",iL[iL.mouseStyle=82]="mouseStyle",iL[iL.mouseWheelScrollSensitivity=83]="mouseWheelScrollSensitivity",iL[iL.mouseWheelZoom=84]="mouseWheelZoom",iL[iL.multiCursorMergeOverlapping=85]="multiCursorMergeOverlapping",iL[iL.multiCursorModifier=86]="multiCursorModifier",iL[iL.mouseMiddleClickAction=87]="mouseMiddleClickAction",iL[iL.multiCursorPaste=88]="multiCursorPaste",iL[iL.multiCursorLimit=89]="multiCursorLimit",iL[iL.occurrencesHighlight=90]="occurrencesHighlight",iL[iL.occurrencesHighlightDelay=91]="occurrencesHighlightDelay",iL[iL.overtypeCursorStyle=92]="overtypeCursorStyle",iL[iL.overtypeOnPaste=93]="overtypeOnPaste",iL[iL.overviewRulerBorder=94]="overviewRulerBorder",iL[iL.overviewRulerLanes=95]="overviewRulerLanes",iL[iL.padding=96]="padding",iL[iL.pasteAs=97]="pasteAs",iL[iL.parameterHints=98]="parameterHints",iL[iL.peekWidgetDefaultFocus=99]="peekWidgetDefaultFocus",iL[iL.placeholder=100]="placeholder",iL[iL.definitionLinkOpensInPeek=101]="definitionLinkOpensInPeek",iL[iL.quickSuggestions=102]="quickSuggestions",iL[iL.quickSuggestionsDelay=103]="quickSuggestionsDelay",iL[iL.readOnly=104]="readOnly",iL[iL.readOnlyMessage=105]="readOnlyMessage",iL[iL.renameOnType=106]="renameOnType",iL[iL.renderRichScreenReaderContent=107]="renderRichScreenReaderContent",iL[iL.renderControlCharacters=108]="renderControlCharacters",iL[iL.renderFinalNewline=109]="renderFinalNewline",iL[iL.renderLineHighlight=110]="renderLineHighlight",iL[iL.renderLineHighlightOnlyWhenFocus=111]="renderLineHighlightOnlyWhenFocus",iL[iL.renderValidationDecorations=112]="renderValidationDecorations",iL[iL.renderWhitespace=113]="renderWhitespace",iL[iL.revealHorizontalRightPadding=114]="revealHorizontalRightPadding",iL[iL.roundedSelection=115]="roundedSelection",iL[iL.rulers=116]="rulers",iL[iL.scrollbar=117]="scrollbar",iL[iL.scrollBeyondLastColumn=118]="scrollBeyondLastColumn",iL[iL.scrollBeyondLastLine=119]="scrollBeyondLastLine",iL[iL.scrollPredominantAxis=120]="scrollPredominantAxis",iL[iL.selectionClipboard=121]="selectionClipboard",iL[iL.selectionHighlight=122]="selectionHighlight",iL[iL.selectionHighlightMaxLength=123]="selectionHighlightMaxLength",iL[iL.selectionHighlightMultiline=124]="selectionHighlightMultiline",iL[iL.selectOnLineNumbers=125]="selectOnLineNumbers",iL[iL.showFoldingControls=126]="showFoldingControls",iL[iL.showUnused=127]="showUnused",iL[iL.snippetSuggestions=128]="snippetSuggestions",iL[iL.smartSelect=129]="smartSelect",iL[iL.smoothScrolling=130]="smoothScrolling",iL[iL.stickyScroll=131]="stickyScroll",iL[iL.stickyTabStops=132]="stickyTabStops",iL[iL.stopRenderingLineAfter=133]="stopRenderingLineAfter",iL[iL.suggest=134]="suggest",iL[iL.suggestFontSize=135]="suggestFontSize",iL[iL.suggestLineHeight=136]="suggestLineHeight",iL[iL.suggestOnTriggerCharacters=137]="suggestOnTriggerCharacters",iL[iL.suggestSelection=138]="suggestSelection",iL[iL.tabCompletion=139]="tabCompletion",iL[iL.tabIndex=140]="tabIndex",iL[iL.trimWhitespaceOnDelete=141]="trimWhitespaceOnDelete",iL[iL.unicodeHighlighting=142]="unicodeHighlighting",iL[iL.unusualLineTerminators=143]="unusualLineTerminators",iL[iL.useShadowDOM=144]="useShadowDOM",iL[iL.useTabStops=145]="useTabStops",iL[iL.wordBreak=146]="wordBreak",iL[iL.wordSegmenterLocales=147]="wordSegmenterLocales",iL[iL.wordSeparators=148]="wordSeparators",iL[iL.wordWrap=149]="wordWrap",iL[iL.wordWrapBreakAfterCharacters=150]="wordWrapBreakAfterCharacters",iL[iL.wordWrapBreakBeforeCharacters=151]="wordWrapBreakBeforeCharacters",iL[iL.wordWrapColumn=152]="wordWrapColumn",iL[iL.wordWrapOverride1=153]="wordWrapOverride1",iL[iL.wordWrapOverride2=154]="wordWrapOverride2",iL[iL.wrappingIndent=155]="wrappingIndent",iL[iL.wrappingStrategy=156]="wrappingStrategy",iL[iL.showDeprecated=157]="showDeprecated",iL[iL.inertialScroll=158]="inertialScroll",iL[iL.inlayHints=159]="inlayHints",iL[iL.wrapOnEscapedLineFeeds=160]="wrapOnEscapedLineFeeds",iL[iL.effectiveCursorStyle=161]="effectiveCursorStyle",iL[iL.editorClassName=162]="editorClassName",iL[iL.pixelRatio=163]="pixelRatio",iL[iL.tabFocusMode=164]="tabFocusMode",iL[iL.layoutInfo=165]="layoutInfo",iL[iL.wrappingInfo=166]="wrappingInfo",iL[iL.defaultColorDecorators=167]="defaultColorDecorators",iL[iL.colorDecoratorsActivatedOn=168]="colorDecoratorsActivatedOn",iL[iL.inlineCompletionsAccessibilityVerbose=169]="inlineCompletionsAccessibilityVerbose",iL[iL.effectiveEditContext=170]="effectiveEditContext",iL[iL.scrollOnMiddleClick=171]="scrollOnMiddleClick",iL[iL.effectiveAllowVariableFonts=172]="effectiveAllowVariableFonts",iL[iL.doubleClickSelectsBlock=173]="doubleClickSelectsBlock",(ix=oF||(oF={}))[ix.TextDefined=0]="TextDefined",ix[ix.LF=1]="LF",ix[ix.CRLF=2]="CRLF",(iN=oV||(oV={}))[iN.LF=0]="LF",iN[iN.CRLF=1]="CRLF",(iE=oD||(oD={}))[iE.Left=1]="Left",iE[iE.Center=2]="Center",iE[iE.Right=3]="Right",(iA=oq||(oq={}))[iA.Increase=0]="Increase",iA[iA.Decrease=1]="Decrease",(ik=o$||(o$={}))[ik.None=0]="None",ik[ik.Indent=1]="Indent",ik[ik.IndentOutdent=2]="IndentOutdent",ik[ik.Outdent=3]="Outdent",(iR=oK||(oK={}))[iR.Both=0]="Both",iR[iR.Right=1]="Right",iR[iR.Left=2]="Left",iR[iR.None=3]="None",(iT=oB||(oB={}))[iT.Type=1]="Type",iT[iT.Parameter=2]="Parameter",(iM=oU||(oU={}))[iM.Accepted=0]="Accepted",iM[iM.Rejected=1]="Rejected",iM[iM.Ignored=2]="Ignored",(iO=oj||(oj={}))[iO.Code=1]="Code",iO[iO.Label=2]="Label",(iI=oW||(oW={}))[iI.Automatic=0]="Automatic",iI[iI.Explicit=1]="Explicit",(iP=oz||(oz={}))[iP.DependsOnKbLayout=-1]="DependsOnKbLayout",iP[iP.Unknown=0]="Unknown",iP[iP.Backspace=1]="Backspace",iP[iP.Tab=2]="Tab",iP[iP.Enter=3]="Enter",iP[iP.Shift=4]="Shift",iP[iP.Ctrl=5]="Ctrl",iP[iP.Alt=6]="Alt",iP[iP.PauseBreak=7]="PauseBreak",iP[iP.CapsLock=8]="CapsLock",iP[iP.Escape=9]="Escape",iP[iP.Space=10]="Space",iP[iP.PageUp=11]="PageUp",iP[iP.PageDown=12]="PageDown",iP[iP.End=13]="End",iP[iP.Home=14]="Home",iP[iP.LeftArrow=15]="LeftArrow",iP[iP.UpArrow=16]="UpArrow",iP[iP.RightArrow=17]="RightArrow",iP[iP.DownArrow=18]="DownArrow",iP[iP.Insert=19]="Insert",iP[iP.Delete=20]="Delete",iP[iP.Digit0=21]="Digit0",iP[iP.Digit1=22]="Digit1",iP[iP.Digit2=23]="Digit2",iP[iP.Digit3=24]="Digit3",iP[iP.Digit4=25]="Digit4",iP[iP.Digit5=26]="Digit5",iP[iP.Digit6=27]="Digit6",iP[iP.Digit7=28]="Digit7",iP[iP.Digit8=29]="Digit8",iP[iP.Digit9=30]="Digit9",iP[iP.KeyA=31]="KeyA",iP[iP.KeyB=32]="KeyB",iP[iP.KeyC=33]="KeyC",iP[iP.KeyD=34]="KeyD",iP[iP.KeyE=35]="KeyE",iP[iP.KeyF=36]="KeyF",iP[iP.KeyG=37]="KeyG",iP[iP.KeyH=38]="KeyH",iP[iP.KeyI=39]="KeyI",iP[iP.KeyJ=40]="KeyJ",iP[iP.KeyK=41]="KeyK",iP[iP.KeyL=42]="KeyL",iP[iP.KeyM=43]="KeyM",iP[iP.KeyN=44]="KeyN",iP[iP.KeyO=45]="KeyO",iP[iP.KeyP=46]="KeyP",iP[iP.KeyQ=47]="KeyQ",iP[iP.KeyR=48]="KeyR",iP[iP.KeyS=49]="KeyS",iP[iP.KeyT=50]="KeyT",iP[iP.KeyU=51]="KeyU",iP[iP.KeyV=52]="KeyV",iP[iP.KeyW=53]="KeyW",iP[iP.KeyX=54]="KeyX",iP[iP.KeyY=55]="KeyY",iP[iP.KeyZ=56]="KeyZ",iP[iP.Meta=57]="Meta",iP[iP.ContextMenu=58]="ContextMenu",iP[iP.F1=59]="F1",iP[iP.F2=60]="F2",iP[iP.F3=61]="F3",iP[iP.F4=62]="F4",iP[iP.F5=63]="F5",iP[iP.F6=64]="F6",iP[iP.F7=65]="F7",iP[iP.F8=66]="F8",iP[iP.F9=67]="F9",iP[iP.F10=68]="F10",iP[iP.F11=69]="F11",iP[iP.F12=70]="F12",iP[iP.F13=71]="F13",iP[iP.F14=72]="F14",iP[iP.F15=73]="F15",iP[iP.F16=74]="F16",iP[iP.F17=75]="F17",iP[iP.F18=76]="F18",iP[iP.F19=77]="F19",iP[iP.F20=78]="F20",iP[iP.F21=79]="F21",iP[iP.F22=80]="F22",iP[iP.F23=81]="F23",iP[iP.F24=82]="F24",iP[iP.NumLock=83]="NumLock",iP[iP.ScrollLock=84]="ScrollLock",iP[iP.Semicolon=85]="Semicolon",iP[iP.Equal=86]="Equal",iP[iP.Comma=87]="Comma",iP[iP.Minus=88]="Minus",iP[iP.Period=89]="Period",iP[iP.Slash=90]="Slash",iP[iP.Backquote=91]="Backquote",iP[iP.BracketLeft=92]="BracketLeft",iP[iP.Backslash=93]="Backslash",iP[iP.BracketRight=94]="BracketRight",iP[iP.Quote=95]="Quote",iP[iP.OEM_8=96]="OEM_8",iP[iP.IntlBackslash=97]="IntlBackslash",iP[iP.Numpad0=98]="Numpad0",iP[iP.Numpad1=99]="Numpad1",iP[iP.Numpad2=100]="Numpad2",iP[iP.Numpad3=101]="Numpad3",iP[iP.Numpad4=102]="Numpad4",iP[iP.Numpad5=103]="Numpad5",iP[iP.Numpad6=104]="Numpad6",iP[iP.Numpad7=105]="Numpad7",iP[iP.Numpad8=106]="Numpad8",iP[iP.Numpad9=107]="Numpad9",iP[iP.NumpadMultiply=108]="NumpadMultiply",iP[iP.NumpadAdd=109]="NumpadAdd",iP[iP.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",iP[iP.NumpadSubtract=111]="NumpadSubtract",iP[iP.NumpadDecimal=112]="NumpadDecimal",iP[iP.NumpadDivide=113]="NumpadDivide",iP[iP.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",iP[iP.ABNT_C1=115]="ABNT_C1",iP[iP.ABNT_C2=116]="ABNT_C2",iP[iP.AudioVolumeMute=117]="AudioVolumeMute",iP[iP.AudioVolumeUp=118]="AudioVolumeUp",iP[iP.AudioVolumeDown=119]="AudioVolumeDown",iP[iP.BrowserSearch=120]="BrowserSearch",iP[iP.BrowserHome=121]="BrowserHome",iP[iP.BrowserBack=122]="BrowserBack",iP[iP.BrowserForward=123]="BrowserForward",iP[iP.MediaTrackNext=124]="MediaTrackNext",iP[iP.MediaTrackPrevious=125]="MediaTrackPrevious",iP[iP.MediaStop=126]="MediaStop",iP[iP.MediaPlayPause=127]="MediaPlayPause",iP[iP.LaunchMediaPlayer=128]="LaunchMediaPlayer",iP[iP.LaunchMail=129]="LaunchMail",iP[iP.LaunchApp2=130]="LaunchApp2",iP[iP.Clear=131]="Clear",iP[iP.MAX_VALUE=132]="MAX_VALUE",(iF=oH||(oH={}))[iF.Hint=1]="Hint",iF[iF.Info=2]="Info",iF[iF.Warning=4]="Warning",iF[iF.Error=8]="Error",(iV=oG||(oG={}))[iV.Unnecessary=1]="Unnecessary",iV[iV.Deprecated=2]="Deprecated",(iD=oJ||(oJ={}))[iD.Inline=1]="Inline",iD[iD.Gutter=2]="Gutter",(iq=oX||(oX={}))[iq.Normal=1]="Normal",iq[iq.Underlined=2]="Underlined",(i$=oQ||(oQ={}))[i$.UNKNOWN=0]="UNKNOWN",i$[i$.TEXTAREA=1]="TEXTAREA",i$[i$.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",i$[i$.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",i$[i$.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",i$[i$.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",i$[i$.CONTENT_TEXT=6]="CONTENT_TEXT",i$[i$.CONTENT_EMPTY=7]="CONTENT_EMPTY",i$[i$.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",i$[i$.CONTENT_WIDGET=9]="CONTENT_WIDGET",i$[i$.OVERVIEW_RULER=10]="OVERVIEW_RULER",i$[i$.SCROLLBAR=11]="SCROLLBAR",i$[i$.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",i$[i$.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR",(iK=oZ||(oZ={}))[iK.AIGenerated=1]="AIGenerated",(iB=oY||(oY={}))[iB.Invoke=0]="Invoke",iB[iB.Automatic=1]="Automatic",(iU=o1||(o1={}))[iU.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",iU[iU.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",iU[iU.TOP_CENTER=2]="TOP_CENTER",(ij=o0||(o0={}))[ij.Left=1]="Left",ij[ij.Center=2]="Center",ij[ij.Right=4]="Right",ij[ij.Full=7]="Full",(iW=o2||(o2={}))[iW.Word=0]="Word",iW[iW.Line=1]="Line",iW[iW.Suggest=2]="Suggest",(iz=o4||(o4={}))[iz.Left=0]="Left",iz[iz.Right=1]="Right",iz[iz.None=2]="None",iz[iz.LeftOfInjectedText=3]="LeftOfInjectedText",iz[iz.RightOfInjectedText=4]="RightOfInjectedText",(iH=o5||(o5={}))[iH.Off=0]="Off",iH[iH.On=1]="On",iH[iH.Relative=2]="Relative",iH[iH.Interval=3]="Interval",iH[iH.Custom=4]="Custom",(iG=o7||(o7={}))[iG.None=0]="None",iG[iG.Text=1]="Text",iG[iG.Blocks=2]="Blocks",(iJ=o9||(o9={}))[iJ.Smooth=0]="Smooth",iJ[iJ.Immediate=1]="Immediate",(iX=o6||(o6={}))[iX.Auto=1]="Auto",iX[iX.Hidden=2]="Hidden",iX[iX.Visible=3]="Visible",(iQ=o8||(o8={}))[iQ.LTR=0]="LTR",iQ[iQ.RTL=1]="RTL",(iZ=o3||(o3={})).Off="off",iZ.OnCode="onCode",iZ.On="on",(iY=ae||(ae={}))[iY.Invoke=1]="Invoke",iY[iY.TriggerCharacter=2]="TriggerCharacter",iY[iY.ContentChange=3]="ContentChange",(i1=at||(at={}))[i1.File=0]="File",i1[i1.Module=1]="Module",i1[i1.Namespace=2]="Namespace",i1[i1.Package=3]="Package",i1[i1.Class=4]="Class",i1[i1.Method=5]="Method",i1[i1.Property=6]="Property",i1[i1.Field=7]="Field",i1[i1.Constructor=8]="Constructor",i1[i1.Enum=9]="Enum",i1[i1.Interface=10]="Interface",i1[i1.Function=11]="Function",i1[i1.Variable=12]="Variable",i1[i1.Constant=13]="Constant",i1[i1.String=14]="String",i1[i1.Number=15]="Number",i1[i1.Boolean=16]="Boolean",i1[i1.Array=17]="Array",i1[i1.Object=18]="Object",i1[i1.Key=19]="Key",i1[i1.Null=20]="Null",i1[i1.EnumMember=21]="EnumMember",i1[i1.Struct=22]="Struct",i1[i1.Event=23]="Event",i1[i1.Operator=24]="Operator",i1[i1.TypeParameter=25]="TypeParameter",(i0=ar||(ar={}))[i0.Deprecated=1]="Deprecated",(i2=an||(an={}))[i2.LTR=0]="LTR",i2[i2.RTL=1]="RTL",(i4=ai||(ai={}))[i4.Hidden=0]="Hidden",i4[i4.Blink=1]="Blink",i4[i4.Smooth=2]="Smooth",i4[i4.Phase=3]="Phase",i4[i4.Expand=4]="Expand",i4[i4.Solid=5]="Solid",(i5=as||(as={}))[i5.Line=1]="Line",i5[i5.Block=2]="Block",i5[i5.Underline=3]="Underline",i5[i5.LineThin=4]="LineThin",i5[i5.BlockOutline=5]="BlockOutline",i5[i5.UnderlineThin=6]="UnderlineThin",(i7=ao||(ao={}))[i7.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",i7[i7.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",i7[i7.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",i7[i7.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter",(i9=aa||(aa={}))[i9.None=0]="None",i9[i9.Same=1]="Same",i9[i9.Indent=2]="Indent",i9[i9.DeepIndent=3]="DeepIndent";class tW{static{this.CtrlCmd=2048}static{this.Shift=1024}static{this.Alt=512}static{this.WinCtrl=256}static chord(e,t){return(e|(65535&t)<<16>>>0)>>>0}}class tz{constructor(e,t){this.uri=e,this.value=t}}class tH{static{this.defaultToKey=e=>e.toString()}constructor(e,t){if(this[al]="ResourceMap",e instanceof tH)this.map=new Map(e.map),this.toKey=t??tH.defaultToKey;else if(Array.isArray(e))for(let[r,n]of(this.map=new Map,this.toKey=t??tH.defaultToKey,e))this.set(r,n);else this.map=new Map,this.toKey=e??tH.defaultToKey}set(e,t){return this.map.set(this.toKey(e),new tz(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){for(let[r,n]of(void 0!==t&&(e=e.bind(t)),this.map))e(n.value,n.uri,this)}*values(){for(let e of this.map.values())yield e.value}*keys(){for(let e of this.map.values())yield e.uri}*entries(){for(let e of this.map.values())yield[e.uri,e.value]}*[(al=Symbol.toStringTag,Symbol.iterator)](){for(let[,e]of this.map)yield[e.uri,e.value]}}class tG{constructor(){this[au]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){let r=this._map.get(e);if(r)return 0!==t&&this.touch(r,t),r.value}set(e,t,r=0){let n=this._map.get(e);if(n)n.value=t,0!==r&&this.touch(n,r);else{switch(n={key:e,value:t,next:void 0,previous:void 0},r){case 0:case 2:default:this.addItemLast(n);break;case 1:this.addItemFirst(n)}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){let r=this._state,n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==r)throw Error("LinkedMap got modified during iteration.");n=n.next}}keys(){let e=this,t=this._state,r=this._head,n={[Symbol.iterator]:()=>n,[Symbol.dispose](){},next(){if(e._state!==t)throw Error("LinkedMap got modified during iteration.");if(!r)return{value:void 0,done:!0};{let e={value:r.key,done:!1};return r=r.next,e}}};return n}values(){let e=this,t=this._state,r=this._head,n={[Symbol.iterator]:()=>n,[Symbol.dispose](){},next(){if(e._state!==t)throw Error("LinkedMap got modified during iteration.");if(!r)return{value:void 0,done:!0};{let e={value:r.value,done:!1};return r=r.next,e}}};return n}entries(){let e=this,t=this._state,r=this._head,n={[Symbol.iterator]:()=>n,[Symbol.dispose](){},next(){if(e._state!==t)throw Error("LinkedMap got modified during iteration.");if(!r)return{value:void 0,done:!0};{let e={value:[r.key,r.value],done:!1};return r=r.next,e}}};return n}[(au=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._head,r=this.size;for(;t&&r>e;)this._map.delete(t.key),t=t.next,r--;this._head=t,this._size=r,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._tail,r=this.size;for(;t&&r>e;)this._map.delete(t.key),t=t.previous,r--;this._tail=t,this._size=r,t&&(t.next=void 0),this._state++}addItemFirst(e){if(this._head||this._tail)if(this._head)e.next=this._head,this._head.previous=e;else throw Error("Invalid list");else this._tail=e;this._head=e,this._state++}addItemLast(e){if(this._head||this._tail)if(this._tail)e.previous=this._tail,this._tail.next=e;else throw Error("Invalid list");else this._head=e;this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let t=e.next,r=e.previous;if(!t||!r)throw Error("Invalid list");t.previous=r,r.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw Error("Invalid list");if(1===t||2===t){if(1===t){if(e===this._head)return;let t=e.next,r=e.previous;e===this._tail?(r.next=void 0,this._tail=r):(t.previous=r,r.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(2===t){if(e===this._tail)return;let t=e.next,r=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=r,r.next=t),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((t,r)=>{e.push([r,t])}),e}fromJSON(e){for(let[t,r]of(this.clear(),e))this.set(t,r)}}class tJ extends tG{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class tX{constructor(){this.map=new Map}add(e,t){let r=this.map.get(e);r||(r=new Set,this.map.set(e,r)),r.add(t)}delete(e,t){let r=this.map.get(e);r&&(r.delete(t),0===r.size&&this.map.delete(e))}forEach(e,t){let r=this.map.get(e);r&&r.forEach(t)}}new class extends tJ{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}(10),Object.prototype.hasOwnProperty,(i6=ac||(ac={}))[i6.Left=1]="Left",i6[i6.Center=2]="Center",i6[i6.Right=4]="Right",i6[i6.Full=7]="Full",(i8=ah||(ah={}))[i8.Left=1]="Left",i8[i8.Center=2]="Center",i8[i8.Right=3]="Right",(i3=ad||(ad={}))[i3.LTR=0]="LTR",i3[i3.RTL=1]="RTL",(se=am||(am={}))[se.Both=0]="Both",se[se.Right=1]="Right",se[se.Left=2]="Left",se[se.None=3]="None";class tQ{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){let t,r=e.length;do{var n;if(this._prevMatchStartIndex+this._prevMatchLength===r||!(t=this._searchRegex.exec(e)))break;let i=t.index,s=t[0].length;if(i===this._prevMatchStartIndex&&s===this._prevMatchLength){if(0===s){(function(e,t,r){let n=e.charCodeAt(r);if(eC(n)&&r+1<t){let t=e.charCodeAt(r+1);if(e_(t))return eS(n,t)}return n})(e,r,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}break}if(this._prevMatchStartIndex=i,this._prevMatchLength=s,!this._wordSeparators||(n=this._wordSeparators,function(e,t,r,n){if(0===r)return!0;let i=t.charCodeAt(r-1);if(0!==e.get(i)||13===i||10===i)return!0;if(n>0){let n=t.charCodeAt(r);if(0!==e.get(n))return!0}return!1}(n,e,i,s)&&function(e,t,r,n,i){if(n+i===r)return!0;let s=t.charCodeAt(n+i);if(0!==e.get(s)||13===s||10===s)return!0;if(i>0){let r=t.charCodeAt(n+i-1);if(0!==e.get(r))return!0}return!1}(n,e,r,i,s)))return t}while(t)return null}}let tZ=function(e=""){let t="(-?\\d*\\.\\d\\w*)|([^";for(let r of"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?")e.indexOf(r)>=0||(t+="\\"+r);return RegExp(t+="\\s]+)","g")}();function tY(e){let t=tZ;if(e&&e instanceof RegExp)if(e.global)t=e;else{let r="g";e.ignoreCase&&(r+="i"),e.multiline&&(r+="m"),e.unicode&&(r+="u"),t=new RegExp(e.source,r)}return t.lastIndex=0,t}let t1=new M;function t0(e,t,r,n,i){if(t=tY(t),i||(i=oo.first(t1)),r.length>i.maxLen){let s=e-i.maxLen/2;return s<0?s=0:n+=s,r=r.substring(s,e+i.maxLen/2),t0(e,t,r,n,i)}let s=Date.now(),o=e-1-n,a=-1,l=null;for(let e=1;!(Date.now()-s>=i.timeBudget);e++){let n=o-i.windowSize*e;t.lastIndex=Math.max(0,n);let s=function(e,t,r,n){let i;for(;i=e.exec(t);){let t=i.index||0;if(t<=r&&e.lastIndex>=r)return i;if(n>0&&t>n)break}return null}(t,r,o,a);if(!s&&l||(l=s,n<=0))break;a=n}if(l){let e={word:l[0],startColumn:n+1+l.index,endColumn:n+1+l.index+l[0].length};return t.lastIndex=0,e}return null}t1.unshift({maxLen:1e3,windowSize:15,timeBudget:150});class t2{static computeUnicodeHighlights(e,t,r){var n;let i,s=r?r.startLineNumber:1,o=r?r.endLineNumber:e.getLineCount(),a=new t4(t),l=a.getCandidateCodePoints(),u=new tQ(null,"allNonBasicAscii"===l?RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):RegExp(`${(n=Array.from(l),`[${n.map(e=>String.fromCodePoint(e)).join("").replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}]`)}`,"g")),c=[],h=!1,d=0,m=0,g=0;e:for(let t=s;t<=o;t++){let r=e.getLineContent(t),n=r.length;u.reset(0);do if(i=u.next(r)){let e=i.index,s=i.index+i[0].length;e>0&&eC(r.charCodeAt(e-1))&&e--,s+1<n&&eC(r.charCodeAt(s-1))&&s++;let o=r.substring(e,s),l=t0(e+1,tZ,r,0);l&&l.endColumn<=e+1&&(l=null);let u=a.shouldHighlightNonBasicASCII(o,l?l.word:null);if(0!==u){if(3===u?d++:2===u?m++:1===u?g++:function(e="Unreachable"){throw Error(e)}(),c.length>=1e3){h=!0;break e}c.push(new eZ(t,e+1,t,s+1))}}while(i)}return{ranges:c,hasMore:h,ambiguousCharacterCount:d,invisibleCharacterCount:m,nonBasicAsciiCharacterCount:g}}static computeUnicodeHighlightReason(e,t){let r=new t4(t);switch(r.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{let n=e.codePointAt(0),i=r.ambiguousCharacters.getPrimaryConfusable(n),s=eN.getLocales().filter(e=>!eN.getInstance(new Set([...t.allowedLocales,e])).isAmbiguous(n));return{kind:0,confusableWith:String.fromCodePoint(i),notAmbiguousInLocales:s}}case 1:return{kind:2}}}}class t4{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=eN.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";let e=new Set;if(this.options.invisibleCharacters)for(let t of eE.codePoints)t5(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(let t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(let t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){let r=e.codePointAt(0);if(this.allowedCodePoints.has(r))return 0;if(this.options.nonBasicASCII)return 1;let n=!1,i=!1;if(t)for(let e of t){let t=e.codePointAt(0),r=eL.test(e);n=n||r,r||this.ambiguousCharacters.isAmbiguous(t)||eE.isInvisibleCharacter(t)||(i=!0)}return!n&&i?0:this.options.invisibleCharacters&&!t5(e)&&eE.isInvisibleCharacter(r)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(r)?3:0}}function t5(e){return" "===e||"\n"===e||" "===e}class t7{constructor(e,t,r){this.changes=e,this.moves=t,this.hitTimeout=r}}class t9{constructor(e,t){this.lineRangeMapping=e,this.changes=t}}function t6(e,t){return(r,n)=>t(e(r),e(n))}(st=ag||(ag={})).isLessThan=function(e){return e<0},st.isLessThanOrEqual=function(e){return e<=0},st.isGreaterThan=function(e){return e>0},st.isNeitherLessOrGreaterThan=function(e){return 0===e},st.greaterThan=1,st.lessThan=-1,st.neitherLessOrGreaterThan=0;let t8=(e,t)=>e-t;class t3{static{this.empty=new t3(e=>{})}constructor(e){this.iterate=e}toArray(){let e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new t3(t=>this.iterate(r=>!e(r)||t(r)))}map(e){return new t3(t=>this.iterate(r=>t(e(r))))}findLast(e){let t;return this.iterate(r=>(e(r)&&(t=r),!0)),t}findLastMaxBy(e){let t,r=!0;return this.iterate(n=>((r||ag.isGreaterThan(e(n,t)))&&(r=!1,t=n),!0)),t}}class re{static fromTo(e,t){return new re(e,t)}static addRange(e,t){let r=0;for(;r<t.length&&t[r].endExclusive<e.start;)r++;let n=r;for(;n<t.length&&t[n].start<=e.endExclusive;)n++;if(r===n)t.splice(r,0,e);else{let i=Math.min(e.start,t[r].start),s=Math.max(e.endExclusive,t[n-1].endExclusive);t.splice(r,n-r,new re(i,s))}}static tryCreate(e,t){if(!(e>t))return new re(e,t)}static ofLength(e){return new re(0,e)}static ofStartAndLength(e,t){return new re(e,e+t)}static emptyAt(e){return new re(e,e)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new S(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new re(this.start+e,this.endExclusive+e)}deltaStart(e){return new re(this.start+e,this.endExclusive)}deltaEnd(e){return new re(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(e){return this.start===e.start&&this.endExclusive===e.endExclusive}containsRange(e){return this.start<=e.start&&e.endExclusive<=this.endExclusive}contains(e){return this.start<=e&&e<this.endExclusive}join(e){return new re(Math.min(this.start,e.start),Math.max(this.endExclusive,e.endExclusive))}intersect(e){let t=Math.max(this.start,e.start),r=Math.min(this.endExclusive,e.endExclusive);if(t<=r)return new re(t,r)}intersectionLength(e){let t=Math.max(this.start,e.start);return Math.max(0,Math.min(this.endExclusive,e.endExclusive)-t)}intersects(e){return Math.max(this.start,e.start)<Math.min(this.endExclusive,e.endExclusive)}intersectsOrTouches(e){return Math.max(this.start,e.start)<=Math.min(this.endExclusive,e.endExclusive)}isBefore(e){return this.endExclusive<=e.start}isAfter(e){return this.start>=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new S(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new S(`Invalid clipping range: ${this.toString()}`);return e<this.start?this.endExclusive-(this.start-e)%this.length:e>=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;t<this.endExclusive;t++)e(t)}joinRightTouching(e){if(this.endExclusive!==e.start)throw new S(`Invalid join: ${this.toString()} and ${e.toString()}`);return new re(this.start,e.endExclusive)}withMargin(e,t){return void 0===t&&(t=e),new re(this.start-e,this.endExclusive+t)}}function rt(e,t){let r=rr(e,t);return -1===r?void 0:e[r]}function rr(e,t,r=0,n=e.length){let i=r,s=n;for(;i<s;){let r=Math.floor((i+s)/2);t(e[r])?i=r+1:s=r}return i-1}function rn(e,t,r=0,n=e.length){let i=r,s=n;for(;i<s;){let r=Math.floor((i+s)/2);t(e[r])?s=r:i=r+1}return i}class ri{static{this.assertInvariants=!1}constructor(e){this._array=e,this._findLastMonotonousLastIdx=0}findLastMonotonous(e){if(ri.assertInvariants){if(this._prevFindLastPredicate){for(let t of this._array)if(this._prevFindLastPredicate(t)&&!e(t))throw Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=e}let t=rr(this._array,e,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=t+1,-1===t?void 0:this._array[t]}}class rs{static ofLength(e,t){return new rs(e,e+t)}static fromRange(e){return new rs(e.startLineNumber,e.endLineNumber)}static fromRangeInclusive(e){return new rs(e.startLineNumber,e.endLineNumber+1)}static{this.compareByStart=t6(e=>e.startLineNumber,t8)}static joinMany(e){if(0===e.length)return[];let t=new ro(e[0].slice());for(let r=1;r<e.length;r++)t=t.getUnion(new ro(e[r].slice()));return t.ranges}static join(e){if(0===e.length)throw new S("lineRanges cannot be empty");let t=e[0].startLineNumber,r=e[0].endLineNumberExclusive;for(let n=1;n<e.length;n++)t=Math.min(t,e[n].startLineNumber),r=Math.max(r,e[n].endLineNumberExclusive);return new rs(t,r)}static deserialize(e){return new rs(e[0],e[1])}constructor(e,t){if(e>t)throw new S(`startLineNumber ${e} cannot be after endLineNumberExclusive ${t}`);this.startLineNumber=e,this.endLineNumberExclusive=t}contains(e){return this.startLineNumber<=e&&e<this.endLineNumberExclusive}get isEmpty(){return this.startLineNumber===this.endLineNumberExclusive}delta(e){return new rs(this.startLineNumber+e,this.endLineNumberExclusive+e)}deltaLength(e){return new rs(this.startLineNumber,this.endLineNumberExclusive+e)}get length(){return this.endLineNumberExclusive-this.startLineNumber}join(e){return new rs(Math.min(this.startLineNumber,e.startLineNumber),Math.max(this.endLineNumberExclusive,e.endLineNumberExclusive))}toString(){return`[${this.startLineNumber},${this.endLineNumberExclusive})`}intersect(e){let t=Math.max(this.startLineNumber,e.startLineNumber),r=Math.min(this.endLineNumberExclusive,e.endLineNumberExclusive);if(t<=r)return new rs(t,r)}intersectsStrict(e){return this.startLineNumber<e.endLineNumberExclusive&&e.startLineNumber<this.endLineNumberExclusive}intersectsOrTouches(e){return this.startLineNumber<=e.endLineNumberExclusive&&e.startLineNumber<=this.endLineNumberExclusive}equals(e){return this.startLineNumber===e.startLineNumber&&this.endLineNumberExclusive===e.endLineNumberExclusive}toInclusiveRange(){return this.isEmpty?null:new eZ(this.startLineNumber,1,this.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER)}toExclusiveRange(){return new eZ(this.startLineNumber,1,this.endLineNumberExclusive,1)}mapToLineArray(e){let t=[];for(let r=this.startLineNumber;r<this.endLineNumberExclusive;r++)t.push(e(r));return t}forEach(e){for(let t=this.startLineNumber;t<this.endLineNumberExclusive;t++)e(t)}serialize(){return[this.startLineNumber,this.endLineNumberExclusive]}toOffsetRange(){return new re(this.startLineNumber-1,this.endLineNumberExclusive-1)}addMargin(e,t){return new rs(this.startLineNumber-e,this.endLineNumberExclusive+t)}}class ro{constructor(e=[]){this._normalizedRanges=e}get ranges(){return this._normalizedRanges}addRange(e){if(0===e.length)return;let t=rn(this._normalizedRanges,t=>t.endLineNumberExclusive>=e.startLineNumber),r=rr(this._normalizedRanges,t=>t.startLineNumber<=e.endLineNumberExclusive)+1;if(t===r)this._normalizedRanges.splice(t,0,e);else if(t===r-1){let r=this._normalizedRanges[t];this._normalizedRanges[t]=r.join(e)}else{let n=this._normalizedRanges[t].join(this._normalizedRanges[r-1]).join(e);this._normalizedRanges.splice(t,r-t,n)}}contains(e){let t=rt(this._normalizedRanges,t=>t.startLineNumber<=e);return!!t&&t.endLineNumberExclusive>e}intersects(e){let t=rt(this._normalizedRanges,t=>t.startLineNumber<e.endLineNumberExclusive);return!!t&&t.endLineNumberExclusive>e.startLineNumber}getUnion(e){if(0===this._normalizedRanges.length)return e;if(0===e._normalizedRanges.length)return this;let t=[],r=0,n=0,i=null;for(;r<this._normalizedRanges.length||n<e._normalizedRanges.length;){let s=null;if(r<this._normalizedRanges.length&&n<e._normalizedRanges.length){let t=this._normalizedRanges[r],i=e._normalizedRanges[n];t.startLineNumber<i.startLineNumber?(s=t,r++):(s=i,n++)}else r<this._normalizedRanges.length?(s=this._normalizedRanges[r],r++):(s=e._normalizedRanges[n],n++);null===i?i=s:i.endLineNumberExclusive>=s.startLineNumber?i=new rs(i.startLineNumber,Math.max(i.endLineNumberExclusive,s.endLineNumberExclusive)):(t.push(i),i=s)}return null!==i&&t.push(i),new ro(t)}subtractFrom(e){let t=rn(this._normalizedRanges,t=>t.endLineNumberExclusive>=e.startLineNumber),r=rr(this._normalizedRanges,t=>t.startLineNumber<=e.endLineNumberExclusive)+1;if(t===r)return new ro([e]);let n=[],i=e.startLineNumber;for(let e=t;e<r;e++){let t=this._normalizedRanges[e];t.startLineNumber>i&&n.push(new rs(i,t.startLineNumber)),i=t.endLineNumberExclusive}return i<e.endLineNumberExclusive&&n.push(new rs(i,e.endLineNumberExclusive)),new ro(n)}toString(){return this._normalizedRanges.map(e=>e.toString()).join(", ")}getIntersection(e){let t=[],r=0,n=0;for(;r<this._normalizedRanges.length&&n<e._normalizedRanges.length;){let i=this._normalizedRanges[r],s=e._normalizedRanges[n],o=i.intersect(s);o&&!o.isEmpty&&t.push(o),i.endLineNumberExclusive<s.endLineNumberExclusive?r++:n++}return new ro(t)}getWithDelta(e){return new ro(this._normalizedRanges.map(t=>t.delta(e)))}}class ra{static{this.zero=new ra(0,0)}static betweenPositions(e,t){return e.lineNumber===t.lineNumber?new ra(0,t.column-e.column):new ra(t.lineNumber-e.lineNumber,t.column-1)}static fromPosition(e){return new ra(e.lineNumber-1,e.column-1)}static ofRange(e){return ra.betweenPositions(e.getStartPosition(),e.getEndPosition())}static ofText(e){let t=0,r=0;for(let n of e)"\n"===n?(t++,r=0):r++;return new ra(t,r)}constructor(e,t){this.lineCount=e,this.columnCount=t}isGreaterThanOrEqualTo(e){return this.lineCount!==e.lineCount?this.lineCount>e.lineCount:this.columnCount>=e.columnCount}add(e){return 0===e.lineCount?new ra(this.lineCount,this.columnCount+e.columnCount):new ra(this.lineCount+e.lineCount,e.columnCount)}createRange(e){return 0===this.lineCount?new eZ(e.lineNumber,e.column,e.lineNumber,e.column+this.columnCount):new eZ(e.lineNumber,e.column,e.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new eZ(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return rs.ofLength(1,this.lineCount+1)}addToPosition(e){return 0===this.lineCount?new eQ(e.lineNumber,e.column+this.columnCount):new eQ(e.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}}class rl{getOffsetRange(e){return new re(this.getOffset(e.getStartPosition()),this.getOffset(e.getEndPosition()))}getRange(e){return eZ.fromPositions(this.getPosition(e.start),this.getPosition(e.endExclusive))}getStringReplacement(e){return new ru.deps.StringReplacement(this.getOffsetRange(e.range),e.text)}getTextReplacement(e){return new ru.deps.TextReplacement(this.getRange(e.replaceRange),e.newText)}getTextEdit(e){let t=e.replacements.map(e=>this.getTextReplacement(e));return new ru.deps.TextEdit(t)}}class ru{static{this._deps=void 0}static get deps(){if(!this._deps)throw Error("Dependencies not set. Call _setDependencies first.");return this._deps}}class rc extends rl{constructor(e){super(),this.text=e}get lineStartOffsetByLineIdx(){return this._lineStartOffsetByLineIdx||this._computeLineOffsets(),this._lineStartOffsetByLineIdx}get lineEndOffsetByLineIdx(){return this._lineEndOffsetByLineIdx||this._computeLineOffsets(),this._lineEndOffsetByLineIdx}_computeLineOffsets(){this._lineStartOffsetByLineIdx=[],this._lineEndOffsetByLineIdx=[],this._lineStartOffsetByLineIdx.push(0);for(let e=0;e<this.text.length;e++)"\n"===this.text.charAt(e)&&(this._lineStartOffsetByLineIdx.push(e+1),e>0&&"\r"===this.text.charAt(e-1)?this._lineEndOffsetByLineIdx.push(e-1):this._lineEndOffsetByLineIdx.push(e));this._lineEndOffsetByLineIdx.push(this.text.length)}getOffset(e){let t=this._validatePosition(e);return this.lineStartOffsetByLineIdx[t.lineNumber-1]+t.column-1}_validatePosition(e){if(e.lineNumber<1)return new eQ(1,1);let t=this.textLength.lineCount+1;if(e.lineNumber>t){let e=this.getLineLength(t);return new eQ(t,e+1)}if(e.column<1)return new eQ(e.lineNumber,1);let r=this.getLineLength(e.lineNumber);return e.column-1>r?new eQ(e.lineNumber,r+1):e}getPosition(e){let t=rr(this.lineStartOffsetByLineIdx,t=>t<=e),r=e-this.lineStartOffsetByLineIdx[t]+1;return new eQ(t+1,r)}get textLength(){let e=this.lineStartOffsetByLineIdx.length-1;return new ru.deps.TextLength(e,this.text.length-this.lineStartOffsetByLineIdx[e])}getLineLength(e){return this.lineEndOffsetByLineIdx[e-1]-this.lineStartOffsetByLineIdx[e-1]}}class rh{constructor(){this._transformer=void 0}get endPositionExclusive(){return this.length.addToPosition(new eQ(1,1))}get lineRange(){return this.length.toLineRange()}getValue(){return this.getValueOfRange(this.length.toRange())}getValueOfOffsetRange(e){return this.getValueOfRange(this.getTransformer().getRange(e))}getLineLength(e){return this.getValueOfRange(new eZ(e,1,e,Number.MAX_SAFE_INTEGER)).length}getTransformer(){return this._transformer||(this._transformer=new rc(this.getValue())),this._transformer}getLineAt(e){return this.getValueOfRange(new eZ(e,1,e,Number.MAX_SAFE_INTEGER))}}class rd extends rh{constructor(e,t){!function(e,t="unexpected state"){if(!e)throw"string"==typeof t?new S(`Assertion Failed: ${t}`):t}(t>=1),super(),this._getLineContent=e,this._lineCount=t}getValueOfRange(e){if(e.startLineNumber===e.endLineNumber)return this._getLineContent(e.startLineNumber).substring(e.startColumn-1,e.endColumn-1);let t=this._getLineContent(e.startLineNumber).substring(e.startColumn-1);for(let r=e.startLineNumber+1;r<e.endLineNumber;r++)t+="\n"+this._getLineContent(r);return t+("\n"+this._getLineContent(e.endLineNumber).substring(0,e.endColumn-1))}getLineLength(e){return this._getLineContent(e).length}get length(){let e=this._getLineContent(this._lineCount);return new ra(this._lineCount-1,e.length)}}class rm extends rd{constructor(e){super(t=>e[t-1],e.length)}}class rg extends rh{constructor(e){super(),this.value=e,this._t=new rc(this.value)}getValueOfRange(e){return this._t.getOffsetRange(e).substring(this.value)}get length(){return this._t.textLength}getTransformer(){return this._t}}class rf{static fromStringEdit(e,t){return new rf(e.replacements.map(e=>rp.fromStringReplacement(e,t)))}static fromParallelReplacementsUnsorted(e){return new rf(e.slice().sort(t6(e=>e.range,eZ.compareRangesUsingStarts)))}constructor(e){this.replacements=e,L(()=>x(e,(e,t)=>e.range.getEndPosition().isBeforeOrEqual(t.range.getStartPosition())))}mapPosition(e){let t=0,r=0,n=0;for(let i of this.replacements){let s=i.range.getStartPosition();if(e.isBeforeOrEqual(s))break;let o=i.range.getEndPosition(),a=ra.ofText(i.text);if(e.isBefore(o)){let e=new eQ(s.lineNumber+t,s.column+(s.lineNumber+t===r?n:0)),i=a.addToPosition(e);return rb(e,i)}s.lineNumber+t!==r&&(n=0),t+=a.lineCount-(i.range.endLineNumber-i.range.startLineNumber),0===a.lineCount?o.lineNumber!==s.lineNumber?n+=a.columnCount-(o.column-1):n+=a.columnCount-(o.column-s.column):n=a.columnCount,r=o.lineNumber+t}return new eQ(e.lineNumber+t,e.column+(e.lineNumber+t===r?n:0))}mapRange(e){var t,r;return rb((t=this.mapPosition(e.getStartPosition()))instanceof eQ?t:t.getStartPosition(),(r=this.mapPosition(e.getEndPosition()))instanceof eQ?r:r.getEndPosition())}apply(e){let t="",r=new eQ(1,1);for(let n of this.replacements){let i=n.range,s=i.getStartPosition(),o=i.getEndPosition(),a=rb(r,s);a.isEmpty()||(t+=e.getValueOfRange(a)),t+=n.text,r=o}let n=rb(r,e.endPositionExclusive);return n.isEmpty()||(t+=e.getValueOfRange(n)),t}applyToString(e){let t=new rg(e);return this.apply(t)}getNewRanges(){let e=[],t=0,r=0,n=0;for(let i of this.replacements){let s=ra.ofText(i.text),o=eQ.lift({lineNumber:i.range.startLineNumber+r,column:i.range.startColumn+(i.range.startLineNumber===t?n:0)}),a=s.createRange(o);e.push(a),r=a.endLineNumber-i.range.endLineNumber,n=a.endColumn-i.range.endColumn,t=i.range.endLineNumber}return e}toReplacement(e){if(0===this.replacements.length)throw new S;if(1===this.replacements.length)return this.replacements[0];let t=this.replacements[0].range.getStartPosition(),r=this.replacements[this.replacements.length-1].range.getEndPosition(),n="";for(let t=0;t<this.replacements.length;t++){let r=this.replacements[t];if(n+=r.text,t<this.replacements.length-1){let i=this.replacements[t+1],s=eZ.fromPositions(r.range.getEndPosition(),i.range.getStartPosition());n+=e.getValueOfRange(s)}}return new rp(eZ.fromPositions(t,r),n)}toString(e){return void 0===e?this.replacements.map(e=>e.toString()).join("\n"):"string"==typeof e?this.toString(new rg(e)):0===this.replacements.length?"":this.replacements.map(t=>{let r=e.getValueOfRange(t.range),n=eZ.fromPositions(new eQ(Math.max(1,t.range.startLineNumber-1),1),t.range.getStartPosition()),i=e.getValueOfRange(n);i.length>10&&(i="..."+i.substring(i.length-10));let s=eZ.fromPositions(t.range.getEndPosition(),new eQ(t.range.endLineNumber+1,1)),o=e.getValueOfRange(s);o.length>10&&(o=o.substring(0,10)+"...");let a=r;if(a.length>10){let e=Math.floor(5);a=a.substring(0,e)+"..."+a.substring(a.length-e)}let l=t.text;if(l.length>10){let e=Math.floor(5);l=l.substring(0,e)+"..."+l.substring(l.length-e)}return 0===a.length?`${i}\u{2770}${l}\u{2771}${o}`:`${i}\u{2770}${a}\u{21A6}${l}\u{2771}${o}`}).join("\n")}}class rp{static joinReplacements(e,t){if(0===e.length)throw new S;if(1===e.length)return e[0];let r=e[0].range.getStartPosition(),n=e[e.length-1].range.getEndPosition(),i="";for(let r=0;r<e.length;r++){let n=e[r];if(i+=n.text,r<e.length-1){let s=e[r+1],o=eZ.fromPositions(n.range.getEndPosition(),s.range.getStartPosition());i+=t.getValueOfRange(o)}}return new rp(eZ.fromPositions(r,n),i)}static fromStringReplacement(e,t){return new rp(t.getTransformer().getRange(e.replaceRange),e.newText)}static delete(e){return new rp(e,"")}constructor(e,t){this.range=e,this.text=t}get isEmpty(){return this.range.isEmpty()&&0===this.text.length}static equals(e,t){return e.range.equalsRange(t.range)&&e.text===t.text}equals(e){return rp.equals(this,e)}removeCommonPrefixAndSuffix(e){return this.removeCommonPrefix(e).removeCommonSuffix(e)}removeCommonPrefix(e){let t=e.getValueOfRange(this.range).replaceAll("\r\n","\n"),r=this.text.replaceAll("\r\n","\n"),n=ev(t,r),i=ra.ofText(t.substring(0,n)).addToPosition(this.range.getStartPosition()),s=r.substring(n);return new rp(eZ.fromPositions(i,this.range.getEndPosition()),s)}removeCommonSuffix(e){let t=e.getValueOfRange(this.range).replaceAll("\r\n","\n"),r=this.text.replaceAll("\r\n","\n"),n=ew(t,r),i=ra.ofText(t.substring(0,t.length-n)).addToPosition(this.range.getStartPosition()),s=r.substring(0,r.length-n);return new rp(eZ.fromPositions(this.range.getStartPosition(),i),s)}toString(){let e=this.range.getStartPosition(),t=this.range.getEndPosition();return`(${e.lineNumber},${e.column} -> ${t.lineNumber},${t.column}): "${this.text}"`}}function rb(e,t){if(e.lineNumber===t.lineNumber&&e.column===Number.MAX_SAFE_INTEGER)return eZ.fromPositions(t,t);if(!e.isBeforeOrEqual(t))throw new S("start must be before end");return new eZ(e.lineNumber,e.column,t.lineNumber,t.column)}class ry{static inverse(e,t,r){let n=[],i=1,s=1;for(let t of e){let e=new ry(new rs(i,t.original.startLineNumber),new rs(s,t.modified.startLineNumber));e.modified.isEmpty||n.push(e),i=t.original.endLineNumberExclusive,s=t.modified.endLineNumberExclusive}let o=new ry(new rs(i,t+1),new rs(s,r+1));return o.modified.isEmpty||n.push(o),n}static clip(e,t,r){let n=[];for(let i of e){let e=i.original.intersect(t),s=i.modified.intersect(r);e&&!e.isEmpty&&s&&!s.isEmpty&&n.push(new ry(e,s))}return n}constructor(e,t){this.original=e,this.modified=t}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new ry(this.modified,this.original)}join(e){return new ry(this.original.join(e.original),this.modified.join(e.modified))}toRangeMapping(){let e=this.original.toInclusiveRange(),t=this.modified.toInclusiveRange();if(e&&t)return new r_(e,t);if(1!==this.original.startLineNumber&&1!==this.modified.startLineNumber)return new r_(new eZ(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new eZ(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER));if(1!==this.modified.startLineNumber||1!==this.original.startLineNumber)throw new S("not a valid diff");return new r_(new eZ(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new eZ(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}toRangeMapping2(e,t){if(rw(this.original.endLineNumberExclusive,e)&&rw(this.modified.endLineNumberExclusive,t))return new r_(new eZ(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new eZ(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new r_(eZ.fromPositions(new eQ(this.original.startLineNumber,1),rv(new eQ(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),eZ.fromPositions(new eQ(this.modified.startLineNumber,1),rv(new eQ(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new r_(eZ.fromPositions(rv(new eQ(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),e),rv(new eQ(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),eZ.fromPositions(rv(new eQ(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),t),rv(new eQ(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));throw new S}}function rv(e,t){if(e.lineNumber<1)return new eQ(1,1);if(e.lineNumber>t.length)return new eQ(t.length,t[t.length-1].length+1);let r=t[e.lineNumber-1];return e.column>r.length+1?new eQ(e.lineNumber,r.length+1):e}function rw(e,t){return e>=1&&e<=t.length}class rC extends ry{static fromRangeMappings(e){return new rC(rs.join(e.map(e=>rs.fromRangeInclusive(e.originalRange))),rs.join(e.map(e=>rs.fromRangeInclusive(e.modifiedRange))),e)}constructor(e,t,r){super(e,t),this.innerChanges=r}flip(){return new rC(this.modified,this.original,this.innerChanges?.map(e=>e.flip()))}withInnerChangesFromLineRanges(){return new rC(this.original,this.modified,[this.toRangeMapping()])}}class r_{static fromEdit(e){let t=e.getNewRanges();return e.replacements.map((e,r)=>new r_(e.range,t[r]))}static assertSorted(e){for(let t=1;t<e.length;t++){let r=e[t-1],n=e[t];if(!(r.originalRange.getEndPosition().isBeforeOrEqual(n.originalRange.getStartPosition())&&r.modifiedRange.getEndPosition().isBeforeOrEqual(n.modifiedRange.getStartPosition())))throw new S("Range mappings must be sorted")}}constructor(e,t){this.originalRange=e,this.modifiedRange=t}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}flip(){return new r_(this.modifiedRange,this.originalRange)}toTextEdit(e){let t=e.getValueOfRange(this.modifiedRange);return new rp(this.originalRange,t)}}function rS(e,t,r,n=!1){let i=[];for(let n of function*(e,t){let r,n;for(let i of e)void 0!==n&&t(n,i)?r.push(i):(r&&(yield r),r=[i]),n=i;r&&(yield r)}(e.map(e=>{var n,i,s;let o,a;return n=e,i=t,s=r,o=0,a=0,1===n.modifiedRange.endColumn&&1===n.originalRange.endColumn&&n.originalRange.startLineNumber+o<=n.originalRange.endLineNumber&&n.modifiedRange.startLineNumber+o<=n.modifiedRange.endLineNumber&&(a=-1),n.modifiedRange.startColumn-1>=s.getLineLength(n.modifiedRange.startLineNumber)&&n.originalRange.startColumn-1>=i.getLineLength(n.originalRange.startLineNumber)&&n.originalRange.startLineNumber<=n.originalRange.endLineNumber+a&&n.modifiedRange.startLineNumber<=n.modifiedRange.endLineNumber+a&&(o=1),new rC(new rs(n.originalRange.startLineNumber+o,n.originalRange.endLineNumber+1+a),new rs(n.modifiedRange.startLineNumber+o,n.modifiedRange.endLineNumber+1+a),[n])}),(e,t)=>e.original.intersectsOrTouches(t.original)||e.modified.intersectsOrTouches(t.modified))){let e=n[0],t=n[n.length-1];i.push(new rC(e.original.join(t.original),e.modified.join(t.modified),n.map(e=>e.innerChanges[0])))}return L(()=>(!!n||!(i.length>0)||i[0].modified.startLineNumber===i[0].original.startLineNumber&&r.length.lineCount-i[i.length-1].modified.endLineNumberExclusive==t.length.lineCount-i[i.length-1].original.endLineNumberExclusive)&&x(i,(e,t)=>t.original.startLineNumber-e.original.endLineNumberExclusive==t.modified.startLineNumber-e.modified.endLineNumberExclusive&&e.original.endLineNumberExclusive<t.original.startLineNumber&&e.modified.endLineNumberExclusive<t.modified.startLineNumber)),i}class rL{computeDiff(e,t,r){let n=new rR(e,t,{maxComputationTime:r.maxComputationTimeMs,shouldIgnoreTrimWhitespace:r.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),i=[],s=null;for(let e of n.changes){let t=new rC(0===e.originalEndLineNumber?new rs(e.originalStartLineNumber+1,e.originalStartLineNumber+1):new rs(e.originalStartLineNumber,e.originalEndLineNumber+1),0===e.modifiedEndLineNumber?new rs(e.modifiedStartLineNumber+1,e.modifiedStartLineNumber+1):new rs(e.modifiedStartLineNumber,e.modifiedEndLineNumber+1),e.charChanges?.map(e=>new r_(new eZ(e.originalStartLineNumber,e.originalStartColumn,e.originalEndLineNumber,e.originalEndColumn),new eZ(e.modifiedStartLineNumber,e.modifiedStartColumn,e.modifiedEndLineNumber,e.modifiedEndColumn))));s&&(s.modified.endLineNumberExclusive===t.modified.startLineNumber||s.original.endLineNumberExclusive===t.original.startLineNumber)&&(t=new rC(s.original.join(t.original),s.modified.join(t.modified),s.innerChanges&&t.innerChanges?s.innerChanges.concat(t.innerChanges):void 0),i.pop()),i.push(t),s=t}return L(()=>x(i,(e,t)=>t.original.startLineNumber-e.original.endLineNumberExclusive==t.modified.startLineNumber-e.modified.endLineNumberExclusive&&e.original.endLineNumberExclusive<t.original.startLineNumber&&e.modified.endLineNumberExclusive<t.modified.startLineNumber)),new t7(i,[],n.quitEarly)}}function rx(e,t,r,n){return new eX(e,t,r).ComputeDiff(n)}class rN{constructor(e){let t=[],r=[];for(let n=0,i=e.length;n<i;n++)t[n]=rT(e[n],1),r[n]=rM(e[n],1);this.lines=e,this._startColumns=t,this._endColumns=r}getElements(){let e=[];for(let t=0,r=this.lines.length;t<r;t++)e[t]=this.lines[t].substring(this._startColumns[t]-1,this._endColumns[t]-1);return e}getStrictElement(e){return this.lines[e]}getStartLineNumber(e){return e+1}getEndLineNumber(e){return e+1}createCharSequence(e,t,r){let n=[],i=[],s=[],o=0;for(let a=t;a<=r;a++){let t=this.lines[a],l=e?this._startColumns[a]:1,u=e?this._endColumns[a]:t.length+1;for(let e=l;e<u;e++)n[o]=t.charCodeAt(e-1),i[o]=a+1,s[o]=e,o++;!e&&a<r&&(n[o]=10,i[o]=a+1,s[o]=t.length+1,o++)}return new rE(n,i,s)}}class rE{constructor(e,t,r){this._charCodes=e,this._lineNumbers=t,this._columns=r}toString(){return"["+this._charCodes.map((e,t)=>(10===e?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return -1===e?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),10===this._charCodes[e])?this._lineNumbers[e]+1:this._lineNumbers[e]}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return -1===e?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),10===this._charCodes[e])?1:this._columns[e]+1}}class rA{constructor(e,t,r,n,i,s,o,a){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=r,this.originalEndColumn=n,this.modifiedStartLineNumber=i,this.modifiedStartColumn=s,this.modifiedEndLineNumber=o,this.modifiedEndColumn=a}static createFromDiffChange(e,t,r){return new rA(t.getStartLineNumber(e.originalStart),t.getStartColumn(e.originalStart),t.getEndLineNumber(e.originalStart+e.originalLength-1),t.getEndColumn(e.originalStart+e.originalLength-1),r.getStartLineNumber(e.modifiedStart),r.getStartColumn(e.modifiedStart),r.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),r.getEndColumn(e.modifiedStart+e.modifiedLength-1))}}class rk{constructor(e,t,r,n,i){this.originalStartLineNumber=e,this.originalEndLineNumber=t,this.modifiedStartLineNumber=r,this.modifiedEndLineNumber=n,this.charChanges=i}static createFromDiffResult(e,t,r,n,i,s,o){let a,l,u,c,h;if(0===t.originalLength?(a=r.getStartLineNumber(t.originalStart)-1,l=0):(a=r.getStartLineNumber(t.originalStart),l=r.getEndLineNumber(t.originalStart+t.originalLength-1)),0===t.modifiedLength?(u=n.getStartLineNumber(t.modifiedStart)-1,c=0):(u=n.getStartLineNumber(t.modifiedStart),c=n.getEndLineNumber(t.modifiedStart+t.modifiedLength-1)),s&&t.originalLength>0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&i()){let s=r.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),a=n.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(s.getElements().length>0&&a.getElements().length>0){let e=rx(s,a,i,!0).changes;o&&(e=function(e){if(e.length<=1)return e;let t=[e[0]],r=t[0];for(let n=1,i=e.length;n<i;n++){let i=e[n];3>Math.min(i.originalStart-(r.originalStart+r.originalLength),i.modifiedStart-(r.modifiedStart+r.modifiedLength))?(r.originalLength=i.originalStart+i.originalLength-r.originalStart,r.modifiedLength=i.modifiedStart+i.modifiedLength-r.modifiedStart):(t.push(i),r=i)}return t}(e)),h=[];for(let t=0,r=e.length;t<r;t++)h.push(rA.createFromDiffChange(e[t],s,a))}}return new rk(a,l,u,c,h)}}class rR{constructor(e,t,r){this.shouldComputeCharChanges=r.shouldComputeCharChanges,this.shouldPostProcessCharChanges=r.shouldPostProcessCharChanges,this.shouldIgnoreTrimWhitespace=r.shouldIgnoreTrimWhitespace,this.shouldMakePrettyDiff=r.shouldMakePrettyDiff,this.originalLines=e,this.modifiedLines=t,this.original=new rN(e),this.modified=new rN(t),this.continueLineDiff=rO(r.maxComputationTime),this.continueCharDiff=rO(0===r.maxComputationTime?0:Math.min(r.maxComputationTime,5e3))}computeDiff(){if(1===this.original.lines.length&&0===this.original.lines[0].length)return 1===this.modified.lines.length&&0===this.modified.lines[0].length?{quitEarly:!1,changes:[]}:{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:1,modifiedStartLineNumber:1,modifiedEndLineNumber:this.modified.lines.length,charChanges:void 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:void 0}]};let e=rx(this.original,this.modified,this.continueLineDiff,this.shouldMakePrettyDiff),t=e.changes,r=e.quitEarly;if(this.shouldIgnoreTrimWhitespace){let e=[];for(let r=0,n=t.length;r<n;r++)e.push(rk.createFromDiffResult(this.shouldIgnoreTrimWhitespace,t[r],this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges));return{quitEarly:r,changes:e}}let n=[],i=0,s=0;for(let e=-1,r=t.length;e<r;e++){let o=e+1<r?t[e+1]:null,a=o?o.originalStart:this.originalLines.length,l=o?o.modifiedStart:this.modifiedLines.length;for(;i<a&&s<l;){let e=this.originalLines[i],t=this.modifiedLines[s];if(e!==t){{let r=rT(e,1),o=rT(t,1);for(;r>1&&o>1&&e.charCodeAt(r-2)===t.charCodeAt(o-2);){;r--,o--}(r>1||o>1)&&this._pushTrimWhitespaceCharChange(n,i+1,1,r,s+1,1,o)}{let r=rM(e,1),o=rM(t,1),a=e.length+1,l=t.length+1;for(;r<a&&o<l&&e.charCodeAt(r-1)===e.charCodeAt(o-1);){;r++,o++}(r<a||o<l)&&this._pushTrimWhitespaceCharChange(n,i+1,r,a,s+1,o,l)}}i++,s++}o&&(n.push(rk.createFromDiffResult(this.shouldIgnoreTrimWhitespace,o,this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges)),i+=o.originalLength,s+=o.modifiedLength)}return{quitEarly:r,changes:n}}_pushTrimWhitespaceCharChange(e,t,r,n,i,s,o){let a;this._mergeTrimWhitespaceCharChange(e,t,r,n,i,s,o)||(this.shouldComputeCharChanges&&(a=[new rA(t,r,t,n,i,s,i,o)]),e.push(new rk(t,t,i,i,a)))}_mergeTrimWhitespaceCharChange(e,t,r,n,i,s,o){let a=e.length;if(0===a)return!1;let l=e[a-1];return 0!==l.originalEndLineNumber&&0!==l.modifiedEndLineNumber&&(l.originalEndLineNumber===t&&l.modifiedEndLineNumber===i?(this.shouldComputeCharChanges&&l.charChanges&&l.charChanges.push(new rA(t,r,t,n,i,s,i,o)),!0):l.originalEndLineNumber+1===t&&l.modifiedEndLineNumber+1===i&&(l.originalEndLineNumber=t,l.modifiedEndLineNumber=i,this.shouldComputeCharChanges&&l.charChanges&&l.charChanges.push(new rA(t,r,t,n,i,s,i,o)),!0))}}function rT(e,t){let r=function(e){for(let t=0,r=e.length;t<r;t++){let r=e.charCodeAt(t);if(32!==r&&9!==r)return t}return -1}(e);return -1===r?t:r+1}function rM(e,t){let r=function(e,t=e.length-1){for(let r=t;r>=0;r--){let t=e.charCodeAt(r);if(32!==t&&9!==t)return r}return -1}(e);return -1===r?t:r+2}function rO(e){if(0===e)return()=>!0;let t=Date.now();return()=>Date.now()-t<e}class rI{static trivial(e,t){return new rI([new rP(re.ofLength(e.length),re.ofLength(t.length))],!1)}static trivialTimedOut(e,t){return new rI([new rP(re.ofLength(e.length),re.ofLength(t.length))],!0)}constructor(e,t){this.diffs=e,this.hitTimeout=t}}class rP{static invert(e,t){let r=[];for(let s=0;s<=e.length;s++){var n,i;n=0===s?void 0:e[s-1],i=s===e.length?void 0:e[s],r.push(rP.fromOffsetPairs(n?n.getEndExclusives():rF.zero,i?i.getStarts():new rF(t,(n?n.seq2Range.endExclusive-n.seq1Range.endExclusive:0)+t)))}return r}static fromOffsetPairs(e,t){return new rP(new re(e.offset1,t.offset1),new re(e.offset2,t.offset2))}static assertSorted(e){let t;for(let r of e){if(t&&!(t.seq1Range.endExclusive<=r.seq1Range.start&&t.seq2Range.endExclusive<=r.seq2Range.start))throw new S("Sequence diffs must be sorted");t=r}}constructor(e,t){this.seq1Range=e,this.seq2Range=t}swap(){return new rP(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(e){return new rP(this.seq1Range.join(e.seq1Range),this.seq2Range.join(e.seq2Range))}delta(e){return 0===e?this:new rP(this.seq1Range.delta(e),this.seq2Range.delta(e))}deltaStart(e){return 0===e?this:new rP(this.seq1Range.deltaStart(e),this.seq2Range.deltaStart(e))}deltaEnd(e){return 0===e?this:new rP(this.seq1Range.deltaEnd(e),this.seq2Range.deltaEnd(e))}intersect(e){let t=this.seq1Range.intersect(e.seq1Range),r=this.seq2Range.intersect(e.seq2Range);if(t&&r)return new rP(t,r)}getStarts(){return new rF(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new rF(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}class rF{static{this.zero=new rF(0,0)}static{this.max=new rF(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER)}constructor(e,t){this.offset1=e,this.offset2=t}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(e){return 0===e?this:new rF(this.offset1+e,this.offset2+e)}equals(e){return this.offset1===e.offset1&&this.offset2===e.offset2}}class rV{static{this.instance=new rV}isValid(){return!0}}class rD{constructor(e){if(this.timeout=e,this.startTime=Date.now(),this.valid=!0,e<=0)throw new S("timeout must be positive")}isValid(){return!(Date.now()-this.startTime<this.timeout)&&this.valid&&(this.valid=!1),this.valid}}class rq{constructor(e,t){this.width=e,this.height=t,this.array=[],this.array=Array(e*t)}get(e,t){return this.array[e+t*this.width]}set(e,t,r){this.array[e+t*this.width]=r}}function r$(e){return 32===e||9===e}class rK{static{this.chrKeys=new Map}static getKey(e){let t=this.chrKeys.get(e);return void 0===t&&(t=this.chrKeys.size,this.chrKeys.set(e,t)),t}constructor(e,t,r){this.range=e,this.lines=t,this.source=r,this.histogram=[];let n=0;for(let r=e.startLineNumber-1;r<e.endLineNumberExclusive-1;r++){let e=t[r];for(let t=0;t<e.length;t++){n++;let r=e[t],i=rK.getKey(r);this.histogram[i]=(this.histogram[i]||0)+1}n++;let i=rK.getKey("\n");this.histogram[i]=(this.histogram[i]||0)+1}this.totalCount=n}computeSimilarity(e){let t=0,r=Math.max(this.histogram.length,e.histogram.length);for(let n=0;n<r;n++)t+=Math.abs((this.histogram[n]??0)-(e.histogram[n]??0));return 1-t/(this.totalCount+e.totalCount)}}class rB{compute(e,t,r=rV.instance,n){if(0===e.length||0===t.length)return rI.trivial(e,t);let i=new rq(e.length,t.length),s=new rq(e.length,t.length),o=new rq(e.length,t.length);for(let a=0;a<e.length;a++)for(let l=0;l<t.length;l++){let u;if(!r.isValid())return rI.trivialTimedOut(e,t);let c=0===a?0:i.get(a-1,l),h=0===l?0:i.get(a,l-1);e.getElement(a)===t.getElement(l)?(u=0===a||0===l?0:i.get(a-1,l-1),a>0&&l>0&&3===s.get(a-1,l-1)&&(u+=o.get(a-1,l-1)),u+=n?n(a,l):1):u=-1;let d=Math.max(c,h,u);if(d===u){let e=a>0&&l>0?o.get(a-1,l-1):0;o.set(a,l,e+1),s.set(a,l,3)}else d===c?(o.set(a,l,0),s.set(a,l,1)):d===h&&(o.set(a,l,0),s.set(a,l,2));i.set(a,l,d)}let a=[],l=e.length,u=t.length;function c(e,t){(e+1!==l||t+1!==u)&&a.push(new rP(new re(e+1,l),new re(t+1,u))),l=e,u=t}let h=e.length-1,d=t.length-1;for(;h>=0&&d>=0;)3===s.get(h,d)?(c(h,d),h--,d--):1===s.get(h,d)?h--:d--;return c(-1,-1),a.reverse(),new rI(a,!1)}}class rU{compute(e,t,r=rV.instance){if(0===e.length||0===t.length)return rI.trivial(e,t);function n(r,n){for(;r<e.length&&n<t.length&&e.getElement(r)===t.getElement(n);)r++,n++;return r}let i=0,s=new rW;s.set(0,n(0,0));let o=new rz;o.set(0,0===s.get(0)?null:new rj(null,0,0,s.get(0)));let a=0;t:for(;;){if(i++,!r.isValid())return rI.trivialTimedOut(e,t);let l=-Math.min(i,t.length+i%2),u=Math.min(i,e.length+i%2);for(a=l;a<=u;a+=2){let r=a===u?-1:s.get(a+1),i=Math.min(Math.max(r,a===l?-1:s.get(a-1)+1),e.length),c=i-a;if(i>e.length||c>t.length)continue;let h=n(i,c);s.set(a,h);let d=i===r?o.get(a+1):o.get(a-1);if(o.set(a,h!==i?new rj(d,i,c,h-i):d),s.get(a)===e.length&&s.get(a)-a===t.length)break t}}let l=o.get(a),u=[],c=e.length,h=t.length;for(;;){let e=l?l.x+l.length:0,t=l?l.y+l.length:0;if((e!==c||t!==h)&&u.push(new rP(new re(e,c),new re(t,h))),!l)break;c=l.x,h=l.y,l=l.prev}return u.reverse(),new rI(u,!1)}}class rj{constructor(e,t,r,n){this.prev=e,this.x=t,this.y=r,this.length=n}}class rW{constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){if(e<0){if((e=-e-1)>=this.negativeArr.length){let e=this.negativeArr;this.negativeArr=new Int32Array(2*e.length),this.negativeArr.set(e)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){let e=this.positiveArr;this.positiveArr=new Int32Array(2*e.length),this.positiveArr.set(e)}this.positiveArr[e]=t}}}class rz{constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){e<0?(e=-e-1,this.negativeArr[e]=t):this.positiveArr[e]=t}}class rH{constructor(e,t,r){this.lines=e,this.range=t,this.considerWhitespaceChanges=r,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let t=this.range.startLineNumber;t<=this.range.endLineNumber;t++){let n=e[t-1],i=0;t===this.range.startLineNumber&&this.range.startColumn>1&&(i=this.range.startColumn-1,n=n.substring(i)),this.lineStartOffsets.push(i);let s=0;if(!r){let e=n.trimStart();s=n.length-e.length,n=e.trimEnd()}this.trimmedWsLengthsByLineIdx.push(s);let o=t===this.range.endLineNumber?Math.min(this.range.endColumn-1-i-s,n.length):n.length;for(let e=0;e<o;e++)this.elements.push(n.charCodeAt(e));t<this.range.endLineNumber&&(this.elements.push(10),this.firstElementOffsetByLineIdx.push(this.elements.length))}}toString(){return`Slice: "${this.text}"`}get text(){return this.getText(new re(0,this.length))}getText(e){return this.elements.slice(e.start,e.endExclusive).map(e=>String.fromCharCode(e)).join("")}getElement(e){return this.elements[e]}get length(){return this.elements.length}getBoundaryScore(e){let t=rQ(e>0?this.elements[e-1]:-1),r=rQ(e<this.elements.length?this.elements[e]:-1);if(7===t&&8===r)return 0;if(8===t)return 150;let n=0;return t!==r&&(n+=10,0===t&&1===r&&(n+=1)),n+=rX[t],n+=rX[r]}translateOffset(e,t="right"){let r=rr(this.firstElementOffsetByLineIdx,t=>t<=e),n=e-this.firstElementOffsetByLineIdx[r];return new eQ(this.range.startLineNumber+r,1+this.lineStartOffsets[r]+n+(0===n&&"left"===t?0:this.trimmedWsLengthsByLineIdx[r]))}translateRange(e){let t=this.translateOffset(e.start,"right"),r=this.translateOffset(e.endExclusive,"left");return r.isBefore(t)?eZ.fromPositions(r,r):eZ.fromPositions(t,r)}findWordContaining(e){if(e<0||e>=this.elements.length||!rG(this.elements[e]))return;let t=e;for(;t>0&&rG(this.elements[t-1]);)t--;let r=e;for(;r<this.elements.length&&rG(this.elements[r]);)r++;return new re(t,r)}findSubWordContaining(e){if(e<0||e>=this.elements.length||!rG(this.elements[e]))return;let t=e;for(;t>0&&rG(this.elements[t-1])&&!rJ(this.elements[t]);)t--;let r=e;for(;r<this.elements.length&&rG(this.elements[r])&&!rJ(this.elements[r]);)r++;return new re(t,r)}countLinesIn(e){return this.translateOffset(e.endExclusive).lineNumber-this.translateOffset(e.start).lineNumber}isStronglyEqual(e,t){return this.elements[e]===this.elements[t]}extendToFullLines(e){var t;let r;return new re(rt(this.firstElementOffsetByLineIdx,t=>t<=e.start)??0,((r=rn(t=this.firstElementOffsetByLineIdx,t=>e.endExclusive<=t))===t.length?void 0:t[r])??this.elements.length)}}function rG(e){return e>=97&&e<=122||e>=65&&e<=90||e>=48&&e<=57}function rJ(e){return e>=65&&e<=90}let rX={0:0,1:0,2:0,3:10,4:2,5:30,6:3,7:10,8:10};function rQ(e){if(10===e)return 8;if(13===e)return 7;if(r$(e))return 6;if(e>=97&&e<=122)return 0;if(e>=65&&e<=90)return 1;else if(e>=48&&e<=57)return 2;else if(-1===e)return 3;else if(44===e||59===e)return 5;else return 4}function rZ(e,t,r){if(e.trim()===t.trim())return!0;if(e.length>300&&t.length>300)return!1;let n=new rU().compute(new rH([e],new eZ(1,1,1,e.length),!1),new rH([t],new eZ(1,1,1,t.length),!1),r),i=0;for(let t of rP.invert(n.diffs,e.length))t.seq1Range.forEach(t=>{!r$(e.charCodeAt(t))&&i++});let s=function(t){let r=0;for(let n=0;n<e.length;n++)!r$(t.charCodeAt(n))&&r++;return r}(e.length>t.length?e:t);return i/s>.6&&s>10}function rY(e,t,r){let n=r;return n=r1(e,t,n),n=r1(e,t,n),n=function(e,t,r){if(!e.getBoundaryScore||!t.getBoundaryScore)return r;for(let n=0;n<r.length;n++){let i=n>0?r[n-1]:void 0,s=r[n],o=n+1<r.length?r[n+1]:void 0,a=new re(i?i.seq1Range.endExclusive+1:0,o?o.seq1Range.start-1:e.length),l=new re(i?i.seq2Range.endExclusive+1:0,o?o.seq2Range.start-1:t.length);s.seq1Range.isEmpty?r[n]=r0(s,e,t,a,l):s.seq2Range.isEmpty&&(r[n]=r0(s.swap(),t,e,l,a).swap())}return r}(e,t,n)}function r1(e,t,r){if(0===r.length)return r;let n=[];n.push(r[0]);for(let i=1;i<r.length;i++){let s=n[n.length-1],o=r[i];if(o.seq1Range.isEmpty||o.seq2Range.isEmpty){let r,i=o.seq1Range.start-s.seq1Range.endExclusive;for(r=1;r<=i&&e.getElement(o.seq1Range.start-r)===e.getElement(o.seq1Range.endExclusive-r)&&t.getElement(o.seq2Range.start-r)===t.getElement(o.seq2Range.endExclusive-r);r++);if(--r===i){n[n.length-1]=new rP(new re(s.seq1Range.start,o.seq1Range.endExclusive-i),new re(s.seq2Range.start,o.seq2Range.endExclusive-i));continue}o=o.delta(-r)}n.push(o)}let i=[];for(let r=0;r<n.length-1;r++){let s=n[r+1],o=n[r];if(o.seq1Range.isEmpty||o.seq2Range.isEmpty){let i,a=s.seq1Range.start-o.seq1Range.endExclusive;for(i=0;i<a&&e.isStronglyEqual(o.seq1Range.start+i,o.seq1Range.endExclusive+i)&&t.isStronglyEqual(o.seq2Range.start+i,o.seq2Range.endExclusive+i);i++);if(i===a){n[r+1]=new rP(new re(o.seq1Range.start+a,s.seq1Range.endExclusive),new re(o.seq2Range.start+a,s.seq2Range.endExclusive));continue}i>0&&(o=o.delta(i))}i.push(o)}return n.length>0&&i.push(n[n.length-1]),i}function r0(e,t,r,n,i){let s=1;for(;e.seq1Range.start-s>=n.start&&e.seq2Range.start-s>=i.start&&r.isStronglyEqual(e.seq2Range.start-s,e.seq2Range.endExclusive-s)&&s<100;)s++;s--;let o=0;for(;e.seq1Range.start+o<n.endExclusive&&e.seq2Range.endExclusive+o<i.endExclusive&&r.isStronglyEqual(e.seq2Range.start+o,e.seq2Range.endExclusive+o)&&o<100;)o++;if(0===s&&0===o)return e;let a=0,l=-1;for(let n=-s;n<=o;n++){let i=e.seq2Range.start+n,s=e.seq2Range.endExclusive+n,o=e.seq1Range.start+n,u=t.getBoundaryScore(o)+r.getBoundaryScore(i)+r.getBoundaryScore(s);u>l&&(l=u,a=n)}return e.delta(a)}function r2(e,t,r,n,i=!1){let s=rP.invert(r,e.length),o=[],a=new rF(0,0);function l(r,l){if(r.offset1<a.offset1||r.offset2<a.offset2)return;let u=n(e,r.offset1),c=n(t,r.offset2);if(!u||!c)return;let h=new rP(u,c),d=h.intersect(l),m=d.seq1Range.length,g=d.seq2Range.length;for(;s.length>0;){let r=s[0];if(!(r.seq1Range.intersects(h.seq1Range)||r.seq2Range.intersects(h.seq2Range)))break;let i=new rP(n(e,r.seq1Range.start),n(t,r.seq2Range.start)),o=i.intersect(r);if(m+=o.seq1Range.length,g+=o.seq2Range.length,(h=h.join(i)).seq1Range.endExclusive>=r.seq1Range.endExclusive)s.shift();else break}(i&&m+g<h.seq1Range.length+h.seq2Range.length||m+g<(h.seq1Range.length+h.seq2Range.length)*2/3)&&o.push(h),a=h.getEndExclusives()}for(;s.length>0;){let e=s.shift();e.seq1Range.isEmpty||(l(e.getStarts(),e),l(e.getEndExclusives().delta(-1),e))}var u=r,c=o;let h=[];for(;u.length>0||c.length>0;){let e,t=u[0],r=c[0];e=t&&(!r||t.seq1Range.start<r.seq1Range.start)?u.shift():c.shift(),h.length>0&&h[h.length-1].seq1Range.endExclusive>=e.seq1Range.start?h[h.length-1]=h[h.length-1].join(e):h.push(e)}return h}class r4{constructor(e,t){this.trimmedHash=e,this.lines=t}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){return 1e3-((0===e?0:r5(this.lines[e-1]))+(e===this.lines.length?0:r5(this.lines[e])))}getText(e){return this.lines.slice(e.start,e.endExclusive).join("\n")}isStronglyEqual(e,t){return this.lines[e]===this.lines[t]}}function r5(e){let t=0;for(;t<e.length&&(32===e.charCodeAt(t)||9===e.charCodeAt(t));)t++;return t}class r7{constructor(){this.dynamicProgrammingDiffing=new rB,this.myersDiffingAlgorithm=new rU}computeDiff(e,t,r){if(e.length<=1&&function(e,t,r=(e,t)=>e===t){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0,i=e.length;n<i;n++)if(!r(e[n],t[n]))return!1;return!0}(e,t,(e,t)=>e===t))return new t7([],[],!1);if(1===e.length&&0===e[0].length||1===t.length&&0===t[0].length)return new t7([new rC(new rs(1,e.length+1),new rs(1,t.length+1),[new r_(new eZ(1,1,e.length,e[e.length-1].length+1),new eZ(1,1,t.length,t[t.length-1].length+1))])],[],!1);let n=0===r.maxComputationTimeMs?rV.instance:new rD(r.maxComputationTimeMs),i=!r.ignoreTrimWhitespace,s=new Map;function o(e){let t=s.get(e);return void 0===t&&(t=s.size,s.set(e,t)),t}let a=e.map(e=>o(e.trim())),l=t.map(e=>o(e.trim())),u=new r4(a,e),c=new r4(l,t),h=u.length+c.length<1700?this.dynamicProgrammingDiffing.compute(u,c,n,(r,n)=>e[r]===t[n]?0===t[n].length?.1:1+Math.log(1+t[n].length):.99):this.myersDiffingAlgorithm.compute(u,c,n),d=h.diffs,m=h.hitTimeout;d=rY(u,c,d);let g=[],f=s=>{if(i)for(let o=0;o<s;o++){let s=p+o,a=b+o;if(e[s]!==t[a]){let o=this.refineDiff(e,t,new rP(new re(s,s+1),new re(a,a+1)),n,i,r);for(let e of o.mappings)g.push(e);o.hitTimeout&&(m=!0)}}},p=0,b=0;for(let s of d=function(e,t){let r,n=t;if(0===n.length)return n;let i=0;do{r=!1;let t=[n[0]];for(let i=1;i<n.length;i++){let s=n[i],o=t[t.length-1];!function(t,r){let n=new re(o.seq1Range.endExclusive,s.seq1Range.start);return!!(e.getText(n).replace(/\s/g,"").length<=4)&&(!!(t.seq1Range.length+t.seq2Range.length>5)||!!(r.seq1Range.length+r.seq2Range.length>5))}(o,s)?t.push(s):(r=!0,t[t.length-1]=t[t.length-1].join(s))}n=t}while(i++<10&&r)return n}(u,d)){L(()=>s.seq1Range.start-p==s.seq2Range.start-b),f(s.seq1Range.start-p),p=s.seq1Range.endExclusive,b=s.seq2Range.endExclusive;let o=this.refineDiff(e,t,s,n,i,r);for(let e of(o.hitTimeout&&(m=!0),o.mappings))g.push(e)}f(e.length-p);let y=rS(g,new rm(e),new rm(t)),v=[];return r.computeMoves&&(v=this.computeMoves(y,e,t,a,l,n,i,r)),L(()=>{function r(e,t){if(e.lineNumber<1||e.lineNumber>t.length)return!1;let r=t[e.lineNumber-1];return!(e.column<1)&&!(e.column>r.length+1)}function n(e,t){return!(e.startLineNumber<1)&&!(e.startLineNumber>t.length+1)&&!(e.endLineNumberExclusive<1)&&!(e.endLineNumberExclusive>t.length+1)}for(let i of y){if(!i.innerChanges)return!1;for(let n of i.innerChanges)if(!(r(n.modifiedRange.getStartPosition(),t)&&r(n.modifiedRange.getEndPosition(),t)&&r(n.originalRange.getStartPosition(),e)&&r(n.originalRange.getEndPosition(),e)))return!1;if(!n(i.modified,t)||!n(i.original,e))return!1}return!0}),new t7(y,v,m)}computeMoves(e,t,r,n,i,s,o,a){return(function(e,t,r,n,i,s){let o,{moves:a,excludedChanges:l}=function(e,t,r,n){let i=[],s=e.filter(e=>e.modified.isEmpty&&e.original.length>=3).map(e=>new rK(e.original,t,e)),o=new Set(e.filter(e=>e.original.isEmpty&&e.modified.length>=3).map(e=>new rK(e.modified,r,e))),a=new Set;for(let e of s){let t,r=-1;for(let n of o){let i=e.computeSimilarity(n);i>r&&(r=i,t=n)}if(r>.9&&t&&(o.delete(t),i.push(new ry(e.range,t.range)),a.add(e.source),a.add(t.source)),!n.isValid())break}return{moves:i,excludedChanges:a}}(e,t,r,s);if(!s.isValid())return[];let u=function(e,t,r,n,i,s){var o;let a=[],l=new tX;for(let r of e)for(let e=r.original.startLineNumber;e<r.original.endLineNumberExclusive-2;e++){let r=`${t[e-1]}:${t[e+1-1]}:${t[e+2-1]}`;l.add(r,{range:new rs(e,e+3)})}let u=[];for(let t of(e.sort(t6(e=>e.modified.startLineNumber,t8)),e)){let e=[];for(let n=t.modified.startLineNumber;n<t.modified.endLineNumberExclusive-2;n++){let t=`${r[n-1]}:${r[n+1-1]}:${r[n+2-1]}`,i=new rs(n,n+3),s=[];l.forEach(t,({range:t})=>{for(let r of e)if(r.originalLineRange.endLineNumberExclusive+1===t.endLineNumberExclusive&&r.modifiedLineRange.endLineNumberExclusive+1===i.endLineNumberExclusive){r.originalLineRange=new rs(r.originalLineRange.startLineNumber,t.endLineNumberExclusive),r.modifiedLineRange=new rs(r.modifiedLineRange.startLineNumber,i.endLineNumberExclusive),s.push(r);return}let r={modifiedLineRange:i,originalLineRange:t};u.push(r),s.push(r)}),e=s}if(!s.isValid())return[]}u.sort((o=t6(e=>e.modifiedLineRange.length,t8),(e,t)=>-o(e,t)));let c=new ro,h=new ro;for(let e of u){let t=e.modifiedLineRange.startLineNumber-e.originalLineRange.startLineNumber,r=c.subtractFrom(e.modifiedLineRange),n=h.subtractFrom(e.originalLineRange).getWithDelta(t);for(let e of r.getIntersection(n).ranges){if(e.length<3)continue;let r=e.delta(-t);a.push(new ry(r,e)),c.addRange(e),h.addRange(r)}}a.sort(t6(e=>e.original.startLineNumber,t8));let d=new ri(e);for(let t=0;t<a.length;t++){let r,o,l=a[t],u=d.findLastMonotonous(e=>e.original.startLineNumber<=l.original.startLineNumber),m=rt(e,e=>e.modified.startLineNumber<=l.modified.startLineNumber),g=Math.max(l.original.startLineNumber-u.original.startLineNumber,l.modified.startLineNumber-m.modified.startLineNumber),f=d.findLastMonotonous(e=>e.original.startLineNumber<l.original.endLineNumberExclusive),p=rt(e,e=>e.modified.startLineNumber<l.modified.endLineNumberExclusive),b=Math.max(f.original.endLineNumberExclusive-l.original.endLineNumberExclusive,p.modified.endLineNumberExclusive-l.modified.endLineNumberExclusive);for(r=0;r<g;r++){let e=l.original.startLineNumber-r-1,t=l.modified.startLineNumber-r-1;if(e>n.length||t>i.length||c.contains(t)||h.contains(e)||!rZ(n[e-1],i[t-1],s))break}for(r>0&&(h.addRange(new rs(l.original.startLineNumber-r,l.original.startLineNumber)),c.addRange(new rs(l.modified.startLineNumber-r,l.modified.startLineNumber))),o=0;o<b;o++){let e=l.original.endLineNumberExclusive+o,t=l.modified.endLineNumberExclusive+o;if(e>n.length||t>i.length||c.contains(t)||h.contains(e)||!rZ(n[e-1],i[t-1],s))break}o>0&&(h.addRange(new rs(l.original.endLineNumberExclusive,l.original.endLineNumberExclusive+o)),c.addRange(new rs(l.modified.endLineNumberExclusive,l.modified.endLineNumberExclusive+o))),(r>0||o>0)&&(a[t]=new ry(new rs(l.original.startLineNumber-r,l.original.endLineNumberExclusive+o),new rs(l.modified.startLineNumber-r,l.modified.endLineNumberExclusive+o)))}return a}(e.filter(e=>!l.has(e)),n,i,t,r,s);var c,h,d=a;for(let e of u)d.push(e);return c=e,h=a=(a=function(e){if(0===e.length)return e;e.sort(t6(e=>e.original.startLineNumber,t8));let t=[e[0]];for(let r=1;r<e.length;r++){let n=t[t.length-1],i=e[r],s=i.original.startLineNumber-n.original.endLineNumberExclusive,o=i.modified.startLineNumber-n.modified.endLineNumberExclusive;if(s>=0&&o>=0&&s+o<=2){t[t.length-1]=n.join(i);continue}t.push(i)}return t}(a)).filter(e=>{let r=e.original.toOffsetRange().slice(t).map(e=>e.trim());return r.join("\n").length>=15&&function(e,t){let r=0;for(let n of e)t(n)&&r++;return r}(r,e=>e.length>=2)>=2}),o=new ri(c),a=h.filter(e=>(o.findLastMonotonous(t=>t.original.startLineNumber<e.original.endLineNumberExclusive)||new ry(new rs(1,1),new rs(1,1)))!==rt(c,t=>t.modified.startLineNumber<e.modified.endLineNumberExclusive))})(e,t,r,n,i,s).map(e=>{let n=rS(this.refineDiff(t,r,new rP(e.original.toOffsetRange(),e.modified.toOffsetRange()),s,o,a).mappings,new rm(t),new rm(r),!0);return new t9(e,n)})}refineDiff(e,t,r,n,i,s){var o;let a=new ry(new rs((o=r).seq1Range.start+1,o.seq1Range.endExclusive+1),new rs(o.seq2Range.start+1,o.seq2Range.endExclusive+1)).toRangeMapping2(e,t),l=new rH(e,a.originalRange,i),u=new rH(t,a.modifiedRange,i),c=l.length+u.length<500?this.dynamicProgrammingDiffing.compute(l,u,n):this.myersDiffingAlgorithm.compute(l,u,n),h=c.diffs;return h=rY(l,u,h),h=r2(l,u,h,(e,t)=>e.findWordContaining(t)),s.extendToSubwords&&(h=r2(l,u,h,(e,t)=>e.findSubWordContaining(t),!0)),{mappings:(h=function(e,t,r){let n,i=r;if(0===i.length)return i;let s=0;do{n=!1;let r=[i[0]];for(let s=1;s<i.length;s++){let o=i[s],a=r[r.length-1];!function(r,n){let i=new re(a.seq1Range.endExclusive,o.seq1Range.start);if(e.countLinesIn(i)>5||i.length>500)return!1;let s=e.getText(i).trim();if(s.length>20||s.split(/\r\n|\r|\n/).length>1)return!1;let l=e.countLinesIn(r.seq1Range),u=r.seq1Range.length,c=t.countLinesIn(r.seq2Range),h=r.seq2Range.length,d=e.countLinesIn(n.seq1Range),m=n.seq1Range.length,g=t.countLinesIn(n.seq2Range),f=n.seq2Range.length;function p(e){return Math.min(e,130)}return Math.pow(Math.pow(p(40*l+u),1.5)+Math.pow(p(40*c+h),1.5),1.5)+Math.pow(Math.pow(p(40*d+m),1.5)+Math.pow(p(40*g+f),1.5),1.5)>74184.96480721243}(a,o)?r.push(o):(n=!0,r[r.length-1]=r[r.length-1].join(o))}i=r}while(s++<10&&n)let o=[];var a=i;for(let t=0;t<a.length;t++)((t,r,n)=>{let i=r;function s(e){return e.length>0&&e.trim().length<=3&&r.seq1Range.length+r.seq2Range.length>100}let a=e.extendToFullLines(r.seq1Range),l=e.getText(new re(a.start,r.seq1Range.start));s(l)&&(i=i.deltaStart(-l.length));let u=e.getText(new re(r.seq1Range.endExclusive,a.endExclusive));s(u)&&(i=i.deltaEnd(u.length));let c=rP.fromOffsetPairs(t?t.getEndExclusives():rF.zero,n?n.getStarts():rF.max),h=i.intersect(c);o.length>0&&h.getStarts().equals(o[o.length-1].getEndExclusives())?o[o.length-1]=o[o.length-1].join(h):o.push(h)})(0===t?void 0:a[t-1],a[t],t+1===a.length?void 0:a[t+1]);return o}(l,u,h=function(e){let t=[];for(let r of e){let e=t[t.length-1];if(!e){t.push(r);continue}r.seq1Range.start-e.seq1Range.endExclusive<=2||r.seq2Range.start-e.seq2Range.endExclusive<=2?t[t.length-1]=new rP(e.seq1Range.join(r.seq1Range),e.seq2Range.join(r.seq2Range)):t.push(r)}return t}(h))).map(e=>new r_(l.translateRange(e.seq1Range),u.translateRange(e.seq2Range))),hitTimeout:c.hitTimeout}}}(sr=af||(af={})).inMemory="inmemory",sr.vscode="vscode",sr.internal="private",sr.walkThrough="walkThrough",sr.walkThroughSnippet="walkThroughSnippet",sr.http="http",sr.https="https",sr.file="file",sr.mailto="mailto",sr.untitled="untitled",sr.data="data",sr.command="command",sr.vscodeRemote="vscode-remote",sr.vscodeRemoteResource="vscode-remote-resource",sr.vscodeManagedRemoteResource="vscode-managed-remote-resource",sr.vscodeUserData="vscode-userdata",sr.vscodeCustomEditor="vscode-custom-editor",sr.vscodeNotebookCell="vscode-notebook-cell",sr.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",sr.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",sr.vscodeNotebookCellOutput="vscode-notebook-cell-output",sr.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",sr.vscodeNotebookMetadata="vscode-notebook-metadata",sr.vscodeInteractiveInput="vscode-interactive-input",sr.vscodeSettings="vscode-settings",sr.vscodeWorkspaceTrust="vscode-workspace-trust",sr.vscodeTerminal="vscode-terminal",sr.vscodeImageCarousel="vscode-image-carousel",sr.vscodeChatCodeBlock="vscode-chat-code-block",sr.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",sr.vscodeChatEditor="vscode-chat-editor",sr.vscodeChatInput="chatSessionInput",sr.vscodeLocalChatSession="vscode-chat-session",sr.webviewPanel="webview-panel",sr.vscodeWebview="vscode-webview",sr.vscodeBrowser="vscode-browser",sr.extension="extension",sr.vscodeFileResource="vscode-file",sr.tmp="tmp",sr.vsls="vsls",sr.vscodeSourceControl="vscode-scm",sr.commentsInput="comment",sr.codeSetting="code-setting",sr.outputChannel="output",sr.accessibleView="accessible-view",sr.chatEditingSnapshotScheme="chat-editing-snapshot-text-model",sr.chatEditingModel="chat-editing-text-model",sr.copilotPr="copilot-pr";let r9=new class{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}get _remoteResourcesPath(){return tC.join(this._serverRootPath,af.vscodeRemoteResource)}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(t){return w(t)||p.onUnexpectedExternalError(t),e}let t=e.authority,r=this._hosts[t];r&&-1!==r.indexOf(":")&&-1===r.indexOf("[")&&(r=`[${r}]`);let n=this._ports[t],i=this._connectionTokens[t],s=`path=${encodeURIComponent(e.path)}`;return"string"==typeof i&&(s+=`&tkn=${encodeURIComponent(i)}`),tE.from({scheme:z?this._preferredWebSchema:af.vscodeRemoteResource,authority:`${r}:${n}`,path:this._remoteResourcesPath,query:s})}};class r6{static{this.FALLBACK_AUTHORITY="vscode-app"}asBrowserUri(e){let t=this.toUri(e);return this.uriToBrowserUri(t)}uriToBrowserUri(e){return e.scheme===af.vscodeRemote?r9.rewrite(e):e.scheme===af.file&&(W||H===`${af.vscodeFileResource}://${r6.FALLBACK_AUTHORITY}`)?e.with({scheme:af.vscodeFileResource,authority:e.authority||r6.FALLBACK_AUTHORITY,query:null,fragment:null}):e}toUri(e){if(tE.isUri(e))return e;if(globalThis._VSCODE_FILE_ROOT){let t=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(t))return tE.joinPath(tE.parse(t,!0),e);let r=t_(t,e);return tE.file(r)}throw Error("Cannot determine URI for module id!")}}let r8=new r6;(sn=ap||(ap={})).CoopAndCoep=Object.freeze((d=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]])).get("3")),m="vscode-coi",sn.getHeadersFromQuery=function(e){let t;"string"==typeof e?t=new URL(e).searchParams:e instanceof URL?t=e.searchParams:tE.isUri(e)&&(t=new URL(e.toString(!0)).searchParams);let r=t?.get(m);if(r)return d.get(r)},sn.addSearchParam=function(e,t,r){if(!globalThis.crossOriginIsolated)return;let n=t&&r?"3":r?"2":"1";e instanceof URLSearchParams?e.set(m,n):e[m]=n};class r3{constructor(e){this.replacements=e;let t=-1;for(let r of e){if(!(r.replaceRange.start>=t))throw new S(`Edits must be disjoint and sorted. Found ${r} after ${t}`);t=r.replaceRange.endExclusive}}toString(){let e=this.replacements.map(e=>e.toString()).join(", ");return`[${e}]`}normalize(){let e,t=[];for(let r of this.replacements)if(0!==r.getNewLength()||0!==r.replaceRange.length){if(e&&e.replaceRange.endExclusive===r.replaceRange.start){let t=e.tryJoinTouching(r);if(t){e=t;continue}}e&&t.push(e),e=r}return e&&t.push(e),this._createNew(t)}compose(e){let t=this.normalize(),r=e.normalize();if(t.isEmpty())return r;if(r.isEmpty())return t;let n=[...t.replacements],i=[],s=0;for(let e of r.replacements){let t,r;for(;;){let t=n[0];if(!t||t.replaceRange.start+s+t.getNewLength()>=e.replaceRange.start)break;n.shift(),i.push(t),s+=t.getNewLength()-t.replaceRange.length}let o=s;for(;;){let i=n[0];if(!i||i.replaceRange.start+s>e.replaceRange.endExclusive)break;t||(t=i),r=i,n.shift(),s+=i.getNewLength()-i.replaceRange.length}if(t){let a=Math.min(t.replaceRange.start,e.replaceRange.start-o),l=e.replaceRange.start-(t.replaceRange.start+o);if(l>0){let e=t.slice(re.emptyAt(a),new re(0,l));i.push(e)}if(!r)throw new S("Invariant violation: lastIntersecting is undefined");let u=r.replaceRange.endExclusive+s-e.replaceRange.endExclusive;if(u>0){let e=r.slice(re.ofStartAndLength(r.replaceRange.endExclusive,0),new re(r.getNewLength()-u,r.getNewLength()));n.unshift(e),s-=e.getNewLength()-e.replaceRange.length}let c=new re(a,e.replaceRange.endExclusive-s),h=e.slice(c,new re(0,e.getNewLength()));i.push(h)}else i.push(e.delta(-s))}for(;;){let e=n.shift();if(!e)break;i.push(e)}return this._createNew(i).normalize()}getNewRanges(){let e=[],t=0;for(let r of this.replacements)e.push(re.ofStartAndLength(r.replaceRange.start+t,r.getNewLength())),t+=r.getLengthDelta();return e}isEmpty(){return 0===this.replacements.length}applyToOffsetOrUndefined(e){let t=0;for(let r of this.replacements)if(r.replaceRange.start<=e){if(e<r.replaceRange.endExclusive)return;t+=r.getNewLength()-r.replaceRange.length}else break;return e+t}}class ne{constructor(e){this.replaceRange=e}delta(e){return this.slice(this.replaceRange.delta(e),new re(0,this.getNewLength()))}getLengthDelta(){return this.getNewLength()-this.replaceRange.length}toString(){return`{ ${this.replaceRange.toString()} -> ${this.getNewLength()} }`}get isEmpty(){return 0===this.getNewLength()&&0===this.replaceRange.length}getRangeAfterReplace(){return new re(this.replaceRange.start,this.replaceRange.start+this.getNewLength())}}class nt extends r3{apply(e){let t=[],r=0;for(let n of this.replacements)t.push(e.substring(r,n.replaceRange.start)),t.push(n.newText),r=n.replaceRange.endExclusive;return t.push(e.substring(r)),t.join("")}removeCommonSuffixPrefix(e){let t=[];for(let r of this.replacements){let n=r.removeCommonSuffixPrefix(e);n.isEmpty||t.push(n)}return new nn(t)}}class nr extends ne{constructor(e,t){super(e),this.newText=t}getNewLength(){return this.newText.length}toString(){return`${this.replaceRange} -> ${JSON.stringify(this.newText)}`}replace(e){return e.substring(0,this.replaceRange.start)+this.newText+e.substring(this.replaceRange.endExclusive)}removeCommonSuffixPrefix(e){let t=e.substring(this.replaceRange.start,this.replaceRange.endExclusive),r=ev(t,this.newText),n=Math.min(t.length-r,this.newText.length-r,ew(t,this.newText));return new ni(new re(this.replaceRange.start+r,this.replaceRange.endExclusive-n),this.newText.substring(r,this.newText.length-n))}removeCommonSuffixAndPrefix(e){return this.removeCommonSuffix(e).removeCommonPrefix(e)}removeCommonPrefix(e){let t=ev(this.replaceRange.substring(e),this.newText);return 0===t?this:this.slice(this.replaceRange.deltaStart(t),new re(t,this.newText.length))}removeCommonSuffix(e){let t=ew(this.replaceRange.substring(e),this.newText);return 0===t?this:this.slice(this.replaceRange.deltaEnd(-t),new re(0,this.newText.length-t))}toJson(){return{txt:this.newText,pos:this.replaceRange.start,len:this.replaceRange.length}}}class nn extends nt{static{this.empty=new nn([])}static replace(e,t){return new nn([new ni(e,t)])}static compose(e){if(0===e.length)return nn.empty;let t=e[0];for(let r=1;r<e.length;r++)t=t.compose(e[r]);return t}constructor(e){super(e)}_createNew(e){return new nn(e)}}class ni extends nr{static insert(e,t){return new ni(re.emptyAt(e),t)}static replace(e,t){return new ni(e,t)}equals(e){return this.replaceRange.equals(e.replaceRange)&&this.newText===e.newText}tryJoinTouching(e){return new ni(this.replaceRange.joinRightTouching(e.replaceRange),this.newText+e.newText)}slice(e,t){return new ni(e,t?t.substring(this.newText):this.newText)}}function ns(){if(!r){let e,t,n=(e=globalThis._VSCODE_PRODUCT_JSON,(e??globalThis.vscode?.context?.configuration()?.product)?.commit,t="vs/../../node_modules/@vscode/diff/dist/index.js",r8.asBrowserUri(t).toString(!0));r=import(`${n}`)}return r}async function no(e){return new na(await (e?(!i&&(i=ns().then(e=>e.createDiffComputer({useWasm:!0}))),i):(!n&&(n=ns().then(e=>e.createDiffComputer({useWasm:!1}))),n)))}ru._deps={StringEdit:nn,StringReplacement:ni,TextReplacement:rp,TextEdit:rf,TextLength:ra};class na{constructor(e){this._computer=e}computeDiff(e,t,r){let n=new rg(e.join("\n")),i=new rg(t.join("\n")),s=this._computer.computeDiff(n.value,i.value,{ignoreTrimWhitespace:!0,computeMoves:r.computeMoves,extendToSubwords:r.extendToSubwords}),o=n.getTransformer(),a=i.getTransformer(),l=[],u=0;for(let e of s.edits.replacements){let t=e.range.start+u,r=t+e.newText.length,n=o.getRange(new re(e.range.start,e.range.endExclusive)),i=a.getRange(new re(t,r));l.push(new r_(n,i)),u+=e.newText.length-(e.range.endExclusive-e.range.start)}let c=rS(l,n,i),h=[];if(r.computeMoves)for(let e of s.moves){let t=o.getPosition(e.range.original.start),r=o.getPosition(e.range.original.endExclusive),n=a.getPosition(e.range.modified.start),i=a.getPosition(e.range.modified.endExclusive),s=new rs(t.lineNumber,r.lineNumber),l=new rs(n.lineNumber,i.lineNumber);h.push(new t9(new ry(s,l),[]))}return new t7(c,h,s.hitTimeout)}}function nl(e,t){let r=Math.pow(10,t);return Math.round(e*r)/r}class nu{constructor(e,t,r,n=1){this._rgbaBrand=void 0,this.r=0|Math.min(255,Math.max(0,e)),this.g=0|Math.min(255,Math.max(0,t)),this.b=0|Math.min(255,Math.max(0,r)),this.a=nl(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a}}class nc{constructor(e,t,r,n){this._hslaBrand=void 0,this.h=0|Math.max(Math.min(360,e),0),this.s=nl(Math.max(Math.min(1,t),0),3),this.l=nl(Math.max(Math.min(1,r),0),3),this.a=nl(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a}static fromRGBA(e){let t=e.r/255,r=e.g/255,n=e.b/255,i=e.a,s=Math.max(t,r,n),o=Math.min(t,r,n),a=0,l=0,u=(o+s)/2,c=s-o;if(c>0){switch(l=Math.min(u<=.5?c/(2*u):c/(2-2*u),1),s){case t:a=(r-n)/c+6*(r<n);break;case r:a=(n-t)/c+2;break;case n:a=(t-r)/c+4}a*=60,a=Math.round(a)}return new nc(a,l,u,i)}static _hue2rgb(e,t,r){return(r<0&&(r+=1),r>1&&(r-=1),r<1/6)?e+(t-e)*6*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}static toRGBA(e){let t,r,n,i=e.h/360,{s,l:o,a}=e;if(0===s)t=r=n=o;else{let e=o<.5?o*(1+s):o+s-o*s,a=2*o-e;t=nc._hue2rgb(a,e,i+1/3),r=nc._hue2rgb(a,e,i),n=nc._hue2rgb(a,e,i-1/3)}return new nu(Math.round(255*t),Math.round(255*r),Math.round(255*n),a)}}class nh{constructor(e,t,r,n){this._hsvaBrand=void 0,this.h=0|Math.max(Math.min(360,e),0),this.s=nl(Math.max(Math.min(1,t),0),3),this.v=nl(Math.max(Math.min(1,r),0),3),this.a=nl(Math.max(Math.min(1,n),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a}static fromRGBA(e){let t=e.r/255,r=e.g/255,n=e.b/255,i=Math.max(t,r,n),s=i-Math.min(t,r,n);return new nh(Math.round(60*(0===s?0:i===t?((r-n)/s%6+6)%6:i===r?(n-t)/s+2:(t-r)/s+4)),0===i?0:s/i,i,e.a)}static toRGBA(e){let{h:t,s:r,v:n,a:i}=e,s=n*r,o=s*(1-Math.abs(t/60%2-1)),a=n-s,[l,u,c]=[0,0,0];return t<60?(l=s,u=o):t<120?(l=o,u=s):t<180?(u=s,c=o):t<240?(u=o,c=s):t<300?(l=o,c=s):t<=360&&(l=s,c=o),new nu(l=Math.round((l+a)*255),u=Math.round((u+a)*255),c=Math.round((c+a)*255),i)}}class nd{static fromHex(e){return nd.Format.CSS.parseHex(e)||nd.red}static equals(e,t){return!e&&!t||!!e&&!!t&&e.equals(t)}get hsla(){return this._hsla?this._hsla:nc.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:nh.fromRGBA(this.rgba)}constructor(e){if(e)if(e instanceof nu)this.rgba=e;else if(e instanceof nc)this._hsla=e,this.rgba=nc.toRGBA(e);else if(e instanceof nh)this._hsva=e,this.rgba=nh.toRGBA(e);else throw Error("Invalid color ctor argument");else throw Error("Color needs a value")}equals(e){return!!e&&nu.equals(this.rgba,e.rgba)&&nc.equals(this.hsla,e.hsla)&&nh.equals(this.hsva,e.hsva)}getRelativeLuminance(){return nl(.2126*nd._relativeLuminanceForComponent(this.rgba.r)+.7152*nd._relativeLuminanceForComponent(this.rgba.g)+.0722*nd._relativeLuminanceForComponent(this.rgba.b),4)}static _relativeLuminanceForComponent(e){let t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}isLighter(){return(299*this.rgba.r+587*this.rgba.g+114*this.rgba.b)/1e3>=128}isLighterThan(e){return this.getRelativeLuminance()>e.getRelativeLuminance()}isDarkerThan(e){return this.getRelativeLuminance()<e.getRelativeLuminance()}lighten(e){return new nd(new nc(this.hsla.h,this.hsla.s,this.hsla.l+this.hsla.l*e,this.hsla.a))}darken(e){return new nd(new nc(this.hsla.h,this.hsla.s,this.hsla.l-this.hsla.l*e,this.hsla.a))}transparent(e){let{r:t,g:r,b:n,a:i}=this.rgba;return new nd(new nu(t,r,n,i*e))}isTransparent(){return 0===this.rgba.a}isOpaque(){return 1===this.rgba.a}opposite(){return new nd(new nu(255-this.rgba.r,255-this.rgba.g,255-this.rgba.b,this.rgba.a))}mix(e,t=.5){let r=Math.min(Math.max(t,0),1),n=this.rgba,i=e.rgba,s=n.r+(i.r-n.r)*r,o=n.g+(i.g-n.g)*r,a=n.b+(i.b-n.b)*r,l=n.a+(i.a-n.a)*r;return new nd(new nu(s,o,a,l))}makeOpaque(e){if(this.isOpaque()||1!==e.rgba.a)return this;let{r:t,g:r,b:n,a:i}=this.rgba;return new nd(new nu(e.rgba.r-i*(e.rgba.r-t),e.rgba.g-i*(e.rgba.g-r),e.rgba.b-i*(e.rgba.b-n),1))}toString(){return this._toString||(this._toString=nd.Format.CSS.format(this)),this._toString}toNumber32Bit(){return this._toNumber32Bit||(this._toNumber32Bit=(this.rgba.r<<24|this.rgba.g<<16|this.rgba.b<<8|(255*this.rgba.a|0))>>>0),this._toNumber32Bit}static getLighterColor(e,t,r){if(e.isLighterThan(t))return e;r=r||.5;let n=e.getRelativeLuminance(),i=t.getRelativeLuminance();return r=r*(i-n)/i,e.lighten(r)}static getDarkerColor(e,t,r){if(e.isDarkerThan(t))return e;r=r||.5;let n=e.getRelativeLuminance(),i=t.getRelativeLuminance();return r=r*(n-i)/n,e.darken(r)}static{this.white=new nd(new nu(255,255,255,1))}static{this.black=new nd(new nu(0,0,0,1))}static{this.red=new nd(new nu(255,0,0,1))}static{this.blue=new nd(new nu(0,0,255,1))}static{this.green=new nd(new nu(0,255,0,1))}static{this.cyan=new nd(new nu(0,255,255,1))}static{this.lightgrey=new nd(new nu(211,211,211,1))}static{this.transparent=new nd(new nu(0,0,0,0))}}function nm(e){let t=[];for(let r of e){let e=Number(r);(e||0===e&&""!==r.replace(/\s/g,""))&&t.push(e)}return t}function ng(e,t,r,n){return{red:e/255,blue:r/255,green:t/255,alpha:n}}function nf(e,t){let r=t.index,n=t[0].length;if(void 0===r)return;let i=e.positionAt(r);return{startLineNumber:i.lineNumber,startColumn:i.column,endLineNumber:i.lineNumber,endColumn:i.column+n}}function np(e,t,r){if(!e||1!==t.length)return;let n=nm(t[0].values());return{range:e,color:ng(n[0],n[1],n[2],r?n[3]:1)}}function nb(e,t,r){if(!e||1!==t.length)return;let n=nm(t[0].values()),i=new nd(new nc(n[0],n[1]/100,n[2]/100,r?n[3]:1));return{range:e,color:ng(i.rgba.r,i.rgba.g,i.rgba.b,i.rgba.a)}}function ny(e,t){return"string"==typeof e?[...e.matchAll(t)]:e.findMatches(t)}!function(e){function t(e){let t=e.toString(16);return 2!==t.length?"0"+t:t}function r(e){let t=e.length;if(0===t||35!==e.charCodeAt(0))return null;if(7===t){let t=16*n(e.charCodeAt(1))+n(e.charCodeAt(2)),r=16*n(e.charCodeAt(3))+n(e.charCodeAt(4));return new si(new nu(t,r,16*n(e.charCodeAt(5))+n(e.charCodeAt(6)),1))}if(9===t){let t=16*n(e.charCodeAt(1))+n(e.charCodeAt(2)),r=16*n(e.charCodeAt(3))+n(e.charCodeAt(4)),i=16*n(e.charCodeAt(5))+n(e.charCodeAt(6));return new si(new nu(t,r,i,(16*n(e.charCodeAt(7))+n(e.charCodeAt(8)))/255))}if(4===t){let t=n(e.charCodeAt(1)),r=n(e.charCodeAt(2)),i=n(e.charCodeAt(3));return new si(new nu(16*t+t,16*r+r,16*i+i))}if(5===t){let t=n(e.charCodeAt(1)),r=n(e.charCodeAt(2)),i=n(e.charCodeAt(3)),s=n(e.charCodeAt(4));return new si(new nu(16*t+t,16*r+r,16*i+i,(16*s+s)/255))}return null}function n(e){switch(e){case 48:break;case 49:return 1;case 50:return 2;case 51:return 3;case 52:return 4;case 53:return 5;case 54:return 6;case 55:return 7;case 56:return 8;case 57:return 9;case 97:case 65:return 10;case 98:case 66:return 11;case 99:case 67:return 12;case 100:case 68:return 13;case 101:case 69:return 14;case 102:case 70:return 15}return 0}e.formatRGB=function(e){return 1===e.rgba.a?`rgb(${e.rgba.r}, ${e.rgba.g}, ${e.rgba.b})`:si.Format.CSS.formatRGBA(e)},e.formatRGBA=function(e){return`rgba(${e.rgba.r}, ${e.rgba.g}, ${e.rgba.b}, ${+e.rgba.a.toFixed(2)})`},e.formatHSL=function(e){return 1===e.hsla.a?`hsl(${e.hsla.h}, ${Math.round(100*e.hsla.s)}%, ${Math.round(100*e.hsla.l)}%)`:si.Format.CSS.formatHSLA(e)},e.formatHSLA=function(e){return`hsla(${e.hsla.h}, ${Math.round(100*e.hsla.s)}%, ${Math.round(100*e.hsla.l)}%, ${e.hsla.a.toFixed(2)})`},e.formatHex=function(e){return`#${t(e.rgba.r)}${t(e.rgba.g)}${t(e.rgba.b)}`},e.formatHexA=function(e,r=!1){return r&&1===e.rgba.a?si.Format.CSS.formatHex(e):`#${t(e.rgba.r)}${t(e.rgba.g)}${t(e.rgba.b)}${t(Math.round(255*e.rgba.a))}`},e.format=function(e){return e.isOpaque()?si.Format.CSS.formatHex(e):si.Format.CSS.formatRGBA(e)},e.parse=function(e){if("transparent"===e)return si.transparent;if(e.startsWith("#"))return r(e);if(e.startsWith("rgba(")){let t=e.match(/rgba\((?<r>(?:\+|-)?\d+), *(?<g>(?:\+|-)?\d+), *(?<b>(?:\+|-)?\d+), *(?<a>(?:\+|-)?\d+(\.\d+)?)\)/);if(!t)throw Error("Invalid color format "+e);let r=parseInt(t.groups?.r??"0"),n=parseInt(t.groups?.g??"0"),i=parseInt(t.groups?.b??"0");return new si(new nu(r,n,i,parseFloat(t.groups?.a??"0")))}if(e.startsWith("rgb(")){let t=e.match(/rgb\((?<r>(?:\+|-)?\d+), *(?<g>(?:\+|-)?\d+), *(?<b>(?:\+|-)?\d+)\)/);if(!t)throw Error("Invalid color format "+e);let r=parseInt(t.groups?.r??"0"),n=parseInt(t.groups?.g??"0");return new si(new nu(r,n,parseInt(t.groups?.b??"0")))}var t=e;switch(t){case"aliceblue":return new si(new nu(240,248,255,1));case"antiquewhite":return new si(new nu(250,235,215,1));case"aqua":case"cyan":return new si(new nu(0,255,255,1));case"aquamarine":return new si(new nu(127,255,212,1));case"azure":return new si(new nu(240,255,255,1));case"beige":return new si(new nu(245,245,220,1));case"bisque":return new si(new nu(255,228,196,1));case"black":return new si(new nu(0,0,0,1));case"blanchedalmond":return new si(new nu(255,235,205,1));case"blue":return new si(new nu(0,0,255,1));case"blueviolet":return new si(new nu(138,43,226,1));case"brown":return new si(new nu(165,42,42,1));case"burlywood":return new si(new nu(222,184,135,1));case"cadetblue":return new si(new nu(95,158,160,1));case"chartreuse":return new si(new nu(127,255,0,1));case"chocolate":return new si(new nu(210,105,30,1));case"coral":return new si(new nu(255,127,80,1));case"cornflowerblue":return new si(new nu(100,149,237,1));case"cornsilk":return new si(new nu(255,248,220,1));case"crimson":return new si(new nu(220,20,60,1));case"darkblue":return new si(new nu(0,0,139,1));case"darkcyan":return new si(new nu(0,139,139,1));case"darkgoldenrod":return new si(new nu(184,134,11,1));case"darkgray":case"darkgrey":return new si(new nu(169,169,169,1));case"darkgreen":return new si(new nu(0,100,0,1));case"darkkhaki":return new si(new nu(189,183,107,1));case"darkmagenta":return new si(new nu(139,0,139,1));case"darkolivegreen":return new si(new nu(85,107,47,1));case"darkorange":return new si(new nu(255,140,0,1));case"darkorchid":return new si(new nu(153,50,204,1));case"darkred":return new si(new nu(139,0,0,1));case"darksalmon":return new si(new nu(233,150,122,1));case"darkseagreen":return new si(new nu(143,188,143,1));case"darkslateblue":return new si(new nu(72,61,139,1));case"darkslategray":case"darkslategrey":return new si(new nu(47,79,79,1));case"darkturquoise":return new si(new nu(0,206,209,1));case"darkviolet":return new si(new nu(148,0,211,1));case"deeppink":return new si(new nu(255,20,147,1));case"deepskyblue":return new si(new nu(0,191,255,1));case"dimgray":case"dimgrey":return new si(new nu(105,105,105,1));case"dodgerblue":return new si(new nu(30,144,255,1));case"firebrick":return new si(new nu(178,34,34,1));case"floralwhite":return new si(new nu(255,250,240,1));case"forestgreen":return new si(new nu(34,139,34,1));case"fuchsia":case"magenta":return new si(new nu(255,0,255,1));case"gainsboro":return new si(new nu(220,220,220,1));case"ghostwhite":return new si(new nu(248,248,255,1));case"gold":return new si(new nu(255,215,0,1));case"goldenrod":return new si(new nu(218,165,32,1));case"gray":case"grey":return new si(new nu(128,128,128,1));case"green":return new si(new nu(0,128,0,1));case"greenyellow":return new si(new nu(173,255,47,1));case"honeydew":return new si(new nu(240,255,240,1));case"hotpink":return new si(new nu(255,105,180,1));case"indianred":return new si(new nu(205,92,92,1));case"indigo":return new si(new nu(75,0,130,1));case"ivory":return new si(new nu(255,255,240,1));case"khaki":return new si(new nu(240,230,140,1));case"lavender":return new si(new nu(230,230,250,1));case"lavenderblush":return new si(new nu(255,240,245,1));case"lawngreen":return new si(new nu(124,252,0,1));case"lemonchiffon":return new si(new nu(255,250,205,1));case"lightblue":return new si(new nu(173,216,230,1));case"lightcoral":return new si(new nu(240,128,128,1));case"lightcyan":return new si(new nu(224,255,255,1));case"lightgoldenrodyellow":return new si(new nu(250,250,210,1));case"lightgray":case"lightgrey":return new si(new nu(211,211,211,1));case"lightgreen":return new si(new nu(144,238,144,1));case"lightpink":return new si(new nu(255,182,193,1));case"lightsalmon":return new si(new nu(255,160,122,1));case"lightseagreen":return new si(new nu(32,178,170,1));case"lightskyblue":return new si(new nu(135,206,250,1));case"lightslategray":case"lightslategrey":return new si(new nu(119,136,153,1));case"lightsteelblue":return new si(new nu(176,196,222,1));case"lightyellow":return new si(new nu(255,255,224,1));case"lime":return new si(new nu(0,255,0,1));case"limegreen":return new si(new nu(50,205,50,1));case"linen":return new si(new nu(250,240,230,1));case"maroon":return new si(new nu(128,0,0,1));case"mediumaquamarine":return new si(new nu(102,205,170,1));case"mediumblue":return new si(new nu(0,0,205,1));case"mediumorchid":return new si(new nu(186,85,211,1));case"mediumpurple":return new si(new nu(147,112,219,1));case"mediumseagreen":return new si(new nu(60,179,113,1));case"mediumslateblue":return new si(new nu(123,104,238,1));case"mediumspringgreen":return new si(new nu(0,250,154,1));case"mediumturquoise":return new si(new nu(72,209,204,1));case"mediumvioletred":return new si(new nu(199,21,133,1));case"midnightblue":return new si(new nu(25,25,112,1));case"mintcream":return new si(new nu(245,255,250,1));case"mistyrose":return new si(new nu(255,228,225,1));case"moccasin":return new si(new nu(255,228,181,1));case"navajowhite":return new si(new nu(255,222,173,1));case"navy":return new si(new nu(0,0,128,1));case"oldlace":return new si(new nu(253,245,230,1));case"olive":return new si(new nu(128,128,0,1));case"olivedrab":return new si(new nu(107,142,35,1));case"orange":return new si(new nu(255,165,0,1));case"orangered":return new si(new nu(255,69,0,1));case"orchid":return new si(new nu(218,112,214,1));case"palegoldenrod":return new si(new nu(238,232,170,1));case"palegreen":return new si(new nu(152,251,152,1));case"paleturquoise":return new si(new nu(175,238,238,1));case"palevioletred":return new si(new nu(219,112,147,1));case"papayawhip":return new si(new nu(255,239,213,1));case"peachpuff":return new si(new nu(255,218,185,1));case"peru":return new si(new nu(205,133,63,1));case"pink":return new si(new nu(255,192,203,1));case"plum":return new si(new nu(221,160,221,1));case"powderblue":return new si(new nu(176,224,230,1));case"purple":return new si(new nu(128,0,128,1));case"rebeccapurple":return new si(new nu(102,51,153,1));case"red":return new si(new nu(255,0,0,1));case"rosybrown":return new si(new nu(188,143,143,1));case"royalblue":return new si(new nu(65,105,225,1));case"saddlebrown":return new si(new nu(139,69,19,1));case"salmon":return new si(new nu(250,128,114,1));case"sandybrown":return new si(new nu(244,164,96,1));case"seagreen":return new si(new nu(46,139,87,1));case"seashell":return new si(new nu(255,245,238,1));case"sienna":return new si(new nu(160,82,45,1));case"silver":return new si(new nu(192,192,192,1));case"skyblue":return new si(new nu(135,206,235,1));case"slateblue":return new si(new nu(106,90,205,1));case"slategray":case"slategrey":return new si(new nu(112,128,144,1));case"snow":return new si(new nu(255,250,250,1));case"springgreen":return new si(new nu(0,255,127,1));case"steelblue":return new si(new nu(70,130,180,1));case"tan":return new si(new nu(210,180,140,1));case"teal":return new si(new nu(0,128,128,1));case"thistle":return new si(new nu(216,191,216,1));case"tomato":return new si(new nu(255,99,71,1));case"turquoise":return new si(new nu(64,224,208,1));case"violet":return new si(new nu(238,130,238,1));case"wheat":return new si(new nu(245,222,179,1));case"white":return new si(new nu(255,255,255,1));case"whitesmoke":return new si(new nu(245,245,245,1));case"yellow":return new si(new nu(255,255,0,1));case"yellowgreen":return new si(new nu(154,205,50,1));default:return null}},e.parseHex=r}((ss=(si=nd||(nd={})).Format||(si.Format={})).CSS||(ss.CSS={}));let nv=/^-+|-+$/g;Symbol("MicrotaskDelay"),"function"!=typeof(g=globalThis).requestIdleCallback||g.cancelIdleCallback;class nw{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}cancel(){return this.error(new C)}}(so=ab||(ab={})).settled=async function(e){let t,r=await Promise.all(e.map(e=>e.then(e=>e,e=>{t||(t=e)})));if(void 0!==t)throw t;return r},so.withAsyncBody=function(e){return new Promise(async(t,r)=>{try{await e(t,r)}catch(e){r(e)}})};class nC{constructor(){this._unsatisfiedConsumers=[],this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(e){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){let t=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(t,e)}else this._unconsumedValues.push(e)}produceFinal(e){for(let t of(this._ensureNoFinalValue(),this._finalValue=e,this._unsatisfiedConsumers))this._resolveOrRejectDeferred(t,e);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new S("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(e,t){t.ok?e.complete(t.value):e.error(t.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){let e=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return e.ok?Promise.resolve(e.value):Promise.reject(e.error)}{let e=new nw;return this._unsatisfiedConsumers.push(e),e.p}}}class n_{constructor(e,t){this._onReturn=t,this._producerConsumer=new nC,this._iterator={next:()=>this._producerConsumer.consume(),return:()=>(this._onReturn?.(),Promise.resolve({done:!0,value:void 0})),throw:async e=>(this._finishError(e),{done:!0,value:void 0})},queueMicrotask(async()=>{let t=e({emitOne:e=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:e}}),emitMany:e=>{for(let t of e)this._producerConsumer.produce({ok:!0,value:{done:!1,value:t}})},reject:e=>this._finishError(e)});if(!this._producerConsumer.hasFinalValue)try{await t,this._finishOk()}catch(e){this._finishError(e)}})}static fromArray(e){return new n_(t=>{t.emitMany(e)})}static fromPromise(e){return new n_(async t=>{t.emitMany(await e)})}static fromPromisesResolveOrder(e){return new n_(async t=>{await Promise.all(e.map(async e=>t.emitOne(await e)))})}static merge(e){return new n_(async t=>{await Promise.all(e.map(async e=>{for await(let r of e)t.emitOne(r)}))})}static{this.EMPTY=n_.fromArray([])}static map(e,t){return new n_(async r=>{for await(let n of e)r.emitOne(t(n))})}static tee(e){let t,r,n=new nw,i=async()=>{if(t&&r)try{for await(let n of e)t.emitOne(n),r.emitOne(n)}catch(e){t.reject(e),r.reject(e)}finally{n.complete()}};return[new n_(async e=>(t=e,i(),n.p)),new n_(async e=>(r=e,i(),n.p))]}map(e){return n_.map(this,e)}static coalesce(e){return n_.filter(e,e=>!!e)}coalesce(){return n_.coalesce(this)}static filter(e,t){return new n_(async r=>{for await(let n of e)t(n)&&r.emitOne(n)})}filter(e){return n_.filter(this,e)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(e){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:e})}[Symbol.asyncIterator](){return this._iterator}}class nS{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=e1(e);let r=this.values,n=this.prefixSum,i=t.length;return 0!==i&&(this.values=new Uint32Array(r.length+i),this.values.set(r.subarray(0,e),0),this.values.set(r.subarray(e),e+i),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(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=e1(e),t=e1(t),this.values[e]!==t&&(this.values[e]=t,e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),!0)}removeValues(e,t){e=e1(e),t=e1(t);let r=this.values,n=this.prefixSum;if(e>=r.length)return!1;let i=r.length-e;return t>=i&&(t=i),0!==t&&(this.values=new Uint32Array(r.length-t),this.values.set(r.subarray(0,e),0),this.values.set(r.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(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return 0===this.values.length?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=e1(e),this._getPrefixSum(e))}_getPrefixSum(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 r=t;r<=e;r++)this.prefixSum[r]=this.prefixSum[r-1]+this.values[r];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,r=this.values.length-1,n=0,i=0,s=0;for(;t<=r;)if(n=t+(r-t)/2|0,s=(i=this.prefixSum[n])-this.values[n],e<s)r=n-1;else if(e>=i)t=n+1;else break;return new nL(n,e-s)}}class nL{constructor(e,t){this.index=e,this.remainder=t,this._prefixSumIndexOfResultBrand=void 0,this.index=e,this.remainder=t}}class nx{constructor(e,t,r,n){this._uri=e,this._lines=t,this._eol=r,this._versionId=n,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}get version(){return this._versionId}getText(){return null===this._cachedTextValue&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(e){for(let t of(e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null),e.changes))this._acceptDeleteRange(t.range),this._acceptInsertText(new eQ(t.range.startLineNumber,t.range.startColumn),t.text);this._versionId=e.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){let e=this._eol.length,t=this._lines.length,r=new Uint32Array(t);for(let n=0;n<t;n++)r[n]=this._lines[n].length+e;this._lineStarts=new nS(r)}}_setLineText(e,t){this._lines[e]=t,this._lineStarts&&this._lineStarts.setValue(e,this._lines[e].length+this._eol.length)}_acceptDeleteRange(e){if(e.startLineNumber===e.endLineNumber){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));return}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)}_acceptInsertText(e,t){if(0===t.length)return;let r=t.split(/\r\n|\r|\n/);if(1===r.length)return void this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+r[0]+this._lines[e.lineNumber-1].substring(e.column-1));r[r.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)+r[0]);let n=new Uint32Array(r.length-1);for(let t=1;t<r.length;t++)this._lines.splice(e.lineNumber+t-1,0,r[t]),n[t-1]=r[t].length+this._eol.length;this._lineStarts&&this._lineStarts.insertValues(e.lineNumber,n)}}class nN{constructor(){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 nE(tE.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]}}class nE extends nx{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(e){let t=[];for(let r=0;r<this._lines.length;r++){let n=this._lines[r],i=this.offsetAt(new eQ(r+1,1));for(let r of n.matchAll(e))(r.index||0===r.index)&&(r.index=r.index+i),t.push(r)}return t}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(e){return this._lines[e-1]}getWordAtPosition(e,t){let r=t0(e.column,tY(t),this._lines[e.lineNumber-1],0);return r?new eZ(e.lineNumber,r.startColumn,e.lineNumber,r.endColumn):null}words(e){let t=this._lines,r=this._wordenize.bind(this),n=0,i="",s=0,o=[];return{*[Symbol.iterator](){for(;;)if(s<o.length){let e=i.substring(o[s].start,o[s].end);s+=1,yield e}else if(n<t.length)o=r(i=t[n],e),s=0,n+=1;else break}}}getLineWords(e,t){let r=this._lines[e-1],n=this._wordenize(r,t),i=[];for(let e of n)i.push({word:r.substring(e.start,e.end),startColumn:e.start+1,endColumn:e.end+1});return i}_wordenize(e,t){let r,n=[];for(t.lastIndex=0;(r=t.exec(e))&&0!==r[0].length;)n.push({start:r.index,end:r.index+r[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,r=e.startLineNumber-1,n=e.endLineNumber-1,i=[];i.push(this._lines[r].substring(e.startColumn-1));for(let e=r+1;e<n;e++)i.push(this._lines[e]);return i.push(this._lines[n].substring(0,e.endColumn-1)),i.join(t)}offsetAt(e){return e=this._validatePosition(e),this._ensureLineStarts(),this._lineStarts.getPrefixSum(e.lineNumber-2)+(e.column-1)}positionAt(e){e=Math.max(0,e=Math.floor(e)),this._ensureLineStarts();let t=this._lineStarts.getIndexOf(e),r=this._lines[t.index].length;return{lineNumber:1+t.index,column:1+Math.min(t.remainder,r)}}_validateRange(e){let t=this._validatePosition({lineNumber:e.startLineNumber,column:e.startColumn}),r=this._validatePosition({lineNumber:e.endLineNumber,column:e.endColumn});return t.lineNumber!==e.startLineNumber||t.column!==e.startColumn||r.lineNumber!==e.endLineNumber||r.column!==e.endColumn?{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:r.lineNumber,endColumn:r.column}:e}_validatePosition(e){if(!eQ.isIPosition(e))throw Error("bad position");let{lineNumber:t,column:r}=e,n=!1;if(t<1)t=1,r=1,n=!0;else if(t>this._lines.length)t=this._lines.length,r=this._lines[t-1].length+1,n=!0;else{let e=this._lines[t-1].length+1;r<1?(r=1,n=!0):r>e&&(r=e,n=!0)}return n?{lineNumber:t,column:r}:e}}class nA{constructor(e=null){this._foreignModule=e,this._requestHandlerBrand=void 0,this._workerTextModelSyncServer=new nN}dispose(){}async $ping(){return"pong"}_getModel(e){return this._workerTextModelSyncServer.getModel(e)}getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(e){this._workerTextModelSyncServer.$acceptNewModel(e)}$acceptModelChanged(e,t){this._workerTextModelSyncServer.$acceptModelChanged(e,t)}$acceptRemovedModel(e){this._workerTextModelSyncServer.$acceptRemovedModel(e)}async $computeUnicodeHighlights(e,t,r){let n=this._getModel(e);return n?t2.computeUnicodeHighlights(n,t,r):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(e,t){let r=this._getModel(e);if(!r)return[];let n=[];if(t.findRegionSectionHeaders&&t.foldingRules?.markers){let e=function(e,t){let r=[],n=e.getLineCount();for(let i=1;i<=n;i++){let n=e.getLineContent(i),s=n.match(t.foldingRules.markers.start);if(s){let e={startLineNumber:i,startColumn:s[0].length+1,endLineNumber:i,endColumn:n.length+1};if(e.endColumn>e.startColumn){let t={range:e,...function(e){let t=(e=e.trim()).startsWith("-");return{text:e=e.replace(nv,""),hasSeparatorLine:t}}(n.substring(s[0].length)),shouldBeInComments:!1};(t.text||t.hasSeparatorLine)&&r.push(t)}}}return r}(r,t);n=n.concat(e)}if(t.findMarkSectionHeaders){let e=function(e,t){let r=[],n=e.getLineCount();if(!t.markSectionHeaderRegex||""===t.markSectionHeaderRegex.trim())return r;let i=function(e){if(!e||0===e.length)return!1;for(let t=0,r=e.length;t<r;t++){let n=e.charCodeAt(t);if(10===n)return!0;if(92===n){if(++t>=r)break;let n=e.charCodeAt(t);if(110===n||114===n||87===n)return!0}}return!1}(t.markSectionHeaderRegex),s=RegExp(t.markSectionHeaderRegex,`gdm${i?"s":""}`);if("^"!==s.source&&"^$"!==s.source&&"$"!==s.source&&"^\\s*$"!==s.source&&s.exec("")&&0===s.lastIndex)return r;for(let t=1;t<=n;t+=95){let i,o=Math.min(t+100-1,n),a=[];for(let r=t;r<=o;r++)a.push(e.getLineContent(r));let l=a.join("\n");for(s.lastIndex=0;null!==(i=s.exec(l));){let e=l.substring(0,i.index),n=t+(e.match(/\n/g)||[]).length,o=i[0].split("\n"),a=o.length,u=n+a-1,c=e.lastIndexOf("\n")+1,h=i.index-c+1,d=o[o.length-1],m=1===a?h+i[0].length:d.length+1,g={range:{startLineNumber:n,startColumn:h,endLineNumber:u,endColumn:m},text:(i.groups??{}).label??"",hasSeparatorLine:((i.groups??{}).separator??"")!=="",shouldBeInComments:!0};(g.text||g.hasSeparatorLine)&&(0===r.length||r[r.length-1].range.endLineNumber<g.range.startLineNumber)&&r.push(g),s.lastIndex=i.index+i[0].length}}return r}(r,t);n=n.concat(e)}return n}async $computeDiff(e,t,r,n){let i=this._getModel(e),s=this._getModel(t);if(!i||!s)return null;let o=await function(e){switch(e){case"legacy":return new rL;case"advanced":return new r7;case"advanced-external":return no(!1);case"advanced-wasm":return no(!0)}}(n);return nA.computeDiff(i,s,r,o)}static computeDiff(e,t,r,n){let i=e.getLinesContent(),s=t.getLinesContent(),o=n.computeDiff(i,s,r);function a(e){return e.map(e=>[e.original.startLineNumber,e.original.endLineNumberExclusive,e.modified.startLineNumber,e.modified.endLineNumberExclusive,e.innerChanges?.map(e=>[e.originalRange.startLineNumber,e.originalRange.startColumn,e.originalRange.endLineNumber,e.originalRange.endColumn,e.modifiedRange.startLineNumber,e.modifiedRange.startColumn,e.modifiedRange.endLineNumber,e.modifiedRange.endColumn])])}return{identical:!(o.changes.length>0)&&this._modelsAreIdentical(e,t),quitEarly:o.hitTimeout,changes:a(o.changes),moves:o.moves.map(e=>[e.lineRangeMapping.original.startLineNumber,e.lineRangeMapping.original.endLineNumberExclusive,e.lineRangeMapping.modified.startLineNumber,e.lineRangeMapping.modified.endLineNumberExclusive,a(e.changes)])}}static _modelsAreIdentical(e,t){let r=e.getLineCount();if(r!==t.getLineCount())return!1;for(let n=1;n<=r;n++)if(e.getLineContent(n)!==t.getLineContent(n))return!1;return!0}static{this._diffLimit=1e5}async $computeMoreMinimalEdits(e,t,r){let n,i=this._getModel(e);if(!i)return t;let s=[];t=t.slice(0).sort((e,t)=>e.range&&t.range?eZ.compareRangesUsingStarts(e.range,t.range):!e.range-!t.range);let o=0;for(let e=1;e<t.length;e++)eZ.getEndPosition(t[o].range).equals(eZ.getStartPosition(t[e].range))?(t[o].range=eZ.fromPositions(eZ.getStartPosition(t[o].range),eZ.getEndPosition(t[e].range)),t[o].text+=t[e].text):t[++o]=t[e];for(let{range:e,text:l,eol:u}of(t.length=o+1,t)){var a;if("number"==typeof u&&(n=u),eZ.isEmpty(e)&&!l)continue;let t=i.getValueInRange(e);if(t===(l=l.replace(/\r\n|\n|\r/g,i.eol)))continue;if(Math.max(l.length,t.length)>nA._diffLimit){s.push({range:e,text:l});continue}let o=(a=l,new eX(new ez(t),new ez(a)).ComputeDiff(r).changes),c=i.offsetAt(eZ.lift(e).getStartPosition());for(let e of o){let t=i.positionAt(c+e.originalStart),r=i.positionAt(c+e.originalStart+e.originalLength),n={text:l.substr(e.modifiedStart,e.modifiedLength),range:{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:r.lineNumber,endColumn:r.column}};i.getValueInRange(n.range)!==n.text&&s.push(n)}}return"number"==typeof n&&s.push({eol:n,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s}async $computeLinks(e){let t=this._getModel(e);return t?t&&"function"==typeof t.getLineCount&&"function"==typeof t.getLineContent?e6.computeLinks(t):[]:null}async $computeDefaultDocumentColors(e){let t=this._getModel(e);return t?t&&"function"==typeof t.getValue&&"function"==typeof t.positionAt?function(e){let t=[],r=ny(e,/\b(rgb|rgba|hsl|hsla)(\([0-9\s,.\%\/]*\))|^(#)([A-Fa-f0-9]{3})\b|^(#)([A-Fa-f0-9]{4})\b|^(#)([A-Fa-f0-9]{6})\b|^(#)([A-Fa-f0-9]{8})\b|(?<=['"\s])(#)([A-Fa-f0-9]{3})\b|(?<=['"\s])(#)([A-Fa-f0-9]{4})\b|(?<=['"\s])(#)([A-Fa-f0-9]{6})\b|(?<=['"\s])(#)([A-Fa-f0-9]{8})\b/gm);if(r.length>0)for(let n of r){let r,i=n.filter(e=>void 0!==e),s=i[1],o=i[2];if(o){if("rgb"===s){let t=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*[\s,]\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*[\s,]\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;r=np(nf(e,n),ny(o,t),!1)}else if("rgba"===s){let t=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*[\s,]\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*[\s,]\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*(?:[\s,]|[\s]*\/)\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;r=np(nf(e,n),ny(o,t),!0)}else if("hsl"===s){let t=/^\(\s*((?:360(?:\.0+)?|(?:36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])(?:\.\d+)?))\s*[\s,]\s*(100(?:\.0+)?|\d{1,2}[.]\d*|\d{1,2})%\s*[\s,]\s*(100(?:\.0+)?|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;r=nb(nf(e,n),ny(o,t),!1)}else if("hsla"===s){let t=/^\(\s*((?:360(?:\.0+)?|(?:36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])(?:\.\d+)?))\s*[\s,]\s*(100(?:\.0+)?|\d{1,2}[.]\d*|\d{1,2})%\s*[\s,]\s*(100(?:\.0+)?|\d{1,2}[.]\d*|\d{1,2})%\s*(?:[\s,]|[\s]*\/)\s*(0[.][0-9]+|[.][0-9]+|[01][.]0*|[01])\s*\)$/gm;r=nb(nf(e,n),ny(o,t),!0)}else"#"===s&&(r=function(e,t){if(!e)return;let r=nd.Format.CSS.parseHex(t);if(r)return{range:e,color:ng(r.rgba.r,r.rgba.g,r.rgba.b,r.rgba.a)}}(nf(e,n),s+o));r&&t.push(r)}}return t}(t):[]:null}static{this._suggestionsLimit=1e4}async $textualSuggest(e,t,r,n){let i=new en,s=new RegExp(r,n),o=new Set;r:for(let r of e){let e=this._getModel(r);if(e){for(let r of e.words(s))if(r!==t&&isNaN(Number(r))&&(o.add(r),o.size>nA._suggestionsLimit))break r}}return{words:Array.from(o),duration:i.elapsed()}}async $computeWordRanges(e,t,r,n){let i=this._getModel(e);if(!i)return Object.create(null);let s=new RegExp(r,n),o=Object.create(null);for(let e=t.startLineNumber;e<t.endLineNumber;e++)for(let t of i.getLineWords(e,s)){if(!isNaN(Number(t.word)))continue;let r=o[t.word];r||(r=[],o[t.word]=r),r.push({startLineNumber:e,startColumn:t.startColumn,endLineNumber:e,endColumn:t.endColumn})}return o}async $navigateValueSet(e,t,r,n,i){let s=this._getModel(e);if(!s)return null;let o=new RegExp(n,i);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 e8.INSTANCE.navigateValueSet(t,a,l,u,r)}$fmr(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(e){return Promise.reject(e)}}}"function"==typeof importScripts&&(globalThis.monaco={editor:void 0,languages:void 0,CancellationTokenSource:class e{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 te),this._token}cancel(){this._token?this._token instanceof te&&this._token.cancel():this._token=ou.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof te&&this._token.dispose():this._token=ou.None}},Emitter:eh,KeyCode:oz,KeyMod:tW,Position:eQ,Range:eZ,Selection:tV,SelectionDirection:o8,MarkerSeverity:oH,MarkerTag:oG,Uri:tE,Token:class e{constructor(e,t,r){this.offset=e,this.type=t,this.language=r,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}}});class nk{static{this.CHANNEL_NAME="editorWorkerHost"}static getChannel(e){return e.getChannel(nk.CHANNEL_NAME)}static setChannel(e,t){e.setChannel(nk.CHANNEL_NAME,t)}}function nR(e,t=!1){let r=e.length,n=0,i="",s=0,o=16,a=0,l=0,u=0,c=0,h=0;function d(){if(i="",h=0,s=n,l=a,c=u,n>=r)return s=r,o=17;let t=e.charCodeAt(n);if(nT(t)){do n++,i+=String.fromCharCode(t),t=e.charCodeAt(n);while(nT(t))return o=15}if(nM(t))return n++,i+=String.fromCharCode(t),13===t&&10===e.charCodeAt(n)&&(n++,i+="\n"),a++,u=n,o=14;switch(t){case 123:return n++,o=1;case 125:return n++,o=2;case 91:return n++,o=3;case 93:return n++,o=4;case 58:return n++,o=6;case 44:return n++,o=5;case 34:return n++,i=function(){let t="",i=n;for(;;){if(n>=r){t+=e.substring(i,n),h=2;break}let s=e.charCodeAt(n);if(34===s){t+=e.substring(i,n),n++;break}if(92===s){if(t+=e.substring(i,n),++n>=r){h=2;break}switch(e.charCodeAt(n++)){case 34:t+='"';break;case 92:t+="\\";break;case 47:t+="/";break;case 98:t+="\b";break;case 102:t+="\f";break;case 110:t+="\n";break;case 114:t+="\r";break;case 116:t+=" ";break;case 117:let s=function(){let t=0,r=0;for(;t<4;){let i=e.charCodeAt(n);if(i>=48&&i<=57)r=16*r+i-48;else if(i>=65&&i<=70)r=16*r+i-65+10;else if(i>=97&&i<=102)r=16*r+i-97+10;else break;n++,t++}return t<4&&(r=-1),r}();s>=0?t+=String.fromCharCode(s):h=4;break;default:h=5}i=n;continue}if(s>=0&&s<=31)if(nM(s)){t+=e.substring(i,n),h=2;break}else h=6;n++}return t}(),o=10;case 47:let d=n-1;if(47===e.charCodeAt(n+1)){for(n+=2;n<r&&!nM(e.charCodeAt(n));)n++;return i=e.substring(d,n),o=12}if(42===e.charCodeAt(n+1)){n+=2;let t=r-1,s=!1;for(;n<t;){let t=e.charCodeAt(n);if(42===t&&47===e.charCodeAt(n+1)){n+=2,s=!0;break}n++,nM(t)&&(13===t&&10===e.charCodeAt(n)&&n++,a++,u=n)}return s||(n++,h=1),i=e.substring(d,n),o=13}return i+=String.fromCharCode(t),n++,o=16;case 45:if(i+=String.fromCharCode(t),++n===r||!nO(e.charCodeAt(n)))return o=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=function(){let t=n;if(48===e.charCodeAt(n))n++;else for(n++;n<e.length&&nO(e.charCodeAt(n));)n++;if(n<e.length&&46===e.charCodeAt(n)){if(!(++n<e.length&&nO(e.charCodeAt(n))))return h=3,e.substring(t,n);for(n++;n<e.length&&nO(e.charCodeAt(n));)n++}let r=n;if(n<e.length&&(69===e.charCodeAt(n)||101===e.charCodeAt(n)))if((++n<e.length&&43===e.charCodeAt(n)||45===e.charCodeAt(n))&&n++,n<e.length&&nO(e.charCodeAt(n))){for(n++;n<e.length&&nO(e.charCodeAt(n));)n++;r=n}else h=3;return e.substring(t,r)}(),o=11;default:for(;n<r&&function(e){if(nT(e)||nM(e))return!1;switch(e){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}(t);)n++,t=e.charCodeAt(n);if(s!==n){switch(i=e.substring(s,n)){case"true":return o=8;case"false":return o=9;case"null":return o=7}return o=16}return i+=String.fromCharCode(t),n++,o=16}}return{setPosition:function(e){n=e,i="",s=0,o=16,h=0},getPosition:()=>n,scan:t?function(){let e;do e=d();while(e>=12&&e<=15)return e}:d,getToken:()=>o,getTokenValue:()=>i,getTokenOffset:()=>s,getTokenLength:()=>n-s,getTokenStartLine:()=>l,getTokenStartCharacter:()=>s-c,getTokenError:()=>h}}function nT(e){return 32===e||9===e}function nM(e){return 10===e||13===e}function nO(e){return e>=48&&e<=57}(sa=ay||(ay={}))[sa.lineFeed=10]="lineFeed",sa[sa.carriageReturn=13]="carriageReturn",sa[sa.space=32]="space",sa[sa._0=48]="_0",sa[sa._1=49]="_1",sa[sa._2=50]="_2",sa[sa._3=51]="_3",sa[sa._4=52]="_4",sa[sa._5=53]="_5",sa[sa._6=54]="_6",sa[sa._7=55]="_7",sa[sa._8=56]="_8",sa[sa._9=57]="_9",sa[sa.a=97]="a",sa[sa.b=98]="b",sa[sa.c=99]="c",sa[sa.d=100]="d",sa[sa.e=101]="e",sa[sa.f=102]="f",sa[sa.g=103]="g",sa[sa.h=104]="h",sa[sa.i=105]="i",sa[sa.j=106]="j",sa[sa.k=107]="k",sa[sa.l=108]="l",sa[sa.m=109]="m",sa[sa.n=110]="n",sa[sa.o=111]="o",sa[sa.p=112]="p",sa[sa.q=113]="q",sa[sa.r=114]="r",sa[sa.s=115]="s",sa[sa.t=116]="t",sa[sa.u=117]="u",sa[sa.v=118]="v",sa[sa.w=119]="w",sa[sa.x=120]="x",sa[sa.y=121]="y",sa[sa.z=122]="z",sa[sa.A=65]="A",sa[sa.B=66]="B",sa[sa.C=67]="C",sa[sa.D=68]="D",sa[sa.E=69]="E",sa[sa.F=70]="F",sa[sa.G=71]="G",sa[sa.H=72]="H",sa[sa.I=73]="I",sa[sa.J=74]="J",sa[sa.K=75]="K",sa[sa.L=76]="L",sa[sa.M=77]="M",sa[sa.N=78]="N",sa[sa.O=79]="O",sa[sa.P=80]="P",sa[sa.Q=81]="Q",sa[sa.R=82]="R",sa[sa.S=83]="S",sa[sa.T=84]="T",sa[sa.U=85]="U",sa[sa.V=86]="V",sa[sa.W=87]="W",sa[sa.X=88]="X",sa[sa.Y=89]="Y",sa[sa.Z=90]="Z",sa[sa.asterisk=42]="asterisk",sa[sa.backslash=92]="backslash",sa[sa.closeBrace=125]="closeBrace",sa[sa.closeBracket=93]="closeBracket",sa[sa.colon=58]="colon",sa[sa.comma=44]="comma",sa[sa.dot=46]="dot",sa[sa.doubleQuote=34]="doubleQuote",sa[sa.minus=45]="minus",sa[sa.openBrace=123]="openBrace",sa[sa.openBracket=91]="openBracket",sa[sa.plus=43]="plus",sa[sa.slash=47]="slash",sa[sa.formFeed=12]="formFeed",sa[sa.tab=9]="tab";let nI=Array(20).fill(0).map((e,t)=>" ".repeat(t)),nP={" ":{"\n":Array(200).fill(0).map((e,t)=>"\n"+" ".repeat(t)),"\r":Array(200).fill(0).map((e,t)=>"\r"+" ".repeat(t)),"\r\n":Array(200).fill(0).map((e,t)=>"\r\n"+" ".repeat(t))}," ":{"\n":Array(200).fill(0).map((e,t)=>"\n"+" ".repeat(t)),"\r":Array(200).fill(0).map((e,t)=>"\r"+" ".repeat(t)),"\r\n":Array(200).fill(0).map((e,t)=>"\r\n"+" ".repeat(t))}},nF=["\n","\r","\r\n"];function nV(e,t){let r="";for(let n=0;n<t;n++)r+=e;return r}function nD(e,t){return -1!=="\r\n".indexOf(e.charAt(t))}(av||(av={})).DEFAULT={allowTrailingComma:!1},(sl=aw||(aw={}))[sl.None=0]="None",sl[sl.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",sl[sl.UnexpectedEndOfString=2]="UnexpectedEndOfString",sl[sl.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",sl[sl.InvalidUnicode=4]="InvalidUnicode",sl[sl.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",sl[sl.InvalidCharacter=6]="InvalidCharacter",(su=aC||(aC={}))[su.OpenBraceToken=1]="OpenBraceToken",su[su.CloseBraceToken=2]="CloseBraceToken",su[su.OpenBracketToken=3]="OpenBracketToken",su[su.CloseBracketToken=4]="CloseBracketToken",su[su.CommaToken=5]="CommaToken",su[su.ColonToken=6]="ColonToken",su[su.NullKeyword=7]="NullKeyword",su[su.TrueKeyword=8]="TrueKeyword",su[su.FalseKeyword=9]="FalseKeyword",su[su.StringLiteral=10]="StringLiteral",su[su.NumericLiteral=11]="NumericLiteral",su[su.LineCommentTrivia=12]="LineCommentTrivia",su[su.BlockCommentTrivia=13]="BlockCommentTrivia",su[su.LineBreakTrivia=14]="LineBreakTrivia",su[su.Trivia=15]="Trivia",su[su.Unknown=16]="Unknown",su[su.EOF=17]="EOF";let nq=function(e,t=[],r=av.DEFAULT){let n=null,i=[],s=[];function o(e){Array.isArray(i)?i.push(e):null!==n&&(i[n]=e)}return function(e,t,r=av.DEFAULT){let n=nR(e,!1),i=[];function s(e){return e?()=>e(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function o(e){return e?()=>e(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>i.slice()):()=>!0}function a(e){return e?t=>e(t,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function l(e){return e?t=>e(t,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>i.slice()):()=>!0}let u=o(t.onObjectBegin),c=l(t.onObjectProperty),h=s(t.onObjectEnd),d=o(t.onArrayBegin),m=s(t.onArrayEnd),g=l(t.onLiteralValue),f=a(t.onSeparator),p=s(t.onComment),b=a(t.onError),y=r&&r.disallowComments,v=r&&r.allowTrailingComma;function w(){for(;;){let e=n.scan();switch(n.getTokenError()){case 4:C(14);break;case 5:C(15);break;case 3:C(13);break;case 1:y||C(11);break;case 2:C(12);break;case 6:C(16)}switch(e){case 12:case 13:y?C(10):p();break;case 16:C(1);break;case 15:case 14:break;default:return e}}}function C(e,t=[],r=[]){if(b(e),t.length+r.length>0){let e=n.getToken();for(;17!==e;){if(-1!==t.indexOf(e)){w();break}if(-1!==r.indexOf(e))break;e=w()}}}function _(e){let t=n.getTokenValue();return e?g(t):(c(t),i.push(t)),w(),!0}if(w(),17===n.getToken())return r.allowEmptyContent||C(4,[],[]);!function e(){switch(n.getToken()){case 3:d(),w();let t=!0,r=!1;for(;4!==n.getToken()&&17!==n.getToken();){if(5===n.getToken()){if(r||C(4,[],[]),f(","),w(),4===n.getToken()&&v)break}else r&&C(6,[],[]);t?(i.push(0),t=!1):i[i.length-1]++,e()||C(4,[],[4,5]),r=!0}return m(),t||i.pop(),4!==n.getToken()?C(8,[4],[]):w(),!0;case 1:u(),w();let s=!1;for(;2!==n.getToken()&&17!==n.getToken();){if(5===n.getToken()){if(s||C(4,[],[]),f(","),w(),2===n.getToken()&&v)break}else s&&C(6,[],[]);(10!==n.getToken()?(C(3,[],[2,5]),1):(_(!1),6===n.getToken()?(f(":"),w(),e()||C(4,[],[2,5])):C(5,[],[2,5]),i.pop(),0))&&C(4,[],[2,5]),s=!0}return h(),2!==n.getToken()?C(7,[2],[]):w(),!0;case 10:return _(!0);default:switch(n.getToken()){case 11:let o=Number(n.getTokenValue());isNaN(o)&&(C(2),o=0),g(o);break;case 7:g(null);break;case 8:g(!0);break;case 9:g(!1);break;default:return!1}return w(),!0}}()?C(4,[],[]):17!==n.getToken()&&C(9,[],[])}(e,{onObjectBegin:()=>{let e={};o(e),s.push(i),i=e,n=null},onObjectProperty:e=>{n=e},onObjectEnd:()=>{i=s.pop()},onArrayBegin:()=>{let e=[];o(e),s.push(i),i=e,n=null},onArrayEnd:()=>{i=s.pop()},onLiteralValue:o,onError:(e,r,n)=>{t.push({error:e,offset:r,length:n})}},r),i[0]},n$=function e(t,r,n=!1){if(function(e,t,r=!1){return t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}(t,r,n)){let i=t.children;if(Array.isArray(i))for(let t=0;t<i.length&&i[t].offset<=r;t++){let s=e(i[t],r,n);if(s)return s}return t}},nK=function e(t){if(!t.parent||!t.parent.children)return[];let r=e(t.parent);if("property"===t.parent.type){let e=t.parent.children[0].value;r.push(e)}else if("array"===t.parent.type){let e=t.parent.children.indexOf(t);-1!==e&&r.push(e)}return r},nB=function e(t){switch(t.type){case"array":return t.children.map(e);case"object":let r=Object.create(null);for(let n of t.children){let t=n.children[1];t&&(r[n.children[0].value]=e(t))}return r;case"null":case"string":case"number":case"boolean":return t.value;default:return}};function nU(e,t){let r,n;if(e===t)return!0;if(null==e||null==t||typeof e!=typeof t||"object"!=typeof e||Array.isArray(e)!==Array.isArray(t))return!1;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(r=0;r<e.length;r++)if(!nU(e[r],t[r]))return!1}else{let i=[];for(n in e)i.push(n);i.sort();let s=[];for(n in t)s.push(n);if(s.sort(),!nU(i,s))return!1;for(r=0;r<i.length;r++)if(!nU(e[i[r]],t[i[r]]))return!1}return!0}function nj(e){return"number"==typeof e}function nW(e){return void 0!==e}function nz(e){return"boolean"==typeof e}function nH(e){return"string"==typeof e}function nG(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function nJ(e,t){let r=e.length-t.length;return r>0?e.lastIndexOf(t)===r:0===r&&e===t}function nX(e){let t="";(function(e,t){if(e.length<t.length)return!1;for(let r=0;r<t.length;r++)if(e[r]!==t[r])return!1;return!0})(e,"(?i)")&&(e=e.substring(4),t="i");try{return RegExp(e,t+"u")}catch(r){try{return new RegExp(e,t)}catch(e){return}}}function nQ(e){let t=0;for(let r=0;r<e.length;r++){t++;let n=e.charCodeAt(r);55296<=n&&n<=56319&&r++}return t}(sc=a_||(a_={}))[sc.InvalidSymbol=1]="InvalidSymbol",sc[sc.InvalidNumberFormat=2]="InvalidNumberFormat",sc[sc.PropertyNameExpected=3]="PropertyNameExpected",sc[sc.ValueExpected=4]="ValueExpected",sc[sc.ColonExpected=5]="ColonExpected",sc[sc.CommaExpected=6]="CommaExpected",sc[sc.CloseBraceExpected=7]="CloseBraceExpected",sc[sc.CloseBracketExpected=8]="CloseBracketExpected",sc[sc.EndOfFileExpected=9]="EndOfFileExpected",sc[sc.InvalidCommentToken=10]="InvalidCommentToken",sc[sc.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",sc[sc.UnexpectedEndOfString=12]="UnexpectedEndOfString",sc[sc.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",sc[sc.InvalidUnicode=14]="InvalidUnicode",sc[sc.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",sc[sc.InvalidCharacter=16]="InvalidCharacter",(aS||(aS={})).is=function(e){return"string"==typeof e},(aL||(aL={})).is=function(e){return"string"==typeof e},(sh=ax||(ax={})).MIN_VALUE=-0x80000000,sh.MAX_VALUE=0x7fffffff,sh.is=function(e){return"number"==typeof e&&sh.MIN_VALUE<=e&&e<=sh.MAX_VALUE},(sd=aN||(aN={})).MIN_VALUE=0,sd.MAX_VALUE=0x7fffffff,sd.is=function(e){return"number"==typeof e&&sd.MIN_VALUE<=e&&e<=sd.MAX_VALUE},(sm=aE||(aE={})).create=function(e,t){return e===Number.MAX_VALUE&&(e=aN.MAX_VALUE),t===Number.MAX_VALUE&&(t=aN.MAX_VALUE),{line:e,character:t}},sm.is=function(e){return lD.objectLiteral(e)&&lD.uinteger(e.line)&&lD.uinteger(e.character)},(sg=aA||(aA={})).create=function(e,t,r,n){if(lD.uinteger(e)&&lD.uinteger(t)&&lD.uinteger(r)&&lD.uinteger(n))return{start:aE.create(e,t),end:aE.create(r,n)};if(aE.is(e)&&aE.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${r}, ${n}]`)},sg.is=function(e){return lD.objectLiteral(e)&&aE.is(e.start)&&aE.is(e.end)},(sf=ak||(ak={})).create=function(e,t){return{uri:e,range:t}},sf.is=function(e){return lD.objectLiteral(e)&&aA.is(e.range)&&(lD.string(e.uri)||lD.undefined(e.uri))},(sp=aR||(aR={})).create=function(e,t,r,n){return{targetUri:e,targetRange:t,targetSelectionRange:r,originSelectionRange:n}},sp.is=function(e){return lD.objectLiteral(e)&&aA.is(e.targetRange)&&lD.string(e.targetUri)&&aA.is(e.targetSelectionRange)&&(aA.is(e.originSelectionRange)||lD.undefined(e.originSelectionRange))},(sb=aT||(aT={})).create=function(e,t,r,n){return{red:e,green:t,blue:r,alpha:n}},sb.is=function(e){return lD.objectLiteral(e)&&lD.numberRange(e.red,0,1)&&lD.numberRange(e.green,0,1)&&lD.numberRange(e.blue,0,1)&&lD.numberRange(e.alpha,0,1)},(sy=aM||(aM={})).create=function(e,t){return{range:e,color:t}},sy.is=function(e){return lD.objectLiteral(e)&&aA.is(e.range)&&aT.is(e.color)},(sv=aO||(aO={})).create=function(e,t,r){return{label:e,textEdit:t,additionalTextEdits:r}},sv.is=function(e){return lD.objectLiteral(e)&&lD.string(e.label)&&(lD.undefined(e.textEdit)||aB.is(e))&&(lD.undefined(e.additionalTextEdits)||lD.typedArray(e.additionalTextEdits,aB.is))},(sw=aI||(aI={})).Comment="comment",sw.Imports="imports",sw.Region="region",(sC=aP||(aP={})).create=function(e,t,r,n,i,s){let o={startLine:e,endLine:t};return lD.defined(r)&&(o.startCharacter=r),lD.defined(n)&&(o.endCharacter=n),lD.defined(i)&&(o.kind=i),lD.defined(s)&&(o.collapsedText=s),o},sC.is=function(e){return lD.objectLiteral(e)&&lD.uinteger(e.startLine)&&lD.uinteger(e.startLine)&&(lD.undefined(e.startCharacter)||lD.uinteger(e.startCharacter))&&(lD.undefined(e.endCharacter)||lD.uinteger(e.endCharacter))&&(lD.undefined(e.kind)||lD.string(e.kind))},(s_=aF||(aF={})).create=function(e,t){return{location:e,message:t}},s_.is=function(e){return lD.defined(e)&&ak.is(e.location)&&lD.string(e.message)},(sS=aV||(aV={})).Error=1,sS.Warning=2,sS.Information=3,sS.Hint=4,(sL=aD||(aD={})).Unnecessary=1,sL.Deprecated=2,(aq||(aq={})).is=function(e){return lD.objectLiteral(e)&&lD.string(e.href)},(sx=a$||(a$={})).create=function(e,t,r,n,i,s){let o={range:e,message:t};return lD.defined(r)&&(o.severity=r),lD.defined(n)&&(o.code=n),lD.defined(i)&&(o.source=i),lD.defined(s)&&(o.relatedInformation=s),o},sx.is=function(e){var t;return lD.defined(e)&&aA.is(e.range)&&lD.string(e.message)&&(lD.number(e.severity)||lD.undefined(e.severity))&&(lD.integer(e.code)||lD.string(e.code)||lD.undefined(e.code))&&(lD.undefined(e.codeDescription)||lD.string(null==(t=e.codeDescription)?void 0:t.href))&&(lD.string(e.source)||lD.undefined(e.source))&&(lD.undefined(e.relatedInformation)||lD.typedArray(e.relatedInformation,aF.is))},(sN=aK||(aK={})).create=function(e,t,...r){let n={title:e,command:t};return lD.defined(r)&&r.length>0&&(n.arguments=r),n},sN.is=function(e){return lD.defined(e)&&lD.string(e.title)&&lD.string(e.command)},(sE=aB||(aB={})).replace=function(e,t){return{range:e,newText:t}},sE.insert=function(e,t){return{range:{start:e,end:e},newText:t}},sE.del=function(e){return{range:e,newText:""}},sE.is=function(e){return lD.objectLiteral(e)&&lD.string(e.newText)&&aA.is(e.range)},(sA=aU||(aU={})).create=function(e,t,r){let n={label:e};return void 0!==t&&(n.needsConfirmation=t),void 0!==r&&(n.description=r),n},sA.is=function(e){return lD.objectLiteral(e)&&lD.string(e.label)&&(lD.boolean(e.needsConfirmation)||void 0===e.needsConfirmation)&&(lD.string(e.description)||void 0===e.description)},(aj||(aj={})).is=function(e){return lD.string(e)},(sk=aW||(aW={})).replace=function(e,t,r){return{range:e,newText:t,annotationId:r}},sk.insert=function(e,t,r){return{range:{start:e,end:e},newText:t,annotationId:r}},sk.del=function(e,t){return{range:e,newText:"",annotationId:t}},sk.is=function(e){return aB.is(e)&&(aU.is(e.annotationId)||aj.is(e.annotationId))},(sR=az||(az={})).create=function(e,t){return{textDocument:e,edits:t}},sR.is=function(e){return lD.defined(e)&&aY.is(e.textDocument)&&Array.isArray(e.edits)},(sT=aH||(aH={})).create=function(e,t,r){let n={kind:"create",uri:e};return void 0!==t&&(void 0!==t.overwrite||void 0!==t.ignoreIfExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n},sT.is=function(e){return e&&"create"===e.kind&&lD.string(e.uri)&&(void 0===e.options||(void 0===e.options.overwrite||lD.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||lD.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||aj.is(e.annotationId))},(sM=aG||(aG={})).create=function(e,t,r,n){let i={kind:"rename",oldUri:e,newUri:t};return void 0!==r&&(void 0!==r.overwrite||void 0!==r.ignoreIfExists)&&(i.options=r),void 0!==n&&(i.annotationId=n),i},sM.is=function(e){return e&&"rename"===e.kind&&lD.string(e.oldUri)&&lD.string(e.newUri)&&(void 0===e.options||(void 0===e.options.overwrite||lD.boolean(e.options.overwrite))&&(void 0===e.options.ignoreIfExists||lD.boolean(e.options.ignoreIfExists)))&&(void 0===e.annotationId||aj.is(e.annotationId))},(sO=aJ||(aJ={})).create=function(e,t,r){let n={kind:"delete",uri:e};return void 0!==t&&(void 0!==t.recursive||void 0!==t.ignoreIfNotExists)&&(n.options=t),void 0!==r&&(n.annotationId=r),n},sO.is=function(e){return e&&"delete"===e.kind&&lD.string(e.uri)&&(void 0===e.options||(void 0===e.options.recursive||lD.boolean(e.options.recursive))&&(void 0===e.options.ignoreIfNotExists||lD.boolean(e.options.ignoreIfNotExists)))&&(void 0===e.annotationId||aj.is(e.annotationId))},(aX||(aX={})).is=function(e){return e&&(void 0!==e.changes||void 0!==e.documentChanges)&&(void 0===e.documentChanges||e.documentChanges.every(e=>lD.string(e.kind)?aH.is(e)||aG.is(e)||aJ.is(e):az.is(e)))},(sI=aQ||(aQ={})).create=function(e){return{uri:e}},sI.is=function(e){return lD.defined(e)&&lD.string(e.uri)},(sP=aZ||(aZ={})).create=function(e,t){return{uri:e,version:t}},sP.is=function(e){return lD.defined(e)&&lD.string(e.uri)&&lD.integer(e.version)},(sF=aY||(aY={})).create=function(e,t){return{uri:e,version:t}},sF.is=function(e){return lD.defined(e)&&lD.string(e.uri)&&(null===e.version||lD.integer(e.version))},(sV=a1||(a1={})).create=function(e,t,r,n){return{uri:e,languageId:t,version:r,text:n}},sV.is=function(e){return lD.defined(e)&&lD.string(e.uri)&&lD.string(e.languageId)&&lD.integer(e.version)&&lD.string(e.text)},(sD=a0||(a0={})).PlainText="plaintext",sD.Markdown="markdown",sD.is=function(e){return e===sD.PlainText||e===sD.Markdown},(a2||(a2={})).is=function(e){return lD.objectLiteral(e)&&a0.is(e.kind)&&lD.string(e.value)},(sq=a4||(a4={})).Text=1,sq.Method=2,sq.Function=3,sq.Constructor=4,sq.Field=5,sq.Variable=6,sq.Class=7,sq.Interface=8,sq.Module=9,sq.Property=10,sq.Unit=11,sq.Value=12,sq.Enum=13,sq.Keyword=14,sq.Snippet=15,sq.Color=16,sq.File=17,sq.Reference=18,sq.Folder=19,sq.EnumMember=20,sq.Constant=21,sq.Struct=22,sq.Event=23,sq.Operator=24,sq.TypeParameter=25,(s$=a5||(a5={})).PlainText=1,s$.Snippet=2,(a7||(a7={})).Deprecated=1,(sK=a9||(a9={})).create=function(e,t,r){return{newText:e,insert:t,replace:r}},sK.is=function(e){return e&&lD.string(e.newText)&&aA.is(e.insert)&&aA.is(e.replace)},(sB=a6||(a6={})).asIs=1,sB.adjustIndentation=2,(a8||(a8={})).is=function(e){return e&&(lD.string(e.detail)||void 0===e.detail)&&(lD.string(e.description)||void 0===e.description)},(a3||(a3={})).create=function(e){return{label:e}},(le||(le={})).create=function(e,t){return{items:e||[],isIncomplete:!!t}},(sU=lt||(lt={})).fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},sU.is=function(e){return lD.string(e)||lD.objectLiteral(e)&&lD.string(e.language)&&lD.string(e.value)},(lr||(lr={})).is=function(e){return!!e&&lD.objectLiteral(e)&&(a2.is(e.contents)||lt.is(e.contents)||lD.typedArray(e.contents,lt.is))&&(void 0===e.range||aA.is(e.range))},(ln||(ln={})).create=function(e,t){return t?{label:e,documentation:t}:{label:e}},(li||(li={})).create=function(e,t,...r){let n={label:e};return lD.defined(t)&&(n.documentation=t),lD.defined(r)?n.parameters=r:n.parameters=[],n},(sj=ls||(ls={})).Text=1,sj.Read=2,sj.Write=3,(lo||(lo={})).create=function(e,t){let r={range:e};return lD.number(t)&&(r.kind=t),r},(sW=la||(la={})).File=1,sW.Module=2,sW.Namespace=3,sW.Package=4,sW.Class=5,sW.Method=6,sW.Property=7,sW.Field=8,sW.Constructor=9,sW.Enum=10,sW.Interface=11,sW.Function=12,sW.Variable=13,sW.Constant=14,sW.String=15,sW.Number=16,sW.Boolean=17,sW.Array=18,sW.Object=19,sW.Key=20,sW.Null=21,sW.EnumMember=22,sW.Struct=23,sW.Event=24,sW.Operator=25,sW.TypeParameter=26,(ll||(ll={})).Deprecated=1,(lu||(lu={})).create=function(e,t,r,n,i){let s={name:e,kind:t,location:{uri:n,range:r}};return i&&(s.containerName=i),s},(lc||(lc={})).create=function(e,t,r,n){return void 0!==n?{name:e,kind:t,location:{uri:r,range:n}}:{name:e,kind:t,location:{uri:r}}},(sz=lh||(lh={})).create=function(e,t,r,n,i,s){let o={name:e,detail:t,kind:r,range:n,selectionRange:i};return void 0!==s&&(o.children=s),o},sz.is=function(e){return e&&lD.string(e.name)&&lD.number(e.kind)&&aA.is(e.range)&&aA.is(e.selectionRange)&&(void 0===e.detail||lD.string(e.detail))&&(void 0===e.deprecated||lD.boolean(e.deprecated))&&(void 0===e.children||Array.isArray(e.children))&&(void 0===e.tags||Array.isArray(e.tags))},(sH=ld||(ld={})).Empty="",sH.QuickFix="quickfix",sH.Refactor="refactor",sH.RefactorExtract="refactor.extract",sH.RefactorInline="refactor.inline",sH.RefactorRewrite="refactor.rewrite",sH.Source="source",sH.SourceOrganizeImports="source.organizeImports",sH.SourceFixAll="source.fixAll",(sG=lm||(lm={})).Invoked=1,sG.Automatic=2,(sJ=lg||(lg={})).create=function(e,t,r){let n={diagnostics:e};return null!=t&&(n.only=t),null!=r&&(n.triggerKind=r),n},sJ.is=function(e){return lD.defined(e)&&lD.typedArray(e.diagnostics,a$.is)&&(void 0===e.only||lD.typedArray(e.only,lD.string))&&(void 0===e.triggerKind||e.triggerKind===lm.Invoked||e.triggerKind===lm.Automatic)},(sX=lf||(lf={})).create=function(e,t,r){let n={title:e},i=!0;return"string"==typeof t?(i=!1,n.kind=t):aK.is(t)?n.command=t:n.edit=t,i&&void 0!==r&&(n.kind=r),n},sX.is=function(e){return e&&lD.string(e.title)&&(void 0===e.diagnostics||lD.typedArray(e.diagnostics,a$.is))&&(void 0===e.kind||lD.string(e.kind))&&(void 0!==e.edit||void 0!==e.command)&&(void 0===e.command||aK.is(e.command))&&(void 0===e.isPreferred||lD.boolean(e.isPreferred))&&(void 0===e.edit||aX.is(e.edit))},(sQ=lp||(lp={})).create=function(e,t){let r={range:e};return lD.defined(t)&&(r.data=t),r},sQ.is=function(e){return lD.defined(e)&&aA.is(e.range)&&(lD.undefined(e.command)||aK.is(e.command))},(sZ=lb||(lb={})).create=function(e,t){return{tabSize:e,insertSpaces:t}},sZ.is=function(e){return lD.defined(e)&&lD.uinteger(e.tabSize)&&lD.boolean(e.insertSpaces)},(sY=ly||(ly={})).create=function(e,t,r){return{range:e,target:t,data:r}},sY.is=function(e){return lD.defined(e)&&aA.is(e.range)&&(lD.undefined(e.target)||lD.string(e.target))},(s1=lv||(lv={})).create=function(e,t){return{range:e,parent:t}},s1.is=function(e){return lD.objectLiteral(e)&&aA.is(e.range)&&(void 0===e.parent||s1.is(e.parent))},(s0=lw||(lw={})).namespace="namespace",s0.type="type",s0.class="class",s0.enum="enum",s0.interface="interface",s0.struct="struct",s0.typeParameter="typeParameter",s0.parameter="parameter",s0.variable="variable",s0.property="property",s0.enumMember="enumMember",s0.event="event",s0.function="function",s0.method="method",s0.macro="macro",s0.keyword="keyword",s0.modifier="modifier",s0.comment="comment",s0.string="string",s0.number="number",s0.regexp="regexp",s0.operator="operator",s0.decorator="decorator",(s2=lC||(lC={})).declaration="declaration",s2.definition="definition",s2.readonly="readonly",s2.static="static",s2.deprecated="deprecated",s2.abstract="abstract",s2.async="async",s2.modification="modification",s2.documentation="documentation",s2.defaultLibrary="defaultLibrary",(l_||(l_={})).is=function(e){return lD.objectLiteral(e)&&(void 0===e.resultId||"string"==typeof e.resultId)&&Array.isArray(e.data)&&(0===e.data.length||"number"==typeof e.data[0])},(s4=lS||(lS={})).create=function(e,t){return{range:e,text:t}},s4.is=function(e){return null!=e&&aA.is(e.range)&&lD.string(e.text)},(s5=lL||(lL={})).create=function(e,t,r){return{range:e,variableName:t,caseSensitiveLookup:r}},s5.is=function(e){return null!=e&&aA.is(e.range)&&lD.boolean(e.caseSensitiveLookup)&&(lD.string(e.variableName)||void 0===e.variableName)},(s7=lx||(lx={})).create=function(e,t){return{range:e,expression:t}},s7.is=function(e){return null!=e&&aA.is(e.range)&&(lD.string(e.expression)||void 0===e.expression)},(s9=lN||(lN={})).create=function(e,t){return{frameId:e,stoppedLocation:t}},s9.is=function(e){return lD.defined(e)&&aA.is(e.stoppedLocation)},(s6=lE||(lE={})).Type=1,s6.Parameter=2,s6.is=function(e){return 1===e||2===e},(s8=lA||(lA={})).create=function(e){return{value:e}},s8.is=function(e){return lD.objectLiteral(e)&&(void 0===e.tooltip||lD.string(e.tooltip)||a2.is(e.tooltip))&&(void 0===e.location||ak.is(e.location))&&(void 0===e.command||aK.is(e.command))},(s3=lk||(lk={})).create=function(e,t,r){let n={position:e,label:t};return void 0!==r&&(n.kind=r),n},s3.is=function(e){return lD.objectLiteral(e)&&aE.is(e.position)&&(lD.string(e.label)||lD.typedArray(e.label,lA.is))&&(void 0===e.kind||lE.is(e.kind))&&void 0===e.textEdits||lD.typedArray(e.textEdits,aB.is)&&(void 0===e.tooltip||lD.string(e.tooltip)||a2.is(e.tooltip))&&(void 0===e.paddingLeft||lD.boolean(e.paddingLeft))&&(void 0===e.paddingRight||lD.boolean(e.paddingRight))},(lR||(lR={})).createSnippet=function(e){return{kind:"snippet",value:e}},(lT||(lT={})).create=function(e,t,r,n){return{insertText:e,filterText:t,range:r,command:n}},(lM||(lM={})).create=function(e){return{items:e}},(oe=lO||(lO={})).Invoked=0,oe.Automatic=1,(lI||(lI={})).create=function(e,t){return{range:e,text:t}},(lP||(lP={})).create=function(e,t){return{triggerKind:e,selectedCompletionInfo:t}},(lF||(lF={})).is=function(e){return lD.objectLiteral(e)&&aL.is(e.uri)&&lD.string(e.name)},(ot=lV||(lV={})).create=function(e,t,r,n){return new nZ(e,t,r,n)},ot.is=function(e){return!!(lD.defined(e)&&lD.string(e.uri)&&(lD.undefined(e.languageId)||lD.string(e.languageId))&&lD.uinteger(e.lineCount)&&lD.func(e.getText)&&lD.func(e.positionAt)&&lD.func(e.offsetAt))},ot.applyEdits=function(e,t){let r=e.getText(),n=function e(t,r){if(t.length<=1)return t;let n=t.length/2|0,i=t.slice(0,n),s=t.slice(n);e(i,r),e(s,r);let o=0,a=0,l=0;for(;o<i.length&&a<s.length;)0>=r(i[o],s[a])?t[l++]=i[o++]:t[l++]=s[a++];for(;o<i.length;)t[l++]=i[o++];for(;a<s.length;)t[l++]=s[a++];return t}(t,(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=r.length;for(let t=n.length-1;t>=0;t--){let s=n[t],o=e.offsetAt(s.range.start),a=e.offsetAt(s.range.end);if(a<=i)r=r.substring(0,o)+s.newText+r.substring(a,r.length);else throw Error("Overlapping edit");i=o}return r};class nZ{constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,r=!0;for(let n=0;n<t.length;n++){r&&(e.push(n),r=!1);let i=t.charAt(n);r="\r"===i||"\n"===i,"\r"===i&&n+1<t.length&&"\n"===t.charAt(n+1)&&n++}r&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return aE.create(0,e);for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return aE.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}}or=lD||(lD={}),f=Object.prototype.toString,or.defined=function(e){return void 0!==e},or.undefined=function(e){return void 0===e},or.boolean=function(e){return!0===e||!1===e},or.string=function(e){return"[object String]"===f.call(e)},or.number=function(e){return"[object Number]"===f.call(e)},or.numberRange=function(e,t,r){return"[object Number]"===f.call(e)&&t<=e&&e<=r},or.integer=function(e){return"[object Number]"===f.call(e)&&-0x80000000<=e&&e<=0x7fffffff},or.uinteger=function(e){return"[object Number]"===f.call(e)&&0<=e&&e<=0x7fffffff},or.func=function(e){return"[object Function]"===f.call(e)},or.objectLiteral=function(e){return null!==e&&"object"==typeof e},or.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)};class nY{constructor(e,t,r,n){this._uri=e,this._languageId=t,this._version=r,this._content=n,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){for(let t of e)if(nY.isIncremental(t)){let e=n0(t.range),r=this.offsetAt(e.start),n=this.offsetAt(e.end);this._content=this._content.substring(0,r)+t.text+this._content.substring(n,this._content.length);let i=Math.max(e.start.line,0),s=Math.max(e.end.line,0),o=this._lineOffsets,a=n1(t.text,!1,r);if(s-i===a.length)for(let e=0,t=a.length;e<t;e++)o[e+i+1]=a[e];else a.length<1e4?o.splice(i+1,s-i,...a):this._lineOffsets=o=o.slice(0,i+1).concat(a,o.slice(s+1));let l=t.text.length-(n-r);if(0!==l)for(let e=i+1+a.length,t=o.length;e<t;e++)o[e]=o[e]+l}else if(nY.isFull(t))this._content=t.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=t}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=n1(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,n=t.length;if(0===n)return{line:0,character:e};for(;r<n;){let i=Math.floor((r+n)/2);t[i]>e?n=i:r=i+1}let i=r-1;return{line:i,character:e-t[i]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let r=t[e.line],n=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(r+e.character,n),r)}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){return null!=e&&"string"==typeof e.text&&void 0!==e.range&&(void 0===e.rangeLength||"number"==typeof e.rangeLength)}static isFull(e){return null!=e&&"string"==typeof e.text&&void 0===e.range&&void 0===e.rangeLength}}function n1(e,t,r=0){let n=t?[r]:[];for(let t=0;t<e.length;t++){let i=e.charCodeAt(t);(13===i||10===i)&&(13===i&&t+1<e.length&&10===e.charCodeAt(t+1)&&t++,n.push(r+t+1))}return n}function n0(e){let t=e.start,r=e.end;return t.line>r.line||t.line===r.line&&t.character>r.character?{start:r,end:t}:e}function n2(e){let t=n0(e.range);return t!==e.range?{newText:e.newText,range:t}:e}function n4(...e){var t,r;let n,i,s=e[0];if("string"==typeof s)n=s,e.splice(0,1),i=e&&"object"==typeof e[0]?e[0]:e;else if(s instanceof Array){let t=e.slice(1);if(s.length!==t.length+1)throw Error("expected a string as the first argument to l10n.t");let r=s[0];for(let e=1;e<s.length;e++)r+=`{${e-1}}`+s[e];return n4(r,...t)}else n=s.message,s.comment&&s.comment.length>0&&(Array.isArray(s.comment)?s.comment.join(""):s.comment),i=s.args??{};return t=n,0===Object.keys(r=i).length?t:t.replace(lW,(e,t)=>r[t]??e)}(on=lq||(lq={})).create=function(e,t,r,n){return new nY(e,t,r,n)},on.update=function(e,t,r){if(e instanceof nY)return e.update(t,r),e;throw Error("TextDocument.update: document must be created by TextDocument.create")},on.applyEdits=function(e,t){let r=e.getText(),n=function e(t,r){if(t.length<=1)return t;let n=t.length/2|0,i=t.slice(0,n),s=t.slice(n);e(i,r),e(s,r);let o=0,a=0,l=0;for(;o<i.length&&a<s.length;)0>=r(i[o],s[a])?t[l++]=i[o++]:t[l++]=s[a++];for(;o<i.length;)t[l++]=i[o++];for(;a<s.length;)t[l++]=s[a++];return t}(t.map(n2),(e,t)=>{let r=e.range.start.line-t.range.start.line;return 0===r?e.range.start.character-t.range.start.character:r}),i=0,s=[];for(let t of n){let n=e.offsetAt(t.range.start);if(n<i)throw Error("Overlapping edit");n>i&&s.push(r.substring(i,n)),t.newText.length&&s.push(t.newText),i=e.offsetAt(t.range.end)}return s.push(r.substr(i)),s.join("")},(oi=l$||(l$={}))[oi.Undefined=0]="Undefined",oi[oi.EnumValueMismatch=1]="EnumValueMismatch",oi[oi.Deprecated=2]="Deprecated",oi[oi.UnexpectedEndOfComment=257]="UnexpectedEndOfComment",oi[oi.UnexpectedEndOfString=258]="UnexpectedEndOfString",oi[oi.UnexpectedEndOfNumber=259]="UnexpectedEndOfNumber",oi[oi.InvalidUnicode=260]="InvalidUnicode",oi[oi.InvalidEscapeCharacter=261]="InvalidEscapeCharacter",oi[oi.InvalidCharacter=262]="InvalidCharacter",oi[oi.PropertyExpected=513]="PropertyExpected",oi[oi.CommaExpected=514]="CommaExpected",oi[oi.ColonExpected=515]="ColonExpected",oi[oi.ValueExpected=516]="ValueExpected",oi[oi.CommaOrCloseBacketExpected=517]="CommaOrCloseBacketExpected",oi[oi.CommaOrCloseBraceExpected=518]="CommaOrCloseBraceExpected",oi[oi.TrailingComma=519]="TrailingComma",oi[oi.DuplicateKey=520]="DuplicateKey",oi[oi.CommentNotPermitted=521]="CommentNotPermitted",oi[oi.PropertyKeysMustBeDoublequoted=528]="PropertyKeysMustBeDoublequoted",oi[oi.SchemaResolveError=768]="SchemaResolveError",oi[oi.SchemaUnsupportedFeature=769]="SchemaUnsupportedFeature",(os=lK||(lK={}))[os.v3=3]="v3",os[os.v4=4]="v4",os[os.v6=6]="v6",os[os.v7=7]="v7",os[os.v2019_09=19]="v2019_09",os[os.v2020_12=20]="v2020_12",(lB||(lB={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[a0.Markdown,a0.PlainText],commitCharactersSupport:!0,labelDetailsSupport:!0}}}};var n5,n7,n9,n6,n8,n3,ie,it,ir,ii,is,io,ia,il,iu,ic,ih,id,im,ig,ip,ib,iy,iv,iw,iC,i_,iS,iL,ix,iN,iE,iA,ik,iR,iT,iM,iO,iI,iP,iF,iV,iD,iq,i$,iK,iB,iU,ij,iW,iz,iH,iG,iJ,iX,iQ,iZ,iY,i1,i0,i2,i4,i5,i7,i9,i6,i8,i3,se,st,sr,sn,si,ss,so,sa,sl,su,sc,sh,sd,sm,sg,sf,sp,sb,sy,sv,sw,sC,s_,sS,sL,sx,sN,sE,sA,sk,sR,sT,sM,sO,sI,sP,sF,sV,sD,sq,s$,sK,sB,sU,sj,sW,sz,sH,sG,sJ,sX,sQ,sZ,sY,s1,s0,s2,s4,s5,s7,s9,s6,s8,s3,oe,ot,or,on,oi,os,oo,oa,ol,ou,oc,oh,od,om,og,of,op,ob,oy,ov,ow,oC,o_,oS,oL,ox,oN,oE,oA,ok,oR,oT,oM,oO,oI,oP,oF,oV,oD,oq,o$,oK,oB,oU,oj,oW,oz,oH,oG,oJ,oX,oQ,oZ,oY,o1,o0,o2,o4,o5,o7,o9,o6,o8,o3,ae,at,ar,an,ai,as,ao,aa,al,au,ac,ah,ad,am,ag,af,ap,ab,ay,av,aw,aC,a_,aS,aL,ax,aN,aE,aA,ak,aR,aT,aM,aO,aI,aP,aF,aV,aD,aq,a$,aK,aB,aU,aj,aW,az,aH,aG,aJ,aX,aQ,aZ,aY,a1,a0,a2,a4,a5,a7,a9,a6,a8,a3,le,lt,lr,ln,li,ls,lo,la,ll,lu,lc,lh,ld,lm,lg,lf,lp,lb,ly,lv,lw,lC,l_,lS,lL,lx,lN,lE,lA,lk,lR,lT,lM,lO,lI,lP,lF,lV,lD,lq,l$,lK,lB,lU,lj,lW=/{([^}]+)}/g;let lz={"color-hex":{errorMessage:n4("Invalid color format. Use #RGB, #RGBA, #RRGGBB or #RRGGBBAA."),pattern:/^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/},"date-time":{errorMessage:n4("String is not a RFC3339 date-time."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},date:{errorMessage:n4("String is not a RFC3339 date."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i},time:{errorMessage:n4("String is not a RFC3339 time."),pattern:/^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},email:{errorMessage:n4("String is not an e-mail address."),pattern:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}))$/},hostname:{errorMessage:n4("String is not a hostname."),pattern:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i},ipv4:{errorMessage:n4("String is not an IPv4 address."),pattern:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/},ipv6:{errorMessage:n4("String is not an IPv6 address."),pattern:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i}};class lH{constructor(e,t,r=0){this.offset=t,this.length=r,this.parent=e}get children(){return[]}toString(){return"type: "+this.type+" ("+this.offset+"/"+this.length+")"+(this.parent?" parent: {"+this.parent.toString()+"}":"")}}class lG extends lH{constructor(e,t){super(e,t),this.type="null",this.value=null}}class lJ extends lH{constructor(e,t,r){super(e,r),this.type="boolean",this.value=t}}class lX extends lH{constructor(e,t){super(e,t),this.type="array",this.items=[]}get children(){return this.items}}class lQ extends lH{constructor(e,t){super(e,t),this.type="number",this.isInteger=!0,this.value=NaN}}class lZ extends lH{constructor(e,t,r){super(e,t,r),this.type="string",this.value=""}}class lY extends lH{constructor(e,t,r){super(e,t),this.type="property",this.colonOffset=-1,this.keyNode=r}get children(){return this.valueNode?[this.keyNode,this.valueNode]:[this.keyNode]}}class l1 extends lH{constructor(e,t){super(e,t),this.type="object",this.properties=[]}get children(){return this.properties}}function l0(e){return nz(e)?e?{}:{not:{}}:e}(n5=lU||(lU={}))[n5.Key=0]="Key",n5[n5.Enum=1]="Enum";let l2={"http://json-schema.org/draft-03/schema#":lK.v3,"http://json-schema.org/draft-04/schema#":lK.v4,"http://json-schema.org/draft-06/schema#":lK.v6,"http://json-schema.org/draft-07/schema#":lK.v7,"https://json-schema.org/draft/2019-09/schema":lK.v2019_09,"https://json-schema.org/draft/2020-12/schema":lK.v2020_12};class l4{constructor(e){this.schemaDraft=e}}class l5{constructor(e=-1,t){this.focusOffset=e,this.exclude=t,this.schemas=[]}add(e){this.schemas.push(e)}merge(e){Array.prototype.push.apply(this.schemas,e.schemas)}include(e){return(-1===this.focusOffset||l6(e,this.focusOffset))&&e!==this.exclude}newSub(){return new l5(-1,this.exclude)}}class l7{get schemas(){return[]}add(e){}merge(e){}include(e){return!0}newSub(){return this}}l7.instance=new l7;class l9{constructor(){this.problems=[],this.propertiesMatches=0,this.processedProperties=new Set,this.propertiesValueMatches=0,this.primaryValueMatches=0,this.enumValueMatch=!1,this.enumValues=void 0}hasProblems(){return!!this.problems.length}merge(e){this.problems=this.problems.concat(e.problems),this.propertiesMatches+=e.propertiesMatches,this.propertiesValueMatches+=e.propertiesValueMatches,this.mergeProcessedProperties(e)}mergeEnumValues(e){if(!this.enumValueMatch&&!e.enumValueMatch&&this.enumValues&&e.enumValues)for(let t of(this.enumValues=this.enumValues.concat(e.enumValues),this.problems))t.code===l$.EnumValueMismatch&&(t.message=n4("Value is not accepted. Valid values: {0}.",this.enumValues.map(e=>JSON.stringify(e)).join(", ")))}mergePropertyMatch(e){this.problems=this.problems.concat(e.problems),this.propertiesMatches++,(e.enumValueMatch||!e.hasProblems()&&e.propertiesMatches)&&this.propertiesValueMatches++,e.enumValueMatch&&e.enumValues&&1===e.enumValues.length&&this.primaryValueMatches++}mergeProcessedProperties(e){e.processedProperties.forEach(e=>this.processedProperties.add(e))}compare(e){let t=this.hasProblems();return t!==e.hasProblems()?t?-1:1:this.enumValueMatch!==e.enumValueMatch?e.enumValueMatch?-1:1:this.primaryValueMatches!==e.primaryValueMatches?this.primaryValueMatches-e.primaryValueMatches:this.propertiesValueMatches!==e.propertiesValueMatches?this.propertiesValueMatches-e.propertiesValueMatches:this.propertiesMatches-e.propertiesMatches}}function l6(e,t,r=!1){return t>=e.offset&&t<e.offset+e.length||r&&t===e.offset+e.length}class l8{constructor(e,t=[],r=[]){this.root=e,this.syntaxErrors=t,this.comments=r}getNodeFromOffset(e,t=!1){if(this.root)return n$(this.root,e,t)}visit(e){if(this.root){let t=r=>{let n=e(r),i=r.children;if(Array.isArray(i))for(let e=0;e<i.length&&n;e++)n=t(i[e]);return n};t(this.root)}}validate(e,t,r=aV.Warning,n){if(this.root&&t){let i=new l9;return ue(this.root,t,i,l7.instance,new l4(n??l3(t))),i.problems.map(t=>{let n=aA.create(e.positionAt(t.location.offset),e.positionAt(t.location.offset+t.location.length));return a$.create(n,t.message,t.severity??r,t.code)})}}getMatchingSchemas(e,t=-1,r){if(this.root&&e){let n=new l5(t,r),i=new l4(l3(e));return ue(this.root,e,new l9,n,i),n.schemas}return[]}}function l3(e,t=lK.v2020_12){let r=e.$schema;return r?l2[r]??t:t}function ue(e,t,r,n,i){if(e&&n.include(e)){if("property"===e.type)return ue(e.valueNode,t,r,n,i);switch(function(){var s,o;let a,l,u;function c(t){return e.type===t||"integer"===t&&"number"===e.type&&e.isInteger}if(Array.isArray(t.type)?t.type.some(c)||r.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||n4("Incorrect type. Expected one of {0}.",t.type.join(", "))}):t.type&&!c(t.type)&&r.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||n4('Incorrect type. Expected "{0}".',t.type)}),Array.isArray(t.allOf))for(let s of t.allOf){let t=new l9,o=n.newSub();ue(e,l0(s),t,o,i),r.merge(t),n.merge(o)}let h=l0(t.not);if(h){let s=new l9,o=n.newSub();for(let a of(ue(e,h,s,o,i),s.hasProblems()||r.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||n4("Matches a schema that is not allowed.")}),o.schemas))a.inverted=!a.inverted,n.add(a)}let d=(t,s)=>{let o,a=[];for(let r of t){let t=l0(r),l=new l9,u=n.newSub();if(ue(e,t,l,u,i),l.hasProblems()||a.push(t),o)if(s||l.hasProblems()||o.validationResult.hasProblems()){let e=l.compare(o.validationResult);e>0?o={schema:t,validationResult:l,matchingSchemas:u}:0===e&&(o.matchingSchemas.merge(u),o.validationResult.mergeEnumValues(l))}else o.matchingSchemas.merge(u),o.validationResult.propertiesMatches+=l.propertiesMatches,o.validationResult.propertiesValueMatches+=l.propertiesValueMatches,o.validationResult.mergeProcessedProperties(l);else o={schema:t,validationResult:l,matchingSchemas:u}}return a.length>1&&s&&r.problems.push({location:{offset:e.offset,length:1},message:n4("Matches multiple schemas when only one must validate.")}),o&&(r.merge(o.validationResult),n.merge(o.matchingSchemas)),a.length};Array.isArray(t.anyOf)&&d(t.anyOf,!1),Array.isArray(t.oneOf)&&d(t.oneOf,!0);let m=t=>{let s=new l9,o=n.newSub();ue(e,l0(t),s,o,i),r.merge(s),n.merge(o)},g=l0(t.if);if(g&&(s=l0(t.then),o=l0(t.else),a=l0(g),l=new l9,ue(e,a,l,u=n.newSub(),i),n.merge(u),r.mergeProcessedProperties(l),l.hasProblems()?o&&m(o):s&&m(s)),Array.isArray(t.enum)){let n=nB(e),i=!1;for(let e of t.enum)if(nU(n,e)){i=!0;break}r.enumValues=t.enum,r.enumValueMatch=i,i||r.problems.push({location:{offset:e.offset,length:e.length},code:l$.EnumValueMismatch,message:t.errorMessage||n4("Value is not accepted. Valid values: {0}.",t.enum.map(e=>JSON.stringify(e)).join(", "))})}nW(t.const)&&(nU(nB(e),t.const)?r.enumValueMatch=!0:(r.problems.push({location:{offset:e.offset,length:e.length},code:l$.EnumValueMismatch,message:t.errorMessage||n4("Value must be {0}.",JSON.stringify(t.const))}),r.enumValueMatch=!1),r.enumValues=[t.const]);let f=t.deprecationMessage;if(f||t.deprecated){f=f||n4("Value is deprecated");let t=e.parent?.type==="property"?e.parent:e;r.problems.push({location:{offset:t.offset,length:t.length},severity:aV.Warning,message:f,code:l$.Deprecated})}}(),e.type){case"object":!function(e){let s=Object.create(null),o=new Set;for(let t of e.properties){let e=t.keyNode.value;s[e]=t.valueNode,o.add(e)}if(Array.isArray(t.required)){for(let n of t.required)if(!s[n]){let t=e.parent&&"property"===e.parent.type&&e.parent.keyNode,i=t?{offset:t.offset,length:t.length}:{offset:e.offset,length:1};r.problems.push({location:i,message:n4('Missing property "{0}".',n)})}}let a=e=>{o.delete(e),r.processedProperties.add(e)};if(t.properties)for(let e of Object.keys(t.properties)){a(e);let o=t.properties[e],l=s[e];if(l)if(nz(o))if(o)r.propertiesMatches++,r.propertiesValueMatches++;else{let n=l.parent;r.problems.push({location:{offset:n.keyNode.offset,length:n.keyNode.length},message:t.errorMessage||n4("Property {0} is not allowed.",e)})}else{let e=new l9;ue(l,o,e,n,i),r.mergePropertyMatch(e)}}if(t.patternProperties)for(let e of Object.keys(t.patternProperties)){let l=nX(e);if(l){let u=[];for(let a of o)if(l.test(a)){u.push(a);let o=s[a];if(o){let s=t.patternProperties[e];if(nz(s))if(s)r.propertiesMatches++,r.propertiesValueMatches++;else{let e=o.parent;r.problems.push({location:{offset:e.keyNode.offset,length:e.keyNode.length},message:t.errorMessage||n4("Property {0} is not allowed.",a)})}else{let e=new l9;ue(o,s,e,n,i),r.mergePropertyMatch(e)}}}u.forEach(a)}}let l=t.additionalProperties;if(void 0!==l)for(let e of o){a(e);let o=s[e];if(o){if(!1===l){let n=o.parent;r.problems.push({location:{offset:n.keyNode.offset,length:n.keyNode.length},message:t.errorMessage||n4("Property {0} is not allowed.",e)})}else if(!0!==l){let e=new l9;ue(o,l,e,n,i),r.mergePropertyMatch(e)}}}let u=t.unevaluatedProperties;if(void 0!==u){let e=[];for(let a of o)if(!r.processedProperties.has(a)){e.push(a);let o=s[a];if(o){if(!1===u){let e=o.parent;r.problems.push({location:{offset:e.keyNode.offset,length:e.keyNode.length},message:t.errorMessage||n4("Property {0} is not allowed.",a)})}else if(!0!==u){let e=new l9;ue(o,u,e,n,i),r.mergePropertyMatch(e)}}}e.forEach(a)}if(nj(t.maxProperties)&&e.properties.length>t.maxProperties&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Object has more properties than limit of {0}.",t.maxProperties)}),nj(t.minProperties)&&e.properties.length<t.minProperties&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Object has fewer properties than the required number of {0}",t.minProperties)}),t.dependentRequired)for(let e in t.dependentRequired){let r=s[e],n=t.dependentRequired[e];r&&Array.isArray(n)&&h(e,n)}if(t.dependentSchemas)for(let e in t.dependentSchemas){let r=s[e],n=t.dependentSchemas[e];r&&nG(n)&&h(e,n)}if(t.dependencies)for(let e in t.dependencies)s[e]&&h(e,t.dependencies[e]);let c=l0(t.propertyNames);if(c)for(let t of e.properties){let e=t.keyNode;e&&ue(e,c,r,l7.instance,i)}function h(t,o){if(Array.isArray(o))for(let n of o)s[n]?r.propertiesValueMatches++:r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Object is missing property {0} required by property {1}.",n,t)});else{let t=l0(o);if(t){let s=new l9;ue(e,t,s,n,i),r.mergePropertyMatch(s)}}}}(e);break;case"array":!function(e){let s,o;i.schemaDraft>=lK.v2020_12?(s=t.prefixItems,o=Array.isArray(t.items)?void 0:t.items):(s=Array.isArray(t.items)?t.items:void 0,o=Array.isArray(t.items)?t.additionalItems:t.items);let a=0;if(void 0!==s){let t=Math.min(s.length,e.items.length);for(;a<t;a++){let t=l0(s[a]),o=new l9,l=e.items[a];l&&(ue(l,t,o,n,i),r.mergePropertyMatch(o)),r.processedProperties.add(String(a))}}if(void 0!==o&&a<e.items.length)if("boolean"==typeof o)for(!1===o&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Array has too many items according to schema. Expected {0} or fewer.",a)});a<e.items.length;a++)r.processedProperties.add(String(a)),r.propertiesValueMatches++;else for(;a<e.items.length;a++){let t=new l9;ue(e.items[a],o,t,n,i),r.mergePropertyMatch(t),r.processedProperties.add(String(a))}let l=l0(t.contains);if(l){let n=0;for(let t=0;t<e.items.length;t++){let s=e.items[t],o=new l9;ue(s,l,o,l7.instance,i),!o.hasProblems()&&(n++,i.schemaDraft>=lK.v2020_12&&r.processedProperties.add(String(t)))}0!==n||nj(t.minContains)||r.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||n4("Array does not contain required item.")}),nj(t.minContains)&&n<t.minContains&&r.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||n4("Array has too few items that match the contains contraint. Expected {0} or more.",t.minContains)}),nj(t.maxContains)&&n>t.maxContains&&r.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||n4("Array has too many items that match the contains contraint. Expected {0} or less.",t.maxContains)})}let u=t.unevaluatedItems;if(void 0!==u)for(let s=0;s<e.items.length;s++){if(!r.processedProperties.has(String(s)))if(!1===u)r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Item does not match any validation rule from the array.")});else{let o=new l9;ue(e.items[s],t.unevaluatedItems,o,n,i),r.mergePropertyMatch(o)}r.processedProperties.add(String(s)),r.propertiesValueMatches++}if(nj(t.minItems)&&e.items.length<t.minItems&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Array has too few items. Expected {0} or more.",t.minItems)}),nj(t.maxItems)&&e.items.length>t.maxItems&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Array has too many items. Expected {0} or fewer.",t.maxItems)}),!0===t.uniqueItems){let t=nB(e);(function(){for(let e=0;e<t.length-1;e++){let r=t[e];for(let n=e+1;n<t.length;n++)if(nU(r,t[n]))return!0}return!1})()&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Array has duplicate items.")})}}(e);break;case"string":var s=e;if(nj(t.minLength)&&nQ(s.value)<t.minLength&&r.problems.push({location:{offset:s.offset,length:s.length},message:n4("String is shorter than the minimum length of {0}.",t.minLength)}),nj(t.maxLength)&&nQ(s.value)>t.maxLength&&r.problems.push({location:{offset:s.offset,length:s.length},message:n4("String is longer than the maximum length of {0}.",t.maxLength)}),nH(t.pattern)){let e=nX(t.pattern);e?.test(s.value)||r.problems.push({location:{offset:s.offset,length:s.length},message:t.patternErrorMessage||t.errorMessage||n4('String does not match the pattern of "{0}".',t.pattern)})}if(t.format)switch(t.format){case"uri":case"uri-reference":{let e;if(s.value){let r=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/.exec(s.value);r?r[2]||"uri"!==t.format||(e=n4("URI with a scheme is expected.")):e=n4("URI is expected.")}else e=n4("URI expected.");e&&r.problems.push({location:{offset:s.offset,length:s.length},message:t.patternErrorMessage||t.errorMessage||n4("String is not a URI: {0}",e)})}break;case"color-hex":case"date-time":case"date":case"time":case"email":case"hostname":case"ipv4":case"ipv6":let o=lz[t.format];s.value&&o.pattern.exec(s.value)||r.problems.push({location:{offset:s.offset,length:s.length},message:t.patternErrorMessage||t.errorMessage||o.errorMessage})}break;case"number":!function(e){let n=e.value;function i(e){let t=/^(-?\d+)(?:\.(\d+))?(?:e([-+]\d+))?$/.exec(e.toString());return t&&{value:Number(t[1]+(t[2]||"")),multiplier:(t[2]?.length||0)-(parseInt(t[3])||0)}}if(nj(t.multipleOf)){let s=-1;if(Number.isInteger(t.multipleOf))s=n%t.multipleOf;else{let e=i(t.multipleOf),r=i(n);if(e&&r){let t=10**Math.abs(r.multiplier-e.multiplier);r.multiplier<e.multiplier?r.value*=t:e.value*=t,s=r.value%e.value}}0!==s&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Value is not divisible by {0}.",t.multipleOf)})}function s(e,t){return nj(t)?t:nz(t)&&t?e:void 0}function o(e,t){if(!nz(t)||!t)return e}let a=s(t.minimum,t.exclusiveMinimum);nj(a)&&n<=a&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Value is below the exclusive minimum of {0}.",a)});let l=s(t.maximum,t.exclusiveMaximum);nj(l)&&n>=l&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Value is above the exclusive maximum of {0}.",l)});let u=o(t.minimum,t.exclusiveMinimum);nj(u)&&n<u&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Value is below the minimum of {0}.",u)});let c=o(t.maximum,t.exclusiveMaximum);nj(c)&&n>c&&r.problems.push({location:{offset:e.offset,length:e.length},message:n4("Value is above the maximum of {0}.",c)})}(e)}n.add({node:e,schema:t})}}class ut{constructor(e,t=[],r=Promise,n={}){this.schemaService=e,this.contributions=t,this.promiseConstructor=r,this.clientCapabilities=n}doResolve(e){for(let t=this.contributions.length-1;t>=0;t--){let r=this.contributions[t].resolveCompletion;if(r){let t=r(e);if(t)return t}}return this.promiseConstructor.resolve(e)}doComplete(e,t,r){let n,i={items:[],isIncomplete:!1},s=e.getText(),o=e.offsetAt(t),a=r.getNodeFromOffset(o,!0);if(this.isInComment(e,a?a.offset:0,o))return Promise.resolve(i);if(a&&o===a.offset+a.length&&o>0){let e=s[o-1];("object"===a.type&&"}"===e||"array"===a.type&&"]"===e)&&(a=a.parent)}let l=this.getCurrentWord(e,o);if(a&&("string"===a.type||"number"===a.type||"boolean"===a.type||"null"===a.type))n=aA.create(e.positionAt(a.offset),e.positionAt(a.offset+a.length));else{let r=o-l.length;r>0&&'"'===s[r-1]&&r--,n=aA.create(e.positionAt(r),t)}let u=new Map,c={add:e=>{let t=e.label,r=u.get(t);if(r)r.documentation||(r.documentation=e.documentation),r.detail||(r.detail=e.detail),r.labelDetails||(r.labelDetails=e.labelDetails);else{if((t=t.replace(/[\n]/g,"\u21B5")).length>60){let e=t.substr(0,57).trim()+"...";u.has(e)||(t=e)}e.textEdit=aB.replace(n,e.insertText),e.label=t,u.set(t,e),i.items.push(e)}},setAsIncomplete:()=>{i.isIncomplete=!0},error:e=>{console.error(e)},getNumberOfProposals:()=>i.items.length};return this.schemaService.getSchemaForResource(e.uri,r).then(t=>{let h,d=[],m=!0,g="";if(a&&"string"===a.type){let e=a.parent;e&&"property"===e.type&&e.keyNode===a&&(m=!e.valueNode,h=e,g=s.substr(a.offset+1,a.length-2),e&&(a=e.parent))}if(a&&"object"===a.type){if(a.offset===o)return i;a.properties.forEach(e=>{h&&h===e||u.set(e.keyNode.value,a3.create("__"))});let f="";m&&(f=this.evaluateSeparatorAfter(e,e.offsetAt(n.end))),t?this.getPropertyCompletions(t,r,a,m,f,c):this.getSchemaLessPropertyCompletions(r,a,g,c);let p=nK(a);this.contributions.forEach(t=>{let r=t.collectPropertyCompletions(e.uri,p,l,m,""===f,c);r&&d.push(r)}),!t&&l.length>0&&'"'!==s.charAt(o-l.length-1)&&(c.add({kind:a4.Property,label:this.getLabelForValue(l),insertText:this.getInsertTextForProperty(l,void 0,!1,f),insertTextFormat:a5.Snippet,documentation:""}),c.setAsIncomplete())}let f={};return t?this.getValueCompletions(t,r,a,o,e,c,f):this.getSchemaLessValueCompletions(r,a,o,e,c),this.contributions.length>0&&this.getContributedValueCompletions(r,a,o,e,c,d),this.promiseConstructor.all(d).then(()=>{if(0===c.getNumberOfProposals()){let t=o;a&&("string"===a.type||"number"===a.type||"boolean"===a.type||"null"===a.type)&&(t=a.offset+a.length);let r=this.evaluateSeparatorAfter(e,t);this.addFillerValueCompletions(f,r,c)}return i})})}getPropertyCompletions(e,t,r,n,i,s){t.getMatchingSchemas(e.schema,r.offset).forEach(e=>{if(e.node===r&&!e.inverted){let t=e.schema.properties;t&&Object.keys(t).forEach(e=>{let r=t[e];if("object"==typeof r&&!r.deprecationMessage&&!r.doNotSuggest){let t={kind:a4.Property,label:e,insertText:this.getInsertTextForProperty(e,r,n,i),insertTextFormat:a5.Snippet,filterText:this.getFilterTextForValue(e),documentation:this.fromMarkup(r.markdownDescription)||r.description||""};void 0!==r.suggestSortText&&(t.sortText=r.suggestSortText),t.insertText&&nJ(t.insertText,`$1${i}`)&&(t.command={title:"Suggest",command:"editor.action.triggerSuggest"}),s.add(t)}});let r=e.schema.propertyNames;if("object"==typeof r&&!r.deprecationMessage&&!r.doNotSuggest){let e=(e,t)=>{let o={kind:a4.Property,label:e,insertText:this.getInsertTextForProperty(e,void 0,n,i),insertTextFormat:a5.Snippet,filterText:this.getFilterTextForValue(e),documentation:t||this.fromMarkup(r.markdownDescription)||r.description||""};void 0!==r.suggestSortText&&(o.sortText=r.suggestSortText),o.insertText&&nJ(o.insertText,`$1${i}`)&&(o.command={title:"Suggest",command:"editor.action.triggerSuggest"}),s.add(o)};if(r.enum)for(let t=0;t<r.enum.length;t++){let n;r.markdownEnumDescriptions&&t<r.markdownEnumDescriptions.length?n=this.fromMarkup(r.markdownEnumDescriptions[t]):r.enumDescriptions&&t<r.enumDescriptions.length&&(n=r.enumDescriptions[t]),e(r.enum[t],n)}r.const&&e(r.const)}}})}getSchemaLessPropertyCompletions(e,t,r,n){let i=e=>{e.properties.forEach(e=>{let t=e.keyNode.value;n.add({kind:a4.Property,label:t,insertText:this.getInsertTextForValue(t,""),insertTextFormat:a5.Snippet,filterText:this.getFilterTextForValue(t),documentation:""})})};if(t.parent)if("property"===t.parent.type){let r=t.parent.keyNode.value;e.visit(e=>("property"===e.type&&e!==t.parent&&e.keyNode.value===r&&e.valueNode&&"object"===e.valueNode.type&&i(e.valueNode),!0))}else"array"===t.parent.type&&t.parent.items.forEach(e=>{"object"===e.type&&e!==t&&i(e)});else"object"===t.type&&n.add({kind:a4.Property,label:"$schema",insertText:this.getInsertTextForProperty("$schema",void 0,!0,""),insertTextFormat:a5.Snippet,documentation:"",filterText:this.getFilterTextForValue("$schema")})}getSchemaLessValueCompletions(e,t,r,n,i){let s=r;if(t&&("string"===t.type||"number"===t.type||"boolean"===t.type||"null"===t.type)&&(s=t.offset+t.length,t=t.parent),!t){i.add({kind:this.getSuggestionKind("object"),label:"Empty object",insertText:this.getInsertTextForValue({},""),insertTextFormat:a5.Snippet,documentation:""}),i.add({kind:this.getSuggestionKind("array"),label:"Empty array",insertText:this.getInsertTextForValue([],""),insertTextFormat:a5.Snippet,documentation:""});return}let o=this.evaluateSeparatorAfter(n,s),a=e=>{e.parent&&!l6(e.parent,r,!0)&&i.add({kind:this.getSuggestionKind(e.type),label:this.getLabelTextForMatchingNode(e,n),insertText:this.getInsertTextForMatchingNode(e,n,o),insertTextFormat:a5.Snippet,documentation:""}),"boolean"===e.type&&this.addBooleanValueCompletion(!e.value,o,i)};if("property"===t.type&&r>(t.colonOffset||0)){let n=t.valueNode;if(n&&(r>n.offset+n.length||"object"===n.type||"array"===n.type))return;let s=t.keyNode.value;e.visit(e=>("property"===e.type&&e.keyNode.value===s&&e.valueNode&&a(e.valueNode),!0)),"$schema"===s&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(o,i)}if("array"===t.type)if(t.parent&&"property"===t.parent.type){let r=t.parent.keyNode.value;e.visit(e=>("property"===e.type&&e.keyNode.value===r&&e.valueNode&&"array"===e.valueNode.type&&e.valueNode.items.forEach(a),!0))}else t.items.forEach(a)}getValueCompletions(e,t,r,n,i,s,o){let a,l,u=n;if(r&&("string"===r.type||"number"===r.type||"boolean"===r.type||"null"===r.type)&&(u=r.offset+r.length,l=r,r=r.parent),!r)return void this.addSchemaValueCompletions(e.schema,"",s,o);if("property"===r.type&&n>(r.colonOffset||0)){let e=r.valueNode;if(e&&n>e.offset+e.length)return;a=r.keyNode.value,r=r.parent}if(r&&(void 0!==a||"array"===r.type)){let c=this.evaluateSeparatorAfter(i,u);for(let u of t.getMatchingSchemas(e.schema,r.offset,l))if(u.node===r&&!u.inverted&&u.schema){if("array"===r.type&&u.schema.items){let e=s;if(u.schema.uniqueItems){let t=new Set;r.children.forEach(e=>{"array"!==e.type&&"object"!==e.type&&t.add(this.getLabelForValue(nB(e)))}),e={...s,add(e){t.has(e.label)||s.add(e)}}}if(Array.isArray(u.schema.items)){let t=this.findItemAtOffset(r,i,n);t<u.schema.items.length&&this.addSchemaValueCompletions(u.schema.items[t],c,e,o)}else this.addSchemaValueCompletions(u.schema.items,c,e,o)}if(void 0!==a){let e=!1;if(u.schema.properties){let t=u.schema.properties[a];t&&(e=!0,this.addSchemaValueCompletions(t,c,s,o))}if(u.schema.patternProperties&&!e)for(let t of Object.keys(u.schema.patternProperties)){let r=nX(t);if(r?.test(a)){e=!0;let r=u.schema.patternProperties[t];this.addSchemaValueCompletions(r,c,s,o)}}if(u.schema.additionalProperties&&!e){let e=u.schema.additionalProperties;this.addSchemaValueCompletions(e,c,s,o)}}}"$schema"!==a||r.parent||this.addDollarSchemaCompletions(c,s),o.boolean&&(this.addBooleanValueCompletion(!0,c,s),this.addBooleanValueCompletion(!1,c,s)),o.null&&this.addNullValueCompletion(c,s)}}getContributedValueCompletions(e,t,r,n,i,s){if(t){if(("string"===t.type||"number"===t.type||"boolean"===t.type||"null"===t.type)&&(t=t.parent),t&&"property"===t.type&&r>(t.colonOffset||0)){let e=t.keyNode.value,o=t.valueNode;if((!o||r<=o.offset+o.length)&&t.parent){let r=nK(t.parent);this.contributions.forEach(t=>{let o=t.collectValueCompletions(n.uri,r,e,i);o&&s.push(o)})}}}else this.contributions.forEach(e=>{let t=e.collectDefaultCompletions(n.uri,i);t&&s.push(t)})}addSchemaValueCompletions(e,t,r,n){"object"==typeof e&&(this.addEnumValueCompletions(e,t,r),this.addDefaultValueCompletions(e,t,r),this.collectTypes(e,n),Array.isArray(e.allOf)&&e.allOf.forEach(e=>this.addSchemaValueCompletions(e,t,r,n)),Array.isArray(e.anyOf)&&e.anyOf.forEach(e=>this.addSchemaValueCompletions(e,t,r,n)),Array.isArray(e.oneOf)&&e.oneOf.forEach(e=>this.addSchemaValueCompletions(e,t,r,n)))}addDefaultValueCompletions(e,t,r,n=0){let i=!1;if(nW(e.default)){let s=e.type,o=e.default;for(let e=n;e>0;e--)o=[o],s="array";let a={kind:this.getSuggestionKind(s),label:this.getLabelForValue(o),insertText:this.getInsertTextForValue(o,t),insertTextFormat:a5.Snippet};this.doesSupportsLabelDetails()?a.labelDetails={description:n4("Default value")}:a.detail=n4("Default value"),r.add(a),i=!0}Array.isArray(e.examples)&&e.examples.forEach(s=>{let o=e.type,a=s;for(let e=n;e>0;e--)a=[a],o="array";r.add({kind:this.getSuggestionKind(o),label:this.getLabelForValue(a),insertText:this.getInsertTextForValue(a,t),insertTextFormat:a5.Snippet}),i=!0}),Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach(s=>{let o,a,l=e.type,u=s.body,c=s.label;if(nW(u)){e.type;for(let e=n;e>0;e--)u=[u];o=this.getInsertTextForSnippetValue(u,t),a=this.getFilterTextForSnippetValue(u),c=c||this.getLabelForSnippetValue(u)}else{if("string"!=typeof s.bodyText)return;let e="",r="",i="";for(let t=n;t>0;t--)e=e+i+"[\n",r=r+"\n"+i+"]",i+=" ",l="array";o=e+i+s.bodyText.split("\n").join("\n"+i)+r+t,c=c||o,a=o.replace(/[\n]/g,"")}r.add({kind:this.getSuggestionKind(l),label:c,documentation:this.fromMarkup(s.markdownDescription)||s.description,insertText:o,insertTextFormat:a5.Snippet,filterText:a}),i=!0}),i||"object"!=typeof e.items||Array.isArray(e.items)||!(n<5)||this.addDefaultValueCompletions(e.items,t,r,n+1)}addEnumValueCompletions(e,t,r){if(nW(e.const)&&r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(e.const),insertText:this.getInsertTextForValue(e.const,t),insertTextFormat:a5.Snippet,documentation:this.fromMarkup(e.markdownDescription)||e.description}),Array.isArray(e.enum))for(let n=0,i=e.enum.length;n<i;n++){let i=e.enum[n],s=this.fromMarkup(e.markdownDescription)||e.description;e.markdownEnumDescriptions&&n<e.markdownEnumDescriptions.length&&this.doesSupportMarkdown()?s=this.fromMarkup(e.markdownEnumDescriptions[n]):e.enumDescriptions&&n<e.enumDescriptions.length&&(s=e.enumDescriptions[n]),r.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(i),insertText:this.getInsertTextForValue(i,t),insertTextFormat:a5.Snippet,documentation:s})}}collectTypes(e,t){if(Array.isArray(e.enum)||nW(e.const))return;let r=e.type;Array.isArray(r)?r.forEach(e=>t[e]=!0):r&&(t[r]=!0)}addFillerValueCompletions(e,t,r){e.object&&r.add({kind:this.getSuggestionKind("object"),label:"{}",insertText:this.getInsertTextForGuessedValue({},t),insertTextFormat:a5.Snippet,detail:n4("New object"),documentation:""}),e.array&&r.add({kind:this.getSuggestionKind("array"),label:"[]",insertText:this.getInsertTextForGuessedValue([],t),insertTextFormat:a5.Snippet,detail:n4("New array"),documentation:""})}addBooleanValueCompletion(e,t,r){r.add({kind:this.getSuggestionKind("boolean"),label:e?"true":"false",insertText:this.getInsertTextForValue(e,t),insertTextFormat:a5.Snippet,documentation:""})}addNullValueCompletion(e,t){t.add({kind:this.getSuggestionKind("null"),label:"null",insertText:"null"+e,insertTextFormat:a5.Snippet,documentation:""})}addDollarSchemaCompletions(e,t){this.schemaService.getRegisteredSchemaIds(e=>"http"===e||"https"===e).forEach(r=>{r.startsWith("http://json-schema.org/draft-")&&(r+="#"),t.add({kind:a4.Module,label:this.getLabelForValue(r),filterText:this.getFilterTextForValue(r),insertText:this.getInsertTextForValue(r,e),insertTextFormat:a5.Snippet,documentation:""})})}getLabelForValue(e){return JSON.stringify(e)}getValueFromLabel(e){return JSON.parse(e)}getFilterTextForValue(e){return JSON.stringify(e)}getFilterTextForSnippetValue(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")}getLabelForSnippetValue(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")}getInsertTextForPlainText(e){return e.replace(/[\\\$\}]/g,"\\$&")}getInsertTextForValue(e,t){let r=JSON.stringify(e,null," ");return"{}"===r?"{$1}"+t:"[]"===r?"[$1]"+t:this.getInsertTextForPlainText(r+t)}getInsertTextForSnippetValue(e,t){return function e(t,r,n){if(null!==t&&"object"==typeof t){let i=r+" ";if(Array.isArray(t)){if(0===t.length)return"[]";let s="[\n";for(let r=0;r<t.length;r++)s+=i+e(t[r],i,n),r<t.length-1&&(s+=","),s+="\n";return s+(r+"]")}{let s=Object.keys(t);if(0===s.length)return"{}";let o="{\n";for(let r=0;r<s.length;r++){let a=s[r];o+=i+JSON.stringify(a)+": "+e(t[a],i,n),r<s.length-1&&(o+=","),o+="\n"}return o+(r+"}")}}return n(t)}(e,"",e=>"string"==typeof e&&"^"===e[0]?e.substr(1):JSON.stringify(e))+t}getInsertTextForGuessedValue(e,t){switch(typeof e){case"object":if(null===e)return"${1:null}"+t;break;case"string":let r=JSON.stringify(e);return r=r.substr(1,r.length-2),'"${1:'+(r=this.getInsertTextForPlainText(r))+'}"'+t;case"number":case"boolean":return"${1:"+JSON.stringify(e)+"}"+t}return this.getInsertTextForValue(e,t)}getSuggestionKind(e){if(Array.isArray(e)){let t=e;e=t.length>0?t[0]:void 0}if(!e)return a4.Value;switch(e){case"string":default:return a4.Value;case"object":return a4.Module;case"property":return a4.Property}}getLabelTextForMatchingNode(e,t){switch(e.type){case"array":return"[]";case"object":return"{}";default:return t.getText().substr(e.offset,e.length)}}getInsertTextForMatchingNode(e,t,r){switch(e.type){case"array":return this.getInsertTextForValue([],r);case"object":return this.getInsertTextForValue({},r);default:let n=t.getText().substr(e.offset,e.length)+r;return this.getInsertTextForPlainText(n)}}getInsertTextForProperty(e,t,r,n){let i,s=this.getInsertTextForValue(e,"");if(!r)return s;let o=0;if(t){if(Array.isArray(t.defaultSnippets)){if(1===t.defaultSnippets.length){let e=t.defaultSnippets[0].body;nW(e)&&(i=this.getInsertTextForSnippetValue(e,""))}o+=t.defaultSnippets.length}if(t.enum&&(i||1!==t.enum.length||(i=this.getInsertTextForGuessedValue(t.enum[0],"")),o+=t.enum.length),nW(t.const)&&(i||(i=this.getInsertTextForGuessedValue(t.const,"")),o++),nW(t.default)&&(i||(i=this.getInsertTextForGuessedValue(t.default,"")),o++),Array.isArray(t.examples)&&t.examples.length&&(i||(i=this.getInsertTextForGuessedValue(t.examples[0],"")),o+=t.examples.length),0===o){let e=Array.isArray(t.type)?t.type[0]:t.type;switch(!e&&(t.properties?e="object":t.items&&(e="array")),e){case"boolean":i="$1";break;case"string":i='"$1"';break;case"object":i="{$1}";break;case"array":i="[$1]";break;case"number":case"integer":i="${1:0}";break;case"null":i="${1:null}";break;default:return s}}}return(!i||o>1)&&(i="$1"),s+": "+i+n}getCurrentWord(e,t){let r=t-1,n=e.getText();for(;r>=0&&-1===' \n\r\v":{[,]}'.indexOf(n.charAt(r));)r--;return n.substring(r+1,t)}evaluateSeparatorAfter(e,t){let r=nR(e.getText(),!0);switch(r.setPosition(t),r.scan()){case 5:case 2:case 4:case 17:return"";default:return","}}findItemAtOffset(e,t,r){let n=nR(t.getText(),!0),i=e.items;for(let e=i.length-1;e>=0;e--){let t=i[e];if(r>t.offset+t.length){if(n.setPosition(t.offset+t.length),5===n.scan()&&r>=n.getTokenOffset()+n.getTokenLength())return e+1;return e}if(r>=t.offset)return e}return 0}isInComment(e,t,r){let n=nR(e.getText(),!1);n.setPosition(t);let i=n.scan();for(;17!==i&&n.getTokenOffset()+n.getTokenLength()<r;)i=n.scan();return(12===i||13===i)&&n.getTokenOffset()<=r}fromMarkup(e){if(e&&this.doesSupportMarkdown())return{kind:a0.Markdown,value:e}}doesSupportMarkdown(){if(!nW(this.supportsMarkdown)){let e=this.clientCapabilities.textDocument?.completion?.completionItem?.documentationFormat;this.supportsMarkdown=Array.isArray(e)&&-1!==e.indexOf(a0.Markdown)}return this.supportsMarkdown}doesSupportsCommitCharacters(){return nW(this.supportsCommitCharacters)||(this.labelDetailsSupport=this.clientCapabilities.textDocument?.completion?.completionItem?.commitCharactersSupport),this.supportsCommitCharacters}doesSupportsLabelDetails(){return nW(this.labelDetailsSupport)||(this.labelDetailsSupport=this.clientCapabilities.textDocument?.completion?.completionItem?.labelDetailsSupport),this.labelDetailsSupport}}class ur{constructor(e,t=[],r){this.schemaService=e,this.contributions=t,this.promise=r||Promise}doHover(e,t,r){let n=e.offsetAt(t),i=r.getNodeFromOffset(n);if(!i||("object"===i.type||"array"===i.type)&&n>i.offset+1&&n<i.offset+i.length-1)return this.promise.resolve(null);let s=i;if("string"===i.type){let e=i.parent;if(e&&"property"===e.type&&e.keyNode===i&&!(i=e.valueNode))return this.promise.resolve(null)}let o=aA.create(e.positionAt(s.offset),e.positionAt(s.offset+s.length)),a=e=>({contents:e,range:o}),l=nK(i);for(let t=this.contributions.length-1;t>=0;t--){let r=this.contributions[t].getInfoContribution(e.uri,l);if(r)return r.then(e=>a(e))}return this.schemaService.getSchemaForResource(e.uri,r).then(e=>{if(e&&i){var t;let n,s,o,l;r.getMatchingSchemas(e.schema,i.offset).every(e=>{if(e.node===i&&!e.inverted&&e.schema&&(n=n||e.schema.title,s=s||e.schema.markdownDescription||un(e.schema.description),e.schema.enum)){let t=e.schema.enum.indexOf(nB(i));e.schema.markdownEnumDescriptions?o=e.schema.markdownEnumDescriptions[t]:e.schema.enumDescriptions&&(o=un(e.schema.enumDescriptions[t])),o&&"string"!=typeof(l=e.schema.enum[t])&&(l=JSON.stringify(l))}return!0});let u="";return n&&(u=un(n)),s&&(u.length>0&&(u+="\n\n"),u+=s),o&&(u.length>0&&(u+="\n\n"),u+=`\`${-1!==(t=l).indexOf("`")?"`` "+t+" ``":t}\`: ${o}`),a([u])}return null})}}function un(e){if(e)return e.replace(/([^\n\r])(\r?\n)([^\n\r])/gm,"$1\n\n$3").replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}class ui{constructor(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}configure(e){e&&(this.validationEnabled=!1!==e.validate,this.commentSeverity=e.allowComments?void 0:aV.Error)}doValidation(e,t,r,n){if(!this.validationEnabled)return this.promise.resolve([]);let i=[],s={},o=e=>{let t=e.range.start.line+" "+e.range.start.character+" "+e.message;s[t]||(s[t]=!0,i.push(e))},a=n=>{let s=r?.trailingCommas?uo(r.trailingCommas):aV.Error,a=r?.comments?uo(r.comments):this.commentSeverity,l=r?.schemaValidation?uo(r.schemaValidation):aV.Warning,u=r?.schemaRequest?uo(r.schemaRequest):aV.Warning;if(n){let i=(r,n)=>{if(t.root&&u){let i=t.root,s="object"===i.type?i.properties[0]:void 0;if(s&&"$schema"===s.keyNode.value){let t=s.valueNode||s,i=aA.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length));o(a$.create(i,r,u,n))}else{let t=aA.create(e.positionAt(i.offset),e.positionAt(i.offset+1));o(a$.create(t,r,u,n))}}};if(n.errors.length)i(n.errors[0],l$.SchemaResolveError);else if(l){for(let e of n.warnings)i(e,l$.SchemaUnsupportedFeature);let s=t.validate(e,n.schema,l,r?.schemaDraft);s&&s.forEach(o)}(function e(t){if(t&&"object"==typeof t){if(nz(t.allowComments))return t.allowComments;if(t.allOf)for(let r of t.allOf){let t=e(r);if(nz(t))return t}}})(n.schema)&&(a=void 0),function e(t){if(t&&"object"==typeof t){if(nz(t.allowTrailingCommas))return t.allowTrailingCommas;if(nz(t.allowsTrailingCommas))return t.allowsTrailingCommas;if(t.allOf)for(let r of t.allOf){let t=e(r);if(nz(t))return t}}}(n.schema)&&(s=void 0)}for(let e of t.syntaxErrors){if(e.code===l$.TrailingComma){if("number"!=typeof s)continue;e.severity=s}o(e)}if("number"==typeof a){let e=n4("Comments are not permitted in JSON.");t.comments.forEach(t=>{o(a$.create(t,e,a,l$.CommentNotPermitted))})}return i};if(n){let e=n.id||"schemaservice://untitled/"+us++;return this.jsonSchemaService.registerExternalSchema({uri:e,schema:n}).getResolvedSchema().then(e=>a(e))}return this.jsonSchemaService.getSchemaForResource(e.uri,t).then(e=>a(e))}getLanguageStatus(e,t){return{schemas:this.jsonSchemaService.getSchemaURIsForResource(e.uri,t)}}}let us=0;function uo(e){switch(e){case"error":return aV.Error;case"warning":return aV.Warning}}function ua(e){return e<48?0:e<=57?e-48:(e<97&&(e+=32),e>=97&&e<=102)?e-97+10:0}class ul{constructor(e){this.schemaService=e}findDocumentSymbols(e,t,r={resultLimit:Number.MAX_VALUE}){let n=t.root;if(!n)return[];let i=r.resultLimit||Number.MAX_VALUE,s=e.uri;if(("vscode://defaultsettings/keybindings.json"===s||nJ(s.toLowerCase(),"/user/keybindings.json"))&&"array"===n.type){let t=[];for(let o of n.items)if("object"===o.type){for(let n of o.properties)if("key"===n.keyNode.value&&n.valueNode){let a=ak.create(e.uri,uu(e,o));if(t.push({name:uc(n.valueNode),kind:la.Function,location:a}),--i<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(s),t}}return t}let o=[{node:n,containerName:""}],a=0,l=!1,u=[],c=(t,r)=>{"array"===t.type?t.items.forEach(e=>{e&&o.push({node:e,containerName:r})}):"object"===t.type&&t.properties.forEach(t=>{let n=t.valueNode;if(n)if(i>0){i--;let s=ak.create(e.uri,uu(e,t)),a=r?r+"."+t.keyNode.value:t.keyNode.value;u.push({name:this.getKeyLabel(t),kind:this.getSymbolKind(n.type),location:s,containerName:r}),o.push({node:n,containerName:a})}else l=!0})};for(;a<o.length;){let e=o[a++];c(e.node,e.containerName)}return l&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(s),u}findDocumentSymbols2(e,t,r={resultLimit:Number.MAX_VALUE}){let n=t.root;if(!n)return[];let i=r.resultLimit||Number.MAX_VALUE,s=e.uri;if(("vscode://defaultsettings/keybindings.json"===s||nJ(s.toLowerCase(),"/user/keybindings.json"))&&"array"===n.type){let t=[];for(let o of n.items)if("object"===o.type){for(let n of o.properties)if("key"===n.keyNode.value&&n.valueNode){let a=uu(e,o),l=uu(e,n.keyNode);if(t.push({name:uc(n.valueNode),kind:la.Function,range:a,selectionRange:l}),--i<=0)return r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(s),t}}return t}let o=[],a=[{node:n,result:o}],l=0,u=!1,c=(t,r)=>{"array"===t.type?t.items.forEach((t,n)=>{if(t)if(i>0){i--;let s=uu(e,t),o={name:String(n),kind:this.getSymbolKind(t.type),range:s,selectionRange:s,children:[]};r.push(o),a.push({result:o.children,node:t})}else u=!0}):"object"===t.type&&t.properties.forEach(t=>{let n=t.valueNode;if(n)if(i>0){i--;let s=uu(e,t),o=uu(e,t.keyNode),l=[],u={name:this.getKeyLabel(t),kind:this.getSymbolKind(n.type),range:s,selectionRange:o,children:l,detail:this.getDetail(n)};r.push(u),a.push({result:l,node:n})}else u=!0})};for(;l<a.length;){let e=a[l++];c(e.node,e.result)}return u&&r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(s),o}getSymbolKind(e){switch(e){case"object":return la.Module;case"string":return la.String;case"number":return la.Number;case"array":return la.Array;case"boolean":return la.Boolean;default:return la.Variable}}getKeyLabel(e){let t=e.keyNode.value;return(t&&(t=t.replace(/[\n]/g,"\u21B5")),t&&t.trim())?t:`"${t}"`}getDetail(e){if(e){if("boolean"===e.type||"number"===e.type||"null"===e.type||"string"===e.type)return String(e.value);else if("array"===e.type)return e.children.length?void 0:"[]";else if("object"===e.type)return e.children.length?void 0:"{}"}}findDocumentColors(e,t,r){return this.schemaService.getSchemaForResource(e.uri,t).then(n=>{let i=[];if(n){let s=r&&"number"==typeof r.resultLimit?r.resultLimit:Number.MAX_VALUE,o=t.getMatchingSchemas(n.schema),a={};for(let t of o)if(!t.inverted&&t.schema&&("color"===t.schema.format||"color-hex"===t.schema.format)&&t.node&&"string"===t.node.type){let n=String(t.node.offset);if(!a[n]){let o=function(e){if("#"===e[0])switch(e.length){case 4:return{red:17*ua(e.charCodeAt(1))/255,green:17*ua(e.charCodeAt(2))/255,blue:17*ua(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*ua(e.charCodeAt(1))/255,green:17*ua(e.charCodeAt(2))/255,blue:17*ua(e.charCodeAt(3))/255,alpha:17*ua(e.charCodeAt(4))/255};case 7:return{red:(16*ua(e.charCodeAt(1))+ua(e.charCodeAt(2)))/255,green:(16*ua(e.charCodeAt(3))+ua(e.charCodeAt(4)))/255,blue:(16*ua(e.charCodeAt(5))+ua(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*ua(e.charCodeAt(1))+ua(e.charCodeAt(2)))/255,green:(16*ua(e.charCodeAt(3))+ua(e.charCodeAt(4)))/255,blue:(16*ua(e.charCodeAt(5))+ua(e.charCodeAt(6)))/255,alpha:(16*ua(e.charCodeAt(7))+ua(e.charCodeAt(8)))/255}}}(nB(t.node));if(o){let r=uu(e,t.node);i.push({color:o,range:r})}if(a[n]=!0,--s<=0){r&&r.onResultLimitExceeded&&r.onResultLimitExceeded(e.uri);break}}}}return i})}getColorPresentations(e,t,r,n){let i,s=[],o=Math.round(255*r.red),a=Math.round(255*r.green),l=Math.round(255*r.blue);function u(e){let t=e.toString(16);return 2!==t.length?"0"+t:t}return s.push({label:i=1===r.alpha?`#${u(o)}${u(a)}${u(l)}`:`#${u(o)}${u(a)}${u(l)}${u(Math.round(255*r.alpha))}`,textEdit:aB.replace(n,JSON.stringify(i))}),s}}function uu(e,t){return aA.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length))}function uc(e){return nB(e)||n4("<empty>")}let uh={schemaAssociations:[],schemas:{"http://json-schema.org/draft-04/schema#":{$schema:"http://json-schema.org/draft-04/schema#",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{type:"string",enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minLength:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minItems:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},uniqueItems:{type:"boolean",default:!1},maxProperties:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minProperties:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},required:{allOf:[{$ref:"#/definitions/stringArray"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{anyOf:[{type:"string",enum:["date-time","uri","email","hostname","ipv4","ipv6","regex"]},{type:"string"}]},allOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},anyOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},oneOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},not:{allOf:[{$ref:"#"}]}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}},"http://json-schema.org/draft-07/schema#":{definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}},ud={id:n4("A unique identifier for the schema."),$schema:n4("The schema to verify this document against."),title:n4("A descriptive title of the element."),description:n4("A long description of the element. Used in hover menus and suggestions."),default:n4("A default value. Used by suggestions."),multipleOf:n4("A number that should cleanly divide the current value (i.e. have no remainder)."),maximum:n4("The maximum numerical value, inclusive by default."),exclusiveMaximum:n4("Makes the maximum property exclusive."),minimum:n4("The minimum numerical value, inclusive by default."),exclusiveMinimum:n4("Makes the minimum property exclusive."),maxLength:n4("The maximum length of a string."),minLength:n4("The minimum length of a string."),pattern:n4("A regular expression to match the string against. It is not implicitly anchored."),additionalItems:n4("For arrays, only when items is set as an array. If it is a schema, then this schema validates items after the ones specified by the items array. If it is false, then additional items will cause validation to fail."),items:n4("For arrays. Can either be a schema to validate every element against or an array of schemas to validate each item against in order (the first schema will validate the first element, the second schema will validate the second element, and so on."),maxItems:n4("The maximum number of items that can be inside an array. Inclusive."),minItems:n4("The minimum number of items that can be inside an array. Inclusive."),uniqueItems:n4("If all of the items in the array must be unique. Defaults to false."),maxProperties:n4("The maximum number of properties an object can have. Inclusive."),minProperties:n4("The minimum number of properties an object can have. Inclusive."),required:n4("An array of strings that lists the names of all properties required on this object."),additionalProperties:n4("Either a schema or a boolean. If a schema, then used to validate all properties not matched by 'properties' or 'patternProperties'. If false, then any properties not matched by either will cause this schema to fail."),definitions:n4("Not used for validation. Place subschemas here that you wish to reference inline with $ref."),properties:n4("A map of property names to schemas for each property."),patternProperties:n4("A map of regular expressions on property names to schemas for matching properties."),dependencies:n4("A map of property names to either an array of property names or a schema. An array of property names means the property named in the key depends on the properties in the array being present in the object in order to be valid. If the value is a schema, then the schema is only applied to the object if the property in the key exists on the object."),enum:n4("The set of literal values that are valid."),type:n4("Either a string of one of the basic schema types (number, integer, null, array, object, boolean, string) or an array of strings specifying a subset of those types."),format:n4("Describes the format expected for the value."),allOf:n4("An array of schemas, all of which must match."),anyOf:n4("An array of schemas, where at least one must match."),oneOf:n4("An array of schemas, exactly one of which must match."),not:n4("A schema which must not match."),$id:n4("A unique identifier for the schema."),$ref:n4("Reference a definition hosted on any location."),$comment:n4("Comments from schema authors to readers or maintainers of the schema."),readOnly:n4("Indicates that the value of the instance is managed exclusively by the owning authority."),examples:n4("Sample JSON values associated with a particular schema, for the purpose of illustrating usage."),contains:n4('An array instance is valid against "contains" if at least one of its elements is valid against the given schema.'),propertyNames:n4("If the instance is an object, this keyword validates if every property name in the instance validates against the provided schema."),const:n4("An instance validates successfully against this keyword if its value is equal to the value of the keyword."),contentMediaType:n4("Describes the media type of a string property."),contentEncoding:n4("Describes the content encoding of a string property."),if:n4('The validation outcome of the "if" subschema controls which of the "then" or "else" keywords are evaluated.'),then:n4('The "if" subschema is used for validation when the "if" subschema succeeds.'),else:n4('The "else" subschema is used for validation when the "if" subschema fails.')};for(let e in uh.schemas){let t=uh.schemas[e];for(let e in t.properties){let r=t.properties[e];"boolean"==typeof r&&(r=t.properties[e]={});let n=ud[e];n&&(r.description=n)}}var um={470:e=>{function t(e){if("string"!=typeof e)throw TypeError("Path must be a string. Received "+JSON.stringify(e))}function r(e,t){for(var r,n="",i=0,s=-1,o=0,a=0;a<=e.length;++a){if(a<e.length)r=e.charCodeAt(a);else{if(47===r)break;r=47}if(47===r){if(s===a-1||1===o);else if(s!==a-1&&2===o){if(n.length<2||2!==i||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2)){if(n.length>2){var l=n.lastIndexOf("/");if(l!==n.length-1){-1===l?(n="",i=0):i=(n=n.slice(0,l)).length-1-n.lastIndexOf("/"),s=a,o=0;continue}}else if(2===n.length||1===n.length){n="",i=0,s=a,o=0;continue}}t&&(n.length>0?n+="/..":n="..",i=2)}else n.length>0?n+="/"+e.slice(s+1,a):n=e.slice(s+1,a),i=a-s-1;s=a,o=0}else 46===r&&-1!==o?++o:o=-1}return n}var n={resolve:function(){for(var e,n,i="",s=!1,o=arguments.length-1;o>=-1&&!s;o--)o>=0?e=arguments[o]:(void 0===n&&(n=process.cwd()),e=n),t(e),0!==e.length&&(i=e+"/"+i,s=47===e.charCodeAt(0));return i=r(i,!s),s?i.length>0?"/"+i:"/":i.length>0?i:"."},normalize:function(e){if(t(e),0===e.length)return".";var n=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=r(e,!n)).length||n||(e="."),e.length>0&&i&&(e+="/"),n?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0==arguments.length)return".";for(var e,r=0;r<arguments.length;++r){var i=arguments[r];t(i),i.length>0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":n.normalize(e)},relative:function(e,r){if(t(e),t(r),e===r||(e=n.resolve(e))===(r=n.resolve(r)))return"";for(var i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var s=e.length,o=s-i,a=1;a<r.length&&47===r.charCodeAt(a);++a);for(var l=r.length-a,u=o<l?o:l,c=-1,h=0;h<=u;++h){if(h===u){if(l>u){if(47===r.charCodeAt(a+h))return r.slice(a+h+1);if(0===h)return r.slice(a+h)}else o>u&&(47===e.charCodeAt(i+h)?c=h:0===h&&(c=0));break}var d=e.charCodeAt(i+h);if(d!==r.charCodeAt(a+h))break;47===d&&(c=h)}var m="";for(h=i+c+1;h<=s;++h)h!==s&&47!==e.charCodeAt(h)||(0===m.length?m+="..":m+="/..");return m.length>0?m+r.slice(a+c):(a+=c,47===r.charCodeAt(a)&&++a,r.slice(a))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var r=e.charCodeAt(0),n=47===r,i=-1,s=!0,o=e.length-1;o>=1;--o)if(47===(r=e.charCodeAt(o))){if(!s){i=o;break}}else s=!1;return -1===i?n?"/":".":n&&1===i?"//":e.slice(0,i)},basename:function(e,r){if(void 0!==r&&"string"!=typeof r)throw TypeError('"ext" argument must be a string');t(e);var n,i=0,s=-1,o=!0;if(void 0!==r&&r.length>0&&r.length<=e.length){if(r.length===e.length&&r===e)return"";var a=r.length-1,l=-1;for(n=e.length-1;n>=0;--n){var u=e.charCodeAt(n);if(47===u){if(!o){i=n+1;break}}else -1===l&&(o=!1,l=n+1),a>=0&&(u===r.charCodeAt(a)?-1==--a&&(s=n):(a=-1,s=l))}return i===s?s=l:-1===s&&(s=e.length),e.slice(i,s)}for(n=e.length-1;n>=0;--n)if(47===e.charCodeAt(n)){if(!o){i=n+1;break}}else -1===s&&(o=!1,s=n+1);return -1===s?"":e.slice(i,s)},extname:function(e){t(e);for(var r=-1,n=0,i=-1,s=!0,o=0,a=e.length-1;a>=0;--a){var l=e.charCodeAt(a);if(47!==l)-1===i&&(s=!1,i=a+1),46===l?-1===r?r=a:1!==o&&(o=1):-1!==r&&(o=-1);else if(!s){n=a+1;break}}return -1===r||-1===i||0===o||1===o&&r===i-1&&r===n+1?"":e.slice(r,i)},format:function(e){var t,r;if(null===e||"object"!=typeof e)throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return t=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||""),t?t===e.root?t+r:t+"/"+r:r},parse:function(e){t(e);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return r;var n,i=e.charCodeAt(0),s=47===i;s?(r.root="/",n=1):n=0;for(var o=-1,a=0,l=-1,u=!0,c=e.length-1,h=0;c>=n;--c)if(47!==(i=e.charCodeAt(c)))-1===l&&(u=!1,l=c+1),46===i?-1===o?o=c:1!==h&&(h=1):-1!==o&&(h=-1);else if(!u){a=c+1;break}return -1===o||-1===l||0===h||1===h&&o===l-1&&o===a+1?-1!==l&&(r.base=r.name=0===a&&s?e.slice(1,l):e.slice(a,l)):(0===a&&s?(r.name=e.slice(1,o),r.base=e.slice(1,l)):(r.name=e.slice(a,o),r.base=e.slice(a,l)),r.ext=e.slice(o,l)),a>0?r.dir=e.slice(0,a-1):s&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};n.posix=n,e.exports=n}},ug={};function uf(e){var t=ug[e];if(void 0!==t)return t.exports;var r=ug[e]={exports:{}};return um[e](r,r.exports,uf),r.exports}uf.d=(e,t)=>{for(var r in t)uf.o(t,r)&&!uf.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},uf.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),uf.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var up={};(()=>{let e;(uf.r(up),uf.d(up,{URI:()=>o,Utils:()=>b}),"object"==typeof process)?e="win32"===process.platform:"object"==typeof navigator&&(e=navigator.userAgent.indexOf("Windows")>=0);let t=/^\w[\w\d+.-]*$/,r=/^\//,n=/^\/\//;function i(e,i){if(!e.scheme&&i)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!t.test(e.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(e.path){if(e.authority){if(!r.test(e.path))throw 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(n.test(e.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let s=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class o{static isUri(e){return e instanceof o||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}scheme;authority;path;query;fragment;constructor(e,t,r,n,s,o=!1){"object"==typeof e?(this.scheme=e.scheme||"",this.authority=e.authority||"",this.path=e.path||"",this.query=e.query||"",this.fragment=e.fragment||""):(this.scheme=e||o?e:"file",this.authority=t||"",this.path=function(e,t){switch(e){case"https":case"http":case"file":t?"/"!==t[0]&&(t="/"+t):t="/"}return t}(this.scheme,r||""),this.query=n||"",this.fragment=s||"",i(this,o))}get fsPath(){return d(this)}with(e){if(!e)return this;let{scheme:t,authority:r,path:n,query:i,fragment:s}=e;return void 0===t?t=this.scheme:null===t&&(t=""),void 0===r?r=this.authority:null===r&&(r=""),void 0===n?n=this.path:null===n&&(n=""),void 0===i?i=this.query:null===i&&(i=""),void 0===s?s=this.fragment:null===s&&(s=""),t===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&s===this.fragment?this:new l(t,r,n,i,s)}static parse(e,t=!1){let r=s.exec(e);return r?new l(r[2]||"",f(r[4]||""),f(r[5]||""),f(r[7]||""),f(r[9]||""),t):new l("","","","","")}static file(t){let r="";if(e&&(t=t.replace(/\\/g,"/")),"/"===t[0]&&"/"===t[1]){let e=t.indexOf("/",2);-1===e?(r=t.substring(2),t="/"):(r=t.substring(2,e),t=t.substring(e)||"/")}return new l("file",r,t,"","")}static from(e){let t=new l(e.scheme,e.authority,e.path,e.query,e.fragment);return i(t,!0),t}toString(e=!1){return m(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof o)return e;{let t=new l(e);return t._formatted=e.external,t._fsPath=e._sep===a?e.fsPath:null,t}}return e}}let a=e?1:void 0;class l extends o{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=d(this)),this._fsPath}toString(e=!1){return e?m(this,!0):(this._formatted||(this._formatted=m(this,!1)),this._formatted)}toJSON(){let e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=a),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}}let u={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 c(e,t,r){let n,i=-1;for(let s=0;s<e.length;s++){let o=e.charCodeAt(s);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o||r&&91===o||r&&93===o||r&&58===o)-1!==i&&(n+=encodeURIComponent(e.substring(i,s)),i=-1),void 0!==n&&(n+=e.charAt(s));else{void 0===n&&(n=e.substr(0,s));let t=u[o];void 0!==t?(-1!==i&&(n+=encodeURIComponent(e.substring(i,s)),i=-1),n+=t):-1===i&&(i=s)}}return -1!==i&&(n+=encodeURIComponent(e.substring(i))),void 0!==n?n:e}function h(e){let t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);35===n||63===n?(void 0===t&&(t=e.substr(0,r)),t+=u[n]):void 0!==t&&(t+=e[r])}return void 0!==t?t:e}function d(t,r){let n;return n=t.authority&&t.path.length>1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&90>=t.path.charCodeAt(1)||t.path.charCodeAt(1)>=97&&122>=t.path.charCodeAt(1))&&58===t.path.charCodeAt(2)?t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(n=n.replace(/\//g,"\\")),n}function m(e,t){let r=t?h:c,n="",{scheme:i,authority:s,path:o,query:a,fragment:l}=e;if(i&&(n+=i,n+=":"),(s||"file"===i)&&(n+="/",n+="/"),s){let e=s.indexOf("@");if(-1!==e){let t=s.substr(0,e);s=s.substr(e+1),-1===(e=t.lastIndexOf(":"))?n+=r(t,!1,!1):(n+=r(t.substr(0,e),!1,!1),n+=":",n+=r(t.substr(e+1),!1,!0)),n+="@"}-1===(e=(s=s.toLowerCase()).lastIndexOf(":"))?n+=r(s,!1,!0):(n+=r(s.substr(0,e),!1,!0),n+=s.substr(e))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2)){let 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)){let e=o.charCodeAt(0);e>=65&&e<=90&&(o=`${String.fromCharCode(e+32)}:${o.substr(2)}`)}n+=r(o,!0,!1)}return a&&(n+="?",n+=r(a,!1,!1)),l&&(n+="#",n+=t?l:c(l,!1,!1)),n}let g=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function f(e){return e.match(g)?e.replace(g,e=>(function e(t){try{return decodeURIComponent(t)}catch{return t.length>3?t.substr(0,3)+e(t.substr(3)):t}})(e)):e}var p,b,y=uf(470);let v=y.posix||y;(p=b||(b={})).joinPath=function(e,...t){return e.with({path:v.join(e.path,...t)})},p.resolvePath=function(e,...t){let r=e.path,n=!1;"/"!==r[0]&&(r="/"+r,n=!0);let i=v.resolve(r,...t);return n&&"/"===i[0]&&!e.authority&&(i=i.substring(1)),e.with({path:i})},p.dirname=function(e){if(0===e.path.length||"/"===e.path)return e;let t=v.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},p.basename=function(e){return v.basename(e.path)},p.extname=function(e){return v.extname(e.path)}})();let{URI:ub,Utils:uy}=up;class uv{constructor(e,t,r){this.folderUri=t,this.uris=r,this.globWrappers=[];try{for(let t of e){let e="!"!==t[0];e||(t=t.substring(1)),t.length>0&&("/"===t[0]&&(t=t.substring(1)),this.globWrappers.push({regexp:function(e,t){let r;if("string"!=typeof e)throw TypeError("Expected a string");let n=String(e),i="",s=!!t,o=!!t,a=!1,l=t&&"string"==typeof t.flags?t.flags:"";for(let e=0,t=n.length;e<t;e++)switch(r=n[e]){case"/":case"$":case"^":case"+":case".":case"(":case")":case"=":case"!":case"|":i+="\\"+r;break;case"?":if(s){i+=".";break}case"[":case"]":if(s){i+=r;break}case"{":if(s){a=!0,i+="(";break}case"}":if(s){a=!1,i+=")";break}case",":if(a){i+="|";break}i+="\\"+r;break;case"*":let t=n[e-1],l=1;for(;"*"===n[e+1];)l++,e++;let u=n[e+1];o?l>1&&("/"===t||void 0===t||"{"===t||","===t)&&("/"===u||void 0===u||","===u||"}"===u)?("/"===u?e++:"/"===t&&i.endsWith("\\/")&&(i=i.substr(0,i.length-2)),i+="((?:[^/]*(?:/|$))*)"):i+="([^/]*)":i+=".*";break;default:i+=r}return l&&~l.indexOf("g")||(i="^"+i+"$"),new RegExp(i,l)}("**/"+t,{extended:!0,globstar:!0}),include:e}))}t&&((t=uN(t)).endsWith("/")||(t+="/"),this.folderUri=t)}catch(e){this.globWrappers.length=0,this.uris=[]}}matchesPattern(e){if(this.folderUri&&!e.startsWith(this.folderUri))return!1;let t=!1;for(let{regexp:r,include:n}of this.globWrappers)r.test(e)&&(t=n);return t}getURIs(){return this.uris}}class uw{constructor(e,t,r){this.service=e,this.uri=t,this.dependencies=new Set,this.anchors=void 0,r&&(this.unresolvedSchema=this.service.promise.resolve(new uC(r)))}getUnresolvedSchema(){return this.unresolvedSchema||(this.unresolvedSchema=this.service.loadSchema(this.uri)),this.unresolvedSchema}getResolvedSchema(){return this.resolvedSchema||(this.resolvedSchema=this.getUnresolvedSchema().then(e=>this.service.resolveSchemaContent(e,this))),this.resolvedSchema}clearSchema(){let e=!!this.unresolvedSchema;return this.resolvedSchema=void 0,this.unresolvedSchema=void 0,this.dependencies.clear(),this.anchors=void 0,e}}class uC{constructor(e,t=[]){this.schema=e,this.errors=t}}class u_{constructor(e,t=[],r=[],n){this.schema=e,this.errors=t,this.warnings=r,this.schemaDraft=n}getSection(e){let t=this.getSectionRecursive(e,this.schema);if(t)return l0(t)}getSectionRecursive(e,t){if(!t||"boolean"==typeof t||0===e.length)return t;let r=e.shift();if(t.properties&&(t.properties[r],1))return this.getSectionRecursive(e,t.properties[r]);if(t.patternProperties)for(let n of Object.keys(t.patternProperties)){let i=nX(n);if(i?.test(r))return this.getSectionRecursive(e,t.patternProperties[n])}else if("object"==typeof t.additionalProperties)return this.getSectionRecursive(e,t.additionalProperties);else if(r.match("[0-9]+")){if(Array.isArray(t.items)){let n=parseInt(r,10);if(!isNaN(n)&&t.items[n])return this.getSectionRecursive(e,t.items[n])}else if(t.items)return this.getSectionRecursive(e,t.items)}}}class uS{constructor(e,t,r){this.contextService=t,this.requestService=e,this.promiseConstructor=r||Promise,this.callOnDispose=[],this.contributionSchemas={},this.contributionAssociations=[],this.schemasById={},this.filePatternAssociations=[],this.registeredSchemasIds={}}getRegisteredSchemaIds(e){return Object.keys(this.registeredSchemasIds).filter(t=>{let r=ub.parse(t).scheme;return"schemaservice"!==r&&(!e||e(r))})}get promise(){return this.promiseConstructor}dispose(){for(;this.callOnDispose.length>0;)this.callOnDispose.pop()()}onResourceChange(e){this.cachedSchemaForResource=void 0;let t=!1,r=[e=ux(e)],n=Object.keys(this.schemasById).map(e=>this.schemasById[e]);for(;r.length;){let e=r.pop();for(let i=0;i<n.length;i++){let s=n[i];s&&(s.uri===e||s.dependencies.has(e))&&(s.uri!==e&&r.push(s.uri),s.clearSchema()&&(t=!0),n[i]=void 0)}}return t}setSchemaContributions(e){if(e.schemas){let t=e.schemas;for(let e in t){let r=ux(e);this.contributionSchemas[r]=this.addSchemaHandle(r,t[e])}}if(Array.isArray(e.schemaAssociations))for(let t of e.schemaAssociations){let e=t.uris.map(ux),r=this.addFilePatternAssociation(t.pattern,t.folderUri,e);this.contributionAssociations.push(r)}}addSchemaHandle(e,t){let r=new uw(this,e,t);return this.schemasById[e]=r,r}getOrAddSchemaHandle(e,t){return this.schemasById[e]||this.addSchemaHandle(e,t)}addFilePatternAssociation(e,t,r){let n=new uv(e,t,r);return this.filePatternAssociations.push(n),n}registerExternalSchema(e){let t=ux(e.uri);return this.registeredSchemasIds[t]=!0,this.cachedSchemaForResource=void 0,e.fileMatch&&e.fileMatch.length&&this.addFilePatternAssociation(e.fileMatch,e.folderUri,[t]),e.schema?this.addSchemaHandle(t,e.schema):this.getOrAddSchemaHandle(t)}clearExternalSchemas(){for(let e in this.schemasById={},this.filePatternAssociations=[],this.registeredSchemasIds={},this.cachedSchemaForResource=void 0,this.contributionSchemas)this.schemasById[e]=this.contributionSchemas[e],this.registeredSchemasIds[e]=!0;for(let e of this.contributionAssociations)this.filePatternAssociations.push(e)}getResolvedSchema(e){let t=ux(e),r=this.schemasById[t];return r?r.getResolvedSchema():this.promise.resolve(void 0)}loadSchema(e){if(!this.requestService){let t=n4("Unable to load schema from '{0}'. No schema request service available",uE(e));return this.promise.resolve(new uC({},[t]))}return e.startsWith("http://json-schema.org/")&&(e="https"+e.substring(4)),this.requestService(e).then(t=>{if(!t)return new uC({},[n4("Unable to load schema from '{0}': No content.",uE(e))]);let r=[];65279===t.charCodeAt(0)&&(r.push(n4("Problem reading content from '{0}': UTF-8 with BOM detected, only UTF 8 is allowed.",uE(e))),t=t.trimStart());let n={},i=[];return n=nq(t,i),i.length&&r.push(n4("Unable to parse content from '{0}': Parse error at offset {1}.",uE(e),i[0].offset)),new uC(n,r)},t=>{let r=t.toString(),n=t.toString().split("Error: ");return n.length>1&&(r=n[1]),nJ(r,".")&&(r=r.substr(0,r.length-1)),new uC({},[n4("Unable to load schema from '{0}': {1}.",uE(e),r)])})}resolveSchemaContent(e,t){let r=e.errors.slice(0),n=e.schema,i=n.$schema?ux(n.$schema):void 0;if("http://json-schema.org/draft-03/schema"===i)return this.promise.resolve(new u_({},[n4("Draft-03 schemas are not supported.")],[],i));let s=new Set,o=this.contextService,a=(e,t,n,i)=>{let s;if(void 0===i||0===i.length)s=t;else if("/"===i.charAt(0)){let e;o=decodeURIComponent(o=i),e=t,"/"===o[0]&&(o=o.substring(1)),o.split("/").some(t=>!(e=e[t=t.replace(/~1/g,"/").replace(/~0/g,"~")])),s=e}else n.anchors||(n.anchors=c(t)),s=n.anchors.get(i);if(s){var o,a=s;for(let t in a)a.hasOwnProperty(t)&&"id"!==t&&"$id"!==t&&(e[t]=a[t])}else r.push(n4("$ref '{0}' in '{1}' can not be resolved.",i||"",n.uri))},l=(e,t,n,i)=>{o&&!/^[A-Za-z][A-Za-z0-9+\-.+]*:\/\/.*/.test(t)&&(t=o.resolveRelativePath(t,i.uri)),t=ux(t);let s=this.getOrAddSchemaHandle(t);return s.getUnresolvedSchema().then(o=>{if(i.dependencies.add(t),o.errors.length){let e=n?t+"#"+n:t;r.push(n4("Problems loading reference '{0}': {1}",e,o.errors[0]))}return a(e,o.schema,s,n),u(e,o.schema,s)})},u=(e,t,r)=>{let n=[];return this.traverseNodes(e,e=>{let i=new Set;for(;e.$ref;){let s=e.$ref,o=s.split("#",2);if(delete e.$ref,o[0].length>0)return void n.push(l(e,o[0],o[1],r));i.has(s)||(a(e,t,r,o[1]),i.add(s))}e.$recursiveRef&&s.add("$recursiveRef"),e.$dynamicRef&&s.add("$dynamicRef")}),this.promise.all(n)},c=e=>{let t=new Map;return this.traverseNodes(e,e=>{let n=e.$id||e.id,i=nH(n)&&"#"===n.charAt(0)?n.substring(1):e.$anchor;i&&(t.has(i)?r.push(n4("Duplicate anchor declaration: '{0}'",i)):t.set(i,e)),e.$recursiveAnchor&&s.add("$recursiveAnchor"),e.$dynamicAnchor&&s.add("$dynamicAnchor")}),t};return u(n,n,t).then(e=>{let t=[];return s.size&&t.push(n4("The schema uses meta-schema features ({0}) that are not yet supported by the validator.",Array.from(s.keys()).join(", "))),new u_(n,r,t,i)})}traverseNodes(e,t){if(!e||"object"!=typeof e)return Promise.resolve(null);let r=new Set,n=(...e)=>{for(let t of e)nG(t)&&a.push(t)},i=(...e)=>{for(let t of e)if(nG(t))for(let e in t){let r=t[e];nG(r)&&a.push(r)}},s=(...e)=>{for(let t of e)if(Array.isArray(t))for(let e of t)nG(e)&&a.push(e)},o=e=>{if(Array.isArray(e))for(let t of e)nG(t)&&a.push(t);else nG(e)&&a.push(e)},a=[e],l=a.pop();for(;l;)r.has(l)||(r.add(l),t(l),n(l.additionalItems,l.additionalProperties,l.not,l.contains,l.propertyNames,l.if,l.then,l.else,l.unevaluatedItems,l.unevaluatedProperties),i(l.definitions,l.$defs,l.properties,l.patternProperties,l.dependencies,l.dependentSchemas),s(l.anyOf,l.allOf,l.oneOf,l.prefixItems),o(l.items)),l=a.pop()}getSchemaFromProperty(e,t){if(t.root?.type==="object"){for(let r of t.root.properties)if("$schema"===r.keyNode.value&&r.valueNode?.type==="string"){let t=r.valueNode.value;return this.contextService&&!/^\w[\w\d+.-]*:/.test(t)&&(t=this.contextService.resolveRelativePath(t,e)),t}}}getAssociatedSchemas(e){let t=Object.create(null),r=[],n=uN(e);for(let e of this.filePatternAssociations)if(e.matchesPattern(n))for(let n of e.getURIs())t[n]||(r.push(n),t[n]=!0);return r}getSchemaURIsForResource(e,t){let r=t&&this.getSchemaFromProperty(e,t);return r?[r]:this.getAssociatedSchemas(e)}getSchemaForResource(e,t){if(t){let r=this.getSchemaFromProperty(e,t);if(r){let e=ux(r);return this.getOrAddSchemaHandle(e).getResolvedSchema()}}if(this.cachedSchemaForResource&&this.cachedSchemaForResource.resource===e)return this.cachedSchemaForResource.resolvedSchema;let r=this.getAssociatedSchemas(e),n=r.length>0?this.createCombinedSchema(e,r).getResolvedSchema():this.promise.resolve(void 0);return this.cachedSchemaForResource={resource:e,resolvedSchema:n},n}createCombinedSchema(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);{let r="schemaservice://combinedSchema/"+encodeURIComponent(e),n={allOf:t.map(e=>({$ref:e}))};return this.addSchemaHandle(r,n)}}getMatchingSchemas(e,t,r){if(r){let e=r.id||"schemaservice://untitled/matchingSchemas/"+uL++;return this.addSchemaHandle(e,r).getResolvedSchema().then(e=>t.getMatchingSchemas(e.schema).filter(e=>!e.inverted))}return this.getSchemaForResource(e.uri,t).then(e=>e?t.getMatchingSchemas(e.schema).filter(e=>!e.inverted):[])}}let uL=0;function ux(e){try{return ub.parse(e).toString(!0)}catch(t){return e}}function uN(e){try{return ub.parse(e).with({fragment:null,query:null}).toString(!0)}catch(t){return e}}function uE(e){try{let t=ub.parse(e);if("file"===t.scheme)return t.fsPath}catch(e){}return e}function uA(e,t){let r=[],n=[],i=[],s=-1,o=nR(e.getText(),!1),a=o.scan();function l(e){r.push(e),n.push(i.length)}for(;17!==a;){switch(a){case 1:case 3:{let t=e.positionAt(o.getTokenOffset()).line,r={startLine:t,endLine:t,kind:1===a?"object":"array"};i.push(r);break}case 2:case 4:{let t=2===a?"object":"array";if(i.length>0&&i[i.length-1].kind===t){let t=i.pop(),r=e.positionAt(o.getTokenOffset()).line;t&&r>t.startLine+1&&s!==t.startLine&&(t.endLine=r-1,l(t),s=t.startLine)}break}case 13:{let t=e.positionAt(o.getTokenOffset()).line,r=e.positionAt(o.getTokenOffset()+o.getTokenLength()).line;1===o.getTokenError()&&t+1<e.lineCount?o.setPosition(e.offsetAt(aE.create(t+1,0))):t<r&&(l({startLine:t,endLine:r,kind:aI.Comment}),s=t);break}case 12:{let t=e.getText().substr(o.getTokenOffset(),o.getTokenLength()).match(/^\/\/\s*#(region\b)|(endregion\b)/);if(t){let r=e.positionAt(o.getTokenOffset()).line;if(t[1]){let e={startLine:r,endLine:r,kind:aI.Region};i.push(e)}else{let e=i.length-1;for(;e>=0&&i[e].kind!==aI.Region;)e--;if(e>=0){let t=i[e];i.length=e,r>t.startLine&&s!==t.startLine&&(t.endLine=r,l(t),s=t.startLine)}}}}}a=o.scan()}let u=t&&t.rangeLimit;if("number"!=typeof u||r.length<=u)return r;t&&t.onRangeLimitExceeded&&t.onRangeLimitExceeded(e.uri);let c=[];for(let e of n)e<30&&(c[e]=(c[e]||0)+1);let h=0,d=0;for(let e=0;e<c.length;e++){let t=c[e];if(t){if(t+h>u){d=e;break}h+=t}}let m=[];for(let e=0;e<r.length;e++){let t=n[e];"number"==typeof t&&(t<d||t===d&&h++<u)&&m.push(r[e])}return m}function uk(e,t,r){function n(t,r){return aA.create(e.positionAt(t),e.positionAt(r))}let i=nR(e.getText(),!0);return t.map(function(t){let s,o=e.offsetAt(t),a=r.getNodeFromOffset(o,!0),l=[];for(;a;){switch(a.type){case"string":case"object":case"array":let e=a.offset+1,t=a.offset+a.length-1;e<t&&o>=e&&o<=t&&l.push(n(e,t)),l.push(n(a.offset,a.offset+a.length));break;case"number":case"boolean":case"null":case"property":l.push(n(a.offset,a.offset+a.length))}if("property"===a.type||a.parent&&"array"===a.parent.type){var u;let e=(u=a.offset+a.length,(i.setPosition(u),5===i.scan())?i.getTokenOffset()+i.getTokenLength():-1);-1!==e&&l.push(n(a.offset,e))}a=a.parent}for(let e=l.length-1;e>=0;e--)s=lv.create(l[e],s);return s||(s=lv.create(aA.create(t,t))),s})}function uR(e,t,r){let n;if(r){let t=e.offsetAt(r.start),i=e.offsetAt(r.end)-t;n={offset:t,length:i}}let i={tabSize:t?t.tabSize:4,insertSpaces:t?.insertSpaces===!0,insertFinalNewline:t?.insertFinalNewline===!0,eol:"\n",keepLines:t?.keepLines===!0};return(function(e,t,r){let n,i,s,o,a,l;if(t){for(a=(o=t.offset)+t.length,s=o;s>0&&!nD(e,s-1);)s--;let l=a;for(;l<e.length&&!nD(e,l);)l++;n=function(e,t){let r=0,n=0,i=t.tabSize||4;for(;r<e.length;){let t=e.charAt(r);if(t===nI["1"])n++;else if(" "===t)n+=i;else break;r++}return Math.floor(n/i)}(i=e.substring(s,l),r)}else i=e,n=0,s=0,o=0,a=e.length;let u=function(e,t){for(let e=0;e<t.length;e++){let r=t.charAt(e);if("\r"===r){if(e+1<t.length&&"\n"===t.charAt(e+1))return"\r\n";return"\r"}if("\n"===r)return"\n"}return e&&e.eol||"\n"}(r,e),c=nF.includes(u),h=0,d=0,m=" "===(l=r.insertSpaces?nI[r.tabSize||4]??nV(nI["1"],r.tabSize||4):" ")?" ":" ",g=nR(i,!1),f=!1;function p(){if(h>1)return nV(u,h)+nV(l,n+d);let e=l.length*(n+d);return!c||e>nP[m][u].length?u+nV(l,n+d):e<=0?u:nP[m][u][e]}function b(){let e=g.scan();for(h=0;15===e||14===e;)14===e&&r.keepLines?h+=1:14===e&&(h=1),e=g.scan();return f=16===e||0!==g.getTokenError(),e}let y=[];function v(r,n,i){!f&&(!t||n<a&&i>o)&&e.substring(n,i)!==r&&y.push({offset:n,length:i-n,content:r})}let w=b();if(r.keepLines&&h>0&&v(nV(u,h),0,0),17!==w){let e=g.getTokenOffset()+s;v(l.length*n<20&&r.insertSpaces?nI[l.length*n]:nV(l,n),s,e)}for(;17!==w;){let e=g.getTokenOffset()+g.getTokenLength()+s,t=b(),n="",i=!1;for(;0===h&&(12===t||13===t);){let r=g.getTokenOffset()+s;v(nI["1"],e,r),e=g.getTokenOffset()+g.getTokenLength()+s,n=(i=12===t)?p():"",t=b()}if(2===t)1!==w&&d--,r.keepLines&&h>0||!r.keepLines&&1!==w?n=p():r.keepLines&&(n=nI["1"]);else if(4===t)3!==w&&d--,r.keepLines&&h>0||!r.keepLines&&3!==w?n=p():r.keepLines&&(n=nI["1"]);else{switch(w){case 3:case 1:d++,n=r.keepLines&&h>0||!r.keepLines?p():nI["1"];break;case 5:n=r.keepLines&&h>0||!r.keepLines?p():nI["1"];break;case 12:n=p();break;case 13:h>0?n=p():i||(n=nI["1"]);break;case 6:r.keepLines&&h>0?n=p():i||(n=nI["1"]);break;case 10:r.keepLines&&h>0?n=p():6!==t||i||(n="");break;case 7:case 8:case 9:case 11:case 2:case 4:r.keepLines&&h>0?n=p():12!==t&&13!==t||i?5!==t&&17!==t&&(f=!0):n=nI["1"];break;case 16:f=!0}h>0&&(12===t||13===t)&&(n=p())}17===t&&(n=r.keepLines&&h>0?p():r.insertFinalNewline?u:""),v(n,e,g.getTokenOffset()+s),w=t}return y})(e.getText(),n,i).map(t=>aB.replace(aA.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length)),t.content))}(n7=lj||(lj={}))[n7.Object=0]="Object",n7[n7.Array=1]="Array";class uT{constructor(e,t){this.propertyName=e??"",this.beginningLineNumber=t,this.childrenProperties=[],this.lastProperty=!1,this.noKeyName=!1}addChildProperty(e){if(e.parent=this,this.childrenProperties.length>0){let t=0;(t=e.noKeyName?this.childrenProperties.length:function(e,t,r){let n=t.propertyName.toLowerCase(),i=e[0].propertyName.toLowerCase(),s=e[e.length-1].propertyName.toLowerCase();if(n<i)return 0;if(n>s)return e.length;let o=0,a=e.length-1;for(;o<=a;){let n=a+o>>1,i=r(t,e[n]);if(i>0)o=n+1;else{if(!(i<0))return n;a=n-1}}return-o-1}(this.childrenProperties,e,uM))<0&&(t=-1*t-1),this.childrenProperties.splice(t,0,e)}else this.childrenProperties.push(e);return e}}function uM(e,t){let r=e.propertyName.toLowerCase(),n=t.propertyName.toLowerCase();return r<n?-1:+(r>n)}function uO(e,t,r){if(0!==t.childrenProperties.length)if(t.type===lj.Object){let n=1/0;for(let e of t.childrenProperties)e.beginningLineNumber<n&&(n=e.beginningLineNumber);r+=n-t.beginningLineNumber,e.push(new uI(r,t.childrenProperties))}else t.type===lj.Array&&function e(t,r,n){for(let i of r.childrenProperties){if(i.type===lj.Object){let e=1/0;for(let t of i.childrenProperties)t.beginningLineNumber<e&&(e=t.beginningLineNumber);let s=e-i.beginningLineNumber;t.push(new uI(n+i.beginningLineNumber-r.beginningLineNumber+s,i.childrenProperties))}i.type===lj.Array&&e(t,i,n+i.beginningLineNumber-r.beginningLineNumber)}}(e,t,r)}class uI{constructor(e,t){this.beginningLineNumber=e,this.propertyTreeArray=t}}function uP(e,t){let r=[];return t.visit(n=>{if("property"===n.type&&"$ref"===n.keyNode.value&&n.valueNode?.type==="string"){var i,s,o,a;let l,u=(i=t,(l="#"===(s=n.valueNode.value)?[]:"#"!==s[0]||"/"!==s[1]?null:s.substring(2).split(/\//).map(uF))?function e(t,r){if(!r)return null;if(0===t.length)return r;let n=t.shift();if(r&&"object"===r.type){let i=r.properties.find(e=>e.keyNode.value===n);return i?e(t,i.valueNode):null}if(r&&"array"===r.type&&n.match(/^(0|[1-9][0-9]*)$/)){let i=Number.parseInt(n),s=r.items[i];return s?e(t,s):null}return null}(l,i.root):null);if(u){let t=e.positionAt(u.offset);r.push({target:`${e.uri}#${t.line+1},${t.character+1}`,range:(o=e,a=n.valueNode,aA.create(o.positionAt(a.offset+1),o.positionAt(a.offset+a.length-1)))})}}return!0}),Promise.resolve(r)}function uF(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}"u">typeof fetch&&(s=function(e){return fetch(e).then(e=>e.text())});class uV{constructor(e,t){var r;let n,i,o,a,l,u;this._ctx=e,this._languageSettings=t.languageSettings,this._languageId=t.languageId,this._languageService=(n=(r={workspaceContext:{resolveRelativePath:(e,t)=>(function(e,t){if(47===t.charCodeAt(0)){let r=ub.parse(e),n=t.split("/");return r.with({path:uD(n)}).toString()}return function(e,...t){let r=ub.parse(e),n=r.path.split("/");for(let e of t)n.push(...e.split("/"));return r.with({path:uD(n)}).toString()}(e,t)})(t.substr(0,t.lastIndexOf("/")+1),e)},schemaRequestService:t.enableSchemaRequest?s:void 0,clientCapabilities:lB.LATEST}).promiseConstructor||Promise,(i=new uS(r.schemaRequestService,r.workspaceContext,n)).setSchemaContributions(uh),o=new ut(i,r.contributions,n,r.clientCapabilities),a=new ur(i,r.contributions,n),l=new ul(i),{configure:e=>{i.clearExternalSchemas(),e.schemas?.forEach(i.registerExternalSchema.bind(i)),u.configure(e)},resetSchema:e=>i.onResourceChange(e),doValidation:(u=new ui(i,n)).doValidation.bind(u),getLanguageStatus:u.getLanguageStatus.bind(u),parseJSONDocument:e=>(function(e,t){let r,n=[],i=-1,s=e.getText(),o=nR(s,!1),a=t&&t.collectComments?[]:void 0;function l(){for(;;){let t=o.scan();switch(function(){switch(o.getTokenError()){case 4:return c(n4("Invalid unicode sequence in string."),l$.InvalidUnicode);case 5:return c(n4("Invalid escape character in string."),l$.InvalidEscapeCharacter);case 3:return c(n4("Unexpected end of number."),l$.UnexpectedEndOfNumber);case 1:return c(n4("Unexpected end of comment."),l$.UnexpectedEndOfComment);case 2:return c(n4("Unexpected end of string."),l$.UnexpectedEndOfString);case 6:return c(n4("Invalid characters in string. Control characters must be escaped."),l$.InvalidCharacter)}}(),t){case 12:case 13:Array.isArray(a)&&a.push(aA.create(e.positionAt(o.getTokenOffset()),e.positionAt(o.getTokenOffset()+o.getTokenLength())));break;case 15:case 14:break;default:return t}}}function u(t,r,s,o,a=aV.Error){if(0===n.length||s!==i){let l=aA.create(e.positionAt(s),e.positionAt(o));n.push(a$.create(l,t,a,r,e.languageId)),i=s}}function c(e,t,r,n=[],i=[]){let a=o.getTokenOffset(),d=o.getTokenOffset()+o.getTokenLength();if(a===d&&a>0){for(a--;a>0&&/\s/.test(s.charAt(a));)a--;d=a+1}if(u(e,t,a,d),r&&h(r,!1),n.length+i.length>0){let e=o.getToken();for(;17!==e;){if(-1!==n.indexOf(e)){l();break}if(-1!==i.indexOf(e))break;e=l()}}return r}function h(e,t){return e.length=o.getTokenOffset()+o.getTokenLength()-e.offset,t&&l(),e}let d=new lZ(void 0,0,0);function m(e){if(10!==o.getToken())return;let t=new lZ(e,o.getTokenOffset());return t.value=o.getTokenValue(),h(t,!0)}return 17!==l()&&((r=function t(r){return function(e){if(3!==o.getToken())return;let r=new lX(e,o.getTokenOffset());l();let n=!1;for(;4!==o.getToken()&&17!==o.getToken();){if(5===o.getToken()){n||c(n4("Value expected"),l$.ValueExpected);let e=o.getTokenOffset();if(l(),4===o.getToken()){n&&u(n4("Trailing comma"),l$.TrailingComma,e,e+1);continue}}else n&&c(n4("Expected comma"),l$.CommaExpected);let e=t(r);e?r.items.push(e):c(n4("Value expected"),l$.ValueExpected,void 0,[],[4,5]),n=!0}return 4!==o.getToken()?c(n4("Expected comma or closing bracket"),l$.CommaOrCloseBacketExpected,r):h(r,!0)}(r)||function(r){if(1!==o.getToken())return;let n=new l1(r,o.getTokenOffset()),i=Object.create(null);l();let s=!1;for(;2!==o.getToken()&&17!==o.getToken();){if(5===o.getToken()){s||c(n4("Property expected"),l$.PropertyExpected);let e=o.getTokenOffset();if(l(),2===o.getToken()){s&&u(n4("Trailing comma"),l$.TrailingComma,e,e+1);continue}}else s&&c(n4("Expected comma"),l$.CommaExpected);let r=function(r,n){let i=new lY(r,o.getTokenOffset(),d),s=m(i);if(!s)if(16!==o.getToken())return;else{c(n4("Property keys must be doublequoted"),l$.PropertyKeysMustBeDoublequoted);let e=new lZ(i,o.getTokenOffset(),o.getTokenLength());e.value=o.getTokenValue(),s=e,l()}if(i.keyNode=s,"//"!==s.value){let e=n[s.value];e?(u(n4("Duplicate object key"),l$.DuplicateKey,i.keyNode.offset,i.keyNode.offset+i.keyNode.length,aV.Warning),nG(e)&&u(n4("Duplicate object key"),l$.DuplicateKey,e.keyNode.offset,e.keyNode.offset+e.keyNode.length,aV.Warning),n[s.value]=!0):n[s.value]=i}if(6===o.getToken())i.colonOffset=o.getTokenOffset(),l();else if(c(n4("Colon expected"),l$.ColonExpected),10===o.getToken()&&e.positionAt(s.offset+s.length).line<e.positionAt(o.getTokenOffset()).line)return i.length=s.length,i;let a=t(i);return a?(i.valueNode=a,i.length=a.offset+a.length-i.offset,i):c(n4("Value expected"),l$.ValueExpected,i,[],[2,5])}(n,i);r?n.properties.push(r):c(n4("Property expected"),l$.PropertyExpected,void 0,[],[2,5]),s=!0}return 2!==o.getToken()?c(n4("Expected comma or closing brace"),l$.CommaOrCloseBraceExpected,n):h(n,!0)}(r)||m(r)||function(e){if(11!==o.getToken())return;let t=new lQ(e,o.getTokenOffset());if(0===o.getTokenError()){let e=o.getTokenValue();try{let r=JSON.parse(e);if(!nj(r))return c(n4("Invalid number format."),l$.Undefined,t);t.value=r}catch(e){return c(n4("Invalid number format."),l$.Undefined,t)}t.isInteger=-1===e.indexOf(".")}return h(t,!0)}(r)||function(e){switch(o.getToken()){case 7:return h(new lG(e,o.getTokenOffset()),!0);case 8:return h(new lJ(e,!0,o.getTokenOffset()),!0);case 9:return h(new lJ(e,!1,o.getTokenOffset()),!0);default:return}}(r)}(r))?17!==o.getToken()&&c(n4("End of file expected."),l$.Undefined):c(n4("Expected a JSON object, array or literal."),l$.Undefined)),new l8(r,n,a)})(e,{collectComments:!0}),newJSONDocument:(e,t)=>(function(e,t=[]){return new l8(e,t,[])})(e,t),getMatchingSchemas:i.getMatchingSchemas.bind(i),doResolve:o.doResolve.bind(o),doComplete:o.doComplete.bind(o),findDocumentSymbols:l.findDocumentSymbols.bind(l),findDocumentSymbols2:l.findDocumentSymbols2.bind(l),findDocumentColors:l.findDocumentColors.bind(l),getColorPresentations:l.getColorPresentations.bind(l),doHover:a.doHover.bind(a),getFoldingRanges:uA,getSelectionRanges:uk,findDefinition:()=>Promise.resolve([]),findLinks:uP,format:(e,t,r)=>uR(e,r,t),sort:(e,t)=>{let r,n,i,s,o,a,l;return r={...t,keepLines:!1},n=lq.applyEdits(e,uR(e,r,void 0)),s=function(e){let t,r,n,i=nR(e.getText(),!1),s=new uT,o=s,a=s,l=s,u=0,c=0,h=-1,d=-1,m=0,g=0,f=[],p=!1,b=!1;for(;17!==(t=i.scan());){if(!0===p&&14!==t&&15!==t&&12!==t&&13!==t&&void 0===a.endLineNumber){let e=i.getTokenStartLine();2===n||4===n?l.endLineNumber=e-1:a.endLineNumber=e-1,m=e,p=!1}if(!0===b&&14!==t&&15!==t&&12!==t&&13!==t&&(m=i.getTokenStartLine(),b=!1),i.getTokenStartLine()!==u){for(let t=u;t<i.getTokenStartLine();t++)c+=e.getText(aA.create(aE.create(t,0),aE.create(t+1,0))).length;u=i.getTokenStartLine()}switch(t){case 10:if(void 0===r||1===r||5===r&&f[f.length-1]===lj.Object){let e=new uT(i.getTokenValue(),m);l=a,a=o.addChildProperty(e)}break;case 3:if(void 0===s.beginningLineNumber&&(s.beginningLineNumber=i.getTokenStartLine()),f[f.length-1]===lj.Object)o=a;else if(f[f.length-1]===lj.Array){let e=new uT(i.getTokenValue(),m);e.noKeyName=!0,l=a,o=a=o.addChildProperty(e)}f.push(lj.Array),a.type=lj.Array,m=i.getTokenStartLine(),m++;break;case 1:if(void 0===s.beginningLineNumber)s.beginningLineNumber=i.getTokenStartLine();else if(f[f.length-1]===lj.Array){let e=new uT(i.getTokenValue(),m);e.noKeyName=!0,l=a,a=o.addChildProperty(e)}a.type=lj.Object,f.push(lj.Object),o=a,m=i.getTokenStartLine(),m++;break;case 4:g=i.getTokenStartLine(),f.pop(),void 0===a.endLineNumber&&(2===r||4===r)&&(a.endLineNumber=g-1,a.lastProperty=!0,a.lineWhereToAddComma=h,a.indexWhereToAddComa=d,l=a,o=a=a?a.parent:void 0),s.endLineNumber=g,m=g+1;break;case 2:g=i.getTokenStartLine(),f.pop(),1!==r&&(void 0===a.endLineNumber&&(a.endLineNumber=g-1,a.lastProperty=!0,a.lineWhereToAddComma=h,a.indexWhereToAddComa=d),l=a,o=a=a?a.parent:void 0),s.endLineNumber=i.getTokenStartLine(),m=g+1;break;case 5:g=i.getTokenStartLine(),void 0===a.endLineNumber&&(f[f.length-1]===lj.Object||f[f.length-1]===lj.Array&&(2===r||4===r))&&(a.endLineNumber=g,a.commaIndex=i.getTokenOffset()-c,a.commaLine=g),(2===r||4===r)&&(l=a,o=a=a?a.parent:void 0),m=g+1;break;case 13:5===r&&h===i.getTokenStartLine()&&(f[f.length-1]===lj.Array&&(2===n||4===n)||f[f.length-1]===lj.Object)&&(f[f.length-1]===lj.Array&&(2===n||4===n)||f[f.length-1]===lj.Object)&&(a.endLineNumber=void 0,p=!0),(1===r||3===r)&&h===i.getTokenStartLine()&&(b=!0)}14!==t&&13!==t&&12!==t&&15!==t&&(n=r,r=t,h=i.getTokenStartLine(),d=i.getTokenOffset()+i.getTokenLength()-c)}return s}(i=lq.create("test://test.json","json",0,n)),a=uR(o=function(e,t){if(0===t.childrenProperties.length)return e;let r=lq.create("test://test.json","json",0,e.getText()),n=[];for(uO(n,t,t.beginningLineNumber);n.length>0;){let t=n.shift(),i=t.propertyTreeArray,s=t.beginningLineNumber;for(let t=0;t<i.length;t++){let o=i[t],a=aA.create(aE.create(o.beginningLineNumber,0),aE.create(o.endLineNumber+1,0)),l=e.getText(a),u=lq.create("test://test.json","json",0,l);if(!0===o.lastProperty&&t!==i.length-1){let e=o.lineWhereToAddComma-o.beginningLineNumber,t=o.indexWhereToAddComa,r={range:aA.create(aE.create(e,t),aE.create(e,t)),text:","};lq.update(u,[r],1)}else if(!1===o.lastProperty&&t===i.length-1){let e=o.commaIndex,t=o.commaLine-o.beginningLineNumber,r={range:aA.create(aE.create(t,e),aE.create(t,e+1)),text:""};lq.update(u,[r],1)}let c=o.endLineNumber-o.beginningLineNumber+1,h={range:aA.create(aE.create(s,0),aE.create(s+c,0)),text:u.getText()};lq.update(r,[h],1),uO(n,o,s),s+=c}}return r}(i,s),r,void 0),l=lq.applyEdits(o,a),[aB.replace(aA.create(aE.create(0,0),e.positionAt(e.getText().length)),l)]}}),this._languageService.configure(this._languageSettings)}async doValidation(e){let t=this._getTextDocument(e);if(t){let e=this._languageService.parseJSONDocument(t);return this._languageService.doValidation(t,e,this._languageSettings)}return Promise.resolve([])}async doComplete(e,t){let r=this._getTextDocument(e);if(!r)return null;let n=this._languageService.parseJSONDocument(r);return this._languageService.doComplete(r,t,n)}async doResolve(e){return this._languageService.doResolve(e)}async doHover(e,t){let r=this._getTextDocument(e);if(!r)return null;let n=this._languageService.parseJSONDocument(r);return this._languageService.doHover(r,t,n)}async format(e,t,r){let n=this._getTextDocument(e);return n?Promise.resolve(this._languageService.format(n,t,r)):[]}async resetSchema(e){return Promise.resolve(this._languageService.resetSchema(e))}async findDocumentSymbols(e){let t=this._getTextDocument(e);if(!t)return[];let r=this._languageService.parseJSONDocument(t);return Promise.resolve(this._languageService.findDocumentSymbols2(t,r))}async findDocumentColors(e){let t=this._getTextDocument(e);if(!t)return[];let r=this._languageService.parseJSONDocument(t);return Promise.resolve(this._languageService.findDocumentColors(t,r))}async getColorPresentations(e,t,r){let n=this._getTextDocument(e);if(!n)return[];let i=this._languageService.parseJSONDocument(n);return Promise.resolve(this._languageService.getColorPresentations(n,i,t,r))}async getFoldingRanges(e,t){let r=this._getTextDocument(e);return r?Promise.resolve(this._languageService.getFoldingRanges(r,t)):[]}async getSelectionRanges(e,t){let r=this._getTextDocument(e);if(!r)return[];let n=this._languageService.parseJSONDocument(r);return Promise.resolve(this._languageService.getSelectionRanges(r,t,n))}async parseJSONDocument(e){let t=this._getTextDocument(e);return t?Promise.resolve(this._languageService.parseJSONDocument(t)):null}async getMatchingSchemas(e){let t=this._getTextDocument(e);if(!t)return[];let r=this._languageService.parseJSONDocument(t);return Promise.resolve(this._languageService.getMatchingSchemas(t,r))}_getTextDocument(e){for(let t of this._ctx.getMirrorModels())if(t.uri.toString()===e)return lq.create(e,this._languageId,t.version,t.getValue());return null}}function uD(e){let t=[];for(let r of e)0===r.length||1===r.length&&46===r.charCodeAt(0)||(2===r.length&&46===r.charCodeAt(0)&&46===r.charCodeAt(1)?t.pop():t.push(r));e.length>1&&0===e[e.length-1].length&&t.push("");let r=t.join("/");return 0===e[0].length&&(r="/"+r),r}self.onmessage=()=>{var e;e=(e,t)=>new uV(e,t),self.onmessage=t=>{let r;r=function(e){if(eD)throw Error("WebWorker already initialized!");eD=!0;let t=new eV(e=>globalThis.postMessage(e),t=>e(t));return globalThis.onmessage=e=>{t.onmessage(e.data)},t}(n=>{let i=nk.getChannel(n);return new nA((r=>e(r,t.data))({host:new Proxy({},{get(e,t,r){if("then"!==t){if("string"!=typeof t)throw Error("Not supported");return(...e)=>i.$fhr(t,e)}}}),getMirrorModels:()=>r.requestHandler.getModels()}))})}}})();