(function(){var as,ls,os,us;"use strict";class cs{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(t){setTimeout(()=>{throw t.stack?Ue.isErrorNoTelemetry(t)?new Ue(t.message+` `+t.stack):new Error(t.message+` `+t.stack):t},0)}}emit(t){this.listeners.forEach(n=>{n(t)})}onUnexpectedError(t){this.unexpectedErrorHandler(t),this.emit(t)}onUnexpectedExternalError(t){this.unexpectedErrorHandler(t)}}const hs=new cs;function Lt(e){fs(e)||hs.onUnexpectedError(e)}function Qt(e){if(e instanceof Error){const{name:t,message:n,cause:r}=e,s=e.stacktrace||e.stack;return{$isError:!0,name:t,message:n,stack:s,noTelemetry:Ue.isErrorNoTelemetry(e),cause:r?Qt(r):void 0,code:e.code}}return e}const Jt="Canceled";function fs(e){return e instanceof Hn?!0:e instanceof Error&&e.name===Jt&&e.message===Jt}class Hn extends Error{constructor(){super(Jt),this.name=this.message}}class Ue extends Error{constructor(t){super(t),this.name="CodeExpectedError"}static fromError(t){if(t instanceof Ue)return t;const n=new Ue;return n.message=t.message,n.stack=t.stack,n}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}}class Z extends Error{constructor(t){super(t||"An unexpected bug occurred."),Object.setPrototypeOf(this,Z.prototype)}}function ds(e,t){const n=this;let r=!1,s;return function(){if(r)return s;if(r=!0,t)try{s=e.apply(n,arguments)}finally{t()}else s=e.apply(n,arguments);return s}}function ms(e,t="Unreachable"){throw new Error(t)}function gs(e,t="unexpected state"){if(!e)throw typeof t=="string"?new Z(`Assertion Failed: ${t}`):t}function vt(e){if(!e()){debugger;e(),Lt(new Z("Assertion Failed"))}}function $n(e,t){let n=0;for(;n=0;_--)yield x[_]}e.reverse=o;function u(x){return!x||x[Symbol.iterator]().next().done===!0}e.isEmpty=u;function c(x){return x[Symbol.iterator]().next().value}e.first=c;function h(x,_){let A=0;for(const T of x)if(_(T,A++))return!0;return!1}e.some=h;function f(x,_){let A=0;for(const T of x)if(!_(T,A++))return!1;return!0}e.every=f;function d(x,_){for(const A of x)if(_(A))return A}e.find=d;function*w(x,_){for(const A of x)_(A)&&(yield A)}e.filter=w;function*g(x,_){let A=0;for(const T of x)yield _(T,A++)}e.map=g;function*m(x,_){let A=0;for(const T of x)yield*_(T,A++)}e.flatMap=m;function*L(...x){for(const _ of x)ws(_)?yield*_:yield _}e.concat=L;function S(x,_,A){let T=A;for(const V of x)T=_(T,V);return T}e.reduce=S;function N(x){let _=0;for(const A of x)_++;return _}e.length=N;function*v(x,_,A=x.length){for(_<-x.length&&(_=0),_<0&&(_+=x.length),A<0?A+=x.length:A>x.length&&(A=x.length);_1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function xs(...e){return St(()=>zn(e))}function St(e){const t=Yt({dispose:ds(()=>{Zt(t),e()})});return t}const Ht=class{constructor(){this._toDispose=new Set,this._isDisposed=!1,Yt(this)}dispose(){this._isDisposed||(Zt(this),this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{zn(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t||t===Ee.None)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return Wn(t,this),this._isDisposed?Ht.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(t){if(!!t){if(t===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(t),t.dispose()}}};let at=Ht;(()=>{Ht.DISABLE_DISPOSED_WARNING=!1})();const qn=class{constructor(){this._store=new at,Yt(this),Wn(this._store,this)}dispose(){Zt(this),this._store.dispose()}_register(t){if(t===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(t)}};let Ee=qn;(()=>{qn.None=Object.freeze({dispose(){}})})();const tt=class{constructor(t){this.element=t,this.next=tt.Undefined,this.prev=tt.Undefined}};let G=tt;(()=>{tt.Undefined=new tt(void 0)})();class ps{constructor(){this._first=G.Undefined,this._last=G.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===G.Undefined}clear(){let t=this._first;for(;t!==G.Undefined;){const n=t.next;t.prev=G.Undefined,t.next=G.Undefined,t=n}this._first=G.Undefined,this._last=G.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,n){const r=new G(t);if(this._first===G.Undefined)this._first=r,this._last=r;else if(n){const i=this._last;this._last=r,r.prev=i,i.next=r}else{const i=this._first;this._first=r,r.next=i,i.prev=r}this._size+=1;let s=!1;return()=>{s||(s=!0,this._remove(r))}}shift(){if(this._first!==G.Undefined){const t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==G.Undefined){const t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==G.Undefined&&t.next!==G.Undefined){const n=t.prev;n.next=t.next,t.next.prev=n}else t.prev===G.Undefined&&t.next===G.Undefined?(this._first=G.Undefined,this._last=G.Undefined):t.next===G.Undefined?(this._last=this._last.prev,this._last.next=G.Undefined):t.prev===G.Undefined&&(this._first=this._first.next,this._first.prev=G.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==G.Undefined;)yield t.element,t=t.next}}const _s=globalThis.performance.now.bind(globalThis.performance);class yt{static create(t){return new yt(t)}constructor(t){this._now=t===!1?Date.now:_s,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var At;(function(e){e.None=()=>Ee.None;function t(p,y){return d(p,()=>{},0,void 0,!0,void 0,y)}e.defer=t;function n(p){return(y,R=null,C)=>{let k=!1,B;return B=p(W=>{if(!k)return B?B.dispose():k=!0,y.call(R,W)},null,C),k&&B.dispose(),B}}e.once=n;function r(p,y){return e.once(e.filter(p,y))}e.onceIf=r;function s(p,y,R){return h((C,k=null,B)=>p(W=>C.call(k,y(W)),null,B),R)}e.map=s;function i(p,y,R){return h((C,k=null,B)=>p(W=>{y(W),C.call(k,W)},null,B),R)}e.forEach=i;function l(p,y,R){return h((C,k=null,B)=>p(W=>y(W)&&C.call(k,W),null,B),R)}e.filter=l;function o(p){return p}e.signal=o;function u(...p){return(y,R=null,C)=>{const k=xs(...p.map(B=>B(W=>y.call(R,W))));return f(k,C)}}e.any=u;function c(p,y,R,C){let k=R;return s(p,B=>(k=y(k,B),k),C)}e.reduce=c;function h(p,y){let R;const C={onWillAddFirstListener(){R=p(k.fire,k)},onDidRemoveLastListener(){R==null||R.dispose()}},k=new he(C);return y==null||y.add(k),k.event}function f(p,y){return y instanceof Array?y.push(p):y&&y.add(p),p}function d(p,y,R=100,C=!1,k=!1,B,W){let Y,K,Be,Ot=0,qe;const Ka={leakWarningThreshold:B,onWillAddFirstListener(){Y=p(e0=>{Ot++,K=y(K,e0),C&&!Be&&(Xt.fire(K),K=void 0),qe=()=>{const t0=K;K=void 0,Be=void 0,(!C||Ot>1)&&Xt.fire(t0),Ot=0},typeof R=="number"?(Be&&clearTimeout(Be),Be=setTimeout(qe,R)):Be===void 0&&(Be=null,queueMicrotask(qe))})},onWillRemoveListener(){k&&Ot>0&&(qe==null||qe())},onDidRemoveLastListener(){qe=void 0,Y.dispose()}},Xt=new he(Ka);return W==null||W.add(Xt),Xt.event}e.debounce=d;function w(p,y=0,R){return e.debounce(p,(C,k)=>C?(C.push(k),C):[k],y,void 0,!0,void 0,R)}e.accumulate=w;function g(p,y=(C,k)=>C===k,R){let C=!0,k;return l(p,B=>{const W=C||!y(B,k);return C=!1,k=B,W},R)}e.latch=g;function m(p,y,R){return[e.filter(p,y,R),e.filter(p,C=>!y(C),R)]}e.split=m;function L(p,y=!1,R=[],C){let k=R.slice(),B=p(K=>{k?k.push(K):Y.fire(K)});C&&C.add(B);const W=()=>{k==null||k.forEach(K=>Y.fire(K)),k=null},Y=new he({onWillAddFirstListener(){B||(B=p(K=>Y.fire(K)),C&&C.add(B))},onDidAddFirstListener(){k&&(y?setTimeout(W):W())},onDidRemoveLastListener(){B&&B.dispose(),B=null}});return C&&C.add(Y),Y.event}e.buffer=L;function S(p,y){return(C,k,B)=>{const W=y(new v);return p(function(Y){const K=W.evaluate(Y);K!==N&&C.call(k,K)},void 0,B)}}e.chain=S;const N=Symbol("HaltChainable");class v{constructor(){this.steps=[]}map(y){return this.steps.push(y),this}forEach(y){return this.steps.push(R=>(y(R),R)),this}filter(y){return this.steps.push(R=>y(R)?R:N),this}reduce(y,R){let C=R;return this.steps.push(k=>(C=y(C,k),C)),this}latch(y=(R,C)=>R===C){let R=!0,C;return this.steps.push(k=>{const B=R||!y(k,C);return R=!1,C=k,B?k:N}),this}evaluate(y){for(const R of this.steps)if(y=R(y),y===N)break;return y}}function E(p,y,R=C=>C){const C=(...Y)=>W.fire(R(...Y)),k=()=>p.on(y,C),B=()=>p.removeListener(y,C),W=new he({onWillAddFirstListener:k,onDidRemoveLastListener:B});return W.event}e.fromNodeEventEmitter=E;function F(p,y,R=C=>C){const C=(...Y)=>W.fire(R(...Y)),k=()=>p.addEventListener(y,C),B=()=>p.removeEventListener(y,C),W=new he({onWillAddFirstListener:k,onDidRemoveLastListener:B});return W.event}e.fromDOMEventEmitter=F;function I(p,y){let R;const C=new Promise((k,B)=>{const W=n(p)(k,null,y);R=()=>W.dispose()});return C.cancel=R,C}e.toPromise=I;function x(p,y){return p(R=>y.fire(R))}e.forward=x;function _(p,y,R){return y(R),p(C=>y(C))}e.runAndSubscribe=_;class A{constructor(y,R){this._observable=y,this._counter=0,this._hasChanged=!1;const C={onWillAddFirstListener:()=>{y.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{y.removeObserver(this)}};this.emitter=new he(C),R&&R.add(this.emitter)}beginUpdate(y){this._counter++}handlePossibleChange(y){}handleChange(y,R){this._hasChanged=!0}endUpdate(y){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function T(p,y){return new A(p,y).emitter.event}e.fromObservable=T;function V(p){return(y,R,C)=>{let k=0,B=!1;const W={beginUpdate(){k++},endUpdate(){k--,k===0&&(p.reportChanges(),B&&(B=!1,y.call(R)))},handlePossibleChange(){},handleChange(){B=!0}};p.addObserver(W),p.reportChanges();const Y={dispose(){p.removeObserver(W)}};return C instanceof at?C.add(Y):Array.isArray(C)&&C.push(Y),Y}}e.fromObservableLight=V})(At||(At={}));const nt=class{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${nt._idPool++}`,nt.all.add(this)}start(t){this._stopWatch=new yt,this.listenerCount=t}stop(){if(this._stopWatch){const t=this._stopWatch.elapsed();this.durations.push(t),this.elapsedOverall+=t,this.invocationCount+=1,this._stopWatch=void 0}}};let Kt=nt;(()=>{nt.all=new Set})(),(()=>{nt._idPool=0})();let Ls=-1;const $t=class{constructor(t,n,r=($t._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=n,this.name=r,this._warnCountdown=0}dispose(){var t;(t=this._stacks)==null||t.clear()}check(t,n){const r=this.threshold;if(r<=0||n{const i=this._stacks.get(t.value)||0;this._stacks.set(t.value,i-1)}}getMostFrequentStack(){if(!this._stacks)return;let t,n=0;for(const[r,s]of this._stacks)(!t||n{$t._idPool=1})();class tn{static create(){var n;const t=new Error;return new tn((n=t.stack)!=null?n:"")}constructor(t){this.value=t}print(){console.warn(this.value.split(` `).slice(2).join(` `))}}class vs extends Error{constructor(t,n){super(t),this.name="ListenerLeakError",this.stack=n}}class Ns extends Error{constructor(t,n){super(t),this.name="ListenerRefusalError",this.stack=n}}class nn{constructor(t){this.value=t}}const Ss=2;class he{constructor(t){var n,r,s,i,l,o;this._size=0,this._options=t,this._leakageMon=(n=this._options)!=null&&n.leakWarningThreshold?new en((r=t==null?void 0:t.onListenerError)!=null?r:Lt,(i=(s=this._options)==null?void 0:s.leakWarningThreshold)!=null?i:Ls):void 0,this._perfMon=(l=this._options)!=null&&l._profName?new Kt(this._options._profName):void 0,this._deliveryQueue=(o=this._options)==null?void 0:o.deliveryQueue}dispose(){var t,n,r,s;this._disposed||(this._disposed=!0,((t=this._deliveryQueue)==null?void 0:t.current)===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),(r=(n=this._options)==null?void 0:n.onDidRemoveLastListener)==null||r.call(n),(s=this._leakageMon)==null||s.dispose())}get event(){var t;return(t=this._event)!=null||(this._event=(n,r,s)=>{var u,c,h,f,d,w,g,m,L;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const S=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(S);const N=(u=this._leakageMon.getMostFrequentStack())!=null?u:["UNKNOWN stack",-1],v=new Ns(`${S}. HINT: Stack shows most frequent listener (${N[1]}-times)`,N[0]);return(((c=this._options)==null?void 0:c.onListenerError)||Lt)(v),Ee.None}if(this._disposed)return Ee.None;r&&(n=n.bind(r));const i=new nn(n);let l;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(i.stack=tn.create(),l=this._leakageMon.check(i.stack,this._size+1)),this._listeners?this._listeners instanceof nn?((g=this._deliveryQueue)!=null||(this._deliveryQueue=new ys),this._listeners=[this._listeners,i]):this._listeners.push(i):((f=(h=this._options)==null?void 0:h.onWillAddFirstListener)==null||f.call(h,this),this._listeners=i,(w=(d=this._options)==null?void 0:d.onDidAddFirstListener)==null||w.call(d,this)),(L=(m=this._options)==null?void 0:m.onDidAddListener)==null||L.call(m,this),this._size++;const o=St(()=>{l==null||l(),this._removeListener(i)});return s instanceof at?s.add(o):Array.isArray(s)&&s.push(o),o}),this._event}_removeListener(t){var i,l,o,u;if((l=(i=this._options)==null?void 0:i.onWillRemoveListener)==null||l.call(i,this),!this._listeners)return;if(this._size===1){this._listeners=void 0,(u=(o=this._options)==null?void 0:o.onDidRemoveLastListener)==null||u.call(o,this),this._size=0;return}const n=this._listeners,r=n.indexOf(t);if(r===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,n[r]=void 0;const s=this._deliveryQueue.current===this;if(this._size*Ss<=n.length){let c=0;for(let h=0;h0}}class ys{constructor(){this.i=-1,this.end=0}enqueue(t,n,r){this.i=0,this.end=r,this.current=t,this.value=n}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}function As(){return globalThis._VSCODE_NLS_MESSAGES}function jn(){return globalThis._VSCODE_NLS_LANGUAGE}const Rs=jn()==="pseudo"||typeof document<"u"&&document.location&&typeof document.location.hash=="string"&&document.location.hash.indexOf("pseudo=true")>=0;function Gn(e,t){let n;return t.length===0?n=e:n=e.replace(/\{(\d+)\}/g,(r,s)=>{const i=s[0],l=t[i];let o=r;return typeof l=="string"?o=l:(typeof l=="number"||typeof l=="boolean"||l===void 0||l===null)&&(o=String(l)),o}),Rs&&(n="\uFF3B"+n.replace(/[aouei]/g,"$&$&")+"\uFF3D"),n}function D(e,t,...n){return Gn(typeof e=="number"?Cs(e,t):t,n)}function Cs(e,t){var r;const n=(r=As())==null?void 0:r[e];if(typeof n!="string"){if(typeof t=="string")return t;throw new Error(`!!! NLS MISSING: ${e} !!!`)}return n}const He="en";let rn=!1,sn=!1,an=!1,Rt,ln=He,On=He,Es,fe;const Me=globalThis;let Q;typeof Me.vscode<"u"&&typeof Me.vscode.process<"u"?Q=Me.vscode.process:typeof process<"u"&&typeof((as=process==null?void 0:process.versions)==null?void 0:as.node)=="string"&&(Q=process);const Ms=typeof((ls=Q==null?void 0:Q.versions)==null?void 0:ls.electron)=="string"&&(Q==null?void 0:Q.type)==="renderer";if(typeof Q=="object"){rn=Q.platform==="win32",sn=Q.platform==="darwin",an=Q.platform==="linux",an&&!!Q.env.SNAP&&Q.env.SNAP_REVISION,!!Q.env.CI||!!Q.env.BUILD_ARTIFACTSTAGINGDIRECTORY||Q.env.GITHUB_WORKSPACE,Rt=He,ln=He;const e=Q.env.VSCODE_NLS_CONFIG;if(e)try{const t=JSON.parse(e);Rt=t.userLocale,On=t.osLocale,ln=t.resolvedLanguage||He,Es=(os=t.languagePack)==null?void 0:os.translationsConfigFile}catch{}}else typeof navigator=="object"&&!Ms?(fe=navigator.userAgent,rn=fe.indexOf("Windows")>=0,sn=fe.indexOf("Macintosh")>=0,(fe.indexOf("Macintosh")>=0||fe.indexOf("iPad")>=0||fe.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,an=fe.indexOf("Linux")>=0,(fe==null?void 0:fe.indexOf("Mobi"))>=0,ln=jn()||He,Rt=navigator.language.toLowerCase(),On=Rt):console.error("Unable to resolve platform.");const lt=rn,ks=sn,ge=fe,Ps=typeof Me.postMessage=="function"&&!Me.importScripts;(()=>{if(Ps){const e=[];Me.addEventListener("message",n=>{if(n.data&&n.data.vscodeScheduleAsyncWork)for(let r=0,s=e.length;r{const r=++t;e.push({id:r,callback:n}),Me.postMessage({vscodeScheduleAsyncWork:r},"*")}}return e=>setTimeout(e)})();const Fs=!!(ge&&ge.indexOf("Chrome")>=0);ge&&ge.indexOf("Firefox")>=0,!Fs&&ge&&ge.indexOf("Safari")>=0,ge&&ge.indexOf("Edg/")>=0,ge&&ge.indexOf("Android")>=0;function Ds(e){return e}class Ts{constructor(t,n){this.lastCache=void 0,this.lastArgKey=void 0,typeof t=="function"?(this._fn=t,this._computeKey=Ds):(this._fn=n,this._computeKey=t.getCacheKey)}get(t){const n=this._computeKey(t);return this.lastArgKey!==n&&(this.lastArgKey=n,this.lastCache=this._fn(t)),this.lastCache}}var ke;(function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Running=1]="Running",e[e.Completed=2]="Completed"})(ke||(ke={}));class on{constructor(t){this.executor=t,this._state=ke.Uninitialized}get value(){if(this._state===ke.Uninitialized){this._state=ke.Running;try{this._value=this.executor()}catch(t){this._error=t}finally{this._state=ke.Completed}}else if(this._state===ke.Running)throw new Error("Cannot read the value of a lazy that is being initialized");if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function Vs(e){return e.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function Is(e){return e.source==="^"||e.source==="^$"||e.source==="$"||e.source==="^\\s*$"?!1:!!(e.exec("")&&e.lastIndex===0)}function Bs(e){return e.split(/\r\n|\r|\n/)}function qs(e){for(let t=0,n=e.length;t=0;n--){const r=e.charCodeAt(n);if(r!==32&&r!==9)return n}return-1}function Xn(e){return e>=65&&e<=90}function Hs(e,t){const n=Math.min(e.length,t.length);let r;for(r=0;rn[3*s+1])s=2*s+1;else return n[3*s+2];return 0}};let Jn=De;(()=>{De._INSTANCE=null})();function Gs(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}const we=class{static getInstance(t){return we.cache.get(Array.from(t))}static getLocales(){return we._locales.value}constructor(t){this.confusableDictionary=t}isAmbiguous(t){return this.confusableDictionary.has(t)}getPrimaryConfusable(t){return this.confusableDictionary.get(t)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}};let ot=we;(()=>{we.ambiguousCharacterData=new on(()=>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]}'))})(),(()=>{we.cache=new Ts({getCacheKey:JSON.stringify},t=>{function n(h){const f=new Map;for(let d=0;d!h.startsWith("_")&&h in i);l.length===0&&(l=["_default"]);let o;for(const h of l){const f=n(i[h]);o=s(o,f)}const u=n(i._common),c=r(u,o);return new we(c)})})(),(()=>{we._locales=new on(()=>Object.keys(we.ambiguousCharacterData.value).filter(t=>!t.startsWith("_")))})();const rt=class{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 getData(){return this._data||(this._data=new Set([...Object.values(rt.getRawData())].flat())),this._data}static isInvisibleCharacter(t){return rt.getData().has(t)}static get codePoints(){return rt.getData()}};let ut=rt;(()=>{rt._data=void 0})();const cn="default",Os="$initialize";class Xs{constructor(t,n,r,s,i){this.vsWorker=t,this.req=n,this.channel=r,this.method=s,this.args=i,this.type=0}}class Yn{constructor(t,n,r,s){this.vsWorker=t,this.seq=n,this.res=r,this.err=s,this.type=1}}class Qs{constructor(t,n,r,s,i){this.vsWorker=t,this.req=n,this.channel=r,this.eventName=s,this.arg=i,this.type=2}}class Js{constructor(t,n,r){this.vsWorker=t,this.req=n,this.event=r,this.type=3}}class Ys{constructor(t,n){this.vsWorker=t,this.req=n,this.type=4}}class Zs{constructor(t){this._workerId=-1,this._handler=t,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(t){this._workerId=t}sendMessage(t,n,r){const s=String(++this._lastSentReq);return new Promise((i,l)=>{this._pendingReplies[s]={resolve:i,reject:l},this._send(new Xs(this._workerId,s,t,n,r))})}listen(t,n,r){let s=null;const i=new he({onWillAddFirstListener:()=>{s=String(++this._lastSentReq),this._pendingEmitters.set(s,i),this._send(new Qs(this._workerId,s,t,n,r))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(s),this._send(new Ys(this._workerId,s)),s=null}});return i.event}handleMessage(t){!t||!t.vsWorker||this._workerId!==-1&&t.vsWorker!==this._workerId||this._handleMessage(t)}createProxyToRemoteChannel(t,n){const r={get:(s,i)=>(typeof i=="string"&&!s[i]&&(Kn(i)?s[i]=l=>this.listen(t,i,l):Zn(i)?s[i]=this.listen(t,i,void 0):i.charCodeAt(0)===36&&(s[i]=async(...l)=>(await(n==null?void 0:n()),this.sendMessage(t,i,l)))),s[i])};return new Proxy(Object.create(null),r)}_handleMessage(t){switch(t.type){case 1:return this._handleReplyMessage(t);case 0:return this._handleRequestMessage(t);case 2:return this._handleSubscribeEventMessage(t);case 3:return this._handleEventMessage(t);case 4:return this._handleUnsubscribeEventMessage(t)}}_handleReplyMessage(t){if(!this._pendingReplies[t.seq]){console.warn("Got reply to unknown seq");return}const n=this._pendingReplies[t.seq];if(delete this._pendingReplies[t.seq],t.err){let r=t.err;t.err.$isError&&(r=new Error,r.name=t.err.name,r.message=t.err.message,r.stack=t.err.stack),n.reject(r);return}n.resolve(t.res)}_handleRequestMessage(t){const n=t.req;this._handler.handleMessage(t.channel,t.method,t.args).then(s=>{this._send(new Yn(this._workerId,n,s,void 0))},s=>{s.detail instanceof Error&&(s.detail=Qt(s.detail)),this._send(new Yn(this._workerId,n,void 0,Qt(s)))})}_handleSubscribeEventMessage(t){const n=t.req,r=this._handler.handleEvent(t.channel,t.eventName,t.arg)(s=>{this._send(new Js(this._workerId,n,s))});this._pendingEvents.set(n,r)}_handleEventMessage(t){if(!this._pendingEmitters.has(t.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(t.req).fire(t.event)}_handleUnsubscribeEventMessage(t){if(!this._pendingEvents.has(t.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(t.req).dispose(),this._pendingEvents.delete(t.req)}_send(t){const n=[];if(t.type===0)for(let r=0;r{t(r,s)},handleMessage:(r,s,i)=>this._handleMessage(r,s,i),handleEvent:(r,s,i)=>this._handleEvent(r,s,i)}),this.requestHandler=n(this)}onmessage(t){this._protocol.handleMessage(t)}_handleMessage(t,n,r){if(t===cn&&n===Os)return this.initialize(r[0]);const s=t===cn?this.requestHandler:this._localChannels.get(t);if(!s)return Promise.reject(new Error(`Missing channel ${t} on worker thread`));if(typeof s[n]!="function")return Promise.reject(new Error(`Missing method ${n} on worker thread channel ${t}`));try{return Promise.resolve(s[n].apply(s,r))}catch(i){return Promise.reject(i)}}_handleEvent(t,n,r){const s=t===cn?this.requestHandler:this._localChannels.get(t);if(!s)throw new Error(`Missing channel ${t} on worker thread`);if(Kn(n)){const i=s[n].call(s,r);if(typeof i!="function")throw new Error(`Missing dynamic event ${n} on request handler.`);return i}if(Zn(n)){const i=s[n];if(typeof i!="function")throw new Error(`Missing event ${n} on request handler.`);return i}throw new Error(`Malformed event name ${n}`)}getChannel(t){if(!this._remoteChannels.has(t)){const n=this._protocol.createProxyToRemoteChannel(t);this._remoteChannels.set(t,n)}return this._remoteChannels.get(t)}async initialize(t){this._protocol.setWorkerId(t)}}let e1=!1;function ei(e){if(e1)throw new Error("WebWorker already initialized!");e1=!0;const t=new Ks(n=>globalThis.postMessage(n),n=>e(n));return globalThis.onmessage=n=>{t.onmessage(n.data)},t}class Se{constructor(t,n,r,s){this.originalStart=t,this.originalLength=n,this.modifiedStart=r,this.modifiedLength=s}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}const t1=typeof Buffer<"u";new on(()=>new Uint8Array(256));let hn;class fn{static wrap(t){return t1&&!Buffer.isBuffer(t)&&(t=Buffer.from(t.buffer,t.byteOffset,t.byteLength)),new fn(t)}constructor(t){this.buffer=t,this.byteLength=this.buffer.byteLength}toString(){return t1?this.buffer.toString():(hn||(hn=new TextDecoder),hn.decode(this.buffer))}}const n1="0123456789abcdef";function ti({buffer:e}){let t="";for(let n=0;n>>4],t+=n1[r&15]}return t}function r1(e,t){return(t<<5)-t+e|0}function ni(e,t){t=r1(149417,t);for(let n=0,r=e.length;n>>r)>>>0}function ct(e,t=32){return e instanceof ArrayBuffer?ti(fn.wrap(new Uint8Array(e))):(e>>>0).toString(16).padStart(t/4,"0")}const Wt=class{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(64+3),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(t){const n=t.length;if(n===0)return;const r=this._buff;let s=this._buffLen,i=this._leftoverHighSurrogate,l,o;for(i!==0?(l=i,o=-1,i=0):(l=t.charCodeAt(0),o=0);;){let u=l;if(Ct(l))if(o+1>>6,t[n++]=128|(r&63)>>>0):r<65536?(t[n++]=224|(r&61440)>>>12,t[n++]=128|(r&4032)>>>6,t[n++]=128|(r&63)>>>0):(t[n++]=240|(r&1835008)>>>18,t[n++]=128|(r&258048)>>>12,t[n++]=128|(r&4032)>>>6,t[n++]=128|(r&63)>>>0),n>=64&&(this._step(),n-=64,this._totalLen+=64,t[0]=t[64+0],t[1]=t[64+1],t[2]=t[64+2]),n}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),ct(this._h0)+ct(this._h1)+ct(this._h2)+ct(this._h3)+ct(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));const t=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(t/4294967296),!1),this._buffDV.setUint32(60,t%4294967296,!1),this._step()}_step(){const t=Wt._bigBlock32,n=this._buffDV;for(let f=0;f<64;f+=4)t.setUint32(f,n.getUint32(f,!1),!1);for(let f=64;f<320;f+=4)t.setUint32(f,dn(t.getUint32(f-12,!1)^t.getUint32(f-32,!1)^t.getUint32(f-56,!1)^t.getUint32(f-64,!1),1),!1);let r=this._h0,s=this._h1,i=this._h2,l=this._h3,o=this._h4,u,c,h;for(let f=0;f<80;f++)f<20?(u=s&i|~s&l,c=1518500249):f<40?(u=s^i^l,c=1859775393):f<60?(u=s&i|s&l|i&l,c=2400959708):(u=s^i^l,c=3395469782),h=dn(r,5)+u+o+c+t.getUint32(f*4,!1)&4294967295,o=l,l=i,i=dn(s,30),s=r,r=h;this._h0=this._h0+r&4294967295,this._h1=this._h1+s&4294967295,this._h2=this._h2+i&4294967295,this._h3=this._h3+l&4294967295,this._h4=this._h4+o&4294967295}};let s1=Wt;(()=>{Wt._bigBlock32=new DataView(new ArrayBuffer(320))})();class i1{constructor(t){this.source=t}getElements(){const t=this.source,n=new Int32Array(t.length);for(let r=0,s=t.length;r0||this.m_modifiedCount>0)&&this.m_changes.push(new Se(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(t,n){this.m_originalStart=Math.min(this.m_originalStart,t),this.m_modifiedStart=Math.min(this.m_modifiedStart,n),this.m_originalCount++}AddModifiedElement(t,n){this.m_originalStart=Math.min(this.m_originalStart,t),this.m_modifiedStart=Math.min(this.m_modifiedStart,n),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 ye{constructor(t,n,r=null){this.ContinueProcessingPredicate=r,this._originalSequence=t,this._modifiedSequence=n;const[s,i,l]=ye._getElements(t),[o,u,c]=ye._getElements(n);this._hasStrings=l&&c,this._originalStringElements=s,this._originalElementsOrHash=i,this._modifiedStringElements=o,this._modifiedElementsOrHash=u,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(t){return t.length>0&&typeof t[0]=="string"}static _getElements(t){const n=t.getElements();if(ye._isStringArray(n)){const r=new Int32Array(n.length);for(let s=0,i=n.length;s=t&&s>=r&&this.ElementsAreEqual(n,s);)n--,s--;if(t>n||r>s){let f;return r<=s?($e.Assert(t===n+1,"originalStart should only be one more than originalEnd"),f=[new Se(t,0,r,s-r+1)]):t<=n?($e.Assert(r===s+1,"modifiedStart should only be one more than modifiedEnd"),f=[new Se(t,n-t+1,r,0)]):($e.Assert(t===n+1,"originalStart should only be one more than originalEnd"),$e.Assert(r===s+1,"modifiedStart should only be one more than modifiedEnd"),f=[]),f}const l=[0],o=[0],u=this.ComputeRecursionPoint(t,n,r,s,l,o,i),c=l[0],h=o[0];if(u!==null)return u;if(!i[0]){const f=this.ComputeDiffRecursive(t,c,r,h,i);let d=[];return i[0]?d=[new Se(c+1,n-(c+1)+1,h+1,s-(h+1)+1)]:d=this.ComputeDiffRecursive(c+1,n,h+1,s,i),this.ConcatenateChanges(f,d)}return[new Se(t,n-t+1,r,s-r+1)]}WALKTRACE(t,n,r,s,i,l,o,u,c,h,f,d,w,g,m,L,S,N){let v=null,E=null,F=new a1,I=n,x=r,_=w[0]-L[0]-s,A=-1073741824,T=this.m_forwardHistory.length-1;do{const V=_+t;V===I||V=0&&(c=this.m_forwardHistory[T],t=c[0],I=1,x=c.length-1)}while(--T>=-1);if(v=F.getReverseChanges(),N[0]){let V=w[0]+1,p=L[0]+1;if(v!==null&&v.length>0){const y=v[v.length-1];V=Math.max(V,y.getOriginalEnd()),p=Math.max(p,y.getModifiedEnd())}E=[new Se(V,d-V+1,p,m-p+1)]}else{F=new a1,I=l,x=o,_=w[0]-L[0]-u,A=1073741824,T=S?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const V=_+i;V===I||V=h[V+1]?(f=h[V+1]-1,g=f-_-u,f>A&&F.MarkNextChange(),A=f+1,F.AddOriginalElement(f+1,g+1),_=V+1-i):(f=h[V-1],g=f-_-u,f>A&&F.MarkNextChange(),A=f,F.AddModifiedElement(f+1,g+1),_=V-1-i),T>=0&&(h=this.m_reverseHistory[T],i=h[0],I=1,x=h.length-1)}while(--T>=-1);E=F.getChanges()}return this.ConcatenateChanges(v,E)}ComputeRecursionPoint(t,n,r,s,i,l,o){let u=0,c=0,h=0,f=0,d=0,w=0;t--,r--,i[0]=0,l[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const g=n-t+(s-r),m=g+1,L=new Int32Array(m),S=new Int32Array(m),N=s-r,v=n-t,E=t-r,F=n-s,x=(v-N)%2===0;L[N]=t,S[v]=n,o[0]=!1;for(let _=1;_<=g/2+1;_++){let A=0,T=0;h=this.ClipDiagonalBound(N-_,_,N,m),f=this.ClipDiagonalBound(N+_,_,N,m);for(let p=h;p<=f;p+=2){p===h||pA+T&&(A=u,T=c),!x&&Math.abs(p-v)<=_-1&&u>=S[p])return i[0]=u,l[0]=c,y<=S[p]&&1447>0&&_<=1447+1?this.WALKTRACE(N,h,f,E,v,d,w,F,L,S,u,n,i,c,s,l,x,o):null}const V=(A-t+(T-r)-_)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(A,V))return o[0]=!0,i[0]=A,l[0]=T,V>0&&1447>0&&_<=1447+1?this.WALKTRACE(N,h,f,E,v,d,w,F,L,S,u,n,i,c,s,l,x,o):(t++,r++,[new Se(t,n-t+1,r,s-r+1)]);d=this.ClipDiagonalBound(v-_,_,v,m),w=this.ClipDiagonalBound(v+_,_,v,m);for(let p=d;p<=w;p+=2){p===d||p=S[p+1]?u=S[p+1]-1:u=S[p-1],c=u-(p-v)-F;const y=u;for(;u>t&&c>r&&this.ElementsAreEqual(u,c);)u--,c--;if(S[p]=u,x&&Math.abs(p-N)<=_&&u<=L[p])return i[0]=u,l[0]=c,y>=L[p]&&1447>0&&_<=1447+1?this.WALKTRACE(N,h,f,E,v,d,w,F,L,S,u,n,i,c,s,l,x,o):null}if(_<=1447){let p=new Int32Array(f-h+2);p[0]=N-h+1,We.Copy2(L,h,p,1,f-h+1),this.m_forwardHistory.push(p),p=new Int32Array(w-d+2),p[0]=v-d+1,We.Copy2(S,d,p,1,w-d+1),this.m_reverseHistory.push(p)}}return this.WALKTRACE(N,h,f,E,v,d,w,F,L,S,u,n,i,c,s,l,x,o)}PrettifyChanges(t){for(let n=0;n0,o=r.modifiedLength>0;for(;r.originalStart+r.originalLength=0;n--){const r=t[n];let s=0,i=0;if(n>0){const f=t[n-1];s=f.originalStart+f.originalLength,i=f.modifiedStart+f.modifiedLength}const l=r.originalLength>0,o=r.modifiedLength>0;let u=0,c=this._boundaryScore(r.originalStart,r.originalLength,r.modifiedStart,r.modifiedLength);for(let f=1;;f++){const d=r.originalStart-f,w=r.modifiedStart-f;if(dc&&(c=m,u=f)}r.originalStart-=u,r.modifiedStart-=u;const h=[null];if(n>0&&this.ChangesOverlap(t[n-1],t[n],h)){t[n-1]=h[0],t.splice(n,1),n++;continue}}if(this._hasStrings)for(let n=1,r=t.length;n0&&w>u&&(u=w,c=f,h=d)}return u>0?[c,h]:null}_contiguousSequenceScore(t,n,r){let s=0;for(let i=0;i=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[t])}_OriginalRegionIsBoundary(t,n){if(this._OriginalIsBoundary(t)||this._OriginalIsBoundary(t-1))return!0;if(n>0){const r=t+n;if(this._OriginalIsBoundary(r-1)||this._OriginalIsBoundary(r))return!0}return!1}_ModifiedIsBoundary(t){return t<=0||t>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[t])}_ModifiedRegionIsBoundary(t,n){if(this._ModifiedIsBoundary(t)||this._ModifiedIsBoundary(t-1))return!0;if(n>0){const r=t+n;if(this._ModifiedIsBoundary(r-1)||this._ModifiedIsBoundary(r))return!0}return!1}_boundaryScore(t,n,r,s){const i=this._OriginalRegionIsBoundary(t,n)?1:0,l=this._ModifiedRegionIsBoundary(r,s)?1:0;return i+l}ConcatenateChanges(t,n){const r=[];if(t.length===0||n.length===0)return n.length>0?n:t;if(this.ChangesOverlap(t[t.length-1],n[0],r)){const s=new Array(t.length+n.length-1);return We.Copy(t,0,s,0,t.length-1),s[t.length-1]=r[0],We.Copy(n,1,s,t.length,n.length-1),s}else{const s=new Array(t.length+n.length);return We.Copy(t,0,s,0,t.length),We.Copy(n,0,s,t.length,n.length),s}}ChangesOverlap(t,n,r){if($e.Assert(t.originalStart<=n.originalStart,"Left change is not less than or equal to right change"),$e.Assert(t.modifiedStart<=n.modifiedStart,"Left change is not less than or equal to right change"),t.originalStart+t.originalLength>=n.originalStart||t.modifiedStart+t.modifiedLength>=n.modifiedStart){const s=t.originalStart;let i=t.originalLength;const l=t.modifiedStart;let o=t.modifiedLength;return t.originalStart+t.originalLength>=n.originalStart&&(i=n.originalStart+n.originalLength-t.originalStart),t.modifiedStart+t.modifiedLength>=n.modifiedStart&&(o=n.modifiedStart+n.modifiedLength-t.modifiedStart),r[0]=new Se(s,i,l,o),!0}else return r[0]=null,!1}ClipDiagonalBound(t,n,r,s){if(t>=0&&tr||t===r&&n>s?(this.startLineNumber=r,this.startColumn=s,this.endLineNumber=t,this.endColumn=n):(this.startLineNumber=t,this.startColumn=n,this.endLineNumber=r,this.endColumn=s)}isEmpty(){return M.isEmpty(this)}static isEmpty(t){return t.startLineNumber===t.endLineNumber&&t.startColumn===t.endColumn}containsPosition(t){return M.containsPosition(this,t)}static containsPosition(t,n){return!(n.lineNumbert.endLineNumber||n.lineNumber===t.startLineNumber&&n.columnt.endColumn)}static strictContainsPosition(t,n){return!(n.lineNumbert.endLineNumber||n.lineNumber===t.startLineNumber&&n.column<=t.startColumn||n.lineNumber===t.endLineNumber&&n.column>=t.endColumn)}containsRange(t){return M.containsRange(this,t)}static containsRange(t,n){return!(n.startLineNumbert.endLineNumber||n.endLineNumber>t.endLineNumber||n.startLineNumber===t.startLineNumber&&n.startColumnt.endColumn)}strictContainsRange(t){return M.strictContainsRange(this,t)}static strictContainsRange(t,n){return!(n.startLineNumbert.endLineNumber||n.endLineNumber>t.endLineNumber||n.startLineNumber===t.startLineNumber&&n.startColumn<=t.startColumn||n.endLineNumber===t.endLineNumber&&n.endColumn>=t.endColumn)}plusRange(t){return M.plusRange(this,t)}static plusRange(t,n){let r,s,i,l;return n.startLineNumbert.endLineNumber?(i=n.endLineNumber,l=n.endColumn):n.endLineNumber===t.endLineNumber?(i=n.endLineNumber,l=Math.max(n.endColumn,t.endColumn)):(i=t.endLineNumber,l=t.endColumn),new M(r,s,i,l)}intersectRanges(t){return M.intersectRanges(this,t)}static intersectRanges(t,n){let r=t.startLineNumber,s=t.startColumn,i=t.endLineNumber,l=t.endColumn;const o=n.startLineNumber,u=n.startColumn,c=n.endLineNumber,h=n.endColumn;return rc?(i=c,l=h):i===c&&(l=Math.min(l,h)),r>i||r===i&&s>l?null:new M(r,s,i,l)}equalsRange(t){return M.equalsRange(this,t)}static equalsRange(t,n){return!t&&!n?!0:!!t&&!!n&&t.startLineNumber===n.startLineNumber&&t.startColumn===n.startColumn&&t.endLineNumber===n.endLineNumber&&t.endColumn===n.endColumn}getEndPosition(){return M.getEndPosition(this)}static getEndPosition(t){return new $(t.endLineNumber,t.endColumn)}getStartPosition(){return M.getStartPosition(this)}static getStartPosition(t){return new $(t.startLineNumber,t.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(t,n){return new M(this.startLineNumber,this.startColumn,t,n)}setStartPosition(t,n){return new M(t,n,this.endLineNumber,this.endColumn)}collapseToStart(){return M.collapseToStart(this)}static collapseToStart(t){return new M(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn)}collapseToEnd(){return M.collapseToEnd(this)}static collapseToEnd(t){return new M(t.endLineNumber,t.endColumn,t.endLineNumber,t.endColumn)}delta(t){return new M(this.startLineNumber+t,this.startColumn,this.endLineNumber+t,this.endColumn)}isSingleLine(){return this.startLineNumber===this.endLineNumber}static fromPositions(t,n=t){return new M(t.lineNumber,t.column,n.lineNumber,n.column)}static lift(t){return t?new M(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn):null}static isIRange(t){return t&&typeof t.startLineNumber=="number"&&typeof t.startColumn=="number"&&typeof t.endLineNumber=="number"&&typeof t.endColumn=="number"}static areIntersectingOrTouching(t,n){return!(t.endLineNumbert.startLineNumber}toJSON(){return this}}function l1(e){return e<0?0:e>255?255:e|0}function ze(e){return e<0?0:e>4294967295?4294967295:e|0}class mn{constructor(t){const n=l1(t);this._defaultValue=n,this._asciiMap=mn._createAsciiMap(n),this._map=new Map}static _createAsciiMap(t){const n=new Uint8Array(256);return n.fill(t),n}set(t,n){const r=l1(n);t>=0&&t<256?this._asciiMap[t]=r:this._map.set(t,r)}get(t){return t>=0&&t<256?this._asciiMap[t]:this._map.get(t)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class si{constructor(t,n,r){const s=new Uint8Array(t*n);for(let i=0,l=t*n;in&&(n=u),o>r&&(r=o),c>r&&(r=c)}n++,r++;const s=new si(r,n,0);for(let i=0,l=t.length;i=this._maxCharCode?0:this._states.get(t,n)}}let gn=null;function ai(){return gn===null&&(gn=new ii([[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]])),gn}let ht=null;function li(){if(ht===null){ht=new mn(0);const 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 n=0;ns);if(s>0){const o=n.charCodeAt(s-1),u=n.charCodeAt(l);(o===40&&u===41||o===91&&u===93||o===123&&u===125)&&l--}return{range:{startLineNumber:r,startColumn:s+1,endLineNumber:r,endColumn:l+2},url:n.substring(s,l+1)}}static computeLinks(t,n=ai()){const r=li(),s=[];for(let i=1,l=t.getLineCount();i<=l;i++){const o=t.getLineContent(i),u=o.length;let c=0,h=0,f=0,d=1,w=!1,g=!1,m=!1,L=!1;for(;c=0?(s+=r?1:-1,s<0?s=t.length-1:s%=t.length,t[s]):null}};let bn=zt;(()=>{zt.INSTANCE=new zt})();const o1=Object.freeze(function(e,t){const n=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(n)}}});var Mt;(function(e){function t(n){return n===e.None||n===e.Cancelled||n instanceof kt?!0:!n||typeof n!="object"?!1:typeof n.isCancellationRequested=="boolean"&&typeof n.onCancellationRequested=="function"}e.isCancellationToken=t,e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:At.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:o1})})(Mt||(Mt={}));class kt{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?o1:(this._emitter||(this._emitter=new he),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class ui{constructor(t){this._token=void 0,this._parentListener=void 0,this._parentListener=t&&t.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new kt),this._token}cancel(){this._token?this._token instanceof kt&&this._token.cancel():this._token=Mt.Cancelled}dispose(t=!1){var n;t&&this.cancel(),(n=this._parentListener)==null||n.dispose(),this._token?this._token instanceof kt&&this._token.dispose():this._token=Mt.None}}class wn{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(t,n){this._keyCodeToStr[t]=n,this._strToKeyCode[n.toLowerCase()]=t}keyCodeToStr(t){return this._keyCodeToStr[t]}strToKeyCode(t){return this._strToKeyCode[t.toLowerCase()]||0}}const Pt=new wn,xn=new wn,pn=new wn,ci=new Array(230),hi=Object.create(null),fi=Object.create(null);(function(){const e="",t=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN",e,e],[1,1,"Hyper",0,e,0,e,e,e],[1,2,"Super",0,e,0,e,e,e],[1,3,"Fn",0,e,0,e,e,e],[1,4,"FnLock",0,e,0,e,e,e],[1,5,"Suspend",0,e,0,e,e,e],[1,6,"Resume",0,e,0,e,e,e],[1,7,"Turbo",0,e,0,e,e,e],[1,8,"Sleep",0,e,0,"VK_SLEEP",e,e],[1,9,"WakeUp",0,e,0,e,e,e],[0,10,"KeyA",31,"A",65,"VK_A",e,e],[0,11,"KeyB",32,"B",66,"VK_B",e,e],[0,12,"KeyC",33,"C",67,"VK_C",e,e],[0,13,"KeyD",34,"D",68,"VK_D",e,e],[0,14,"KeyE",35,"E",69,"VK_E",e,e],[0,15,"KeyF",36,"F",70,"VK_F",e,e],[0,16,"KeyG",37,"G",71,"VK_G",e,e],[0,17,"KeyH",38,"H",72,"VK_H",e,e],[0,18,"KeyI",39,"I",73,"VK_I",e,e],[0,19,"KeyJ",40,"J",74,"VK_J",e,e],[0,20,"KeyK",41,"K",75,"VK_K",e,e],[0,21,"KeyL",42,"L",76,"VK_L",e,e],[0,22,"KeyM",43,"M",77,"VK_M",e,e],[0,23,"KeyN",44,"N",78,"VK_N",e,e],[0,24,"KeyO",45,"O",79,"VK_O",e,e],[0,25,"KeyP",46,"P",80,"VK_P",e,e],[0,26,"KeyQ",47,"Q",81,"VK_Q",e,e],[0,27,"KeyR",48,"R",82,"VK_R",e,e],[0,28,"KeyS",49,"S",83,"VK_S",e,e],[0,29,"KeyT",50,"T",84,"VK_T",e,e],[0,30,"KeyU",51,"U",85,"VK_U",e,e],[0,31,"KeyV",52,"V",86,"VK_V",e,e],[0,32,"KeyW",53,"W",87,"VK_W",e,e],[0,33,"KeyX",54,"X",88,"VK_X",e,e],[0,34,"KeyY",55,"Y",89,"VK_Y",e,e],[0,35,"KeyZ",56,"Z",90,"VK_Z",e,e],[0,36,"Digit1",22,"1",49,"VK_1",e,e],[0,37,"Digit2",23,"2",50,"VK_2",e,e],[0,38,"Digit3",24,"3",51,"VK_3",e,e],[0,39,"Digit4",25,"4",52,"VK_4",e,e],[0,40,"Digit5",26,"5",53,"VK_5",e,e],[0,41,"Digit6",27,"6",54,"VK_6",e,e],[0,42,"Digit7",28,"7",55,"VK_7",e,e],[0,43,"Digit8",29,"8",56,"VK_8",e,e],[0,44,"Digit9",30,"9",57,"VK_9",e,e],[0,45,"Digit0",21,"0",48,"VK_0",e,e],[1,46,"Enter",3,"Enter",13,"VK_RETURN",e,e],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE",e,e],[1,48,"Backspace",1,"Backspace",8,"VK_BACK",e,e],[1,49,"Tab",2,"Tab",9,"VK_TAB",e,e],[1,50,"Space",10,"Space",32,"VK_SPACE",e,e],[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,e,0,e,e,e],[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",e,e],[1,64,"F1",59,"F1",112,"VK_F1",e,e],[1,65,"F2",60,"F2",113,"VK_F2",e,e],[1,66,"F3",61,"F3",114,"VK_F3",e,e],[1,67,"F4",62,"F4",115,"VK_F4",e,e],[1,68,"F5",63,"F5",116,"VK_F5",e,e],[1,69,"F6",64,"F6",117,"VK_F6",e,e],[1,70,"F7",65,"F7",118,"VK_F7",e,e],[1,71,"F8",66,"F8",119,"VK_F8",e,e],[1,72,"F9",67,"F9",120,"VK_F9",e,e],[1,73,"F10",68,"F10",121,"VK_F10",e,e],[1,74,"F11",69,"F11",122,"VK_F11",e,e],[1,75,"F12",70,"F12",123,"VK_F12",e,e],[1,76,"PrintScreen",0,e,0,e,e,e],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL",e,e],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",e,e],[1,79,"Insert",19,"Insert",45,"VK_INSERT",e,e],[1,80,"Home",14,"Home",36,"VK_HOME",e,e],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",e,e],[1,82,"Delete",20,"Delete",46,"VK_DELETE",e,e],[1,83,"End",13,"End",35,"VK_END",e,e],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT",e,e],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",e],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",e],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",e],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",e],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK",e,e],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE",e,e],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY",e,e],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT",e,e],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD",e,e],[1,94,"NumpadEnter",3,e,0,e,e,e],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1",e,e],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2",e,e],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3",e,e],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4",e,e],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5",e,e],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6",e,e],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7",e,e],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8",e,e],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9",e,e],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0",e,e],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL",e,e],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102",e,e],[1,107,"ContextMenu",58,"ContextMenu",93,e,e,e],[1,108,"Power",0,e,0,e,e,e],[1,109,"NumpadEqual",0,e,0,e,e,e],[1,110,"F13",71,"F13",124,"VK_F13",e,e],[1,111,"F14",72,"F14",125,"VK_F14",e,e],[1,112,"F15",73,"F15",126,"VK_F15",e,e],[1,113,"F16",74,"F16",127,"VK_F16",e,e],[1,114,"F17",75,"F17",128,"VK_F17",e,e],[1,115,"F18",76,"F18",129,"VK_F18",e,e],[1,116,"F19",77,"F19",130,"VK_F19",e,e],[1,117,"F20",78,"F20",131,"VK_F20",e,e],[1,118,"F21",79,"F21",132,"VK_F21",e,e],[1,119,"F22",80,"F22",133,"VK_F22",e,e],[1,120,"F23",81,"F23",134,"VK_F23",e,e],[1,121,"F24",82,"F24",135,"VK_F24",e,e],[1,122,"Open",0,e,0,e,e,e],[1,123,"Help",0,e,0,e,e,e],[1,124,"Select",0,e,0,e,e,e],[1,125,"Again",0,e,0,e,e,e],[1,126,"Undo",0,e,0,e,e,e],[1,127,"Cut",0,e,0,e,e,e],[1,128,"Copy",0,e,0,e,e,e],[1,129,"Paste",0,e,0,e,e,e],[1,130,"Find",0,e,0,e,e,e],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE",e,e],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP",e,e],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN",e,e],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR",e,e],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1",e,e],[1,136,"KanaMode",0,e,0,e,e,e],[0,137,"IntlYen",0,e,0,e,e,e],[1,138,"Convert",0,e,0,e,e,e],[1,139,"NonConvert",0,e,0,e,e,e],[1,140,"Lang1",0,e,0,e,e,e],[1,141,"Lang2",0,e,0,e,e,e],[1,142,"Lang3",0,e,0,e,e,e],[1,143,"Lang4",0,e,0,e,e,e],[1,144,"Lang5",0,e,0,e,e,e],[1,145,"Abort",0,e,0,e,e,e],[1,146,"Props",0,e,0,e,e,e],[1,147,"NumpadParenLeft",0,e,0,e,e,e],[1,148,"NumpadParenRight",0,e,0,e,e,e],[1,149,"NumpadBackspace",0,e,0,e,e,e],[1,150,"NumpadMemoryStore",0,e,0,e,e,e],[1,151,"NumpadMemoryRecall",0,e,0,e,e,e],[1,152,"NumpadMemoryClear",0,e,0,e,e,e],[1,153,"NumpadMemoryAdd",0,e,0,e,e,e],[1,154,"NumpadMemorySubtract",0,e,0,e,e,e],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR",e,e],[1,156,"NumpadClearEntry",0,e,0,e,e,e],[1,0,e,5,"Ctrl",17,"VK_CONTROL",e,e],[1,0,e,4,"Shift",16,"VK_SHIFT",e,e],[1,0,e,6,"Alt",18,"VK_MENU",e,e],[1,0,e,57,"Meta",91,"VK_COMMAND",e,e],[1,157,"ControlLeft",5,e,0,"VK_LCONTROL",e,e],[1,158,"ShiftLeft",4,e,0,"VK_LSHIFT",e,e],[1,159,"AltLeft",6,e,0,"VK_LMENU",e,e],[1,160,"MetaLeft",57,e,0,"VK_LWIN",e,e],[1,161,"ControlRight",5,e,0,"VK_RCONTROL",e,e],[1,162,"ShiftRight",4,e,0,"VK_RSHIFT",e,e],[1,163,"AltRight",6,e,0,"VK_RMENU",e,e],[1,164,"MetaRight",57,e,0,"VK_RWIN",e,e],[1,165,"BrightnessUp",0,e,0,e,e,e],[1,166,"BrightnessDown",0,e,0,e,e,e],[1,167,"MediaPlay",0,e,0,e,e,e],[1,168,"MediaRecord",0,e,0,e,e,e],[1,169,"MediaFastForward",0,e,0,e,e,e],[1,170,"MediaRewind",0,e,0,e,e,e],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",e,e],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",e,e],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP",e,e],[1,174,"Eject",0,e,0,e,e,e],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",e,e],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",e,e],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",e,e],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",e,e],[1,179,"LaunchApp1",0,e,0,"VK_MEDIA_LAUNCH_APP1",e,e],[1,180,"SelectTask",0,e,0,e,e,e],[1,181,"LaunchScreenSaver",0,e,0,e,e,e],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH",e,e],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME",e,e],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK",e,e],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD",e,e],[1,186,"BrowserStop",0,e,0,"VK_BROWSER_STOP",e,e],[1,187,"BrowserRefresh",0,e,0,"VK_BROWSER_REFRESH",e,e],[1,188,"BrowserFavorites",0,e,0,"VK_BROWSER_FAVORITES",e,e],[1,189,"ZoomToggle",0,e,0,e,e,e],[1,190,"MailReply",0,e,0,e,e,e],[1,191,"MailForward",0,e,0,e,e,e],[1,192,"MailSend",0,e,0,e,e,e],[1,0,e,114,"KeyInComposition",229,e,e,e],[1,0,e,116,"ABNT_C2",194,"VK_ABNT_C2",e,e],[1,0,e,96,"OEM_8",223,"VK_OEM_8",e,e],[1,0,e,0,e,0,"VK_KANA",e,e],[1,0,e,0,e,0,"VK_HANGUL",e,e],[1,0,e,0,e,0,"VK_JUNJA",e,e],[1,0,e,0,e,0,"VK_FINAL",e,e],[1,0,e,0,e,0,"VK_HANJA",e,e],[1,0,e,0,e,0,"VK_KANJI",e,e],[1,0,e,0,e,0,"VK_CONVERT",e,e],[1,0,e,0,e,0,"VK_NONCONVERT",e,e],[1,0,e,0,e,0,"VK_ACCEPT",e,e],[1,0,e,0,e,0,"VK_MODECHANGE",e,e],[1,0,e,0,e,0,"VK_SELECT",e,e],[1,0,e,0,e,0,"VK_PRINT",e,e],[1,0,e,0,e,0,"VK_EXECUTE",e,e],[1,0,e,0,e,0,"VK_SNAPSHOT",e,e],[1,0,e,0,e,0,"VK_HELP",e,e],[1,0,e,0,e,0,"VK_APPS",e,e],[1,0,e,0,e,0,"VK_PROCESSKEY",e,e],[1,0,e,0,e,0,"VK_PACKET",e,e],[1,0,e,0,e,0,"VK_DBE_SBCSCHAR",e,e],[1,0,e,0,e,0,"VK_DBE_DBCSCHAR",e,e],[1,0,e,0,e,0,"VK_ATTN",e,e],[1,0,e,0,e,0,"VK_CRSEL",e,e],[1,0,e,0,e,0,"VK_EXSEL",e,e],[1,0,e,0,e,0,"VK_EREOF",e,e],[1,0,e,0,e,0,"VK_PLAY",e,e],[1,0,e,0,e,0,"VK_ZOOM",e,e],[1,0,e,0,e,0,"VK_NONAME",e,e],[1,0,e,0,e,0,"VK_PA1",e,e],[1,0,e,0,e,0,"VK_OEM_CLEAR",e,e]],n=[],r=[];for(const s of t){const[i,l,o,u,c,h,f,d,w]=s;if(r[l]||(r[l]=!0,hi[o]=l,fi[o.toLowerCase()]=l),!n[u]){if(n[u]=!0,!c)throw new Error(`String representation missing for key code ${u} around scan code ${o}`);Pt.define(u,c),xn.define(u,d||c),pn.define(u,w||d||c)}h&&(ci[h]=u)}})();var u1;(function(e){function t(o){return Pt.keyCodeToStr(o)}e.toString=t;function n(o){return Pt.strToKeyCode(o)}e.fromString=n;function r(o){return xn.keyCodeToStr(o)}e.toUserSettingsUS=r;function s(o){return pn.keyCodeToStr(o)}e.toUserSettingsGeneral=s;function i(o){return xn.strToKeyCode(o)||pn.strToKeyCode(o)}e.fromUserSettings=i;function l(o){if(o>=98&&o<=113)return null;switch(o){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return Pt.keyCodeToStr(o)}e.toElectronAccelerator=l})(u1||(u1={}));function di(e,t){const n=(t&65535)<<16>>>0;return(e|n)>>>0}let je;const _n=globalThis.vscode;if(typeof _n<"u"&&typeof _n.process<"u"){const e=_n.process;je={get platform(){return e.platform},get arch(){return e.arch},get env(){return e.env},cwd(){return e.cwd()}}}else typeof process<"u"&&typeof((us=process==null?void 0:process.versions)==null?void 0:us.node)=="string"?je={get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd(){return process.env.VSCODE_CWD||process.cwd()}}:je={get platform(){return lt?"win32":ks?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const Ft=je.cwd,mi=je.env,gi=je.platform,bi=65,wi=97,xi=90,pi=122,Pe=46,J=47,ne=92,pe=58,_i=63;class c1 extends Error{constructor(t,n,r){let s;typeof n=="string"&&n.indexOf("not ")===0?(s="must not be",n=n.replace(/^not /,"")):s="must be";const i=t.indexOf(".")!==-1?"property":"argument";let l=`The "${t}" ${i} ${s} of type ${n}`;l+=`. Received type ${typeof r}`,super(l),this.code="ERR_INVALID_ARG_TYPE"}}function Li(e,t){if(e===null||typeof e!="object")throw new c1(t,"Object",e)}function X(e,t){if(typeof e!="string")throw new c1(t,"string",e)}const Ae=gi==="win32";function q(e){return e===J||e===ne}function Ln(e){return e===J}function _e(e){return e>=bi&&e<=xi||e>=wi&&e<=pi}function Dt(e,t,n,r){let s="",i=0,l=-1,o=0,u=0;for(let c=0;c<=e.length;++c){if(c2){const h=s.lastIndexOf(n);h===-1?(s="",i=0):(s=s.slice(0,h),i=s.length-1-s.lastIndexOf(n)),l=c,o=0;continue}else if(s.length!==0){s="",i=0,l=c,o=0;continue}}t&&(s+=s.length>0?`${n}..`:"..",i=2)}else s.length>0?s+=`${n}${e.slice(l+1,c)}`:s=e.slice(l+1,c),i=c-l-1;l=c,o=0}else u===Pe&&o!==-1?++o:o=-1}return s}function vi(e){return e?`${e[0]==="."?"":"."}${e}`:""}function h1(e,t){Li(t,"pathObject");const n=t.dir||t.root,r=t.base||`${t.name||""}${vi(t.ext)}`;return n?n===t.root?`${n}${r}`:`${n}${e}${r}`:r}const ee={resolve(...e){let t="",n="",r=!1;for(let s=e.length-1;s>=-1;s--){let i;if(s>=0){if(i=e[s],X(i,`paths[${s}]`),i.length===0)continue}else t.length===0?i=Ft():(i=mi[`=${t}`]||Ft(),(i===void 0||i.slice(0,2).toLowerCase()!==t.toLowerCase()&&i.charCodeAt(2)===ne)&&(i=`${t}\\`));const l=i.length;let o=0,u="",c=!1;const h=i.charCodeAt(0);if(l===1)q(h)&&(o=1,c=!0);else if(q(h))if(c=!0,q(i.charCodeAt(1))){let f=2,d=f;for(;f2&&q(i.charCodeAt(2))&&(c=!0,o=3));if(u.length>0)if(t.length>0){if(u.toLowerCase()!==t.toLowerCase())continue}else t=u;if(r){if(t.length>0)break}else if(n=`${i.slice(o)}\\${n}`,r=c,c&&t.length>0)break}return n=Dt(n,!r,"\\",q),r?`${t}\\${n}`:`${t}${n}`||"."},normalize(e){X(e,"path");const t=e.length;if(t===0)return".";let n=0,r,s=!1;const i=e.charCodeAt(0);if(t===1)return Ln(i)?"\\":e;if(q(i))if(s=!0,q(e.charCodeAt(1))){let o=2,u=o;for(;o2&&q(e.charCodeAt(2))&&(s=!0,n=3));let l=n0&&q(e.charCodeAt(t-1))&&(l+="\\"),!s&&r===void 0&&e.includes(":")){if(l.length>=2&&_e(l.charCodeAt(0))&&l.charCodeAt(1)===pe)return`.\\${l}`;let o=e.indexOf(":");do if(o===t-1||q(e.charCodeAt(o+1)))return`.\\${l}`;while((o=e.indexOf(":",o+1))!==-1)}return r===void 0?s?`\\${l}`:l:s?`${r}\\${l}`:`${r}${l}`},isAbsolute(e){X(e,"path");const t=e.length;if(t===0)return!1;const n=e.charCodeAt(0);return q(n)||t>2&&_e(n)&&e.charCodeAt(1)===pe&&q(e.charCodeAt(2))},join(...e){if(e.length===0)return".";let t,n;for(let i=0;i0&&(t===void 0?t=n=l:t+=`\\${l}`)}if(t===void 0)return".";let r=!0,s=0;if(typeof n=="string"&&q(n.charCodeAt(0))){++s;const i=n.length;i>1&&q(n.charCodeAt(1))&&(++s,i>2&&(q(n.charCodeAt(2))?++s:r=!1))}if(r){for(;s=2&&(t=`\\${t.slice(s)}`)}return ee.normalize(t)},relative(e,t){if(X(e,"from"),X(t,"to"),e===t)return"";const n=ee.resolve(e),r=ee.resolve(t);if(n===r||(e=n.toLowerCase(),t=r.toLowerCase(),e===t))return"";if(n.length!==e.length||r.length!==t.length){const g=n.split("\\"),m=r.split("\\");g[g.length-1]===""&&g.pop(),m[m.length-1]===""&&m.pop();const L=g.length,S=m.length,N=LN?m.slice(v).join("\\"):L>N?"..\\".repeat(L-1-v)+"..":"":"..\\".repeat(L-v)+m.slice(v).join("\\")}let s=0;for(;ss&&e.charCodeAt(i-1)===ne;)i--;const l=i-s;let o=0;for(;oo&&t.charCodeAt(u-1)===ne;)u--;const c=u-o,h=lh){if(t.charCodeAt(o+d)===ne)return r.slice(o+d+1);if(d===2)return r.slice(o+d)}l>h&&(e.charCodeAt(s+d)===ne?f=d:d===2&&(f=3)),f===-1&&(f=0)}let w="";for(d=s+f+1;d<=i;++d)(d===i||e.charCodeAt(d)===ne)&&(w+=w.length===0?"..":"\\..");return o+=f,w.length>0?`${w}${r.slice(o,u)}`:(r.charCodeAt(o)===ne&&++o,r.slice(o,u))},toNamespacedPath(e){if(typeof e!="string"||e.length===0)return e;const t=ee.resolve(e);if(t.length<=2)return e;if(t.charCodeAt(0)===ne){if(t.charCodeAt(1)===ne){const n=t.charCodeAt(2);if(n!==_i&&n!==Pe)return`\\\\?\\UNC\\${t.slice(2)}`}}else if(_e(t.charCodeAt(0))&&t.charCodeAt(1)===pe&&t.charCodeAt(2)===ne)return`\\\\?\\${t}`;return t},dirname(e){X(e,"path");const t=e.length;if(t===0)return".";let n=-1,r=0;const s=e.charCodeAt(0);if(t===1)return q(s)?e:".";if(q(s)){if(n=r=1,q(e.charCodeAt(1))){let o=2,u=o;for(;o2&&q(e.charCodeAt(2))?3:2,r=n);let i=-1,l=!0;for(let o=t-1;o>=r;--o)if(q(e.charCodeAt(o))){if(!l){i=o;break}}else l=!1;if(i===-1){if(n===-1)return".";i=n}return e.slice(0,i)},basename(e,t){t!==void 0&&X(t,"suffix"),X(e,"path");let n=0,r=-1,s=!0,i;if(e.length>=2&&_e(e.charCodeAt(0))&&e.charCodeAt(1)===pe&&(n=2),t!==void 0&&t.length>0&&t.length<=e.length){if(t===e)return"";let l=t.length-1,o=-1;for(i=e.length-1;i>=n;--i){const u=e.charCodeAt(i);if(q(u)){if(!s){n=i+1;break}}else o===-1&&(s=!1,o=i+1),l>=0&&(u===t.charCodeAt(l)?--l===-1&&(r=i):(l=-1,r=o))}return n===r?r=o:r===-1&&(r=e.length),e.slice(n,r)}for(i=e.length-1;i>=n;--i)if(q(e.charCodeAt(i))){if(!s){n=i+1;break}}else r===-1&&(s=!1,r=i+1);return r===-1?"":e.slice(n,r)},extname(e){X(e,"path");let t=0,n=-1,r=0,s=-1,i=!0,l=0;e.length>=2&&e.charCodeAt(1)===pe&&_e(e.charCodeAt(0))&&(t=r=2);for(let o=e.length-1;o>=t;--o){const u=e.charCodeAt(o);if(q(u)){if(!i){r=o+1;break}continue}s===-1&&(i=!1,s=o+1),u===Pe?n===-1?n=o:l!==1&&(l=1):n!==-1&&(l=-1)}return n===-1||s===-1||l===0||l===1&&n===s-1&&n===r+1?"":e.slice(n,s)},format:h1.bind(null,"\\"),parse(e){X(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(e.length===0)return t;const n=e.length;let r=0,s=e.charCodeAt(0);if(n===1)return q(s)?(t.root=t.dir=e,t):(t.base=t.name=e,t);if(q(s)){if(r=1,q(e.charCodeAt(1))){let f=2,d=f;for(;f0&&(t.root=e.slice(0,r));let i=-1,l=r,o=-1,u=!0,c=e.length-1,h=0;for(;c>=r;--c){if(s=e.charCodeAt(c),q(s)){if(!u){l=c+1;break}continue}o===-1&&(u=!1,o=c+1),s===Pe?i===-1?i=c:h!==1&&(h=1):i!==-1&&(h=-1)}return o!==-1&&(i===-1||h===0||h===1&&i===o-1&&i===l+1?t.base=t.name=e.slice(l,o):(t.name=e.slice(l,i),t.base=e.slice(l,o),t.ext=e.slice(i,o))),l>0&&l!==r?t.dir=e.slice(0,l-1):t.dir=t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},Ni=(()=>{if(Ae){const e=/\\/g;return()=>{const t=Ft().replace(e,"/");return t.slice(t.indexOf("/"))}}return()=>Ft()})(),re={resolve(...e){let t="",n=!1;for(let r=e.length-1;r>=0&&!n;r--){const s=e[r];X(s,`paths[${r}]`),s.length!==0&&(t=`${s}/${t}`,n=s.charCodeAt(0)===J)}if(!n){const r=Ni();t=`${r}/${t}`,n=r.charCodeAt(0)===J}return t=Dt(t,!n,"/",Ln),n?`/${t}`:t.length>0?t:"."},normalize(e){if(X(e,"path"),e.length===0)return".";const t=e.charCodeAt(0)===J,n=e.charCodeAt(e.length-1)===J;return e=Dt(e,!t,"/",Ln),e.length===0?t?"/":n?"./":".":(n&&(e+="/"),t?`/${e}`:e)},isAbsolute(e){return X(e,"path"),e.length>0&&e.charCodeAt(0)===J},join(...e){if(e.length===0)return".";const t=[];for(let n=0;n0&&t.push(r)}return t.length===0?".":re.normalize(t.join("/"))},relative(e,t){if(X(e,"from"),X(t,"to"),e===t||(e=re.resolve(e),t=re.resolve(t),e===t))return"";const n=1,r=e.length,s=r-n,i=1,l=t.length-i,o=so){if(t.charCodeAt(i+c)===J)return t.slice(i+c+1);if(c===0)return t.slice(i+c)}else s>o&&(e.charCodeAt(n+c)===J?u=c:c===0&&(u=0));let h="";for(c=n+u+1;c<=r;++c)(c===r||e.charCodeAt(c)===J)&&(h+=h.length===0?"..":"/..");return`${h}${t.slice(i+u)}`},toNamespacedPath(e){return e},dirname(e){if(X(e,"path"),e.length===0)return".";const t=e.charCodeAt(0)===J;let n=-1,r=!0;for(let s=e.length-1;s>=1;--s)if(e.charCodeAt(s)===J){if(!r){n=s;break}}else r=!1;return n===-1?t?"/":".":t&&n===1?"//":e.slice(0,n)},basename(e,t){t!==void 0&&X(t,"suffix"),X(e,"path");let n=0,r=-1,s=!0,i;if(t!==void 0&&t.length>0&&t.length<=e.length){if(t===e)return"";let l=t.length-1,o=-1;for(i=e.length-1;i>=0;--i){const u=e.charCodeAt(i);if(u===J){if(!s){n=i+1;break}}else o===-1&&(s=!1,o=i+1),l>=0&&(u===t.charCodeAt(l)?--l===-1&&(r=i):(l=-1,r=o))}return n===r?r=o:r===-1&&(r=e.length),e.slice(n,r)}for(i=e.length-1;i>=0;--i)if(e.charCodeAt(i)===J){if(!s){n=i+1;break}}else r===-1&&(s=!1,r=i+1);return r===-1?"":e.slice(n,r)},extname(e){X(e,"path");let t=-1,n=0,r=-1,s=!0,i=0;for(let l=e.length-1;l>=0;--l){const o=e[l];if(o==="/"){if(!s){n=l+1;break}continue}r===-1&&(s=!1,r=l+1),o==="."?t===-1?t=l:i!==1&&(i=1):t!==-1&&(i=-1)}return t===-1||r===-1||i===0||i===1&&t===r-1&&t===n+1?"":e.slice(t,r)},format:h1.bind(null,"/"),parse(e){X(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(e.length===0)return t;const n=e.charCodeAt(0)===J;let r;n?(t.root="/",r=1):r=0;let s=-1,i=0,l=-1,o=!0,u=e.length-1,c=0;for(;u>=r;--u){const h=e.charCodeAt(u);if(h===J){if(!o){i=u+1;break}continue}l===-1&&(o=!1,l=u+1),h===Pe?s===-1?s=u:c!==1&&(c=1):s!==-1&&(c=-1)}if(l!==-1){const h=i===0&&n?1:i;s===-1||c===0||c===1&&s===l-1&&s===i+1?t.base=t.name=e.slice(h,l):(t.name=e.slice(h,s),t.base=e.slice(h,l),t.ext=e.slice(s,l))}return i>0?t.dir=e.slice(0,i-1):n&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};re.win32=ee.win32=ee,re.posix=ee.posix=re,Ae?ee.normalize:re.normalize,Ae?ee.resolve:re.resolve,Ae?ee.relative:re.relative,Ae?ee.dirname:re.dirname,Ae?ee.basename:re.basename,Ae?ee.extname:re.extname,Ae?ee.sep:re.sep;const Si=/^\w[\w\d+.-]*$/,yi=/^\//,Ai=/^\/\//;function Ri(e,t){if(!e.scheme&&t)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!Si.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path){if(e.authority){if(!yi.test(e.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(Ai.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function Ci(e,t){return!e&&!t?"file":e}function Ei(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==de&&(t=de+t):t=de;break}return t}const j="",de="/",Mi=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class Fe{static isUri(t){return t instanceof Fe?!0:!t||typeof t!="object"?!1:typeof t.authority=="string"&&typeof t.fragment=="string"&&typeof t.path=="string"&&typeof t.query=="string"&&typeof t.scheme=="string"&&typeof t.fsPath=="string"&&typeof t.with=="function"&&typeof t.toString=="function"}constructor(t,n,r,s,i,l=!1){typeof t=="object"?(this.scheme=t.scheme||j,this.authority=t.authority||j,this.path=t.path||j,this.query=t.query||j,this.fragment=t.fragment||j):(this.scheme=Ci(t,l),this.authority=n||j,this.path=Ei(this.scheme,r||j),this.query=s||j,this.fragment=i||j,Ri(this,l))}get fsPath(){return vn(this,!1)}with(t){if(!t)return this;let{scheme:n,authority:r,path:s,query:i,fragment:l}=t;return n===void 0?n=this.scheme:n===null&&(n=j),r===void 0?r=this.authority:r===null&&(r=j),s===void 0?s=this.path:s===null&&(s=j),i===void 0?i=this.query:i===null&&(i=j),l===void 0?l=this.fragment:l===null&&(l=j),n===this.scheme&&r===this.authority&&s===this.path&&i===this.query&&l===this.fragment?this:new Ge(n,r,s,i,l)}static parse(t,n=!1){const r=Mi.exec(t);return r?new Ge(r[2]||j,Tt(r[4]||j),Tt(r[5]||j),Tt(r[7]||j),Tt(r[9]||j),n):new Ge(j,j,j,j,j)}static file(t){let n=j;if(lt&&(t=t.replace(/\\/g,de)),t[0]===de&&t[1]===de){const r=t.indexOf(de,2);r===-1?(n=t.substring(2),t=de):(n=t.substring(2,r),t=t.substring(r)||de)}return new Ge("file",n,t,j,j)}static from(t,n){return new Ge(t.scheme,t.authority,t.path,t.query,t.fragment,n)}static joinPath(t,...n){if(!t.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let r;return lt&&t.scheme==="file"?r=Fe.file(ee.join(vn(t,!0),...n)).path:r=re.join(t.path,...n),t.with({path:r})}toString(t=!1){return Nn(this,t)}toJSON(){return this}static revive(t){var n,r;if(t){if(t instanceof Fe)return t;{const s=new Ge(t);return s._formatted=(n=t.external)!=null?n:null,s._fsPath=t._sep===f1&&(r=t.fsPath)!=null?r:null,s}}else return t}}const f1=lt?1:void 0;class Ge extends Fe{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=vn(this,!1)),this._fsPath}toString(t=!1){return t?Nn(this,!0):(this._formatted||(this._formatted=Nn(this,!1)),this._formatted)}toJSON(){const t={$mid:1};return this._fsPath&&(t.fsPath=this._fsPath,t._sep=f1),this._formatted&&(t.external=this._formatted),this.path&&(t.path=this.path),this.scheme&&(t.scheme=this.scheme),this.authority&&(t.authority=this.authority),this.query&&(t.query=this.query),this.fragment&&(t.fragment=this.fragment),t}}const d1={[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 m1(e,t,n){let r,s=-1;for(let i=0;i=97&&l<=122||l>=65&&l<=90||l>=48&&l<=57||l===45||l===46||l===95||l===126||t&&l===47||n&&l===91||n&&l===93||n&&l===58)s!==-1&&(r+=encodeURIComponent(e.substring(s,i)),s=-1),r!==void 0&&(r+=e.charAt(i));else{r===void 0&&(r=e.substr(0,i));const o=d1[l];o!==void 0?(s!==-1&&(r+=encodeURIComponent(e.substring(s,i)),s=-1),r+=o):s===-1&&(s=i)}}return s!==-1&&(r+=encodeURIComponent(e.substring(s))),r!==void 0?r:e}function ki(e){let t;for(let n=0;n1&&e.scheme==="file"?n=`//${e.authority}${e.path}`:e.path.charCodeAt(0)===47&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&e.path.charCodeAt(2)===58?t?n=e.path.substr(1):n=e.path[1].toLowerCase()+e.path.substr(2):n=e.path,lt&&(n=n.replace(/\//g,"\\")),n}function Nn(e,t){const n=t?ki:m1;let r="",{scheme:s,authority:i,path:l,query:o,fragment:u}=e;if(s&&(r+=s,r+=":"),(i||s==="file")&&(r+=de,r+=de),i){let c=i.indexOf("@");if(c!==-1){const h=i.substr(0,c);i=i.substr(c+1),c=h.lastIndexOf(":"),c===-1?r+=n(h,!1,!1):(r+=n(h.substr(0,c),!1,!1),r+=":",r+=n(h.substr(c+1),!1,!0)),r+="@"}i=i.toLowerCase(),c=i.lastIndexOf(":"),c===-1?r+=n(i,!1,!0):(r+=n(i.substr(0,c),!1,!0),r+=i.substr(c))}if(l){if(l.length>=3&&l.charCodeAt(0)===47&&l.charCodeAt(2)===58){const c=l.charCodeAt(1);c>=65&&c<=90&&(l=`/${String.fromCharCode(c+32)}:${l.substr(3)}`)}else if(l.length>=2&&l.charCodeAt(1)===58){const c=l.charCodeAt(0);c>=65&&c<=90&&(l=`${String.fromCharCode(c+32)}:${l.substr(2)}`)}r+=n(l,!0,!1)}return o&&(r+="?",r+=n(o,!1,!1)),u&&(r+="#",r+=t?u:m1(u,!1,!1)),r}function g1(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+g1(e.substr(3)):e}}const b1=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Tt(e){return e.match(b1)?e.replace(b1,t=>g1(t)):e}class ie extends M{constructor(t,n,r,s){super(t,n,r,s),this.selectionStartLineNumber=t,this.selectionStartColumn=n,this.positionLineNumber=r,this.positionColumn=s}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(t){return ie.selectionsEqual(this,t)}static selectionsEqual(t,n){return t.selectionStartLineNumber===n.selectionStartLineNumber&&t.selectionStartColumn===n.selectionStartColumn&&t.positionLineNumber===n.positionLineNumber&&t.positionColumn===n.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(t,n){return this.getDirection()===0?new ie(this.startLineNumber,this.startColumn,t,n):new ie(t,n,this.startLineNumber,this.startColumn)}getPosition(){return new $(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new $(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(t,n){return this.getDirection()===0?new ie(t,n,this.endLineNumber,this.endColumn):new ie(this.endLineNumber,this.endColumn,t,n)}static fromPositions(t,n=t){return new ie(t.lineNumber,t.column,n.lineNumber,n.column)}static fromRange(t,n){return n===0?new ie(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn):new ie(t.endLineNumber,t.endColumn,t.startLineNumber,t.startColumn)}static liftSelection(t){return new ie(t.selectionStartLineNumber,t.selectionStartColumn,t.positionLineNumber,t.positionColumn)}static selectionsArrEqual(t,n){if(t&&!n||!t&&n)return!1;if(!t&&!n)return!0;if(t.length!==n.length)return!1;for(let r=0,s=t.length;r{this._tokenizationSupports.get(t)===n&&(this._tokenizationSupports.delete(t),this.handleChange([t]))})}get(t){return this._tokenizationSupports.get(t)||null}registerFactory(t,n){var s;(s=this._factories.get(t))==null||s.dispose();const r=new Ti(this,t,n);return this._factories.set(t,r),St(()=>{const i=this._factories.get(t);!i||i!==r||(this._factories.delete(t),i.dispose())})}async getOrCreate(t){const n=this.get(t);if(n)return n;const r=this._factories.get(t);return!r||r.isResolved?null:(await r.resolve(),this.get(t))}isResolved(t){if(this.get(t))return!0;const r=this._factories.get(t);return!!(!r||r.isResolved)}setColorMap(t){this._colorMap=t,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}}class Ti extends Ee{get isResolved(){return this._isResolved}constructor(t,n,r){super(),this._registry=t,this._languageId=n,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(){const t=await this._factory.tokenizationSupport;this._isResolved=!0,t&&!this._isDisposed&&this._register(this._registry.register(this._languageId,t))}}class Vi{constructor(t,n,r){this.offset=t,this.type=n,this.language=r,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}}var x1;(function(e){e[e.Increase=0]="Increase",e[e.Decrease=1]="Decrease"})(x1||(x1={}));var p1;(function(e){const t=new Map;t.set(0,P.symbolMethod),t.set(1,P.symbolFunction),t.set(2,P.symbolConstructor),t.set(3,P.symbolField),t.set(4,P.symbolVariable),t.set(5,P.symbolClass),t.set(6,P.symbolStruct),t.set(7,P.symbolInterface),t.set(8,P.symbolModule),t.set(9,P.symbolProperty),t.set(10,P.symbolEvent),t.set(11,P.symbolOperator),t.set(12,P.symbolUnit),t.set(13,P.symbolValue),t.set(15,P.symbolEnum),t.set(14,P.symbolConstant),t.set(15,P.symbolEnum),t.set(16,P.symbolEnumMember),t.set(17,P.symbolKeyword),t.set(28,P.symbolSnippet),t.set(18,P.symbolText),t.set(19,P.symbolColor),t.set(20,P.symbolFile),t.set(21,P.symbolReference),t.set(22,P.symbolCustomColor),t.set(23,P.symbolFolder),t.set(24,P.symbolTypeParameter),t.set(25,P.account),t.set(26,P.issues),t.set(27,P.tools);function n(l){let o=t.get(l);return o||(console.info("No codicon found for CompletionItemKind "+l),o=P.symbolProperty),o}e.toIcon=n;function r(l){switch(l){case 0:return D(721,"Method");case 1:return D(722,"Function");case 2:return D(723,"Constructor");case 3:return D(724,"Field");case 4:return D(725,"Variable");case 5:return D(726,"Class");case 6:return D(727,"Struct");case 7:return D(728,"Interface");case 8:return D(729,"Module");case 9:return D(730,"Property");case 10:return D(731,"Event");case 11:return D(732,"Operator");case 12:return D(733,"Unit");case 13:return D(734,"Value");case 14:return D(735,"Constant");case 15:return D(736,"Enum");case 16:return D(737,"Enum Member");case 17:return D(738,"Keyword");case 18:return D(739,"Text");case 19:return D(740,"Color");case 20:return D(741,"File");case 21:return D(742,"Reference");case 22:return D(743,"Custom Color");case 23:return D(744,"Folder");case 24:return D(745,"Type Parameter");case 25:return D(746,"User");case 26:return D(747,"Issue");case 27:return D(748,"Tool");case 28:return D(749,"Snippet");default:return""}}e.toLabel=r;const s=new Map;s.set("method",0),s.set("function",1),s.set("constructor",2),s.set("field",3),s.set("variable",4),s.set("class",5),s.set("struct",6),s.set("interface",7),s.set("module",8),s.set("property",9),s.set("event",10),s.set("operator",11),s.set("unit",12),s.set("value",13),s.set("constant",14),s.set("enum",15),s.set("enum-member",16),s.set("enumMember",16),s.set("keyword",17),s.set("snippet",28),s.set("text",18),s.set("color",19),s.set("file",20),s.set("reference",21),s.set("customcolor",22),s.set("folder",23),s.set("type-parameter",24),s.set("typeParameter",24),s.set("account",25),s.set("issue",26),s.set("tool",27);function i(l,o){let u=s.get(l);return typeof u>"u"&&!o&&(u=9),u}e.fromString=i})(p1||(p1={}));var _1;(function(e){e[e.Automatic=0]="Automatic",e[e.Explicit=1]="Explicit"})(_1||(_1={}));var L1;(function(e){e[e.Code=1]="Code",e[e.Label=2]="Label"})(L1||(L1={}));var v1;(function(e){e[e.Accepted=0]="Accepted",e[e.Rejected=1]="Rejected",e[e.Ignored=2]="Ignored"})(v1||(v1={}));var N1;(function(e){e[e.Automatic=0]="Automatic",e[e.PasteAs=1]="PasteAs"})(N1||(N1={}));var S1;(function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"})(S1||(S1={}));var y1;(function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"})(y1||(y1={})),17+"",D(750,"array"),16+"",D(751,"boolean"),4+"",D(752,"class"),13+"",D(753,"constant"),8+"",D(754,"constructor"),9+"",D(755,"enumeration"),21+"",D(756,"enumeration member"),23+"",D(757,"event"),7+"",D(758,"field"),0+"",D(759,"file"),11+"",D(760,"function"),10+"",D(761,"interface"),19+"",D(762,"key"),5+"",D(763,"method"),1+"",D(764,"module"),2+"",D(765,"namespace"),20+"",D(766,"null"),15+"",D(767,"number"),18+"",D(768,"object"),24+"",D(769,"operator"),3+"",D(770,"package"),6+"",D(771,"property"),14+"",D(772,"string"),22+"",D(773,"struct"),25+"",D(774,"type parameter"),12+"",D(775,"variable");var A1;(function(e){const t=new Map;t.set(0,P.symbolFile),t.set(1,P.symbolModule),t.set(2,P.symbolNamespace),t.set(3,P.symbolPackage),t.set(4,P.symbolClass),t.set(5,P.symbolMethod),t.set(6,P.symbolProperty),t.set(7,P.symbolField),t.set(8,P.symbolConstructor),t.set(9,P.symbolEnum),t.set(10,P.symbolInterface),t.set(11,P.symbolFunction),t.set(12,P.symbolVariable),t.set(13,P.symbolConstant),t.set(14,P.symbolString),t.set(15,P.symbolNumber),t.set(16,P.symbolBoolean),t.set(17,P.symbolArray),t.set(18,P.symbolObject),t.set(19,P.symbolKey),t.set(20,P.symbolNull),t.set(21,P.symbolEnumMember),t.set(22,P.symbolStruct),t.set(23,P.symbolEvent),t.set(24,P.symbolOperator),t.set(25,P.symbolTypeParameter);function n(i){let l=t.get(i);return l||(console.info("No codicon found for SymbolKind "+i),l=P.symbolProperty),l}e.toIcon=n;const r=new Map;r.set(0,20),r.set(1,8),r.set(2,8),r.set(3,8),r.set(4,5),r.set(5,0),r.set(6,9),r.set(7,3),r.set(8,2),r.set(9,15),r.set(10,7),r.set(11,1),r.set(12,4),r.set(13,14),r.set(14,18),r.set(15,13),r.set(16,13),r.set(17,13),r.set(18,13),r.set(19,17),r.set(20,13),r.set(21,16),r.set(22,6),r.set(23,10),r.set(24,11),r.set(25,24);function s(i){let l=r.get(i);return l===void 0&&(console.info("No completion kind found for SymbolKind "+i),l=20),l}e.toCompletionKind=s})(A1||(A1={}));const ue=class{static fromValue(t){switch(t){case"comment":return ue.Comment;case"imports":return ue.Imports;case"region":return ue.Region}return new ue(t)}constructor(t){this.value=t}};let R1=ue;(()=>{ue.Comment=new ue("comment")})(),(()=>{ue.Imports=new ue("imports")})(),(()=>{ue.Region=new ue("region")})();var C1;(function(e){e[e.AIGenerated=1]="AIGenerated"})(C1||(C1={}));var E1;(function(e){e[e.Invoke=0]="Invoke",e[e.Automatic=1]="Automatic"})(E1||(E1={}));var M1;(function(e){function t(n){return!n||typeof n!="object"?!1:typeof n.id=="string"&&typeof n.title=="string"}e.is=t})(M1||(M1={}));var k1;(function(e){e[e.Type=1]="Type",e[e.Parameter=2]="Parameter"})(k1||(k1={})),new Di;var P1;(function(e){e[e.Unknown=0]="Unknown",e[e.Disabled=1]="Disabled",e[e.Enabled=2]="Enabled"})(P1||(P1={}));var F1;(function(e){e[e.Invoke=1]="Invoke",e[e.Auto=2]="Auto"})(F1||(F1={}));var D1;(function(e){e[e.None=0]="None",e[e.KeepWhitespace=1]="KeepWhitespace",e[e.InsertAsSnippet=4]="InsertAsSnippet"})(D1||(D1={}));var T1;(function(e){e[e.Method=0]="Method",e[e.Function=1]="Function",e[e.Constructor=2]="Constructor",e[e.Field=3]="Field",e[e.Variable=4]="Variable",e[e.Class=5]="Class",e[e.Struct=6]="Struct",e[e.Interface=7]="Interface",e[e.Module=8]="Module",e[e.Property=9]="Property",e[e.Event=10]="Event",e[e.Operator=11]="Operator",e[e.Unit=12]="Unit",e[e.Value=13]="Value",e[e.Constant=14]="Constant",e[e.Enum=15]="Enum",e[e.EnumMember=16]="EnumMember",e[e.Keyword=17]="Keyword",e[e.Text=18]="Text",e[e.Color=19]="Color",e[e.File=20]="File",e[e.Reference=21]="Reference",e[e.Customcolor=22]="Customcolor",e[e.Folder=23]="Folder",e[e.TypeParameter=24]="TypeParameter",e[e.User=25]="User",e[e.Issue=26]="Issue",e[e.Tool=27]="Tool",e[e.Snippet=28]="Snippet"})(T1||(T1={}));var V1;(function(e){e[e.Deprecated=1]="Deprecated"})(V1||(V1={}));var I1;(function(e){e[e.Invoke=0]="Invoke",e[e.TriggerCharacter=1]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(I1||(I1={}));var B1;(function(e){e[e.EXACT=0]="EXACT",e[e.ABOVE=1]="ABOVE",e[e.BELOW=2]="BELOW"})(B1||(B1={}));var q1;(function(e){e[e.NotSet=0]="NotSet",e[e.ContentFlush=1]="ContentFlush",e[e.RecoverFromMarkers=2]="RecoverFromMarkers",e[e.Explicit=3]="Explicit",e[e.Paste=4]="Paste",e[e.Undo=5]="Undo",e[e.Redo=6]="Redo"})(q1||(q1={}));var U1;(function(e){e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"})(U1||(U1={}));var H1;(function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"})(H1||(H1={}));var $1;(function(e){e[e.None=0]="None",e[e.Keep=1]="Keep",e[e.Brackets=2]="Brackets",e[e.Advanced=3]="Advanced",e[e.Full=4]="Full"})($1||($1={}));var W1;(function(e){e[e.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",e[e.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",e[e.accessibilitySupport=2]="accessibilitySupport",e[e.accessibilityPageSize=3]="accessibilityPageSize",e[e.allowOverflow=4]="allowOverflow",e[e.allowVariableLineHeights=5]="allowVariableLineHeights",e[e.allowVariableFonts=6]="allowVariableFonts",e[e.allowVariableFontsInAccessibilityMode=7]="allowVariableFontsInAccessibilityMode",e[e.ariaLabel=8]="ariaLabel",e[e.ariaRequired=9]="ariaRequired",e[e.autoClosingBrackets=10]="autoClosingBrackets",e[e.autoClosingComments=11]="autoClosingComments",e[e.screenReaderAnnounceInlineSuggestion=12]="screenReaderAnnounceInlineSuggestion",e[e.autoClosingDelete=13]="autoClosingDelete",e[e.autoClosingOvertype=14]="autoClosingOvertype",e[e.autoClosingQuotes=15]="autoClosingQuotes",e[e.autoIndent=16]="autoIndent",e[e.autoIndentOnPaste=17]="autoIndentOnPaste",e[e.autoIndentOnPasteWithinString=18]="autoIndentOnPasteWithinString",e[e.automaticLayout=19]="automaticLayout",e[e.autoSurround=20]="autoSurround",e[e.bracketPairColorization=21]="bracketPairColorization",e[e.guides=22]="guides",e[e.codeLens=23]="codeLens",e[e.codeLensFontFamily=24]="codeLensFontFamily",e[e.codeLensFontSize=25]="codeLensFontSize",e[e.colorDecorators=26]="colorDecorators",e[e.colorDecoratorsLimit=27]="colorDecoratorsLimit",e[e.columnSelection=28]="columnSelection",e[e.comments=29]="comments",e[e.contextmenu=30]="contextmenu",e[e.copyWithSyntaxHighlighting=31]="copyWithSyntaxHighlighting",e[e.cursorBlinking=32]="cursorBlinking",e[e.cursorSmoothCaretAnimation=33]="cursorSmoothCaretAnimation",e[e.cursorStyle=34]="cursorStyle",e[e.cursorSurroundingLines=35]="cursorSurroundingLines",e[e.cursorSurroundingLinesStyle=36]="cursorSurroundingLinesStyle",e[e.cursorWidth=37]="cursorWidth",e[e.cursorHeight=38]="cursorHeight",e[e.disableLayerHinting=39]="disableLayerHinting",e[e.disableMonospaceOptimizations=40]="disableMonospaceOptimizations",e[e.domReadOnly=41]="domReadOnly",e[e.dragAndDrop=42]="dragAndDrop",e[e.dropIntoEditor=43]="dropIntoEditor",e[e.editContext=44]="editContext",e[e.emptySelectionClipboard=45]="emptySelectionClipboard",e[e.experimentalGpuAcceleration=46]="experimentalGpuAcceleration",e[e.experimentalWhitespaceRendering=47]="experimentalWhitespaceRendering",e[e.extraEditorClassName=48]="extraEditorClassName",e[e.fastScrollSensitivity=49]="fastScrollSensitivity",e[e.find=50]="find",e[e.fixedOverflowWidgets=51]="fixedOverflowWidgets",e[e.folding=52]="folding",e[e.foldingStrategy=53]="foldingStrategy",e[e.foldingHighlight=54]="foldingHighlight",e[e.foldingImportsByDefault=55]="foldingImportsByDefault",e[e.foldingMaximumRegions=56]="foldingMaximumRegions",e[e.unfoldOnClickAfterEndOfLine=57]="unfoldOnClickAfterEndOfLine",e[e.fontFamily=58]="fontFamily",e[e.fontInfo=59]="fontInfo",e[e.fontLigatures=60]="fontLigatures",e[e.fontSize=61]="fontSize",e[e.fontWeight=62]="fontWeight",e[e.fontVariations=63]="fontVariations",e[e.formatOnPaste=64]="formatOnPaste",e[e.formatOnType=65]="formatOnType",e[e.glyphMargin=66]="glyphMargin",e[e.gotoLocation=67]="gotoLocation",e[e.hideCursorInOverviewRuler=68]="hideCursorInOverviewRuler",e[e.hover=69]="hover",e[e.inDiffEditor=70]="inDiffEditor",e[e.inlineSuggest=71]="inlineSuggest",e[e.letterSpacing=72]="letterSpacing",e[e.lightbulb=73]="lightbulb",e[e.lineDecorationsWidth=74]="lineDecorationsWidth",e[e.lineHeight=75]="lineHeight",e[e.lineNumbers=76]="lineNumbers",e[e.lineNumbersMinChars=77]="lineNumbersMinChars",e[e.linkedEditing=78]="linkedEditing",e[e.links=79]="links",e[e.matchBrackets=80]="matchBrackets",e[e.minimap=81]="minimap",e[e.mouseStyle=82]="mouseStyle",e[e.mouseWheelScrollSensitivity=83]="mouseWheelScrollSensitivity",e[e.mouseWheelZoom=84]="mouseWheelZoom",e[e.multiCursorMergeOverlapping=85]="multiCursorMergeOverlapping",e[e.multiCursorModifier=86]="multiCursorModifier",e[e.multiCursorPaste=87]="multiCursorPaste",e[e.multiCursorLimit=88]="multiCursorLimit",e[e.occurrencesHighlight=89]="occurrencesHighlight",e[e.occurrencesHighlightDelay=90]="occurrencesHighlightDelay",e[e.overtypeCursorStyle=91]="overtypeCursorStyle",e[e.overtypeOnPaste=92]="overtypeOnPaste",e[e.overviewRulerBorder=93]="overviewRulerBorder",e[e.overviewRulerLanes=94]="overviewRulerLanes",e[e.padding=95]="padding",e[e.pasteAs=96]="pasteAs",e[e.parameterHints=97]="parameterHints",e[e.peekWidgetDefaultFocus=98]="peekWidgetDefaultFocus",e[e.placeholder=99]="placeholder",e[e.definitionLinkOpensInPeek=100]="definitionLinkOpensInPeek",e[e.quickSuggestions=101]="quickSuggestions",e[e.quickSuggestionsDelay=102]="quickSuggestionsDelay",e[e.readOnly=103]="readOnly",e[e.readOnlyMessage=104]="readOnlyMessage",e[e.renameOnType=105]="renameOnType",e[e.renderRichScreenReaderContent=106]="renderRichScreenReaderContent",e[e.renderControlCharacters=107]="renderControlCharacters",e[e.renderFinalNewline=108]="renderFinalNewline",e[e.renderLineHighlight=109]="renderLineHighlight",e[e.renderLineHighlightOnlyWhenFocus=110]="renderLineHighlightOnlyWhenFocus",e[e.renderValidationDecorations=111]="renderValidationDecorations",e[e.renderWhitespace=112]="renderWhitespace",e[e.revealHorizontalRightPadding=113]="revealHorizontalRightPadding",e[e.roundedSelection=114]="roundedSelection",e[e.rulers=115]="rulers",e[e.scrollbar=116]="scrollbar",e[e.scrollBeyondLastColumn=117]="scrollBeyondLastColumn",e[e.scrollBeyondLastLine=118]="scrollBeyondLastLine",e[e.scrollPredominantAxis=119]="scrollPredominantAxis",e[e.selectionClipboard=120]="selectionClipboard",e[e.selectionHighlight=121]="selectionHighlight",e[e.selectionHighlightMaxLength=122]="selectionHighlightMaxLength",e[e.selectionHighlightMultiline=123]="selectionHighlightMultiline",e[e.selectOnLineNumbers=124]="selectOnLineNumbers",e[e.showFoldingControls=125]="showFoldingControls",e[e.showUnused=126]="showUnused",e[e.snippetSuggestions=127]="snippetSuggestions",e[e.smartSelect=128]="smartSelect",e[e.smoothScrolling=129]="smoothScrolling",e[e.stickyScroll=130]="stickyScroll",e[e.stickyTabStops=131]="stickyTabStops",e[e.stopRenderingLineAfter=132]="stopRenderingLineAfter",e[e.suggest=133]="suggest",e[e.suggestFontSize=134]="suggestFontSize",e[e.suggestLineHeight=135]="suggestLineHeight",e[e.suggestOnTriggerCharacters=136]="suggestOnTriggerCharacters",e[e.suggestSelection=137]="suggestSelection",e[e.tabCompletion=138]="tabCompletion",e[e.tabIndex=139]="tabIndex",e[e.trimWhitespaceOnDelete=140]="trimWhitespaceOnDelete",e[e.unicodeHighlighting=141]="unicodeHighlighting",e[e.unusualLineTerminators=142]="unusualLineTerminators",e[e.useShadowDOM=143]="useShadowDOM",e[e.useTabStops=144]="useTabStops",e[e.wordBreak=145]="wordBreak",e[e.wordSegmenterLocales=146]="wordSegmenterLocales",e[e.wordSeparators=147]="wordSeparators",e[e.wordWrap=148]="wordWrap",e[e.wordWrapBreakAfterCharacters=149]="wordWrapBreakAfterCharacters",e[e.wordWrapBreakBeforeCharacters=150]="wordWrapBreakBeforeCharacters",e[e.wordWrapColumn=151]="wordWrapColumn",e[e.wordWrapOverride1=152]="wordWrapOverride1",e[e.wordWrapOverride2=153]="wordWrapOverride2",e[e.wrappingIndent=154]="wrappingIndent",e[e.wrappingStrategy=155]="wrappingStrategy",e[e.showDeprecated=156]="showDeprecated",e[e.inertialScroll=157]="inertialScroll",e[e.inlayHints=158]="inlayHints",e[e.wrapOnEscapedLineFeeds=159]="wrapOnEscapedLineFeeds",e[e.effectiveCursorStyle=160]="effectiveCursorStyle",e[e.editorClassName=161]="editorClassName",e[e.pixelRatio=162]="pixelRatio",e[e.tabFocusMode=163]="tabFocusMode",e[e.layoutInfo=164]="layoutInfo",e[e.wrappingInfo=165]="wrappingInfo",e[e.defaultColorDecorators=166]="defaultColorDecorators",e[e.colorDecoratorsActivatedOn=167]="colorDecoratorsActivatedOn",e[e.inlineCompletionsAccessibilityVerbose=168]="inlineCompletionsAccessibilityVerbose",e[e.effectiveEditContext=169]="effectiveEditContext",e[e.scrollOnMiddleClick=170]="scrollOnMiddleClick",e[e.effectiveAllowVariableFonts=171]="effectiveAllowVariableFonts"})(W1||(W1={}));var z1;(function(e){e[e.TextDefined=0]="TextDefined",e[e.LF=1]="LF",e[e.CRLF=2]="CRLF"})(z1||(z1={}));var j1;(function(e){e[e.LF=0]="LF",e[e.CRLF=1]="CRLF"})(j1||(j1={}));var G1;(function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=3]="Right"})(G1||(G1={}));var O1;(function(e){e[e.Increase=0]="Increase",e[e.Decrease=1]="Decrease"})(O1||(O1={}));var X1;(function(e){e[e.None=0]="None",e[e.Indent=1]="Indent",e[e.IndentOutdent=2]="IndentOutdent",e[e.Outdent=3]="Outdent"})(X1||(X1={}));var Q1;(function(e){e[e.Both=0]="Both",e[e.Right=1]="Right",e[e.Left=2]="Left",e[e.None=3]="None"})(Q1||(Q1={}));var J1;(function(e){e[e.Type=1]="Type",e[e.Parameter=2]="Parameter"})(J1||(J1={}));var Y1;(function(e){e[e.Code=1]="Code",e[e.Label=2]="Label"})(Y1||(Y1={}));var Z1;(function(e){e[e.Accepted=0]="Accepted",e[e.Rejected=1]="Rejected",e[e.Ignored=2]="Ignored"})(Z1||(Z1={}));var K1;(function(e){e[e.Automatic=0]="Automatic",e[e.Explicit=1]="Explicit"})(K1||(K1={}));var Sn;(function(e){e[e.DependsOnKbLayout=-1]="DependsOnKbLayout",e[e.Unknown=0]="Unknown",e[e.Backspace=1]="Backspace",e[e.Tab=2]="Tab",e[e.Enter=3]="Enter",e[e.Shift=4]="Shift",e[e.Ctrl=5]="Ctrl",e[e.Alt=6]="Alt",e[e.PauseBreak=7]="PauseBreak",e[e.CapsLock=8]="CapsLock",e[e.Escape=9]="Escape",e[e.Space=10]="Space",e[e.PageUp=11]="PageUp",e[e.PageDown=12]="PageDown",e[e.End=13]="End",e[e.Home=14]="Home",e[e.LeftArrow=15]="LeftArrow",e[e.UpArrow=16]="UpArrow",e[e.RightArrow=17]="RightArrow",e[e.DownArrow=18]="DownArrow",e[e.Insert=19]="Insert",e[e.Delete=20]="Delete",e[e.Digit0=21]="Digit0",e[e.Digit1=22]="Digit1",e[e.Digit2=23]="Digit2",e[e.Digit3=24]="Digit3",e[e.Digit4=25]="Digit4",e[e.Digit5=26]="Digit5",e[e.Digit6=27]="Digit6",e[e.Digit7=28]="Digit7",e[e.Digit8=29]="Digit8",e[e.Digit9=30]="Digit9",e[e.KeyA=31]="KeyA",e[e.KeyB=32]="KeyB",e[e.KeyC=33]="KeyC",e[e.KeyD=34]="KeyD",e[e.KeyE=35]="KeyE",e[e.KeyF=36]="KeyF",e[e.KeyG=37]="KeyG",e[e.KeyH=38]="KeyH",e[e.KeyI=39]="KeyI",e[e.KeyJ=40]="KeyJ",e[e.KeyK=41]="KeyK",e[e.KeyL=42]="KeyL",e[e.KeyM=43]="KeyM",e[e.KeyN=44]="KeyN",e[e.KeyO=45]="KeyO",e[e.KeyP=46]="KeyP",e[e.KeyQ=47]="KeyQ",e[e.KeyR=48]="KeyR",e[e.KeyS=49]="KeyS",e[e.KeyT=50]="KeyT",e[e.KeyU=51]="KeyU",e[e.KeyV=52]="KeyV",e[e.KeyW=53]="KeyW",e[e.KeyX=54]="KeyX",e[e.KeyY=55]="KeyY",e[e.KeyZ=56]="KeyZ",e[e.Meta=57]="Meta",e[e.ContextMenu=58]="ContextMenu",e[e.F1=59]="F1",e[e.F2=60]="F2",e[e.F3=61]="F3",e[e.F4=62]="F4",e[e.F5=63]="F5",e[e.F6=64]="F6",e[e.F7=65]="F7",e[e.F8=66]="F8",e[e.F9=67]="F9",e[e.F10=68]="F10",e[e.F11=69]="F11",e[e.F12=70]="F12",e[e.F13=71]="F13",e[e.F14=72]="F14",e[e.F15=73]="F15",e[e.F16=74]="F16",e[e.F17=75]="F17",e[e.F18=76]="F18",e[e.F19=77]="F19",e[e.F20=78]="F20",e[e.F21=79]="F21",e[e.F22=80]="F22",e[e.F23=81]="F23",e[e.F24=82]="F24",e[e.NumLock=83]="NumLock",e[e.ScrollLock=84]="ScrollLock",e[e.Semicolon=85]="Semicolon",e[e.Equal=86]="Equal",e[e.Comma=87]="Comma",e[e.Minus=88]="Minus",e[e.Period=89]="Period",e[e.Slash=90]="Slash",e[e.Backquote=91]="Backquote",e[e.BracketLeft=92]="BracketLeft",e[e.Backslash=93]="Backslash",e[e.BracketRight=94]="BracketRight",e[e.Quote=95]="Quote",e[e.OEM_8=96]="OEM_8",e[e.IntlBackslash=97]="IntlBackslash",e[e.Numpad0=98]="Numpad0",e[e.Numpad1=99]="Numpad1",e[e.Numpad2=100]="Numpad2",e[e.Numpad3=101]="Numpad3",e[e.Numpad4=102]="Numpad4",e[e.Numpad5=103]="Numpad5",e[e.Numpad6=104]="Numpad6",e[e.Numpad7=105]="Numpad7",e[e.Numpad8=106]="Numpad8",e[e.Numpad9=107]="Numpad9",e[e.NumpadMultiply=108]="NumpadMultiply",e[e.NumpadAdd=109]="NumpadAdd",e[e.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",e[e.NumpadSubtract=111]="NumpadSubtract",e[e.NumpadDecimal=112]="NumpadDecimal",e[e.NumpadDivide=113]="NumpadDivide",e[e.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",e[e.ABNT_C1=115]="ABNT_C1",e[e.ABNT_C2=116]="ABNT_C2",e[e.AudioVolumeMute=117]="AudioVolumeMute",e[e.AudioVolumeUp=118]="AudioVolumeUp",e[e.AudioVolumeDown=119]="AudioVolumeDown",e[e.BrowserSearch=120]="BrowserSearch",e[e.BrowserHome=121]="BrowserHome",e[e.BrowserBack=122]="BrowserBack",e[e.BrowserForward=123]="BrowserForward",e[e.MediaTrackNext=124]="MediaTrackNext",e[e.MediaTrackPrevious=125]="MediaTrackPrevious",e[e.MediaStop=126]="MediaStop",e[e.MediaPlayPause=127]="MediaPlayPause",e[e.LaunchMediaPlayer=128]="LaunchMediaPlayer",e[e.LaunchMail=129]="LaunchMail",e[e.LaunchApp2=130]="LaunchApp2",e[e.Clear=131]="Clear",e[e.MAX_VALUE=132]="MAX_VALUE"})(Sn||(Sn={}));var yn;(function(e){e[e.Hint=1]="Hint",e[e.Info=2]="Info",e[e.Warning=4]="Warning",e[e.Error=8]="Error"})(yn||(yn={}));var An;(function(e){e[e.Unnecessary=1]="Unnecessary",e[e.Deprecated=2]="Deprecated"})(An||(An={}));var er;(function(e){e[e.Inline=1]="Inline",e[e.Gutter=2]="Gutter"})(er||(er={}));var tr;(function(e){e[e.Normal=1]="Normal",e[e.Underlined=2]="Underlined"})(tr||(tr={}));var nr;(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.TEXTAREA=1]="TEXTAREA",e[e.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",e[e.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",e[e.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",e[e.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",e[e.CONTENT_TEXT=6]="CONTENT_TEXT",e[e.CONTENT_EMPTY=7]="CONTENT_EMPTY",e[e.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",e[e.CONTENT_WIDGET=9]="CONTENT_WIDGET",e[e.OVERVIEW_RULER=10]="OVERVIEW_RULER",e[e.SCROLLBAR=11]="SCROLLBAR",e[e.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",e[e.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(nr||(nr={}));var rr;(function(e){e[e.AIGenerated=1]="AIGenerated"})(rr||(rr={}));var sr;(function(e){e[e.Invoke=0]="Invoke",e[e.Automatic=1]="Automatic"})(sr||(sr={}));var ir;(function(e){e[e.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",e[e.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",e[e.TOP_CENTER=2]="TOP_CENTER"})(ir||(ir={}));var ar;(function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"})(ar||(ar={}));var lr;(function(e){e[e.Word=0]="Word",e[e.Line=1]="Line",e[e.Suggest=2]="Suggest"})(lr||(lr={}));var or;(function(e){e[e.Left=0]="Left",e[e.Right=1]="Right",e[e.None=2]="None",e[e.LeftOfInjectedText=3]="LeftOfInjectedText",e[e.RightOfInjectedText=4]="RightOfInjectedText"})(or||(or={}));var ur;(function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Relative=2]="Relative",e[e.Interval=3]="Interval",e[e.Custom=4]="Custom"})(ur||(ur={}));var cr;(function(e){e[e.None=0]="None",e[e.Text=1]="Text",e[e.Blocks=2]="Blocks"})(cr||(cr={}));var hr;(function(e){e[e.Smooth=0]="Smooth",e[e.Immediate=1]="Immediate"})(hr||(hr={}));var fr;(function(e){e[e.Auto=1]="Auto",e[e.Hidden=2]="Hidden",e[e.Visible=3]="Visible"})(fr||(fr={}));var Rn;(function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"})(Rn||(Rn={}));var dr;(function(e){e.Off="off",e.OnCode="onCode",e.On="on"})(dr||(dr={}));var mr;(function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"})(mr||(mr={}));var gr;(function(e){e[e.File=0]="File",e[e.Module=1]="Module",e[e.Namespace=2]="Namespace",e[e.Package=3]="Package",e[e.Class=4]="Class",e[e.Method=5]="Method",e[e.Property=6]="Property",e[e.Field=7]="Field",e[e.Constructor=8]="Constructor",e[e.Enum=9]="Enum",e[e.Interface=10]="Interface",e[e.Function=11]="Function",e[e.Variable=12]="Variable",e[e.Constant=13]="Constant",e[e.String=14]="String",e[e.Number=15]="Number",e[e.Boolean=16]="Boolean",e[e.Array=17]="Array",e[e.Object=18]="Object",e[e.Key=19]="Key",e[e.Null=20]="Null",e[e.EnumMember=21]="EnumMember",e[e.Struct=22]="Struct",e[e.Event=23]="Event",e[e.Operator=24]="Operator",e[e.TypeParameter=25]="TypeParameter"})(gr||(gr={}));var br;(function(e){e[e.Deprecated=1]="Deprecated"})(br||(br={}));var wr;(function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"})(wr||(wr={}));var xr;(function(e){e[e.Hidden=0]="Hidden",e[e.Blink=1]="Blink",e[e.Smooth=2]="Smooth",e[e.Phase=3]="Phase",e[e.Expand=4]="Expand",e[e.Solid=5]="Solid"})(xr||(xr={}));var pr;(function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"})(pr||(pr={}));var _r;(function(e){e[e.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",e[e.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",e[e.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",e[e.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(_r||(_r={}));var Lr;(function(e){e[e.None=0]="None",e[e.Same=1]="Same",e[e.Indent=2]="Indent",e[e.DeepIndent=3]="DeepIndent"})(Lr||(Lr={}));const st=class{static chord(t,n){return di(t,n)}};let Cn=st;(()=>{st.CtrlCmd=2048})(),(()=>{st.Shift=1024})(),(()=>{st.Alt=512})(),(()=>{st.WinCtrl=256})();function Ii(){return{editor:void 0,languages:void 0,CancellationTokenSource:ui,Emitter:he,KeyCode:Sn,KeyMod:Cn,Position:$,Range:M,Selection:ie,SelectionDirection:Rn,MarkerSeverity:yn,MarkerTag:An,Uri:Fe,Token:Vi}}var vr,Nr;class Bi{constructor(t,n){this.uri=t,this.value=n}}function qi(e){return Array.isArray(e)}const Te=class{constructor(t,n){if(this[vr]="ResourceMap",t instanceof Te)this.map=new Map(t.map),this.toKey=n!=null?n:Te.defaultToKey;else if(qi(t)){this.map=new Map,this.toKey=n!=null?n:Te.defaultToKey;for(const[r,s]of t)this.set(r,s)}else this.map=new Map,this.toKey=t!=null?t:Te.defaultToKey}set(t,n){return this.map.set(this.toKey(t),new Bi(t,n)),this}get(t){var n;return(n=this.map.get(this.toKey(t)))==null?void 0:n.value}has(t){return this.map.has(this.toKey(t))}get size(){return this.map.size}clear(){this.map.clear()}delete(t){return this.map.delete(this.toKey(t))}forEach(t,n){typeof n<"u"&&(t=t.bind(n));for(const[r,s]of this.map)t(s.value,s.uri,this)}*values(){for(const t of this.map.values())yield t.value}*keys(){for(const t of this.map.values())yield t.uri}*entries(){for(const t of this.map.values())yield[t.uri,t.value]}*[(vr=Symbol.toStringTag,Symbol.iterator)](){for(const[,t]of this.map)yield[t.uri,t.value]}};let Sr=Te;(()=>{Te.defaultToKey=t=>t.toString()})();class Ui{constructor(){this[Nr]="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(){var t;return(t=this._head)==null?void 0:t.value}get last(){var t;return(t=this._tail)==null?void 0:t.value}has(t){return this._map.has(t)}get(t,n=0){const r=this._map.get(t);if(!!r)return n!==0&&this.touch(r,n),r.value}set(t,n,r=0){let s=this._map.get(t);if(s)s.value=n,r!==0&&this.touch(s,r);else{switch(s={key:t,value:n,next:void 0,previous:void 0},r){case 0:this.addItemLast(s);break;case 1:this.addItemFirst(s);break;case 2:this.addItemLast(s);break;default:this.addItemLast(s);break}this._map.set(t,s),this._size++}return this}delete(t){return!!this.remove(t)}remove(t){const n=this._map.get(t);if(!!n)return this._map.delete(t),this.removeItem(n),this._size--,n.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const t=this._head;return this._map.delete(t.key),this.removeItem(t),this._size--,t.value}forEach(t,n){const r=this._state;let s=this._head;for(;s;){if(n?t.bind(n)(s.value,s.key,this):t(s.value,s.key,this),this._state!==r)throw new Error("LinkedMap got modified during iteration.");s=s.next}}keys(){const t=this,n=this._state;let r=this._head;const s={[Symbol.iterator](){return s},next(){if(t._state!==n)throw new Error("LinkedMap got modified during iteration.");if(r){const i={value:r.key,done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return s}values(){const t=this,n=this._state;let r=this._head;const s={[Symbol.iterator](){return s},next(){if(t._state!==n)throw new Error("LinkedMap got modified during iteration.");if(r){const i={value:r.value,done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return s}entries(){const t=this,n=this._state;let r=this._head;const s={[Symbol.iterator](){return s},next(){if(t._state!==n)throw new Error("LinkedMap got modified during iteration.");if(r){const i={value:[r.key,r.value],done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return s}[(Nr=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(t){if(t>=this.size)return;if(t===0){this.clear();return}let n=this._head,r=this.size;for(;n&&r>t;)this._map.delete(n.key),n=n.next,r--;this._head=n,this._size=r,n&&(n.previous=void 0),this._state++}trimNew(t){if(t>=this.size)return;if(t===0){this.clear();return}let n=this._tail,r=this.size;for(;n&&r>t;)this._map.delete(n.key),n=n.previous,r--;this._tail=n,this._size=r,n&&(n.next=void 0),this._state++}addItemFirst(t){if(!this._head&&!this._tail)this._tail=t;else if(this._head)t.next=this._head,this._head.previous=t;else throw new Error("Invalid list");this._head=t,this._state++}addItemLast(t){if(!this._head&&!this._tail)this._head=t;else if(this._tail)t.previous=this._tail,this._tail.next=t;else throw new Error("Invalid list");this._tail=t,this._state++}removeItem(t){if(t===this._head&&t===this._tail)this._head=void 0,this._tail=void 0;else if(t===this._head){if(!t.next)throw new Error("Invalid list");t.next.previous=void 0,this._head=t.next}else if(t===this._tail){if(!t.previous)throw new Error("Invalid list");t.previous.next=void 0,this._tail=t.previous}else{const n=t.next,r=t.previous;if(!n||!r)throw new Error("Invalid list");n.previous=r,r.next=n}t.next=void 0,t.previous=void 0,this._state++}touch(t,n){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(n!==1&&n!==2)){if(n===1){if(t===this._head)return;const r=t.next,s=t.previous;t===this._tail?(s.next=void 0,this._tail=s):(r.previous=s,s.next=r),t.previous=void 0,t.next=this._head,this._head.previous=t,this._head=t,this._state++}else if(n===2){if(t===this._tail)return;const r=t.next,s=t.previous;t===this._head?(r.previous=void 0,this._head=r):(r.previous=s,s.next=r),t.next=void 0,t.previous=this._tail,this._tail.next=t,this._tail=t,this._state++}}}toJSON(){const t=[];return this.forEach((n,r)=>{t.push([r,n])}),t}fromJSON(t){this.clear();for(const[n,r]of t)this.set(n,r)}}class Hi extends Ui{constructor(t,n=1){super(),this._limit=t,this._ratio=Math.min(Math.max(0,n),1)}get limit(){return this._limit}set limit(t){this._limit=t,this.checkTrim()}get(t,n=2){return super.get(t,n)}peek(t){return super.get(t,0)}set(t,n){return super.set(t,n,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class $i extends Hi{constructor(t,n=1){super(t,n)}trim(t){this.trimOld(t)}set(t,n){return super.set(t,n),this.checkTrim(),this}}class Wi{constructor(){this.map=new Map}add(t,n){let r=this.map.get(t);r||(r=new Set,this.map.set(t,r)),r.add(n)}delete(t,n){const r=this.map.get(t);!r||(r.delete(n),r.size===0&&this.map.delete(t))}forEach(t,n){const r=this.map.get(t);!r||r.forEach(n)}}new $i(10);var yr;(function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"})(yr||(yr={}));var Ar;(function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=3]="Right"})(Ar||(Ar={}));var Rr;(function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"})(Rr||(Rr={}));var Cr;(function(e){e[e.Both=0]="Both",e[e.Right=1]="Right",e[e.Left=2]="Left",e[e.None=3]="None"})(Cr||(Cr={}));function zi(e){if(!e||e.length===0)return!1;for(let t=0,n=e.length;t=n)break;const s=e.charCodeAt(t);if(s===110||s===114||s===87)return!0}}return!1}function ji(e,t,n,r,s){if(r===0)return!0;const i=t.charCodeAt(r-1);if(e.get(i)!==0||i===13||i===10)return!0;if(s>0){const l=t.charCodeAt(r);if(e.get(l)!==0)return!0}return!1}function Gi(e,t,n,r,s){if(r+s===n)return!0;const i=t.charCodeAt(r+s);if(e.get(i)!==0||i===13||i===10)return!0;if(s>0){const l=t.charCodeAt(r+s-1);if(e.get(l)!==0)return!0}return!1}function Oi(e,t,n,r,s){return ji(e,t,n,r,s)&&Gi(e,t,n,r,s)}class Xi{constructor(t,n){this._wordSeparators=t,this._searchRegex=n,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(t){this._searchRegex.lastIndex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(t){const n=t.length;let r;do{if(this._prevMatchStartIndex+this._prevMatchLength===n||(r=this._searchRegex.exec(t),!r))return null;const s=r.index,i=r[0].length;if(s===this._prevMatchStartIndex&&i===this._prevMatchLength){if(i===0){Ws(t,n,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=s,this._prevMatchLength=i,!this._wordSeparators||Oi(this._wordSeparators,t,n,s,i))return r}while(r);return null}}const Qi="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function Ji(e=""){let t="(-?\\d*\\.\\d\\w*)|([^";for(const n of Qi)e.indexOf(n)>=0||(t+="\\"+n);return t+="\\s]+)",new RegExp(t,"g")}const Er=Ji();function Mr(e){let t=Er;if(e&&e instanceof RegExp)if(e.global)t=e;else{let n="g";e.ignoreCase&&(n+="i"),e.multiline&&(n+="m"),e.unicode&&(n+="u"),t=new RegExp(e.source,n)}return t.lastIndex=0,t}const kr=new ps;kr.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function En(e,t,n,r,s){if(t=Mr(t),s||(s=Nt.first(kr)),n.length>s.maxLen){let c=e-s.maxLen/2;return c<0?c=0:r+=c,n=n.substring(c,e+s.maxLen/2),En(e,t,n,r,s)}const i=Date.now(),l=e-1-r;let o=-1,u=null;for(let c=1;!(Date.now()-i>=s.timeBudget);c++){const h=l-s.windowSize*c;t.lastIndex=Math.max(0,h);const f=Yi(t,n,l,o);if(!f&&u||(u=f,h<=0))break;o=h}if(u){const c={word:u[0],startColumn:r+1+u.index,endColumn:r+1+u.index+u[0].length};return t.lastIndex=0,c}return null}function Yi(e,t,n,r){let s;for(;s=e.exec(t);){const i=s.index||0;if(i<=n&&e.lastIndex>=n)return s;if(r>0&&i>r)return null}return null}class Zi{static computeUnicodeHighlights(t,n,r){const s=r?r.startLineNumber:1,i=r?r.endLineNumber:t.getLineCount(),l=new Pr(n),o=l.getCandidateCodePoints();let u;o==="allNonBasicAscii"?u=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):u=new RegExp(`${Ki(Array.from(o))}`,"g");const c=new Xi(null,u),h=[];let f=!1,d,w=0,g=0,m=0;e:for(let L=s,S=i;L<=S;L++){const N=t.getLineContent(L),v=N.length;c.reset(0);do if(d=c.next(N),d){let E=d.index,F=d.index+d[0].length;if(E>0){const A=N.charCodeAt(E-1);Ct(A)&&E--}if(F+1=A){f=!0;break e}h.push(new M(L,E+1,L,F+1))}}while(d)}return{ranges:h,hasMore:f,ambiguousCharacterCount:w,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:m}}static computeUnicodeHighlightReason(t,n){const r=new Pr(n);switch(r.shouldHighlightNonBasicASCII(t,null)){case 0:return null;case 2:return{kind:1};case 3:{const i=t.codePointAt(0),l=r.ambiguousCharacters.getPrimaryConfusable(i),o=ot.getLocales().filter(u=>!ot.getInstance(new Set([...n.allowedLocales,u])).isAmbiguous(i));return{kind:0,confusableWith:String.fromCodePoint(l),notAmbiguousInLocales:o}}case 1:return{kind:2}}}}function Ki(e,t){return`[${Vs(e.map(r=>String.fromCodePoint(r)).join(""))}]`}class Pr{constructor(t){this.options=t,this.allowedCodePoints=new Set(t.allowedCodePoints),this.ambiguousCharacters=ot.getInstance(new Set(t.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const t=new Set;if(this.options.invisibleCharacters)for(const n of ut.codePoints)Fr(String.fromCodePoint(n))||t.add(n);if(this.options.ambiguousCharacters)for(const n of this.ambiguousCharacters.getConfusableCodePoints())t.add(n);for(const n of this.allowedCodePoints)t.delete(n);return t}shouldHighlightNonBasicASCII(t,n){const r=t.codePointAt(0);if(this.allowedCodePoints.has(r))return 0;if(this.options.nonBasicASCII)return 1;let s=!1,i=!1;if(n)for(const l of n){const o=l.codePointAt(0),u=js(l);s=s||u,!u&&!this.ambiguousCharacters.isAmbiguous(o)&&!ut.isInvisibleCharacter(o)&&(i=!0)}return!s&&i?0:this.options.invisibleCharacters&&!Fr(t)&&ut.isInvisibleCharacter(r)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(r)?3:0}}function Fr(e){return e===" "||e===` `||e===" "}class Vt{constructor(t,n,r){this.changes=t,this.moves=n,this.hitTimeout=r}}class ea{constructor(t,n){this.lineRangeMapping=t,this.changes=n}}function ta(e,t,n=(r,s)=>r===s){if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let r=0,s=e.length;r0}e.isGreaterThan=r;function s(i){return i===0}e.isNeitherLessOrGreaterThan=s,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(Mn||(Mn={}));function ft(e,t){return(n,r)=>t(e(n),e(r))}const dt=(e,t)=>e-t;function aa(e){return(t,n)=>-e(t,n)}const it=class{constructor(t){this.iterate=t}toArray(){const t=[];return this.iterate(n=>(t.push(n),!0)),t}filter(t){return new it(n=>this.iterate(r=>t(r)?n(r):!0))}map(t){return new it(n=>this.iterate(r=>n(t(r))))}findLast(t){let n;return this.iterate(r=>(t(r)&&(n=r),!0)),n}findLastMaxBy(t){let n,r=!0;return this.iterate(s=>((r||Mn.isGreaterThan(t(s,n)))&&(r=!1,n=s),!0)),n}};let Dr=it;(()=>{it.empty=new it(t=>{})})();class U{static fromTo(t,n){return new U(t,n)}static addRange(t,n){let r=0;for(;rn))return new U(t,n)}static ofLength(t){return new U(0,t)}static ofStartAndLength(t,n){return new U(t,t+n)}static emptyAt(t){return new U(t,t)}constructor(t,n){if(this.start=t,this.endExclusive=n,t>n)throw new Z(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(t){return new U(this.start+t,this.endExclusive+t)}deltaStart(t){return new U(this.start+t,this.endExclusive)}deltaEnd(t){return new U(this.start,this.endExclusive+t)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(t){return this.start===t.start&&this.endExclusive===t.endExclusive}contains(t){return this.start<=t&&t=t.endExclusive}slice(t){return t.slice(this.start,this.endExclusive)}substring(t){return t.substring(this.start,this.endExclusive)}clip(t){if(this.isEmpty)throw new Z(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,t))}clipCyclic(t){if(this.isEmpty)throw new Z(`Invalid clipping range: ${this.toString()}`);return t=this.endExclusive?this.start+(t-this.start)%this.length:t}forEach(t){for(let n=this.start;n{jt.assertInvariants=!1})();const ce=class{static ofLength(t,n){return new ce(t,t+n)}static fromRangeInclusive(t){return new ce(t.startLineNumber,t.endLineNumber+1)}static joinMany(t){if(t.length===0)return[];let n=new be(t[0].slice());for(let r=1;rn)throw new Z(`startLineNumber ${t} cannot be after endLineNumberExclusive ${n}`);this.startLineNumber=t,this.endLineNumberExclusive=n}contains(t){return this.startLineNumber<=t&&t{ce.compareByStart=ft(t=>t.startLineNumber,dt)})();class be{constructor(t=[]){this._normalizedRanges=t}get ranges(){return this._normalizedRanges}addRange(t){if(t.length===0)return;const n=kn(this._normalizedRanges,s=>s.endLineNumberExclusive>=t.startLineNumber),r=Xe(this._normalizedRanges,s=>s.startLineNumber<=t.endLineNumberExclusive)+1;if(n===r)this._normalizedRanges.splice(n,0,t);else if(n===r-1){const s=this._normalizedRanges[n];this._normalizedRanges[n]=s.join(t)}else{const s=this._normalizedRanges[n].join(this._normalizedRanges[r-1]).join(t);this._normalizedRanges.splice(n,r-n,s)}}contains(t){const n=Oe(this._normalizedRanges,r=>r.startLineNumber<=t);return!!n&&n.endLineNumberExclusive>t}intersects(t){const n=Oe(this._normalizedRanges,r=>r.startLineNumbert.startLineNumber}getUnion(t){if(this._normalizedRanges.length===0)return t;if(t._normalizedRanges.length===0)return this;const n=[];let r=0,s=0,i=null;for(;r=l.startLineNumber?i=new H(i.startLineNumber,Math.max(i.endLineNumberExclusive,l.endLineNumberExclusive)):(n.push(i),i=l)}return i!==null&&n.push(i),new be(n)}subtractFrom(t){const n=kn(this._normalizedRanges,l=>l.endLineNumberExclusive>=t.startLineNumber),r=Xe(this._normalizedRanges,l=>l.startLineNumber<=t.endLineNumberExclusive)+1;if(n===r)return new be([t]);const s=[];let i=t.startLineNumber;for(let l=n;li&&s.push(new H(i,o.startLineNumber)),i=o.endLineNumberExclusive}return it.toString()).join(", ")}getIntersection(t){const n=[];let r=0,s=0;for(;rn.delta(t)))}}const me=class{static betweenPositions(t,n){return t.lineNumber===n.lineNumber?new me(0,n.column-t.column):new me(n.lineNumber-t.lineNumber,n.column-1)}static fromPosition(t){return new me(t.lineNumber-1,t.column-1)}static ofRange(t){return me.betweenPositions(t.getStartPosition(),t.getEndPosition())}static ofText(t){let n=0,r=0;for(const s of t)s===` `?(n++,r=0):r++;return new me(n,r)}constructor(t,n){this.lineCount=t,this.columnCount=n}isGreaterThanOrEqualTo(t){return this.lineCount!==t.lineCount?this.lineCount>t.lineCount:this.columnCount>=t.columnCount}add(t){return t.lineCount===0?new me(this.lineCount,this.columnCount+t.columnCount):new me(this.lineCount+t.lineCount,t.columnCount)}createRange(t){return this.lineCount===0?new M(t.lineNumber,t.column,t.lineNumber,t.column+this.columnCount):new M(t.lineNumber,t.column,t.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new M(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return H.ofLength(1,this.lineCount+1)}addToPosition(t){return this.lineCount===0?new $(t.lineNumber,t.column+this.columnCount):new $(t.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}};let mt=me;(()=>{me.zero=new me(0,0)})();class oa{getOffsetRange(t){return new U(this.getOffset(t.getStartPosition()),this.getOffset(t.getEndPosition()))}getRange(t){return M.fromPositions(this.getPosition(t.start),this.getPosition(t.endExclusive))}getStringReplacement(t){return new Qe.deps.StringReplacement(this.getOffsetRange(t.range),t.text)}getTextReplacement(t){return new Qe.deps.TextReplacement(this.getRange(t.replaceRange),t.newText)}getTextEdit(t){const n=t.replacements.map(r=>this.getTextReplacement(r));return new Qe.deps.TextEdit(n)}}const Un=class{static get deps(){if(!this._deps)throw new Error("Dependencies not set. Call _setDependencies first.");return this._deps}};let Qe=Un;(()=>{Un._deps=void 0})();class ua extends oa{constructor(t){super(),this.text=t,this.lineStartOffsetByLineIdx=[],this.lineEndOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let n=0;n0&&t.charAt(n-1)==="\r"?this.lineEndOffsetByLineIdx.push(n-1):this.lineEndOffsetByLineIdx.push(n));this.lineEndOffsetByLineIdx.push(t.length)}getOffset(t){const n=this._validatePosition(t);return this.lineStartOffsetByLineIdx[n.lineNumber-1]+n.column-1}_validatePosition(t){if(t.lineNumber<1)return new $(1,1);const n=this.textLength.lineCount+1;if(t.lineNumber>n){const s=this.getLineLength(n);return new $(n,s+1)}if(t.column<1)return new $(t.lineNumber,1);const r=this.getLineLength(t.lineNumber);return t.column-1>r?new $(t.lineNumber,r+1):t}getPosition(t){const n=Xe(this.lineStartOffsetByLineIdx,i=>i<=t),r=n+1,s=t-this.lineStartOffsetByLineIdx[n]+1;return new $(r,s)}get textLength(){const t=this.lineStartOffsetByLineIdx.length-1;return new Qe.deps.TextLength(t,this.text.length-this.lineStartOffsetByLineIdx[t])}getLineLength(t){return this.lineEndOffsetByLineIdx[t-1]-this.lineStartOffsetByLineIdx[t-1]}}class ca{constructor(){this._transformer=void 0}get endPositionExclusive(){return this.length.addToPosition(new $(1,1))}get lineRange(){return this.length.toLineRange()}getValue(){return this.getValueOfRange(this.length.toRange())}getValueOfOffsetRange(t){return this.getValueOfRange(this.getTransformer().getRange(t))}getLineLength(t){return this.getValueOfRange(new M(t,1,t,Number.MAX_SAFE_INTEGER)).length}getTransformer(){return this._transformer||(this._transformer=new ua(this.getValue())),this._transformer}getLineAt(t){return this.getValueOfRange(new M(t,1,t,Number.MAX_SAFE_INTEGER))}}class ha extends ca{constructor(t,n){gs(n>=1),super(),this._getLineContent=t,this._lineCount=n}getValueOfRange(t){if(t.startLineNumber===t.endLineNumber)return this._getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);let n=this._getLineContent(t.startLineNumber).substring(t.startColumn-1);for(let r=t.startLineNumber+1;rt[n-1],t.length)}}class Re{static joinReplacements(t,n){if(t.length===0)throw new Z;if(t.length===1)return t[0];const r=t[0].range.getStartPosition(),s=t[t.length-1].range.getEndPosition();let i="";for(let l=0;l ${n.lineNumber},${n.column}): "${this.text}"`}}class ae{static inverse(t,n,r){const s=[];let i=1,l=1;for(const u of t){const c=new ae(new H(i,u.original.startLineNumber),new H(l,u.modified.startLineNumber));c.modified.isEmpty||s.push(c),i=u.original.endLineNumberExclusive,l=u.modified.endLineNumberExclusive}const o=new ae(new H(i,n+1),new H(l,r+1));return o.modified.isEmpty||s.push(o),s}static clip(t,n,r){const s=[];for(const i of t){const l=i.original.intersect(n),o=i.modified.intersect(r);l&&!l.isEmpty&&o&&!o.isEmpty&&s.push(new ae(l,o))}return s}constructor(t,n){this.original=t,this.modified=n}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new ae(this.modified,this.original)}join(t){return new ae(this.original.join(t.original),this.modified.join(t.modified))}toRangeMapping(){const t=this.original.toInclusiveRange(),n=this.modified.toInclusiveRange();if(t&&n)return new le(t,n);if(this.original.startLineNumber===1||this.modified.startLineNumber===1){if(!(this.modified.startLineNumber===1&&this.original.startLineNumber===1))throw new Z("not a valid diff");return new le(new M(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new M(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}else return new le(new M(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new M(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}toRangeMapping2(t,n){if(Tr(this.original.endLineNumberExclusive,t)&&Tr(this.modified.endLineNumberExclusive,n))return new le(new M(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new M(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new le(M.fromPositions(new $(this.original.startLineNumber,1),Je(new $(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)),M.fromPositions(new $(this.modified.startLineNumber,1),Je(new $(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),n)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new le(M.fromPositions(Je(new $(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),t),Je(new $(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)),M.fromPositions(Je(new $(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),n),Je(new $(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),n)));throw new Z}}function Je(e,t){if(e.lineNumber<1)return new $(1,1);if(e.lineNumber>t.length)return new $(t.length,t[t.length-1].length+1);const n=t[e.lineNumber-1];return e.column>n.length+1?new $(e.lineNumber,n.length+1):e}function Tr(e,t){return e>=1&&e<=t.length}class Le extends ae{static fromRangeMappings(t){const n=H.join(t.map(s=>H.fromRangeInclusive(s.originalRange))),r=H.join(t.map(s=>H.fromRangeInclusive(s.modifiedRange)));return new Le(n,r,t)}constructor(t,n,r){super(t,n),this.innerChanges=r}flip(){var t;return new Le(this.modified,this.original,(t=this.innerChanges)==null?void 0:t.map(n=>n.flip()))}withInnerChangesFromLineRanges(){return new Le(this.original,this.modified,[this.toRangeMapping()])}}class le{static fromEdit(t){const n=t.getNewRanges();return t.replacements.map((s,i)=>new le(s.range,n[i]))}static assertSorted(t){for(let n=1;n${this.modifiedRange.toString()}}`}flip(){return new le(this.modifiedRange,this.originalRange)}toTextEdit(t){const n=t.getValueOfRange(this.modifiedRange);return new Re(this.originalRange,n)}}function Vr(e,t,n,r=!1){const s=[];for(const i of na(e.map(l=>fa(l,t,n)),(l,o)=>l.original.intersectsOrTouches(o.original)||l.modified.intersectsOrTouches(o.modified))){const l=i[0],o=i[i.length-1];s.push(new Le(l.original.join(o.original),l.modified.join(o.modified),i.map(u=>u.innerChanges[0])))}return vt(()=>!r&&s.length>0&&(s[0].modified.startLineNumber!==s[0].original.startLineNumber||n.length.lineCount-s[s.length-1].modified.endLineNumberExclusive!==t.length.lineCount-s[s.length-1].original.endLineNumberExclusive)?!1:$n(s,(i,l)=>l.original.startLineNumber-i.original.endLineNumberExclusive===l.modified.startLineNumber-i.modified.endLineNumberExclusive&&i.original.endLineNumberExclusive=n.getLineLength(e.modifiedRange.startLineNumber)&&e.originalRange.startColumn-1>=t.getLineLength(e.originalRange.startLineNumber)&&e.originalRange.startLineNumber<=e.originalRange.endLineNumber+s&&e.modifiedRange.startLineNumber<=e.modifiedRange.endLineNumber+s&&(r=1);const i=new H(e.originalRange.startLineNumber+r,e.originalRange.endLineNumber+1+s),l=new H(e.modifiedRange.startLineNumber+r,e.modifiedRange.endLineNumber+1+s);return new Le(i,l,[e])}const da=3;class ma{computeDiff(t,n,r){var u;const i=new wa(t,n,{maxComputationTime:r.maxComputationTimeMs,shouldIgnoreTrimWhitespace:r.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),l=[];let o=null;for(const c of i.changes){let h;c.originalEndLineNumber===0?h=new H(c.originalStartLineNumber+1,c.originalStartLineNumber+1):h=new H(c.originalStartLineNumber,c.originalEndLineNumber+1);let f;c.modifiedEndLineNumber===0?f=new H(c.modifiedStartLineNumber+1,c.modifiedStartLineNumber+1):f=new H(c.modifiedStartLineNumber,c.modifiedEndLineNumber+1);let d=new Le(h,f,(u=c.charChanges)==null?void 0:u.map(w=>new le(new M(w.originalStartLineNumber,w.originalStartColumn,w.originalEndLineNumber,w.originalEndColumn),new M(w.modifiedStartLineNumber,w.modifiedStartColumn,w.modifiedEndLineNumber,w.modifiedEndColumn))));o&&(o.modified.endLineNumberExclusive===d.modified.startLineNumber||o.original.endLineNumberExclusive===d.original.startLineNumber)&&(d=new Le(o.original.join(d.original),o.modified.join(d.modified),o.innerChanges&&d.innerChanges?o.innerChanges.concat(d.innerChanges):void 0),l.pop()),l.push(d),o=d}return vt(()=>$n(l,(c,h)=>h.original.startLineNumber-c.original.endLineNumberExclusive===h.modified.startLineNumber-c.modified.endLineNumberExclusive&&c.original.endLineNumberExclusive(t===10?"\\n":String.fromCharCode(t))+`-(${this._lineNumbers[n]},${this._columns[n]})`).join(", ")+"]"}_assertIndex(t,n){if(t<0||t>=n.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(t){return t>0&&t===this._lineNumbers.length?this.getEndLineNumber(t-1):(this._assertIndex(t,this._lineNumbers),this._lineNumbers[t])}getEndLineNumber(t){return t===-1?this.getStartLineNumber(t+1):(this._assertIndex(t,this._lineNumbers),this._charCodes[t]===10?this._lineNumbers[t]+1:this._lineNumbers[t])}getStartColumn(t){return t>0&&t===this._columns.length?this.getEndColumn(t-1):(this._assertIndex(t,this._columns),this._columns[t])}getEndColumn(t){return t===-1?this.getStartColumn(t+1):(this._assertIndex(t,this._columns),this._charCodes[t]===10?1:this._columns[t]+1)}}class Ye{constructor(t,n,r,s,i,l,o,u){this.originalStartLineNumber=t,this.originalStartColumn=n,this.originalEndLineNumber=r,this.originalEndColumn=s,this.modifiedStartLineNumber=i,this.modifiedStartColumn=l,this.modifiedEndLineNumber=o,this.modifiedEndColumn=u}static createFromDiffChange(t,n,r){const s=n.getStartLineNumber(t.originalStart),i=n.getStartColumn(t.originalStart),l=n.getEndLineNumber(t.originalStart+t.originalLength-1),o=n.getEndColumn(t.originalStart+t.originalLength-1),u=r.getStartLineNumber(t.modifiedStart),c=r.getStartColumn(t.modifiedStart),h=r.getEndLineNumber(t.modifiedStart+t.modifiedLength-1),f=r.getEndColumn(t.modifiedStart+t.modifiedLength-1);return new Ye(s,i,l,o,u,c,h,f)}}function ba(e){if(e.length<=1)return e;const t=[e[0]];let n=t[0];for(let r=1,s=e.length;r0&&n.originalLength<20&&n.modifiedLength>0&&n.modifiedLength<20&&i()){const w=r.createCharSequence(t,n.originalStart,n.originalStart+n.originalLength-1),g=s.createCharSequence(t,n.modifiedStart,n.modifiedStart+n.modifiedLength-1);if(w.getElements().length>0&&g.getElements().length>0){let m=Ir(w,g,i,!0).changes;o&&(m=ba(m)),d=[];for(let L=0,S=m.length;L1&&m>1;){const L=d.charCodeAt(g-2),S=w.charCodeAt(m-2);if(L!==S)break;g--,m--}(g>1||m>1)&&this._pushTrimWhitespaceCharChange(s,i+1,1,g,l+1,1,m)}{let g=Fn(d,1),m=Fn(w,1);const L=d.length+1,S=w.length+1;for(;g!0;const t=Date.now();return()=>Date.now()-t{r.push(O.fromOffsetPairs(s?s.getEndExclusives():Ne.zero,i?i.getStarts():new Ne(n,(s?s.seq2Range.endExclusive-s.seq1Range.endExclusive:0)+n)))}),r}static fromOffsetPairs(t,n){return new O(new U(t.offset1,n.offset1),new U(t.offset2,n.offset2))}static assertSorted(t){let n;for(const r of t){if(n&&!(n.seq1Range.endExclusive<=r.seq1Range.start&&n.seq2Range.endExclusive<=r.seq2Range.start))throw new Z("Sequence diffs must be sorted");n=r}}constructor(t,n){this.seq1Range=t,this.seq2Range=n}swap(){return new O(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(t){return new O(this.seq1Range.join(t.seq1Range),this.seq2Range.join(t.seq2Range))}delta(t){return t===0?this:new O(this.seq1Range.delta(t),this.seq2Range.delta(t))}deltaStart(t){return t===0?this:new O(this.seq1Range.deltaStart(t),this.seq2Range.deltaStart(t))}deltaEnd(t){return t===0?this:new O(this.seq1Range.deltaEnd(t),this.seq2Range.deltaEnd(t))}intersect(t){const n=this.seq1Range.intersect(t.seq1Range),r=this.seq2Range.intersect(t.seq2Range);if(!(!n||!r))return new O(n,r)}getStarts(){return new Ne(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new Ne(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}const Ve=class{constructor(t,n){this.offset1=t,this.offset2=n}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(t){return t===0?this:new Ve(this.offset1+t,this.offset2+t)}equals(t){return this.offset1===t.offset1&&this.offset2===t.offset2}};let Ne=Ve;(()=>{Ve.zero=new Ve(0,0)})(),(()=>{Ve.max=new Ve(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER)})();const Gt=class{isValid(){return!0}};let bt=Gt;(()=>{Gt.instance=new Gt})();class xa{constructor(t){if(this.timeout=t,this.startTime=Date.now(),this.valid=!0,t<=0)throw new Z("timeout must be positive")}isValid(){return!(Date.now()-this.startTime{pt.chrKeys=new Map})();class pa{compute(t,n,r=bt.instance,s){if(t.length===0||n.length===0)return ve.trivial(t,n);const i=new Dn(t.length,n.length),l=new Dn(t.length,n.length),o=new Dn(t.length,n.length);for(let g=0;g0&&m>0&&l.get(g-1,m-1)===3&&(N+=o.get(g-1,m-1)),N+=s?s(g,m):1):N=-1;const v=Math.max(L,S,N);if(v===N){const E=g>0&&m>0?o.get(g-1,m-1):0;o.set(g,m,E+1),l.set(g,m,3)}else v===L?(o.set(g,m,0),l.set(g,m,1)):v===S&&(o.set(g,m,0),l.set(g,m,2));i.set(g,m,v)}const u=[];let c=t.length,h=n.length;function f(g,m){(g+1!==c||m+1!==h)&&u.push(new O(new U(g+1,c),new U(m+1,h))),c=g,h=m}let d=t.length-1,w=n.length-1;for(;d>=0&&w>=0;)l.get(d,w)===3?(f(d,w),d--,w--):l.get(d,w)===1?d--:w--;return f(-1,-1),u.reverse(),new ve(u,!1)}}class Ur{compute(t,n,r=bt.instance){if(t.length===0||n.length===0)return ve.trivial(t,n);const s=t,i=n;function l(m,L){for(;ms.length||E>i.length)continue;const F=l(v,E);u.set(h,F);const I=v===S?c.get(h+1):c.get(h-1);if(c.set(h,F!==v?new Hr(I,v,E,F-v):I),u.get(h)===s.length&&u.get(h)-h===i.length)break e}}let f=c.get(h);const d=[];let w=s.length,g=i.length;for(;;){const m=f?f.x+f.length:0,L=f?f.y+f.length:0;if((m!==w||L!==g)&&d.push(new O(new U(m,w),new U(L,g))),!f)break;w=f.x,g=f.y,f=f.prev}return d.reverse(),new ve(d,!1)}}class Hr{constructor(t,n,r,s){this.prev=t,this.x=n,this.y=r,this.length=s}}class _a{constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(t){return t<0?(t=-t-1,this.negativeArr[t]):this.positiveArr[t]}set(t,n){if(t<0){if(t=-t-1,t>=this.negativeArr.length){const r=this.negativeArr;this.negativeArr=new Int32Array(r.length*2),this.negativeArr.set(r)}this.negativeArr[t]=n}else{if(t>=this.positiveArr.length){const r=this.positiveArr;this.positiveArr=new Int32Array(r.length*2),this.positiveArr.set(r)}this.positiveArr[t]=n}}}class La{constructor(){this.positiveArr=[],this.negativeArr=[]}get(t){return t<0?(t=-t-1,this.negativeArr[t]):this.positiveArr[t]}set(t,n){t<0?(t=-t-1,this.negativeArr[t]=n):this.positiveArr[t]=n}}class Ut{constructor(t,n,r){this.lines=t,this.range=n,this.considerWhitespaceChanges=r,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let s=this.range.startLineNumber;s<=this.range.endLineNumber;s++){let i=t[s-1],l=0;s===this.range.startLineNumber&&this.range.startColumn>1&&(l=this.range.startColumn-1,i=i.substring(l)),this.lineStartOffsets.push(l);let o=0;if(!r){const c=i.trimStart();o=i.length-c.length,i=c.trimEnd()}this.trimmedWsLengthsByLineIdx.push(o);const u=s===this.range.endLineNumber?Math.min(this.range.endColumn-1-l-o,i.length):i.length;for(let c=0;cString.fromCharCode(n)).join("")}getElement(t){return this.elements[t]}get length(){return this.elements.length}getBoundaryScore(t){const n=zr(t>0?this.elements[t-1]:-1),r=zr(ti<=t),s=t-this.firstElementOffsetByLineIdx[r];return new $(this.range.startLineNumber+r,1+this.lineStartOffsets[r]+s+(s===0&&n==="left"?0:this.trimmedWsLengthsByLineIdx[r]))}translateRange(t){const n=this.translateOffset(t.start,"right"),r=this.translateOffset(t.endExclusive,"left");return r.isBefore(n)?M.fromPositions(r,r):M.fromPositions(n,r)}findWordContaining(t){if(t<0||t>=this.elements.length||!Ze(this.elements[t]))return;let n=t;for(;n>0&&Ze(this.elements[n-1]);)n--;let r=t;for(;r=this.elements.length||!Ze(this.elements[t]))return;let n=t;for(;n>0&&Ze(this.elements[n-1])&&!$r(this.elements[n]);)n--;let r=t;for(;rl<=t.start))!=null?s:0,r=(i=la(this.firstElementOffsetByLineIdx,l=>t.endExclusive<=l))!=null?i:this.elements.length;return new U(n,r)}}function Ze(e){return e>=97&&e<=122||e>=65&&e<=90||e>=48&&e<=57}function $r(e){return e>=65&&e<=90}const va={[0]:0,[1]:0,[2]:0,[3]:10,[4]:2,[5]:30,[6]:3,[7]:10,[8]:10};function Wr(e){return va[e]}function zr(e){return e===10?8:e===13?7:Tn(e)?6:e>=97&&e<=122?0:e>=65&&e<=90?1:e>=48&&e<=57?2:e===-1?3:e===44||e===59?5:4}function Na(e,t,n,r,s,i){let{moves:l,excludedChanges:o}=ya(e,t,n,i);if(!i.isValid())return[];const u=e.filter(h=>!o.has(h)),c=Aa(u,r,s,t,n,i);return ia(l,c),l=Ra(l),l=l.filter(h=>{const f=h.original.toOffsetRange().slice(t).map(w=>w.trim());return f.join(` `).length>=15&&Sa(f,w=>w.length>=2)>=2}),l=Ca(e,l),l}function Sa(e,t){let n=0;for(const r of e)t(r)&&n++;return n}function ya(e,t,n,r){const s=[],i=e.filter(u=>u.modified.isEmpty&&u.original.length>=3).map(u=>new qt(u.original,t,u)),l=new Set(e.filter(u=>u.original.isEmpty&&u.modified.length>=3).map(u=>new qt(u.modified,n,u))),o=new Set;for(const u of i){let c=-1,h;for(const f of l){const d=u.computeSimilarity(f);d>c&&(c=d,h=f)}if(c>.9&&h&&(l.delete(h),s.push(new ae(u.range,h.range)),o.add(u.source),o.add(h.source)),!r.isValid())return{moves:s,excludedChanges:o}}return{moves:s,excludedChanges:o}}function Aa(e,t,n,r,s,i){const l=[],o=new Wi;for(const d of e)for(let w=d.original.startLineNumber;wd.modified.startLineNumber,dt));for(const d of e){let w=[];for(let g=d.modified.startLineNumber;g{for(const E of w)if(E.originalLineRange.endLineNumberExclusive+1===N.endLineNumberExclusive&&E.modifiedLineRange.endLineNumberExclusive+1===L.endLineNumberExclusive){E.originalLineRange=new H(E.originalLineRange.startLineNumber,N.endLineNumberExclusive),E.modifiedLineRange=new H(E.modifiedLineRange.startLineNumber,L.endLineNumberExclusive),S.push(E);return}const v={modifiedLineRange:L,originalLineRange:N};u.push(v),S.push(v)}),w=S}if(!i.isValid())return[]}u.sort(aa(ft(d=>d.modifiedLineRange.length,dt)));const c=new be,h=new be;for(const d of u){const w=d.modifiedLineRange.startLineNumber-d.originalLineRange.startLineNumber,g=c.subtractFrom(d.modifiedLineRange),m=h.subtractFrom(d.originalLineRange).getWithDelta(w),L=g.getIntersection(m);for(const S of L.ranges){if(S.length<3)continue;const N=S,v=S.delta(-w);l.push(new ae(v,N)),c.addRange(N),h.addRange(v)}}l.sort(ft(d=>d.original.startLineNumber,dt));const f=new It(e);for(let d=0;dI.original.startLineNumber<=w.original.startLineNumber),m=Oe(e,I=>I.modified.startLineNumber<=w.modified.startLineNumber),L=Math.max(w.original.startLineNumber-g.original.startLineNumber,w.modified.startLineNumber-m.modified.startLineNumber),S=f.findLastMonotonous(I=>I.original.startLineNumberI.modified.startLineNumberr.length||x>s.length||c.contains(x)||h.contains(I)||!jr(r[I-1],s[x-1],i))break}E>0&&(h.addRange(new H(w.original.startLineNumber-E,w.original.startLineNumber)),c.addRange(new H(w.modified.startLineNumber-E,w.modified.startLineNumber)));let F;for(F=0;Fr.length||x>s.length||c.contains(x)||h.contains(I)||!jr(r[I-1],s[x-1],i))break}F>0&&(h.addRange(new H(w.original.endLineNumberExclusive,w.original.endLineNumberExclusive+F)),c.addRange(new H(w.modified.endLineNumberExclusive,w.modified.endLineNumberExclusive+F))),(E>0||F>0)&&(l[d]=new ae(new H(w.original.startLineNumber-E,w.original.endLineNumberExclusive+F),new H(w.modified.startLineNumber-E,w.modified.endLineNumberExclusive+F)))}return l}function jr(e,t,n){if(e.trim()===t.trim())return!0;if(e.length>300&&t.length>300)return!1;const s=new Ur().compute(new Ut([e],new M(1,1,1,e.length),!1),new Ut([t],new M(1,1,1,t.length),!1),n);let i=0;const l=O.invert(s.diffs,e.length);for(const h of l)h.seq1Range.forEach(f=>{Tn(e.charCodeAt(f))||i++});function o(h){let f=0;for(let d=0;dt.length?e:t);return i/u>.6&&u>10}function Ra(e){if(e.length===0)return e;e.sort(ft(n=>n.original.startLineNumber,dt));const t=[e[0]];for(let n=1;n=0&&l>=0&&i+l<=2){t[t.length-1]=r.join(s);continue}t.push(s)}return t}function Ca(e,t){const n=new It(e);return t=t.filter(r=>{const s=n.findLastMonotonous(o=>o.original.startLineNumbero.modified.startLineNumber0&&(o=o.delta(c))}s.push(o)}return r.length>0&&s.push(r[r.length-1]),s}function Ea(e,t,n){if(!e.getBoundaryScore||!t.getBoundaryScore)return n;for(let r=0;r0?n[r-1]:void 0,i=n[r],l=r+1=r.start&&e.seq2Range.start-l>=s.start&&n.isStronglyEqual(e.seq2Range.start-l,e.seq2Range.endExclusive-l)&&l<100;)l++;l--;let o=0;for(;e.seq1Range.start+oc&&(c=g,u=h)}return e.delta(u)}function Ma(e,t,n){const r=[];for(const s of n){const i=r[r.length-1];if(!i){r.push(s);continue}s.seq1Range.start-i.seq1Range.endExclusive<=2||s.seq2Range.start-i.seq2Range.endExclusive<=2?r[r.length-1]=new O(i.seq1Range.join(s.seq1Range),i.seq2Range.join(s.seq2Range)):r.push(s)}return r}function Qr(e,t,n,r,s=!1){const i=O.invert(n,e.length),l=[];let o=new Ne(0,0);function u(h,f){if(h.offset10;){const N=i[0];if(!(N.seq1Range.intersects(g.seq1Range)||N.seq2Range.intersects(g.seq2Range)))break;const E=r(e,N.seq1Range.start),F=r(t,N.seq2Range.start),I=new O(E,F),x=I.intersect(N);if(L+=x.seq1Range.length,S+=x.seq2Range.length,g=g.join(I),g.seq1Range.endExclusive>=N.seq1Range.endExclusive)i.shift();else break}(s&&L+S0;){const h=i.shift();h.seq1Range.isEmpty||(u(h.getStarts(),h),u(h.getEndExclusives().delta(-1),h))}return ka(n,l)}function ka(e,t){const n=[];for(;e.length>0||t.length>0;){const r=e[0],s=t[0];let i;r&&(!s||r.seq1Range.start0&&n[n.length-1].seq1Range.endExclusive>=i.seq1Range.start?n[n.length-1]=n[n.length-1].join(i):n.push(i)}return n}function Pa(e,t,n){let r=n;if(r.length===0)return r;let s=0,i;do{i=!1;const l=[r[0]];for(let o=1;o5||w.seq1Range.length+w.seq2Range.length>5)};const u=r[o],c=l[l.length-1];h(c,u)?(i=!0,l[l.length-1]=l[l.length-1].join(u)):l.push(u)}r=l}while(s++<10&&i);return r}function Fa(e,t,n){let r=n;if(r.length===0)return r;let s=0,i;do{i=!1;const o=[r[0]];for(let u=1;u5||m.length>500)return!1;const S=e.getText(m).trim();if(S.length>20||S.split(/\r\n|\r|\n/).length>1)return!1;const N=e.countLinesIn(w.seq1Range),v=w.seq1Range.length,E=t.countLinesIn(w.seq2Range),F=w.seq2Range.length,I=e.countLinesIn(g.seq1Range),x=g.seq1Range.length,_=t.countLinesIn(g.seq2Range),A=g.seq2Range.length,T=2*40+50;function V(p){return Math.min(p,T)}return Math.pow(Math.pow(V(N*40+v),1.5)+Math.pow(V(E*40+F),1.5),1.5)+Math.pow(Math.pow(V(I*40+x),1.5)+Math.pow(V(_*40+A),1.5),1.5)>(T**1.5)**1.5*1.3};const c=r[u],h=o[o.length-1];f(h,c)?(i=!0,o[o.length-1]=o[o.length-1].join(c)):o.push(c)}r=o}while(s++<10&&i);const l=[];return sa(r,(o,u,c)=>{let h=u;function f(S){return S.length>0&&S.trim().length<=3&&u.seq1Range.length+u.seq2Range.length>100}const d=e.extendToFullLines(u.seq1Range),w=e.getText(new U(d.start,u.seq1Range.start));f(w)&&(h=h.deltaStart(-w.length));const g=e.getText(new U(u.seq1Range.endExclusive,d.endExclusive));f(g)&&(h=h.deltaEnd(g.length));const m=O.fromOffsetPairs(o?o.getEndExclusives():Ne.zero,c?c.getStarts():Ne.max),L=h.intersect(m);l.length>0&&L.getStarts().equals(l[l.length-1].getEndExclusives())?l[l.length-1]=l[l.length-1].join(L):l.push(L)}),l}class Jr{constructor(t,n){this.trimmedHash=t,this.lines=n}getElement(t){return this.trimmedHash[t]}get length(){return this.trimmedHash.length}getBoundaryScore(t){const n=t===0?0:Yr(this.lines[t-1]),r=t===this.lines.length?0:Yr(this.lines[t]);return 1e3-(n+r)}getText(t){return this.lines.slice(t.start,t.endExclusive).join(` `)}isStronglyEqual(t,n){return this.lines[t]===this.lines[n]}}function Yr(e){let t=0;for(;tx===_))return new Vt([],[],!1);if(t.length===1&&t[0].length===0||n.length===1&&n[0].length===0)return new Vt([new Le(new H(1,t.length+1),new H(1,n.length+1),[new le(new M(1,1,t.length,t[t.length-1].length+1),new M(1,1,n.length,n[n.length-1].length+1))])],[],!1);const s=r.maxComputationTimeMs===0?bt.instance:new xa(r.maxComputationTimeMs),i=!r.ignoreTrimWhitespace,l=new Map;function o(x){let _=l.get(x);return _===void 0&&(_=l.size,l.set(x,_)),_}const u=t.map(x=>o(x.trim())),c=n.map(x=>o(x.trim())),h=new Jr(u,t),f=new Jr(c,n),d=(()=>h.length+f.length<1700?this.dynamicProgrammingDiffing.compute(h,f,s,(x,_)=>t[x]===n[_]?n[_].length===0?.1:1+Math.log(1+n[_].length):.99):this.myersDiffingAlgorithm.compute(h,f,s))();let w=d.diffs,g=d.hitTimeout;w=Gr(h,f,w),w=Pa(h,f,w);const m=[],L=x=>{if(!!i)for(let _=0;_x.seq1Range.start-S===x.seq2Range.start-N);const _=x.seq1Range.start-S;L(_),S=x.seq1Range.endExclusive,N=x.seq2Range.endExclusive;const A=this.refineDiff(t,n,x,s,i,r);A.hitTimeout&&(g=!0);for(const T of A.mappings)m.push(T)}L(t.length-S);const v=new Bt(t),E=new Bt(n),F=Vr(m,v,E);let I=[];return r.computeMoves&&(I=this.computeMoves(F,t,n,u,c,s,i,r)),vt(()=>{function x(A,T){if(A.lineNumber<1||A.lineNumber>T.length)return!1;const V=T[A.lineNumber-1];return!(A.column<1||A.column>V.length+1)}function _(A,T){return!(A.startLineNumber<1||A.startLineNumber>T.length+1||A.endLineNumberExclusive<1||A.endLineNumberExclusive>T.length+1)}for(const A of F){if(!A.innerChanges)return!1;for(const T of A.innerChanges)if(!(x(T.modifiedRange.getStartPosition(),n)&&x(T.modifiedRange.getEndPosition(),n)&&x(T.originalRange.getStartPosition(),t)&&x(T.originalRange.getEndPosition(),t)))return!1;if(!_(A.modified,n)||!_(A.original,t))return!1}return!0}),new Vt(F,I,g)}computeMoves(t,n,r,s,i,l,o,u){return Na(t,n,r,s,i,l).map(f=>{const d=this.refineDiff(n,r,new O(f.original.toOffsetRange(),f.modified.toOffsetRange()),l,o,u),w=Vr(d.mappings,new Bt(n),new Bt(r),!0);return new ea(f,w)})}refineDiff(t,n,r,s,i,l){const u=Ta(r).toRangeMapping2(t,n),c=new Ut(t,u.originalRange,i),h=new Ut(n,u.modifiedRange,i),f=c.length+h.length<500?this.dynamicProgrammingDiffing.compute(c,h,s):this.myersDiffingAlgorithm.compute(c,h,s);let d=f.diffs;return d=Gr(c,h,d),d=Qr(c,h,d,(g,m)=>g.findWordContaining(m)),l.extendToSubwords&&(d=Qr(c,h,d,(g,m)=>g.findSubWordContaining(m),!0)),d=Ma(c,h,d),d=Fa(c,h,d),{mappings:d.map(g=>new le(c.translateRange(g.seq1Range),h.translateRange(g.seq2Range))),hitTimeout:f.hitTimeout}}}function Ta(e){return new ae(new H(e.seq1Range.start+1,e.seq1Range.endExclusive+1),new H(e.seq2Range.start+1,e.seq2Range.endExclusive+1))}const Zr={getLegacy:()=>new ma,getDefault:()=>new Da};function Ce(e,t){const n=Math.pow(10,t);return Math.round(e*n)/n}class b{constructor(t,n,r,s=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,t))|0,this.g=Math.min(255,Math.max(0,n))|0,this.b=Math.min(255,Math.max(0,r))|0,this.a=Ce(Math.max(Math.min(1,s),0),3)}static equals(t,n){return t.r===n.r&&t.g===n.g&&t.b===n.b&&t.a===n.a}}class oe{constructor(t,n,r,s){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,t),0)|0,this.s=Ce(Math.max(Math.min(1,n),0),3),this.l=Ce(Math.max(Math.min(1,r),0),3),this.a=Ce(Math.max(Math.min(1,s),0),3)}static equals(t,n){return t.h===n.h&&t.s===n.s&&t.l===n.l&&t.a===n.a}static fromRGBA(t){const n=t.r/255,r=t.g/255,s=t.b/255,i=t.a,l=Math.max(n,r,s),o=Math.min(n,r,s);let u=0,c=0;const h=(o+l)/2,f=l-o;if(f>0){switch(c=Math.min(h<=.5?f/(2*h):f/(2-2*h),1),l){case n:u=(r-s)/f+(r1&&(r-=1),r<1/6?t+(n-t)*6*r:r<1/2?n:r<2/3?t+(n-t)*(2/3-r)*6:t}static toRGBA(t){const n=t.h/360,{s:r,l:s,a:i}=t;let l,o,u;if(r===0)l=o=u=s;else{const c=s<.5?s*(1+r):s+r-s*r,h=2*s-c;l=oe._hue2rgb(h,c,n+1/3),o=oe._hue2rgb(h,c,n),u=oe._hue2rgb(h,c,n-1/3)}return new b(Math.round(l*255),Math.round(o*255),Math.round(u*255),i)}}class Ke{constructor(t,n,r,s){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,t),0)|0,this.s=Ce(Math.max(Math.min(1,n),0),3),this.v=Ce(Math.max(Math.min(1,r),0),3),this.a=Ce(Math.max(Math.min(1,s),0),3)}static equals(t,n){return t.h===n.h&&t.s===n.s&&t.v===n.v&&t.a===n.a}static fromRGBA(t){const n=t.r/255,r=t.g/255,s=t.b/255,i=Math.max(n,r,s),l=Math.min(n,r,s),o=i-l,u=i===0?0:o/i;let c;return o===0?c=0:i===n?c=((r-s)/o%6+6)%6:i===r?c=(s-n)/o+2:c=(n-r)/o+4,new Ke(Math.round(c*60),u,i,t.a)}static toRGBA(t){const{h:n,s:r,v:s,a:i}=t,l=s*r,o=l*(1-Math.abs(n/60%2-1)),u=s-l;let[c,h,f]=[0,0,0];return n<60?(c=l,h=o):n<120?(c=o,h=l):n<180?(h=l,f=o):n<240?(h=o,f=l):n<300?(c=o,f=l):n<=360&&(c=l,f=o),c=Math.round((c+u)*255),h=Math.round((h+u)*255),f=Math.round((f+u)*255),new b(c,h,f,i)}}const z=class{static fromHex(t){return z.Format.CSS.parseHex(t)||z.red}static equals(t,n){return!t&&!n?!0:!t||!n?!1:t.equals(n)}get hsla(){return this._hsla?this._hsla:oe.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:Ke.fromRGBA(this.rgba)}constructor(t){if(t)if(t instanceof b)this.rgba=t;else if(t instanceof oe)this._hsla=t,this.rgba=oe.toRGBA(t);else if(t instanceof Ke)this._hsva=t,this.rgba=Ke.toRGBA(t);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(t){return!!t&&b.equals(this.rgba,t.rgba)&&oe.equals(this.hsla,t.hsla)&&Ke.equals(this.hsva,t.hsva)}getRelativeLuminance(){const t=z._relativeLuminanceForComponent(this.rgba.r),n=z._relativeLuminanceForComponent(this.rgba.g),r=z._relativeLuminanceForComponent(this.rgba.b),s=.2126*t+.7152*n+.0722*r;return Ce(s,4)}static _relativeLuminanceForComponent(t){const n=t/255;return n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4)}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(t){const n=this.getRelativeLuminance(),r=t.getRelativeLuminance();return n>r}isDarkerThan(t){const n=this.getRelativeLuminance(),r=t.getRelativeLuminance();return n>>0),this._toNumber32Bit}static getLighterColor(t,n,r){if(t.isLighterThan(n))return t;r=r||.5;const s=t.getRelativeLuminance(),i=n.getRelativeLuminance();return r=r*(i-s)/i,t.lighten(r)}static getDarkerColor(t,n,r){if(t.isDarkerThan(n))return t;r=r||.5;const s=t.getRelativeLuminance(),i=n.getRelativeLuminance();return r=r*(s-i)/s,t.darken(r)}};let et=z;(()=>{z.white=new z(new b(255,255,255,1))})(),(()=>{z.black=new z(new b(0,0,0,1))})(),(()=>{z.red=new z(new b(255,0,0,1))})(),(()=>{z.blue=new z(new b(0,0,255,1))})(),(()=>{z.green=new z(new b(0,255,0,1))})(),(()=>{z.cyan=new z(new b(0,255,255,1))})(),(()=>{z.lightgrey=new z(new b(211,211,211,1))})(),(()=>{z.transparent=new z(new b(0,0,0,0))})(),function(e){(function(t){(function(n){function r(m){return m.rgba.a===1?`rgb(${m.rgba.r}, ${m.rgba.g}, ${m.rgba.b})`:e.Format.CSS.formatRGBA(m)}n.formatRGB=r;function s(m){return`rgba(${m.rgba.r}, ${m.rgba.g}, ${m.rgba.b}, ${+m.rgba.a.toFixed(2)})`}n.formatRGBA=s;function i(m){return m.hsla.a===1?`hsl(${m.hsla.h}, ${Math.round(m.hsla.s*100)}%, ${Math.round(m.hsla.l*100)}%)`:e.Format.CSS.formatHSLA(m)}n.formatHSL=i;function l(m){return`hsla(${m.hsla.h}, ${Math.round(m.hsla.s*100)}%, ${Math.round(m.hsla.l*100)}%, ${m.hsla.a.toFixed(2)})`}n.formatHSLA=l;function o(m){const L=m.toString(16);return L.length!==2?"0"+L:L}function u(m){return`#${o(m.rgba.r)}${o(m.rgba.g)}${o(m.rgba.b)}`}n.formatHex=u;function c(m,L=!1){return L&&m.rgba.a===1?e.Format.CSS.formatHex(m):`#${o(m.rgba.r)}${o(m.rgba.g)}${o(m.rgba.b)}${o(Math.round(m.rgba.a*255))}`}n.formatHexA=c;function h(m){return m.isOpaque()?e.Format.CSS.formatHex(m):e.Format.CSS.formatRGBA(m)}n.format=h;function f(m){var L,S,N,v,E,F,I,x,_,A,T,V,p,y;if(m==="transparent")return e.transparent;if(m.startsWith("#"))return w(m);if(m.startsWith("rgba(")){const R=m.match(/rgba\((?(?:\+|-)?\d+), *(?(?:\+|-)?\d+), *(?(?:\+|-)?\d+), *(?(?:\+|-)?\d+(\.\d+)?)\)/);if(!R)throw new Error("Invalid color format "+m);const C=parseInt((S=(L=R.groups)==null?void 0:L.r)!=null?S:"0"),k=parseInt((v=(N=R.groups)==null?void 0:N.g)!=null?v:"0"),B=parseInt((F=(E=R.groups)==null?void 0:E.b)!=null?F:"0"),W=parseFloat((x=(I=R.groups)==null?void 0:I.a)!=null?x:"0");return new e(new b(C,k,B,W))}if(m.startsWith("rgb(")){const R=m.match(/rgb\((?(?:\+|-)?\d+), *(?(?:\+|-)?\d+), *(?(?:\+|-)?\d+)\)/);if(!R)throw new Error("Invalid color format "+m);const C=parseInt((A=(_=R.groups)==null?void 0:_.r)!=null?A:"0"),k=parseInt((V=(T=R.groups)==null?void 0:T.g)!=null?V:"0"),B=parseInt((y=(p=R.groups)==null?void 0:p.b)!=null?y:"0");return new e(new b(C,k,B))}return d(m)}n.parse=f;function d(m){switch(m){case"aliceblue":return new e(new b(240,248,255,1));case"antiquewhite":return new e(new b(250,235,215,1));case"aqua":return new e(new b(0,255,255,1));case"aquamarine":return new e(new b(127,255,212,1));case"azure":return new e(new b(240,255,255,1));case"beige":return new e(new b(245,245,220,1));case"bisque":return new e(new b(255,228,196,1));case"black":return new e(new b(0,0,0,1));case"blanchedalmond":return new e(new b(255,235,205,1));case"blue":return new e(new b(0,0,255,1));case"blueviolet":return new e(new b(138,43,226,1));case"brown":return new e(new b(165,42,42,1));case"burlywood":return new e(new b(222,184,135,1));case"cadetblue":return new e(new b(95,158,160,1));case"chartreuse":return new e(new b(127,255,0,1));case"chocolate":return new e(new b(210,105,30,1));case"coral":return new e(new b(255,127,80,1));case"cornflowerblue":return new e(new b(100,149,237,1));case"cornsilk":return new e(new b(255,248,220,1));case"crimson":return new e(new b(220,20,60,1));case"cyan":return new e(new b(0,255,255,1));case"darkblue":return new e(new b(0,0,139,1));case"darkcyan":return new e(new b(0,139,139,1));case"darkgoldenrod":return new e(new b(184,134,11,1));case"darkgray":return new e(new b(169,169,169,1));case"darkgreen":return new e(new b(0,100,0,1));case"darkgrey":return new e(new b(169,169,169,1));case"darkkhaki":return new e(new b(189,183,107,1));case"darkmagenta":return new e(new b(139,0,139,1));case"darkolivegreen":return new e(new b(85,107,47,1));case"darkorange":return new e(new b(255,140,0,1));case"darkorchid":return new e(new b(153,50,204,1));case"darkred":return new e(new b(139,0,0,1));case"darksalmon":return new e(new b(233,150,122,1));case"darkseagreen":return new e(new b(143,188,143,1));case"darkslateblue":return new e(new b(72,61,139,1));case"darkslategray":return new e(new b(47,79,79,1));case"darkslategrey":return new e(new b(47,79,79,1));case"darkturquoise":return new e(new b(0,206,209,1));case"darkviolet":return new e(new b(148,0,211,1));case"deeppink":return new e(new b(255,20,147,1));case"deepskyblue":return new e(new b(0,191,255,1));case"dimgray":return new e(new b(105,105,105,1));case"dimgrey":return new e(new b(105,105,105,1));case"dodgerblue":return new e(new b(30,144,255,1));case"firebrick":return new e(new b(178,34,34,1));case"floralwhite":return new e(new b(255,250,240,1));case"forestgreen":return new e(new b(34,139,34,1));case"fuchsia":return new e(new b(255,0,255,1));case"gainsboro":return new e(new b(220,220,220,1));case"ghostwhite":return new e(new b(248,248,255,1));case"gold":return new e(new b(255,215,0,1));case"goldenrod":return new e(new b(218,165,32,1));case"gray":return new e(new b(128,128,128,1));case"green":return new e(new b(0,128,0,1));case"greenyellow":return new e(new b(173,255,47,1));case"grey":return new e(new b(128,128,128,1));case"honeydew":return new e(new b(240,255,240,1));case"hotpink":return new e(new b(255,105,180,1));case"indianred":return new e(new b(205,92,92,1));case"indigo":return new e(new b(75,0,130,1));case"ivory":return new e(new b(255,255,240,1));case"khaki":return new e(new b(240,230,140,1));case"lavender":return new e(new b(230,230,250,1));case"lavenderblush":return new e(new b(255,240,245,1));case"lawngreen":return new e(new b(124,252,0,1));case"lemonchiffon":return new e(new b(255,250,205,1));case"lightblue":return new e(new b(173,216,230,1));case"lightcoral":return new e(new b(240,128,128,1));case"lightcyan":return new e(new b(224,255,255,1));case"lightgoldenrodyellow":return new e(new b(250,250,210,1));case"lightgray":return new e(new b(211,211,211,1));case"lightgreen":return new e(new b(144,238,144,1));case"lightgrey":return new e(new b(211,211,211,1));case"lightpink":return new e(new b(255,182,193,1));case"lightsalmon":return new e(new b(255,160,122,1));case"lightseagreen":return new e(new b(32,178,170,1));case"lightskyblue":return new e(new b(135,206,250,1));case"lightslategray":return new e(new b(119,136,153,1));case"lightslategrey":return new e(new b(119,136,153,1));case"lightsteelblue":return new e(new b(176,196,222,1));case"lightyellow":return new e(new b(255,255,224,1));case"lime":return new e(new b(0,255,0,1));case"limegreen":return new e(new b(50,205,50,1));case"linen":return new e(new b(250,240,230,1));case"magenta":return new e(new b(255,0,255,1));case"maroon":return new e(new b(128,0,0,1));case"mediumaquamarine":return new e(new b(102,205,170,1));case"mediumblue":return new e(new b(0,0,205,1));case"mediumorchid":return new e(new b(186,85,211,1));case"mediumpurple":return new e(new b(147,112,219,1));case"mediumseagreen":return new e(new b(60,179,113,1));case"mediumslateblue":return new e(new b(123,104,238,1));case"mediumspringgreen":return new e(new b(0,250,154,1));case"mediumturquoise":return new e(new b(72,209,204,1));case"mediumvioletred":return new e(new b(199,21,133,1));case"midnightblue":return new e(new b(25,25,112,1));case"mintcream":return new e(new b(245,255,250,1));case"mistyrose":return new e(new b(255,228,225,1));case"moccasin":return new e(new b(255,228,181,1));case"navajowhite":return new e(new b(255,222,173,1));case"navy":return new e(new b(0,0,128,1));case"oldlace":return new e(new b(253,245,230,1));case"olive":return new e(new b(128,128,0,1));case"olivedrab":return new e(new b(107,142,35,1));case"orange":return new e(new b(255,165,0,1));case"orangered":return new e(new b(255,69,0,1));case"orchid":return new e(new b(218,112,214,1));case"palegoldenrod":return new e(new b(238,232,170,1));case"palegreen":return new e(new b(152,251,152,1));case"paleturquoise":return new e(new b(175,238,238,1));case"palevioletred":return new e(new b(219,112,147,1));case"papayawhip":return new e(new b(255,239,213,1));case"peachpuff":return new e(new b(255,218,185,1));case"peru":return new e(new b(205,133,63,1));case"pink":return new e(new b(255,192,203,1));case"plum":return new e(new b(221,160,221,1));case"powderblue":return new e(new b(176,224,230,1));case"purple":return new e(new b(128,0,128,1));case"rebeccapurple":return new e(new b(102,51,153,1));case"red":return new e(new b(255,0,0,1));case"rosybrown":return new e(new b(188,143,143,1));case"royalblue":return new e(new b(65,105,225,1));case"saddlebrown":return new e(new b(139,69,19,1));case"salmon":return new e(new b(250,128,114,1));case"sandybrown":return new e(new b(244,164,96,1));case"seagreen":return new e(new b(46,139,87,1));case"seashell":return new e(new b(255,245,238,1));case"sienna":return new e(new b(160,82,45,1));case"silver":return new e(new b(192,192,192,1));case"skyblue":return new e(new b(135,206,235,1));case"slateblue":return new e(new b(106,90,205,1));case"slategray":return new e(new b(112,128,144,1));case"slategrey":return new e(new b(112,128,144,1));case"snow":return new e(new b(255,250,250,1));case"springgreen":return new e(new b(0,255,127,1));case"steelblue":return new e(new b(70,130,180,1));case"tan":return new e(new b(210,180,140,1));case"teal":return new e(new b(0,128,128,1));case"thistle":return new e(new b(216,191,216,1));case"tomato":return new e(new b(255,99,71,1));case"turquoise":return new e(new b(64,224,208,1));case"violet":return new e(new b(238,130,238,1));case"wheat":return new e(new b(245,222,179,1));case"white":return new e(new b(255,255,255,1));case"whitesmoke":return new e(new b(245,245,245,1));case"yellow":return new e(new b(255,255,0,1));case"yellowgreen":return new e(new b(154,205,50,1));default:return null}}function w(m){const L=m.length;if(L===0||m.charCodeAt(0)!==35)return null;if(L===7){const S=16*g(m.charCodeAt(1))+g(m.charCodeAt(2)),N=16*g(m.charCodeAt(3))+g(m.charCodeAt(4)),v=16*g(m.charCodeAt(5))+g(m.charCodeAt(6));return new e(new b(S,N,v,1))}if(L===9){const S=16*g(m.charCodeAt(1))+g(m.charCodeAt(2)),N=16*g(m.charCodeAt(3))+g(m.charCodeAt(4)),v=16*g(m.charCodeAt(5))+g(m.charCodeAt(6)),E=16*g(m.charCodeAt(7))+g(m.charCodeAt(8));return new e(new b(S,N,v,E/255))}if(L===4){const S=g(m.charCodeAt(1)),N=g(m.charCodeAt(2)),v=g(m.charCodeAt(3));return new e(new b(16*S+S,16*N+N,16*v+v))}if(L===5){const S=g(m.charCodeAt(1)),N=g(m.charCodeAt(2)),v=g(m.charCodeAt(3)),E=g(m.charCodeAt(4));return new e(new b(16*S+S,16*N+N,16*v+v,(16*E+E)/255))}return null}n.parseHex=w;function g(m){switch(m){case 48:return 0;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:return 10;case 65:return 10;case 98:return 11;case 66:return 11;case 99:return 12;case 67:return 12;case 100:return 13;case 68:return 13;case 101:return 14;case 69:return 14;case 102:return 15;case 70:return 15}return 0}})(t.CSS||(t.CSS={}))})(e.Format||(e.Format={}))}(et||(et={}));function Kr(e){const t=[];for(const n of e){const r=Number(n);(r||r===0&&n.replace(/\s/g,"")!=="")&&t.push(r)}return t}function Vn(e,t,n,r){return{red:e/255,blue:n/255,green:t/255,alpha:r}}function wt(e,t){const n=t.index,r=t[0].length;if(n===void 0)return;const s=e.positionAt(n);return{startLineNumber:s.lineNumber,startColumn:s.column,endLineNumber:s.lineNumber,endColumn:s.column+r}}function Va(e,t){if(!e)return;const n=et.Format.CSS.parseHex(t);if(!!n)return{range:e,color:Vn(n.rgba.r,n.rgba.g,n.rgba.b,n.rgba.a)}}function es(e,t,n){if(!e||t.length!==1)return;const s=t[0].values(),i=Kr(s);return{range:e,color:Vn(i[0],i[1],i[2],n?i[3]:1)}}function ts(e,t,n){if(!e||t.length!==1)return;const s=t[0].values(),i=Kr(s),l=new et(new oe(i[0],i[1]/100,i[2]/100,n?i[3]:1));return{range:e,color:Vn(l.rgba.r,l.rgba.g,l.rgba.b,l.rgba.a)}}function xt(e,t){return typeof e=="string"?[...e.matchAll(t)]:e.findMatches(t)}function Ia(e){const t=[],n=new RegExp(`\\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"),r=xt(e,n);if(r.length>0)for(const s of r){const i=s.filter(c=>c!==void 0),l=i[1],o=i[2];if(!o)continue;let u;if(l==="rgb"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;u=es(wt(e,s),xt(o,c),!1)}else if(l==="rgba"){const c=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;u=es(wt(e,s),xt(o,c),!0)}else if(l==="hsl"){const c=/^\(\s*((?:360(?:\.0+)?|(?:36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])(?:\.\d+)?))\s*[\s,]\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*[\s,]\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;u=ts(wt(e,s),xt(o,c),!1)}else if(l==="hsla"){const c=/^\(\s*((?:360(?:\.0+)?|(?:36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])(?:\.\d+)?))\s*[\s,]\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*[\s,]\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*[\s,]\s*(0[.][0-9]+|[.][0-9]+|[01][.]0*|[01])\s*\)$/gm;u=ts(wt(e,s),xt(o,c),!0)}else l==="#"&&(u=Va(wt(e,s),l+o));u&&t.push(u)}return t}function Ba(e){return!e||typeof e.getValue!="function"||typeof e.positionAt!="function"?[]:Ia(e)}const qa=/^-+|-+$/g,ns=100,Ua=5;function Ha(e,t){var r;let n=[];if(t.findRegionSectionHeaders&&((r=t.foldingRules)==null?void 0:r.markers)){const s=$a(e,t);n=n.concat(s)}if(t.findMarkSectionHeaders){const s=Wa(e,t);n=n.concat(s)}return n}function $a(e,t){const n=[],r=e.getLineCount();for(let s=1;s<=r;s++){const i=e.getLineContent(s),l=i.match(t.foldingRules.markers.start);if(l){const o={startLineNumber:s,startColumn:l[0].length+1,endLineNumber:s,endColumn:i.length+1};if(o.endColumn>o.startColumn){const u={range:o,...za(i.substring(l[0].length)),shouldBeInComments:!1};(u.text||u.hasSeparatorLine)&&n.push(u)}}}return n}function Wa(e,t){var l,o,u,c;const n=[],r=e.getLineCount();if(!t.markSectionHeaderRegex||t.markSectionHeaderRegex.trim()==="")return n;const s=zi(t.markSectionHeaderRegex),i=new RegExp(t.markSectionHeaderRegex,`gdm${s?"s":""}`);if(Is(i))return n;for(let h=1;h<=r;h+=ns-Ua){const f=Math.min(h+ns-1,r),d=[];for(let m=h;m<=f;m++)d.push(e.getLineContent(m));const w=d.join(` `);i.lastIndex=0;let g;for(;(g=i.exec(w))!==null;){const m=w.substring(0,g.index),L=(m.match(/\n/g)||[]).length,S=h+L,N=g[0].split(` `),v=N.length,E=S+v-1,F=m.lastIndexOf(` `)+1,I=g.index-F+1,x=N[N.length-1],_=v===1?I+g[0].length:x.length+1,A={startLineNumber:S,startColumn:I,endLineNumber:E,endColumn:_},T=(o=((l=g.groups)!=null?l:{}).label)!=null?o:"",V=((c=((u=g.groups)!=null?u:{}).separator)!=null?c:"")!=="",p={range:A,text:T,hasSeparatorLine:V,shouldBeInComments:!0};(p.text||p.hasSeparatorLine)&&(n.length===0||n[n.length-1].range.endLineNumber{this.completeCallback=t,this.errorCallback=n})}complete(t){return new Promise(n=>{this.completeCallback(t),this.outcome={outcome:0,value:t},n()})}error(t){return new Promise(n=>{this.errorCallback(t),this.outcome={outcome:1,value:t},n()})}cancel(){return this.error(new Hn)}}var rs;(function(e){async function t(r){let s;const i=await Promise.all(r.map(l=>l.then(o=>o,o=>{s||(s=o)})));if(typeof s<"u")throw s;return i}e.settled=t;function n(r){return new Promise(async(s,i)=>{try{await r(s,i)}catch(l){i(l)}})}e.withAsyncBody=n})(rs||(rs={}));const te=class{static fromArray(t){return new te(n=>{n.emitMany(t)})}static fromPromise(t){return new te(async n=>{n.emitMany(await t)})}static fromPromisesResolveOrder(t){return new te(async n=>{await Promise.all(t.map(async r=>n.emitOne(await r)))})}static merge(t){return new te(async n=>{await Promise.all(t.map(async r=>{for await(const s of r)n.emitOne(s)}))})}constructor(t,n){this._state=0,this._results=[],this._error=null,this._onReturn=n,this._onStateChanged=new he,queueMicrotask(async()=>{const r={emitOne:s=>this.emitOne(s),emitMany:s=>this.emitMany(s),reject:s=>this.reject(s)};try{await Promise.resolve(t(r)),this.resolve()}catch(s){this.reject(s)}finally{r.emitOne=void 0,r.emitMany=void 0,r.reject=void 0}})}[Symbol.asyncIterator](){let t=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(t{var n;return(n=this._onReturn)==null||n.call(this),{done:!0,value:void 0}}}}static map(t,n){return new te(async r=>{for await(const s of t)r.emitOne(n(s))})}map(t){return te.map(this,t)}static filter(t,n){return new te(async r=>{for await(const s of t)n(s)&&r.emitOne(s)})}filter(t){return te.filter(this,t)}static coalesce(t){return te.filter(t,n=>!!n)}coalesce(){return te.coalesce(this)}static async toPromise(t){const n=[];for await(const r of t)n.push(r);return n}toPromise(){return te.toPromise(this)}emitOne(t){this._state===0&&(this._results.push(t),this._onStateChanged.fire())}emitMany(t){this._state===0&&(this._results=this._results.concat(t),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(t){this._state===0&&(this._state=2,this._error=t,this._onStateChanged.fire())}};let ss=te;(()=>{te.EMPTY=te.fromArray([])})();class Ga{constructor(){this._unsatisfiedConsumers=[],this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(t){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){const n=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(n,t)}else this._unconsumedValues.push(t)}produceFinal(t){this._ensureNoFinalValue(),this._finalValue=t;for(const n of this._unsatisfiedConsumers)this._resolveOrRejectDeferred(n,t);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new Z("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(t,n){n.ok?t.complete(n.value):t.error(n.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){const t=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return t.ok?Promise.resolve(t.value):Promise.reject(t.error)}else{const t=new ja;return this._unsatisfiedConsumers.push(t),t.p}}}const se=class{constructor(t,n){this._onReturn=n,this._producerConsumer=new Ga,this._iterator={next:()=>this._producerConsumer.consume(),return:()=>{var r;return(r=this._onReturn)==null||r.call(this),Promise.resolve({done:!0,value:void 0})},throw:async r=>(this._finishError(r),{done:!0,value:void 0})},queueMicrotask(async()=>{const r=t({emitOne:s=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:s}}),emitMany:s=>{for(const i of s)this._producerConsumer.produce({ok:!0,value:{done:!1,value:i}})},reject:s=>this._finishError(s)});if(!this._producerConsumer.hasFinalValue)try{await r,this._finishOk()}catch(s){this._finishError(s)}})}static fromArray(t){return new se(n=>{n.emitMany(t)})}static fromPromise(t){return new se(async n=>{n.emitMany(await t)})}static fromPromisesResolveOrder(t){return new se(async n=>{await Promise.all(t.map(async r=>n.emitOne(await r)))})}static merge(t){return new se(async n=>{await Promise.all(t.map(async r=>{for await(const s of r)n.emitOne(s)}))})}static map(t,n){return new se(async r=>{for await(const s of t)r.emitOne(n(s))})}map(t){return se.map(this,t)}static coalesce(t){return se.filter(t,n=>!!n)}coalesce(){return se.coalesce(this)}static filter(t,n){return new se(async r=>{for await(const s of t)n(s)&&r.emitOne(s)})}filter(t){return se.filter(this,t)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(t){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:t})}[Symbol.asyncIterator](){return this._iterator}};let is=se;(()=>{se.EMPTY=se.fromArray([])})();class Oa{constructor(t){this.values=t,this.prefixSum=new Uint32Array(t.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(t,n){t=ze(t);const r=this.values,s=this.prefixSum,i=n.length;return i===0?!1:(this.values=new Uint32Array(r.length+i),this.values.set(r.subarray(0,t),0),this.values.set(r.subarray(t),t+i),this.values.set(n,t),t-1=0&&this.prefixSum.set(s.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(t,n){return t=ze(t),n=ze(n),this.values[t]===n?!1:(this.values[t]=n,t-1=r.length)return!1;const i=r.length-t;return n>=i&&(n=i),n===0?!1:(this.values=new Uint32Array(r.length-n),this.values.set(r.subarray(0,t),0),this.values.set(r.subarray(t+n),t),this.prefixSum=new Uint32Array(this.values.length),t-1=0&&this.prefixSum.set(s.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(t){return t<0?0:(t=ze(t),this._getPrefixSum(t))}_getPrefixSum(t){if(t<=this.prefixSumValidIndex[0])return this.prefixSum[t];let n=this.prefixSumValidIndex[0]+1;n===0&&(this.prefixSum[0]=this.values[0],n++),t>=this.values.length&&(t=this.values.length-1);for(let r=n;r<=t;r++)this.prefixSum[r]=this.prefixSum[r-1]+this.values[r];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],t),this.prefixSum[t]}getIndexOf(t){t=Math.floor(t),this.getTotalSum();let n=0,r=this.values.length-1,s=0,i=0,l=0;for(;n<=r;)if(s=n+(r-n)/2|0,i=this.prefixSum[s],l=i-this.values[s],t=i)n=s+1;else break;return new Xa(s,t-l)}}class Xa{constructor(t,n){this.index=t,this.remainder=n,this._prefixSumIndexOfResultBrand=void 0,this.index=t,this.remainder=n}}class Qa{constructor(t,n,r,s){this._uri=t,this._lines=n,this._eol=r,this._versionId=s,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}get version(){return this._versionId}getText(){return this._cachedTextValue===null&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(t){t.eol&&t.eol!==this._eol&&(this._eol=t.eol,this._lineStarts=null);const n=t.changes;for(const r of n)this._acceptDeleteRange(r.range),this._acceptInsertText(new $(r.range.startLineNumber,r.range.startColumn),r.text);this._versionId=t.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){const t=this._eol.length,n=this._lines.length,r=new Uint32Array(n);for(let s=0;st.push(this._models[n])),t}$acceptNewModel(t){this._models[t.url]=new Ya(Fe.parse(t.url),t.lines,t.EOL,t.versionId)}$acceptModelChanged(t,n){if(!this._models[t])return;this._models[t].onEvents(n)}$acceptRemovedModel(t){!this._models[t]||delete this._models[t]}}class Ya extends Qa{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(t){const n=[];for(let r=0;rthis._lines.length)n=this._lines.length,r=this._lines[n-1].length+1,s=!0;else{const i=this._lines[n-1].length+1;r<1?(r=1,s=!0):r>i&&(r=i,s=!0)}return s?{lineNumber:n,column:r}:t}}const Ie=class{constructor(t=null){this._foreignModule=t,this._workerTextModelSyncServer=new Ja}dispose(){}async $ping(){return"pong"}_getModel(t){return this._workerTextModelSyncServer.getModel(t)}getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(t){this._workerTextModelSyncServer.$acceptNewModel(t)}$acceptModelChanged(t,n){this._workerTextModelSyncServer.$acceptModelChanged(t,n)}$acceptRemovedModel(t){this._workerTextModelSyncServer.$acceptRemovedModel(t)}async $computeUnicodeHighlights(t,n,r){const s=this._getModel(t);return s?Zi.computeUnicodeHighlights(s,n,r):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(t,n){const r=this._getModel(t);return r?Ha(r,n):[]}async $computeDiff(t,n,r,s){const i=this._getModel(t),l=this._getModel(n);return!i||!l?null:Ie.computeDiff(i,l,r,s)}static computeDiff(t,n,r,s){const i=s==="advanced"?Zr.getDefault():Zr.getLegacy(),l=t.getLinesContent(),o=n.getLinesContent(),u=i.computeDiff(l,o,r),c=u.changes.length>0?!1:this._modelsAreIdentical(t,n);function h(f){return f.map(d=>{var w;return[d.original.startLineNumber,d.original.endLineNumberExclusive,d.modified.startLineNumber,d.modified.endLineNumberExclusive,(w=d.innerChanges)==null?void 0:w.map(g=>[g.originalRange.startLineNumber,g.originalRange.startColumn,g.originalRange.endLineNumber,g.originalRange.endColumn,g.modifiedRange.startLineNumber,g.modifiedRange.startColumn,g.modifiedRange.endLineNumber,g.modifiedRange.endColumn])]})}return{identical:c,quitEarly:u.hitTimeout,changes:h(u.changes),moves:u.moves.map(f=>[f.lineRangeMapping.original.startLineNumber,f.lineRangeMapping.original.endLineNumberExclusive,f.lineRangeMapping.modified.startLineNumber,f.lineRangeMapping.modified.endLineNumberExclusive,h(f.changes)])}}static _modelsAreIdentical(t,n){const r=t.getLineCount(),s=n.getLineCount();if(r!==s)return!1;for(let i=1;i<=r;i++){const l=t.getLineContent(i),o=n.getLineContent(i);if(l!==o)return!1}return!0}async $computeMoreMinimalEdits(t,n,r){const s=this._getModel(t);if(!s)return n;const i=[];let l;n=n.slice(0).sort((u,c)=>{if(u.range&&c.range)return M.compareRangesUsingStarts(u.range,c.range);const h=u.range?0:1,f=c.range?0:1;return h-f});let o=0;for(let u=1;uIe._diffLimit){i.push({range:u,text:c});continue}const d=ri(f,c,r),w=s.offsetAt(M.lift(u).getStartPosition());for(const g of d){const m=s.positionAt(w+g.originalStart),L=s.positionAt(w+g.originalStart+g.originalLength),S={text:c.substr(g.modifiedStart,g.modifiedLength),range:{startLineNumber:m.lineNumber,startColumn:m.column,endLineNumber:L.lineNumber,endColumn:L.column}};s.getValueInRange(S.range)!==S.text&&i.push(S)}}return typeof l=="number"&&i.push({eol:l,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),i}async $computeLinks(t){const n=this._getModel(t);return n?oi(n):null}async $computeDefaultDocumentColors(t){const n=this._getModel(t);return n?Ba(n):null}async $textualSuggest(t,n,r,s){const i=new yt,l=new RegExp(r,s),o=new Set;e:for(const u of t){const c=this._getModel(u);if(!!c){for(const h of c.words(l))if(!(h===n||!isNaN(Number(h)))&&(o.add(h),o.size>Ie._suggestionsLimit))break e}}return{words:Array.from(o),duration:i.elapsed()}}async $computeWordRanges(t,n,r,s){const i=this._getModel(t);if(!i)return Object.create(null);const l=new RegExp(r,s),o=Object.create(null);for(let u=n.startLineNumber;u{Ie._diffLimit=1e5})(),(()=>{Ie._suggestionsLimit=1e4})(),typeof importScripts=="function"&&(globalThis.monaco=Ii());const _t=class{static getChannel(t){return t.getChannel(_t.CHANNEL_NAME)}static setChannel(t,n){t.setChannel(_t.CHANNEL_NAME,n)}};let Bn=_t;(()=>{_t.CHANNEL_NAME="editorWorkerHost"})();function Za(e){let t;const n=ei(r=>{const s=Bn.getChannel(r),l={host:new Proxy({},{get(o,u,c){if(u!=="then"){if(typeof u!="string")throw new Error("Not supported");return(...h)=>s.$fhr(u,h)}}}),getMirrorModels:()=>n.requestHandler.getModels()};return t=e(l),new In(t)});return t}self.onmessage=()=>{Za(()=>({}))}})();