@agent-link/server 0.1.295 → 0.1.296

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/package.json +1 -1
  2. package/web/dist/assets/css.worker-CqmadvsI.js +1 -0
  3. package/web/dist/assets/{cssMode-B3Oovqsk.js → cssMode-DiXsbLdj.js} +1 -1
  4. package/web/dist/assets/{editor.main-Cbmwhgxk.js → editor.main-Du4D_x1m.js} +3 -3
  5. package/web/dist/assets/{freemarker2-5MQXwYU7.js → freemarker2-VOTBLOfX.js} +1 -1
  6. package/web/dist/assets/{handlebars-DbIuepFC.js → handlebars-CnNMM5Y-.js} +1 -1
  7. package/web/dist/assets/{html-B5pU6xqW.js → html-Bn14gfSK.js} +1 -1
  8. package/web/dist/assets/html.worker-B8BaxFhn.js +1 -0
  9. package/web/dist/assets/{htmlMode-CuTT_90i.js → htmlMode-DOfAJ61F.js} +1 -1
  10. package/web/dist/assets/{index-BtAAK7Od.js → index-siFXvYQu.js} +2 -2
  11. package/web/dist/assets/{javascript-CUefL6LA.js → javascript-BdVDzl40.js} +1 -1
  12. package/web/dist/assets/json.worker-D2CYyGom.js +1 -0
  13. package/web/dist/assets/{jsonMode-DLCeCZ_e.js → jsonMode-Dl1deoK4.js} +1 -1
  14. package/web/dist/assets/{liquid-BLA_h2KA.js → liquid-D53C4lpL.js} +1 -1
  15. package/web/dist/assets/{lspLanguageFeatures-Belz9URg.js → lspLanguageFeatures-DhCogLie.js} +1 -1
  16. package/web/dist/assets/{mdx-DgrXtVst.js → mdx-CFJvaeUO.js} +1 -1
  17. package/web/dist/assets/{python-DGb10oHo.js → python-DIexiV56.js} +1 -1
  18. package/web/dist/assets/{razor-Bq2C8eiu.js → razor-BwTd0l1I.js} +1 -1
  19. package/web/dist/assets/{tsMode-eJUoQl_i.js → tsMode-BJiOYspD.js} +1 -1
  20. package/web/dist/assets/{typescript-CCHeCsc2.js → typescript-DJw2R_qJ.js} +1 -1
  21. package/web/dist/assets/{xml-D_bUT6SS.js → xml-Cm27__uF.js} +1 -1
  22. package/web/dist/assets/{yaml-CnoIXwMT.js → yaml-CHfB74W3.js} +1 -1
  23. package/web/dist/index.html +1 -1
  24. package/web/dist/assets/css.worker-Cvr3YukM.js +0 -1
  25. package/web/dist/assets/html.worker-ew3dng7d.js +0 -1
  26. package/web/dist/assets/json.worker-CbO9a_mS.js +0 -1
@@ -0,0 +1 @@
1
+ var __defProp=Object.defineProperty,__defNormalProp=(e,t,n)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,__publicField=(e,t,n)=>__defNormalProp(e,"symbol"!=typeof t?t+"":t,n);!function(){"use strict";var e,t,n,r,i,s;const o=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{if(e.stack){if(h.isErrorNoTelemetry(e))throw new h(e.message+"\n\n"+e.stack);throw new Error(e.message+"\n\n"+e.stack)}throw e},0)}}emit(e){this.listeners.forEach(t=>{t(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}};function a(e){(function(e){if(e instanceof c)return!0;return e instanceof Error&&e.name===u&&e.message===u})(e)||o.onUnexpectedError(e)}function l(e){if(e instanceof Error){const{name:t,message:n,cause:r}=e;return{$isError:!0,name:t,message:n,stack:e.stacktrace||e.stack,noTelemetry:h.isErrorNoTelemetry(e),cause:r?l(r):void 0,code:e.code}}return e}const u="Canceled";class c extends Error{constructor(){super(u),this.name=this.message}}class h extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof h)return e;const t=new h;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return"CodeExpectedError"===e.name}}class d extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,d.prototype)}}function m(e,t="Unreachable"){throw new Error(t)}function g(e){e()||(e(),a(new d("Assertion Failed")))}function f(e,t){let n=0;for(;n<e.length-1;){if(!t(e[n],e[n+1]))return!1;n++}return!0}function p(e){return!!e&&"function"==typeof e[Symbol.iterator]}var b;function y(e){if(b.is(e)){const n=[];for(const r of e)if(r)try{r.dispose()}catch(t){n.push(t)}if(1===n.length)throw n[0];if(n.length>1)throw new AggregateError(n,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}if(e)return e.dispose(),e}!function(e){function t(e){return!!e&&"object"==typeof e&&"function"==typeof e[Symbol.iterator]}e.is=t;const n=Object.freeze([]);function*r(e){yield e}e.empty=function(){return n},e.single=r,e.wrap=function(e){return t(e)?e:r(e)},e.from=function(e){return e||n},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.isEmpty=function(e){return!e||!0===e[Symbol.iterator]().next().done},e.first=function(e){return e[Symbol.iterator]().next().value},e.some=function(e,t){let n=0;for(const r of e)if(t(r,n++))return!0;return!1},e.every=function(e,t){let n=0;for(const r of e)if(!t(r,n++))return!1;return!0},e.find=function(e,t){for(const n of e)if(t(n))return n},e.filter=function*(e,t){for(const n of e)t(n)&&(yield n)},e.map=function*(e,t){let n=0;for(const r of e)yield t(r,n++)},e.flatMap=function*(e,t){let n=0;for(const r of e)yield*t(r,n++)},e.concat=function*(...e){for(const t of e)p(t)?yield*t:yield t},e.reduce=function(e,t,n){let r=n;for(const i of e)r=t(r,i);return r},e.length=function(e){let t=0;for(const n of e)t++;return t},e.slice=function*(e,t,n=e.length){for(t<-e.length&&(t=0),t<0&&(t+=e.length),n<0?n+=e.length:n>e.length&&(n=e.length);t<n;t++)yield e[t]},e.consume=function(t,n=Number.POSITIVE_INFINITY){const r=[];if(0===n)return[r,t];const i=t[Symbol.iterator]();for(let s=0;s<n;s++){const t=i.next();if(t.done)return[r,e.empty()];r.push(t.value)}return[r,{[Symbol.iterator]:()=>i}]},e.asyncToArray=async function(e){const t=[];for await(const n of e)t.push(n);return t},e.asyncToArrayFlat=async function(e){let t=[];for await(const n of e)t=t.concat(n);return t}}(b||(b={}));class v{constructor(e){this._isDisposed=!1,this._fn=e}dispose(){if(!this._isDisposed){if(!this._fn)throw new Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,this._fn()}}}function w(e){return new v(e)}const C=class e{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{y(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t||t===S.None)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?e.DISABLE_DISPOSED_WARNING:this._toDispose.add(t),t}delete(e){if(e){if(e===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}};C.DISABLE_DISPOSED_WARNING=!1;let _=C;const L=class{constructor(){this._store=new _,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};L.None=Object.freeze({dispose(){}});let S=L;const N=class e{constructor(t){this.element=t,this.next=e.Undefined,this.prev=e.Undefined}};N.Undefined=new N(void 0);let x=N;class E{constructor(){this._first=x.Undefined,this._last=x.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===x.Undefined}clear(){let e=this._first;for(;e!==x.Undefined;){const t=e.next;e.prev=x.Undefined,e.next=x.Undefined,e=t}this._first=x.Undefined,this._last=x.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){const n=new x(e);if(this._first===x.Undefined)this._first=n,this._last=n;else if(t){const e=this._last;this._last=n,n.prev=e,e.next=n}else{const e=this._first;this._first=n,n.next=e,e.prev=n}this._size+=1;let r=!1;return()=>{r||(r=!0,this._remove(n))}}shift(){if(this._first!==x.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==x.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==x.Undefined&&e.next!==x.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===x.Undefined&&e.next===x.Undefined?(this._first=x.Undefined,this._last=x.Undefined):e.next===x.Undefined?(this._last=this._last.prev,this._last.next=x.Undefined):e.prev===x.Undefined&&(this._first=this._first.next,this._first.prev=x.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==x.Undefined;)yield e.element,e=e.next}}const A=globalThis.performance.now.bind(globalThis.performance);class k{static create(e){return new k(e)}constructor(e){this._now=!1===e?Date.now:A,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return-1!==this._stopTime?this._stopTime-this._startTime:this._now()-this._startTime}}var R;!function(e){function t(e){return(t,n=null,r)=>{let i,s=!1;return i=e(e=>{if(!s)return i?i.dispose():s=!0,t.call(n,e)},null,r),s&&i.dispose(),i}}function n(e,t,n){return i((n,r=null,i)=>e(e=>n.call(r,t(e)),null,i),n)}function r(e,t,n){return i((n,r=null,i)=>e(e=>t(e)&&n.call(r,e),null,i),n)}function i(e,t){let n;const r=new q({onWillAddFirstListener(){n=e(r.fire,r)},onDidRemoveLastListener(){null==n||n.dispose()}});return null==t||t.add(r),r.event}function s(e,t,n=100,r=!1,i=!1,s,o){let a,l,u,c,h=0;const d=new q({leakWarningThreshold:s,onWillAddFirstListener(){a=e(e=>{h++,l=t(l,e),r&&!u&&(d.fire(l),l=void 0),c=()=>{const e=l;l=void 0,u=void 0,(!r||h>1)&&d.fire(e),h=0},"number"==typeof n?(u&&clearTimeout(u),u=setTimeout(c,n)):void 0===u&&(u=null,queueMicrotask(c))})},onWillRemoveListener(){i&&h>0&&(null==c||c())},onDidRemoveLastListener(){c=void 0,a.dispose()}});return null==o||o.add(d),d.event}e.None=()=>S.None,e.defer=function(e,t){return s(e,()=>{},0,void 0,!0,void 0,t)},e.once=t,e.onceIf=function(t,n){return e.once(e.filter(t,n))},e.map=n,e.forEach=function(e,t,n){return i((n,r=null,i)=>e(e=>{t(e),n.call(r,e)},null,i),n)},e.filter=r,e.signal=function(e){return e},e.any=function(...e){return(t,n=null,r)=>{const i=function(...e){return w(()=>y(e))}(...e.map(e=>e(e=>t.call(n,e))));return function(e,t){t instanceof Array?t.push(e):t&&t.add(e);return e}(i,r)}},e.reduce=function(e,t,r,i){let s=r;return n(e,e=>(s=t(s,e),s),i)},e.debounce=s,e.accumulate=function(t,n=0,r){return e.debounce(t,(e,t)=>e?(e.push(t),e):[t],n,void 0,!0,void 0,r)},e.latch=function(e,t=(e,t)=>e===t,n){let i,s=!0;return r(e,e=>{const n=s||!t(e,i);return s=!1,i=e,n},n)},e.split=function(t,n,r){return[e.filter(t,n,r),e.filter(t,e=>!n(e),r)]},e.buffer=function(e,t=!1,n=[],r){let i=n.slice(),s=e(e=>{i?i.push(e):a.fire(e)});r&&r.add(s);const o=()=>{null==i||i.forEach(e=>a.fire(e)),i=null},a=new q({onWillAddFirstListener(){s||(s=e(e=>a.fire(e)),r&&r.add(s))},onDidAddFirstListener(){i&&(t?setTimeout(o):o())},onDidRemoveLastListener(){s&&s.dispose(),s=null}});return r&&r.add(a),a.event},e.chain=function(e,t){return(n,r,i)=>{const s=t(new a);return e(function(e){const t=s.evaluate(e);t!==o&&n.call(r,t)},void 0,i)}};const o=Symbol("HaltChainable");class a{constructor(){this.steps=[]}map(e){return this.steps.push(e),this}forEach(e){return this.steps.push(t=>(e(t),t)),this}filter(e){return this.steps.push(t=>e(t)?t:o),this}reduce(e,t){let n=t;return this.steps.push(t=>(n=e(n,t),n)),this}latch(e=(e,t)=>e===t){let t,n=!0;return this.steps.push(r=>{const i=n||!e(r,t);return n=!1,t=r,i?r:o}),this}evaluate(e){for(const t of this.steps)if((e=t(e))===o)break;return e}}e.fromNodeEventEmitter=function(e,t,n=e=>e){const r=(...e)=>i.fire(n(...e)),i=new q({onWillAddFirstListener:()=>e.on(t,r),onDidRemoveLastListener:()=>e.removeListener(t,r)});return i.event},e.fromDOMEventEmitter=function(e,t,n=e=>e){const r=(...e)=>i.fire(n(...e)),i=new q({onWillAddFirstListener:()=>e.addEventListener(t,r),onDidRemoveLastListener:()=>e.removeEventListener(t,r)});return i.event},e.toPromise=function(e,n){let r;const i=new Promise((i,s)=>{const o=t(e)(i,null,n);r=()=>o.dispose()});return i.cancel=r,i},e.forward=function(e,t){return e(e=>t.fire(e))},e.runAndSubscribe=function(e,t,n){return t(n),e(e=>t(e))};class l{constructor(e,t){this._observable=e,this._counter=0,this._hasChanged=!1;const n={onWillAddFirstListener:()=>{e.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{e.removeObserver(this)}};this.emitter=new q(n),t&&t.add(this.emitter)}beginUpdate(e){this._counter++}handlePossibleChange(e){}handleChange(e,t){this._hasChanged=!0}endUpdate(e){this._counter--,0===this._counter&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}e.fromObservable=function(e,t){return new l(e,t).emitter.event},e.fromObservableLight=function(e){return(t,n,r)=>{let i=0,s=!1;const o={beginUpdate(){i++},endUpdate(){i--,0===i&&(e.reportChanges(),s&&(s=!1,t.call(n)))},handlePossibleChange(){},handleChange(){s=!0}};e.addObserver(o),e.reportChanges();const a={dispose(){e.removeObserver(o)}};return r instanceof _?r.add(a):Array.isArray(r)&&r.push(a),a}}}(R||(R={}));const T=class e{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${e._idPool++}`,e.all.add(this)}start(e){this._stopWatch=new k,this.listenerCount=e}stop(){if(this._stopWatch){const e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};T.all=new Set,T._idPool=0;let M=T;const O=class e{constructor(t,n,r=(e._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=n,this.name=r,this._warnCountdown=0}dispose(){var e;null==(e=this._stacks)||e.clear()}check(e,t){const n=this.threshold;if(n<=0||t<n)return;this._stacks||(this._stacks=new Map);const r=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,r+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=.5*n;const[e,r]=this.getMostFrequentStack(),i=`[${this.name}] potential listener LEAK detected, having ${t} listeners already. MOST frequent listener (${r}):`,s=new F(i,e);this._errorHandler(s)}return()=>{const t=this._stacks.get(e.value)||0;this._stacks.set(e.value,t-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(const[n,r]of this._stacks)(!e||t<r)&&(e=[n,r],t=r);return e}};O._idPool=1;let I=O;class P{static create(){const e=new Error;return new P(e.stack??"")}constructor(e){this.value=e}print(){}}class F extends Error{constructor(e,t){super(e),this.name="ListenerLeakError",this.stack=t}}class V extends Error{constructor(e,t){super(e),this.name="ListenerRefusalError",this.stack=t}}class D{constructor(e){this.value=e}}class q{constructor(e){var t,n,r,i;this._size=0,this._options=e,this._leakageMon=(null==(t=this._options)?void 0:t.leakWarningThreshold)?new I((null==e?void 0:e.onListenerError)??a,(null==(n=this._options)?void 0:n.leakWarningThreshold)??-1):void 0,this._perfMon=(null==(r=this._options)?void 0:r._profName)?new M(this._options._profName):void 0,this._deliveryQueue=null==(i=this._options)?void 0:i.deliveryQueue}dispose(){var e,t,n,r;this._disposed||(this._disposed=!0,(null==(e=this._deliveryQueue)?void 0:e.current)===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),null==(n=null==(t=this._options)?void 0:t.onDidRemoveLastListener)||n.call(t),null==(r=this._leakageMon)||r.dispose())}get event(){return this._event??(this._event=(e,t,n)=>{var r,i,s,o,l,u,c;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const e=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`,t=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],n=new V(`${e}. HINT: Stack shows most frequent listener (${t[1]}-times)`,t[0]);return((null==(r=this._options)?void 0:r.onListenerError)||a)(n),S.None}if(this._disposed)return S.None;t&&(e=e.bind(t));const h=new D(e);let d;this._leakageMon&&this._size>=Math.ceil(.2*this._leakageMon.threshold)&&(h.stack=P.create(),d=this._leakageMon.check(h.stack,this._size+1)),this._listeners?this._listeners instanceof D?(this._deliveryQueue??(this._deliveryQueue=new K),this._listeners=[this._listeners,h]):this._listeners.push(h):(null==(s=null==(i=this._options)?void 0:i.onWillAddFirstListener)||s.call(i,this),this._listeners=h,null==(l=null==(o=this._options)?void 0:o.onDidAddFirstListener)||l.call(o,this)),null==(c=null==(u=this._options)?void 0:u.onDidAddListener)||c.call(u,this),this._size++;const m=w(()=>{null==d||d(),this._removeListener(h)});return n instanceof _?n.add(m):Array.isArray(n)&&n.push(m),m}),this._event}_removeListener(e){var t,n,r,i;if(null==(n=null==(t=this._options)?void 0:t.onWillRemoveListener)||n.call(t,this),!this._listeners)return;if(1===this._size)return this._listeners=void 0,null==(i=null==(r=this._options)?void 0:r.onDidRemoveLastListener)||i.call(r,this),void(this._size=0);const s=this._listeners,o=s.indexOf(e);if(-1===o)throw new Error("Attempted to dispose unknown listener");this._size--,s[o]=void 0;const a=this._deliveryQueue.current===this;if(2*this._size<=s.length){let e=0;for(let t=0;t<s.length;t++)s[t]?s[e++]=s[t]:a&&e<this._deliveryQueue.end&&(this._deliveryQueue.end--,e<this._deliveryQueue.i&&this._deliveryQueue.i--);s.length=e}}_deliver(e,t){var n;if(!e)return;const r=(null==(n=this._options)?void 0:n.onListenerError)||a;if(r)try{e.value(t)}catch(i){r(i)}else e.value(t)}_deliverQueue(e){const t=e.current._listeners;for(;e.i<e.end;)this._deliver(t[e.i++],e.value);e.reset()}fire(e){var t,n,r,i;if((null==(t=this._deliveryQueue)?void 0:t.current)&&(this._deliverQueue(this._deliveryQueue),null==(n=this._perfMon)||n.stop()),null==(r=this._perfMon)||r.start(this._size),this._listeners)if(this._listeners instanceof D)this._deliver(this._listeners,e);else{const t=this._deliveryQueue;t.enqueue(this,e,this._listeners.length),this._deliverQueue(t)}else;null==(i=this._perfMon)||i.stop()}hasListeners(){return this._size>0}}class K{constructor(){this.i=-1,this.end=0}enqueue(e,t,n){this.i=0,this.end=n,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}function $(){return globalThis._VSCODE_NLS_LANGUAGE}const B="pseudo"===$()||"undefined"!=typeof document&&document.location&&"string"==typeof document.location.hash&&document.location.hash.indexOf("pseudo=true")>=0;function U(e,t){let n;return n=0===t.length?e:e.replace(/\{(\d+)\}/g,(e,n)=>{const r=n[0],i=t[r];let s=e;return"string"==typeof i?s=i:"number"!=typeof i&&"boolean"!=typeof i&&null!=i||(s=String(i)),s}),B&&(n="["+n.replace(/[aouei]/g,"$&$&")+"]"),n}function j(e,t,...n){return U("number"==typeof e?function(e,t){var n;const r=null==(n=globalThis._VSCODE_NLS_MESSAGES)?void 0:n[e];if("string"!=typeof r){if("string"==typeof t)return t;throw new Error(`!!! NLS MISSING: ${e} !!!`)}return r}(e,t):t,n)}const W="en";let z,H,G,J=!1,X=!1,Q=!1,Z=W,Y=W;const ee=globalThis;let te;void 0!==ee.vscode&&void 0!==ee.vscode.process?te=ee.vscode.process:"undefined"!=typeof process&&"string"==typeof(null==(e=null==process?void 0:process.versions)?void 0:e.node)&&(te=process);const ne="string"==typeof(null==(t=null==te?void 0:te.versions)?void 0:t.electron)&&"renderer"===(null==te?void 0:te.type);if("object"==typeof te){J="win32"===te.platform,X="darwin"===te.platform,Q="linux"===te.platform,Q&&te.env.SNAP&&te.env.SNAP_REVISION,te.env.CI||te.env.BUILD_ARTIFACTSTAGINGDIRECTORY||te.env.GITHUB_WORKSPACE,z=W,Z=W;const e=te.env.VSCODE_NLS_CONFIG;if(e)try{const t=JSON.parse(e);z=t.userLocale,Y=t.osLocale,Z=t.resolvedLanguage||W,H=null==(n=t.languagePack)?void 0:n.translationsConfigFile}catch(lh){}}else"object"!=typeof navigator||ne||(G=navigator.userAgent,J=G.indexOf("Windows")>=0,X=G.indexOf("Macintosh")>=0,(G.indexOf("Macintosh")>=0||G.indexOf("iPad")>=0||G.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints,Q=G.indexOf("Linux")>=0,null==G||G.indexOf("Mobi"),Z=$()||W,z=navigator.language.toLowerCase(),Y=z);const re=J,ie=X,se=G,oe="function"==typeof ee.postMessage&&!ee.importScripts;(()=>{if(oe){const e=[];ee.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let n=0,r=e.length;n<r;n++){const r=e[n];if(r.id===t.data.vscodeScheduleAsyncWork)return e.splice(n,1),void r.callback()}});let t=0;return n=>{const r=++t;e.push({id:r,callback:n}),ee.postMessage({vscodeScheduleAsyncWork:r},"*")}}})();const ae=!!(se&&se.indexOf("Chrome")>=0);function le(e){return e}se&&se.indexOf("Firefox"),!ae&&se&&se.indexOf("Safari"),se&&se.indexOf("Edg/"),se&&se.indexOf("Android");var ue,ce;(ce=ue||(ue={}))[ce.Uninitialized=0]="Uninitialized",ce[ce.Running=1]="Running",ce[ce.Completed=2]="Completed";class he{constructor(e){this.executor=e,this._state=ue.Uninitialized}get value(){if(this._state===ue.Uninitialized){this._state=ue.Running;try{this._value=this.executor()}catch(e){this._error=e}finally{this._state=ue.Completed}}else if(this._state===ue.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 de(e){return e>=65&&e<=90}function me(e){return 55296<=e&&e<=56319}function ge(e,t,n){const r=e.charCodeAt(n);if(me(r)&&n+1<t){const t=e.charCodeAt(n+1);if(function(e){return 56320<=e&&e<=57343}(t))return t-56320+(r-55296<<10)+65536}return r}const fe=/^[\t\n\r\x20-\x7E]*$/;function pe(e){return fe.test(e)}const be=class e{static getInstance(t){return e.cache.get(Array.from(t))}static getLocales(){return e._locales.value}constructor(e){this.confusableDictionary=e}isAmbiguous(e){return this.confusableDictionary.has(e)}getPrimaryConfusable(e){return this.confusableDictionary.get(e)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}};be.ambiguousCharacterData=new he(()=>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]}')),be.cache=new class{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,"function"==typeof e?(this._fn=e,this._computeKey=le):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}({getCacheKey:JSON.stringify},e=>{function t(e){const t=new Map;for(let n=0;n<e.length;n+=2)t.set(e[n],e[n+1]);return t}function n(e,t){if(!e)return t;const n=new Map;for(const[r,i]of e)t.has(r)&&n.set(r,i);return n}const r=be.ambiguousCharacterData.value;let i,s=e.filter(e=>!e.startsWith("_")&&Object.hasOwn(r,e));0===s.length&&(s=["_default"]);for(const a of s){i=n(i,t(r[a]))}const o=function(e,t){const n=new Map(e);for(const[r,i]of t)n.set(r,i);return n}(t(r._common),i);return new be(o)}),be._locales=new he(()=>Object.keys(be.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")));let ye=be;const ve=class e{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(e.getRawData())].flat())),this._data}static isInvisibleCharacter(t){return e.getData().has(t)}static get codePoints(){return e.getData()}};ve._data=void 0;let we=ve;const Ce="default";class _e{constructor(e,t,n,r,i){this.vsWorker=e,this.req=t,this.channel=n,this.method=r,this.args=i,this.type=0}}class Le{constructor(e,t,n,r){this.vsWorker=e,this.seq=t,this.res=n,this.err=r,this.type=1}}class Se{constructor(e,t,n,r,i){this.vsWorker=e,this.req=t,this.channel=n,this.eventName=r,this.arg=i,this.type=2}}class Ne{constructor(e,t,n){this.vsWorker=e,this.req=t,this.event=n,this.type=3}}class xe{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class Ee{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}async sendMessage(e,t,n){const r=String(++this._lastSentReq);return new Promise((i,s)=>{this._pendingReplies[r]={resolve:i,reject:s},this._send(new _e(this._workerId,r,e,t,n))})}listen(e,t,n){let r=null;const i=new q({onWillAddFirstListener:()=>{r=String(++this._lastSentReq),this._pendingEmitters.set(r,i),this._send(new Se(this._workerId,r,e,t,n))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(r),this._send(new xe(this._workerId,r)),r=null}});return i.event}handleMessage(e){e&&e.vsWorker&&(-1!==this._workerId&&e.vsWorker!==this._workerId||this._handleMessage(e))}createProxyToRemoteChannel(e,t){const n={get:(n,r)=>("string"!=typeof r||n[r]||(ke(r)?n[r]=t=>this.listen(e,r,t):Ae(r)?n[r]=this.listen(e,r,void 0):36===r.charCodeAt(0)&&(n[r]=async(...n)=>(await(null==t?void 0:t()),this.sendMessage(e,r,n)))),n[r])};return new Proxy(Object.create(null),n)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq])return;const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let n=e.err;if(e.err.$isError){const t=new Error;t.name=e.err.name,t.message=e.err.message,t.stack=e.err.stack,n=t}return void t.reject(n)}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(e=>{this._send(new Le(this._workerId,t,e,void 0))},e=>{e.detail instanceof Error&&(e.detail=l(e.detail)),this._send(new Le(this._workerId,t,void 0,l(e)))})}_handleSubscribeEventMessage(e){const t=e.req,n=this._handler.handleEvent(e.channel,e.eventName,e.arg)(e=>{this._send(new Ne(this._workerId,t,e))});this._pendingEvents.set(t,n)}_handleEventMessage(e){this._pendingEmitters.has(e.req)&&this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){this._pendingEvents.has(e.req)&&(this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req))}_send(e){const t=[];if(0===e.type)for(let n=0;n<e.args.length;n++){const r=e.args[n];r instanceof ArrayBuffer&&t.push(r)}else 1===e.type&&e.res instanceof ArrayBuffer&&t.push(e.res);this._handler.sendMessage(e,t)}}function Ae(e){return"o"===e[0]&&"n"===e[1]&&de(e.charCodeAt(2))}function ke(e){return/^onDynamic/.test(e)&&de(e.charCodeAt(9))}class Re{constructor(e,t){this._localChannels=new Map,this._remoteChannels=new Map,this._protocol=new Ee({sendMessage:(t,n)=>{e(t,n)},handleMessage:(e,t,n)=>this._handleMessage(e,t,n),handleEvent:(e,t,n)=>this._handleEvent(e,t,n)}),this.requestHandler=t(this)}onmessage(e){this._protocol.handleMessage(e)}_handleMessage(e,t,n){if(e===Ce&&"$initialize"===t)return this.initialize(n[0]);const r=e===Ce?this.requestHandler:this._localChannels.get(e);if(!r)return Promise.reject(new Error(`Missing channel ${e} on worker thread`));const i=r[t];if("function"!=typeof i)return Promise.reject(new Error(`Missing method ${t} on worker thread channel ${e}`));try{return Promise.resolve(i.apply(r,n))}catch(lh){return Promise.reject(lh)}}_handleEvent(e,t,n){const r=e===Ce?this.requestHandler:this._localChannels.get(e);if(!r)throw new Error(`Missing channel ${e} on worker thread`);if(ke(t)){const e=r[t];if("function"!=typeof e)throw new Error(`Missing dynamic event ${t} on request handler.`);const i=e.call(r,n);if("function"!=typeof i)throw new Error(`Missing dynamic event ${t} on request handler.`);return i}if(Ae(t)){const e=r[t];if("function"!=typeof e)throw new Error(`Missing event ${t} on request handler.`);return e}throw new Error(`Malformed event name ${t}`)}getChannel(e){if(!this._remoteChannels.has(e)){const t=this._protocol.createProxyToRemoteChannel(e);this._remoteChannels.set(e,t)}return this._remoteChannels.get(e)}async initialize(e){this._protocol.setWorkerId(e)}}let Te=!1;class Me{constructor(e,t,n,r){this.originalStart=e,this.originalLength=t,this.modifiedStart=n,this.modifiedLength=r}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}function Oe(e,t){return(t<<5)-t+e|0}function Ie(e,t){t=Oe(149417,t);for(let n=0,r=e.length;n<r;n++)t=Oe(e.charCodeAt(n),t);return t}new he(()=>new Uint8Array(256));class Pe{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let n=0,r=e.length;n<r;n++)t[n]=e.charCodeAt(n);return t}}function Fe(e,t,n){return new Ke(new Pe(e),new Pe(t)).ComputeDiff(n).changes}class Ve{static Assert(e,t){if(!e)throw new Error(t)}}class De{static Copy(e,t,n,r,i){for(let s=0;s<i;s++)n[r+s]=e[t+s]}static Copy2(e,t,n,r,i){for(let s=0;s<i;s++)n[r+s]=e[t+s]}}class qe{constructor(){this.m_changes=[],this.m_originalStart=1073741824,this.m_modifiedStart=1073741824,this.m_originalCount=0,this.m_modifiedCount=0}MarkNextChange(){(this.m_originalCount>0||this.m_modifiedCount>0)&&this.m_changes.push(new Me(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class Ke{constructor(e,t,n=null){this.ContinueProcessingPredicate=n,this._originalSequence=e,this._modifiedSequence=t;const[r,i,s]=Ke._getElements(e),[o,a,l]=Ke._getElements(t);this._hasStrings=s&&l,this._originalStringElements=r,this._originalElementsOrHash=i,this._modifiedStringElements=o,this._modifiedElementsOrHash=a,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&"string"==typeof e[0]}static _getElements(e){const t=e.getElements();if(Ke._isStringArray(t)){const e=new Int32Array(t.length);for(let n=0,r=t.length;n<r;n++)e[n]=Ie(t[n],0);return[t,e,!0]}return t instanceof Int32Array?[[],t,!1]:[[],new Int32Array(t),!1]}ElementsAreEqual(e,t){return this._originalElementsOrHash[e]===this._modifiedElementsOrHash[t]&&(!this._hasStrings||this._originalStringElements[e]===this._modifiedStringElements[t])}ElementsAreStrictEqual(e,t){if(!this.ElementsAreEqual(e,t))return!1;return Ke._getStrictElement(this._originalSequence,e)===Ke._getStrictElement(this._modifiedSequence,t)}static _getStrictElement(e,t){return"function"==typeof e.getStrictElement?e.getStrictElement(t):null}OriginalElementsAreEqual(e,t){return this._originalElementsOrHash[e]===this._originalElementsOrHash[t]&&(!this._hasStrings||this._originalStringElements[e]===this._originalStringElements[t])}ModifiedElementsAreEqual(e,t){return this._modifiedElementsOrHash[e]===this._modifiedElementsOrHash[t]&&(!this._hasStrings||this._modifiedStringElements[e]===this._modifiedStringElements[t])}ComputeDiff(e){return this._ComputeDiff(0,this._originalElementsOrHash.length-1,0,this._modifiedElementsOrHash.length-1,e)}_ComputeDiff(e,t,n,r,i){const s=[!1];let o=this.ComputeDiffRecursive(e,t,n,r,s);return i&&(o=this.PrettifyChanges(o)),{quitEarly:s[0],changes:o}}ComputeDiffRecursive(e,t,n,r,i){for(i[0]=!1;e<=t&&n<=r&&this.ElementsAreEqual(e,n);)e++,n++;for(;t>=e&&r>=n&&this.ElementsAreEqual(t,r);)t--,r--;if(e>t||n>r){let i;return n<=r?(Ve.Assert(e===t+1,"originalStart should only be one more than originalEnd"),i=[new Me(e,0,n,r-n+1)]):e<=t?(Ve.Assert(n===r+1,"modifiedStart should only be one more than modifiedEnd"),i=[new Me(e,t-e+1,n,0)]):(Ve.Assert(e===t+1,"originalStart should only be one more than originalEnd"),Ve.Assert(n===r+1,"modifiedStart should only be one more than modifiedEnd"),i=[]),i}const s=[0],o=[0],a=this.ComputeRecursionPoint(e,t,n,r,s,o,i),l=s[0],u=o[0];if(null!==a)return a;if(!i[0]){const s=this.ComputeDiffRecursive(e,l,n,u,i);let o=[];return o=i[0]?[new Me(l+1,t-(l+1)+1,u+1,r-(u+1)+1)]:this.ComputeDiffRecursive(l+1,t,u+1,r,i),this.ConcatenateChanges(s,o)}return[new Me(e,t-e+1,n,r-n+1)]}WALKTRACE(e,t,n,r,i,s,o,a,l,u,c,h,d,m,g,f,p,b){let y=null,v=null,w=new qe,C=t,_=n,L=d[0]-f[0]-r,S=-1073741824,N=this.m_forwardHistory.length-1;do{const t=L+e;t===C||t<_&&l[t-1]<l[t+1]?(m=(c=l[t+1])-L-r,c<S&&w.MarkNextChange(),S=c,w.AddModifiedElement(c+1,m),L=t+1-e):(m=(c=l[t-1]+1)-L-r,c<S&&w.MarkNextChange(),S=c-1,w.AddOriginalElement(c,m+1),L=t-1-e),N>=0&&(e=(l=this.m_forwardHistory[N])[0],C=1,_=l.length-1)}while(--N>=-1);if(y=w.getReverseChanges(),b[0]){let e=d[0]+1,t=f[0]+1;if(null!==y&&y.length>0){const n=y[y.length-1];e=Math.max(e,n.getOriginalEnd()),t=Math.max(t,n.getModifiedEnd())}v=[new Me(e,h-e+1,t,g-t+1)]}else{w=new qe,C=s,_=o,L=d[0]-f[0]-a,S=1073741824,N=p?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const e=L+i;e===C||e<_&&u[e-1]>=u[e+1]?(m=(c=u[e+1]-1)-L-a,c>S&&w.MarkNextChange(),S=c+1,w.AddOriginalElement(c+1,m+1),L=e+1-i):(m=(c=u[e-1])-L-a,c>S&&w.MarkNextChange(),S=c,w.AddModifiedElement(c+1,m+1),L=e-1-i),N>=0&&(i=(u=this.m_reverseHistory[N])[0],C=1,_=u.length-1)}while(--N>=-1);v=w.getChanges()}return this.ConcatenateChanges(y,v)}ComputeRecursionPoint(e,t,n,r,i,s,o){let a=0,l=0,u=0,c=0,h=0,d=0;e--,n--,i[0]=0,s[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const m=t-e+(r-n),g=m+1,f=new Int32Array(g),p=new Int32Array(g),b=r-n,y=t-e,v=e-n,w=t-r,C=(y-b)%2==0;f[b]=e,p[y]=t,o[0]=!1;for(let _=1;_<=m/2+1;_++){let m=0,L=0;u=this.ClipDiagonalBound(b-_,_,b,g),c=this.ClipDiagonalBound(b+_,_,b,g);for(let e=u;e<=c;e+=2){a=e===u||e<c&&f[e-1]<f[e+1]?f[e+1]:f[e-1]+1,l=a-(e-b)-v;const n=a;for(;a<t&&l<r&&this.ElementsAreEqual(a+1,l+1);)a++,l++;if(f[e]=a,a+l>m+L&&(m=a,L=l),!C&&Math.abs(e-y)<=_-1&&a>=p[e])return i[0]=a,s[0]=l,n<=p[e]&&_<=1448?this.WALKTRACE(b,u,c,v,y,h,d,w,f,p,a,t,i,l,r,s,C,o):null}const S=(m-e+(L-n)-_)/2;if(null!==this.ContinueProcessingPredicate&&!this.ContinueProcessingPredicate(m,S))return o[0]=!0,i[0]=m,s[0]=L,S>0&&_<=1448?this.WALKTRACE(b,u,c,v,y,h,d,w,f,p,a,t,i,l,r,s,C,o):(e++,n++,[new Me(e,t-e+1,n,r-n+1)]);h=this.ClipDiagonalBound(y-_,_,y,g),d=this.ClipDiagonalBound(y+_,_,y,g);for(let g=h;g<=d;g+=2){a=g===h||g<d&&p[g-1]>=p[g+1]?p[g+1]-1:p[g-1],l=a-(g-y)-w;const m=a;for(;a>e&&l>n&&this.ElementsAreEqual(a,l);)a--,l--;if(p[g]=a,C&&Math.abs(g-b)<=_&&a<=f[g])return i[0]=a,s[0]=l,m>=f[g]&&_<=1448?this.WALKTRACE(b,u,c,v,y,h,d,w,f,p,a,t,i,l,r,s,C,o):null}if(_<=1447){let e=new Int32Array(c-u+2);e[0]=b-u+1,De.Copy2(f,u,e,1,c-u+1),this.m_forwardHistory.push(e),e=new Int32Array(d-h+2),e[0]=y-h+1,De.Copy2(p,h,e,1,d-h+1),this.m_reverseHistory.push(e)}}return this.WALKTRACE(b,u,c,v,y,h,d,w,f,p,a,t,i,l,r,s,C,o)}PrettifyChanges(e){for(let t=0;t<e.length;t++){const n=e[t],r=t<e.length-1?e[t+1].originalStart:this._originalElementsOrHash.length,i=t<e.length-1?e[t+1].modifiedStart:this._modifiedElementsOrHash.length,s=n.originalLength>0,o=n.modifiedLength>0;for(;n.originalStart+n.originalLength<r&&n.modifiedStart+n.modifiedLength<i&&(!s||this.OriginalElementsAreEqual(n.originalStart,n.originalStart+n.originalLength))&&(!o||this.ModifiedElementsAreEqual(n.modifiedStart,n.modifiedStart+n.modifiedLength));){const e=this.ElementsAreStrictEqual(n.originalStart,n.modifiedStart);if(this.ElementsAreStrictEqual(n.originalStart+n.originalLength,n.modifiedStart+n.modifiedLength)&&!e)break;n.originalStart++,n.modifiedStart++}const a=[null];t<e.length-1&&this.ChangesOverlap(e[t],e[t+1],a)&&(e[t]=a[0],e.splice(t+1,1),t--)}for(let t=e.length-1;t>=0;t--){const n=e[t];let r=0,i=0;if(t>0){const n=e[t-1];r=n.originalStart+n.originalLength,i=n.modifiedStart+n.modifiedLength}const s=n.originalLength>0,o=n.modifiedLength>0;let a=0,l=this._boundaryScore(n.originalStart,n.originalLength,n.modifiedStart,n.modifiedLength);for(let e=1;;e++){const t=n.originalStart-e,u=n.modifiedStart-e;if(t<r||u<i)break;if(s&&!this.OriginalElementsAreEqual(t,t+n.originalLength))break;if(o&&!this.ModifiedElementsAreEqual(u,u+n.modifiedLength))break;const c=(t===r&&u===i?5:0)+this._boundaryScore(t,n.originalLength,u,n.modifiedLength);c>l&&(l=c,a=e)}n.originalStart-=a,n.modifiedStart-=a;const u=[null];t>0&&this.ChangesOverlap(e[t-1],e[t],u)&&(e[t-1]=u[0],e.splice(t,1),t++)}if(this._hasStrings)for(let t=1,n=e.length;t<n;t++){const n=e[t-1],r=e[t],i=r.originalStart-n.originalStart-n.originalLength,s=n.originalStart,o=r.originalStart+r.originalLength,a=o-s,l=n.modifiedStart,u=r.modifiedStart+r.modifiedLength,c=u-l;if(i<5&&a<20&&c<20){const e=this._findBetterContiguousSequence(s,a,l,c,i);if(e){const[t,s]=e;t===n.originalStart+n.originalLength&&s===n.modifiedStart+n.modifiedLength||(n.originalLength=t-n.originalStart,n.modifiedLength=s-n.modifiedStart,r.originalStart=t+i,r.modifiedStart=s+i,r.originalLength=o-r.originalStart,r.modifiedLength=u-r.modifiedStart)}}}return e}_findBetterContiguousSequence(e,t,n,r,i){if(t<i||r<i)return null;const s=e+t-i+1,o=n+r-i+1;let a=0,l=0,u=0;for(let c=e;c<s;c++)for(let e=n;e<o;e++){const t=this._contiguousSequenceScore(c,e,i);t>0&&t>a&&(a=t,l=c,u=e)}return a>0?[l,u]:null}_contiguousSequenceScore(e,t,n){let r=0;for(let i=0;i<n;i++){if(!this.ElementsAreEqual(e+i,t+i))return 0;r+=this._originalStringElements[e+i].length}return r}_OriginalIsBoundary(e){return e<=0||e>=this._originalElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const n=e+t;if(this._OriginalIsBoundary(n-1)||this._OriginalIsBoundary(n))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const n=e+t;if(this._ModifiedIsBoundary(n-1)||this._ModifiedIsBoundary(n))return!0}return!1}_boundaryScore(e,t,n,r){return(this._OriginalRegionIsBoundary(e,t)?1:0)+(this._ModifiedRegionIsBoundary(n,r)?1:0)}ConcatenateChanges(e,t){const n=[];if(0===e.length||0===t.length)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],n)){const r=new Array(e.length+t.length-1);return De.Copy(e,0,r,0,e.length-1),r[e.length-1]=n[0],De.Copy(t,1,r,e.length,t.length-1),r}{const n=new Array(e.length+t.length);return De.Copy(e,0,n,0,e.length),De.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,n){if(Ve.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),Ve.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){const r=e.originalStart;let i=e.originalLength;const s=e.modifiedStart;let o=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(i=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(o=t.modifiedStart+t.modifiedLength-e.modifiedStart),n[0]=new Me(r,i,s,o),!0}return n[0]=null,!1}ClipDiagonalBound(e,t,n,r){if(e>=0&&e<r)return e;const i=t%2==0;if(e<0){return i===(n%2==0)?0:1}return i===((r-n-1)%2==0)?r-1:r-2}}let $e=class e{constructor(e,t){this.lineNumber=e,this.column=t}with(t=this.lineNumber,n=this.column){return t===this.lineNumber&&n===this.column?this:new e(t,n)}delta(e=0,t=0){return this.with(Math.max(1,this.lineNumber+e),Math.max(1,this.column+t))}equals(t){return e.equals(this,t)}static equals(e,t){return!e&&!t||!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(t){return e.isBefore(this,t)}static isBefore(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<t.column}isBeforeOrEqual(t){return e.isBeforeOrEqual(this,t)}static isBeforeOrEqual(e,t){return e.lineNumber<t.lineNumber||!(t.lineNumber<e.lineNumber)&&e.column<=t.column}static compare(e,t){const n=0|e.lineNumber,r=0|t.lineNumber;if(n===r){return(0|e.column)-(0|t.column)}return n-r}clone(){return new e(this.lineNumber,this.column)}toString(){return"("+this.lineNumber+","+this.column+")"}static lift(t){return new e(t.lineNumber,t.column)}static isIPosition(e){return!!e&&"number"==typeof e.lineNumber&&"number"==typeof e.column}toJSON(){return{lineNumber:this.lineNumber,column:this.column}}},Be=class e{constructor(e,t,n,r){e>n||e===n&&t>r?(this.startLineNumber=n,this.startColumn=r,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=n,this.endColumn=r)}isEmpty(){return e.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(t){return e.containsPosition(this,t)}static containsPosition(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber)&&(!(t.lineNumber===e.startLineNumber&&t.column<e.startColumn)&&!(t.lineNumber===e.endLineNumber&&t.column>e.endColumn))}static strictContainsPosition(e,t){return!(t.lineNumber<e.startLineNumber||t.lineNumber>e.endLineNumber)&&(!(t.lineNumber===e.startLineNumber&&t.column<=e.startColumn)&&!(t.lineNumber===e.endLineNumber&&t.column>=e.endColumn))}containsRange(t){return e.containsRange(this,t)}static containsRange(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>e.endColumn)))}strictContainsRange(t){return e.strictContainsRange(this,t)}static strictContainsRange(e,t){return!(t.startLineNumber<e.startLineNumber||t.endLineNumber<e.startLineNumber)&&(!(t.startLineNumber>e.endLineNumber||t.endLineNumber>e.endLineNumber)&&(!(t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn)&&!(t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)))}plusRange(t){return e.plusRange(this,t)}static plusRange(t,n){let r,i,s,o;return n.startLineNumber<t.startLineNumber?(r=n.startLineNumber,i=n.startColumn):n.startLineNumber===t.startLineNumber?(r=n.startLineNumber,i=Math.min(n.startColumn,t.startColumn)):(r=t.startLineNumber,i=t.startColumn),n.endLineNumber>t.endLineNumber?(s=n.endLineNumber,o=n.endColumn):n.endLineNumber===t.endLineNumber?(s=n.endLineNumber,o=Math.max(n.endColumn,t.endColumn)):(s=t.endLineNumber,o=t.endColumn),new e(r,i,s,o)}intersectRanges(t){return e.intersectRanges(this,t)}static intersectRanges(t,n){let r=t.startLineNumber,i=t.startColumn,s=t.endLineNumber,o=t.endColumn;const a=n.startLineNumber,l=n.startColumn,u=n.endLineNumber,c=n.endColumn;return r<a?(r=a,i=l):r===a&&(i=Math.max(i,l)),s>u?(s=u,o=c):s===u&&(o=Math.min(o,c)),r>s||r===s&&i>o?null:new e(r,i,s,o)}equalsRange(t){return e.equalsRange(this,t)}static equalsRange(e,t){return!e&&!t||!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return e.getEndPosition(this)}static getEndPosition(e){return new $e(e.endLineNumber,e.endColumn)}getStartPosition(){return e.getStartPosition(this)}static getStartPosition(e){return new $e(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(t,n){return new e(this.startLineNumber,this.startColumn,t,n)}setStartPosition(t,n){return new e(t,n,this.endLineNumber,this.endColumn)}collapseToStart(){return e.collapseToStart(this)}static collapseToStart(t){return new e(t.startLineNumber,t.startColumn,t.startLineNumber,t.startColumn)}collapseToEnd(){return e.collapseToEnd(this)}static collapseToEnd(t){return new e(t.endLineNumber,t.endColumn,t.endLineNumber,t.endColumn)}delta(t){return new e(this.startLineNumber+t,this.startColumn,this.endLineNumber+t,this.endColumn)}isSingleLine(){return this.startLineNumber===this.endLineNumber}static fromPositions(t,n=t){return new e(t.lineNumber,t.column,n.lineNumber,n.column)}static lift(t){return t?new e(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn):null}static isIRange(e){return!!e&&"number"==typeof e.startLineNumber&&"number"==typeof e.startColumn&&"number"==typeof e.endLineNumber&&"number"==typeof e.endColumn}static areIntersectingOrTouching(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<e.startColumn)}static areIntersecting(e,t){return!(e.endLineNumber<t.startLineNumber||e.endLineNumber===t.startLineNumber&&e.endColumn<=t.startColumn)&&!(t.endLineNumber<e.startLineNumber||t.endLineNumber===e.startLineNumber&&t.endColumn<=e.startColumn)}static areOnlyIntersecting(e,t){return!(e.endLineNumber<t.startLineNumber-1||e.endLineNumber===t.startLineNumber&&e.endColumn<t.startColumn-1)&&!(t.endLineNumber<e.startLineNumber-1||t.endLineNumber===e.startLineNumber&&t.endColumn<e.startColumn-1)}static compareRangesUsingStarts(e,t){if(e&&t){const n=0|e.startLineNumber,r=0|t.startLineNumber;if(n===r){const n=0|e.startColumn,r=0|t.startColumn;if(n===r){const n=0|e.endLineNumber,r=0|t.endLineNumber;if(n===r){return(0|e.endColumn)-(0|t.endColumn)}return n-r}return n-r}return n-r}return(e?1:0)-(t?1:0)}static compareRangesUsingEnds(e,t){return e.endLineNumber===t.endLineNumber?e.endColumn===t.endColumn?e.startLineNumber===t.startLineNumber?e.startColumn-t.startColumn:e.startLineNumber-t.startLineNumber:e.endColumn-t.endColumn:e.endLineNumber-t.endLineNumber}static spansMultipleLines(e){return e.endLineNumber>e.startLineNumber}toJSON(){return this}};function Ue(e){return e<0?0:e>255?255:0|e}function je(e){return e<0?0:e>4294967295?4294967295:0|e}class We{constructor(e){const t=Ue(e);this._defaultValue=t,this._asciiMap=We._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const n=Ue(t);e>=0&&e<256?this._asciiMap[e]=n:this._map.set(e,n)}get(e){return e>=0&&e<256?this._asciiMap[e]:this._map.get(e)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class ze{constructor(e,t,n){const r=new Uint8Array(e*t);for(let i=0,s=e*t;i<s;i++)r[i]=n;this._data=r,this.rows=e,this.cols=t}get(e,t){return this._data[e*this.cols+t]}set(e,t,n){this._data[e*this.cols+t]=n}}class He{constructor(e){let t=0,n=0;for(let i=0,s=e.length;i<s;i++){const[r,s,o]=e[i];s>t&&(t=s),r>n&&(n=r),o>n&&(n=o)}t++,n++;const r=new ze(n,t,0);for(let i=0,s=e.length;i<s;i++){const[t,n,s]=e[i];r.set(t,n,s)}this._states=r,this._maxCharCode=t}nextState(e,t){return t<0||t>=this._maxCharCode?0:this._states.get(e,t)}}let Ge=null;let Je=null;class Xe{static _createLink(e,t,n,r,i){let s=i-1;do{const n=t.charCodeAt(s);if(2!==e.get(n))break;s--}while(s>r);if(r>0){const e=t.charCodeAt(r-1),n=t.charCodeAt(s);(40===e&&41===n||91===e&&93===n||123===e&&125===n)&&s--}return{range:{startLineNumber:n,startColumn:r+1,endLineNumber:n,endColumn:s+2},url:t.substring(r,s+1)}}static computeLinks(e,t=function(){return null===Ge&&(Ge=new He([[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]])),Ge}()){const n=function(){if(null===Je){Je=new We(0);const e=" \t<>'\"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…|";for(let n=0;n<e.length;n++)Je.set(e.charCodeAt(n),1);const t=".,;:";for(let n=0;n<t.length;n++)Je.set(t.charCodeAt(n),2)}return Je}(),r=[];for(let i=1,s=e.getLineCount();i<=s;i++){const s=e.getLineContent(i),o=s.length;let a=0,l=0,u=0,c=1,h=!1,d=!1,m=!1,g=!1;for(;a<o;){let e=!1;const o=s.charCodeAt(a);if(13===c){let t;switch(o){case 40:h=!0,t=0;break;case 41:t=h?0:1;break;case 91:m=!0,d=!0,t=0;break;case 93:m=!1,t=d?0:1;break;case 123:g=!0,t=0;break;case 125:t=g?0:1;break;case 39:case 34:case 96:t=u===o?1:39===u||34===u||96===u?0:1;break;case 42:t=42===u?1:0;break;case 32:t=m?0:1;break;default:t=n.get(o)}1===t&&(r.push(Xe._createLink(n,s,i,l,a)),e=!0)}else if(12===c){let t;91===o?(d=!0,t=0):t=n.get(o),1===t?e=!0:c=13}else c=t.nextState(c,o),0===c&&(e=!0);e&&(c=1,h=!1,d=!1,g=!1,l=a+1,u=o),a++}13===c&&r.push(Xe._createLink(n,s,i,l,o))}return r}}const Qe=class{constructor(){this._defaultValueSet=[["true","false"],["True","False"],["Private","Public","Friend","ReadOnly","Partial","Protected","WriteOnly"],["public","protected","private"]]}navigateValueSet(e,t,n,r,i){if(e&&t){const n=this.doNavigateValueSet(t,i);if(n)return{range:e,value:n}}if(n&&r){const e=this.doNavigateValueSet(r,i);if(e)return{range:n,value:e}}return null}doNavigateValueSet(e,t){const n=this.numberReplace(e,t);return null!==n?n:this.textReplace(e,t)}numberReplace(e,t){const n=Math.pow(10,e.length-(e.lastIndexOf(".")+1));let r=Number(e);const i=parseFloat(e);return isNaN(r)||isNaN(i)||r!==i?null:0!==r||t?(r=Math.floor(r*n),r+=t?n:-n,String(r/n)):null}textReplace(e,t){return this.valueSetsReplace(this._defaultValueSet,e,t)}valueSetsReplace(e,t,n){let r=null;for(let i=0,s=e.length;null===r&&i<s;i++)r=this.valueSetReplace(e[i],t,n);return r}valueSetReplace(e,t,n){let r=e.indexOf(t);return r>=0?(r+=n?1:-1,r<0?r=e.length-1:r%=e.length,e[r]):null}};Qe.INSTANCE=new Qe;let Ze=Qe;const Ye=Object.freeze(function(e,t){const n=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(n)}}});var et,tt;(tt=et||(et={})).isCancellationToken=function(e){return e===tt.None||e===tt.Cancelled||e instanceof nt||!(!e||"object"!=typeof e)&&"boolean"==typeof e.isCancellationRequested&&"function"==typeof e.onCancellationRequested},tt.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:R.None}),tt.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Ye});class nt{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?Ye:(this._emitter||(this._emitter=new q),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class rt{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new nt),this._token}cancel(){this._token?this._token instanceof nt&&this._token.cancel():this._token=et.Cancelled}dispose(e=!1){var t;e&&this.cancel(),null==(t=this._parentListener)||t.dispose(),this._token?this._token instanceof nt&&this._token.dispose():this._token=et.None}}class it{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}}const st=new it,ot=new it,at=new it,lt=new Array(230),ut=Object.create(null),ct=Object.create(null);var ht,dt;!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 i of t){const[e,t,s,o,a,l,u,c,h]=i;if(r[t]||(r[t]=!0,ut[s]=t,ct[s.toLowerCase()]=t),!n[o]){if(n[o]=!0,!a)throw new Error(`String representation missing for key code ${o} around scan code ${s}`);st.define(o,a),ot.define(o,c||a),at.define(o,h||c||a)}l&&(lt[l]=o)}}(),(dt=ht||(ht={})).toString=function(e){return st.keyCodeToStr(e)},dt.fromString=function(e){return st.strToKeyCode(e)},dt.toUserSettingsUS=function(e){return ot.keyCodeToStr(e)},dt.toUserSettingsGeneral=function(e){return at.keyCodeToStr(e)},dt.fromUserSettings=function(e){return ot.strToKeyCode(e)||at.strToKeyCode(e)},dt.toElectronAccelerator=function(e){if(e>=98&&e<=113)return null;switch(e){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return st.keyCodeToStr(e)};var mt={};let gt;const ft=globalThis.vscode;if(void 0!==ft&&void 0!==ft.process){const e=ft.process;gt={get platform(){return e.platform},get arch(){return e.arch},get env(){return e.env},cwd:()=>e.cwd()}}else gt="undefined"!=typeof process&&"string"==typeof(null==(r=null==process?void 0:process.versions)?void 0:r.node)?{get platform(){return process.platform},get arch(){return process.arch},get env(){return mt},cwd:()=>mt.VSCODE_CWD||process.cwd()}:{get platform(){return re?"win32":ie?"darwin":"linux"},get arch(){},get env(){return{}},cwd:()=>"/"};const pt=gt.cwd,bt=gt.env,yt=gt.platform,vt=46,wt=47,Ct=92,_t=58;class Lt extends Error{constructor(e,t,n){let r;"string"==typeof t&&0===t.indexOf("not ")?(r="must not be",t=t.replace(/^not /,"")):r="must be";const i=-1!==e.indexOf(".")?"property":"argument";let s=`The "${e}" ${i} ${r} of type ${t}`;s+=". Received type "+typeof n,super(s),this.code="ERR_INVALID_ARG_TYPE"}}function St(e,t){if("string"!=typeof e)throw new Lt(t,"string",e)}const Nt="win32"===yt;function xt(e){return e===wt||e===Ct}function Et(e){return e===wt}function At(e){return e>=65&&e<=90||e>=97&&e<=122}function kt(e,t,n,r){let i="",s=0,o=-1,a=0,l=0;for(let u=0;u<=e.length;++u){if(u<e.length)l=e.charCodeAt(u);else{if(r(l))break;l=wt}if(r(l)){if(o===u-1||1===a);else if(2===a){if(i.length<2||2!==s||i.charCodeAt(i.length-1)!==vt||i.charCodeAt(i.length-2)!==vt){if(i.length>2){const e=i.lastIndexOf(n);-1===e?(i="",s=0):(i=i.slice(0,e),s=i.length-1-i.lastIndexOf(n)),o=u,a=0;continue}if(0!==i.length){i="",s=0,o=u,a=0;continue}}t&&(i+=i.length>0?`${n}..`:"..",s=2)}else i.length>0?i+=`${n}${e.slice(o+1,u)}`:i=e.slice(o+1,u),s=u-o-1;o=u,a=0}else l===vt&&-1!==a?++a:a=-1}return i}function Rt(e,t){!function(e,t){if(null===e||"object"!=typeof e)throw new Lt(t,"Object",e)}(t,"pathObject");const n=t.dir||t.root,r=t.base||`${t.name||""}${i=t.ext,i?`${"."===i[0]?"":"."}${i}`:""}`;var i;return n?n===t.root?`${n}${r}`:`${n}${e}${r}`:r}const Tt={resolve(...e){let t="",n="",r=!1;for(let i=e.length-1;i>=-1;i--){let s;if(i>=0){if(s=e[i],St(s,`paths[${i}]`),0===s.length)continue}else 0===t.length?s=pt():(s=bt[`=${t}`]||pt(),(void 0===s||s.slice(0,2).toLowerCase()!==t.toLowerCase()&&s.charCodeAt(2)===Ct)&&(s=`${t}\\`));const o=s.length;let a=0,l="",u=!1;const c=s.charCodeAt(0);if(1===o)xt(c)&&(a=1,u=!0);else if(xt(c))if(u=!0,xt(s.charCodeAt(1))){let e=2,t=e;for(;e<o&&!xt(s.charCodeAt(e));)e++;if(e<o&&e!==t){const n=s.slice(t,e);for(t=e;e<o&&xt(s.charCodeAt(e));)e++;if(e<o&&e!==t){for(t=e;e<o&&!xt(s.charCodeAt(e));)e++;e!==o&&e===t||(l=`\\\\${n}\\${s.slice(t,e)}`,a=e)}}}else a=1;else At(c)&&s.charCodeAt(1)===_t&&(l=s.slice(0,2),a=2,o>2&&xt(s.charCodeAt(2))&&(u=!0,a=3));if(l.length>0)if(t.length>0){if(l.toLowerCase()!==t.toLowerCase())continue}else t=l;if(r){if(t.length>0)break}else if(n=`${s.slice(a)}\\${n}`,r=u,u&&t.length>0)break}return n=kt(n,!r,"\\",xt),r?`${t}\\${n}`:`${t}${n}`||"."},normalize(e){St(e,"path");const t=e.length;if(0===t)return".";let n,r=0,i=!1;const s=e.charCodeAt(0);if(1===t)return Et(s)?"\\":e;if(xt(s))if(i=!0,xt(e.charCodeAt(1))){let i=2,s=i;for(;i<t&&!xt(e.charCodeAt(i));)i++;if(i<t&&i!==s){const o=e.slice(s,i);for(s=i;i<t&&xt(e.charCodeAt(i));)i++;if(i<t&&i!==s){for(s=i;i<t&&!xt(e.charCodeAt(i));)i++;if(i===t)return`\\\\${o}\\${e.slice(s)}\\`;i!==s&&(n=`\\\\${o}\\${e.slice(s,i)}`,r=i)}}}else r=1;else At(s)&&e.charCodeAt(1)===_t&&(n=e.slice(0,2),r=2,t>2&&xt(e.charCodeAt(2))&&(i=!0,r=3));let o=r<t?kt(e.slice(r),!i,"\\",xt):"";if(0!==o.length||i||(o="."),o.length>0&&xt(e.charCodeAt(t-1))&&(o+="\\"),!i&&void 0===n&&e.includes(":")){if(o.length>=2&&At(o.charCodeAt(0))&&o.charCodeAt(1)===_t)return`.\\${o}`;let n=e.indexOf(":");do{if(n===t-1||xt(e.charCodeAt(n+1)))return`.\\${o}`}while(-1!==(n=e.indexOf(":",n+1)))}return void 0===n?i?`\\${o}`:o:i?`${n}\\${o}`:`${n}${o}`},isAbsolute(e){St(e,"path");const t=e.length;if(0===t)return!1;const n=e.charCodeAt(0);return xt(n)||t>2&&At(n)&&e.charCodeAt(1)===_t&&xt(e.charCodeAt(2))},join(...e){if(0===e.length)return".";let t,n;for(let s=0;s<e.length;++s){const r=e[s];St(r,"path"),r.length>0&&(void 0===t?t=n=r:t+=`\\${r}`)}if(void 0===t)return".";let r=!0,i=0;if("string"==typeof n&&xt(n.charCodeAt(0))){++i;const e=n.length;e>1&&xt(n.charCodeAt(1))&&(++i,e>2&&(xt(n.charCodeAt(2))?++i:r=!1))}if(r){for(;i<t.length&&xt(t.charCodeAt(i));)i++;i>=2&&(t=`\\${t.slice(i)}`)}return Tt.normalize(t)},relative(e,t){if(St(e,"from"),St(t,"to"),e===t)return"";const n=Tt.resolve(e),r=Tt.resolve(t);if(n===r)return"";if((e=n.toLowerCase())===(t=r.toLowerCase()))return"";if(n.length!==e.length||r.length!==t.length){const e=n.split("\\"),t=r.split("\\");""===e[e.length-1]&&e.pop(),""===t[t.length-1]&&t.pop();const i=e.length,s=t.length,o=i<s?i:s;let a;for(a=0;a<o&&e[a].toLowerCase()===t[a].toLowerCase();a++);return 0===a?r:a===o?s>o?t.slice(a).join("\\"):i>o?"..\\".repeat(i-1-a)+"..":"":"..\\".repeat(i-a)+t.slice(a).join("\\")}let i=0;for(;i<e.length&&e.charCodeAt(i)===Ct;)i++;let s=e.length;for(;s-1>i&&e.charCodeAt(s-1)===Ct;)s--;const o=s-i;let a=0;for(;a<t.length&&t.charCodeAt(a)===Ct;)a++;let l=t.length;for(;l-1>a&&t.charCodeAt(l-1)===Ct;)l--;const u=l-a,c=o<u?o:u;let h=-1,d=0;for(;d<c;d++){const n=e.charCodeAt(i+d);if(n!==t.charCodeAt(a+d))break;n===Ct&&(h=d)}if(d!==c){if(-1===h)return r}else{if(u>c){if(t.charCodeAt(a+d)===Ct)return r.slice(a+d+1);if(2===d)return r.slice(a+d)}o>c&&(e.charCodeAt(i+d)===Ct?h=d:2===d&&(h=3)),-1===h&&(h=0)}let m="";for(d=i+h+1;d<=s;++d)d!==s&&e.charCodeAt(d)!==Ct||(m+=0===m.length?"..":"\\..");return a+=h,m.length>0?`${m}${r.slice(a,l)}`:(r.charCodeAt(a)===Ct&&++a,r.slice(a,l))},toNamespacedPath(e){if("string"!=typeof e||0===e.length)return e;const t=Tt.resolve(e);if(t.length<=2)return e;if(t.charCodeAt(0)===Ct){if(t.charCodeAt(1)===Ct){const e=t.charCodeAt(2);if(63!==e&&e!==vt)return`\\\\?\\UNC\\${t.slice(2)}`}}else if(At(t.charCodeAt(0))&&t.charCodeAt(1)===_t&&t.charCodeAt(2)===Ct)return`\\\\?\\${t}`;return t},dirname(e){St(e,"path");const t=e.length;if(0===t)return".";let n=-1,r=0;const i=e.charCodeAt(0);if(1===t)return xt(i)?e:".";if(xt(i)){if(n=r=1,xt(e.charCodeAt(1))){let i=2,s=i;for(;i<t&&!xt(e.charCodeAt(i));)i++;if(i<t&&i!==s){for(s=i;i<t&&xt(e.charCodeAt(i));)i++;if(i<t&&i!==s){for(s=i;i<t&&!xt(e.charCodeAt(i));)i++;if(i===t)return e;i!==s&&(n=r=i+1)}}}}else At(i)&&e.charCodeAt(1)===_t&&(n=t>2&&xt(e.charCodeAt(2))?3:2,r=n);let s=-1,o=!0;for(let a=t-1;a>=r;--a)if(xt(e.charCodeAt(a))){if(!o){s=a;break}}else o=!1;if(-1===s){if(-1===n)return".";s=n}return e.slice(0,s)},basename(e,t){void 0!==t&&St(t,"suffix"),St(e,"path");let n,r=0,i=-1,s=!0;if(e.length>=2&&At(e.charCodeAt(0))&&e.charCodeAt(1)===_t&&(r=2),void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let o=t.length-1,a=-1;for(n=e.length-1;n>=r;--n){const l=e.charCodeAt(n);if(xt(l)){if(!s){r=n+1;break}}else-1===a&&(s=!1,a=n+1),o>=0&&(l===t.charCodeAt(o)?-1===--o&&(i=n):(o=-1,i=a))}return r===i?i=a:-1===i&&(i=e.length),e.slice(r,i)}for(n=e.length-1;n>=r;--n)if(xt(e.charCodeAt(n))){if(!s){r=n+1;break}}else-1===i&&(s=!1,i=n+1);return-1===i?"":e.slice(r,i)},extname(e){St(e,"path");let t=0,n=-1,r=0,i=-1,s=!0,o=0;e.length>=2&&e.charCodeAt(1)===_t&&At(e.charCodeAt(0))&&(t=r=2);for(let a=e.length-1;a>=t;--a){const t=e.charCodeAt(a);if(xt(t)){if(!s){r=a+1;break}}else-1===i&&(s=!1,i=a+1),t===vt?-1===n?n=a:1!==o&&(o=1):-1!==n&&(o=-1)}return-1===n||-1===i||0===o||1===o&&n===i-1&&n===r+1?"":e.slice(n,i)},format:Rt.bind(null,"\\"),parse(e){St(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const n=e.length;let r=0,i=e.charCodeAt(0);if(1===n)return xt(i)?(t.root=t.dir=e,t):(t.base=t.name=e,t);if(xt(i)){if(r=1,xt(e.charCodeAt(1))){let t=2,i=t;for(;t<n&&!xt(e.charCodeAt(t));)t++;if(t<n&&t!==i){for(i=t;t<n&&xt(e.charCodeAt(t));)t++;if(t<n&&t!==i){for(i=t;t<n&&!xt(e.charCodeAt(t));)t++;t===n?r=t:t!==i&&(r=t+1)}}}}else if(At(i)&&e.charCodeAt(1)===_t){if(n<=2)return t.root=t.dir=e,t;if(r=2,xt(e.charCodeAt(2))){if(3===n)return t.root=t.dir=e,t;r=3}}r>0&&(t.root=e.slice(0,r));let s=-1,o=r,a=-1,l=!0,u=e.length-1,c=0;for(;u>=r;--u)if(i=e.charCodeAt(u),xt(i)){if(!l){o=u+1;break}}else-1===a&&(l=!1,a=u+1),i===vt?-1===s?s=u:1!==c&&(c=1):-1!==s&&(c=-1);return-1!==a&&(-1===s||0===c||1===c&&s===a-1&&s===o+1?t.base=t.name=e.slice(o,a):(t.name=e.slice(o,s),t.base=e.slice(o,a),t.ext=e.slice(s,a))),t.dir=o>0&&o!==r?e.slice(0,o-1):t.root,t},sep:"\\",delimiter:";",win32:null,posix:null},Mt=(()=>{if(Nt){const e=/\\/g;return()=>{const t=pt().replace(e,"/");return t.slice(t.indexOf("/"))}}return()=>pt()})(),Ot={resolve(...e){let t="",n=!1;for(let r=e.length-1;r>=0&&!n;r--){const i=e[r];St(i,`paths[${r}]`),0!==i.length&&(t=`${i}/${t}`,n=i.charCodeAt(0)===wt)}if(!n){const e=Mt();t=`${e}/${t}`,n=e.charCodeAt(0)===wt}return t=kt(t,!n,"/",Et),n?`/${t}`:t.length>0?t:"."},normalize(e){if(St(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===wt,n=e.charCodeAt(e.length-1)===wt;return 0===(e=kt(e,!t,"/",Et)).length?t?"/":n?"./":".":(n&&(e+="/"),t?`/${e}`:e)},isAbsolute:e=>(St(e,"path"),e.length>0&&e.charCodeAt(0)===wt),join(...e){if(0===e.length)return".";const t=[];for(let n=0;n<e.length;++n){const r=e[n];St(r,"path"),r.length>0&&t.push(r)}return 0===t.length?".":Ot.normalize(t.join("/"))},relative(e,t){if(St(e,"from"),St(t,"to"),e===t)return"";if((e=Ot.resolve(e))===(t=Ot.resolve(t)))return"";const n=e.length,r=n-1,i=t.length-1,s=r<i?r:i;let o=-1,a=0;for(;a<s;a++){const n=e.charCodeAt(1+a);if(n!==t.charCodeAt(1+a))break;n===wt&&(o=a)}if(a===s)if(i>s){if(t.charCodeAt(1+a)===wt)return t.slice(1+a+1);if(0===a)return t.slice(1+a)}else r>s&&(e.charCodeAt(1+a)===wt?o=a:0===a&&(o=0));let l="";for(a=1+o+1;a<=n;++a)a!==n&&e.charCodeAt(a)!==wt||(l+=0===l.length?"..":"/..");return`${l}${t.slice(1+o)}`},toNamespacedPath:e=>e,dirname(e){if(St(e,"path"),0===e.length)return".";const t=e.charCodeAt(0)===wt;let n=-1,r=!0;for(let i=e.length-1;i>=1;--i)if(e.charCodeAt(i)===wt){if(!r){n=i;break}}else r=!1;return-1===n?t?"/":".":t&&1===n?"//":e.slice(0,n)},basename(e,t){void 0!==t&&St(t,"suffix"),St(e,"path");let n,r=0,i=-1,s=!0;if(void 0!==t&&t.length>0&&t.length<=e.length){if(t===e)return"";let o=t.length-1,a=-1;for(n=e.length-1;n>=0;--n){const l=e.charCodeAt(n);if(l===wt){if(!s){r=n+1;break}}else-1===a&&(s=!1,a=n+1),o>=0&&(l===t.charCodeAt(o)?-1===--o&&(i=n):(o=-1,i=a))}return r===i?i=a:-1===i&&(i=e.length),e.slice(r,i)}for(n=e.length-1;n>=0;--n)if(e.charCodeAt(n)===wt){if(!s){r=n+1;break}}else-1===i&&(s=!1,i=n+1);return-1===i?"":e.slice(r,i)},extname(e){St(e,"path");let t=-1,n=0,r=-1,i=!0,s=0;for(let o=e.length-1;o>=0;--o){const a=e[o];if("/"!==a)-1===r&&(i=!1,r=o+1),"."===a?-1===t?t=o:1!==s&&(s=1):-1!==t&&(s=-1);else if(!i){n=o+1;break}}return-1===t||-1===r||0===s||1===s&&t===r-1&&t===n+1?"":e.slice(t,r)},format:Rt.bind(null,"/"),parse(e){St(e,"path");const t={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return t;const n=e.charCodeAt(0)===wt;let r;n?(t.root="/",r=1):r=0;let i=-1,s=0,o=-1,a=!0,l=e.length-1,u=0;for(;l>=r;--l){const t=e.charCodeAt(l);if(t!==wt)-1===o&&(a=!1,o=l+1),t===vt?-1===i?i=l:1!==u&&(u=1):-1!==i&&(u=-1);else if(!a){s=l+1;break}}if(-1!==o){const r=0===s&&n?1:s;-1===i||0===u||1===u&&i===o-1&&i===s+1?t.base=t.name=e.slice(r,o):(t.name=e.slice(r,i),t.base=e.slice(r,o),t.ext=e.slice(i,o))}return s>0?t.dir=e.slice(0,s-1):n&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};Ot.win32=Tt.win32=Tt,Ot.posix=Tt.posix=Ot,Nt?Tt.normalize:Ot.normalize,Nt?Tt.resolve:Ot.resolve,Nt?Tt.relative:Ot.relative,Nt?Tt.dirname:Ot.dirname,Nt?Tt.basename:Ot.basename,Nt?Tt.extname:Ot.extname,Nt?Tt.sep:Ot.sep;const It=/^\w[\w\d+.-]*$/,Pt=/^\//,Ft=/^\/\//;const Vt="",Dt="/",qt=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;let Kt=class e{static isUri(t){return t instanceof e||!(!t||"object"!=typeof t)&&("string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"string"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString)}constructor(e,t,n,r,i,s=!1){"object"==typeof e?(this.scheme=e.scheme||Vt,this.authority=e.authority||Vt,this.path=e.path||Vt,this.query=e.query||Vt,this.fragment=e.fragment||Vt):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||Vt,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==Dt&&(t=Dt+t):t=Dt}return t}(this.scheme,n||Vt),this.query=r||Vt,this.fragment=i||Vt,function(e,t){if(!e.scheme&&t)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!It.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!Pt.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(Ft.test(e.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}(this,s))}get fsPath(){return zt(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:n,path:r,query:i,fragment:s}=e;return void 0===t?t=this.scheme:null===t&&(t=Vt),void 0===n?n=this.authority:null===n&&(n=Vt),void 0===r?r=this.path:null===r&&(r=Vt),void 0===i?i=this.query:null===i&&(i=Vt),void 0===s?s=this.fragment:null===s&&(s=Vt),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&s===this.fragment?this:new Bt(t,n,r,i,s)}static parse(e,t=!1){const n=qt.exec(e);return n?new Bt(n[2]||Vt,Xt(n[4]||Vt),Xt(n[5]||Vt),Xt(n[7]||Vt),Xt(n[9]||Vt),t):new Bt(Vt,Vt,Vt,Vt,Vt)}static file(e){let t=Vt;if(re&&(e=e.replace(/\\/g,Dt)),e[0]===Dt&&e[1]===Dt){const n=e.indexOf(Dt,2);-1===n?(t=e.substring(2),e=Dt):(t=e.substring(2,n),e=e.substring(n)||Dt)}return new Bt("file",t,e,Vt,Vt)}static from(e,t){return new Bt(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(t,...n){if(!t.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let r;return r=re&&"file"===t.scheme?e.file(Tt.join(zt(t,!0),...n)).path:Ot.join(t.path,...n),t.with({path:r})}toString(e=!1){return Ht(this,e)}toJSON(){return this}static revive(t){if(t){if(t instanceof e)return t;{const e=new Bt(t);return e._formatted=t.external??null,e._fsPath=t._sep===$t?t.fsPath??null:null,e}}return t}};const $t=re?1:void 0;class Bt extends Kt{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=zt(this,!1)),this._fsPath}toString(e=!1){return e?Ht(this,!0):(this._formatted||(this._formatted=Ht(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=$t),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const Ut={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 jt(e,t,n){let r,i=-1;for(let s=0;s<e.length;s++){const o=e.charCodeAt(s);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o||n&&91===o||n&&93===o||n&&58===o)-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),void 0!==r&&(r+=e.charAt(s));else{void 0===r&&(r=e.substr(0,s));const t=Ut[o];void 0!==t?(-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),r+=t):-1===i&&(i=s)}}return-1!==i&&(r+=encodeURIComponent(e.substring(i))),void 0!==r?r:e}function Wt(e){let t;for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);35===r||63===r?(void 0===t&&(t=e.substr(0,n)),t+=Ut[r]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function zt(e,t){let n;return n=e.authority&&e.path.length>1&&"file"===e.scheme?`//${e.authority}${e.path}`:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?t?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,re&&(n=n.replace(/\//g,"\\")),n}function Ht(e,t){const n=t?Wt:jt;let r="",{scheme:i,authority:s,path:o,query:a,fragment:l}=e;if(i&&(r+=i,r+=":"),(s||"file"===i)&&(r+=Dt,r+=Dt),s){let e=s.indexOf("@");if(-1!==e){const t=s.substr(0,e);s=s.substr(e+1),e=t.lastIndexOf(":"),-1===e?r+=n(t,!1,!1):(r+=n(t.substr(0,e),!1,!1),r+=":",r+=n(t.substr(e+1),!1,!0)),r+="@"}s=s.toLowerCase(),e=s.lastIndexOf(":"),-1===e?r+=n(s,!1,!0):(r+=n(s.substr(0,e),!1,!0),r+=s.substr(e))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2)){const e=o.charCodeAt(1);e>=65&&e<=90&&(o=`/${String.fromCharCode(e+32)}:${o.substr(3)}`)}else if(o.length>=2&&58===o.charCodeAt(1)){const e=o.charCodeAt(0);e>=65&&e<=90&&(o=`${String.fromCharCode(e+32)}:${o.substr(2)}`)}r+=n(o,!0,!1)}return a&&(r+="?",r+=n(a,!1,!1)),l&&(r+="#",r+=t?l:jt(l,!1,!1)),r}function Gt(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+Gt(e.substr(3)):e}}const Jt=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Xt(e){return e.match(Jt)?e.replace(Jt,e=>Gt(e)):e}class Qt extends Be{constructor(e,t,n,r){super(e,t,n,r),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=n,this.positionColumn=r}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Qt.selectionsEqual(this,e)}static selectionsEqual(e,t){return e.selectionStartLineNumber===t.selectionStartLineNumber&&e.selectionStartColumn===t.selectionStartColumn&&e.positionLineNumber===t.positionLineNumber&&e.positionColumn===t.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(e,t){return 0===this.getDirection()?new Qt(this.startLineNumber,this.startColumn,e,t):new Qt(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new $e(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new $e(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return 0===this.getDirection()?new Qt(e,t,this.endLineNumber,this.endColumn):new Qt(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Qt(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return 0===t?new Qt(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Qt(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Qt(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn)}static selectionsArrEqual(e,t){if(e&&!t||!e&&t)return!1;if(!e&&!t)return!0;if(e.length!==t.length)return!1;for(let n=0,r=e.length;n<r;n++)if(!this.selectionsEqual(e[n],t[n]))return!1;return!0}static isISelection(e){return!!e&&"number"==typeof e.selectionStartLineNumber&&"number"==typeof e.selectionStartColumn&&"number"==typeof e.positionLineNumber&&"number"==typeof e.positionColumn}static createWithDirection(e,t,n,r,i){return 0===i?new Qt(e,t,n,r):new Qt(n,r,e,t)}}const Zt=Object.create(null);function Yt(e,t){if("string"==typeof t){const n=Zt[t];if(void 0===n)throw new Error(`${e} references an unknown codicon: ${t}`);t=n}return Zt[e]=t,{id:e}}const en={...{add:Yt("add",6e4),plus:Yt("plus",6e4),gistNew:Yt("gist-new",6e4),repoCreate:Yt("repo-create",6e4),lightbulb:Yt("lightbulb",60001),lightBulb:Yt("light-bulb",60001),repo:Yt("repo",60002),repoDelete:Yt("repo-delete",60002),gistFork:Yt("gist-fork",60003),repoForked:Yt("repo-forked",60003),gitPullRequest:Yt("git-pull-request",60004),gitPullRequestAbandoned:Yt("git-pull-request-abandoned",60004),recordKeys:Yt("record-keys",60005),keyboard:Yt("keyboard",60005),tag:Yt("tag",60006),gitPullRequestLabel:Yt("git-pull-request-label",60006),tagAdd:Yt("tag-add",60006),tagRemove:Yt("tag-remove",60006),person:Yt("person",60007),personFollow:Yt("person-follow",60007),personOutline:Yt("person-outline",60007),personFilled:Yt("person-filled",60007),sourceControl:Yt("source-control",60008),mirror:Yt("mirror",60009),mirrorPublic:Yt("mirror-public",60009),star:Yt("star",60010),starAdd:Yt("star-add",60010),starDelete:Yt("star-delete",60010),starEmpty:Yt("star-empty",60010),comment:Yt("comment",60011),commentAdd:Yt("comment-add",60011),alert:Yt("alert",60012),warning:Yt("warning",60012),search:Yt("search",60013),searchSave:Yt("search-save",60013),logOut:Yt("log-out",60014),signOut:Yt("sign-out",60014),logIn:Yt("log-in",60015),signIn:Yt("sign-in",60015),eye:Yt("eye",60016),eyeUnwatch:Yt("eye-unwatch",60016),eyeWatch:Yt("eye-watch",60016),circleFilled:Yt("circle-filled",60017),primitiveDot:Yt("primitive-dot",60017),closeDirty:Yt("close-dirty",60017),debugBreakpoint:Yt("debug-breakpoint",60017),debugBreakpointDisabled:Yt("debug-breakpoint-disabled",60017),debugHint:Yt("debug-hint",60017),terminalDecorationSuccess:Yt("terminal-decoration-success",60017),primitiveSquare:Yt("primitive-square",60018),edit:Yt("edit",60019),pencil:Yt("pencil",60019),info:Yt("info",60020),issueOpened:Yt("issue-opened",60020),gistPrivate:Yt("gist-private",60021),gitForkPrivate:Yt("git-fork-private",60021),lock:Yt("lock",60021),mirrorPrivate:Yt("mirror-private",60021),close:Yt("close",60022),removeClose:Yt("remove-close",60022),x:Yt("x",60022),repoSync:Yt("repo-sync",60023),sync:Yt("sync",60023),clone:Yt("clone",60024),desktopDownload:Yt("desktop-download",60024),beaker:Yt("beaker",60025),microscope:Yt("microscope",60025),vm:Yt("vm",60026),deviceDesktop:Yt("device-desktop",60026),file:Yt("file",60027),more:Yt("more",60028),ellipsis:Yt("ellipsis",60028),kebabHorizontal:Yt("kebab-horizontal",60028),mailReply:Yt("mail-reply",60029),reply:Yt("reply",60029),organization:Yt("organization",60030),organizationFilled:Yt("organization-filled",60030),organizationOutline:Yt("organization-outline",60030),newFile:Yt("new-file",60031),fileAdd:Yt("file-add",60031),newFolder:Yt("new-folder",60032),fileDirectoryCreate:Yt("file-directory-create",60032),trash:Yt("trash",60033),trashcan:Yt("trashcan",60033),history:Yt("history",60034),clock:Yt("clock",60034),folder:Yt("folder",60035),fileDirectory:Yt("file-directory",60035),symbolFolder:Yt("symbol-folder",60035),logoGithub:Yt("logo-github",60036),markGithub:Yt("mark-github",60036),github:Yt("github",60036),terminal:Yt("terminal",60037),console:Yt("console",60037),repl:Yt("repl",60037),zap:Yt("zap",60038),symbolEvent:Yt("symbol-event",60038),error:Yt("error",60039),stop:Yt("stop",60039),variable:Yt("variable",60040),symbolVariable:Yt("symbol-variable",60040),array:Yt("array",60042),symbolArray:Yt("symbol-array",60042),symbolModule:Yt("symbol-module",60043),symbolPackage:Yt("symbol-package",60043),symbolNamespace:Yt("symbol-namespace",60043),symbolObject:Yt("symbol-object",60043),symbolMethod:Yt("symbol-method",60044),symbolFunction:Yt("symbol-function",60044),symbolConstructor:Yt("symbol-constructor",60044),symbolBoolean:Yt("symbol-boolean",60047),symbolNull:Yt("symbol-null",60047),symbolNumeric:Yt("symbol-numeric",60048),symbolNumber:Yt("symbol-number",60048),symbolStructure:Yt("symbol-structure",60049),symbolStruct:Yt("symbol-struct",60049),symbolParameter:Yt("symbol-parameter",60050),symbolTypeParameter:Yt("symbol-type-parameter",60050),symbolKey:Yt("symbol-key",60051),symbolText:Yt("symbol-text",60051),symbolReference:Yt("symbol-reference",60052),goToFile:Yt("go-to-file",60052),symbolEnum:Yt("symbol-enum",60053),symbolValue:Yt("symbol-value",60053),symbolRuler:Yt("symbol-ruler",60054),symbolUnit:Yt("symbol-unit",60054),activateBreakpoints:Yt("activate-breakpoints",60055),archive:Yt("archive",60056),arrowBoth:Yt("arrow-both",60057),arrowDown:Yt("arrow-down",60058),arrowLeft:Yt("arrow-left",60059),arrowRight:Yt("arrow-right",60060),arrowSmallDown:Yt("arrow-small-down",60061),arrowSmallLeft:Yt("arrow-small-left",60062),arrowSmallRight:Yt("arrow-small-right",60063),arrowSmallUp:Yt("arrow-small-up",60064),arrowUp:Yt("arrow-up",60065),bell:Yt("bell",60066),bold:Yt("bold",60067),book:Yt("book",60068),bookmark:Yt("bookmark",60069),debugBreakpointConditionalUnverified:Yt("debug-breakpoint-conditional-unverified",60070),debugBreakpointConditional:Yt("debug-breakpoint-conditional",60071),debugBreakpointConditionalDisabled:Yt("debug-breakpoint-conditional-disabled",60071),debugBreakpointDataUnverified:Yt("debug-breakpoint-data-unverified",60072),debugBreakpointData:Yt("debug-breakpoint-data",60073),debugBreakpointDataDisabled:Yt("debug-breakpoint-data-disabled",60073),debugBreakpointLogUnverified:Yt("debug-breakpoint-log-unverified",60074),debugBreakpointLog:Yt("debug-breakpoint-log",60075),debugBreakpointLogDisabled:Yt("debug-breakpoint-log-disabled",60075),briefcase:Yt("briefcase",60076),broadcast:Yt("broadcast",60077),browser:Yt("browser",60078),bug:Yt("bug",60079),calendar:Yt("calendar",60080),caseSensitive:Yt("case-sensitive",60081),check:Yt("check",60082),checklist:Yt("checklist",60083),chevronDown:Yt("chevron-down",60084),chevronLeft:Yt("chevron-left",60085),chevronRight:Yt("chevron-right",60086),chevronUp:Yt("chevron-up",60087),chromeClose:Yt("chrome-close",60088),chromeMaximize:Yt("chrome-maximize",60089),chromeMinimize:Yt("chrome-minimize",60090),chromeRestore:Yt("chrome-restore",60091),circleOutline:Yt("circle-outline",60092),circle:Yt("circle",60092),debugBreakpointUnverified:Yt("debug-breakpoint-unverified",60092),terminalDecorationIncomplete:Yt("terminal-decoration-incomplete",60092),circleSlash:Yt("circle-slash",60093),circuitBoard:Yt("circuit-board",60094),clearAll:Yt("clear-all",60095),clippy:Yt("clippy",60096),closeAll:Yt("close-all",60097),cloudDownload:Yt("cloud-download",60098),cloudUpload:Yt("cloud-upload",60099),code:Yt("code",60100),collapseAll:Yt("collapse-all",60101),colorMode:Yt("color-mode",60102),commentDiscussion:Yt("comment-discussion",60103),creditCard:Yt("credit-card",60105),dash:Yt("dash",60108),dashboard:Yt("dashboard",60109),database:Yt("database",60110),debugContinue:Yt("debug-continue",60111),debugDisconnect:Yt("debug-disconnect",60112),debugPause:Yt("debug-pause",60113),debugRestart:Yt("debug-restart",60114),debugStart:Yt("debug-start",60115),debugStepInto:Yt("debug-step-into",60116),debugStepOut:Yt("debug-step-out",60117),debugStepOver:Yt("debug-step-over",60118),debugStop:Yt("debug-stop",60119),debug:Yt("debug",60120),deviceCameraVideo:Yt("device-camera-video",60121),deviceCamera:Yt("device-camera",60122),deviceMobile:Yt("device-mobile",60123),diffAdded:Yt("diff-added",60124),diffIgnored:Yt("diff-ignored",60125),diffModified:Yt("diff-modified",60126),diffRemoved:Yt("diff-removed",60127),diffRenamed:Yt("diff-renamed",60128),diff:Yt("diff",60129),diffSidebyside:Yt("diff-sidebyside",60129),discard:Yt("discard",60130),editorLayout:Yt("editor-layout",60131),emptyWindow:Yt("empty-window",60132),exclude:Yt("exclude",60133),extensions:Yt("extensions",60134),eyeClosed:Yt("eye-closed",60135),fileBinary:Yt("file-binary",60136),fileCode:Yt("file-code",60137),fileMedia:Yt("file-media",60138),filePdf:Yt("file-pdf",60139),fileSubmodule:Yt("file-submodule",60140),fileSymlinkDirectory:Yt("file-symlink-directory",60141),fileSymlinkFile:Yt("file-symlink-file",60142),fileZip:Yt("file-zip",60143),files:Yt("files",60144),filter:Yt("filter",60145),flame:Yt("flame",60146),foldDown:Yt("fold-down",60147),foldUp:Yt("fold-up",60148),fold:Yt("fold",60149),folderActive:Yt("folder-active",60150),folderOpened:Yt("folder-opened",60151),gear:Yt("gear",60152),gift:Yt("gift",60153),gistSecret:Yt("gist-secret",60154),gist:Yt("gist",60155),gitCommit:Yt("git-commit",60156),gitCompare:Yt("git-compare",60157),compareChanges:Yt("compare-changes",60157),gitMerge:Yt("git-merge",60158),githubAction:Yt("github-action",60159),githubAlt:Yt("github-alt",60160),globe:Yt("globe",60161),grabber:Yt("grabber",60162),graph:Yt("graph",60163),gripper:Yt("gripper",60164),heart:Yt("heart",60165),home:Yt("home",60166),horizontalRule:Yt("horizontal-rule",60167),hubot:Yt("hubot",60168),inbox:Yt("inbox",60169),issueReopened:Yt("issue-reopened",60171),issues:Yt("issues",60172),italic:Yt("italic",60173),jersey:Yt("jersey",60174),json:Yt("json",60175),kebabVertical:Yt("kebab-vertical",60176),key:Yt("key",60177),law:Yt("law",60178),lightbulbAutofix:Yt("lightbulb-autofix",60179),linkExternal:Yt("link-external",60180),link:Yt("link",60181),listOrdered:Yt("list-ordered",60182),listUnordered:Yt("list-unordered",60183),liveShare:Yt("live-share",60184),loading:Yt("loading",60185),location:Yt("location",60186),mailRead:Yt("mail-read",60187),mail:Yt("mail",60188),markdown:Yt("markdown",60189),megaphone:Yt("megaphone",60190),mention:Yt("mention",60191),milestone:Yt("milestone",60192),gitPullRequestMilestone:Yt("git-pull-request-milestone",60192),mortarBoard:Yt("mortar-board",60193),move:Yt("move",60194),multipleWindows:Yt("multiple-windows",60195),mute:Yt("mute",60196),noNewline:Yt("no-newline",60197),note:Yt("note",60198),octoface:Yt("octoface",60199),openPreview:Yt("open-preview",60200),package:Yt("package",60201),paintcan:Yt("paintcan",60202),pin:Yt("pin",60203),play:Yt("play",60204),run:Yt("run",60204),plug:Yt("plug",60205),preserveCase:Yt("preserve-case",60206),preview:Yt("preview",60207),project:Yt("project",60208),pulse:Yt("pulse",60209),question:Yt("question",60210),quote:Yt("quote",60211),radioTower:Yt("radio-tower",60212),reactions:Yt("reactions",60213),references:Yt("references",60214),refresh:Yt("refresh",60215),regex:Yt("regex",60216),remoteExplorer:Yt("remote-explorer",60217),remote:Yt("remote",60218),remove:Yt("remove",60219),replaceAll:Yt("replace-all",60220),replace:Yt("replace",60221),repoClone:Yt("repo-clone",60222),repoForcePush:Yt("repo-force-push",60223),repoPull:Yt("repo-pull",60224),repoPush:Yt("repo-push",60225),report:Yt("report",60226),requestChanges:Yt("request-changes",60227),rocket:Yt("rocket",60228),rootFolderOpened:Yt("root-folder-opened",60229),rootFolder:Yt("root-folder",60230),rss:Yt("rss",60231),ruby:Yt("ruby",60232),saveAll:Yt("save-all",60233),saveAs:Yt("save-as",60234),save:Yt("save",60235),screenFull:Yt("screen-full",60236),screenNormal:Yt("screen-normal",60237),searchStop:Yt("search-stop",60238),server:Yt("server",60240),settingsGear:Yt("settings-gear",60241),settings:Yt("settings",60242),shield:Yt("shield",60243),smiley:Yt("smiley",60244),sortPrecedence:Yt("sort-precedence",60245),splitHorizontal:Yt("split-horizontal",60246),splitVertical:Yt("split-vertical",60247),squirrel:Yt("squirrel",60248),starFull:Yt("star-full",60249),starHalf:Yt("star-half",60250),symbolClass:Yt("symbol-class",60251),symbolColor:Yt("symbol-color",60252),symbolConstant:Yt("symbol-constant",60253),symbolEnumMember:Yt("symbol-enum-member",60254),symbolField:Yt("symbol-field",60255),symbolFile:Yt("symbol-file",60256),symbolInterface:Yt("symbol-interface",60257),symbolKeyword:Yt("symbol-keyword",60258),symbolMisc:Yt("symbol-misc",60259),symbolOperator:Yt("symbol-operator",60260),symbolProperty:Yt("symbol-property",60261),wrench:Yt("wrench",60261),wrenchSubaction:Yt("wrench-subaction",60261),symbolSnippet:Yt("symbol-snippet",60262),tasklist:Yt("tasklist",60263),telescope:Yt("telescope",60264),textSize:Yt("text-size",60265),threeBars:Yt("three-bars",60266),thumbsdown:Yt("thumbsdown",60267),thumbsup:Yt("thumbsup",60268),tools:Yt("tools",60269),triangleDown:Yt("triangle-down",60270),triangleLeft:Yt("triangle-left",60271),triangleRight:Yt("triangle-right",60272),triangleUp:Yt("triangle-up",60273),twitter:Yt("twitter",60274),unfold:Yt("unfold",60275),unlock:Yt("unlock",60276),unmute:Yt("unmute",60277),unverified:Yt("unverified",60278),verified:Yt("verified",60279),versions:Yt("versions",60280),vmActive:Yt("vm-active",60281),vmOutline:Yt("vm-outline",60282),vmRunning:Yt("vm-running",60283),watch:Yt("watch",60284),whitespace:Yt("whitespace",60285),wholeWord:Yt("whole-word",60286),window:Yt("window",60287),wordWrap:Yt("word-wrap",60288),zoomIn:Yt("zoom-in",60289),zoomOut:Yt("zoom-out",60290),listFilter:Yt("list-filter",60291),listFlat:Yt("list-flat",60292),listSelection:Yt("list-selection",60293),selection:Yt("selection",60293),listTree:Yt("list-tree",60294),debugBreakpointFunctionUnverified:Yt("debug-breakpoint-function-unverified",60295),debugBreakpointFunction:Yt("debug-breakpoint-function",60296),debugBreakpointFunctionDisabled:Yt("debug-breakpoint-function-disabled",60296),debugStackframeActive:Yt("debug-stackframe-active",60297),circleSmallFilled:Yt("circle-small-filled",60298),debugStackframeDot:Yt("debug-stackframe-dot",60298),terminalDecorationMark:Yt("terminal-decoration-mark",60298),debugStackframe:Yt("debug-stackframe",60299),debugStackframeFocused:Yt("debug-stackframe-focused",60299),debugBreakpointUnsupported:Yt("debug-breakpoint-unsupported",60300),symbolString:Yt("symbol-string",60301),debugReverseContinue:Yt("debug-reverse-continue",60302),debugStepBack:Yt("debug-step-back",60303),debugRestartFrame:Yt("debug-restart-frame",60304),debugAlt:Yt("debug-alt",60305),callIncoming:Yt("call-incoming",60306),callOutgoing:Yt("call-outgoing",60307),menu:Yt("menu",60308),expandAll:Yt("expand-all",60309),feedback:Yt("feedback",60310),gitPullRequestReviewer:Yt("git-pull-request-reviewer",60310),groupByRefType:Yt("group-by-ref-type",60311),ungroupByRefType:Yt("ungroup-by-ref-type",60312),account:Yt("account",60313),gitPullRequestAssignee:Yt("git-pull-request-assignee",60313),bellDot:Yt("bell-dot",60314),debugConsole:Yt("debug-console",60315),library:Yt("library",60316),output:Yt("output",60317),runAll:Yt("run-all",60318),syncIgnored:Yt("sync-ignored",60319),pinned:Yt("pinned",60320),githubInverted:Yt("github-inverted",60321),serverProcess:Yt("server-process",60322),serverEnvironment:Yt("server-environment",60323),pass:Yt("pass",60324),issueClosed:Yt("issue-closed",60324),stopCircle:Yt("stop-circle",60325),playCircle:Yt("play-circle",60326),record:Yt("record",60327),debugAltSmall:Yt("debug-alt-small",60328),vmConnect:Yt("vm-connect",60329),cloud:Yt("cloud",60330),merge:Yt("merge",60331),export:Yt("export",60332),graphLeft:Yt("graph-left",60333),magnet:Yt("magnet",60334),notebook:Yt("notebook",60335),redo:Yt("redo",60336),checkAll:Yt("check-all",60337),pinnedDirty:Yt("pinned-dirty",60338),passFilled:Yt("pass-filled",60339),circleLargeFilled:Yt("circle-large-filled",60340),circleLarge:Yt("circle-large",60341),circleLargeOutline:Yt("circle-large-outline",60341),combine:Yt("combine",60342),gather:Yt("gather",60342),table:Yt("table",60343),variableGroup:Yt("variable-group",60344),typeHierarchy:Yt("type-hierarchy",60345),typeHierarchySub:Yt("type-hierarchy-sub",60346),typeHierarchySuper:Yt("type-hierarchy-super",60347),gitPullRequestCreate:Yt("git-pull-request-create",60348),runAbove:Yt("run-above",60349),runBelow:Yt("run-below",60350),notebookTemplate:Yt("notebook-template",60351),debugRerun:Yt("debug-rerun",60352),workspaceTrusted:Yt("workspace-trusted",60353),workspaceUntrusted:Yt("workspace-untrusted",60354),workspaceUnknown:Yt("workspace-unknown",60355),terminalCmd:Yt("terminal-cmd",60356),terminalDebian:Yt("terminal-debian",60357),terminalLinux:Yt("terminal-linux",60358),terminalPowershell:Yt("terminal-powershell",60359),terminalTmux:Yt("terminal-tmux",60360),terminalUbuntu:Yt("terminal-ubuntu",60361),terminalBash:Yt("terminal-bash",60362),arrowSwap:Yt("arrow-swap",60363),copy:Yt("copy",60364),personAdd:Yt("person-add",60365),filterFilled:Yt("filter-filled",60366),wand:Yt("wand",60367),debugLineByLine:Yt("debug-line-by-line",60368),inspect:Yt("inspect",60369),layers:Yt("layers",60370),layersDot:Yt("layers-dot",60371),layersActive:Yt("layers-active",60372),compass:Yt("compass",60373),compassDot:Yt("compass-dot",60374),compassActive:Yt("compass-active",60375),azure:Yt("azure",60376),issueDraft:Yt("issue-draft",60377),gitPullRequestClosed:Yt("git-pull-request-closed",60378),gitPullRequestDraft:Yt("git-pull-request-draft",60379),debugAll:Yt("debug-all",60380),debugCoverage:Yt("debug-coverage",60381),runErrors:Yt("run-errors",60382),folderLibrary:Yt("folder-library",60383),debugContinueSmall:Yt("debug-continue-small",60384),beakerStop:Yt("beaker-stop",60385),graphLine:Yt("graph-line",60386),graphScatter:Yt("graph-scatter",60387),pieChart:Yt("pie-chart",60388),bracket:Yt("bracket",60175),bracketDot:Yt("bracket-dot",60389),bracketError:Yt("bracket-error",60390),lockSmall:Yt("lock-small",60391),azureDevops:Yt("azure-devops",60392),verifiedFilled:Yt("verified-filled",60393),newline:Yt("newline",60394),layout:Yt("layout",60395),layoutActivitybarLeft:Yt("layout-activitybar-left",60396),layoutActivitybarRight:Yt("layout-activitybar-right",60397),layoutPanelLeft:Yt("layout-panel-left",60398),layoutPanelCenter:Yt("layout-panel-center",60399),layoutPanelJustify:Yt("layout-panel-justify",60400),layoutPanelRight:Yt("layout-panel-right",60401),layoutPanel:Yt("layout-panel",60402),layoutSidebarLeft:Yt("layout-sidebar-left",60403),layoutSidebarRight:Yt("layout-sidebar-right",60404),layoutStatusbar:Yt("layout-statusbar",60405),layoutMenubar:Yt("layout-menubar",60406),layoutCentered:Yt("layout-centered",60407),target:Yt("target",60408),indent:Yt("indent",60409),recordSmall:Yt("record-small",60410),errorSmall:Yt("error-small",60411),terminalDecorationError:Yt("terminal-decoration-error",60411),arrowCircleDown:Yt("arrow-circle-down",60412),arrowCircleLeft:Yt("arrow-circle-left",60413),arrowCircleRight:Yt("arrow-circle-right",60414),arrowCircleUp:Yt("arrow-circle-up",60415),layoutSidebarRightOff:Yt("layout-sidebar-right-off",60416),layoutPanelOff:Yt("layout-panel-off",60417),layoutSidebarLeftOff:Yt("layout-sidebar-left-off",60418),blank:Yt("blank",60419),heartFilled:Yt("heart-filled",60420),map:Yt("map",60421),mapHorizontal:Yt("map-horizontal",60421),foldHorizontal:Yt("fold-horizontal",60421),mapFilled:Yt("map-filled",60422),mapHorizontalFilled:Yt("map-horizontal-filled",60422),foldHorizontalFilled:Yt("fold-horizontal-filled",60422),circleSmall:Yt("circle-small",60423),bellSlash:Yt("bell-slash",60424),bellSlashDot:Yt("bell-slash-dot",60425),commentUnresolved:Yt("comment-unresolved",60426),gitPullRequestGoToChanges:Yt("git-pull-request-go-to-changes",60427),gitPullRequestNewChanges:Yt("git-pull-request-new-changes",60428),searchFuzzy:Yt("search-fuzzy",60429),commentDraft:Yt("comment-draft",60430),send:Yt("send",60431),sparkle:Yt("sparkle",60432),insert:Yt("insert",60433),mic:Yt("mic",60434),thumbsdownFilled:Yt("thumbsdown-filled",60435),thumbsupFilled:Yt("thumbsup-filled",60436),coffee:Yt("coffee",60437),snake:Yt("snake",60438),game:Yt("game",60439),vr:Yt("vr",60440),chip:Yt("chip",60441),piano:Yt("piano",60442),music:Yt("music",60443),micFilled:Yt("mic-filled",60444),repoFetch:Yt("repo-fetch",60445),copilot:Yt("copilot",60446),lightbulbSparkle:Yt("lightbulb-sparkle",60447),robot:Yt("robot",60448),sparkleFilled:Yt("sparkle-filled",60449),diffSingle:Yt("diff-single",60450),diffMultiple:Yt("diff-multiple",60451),surroundWith:Yt("surround-with",60452),share:Yt("share",60453),gitStash:Yt("git-stash",60454),gitStashApply:Yt("git-stash-apply",60455),gitStashPop:Yt("git-stash-pop",60456),vscode:Yt("vscode",60457),vscodeInsiders:Yt("vscode-insiders",60458),codeOss:Yt("code-oss",60459),runCoverage:Yt("run-coverage",60460),runAllCoverage:Yt("run-all-coverage",60461),coverage:Yt("coverage",60462),githubProject:Yt("github-project",60463),mapVertical:Yt("map-vertical",60464),foldVertical:Yt("fold-vertical",60464),mapVerticalFilled:Yt("map-vertical-filled",60465),foldVerticalFilled:Yt("fold-vertical-filled",60465),goToSearch:Yt("go-to-search",60466),percentage:Yt("percentage",60467),sortPercentage:Yt("sort-percentage",60467),attach:Yt("attach",60468),goToEditingSession:Yt("go-to-editing-session",60469),editSession:Yt("edit-session",60470),codeReview:Yt("code-review",60471),copilotWarning:Yt("copilot-warning",60472),python:Yt("python",60473),copilotLarge:Yt("copilot-large",60474),copilotWarningLarge:Yt("copilot-warning-large",60475),keyboardTab:Yt("keyboard-tab",60476),copilotBlocked:Yt("copilot-blocked",60477),copilotNotConnected:Yt("copilot-not-connected",60478),flag:Yt("flag",60479),lightbulbEmpty:Yt("lightbulb-empty",60480),symbolMethodArrow:Yt("symbol-method-arrow",60481),copilotUnavailable:Yt("copilot-unavailable",60482),repoPinned:Yt("repo-pinned",60483),keyboardTabAbove:Yt("keyboard-tab-above",60484),keyboardTabBelow:Yt("keyboard-tab-below",60485),gitPullRequestDone:Yt("git-pull-request-done",60486),mcp:Yt("mcp",60487),extensionsLarge:Yt("extensions-large",60488),layoutPanelDock:Yt("layout-panel-dock",60489),layoutSidebarLeftDock:Yt("layout-sidebar-left-dock",60490),layoutSidebarRightDock:Yt("layout-sidebar-right-dock",60491),copilotInProgress:Yt("copilot-in-progress",60492),copilotError:Yt("copilot-error",60493),copilotSuccess:Yt("copilot-success",60494),chatSparkle:Yt("chat-sparkle",60495),searchSparkle:Yt("search-sparkle",60496),editSparkle:Yt("edit-sparkle",60497),copilotSnooze:Yt("copilot-snooze",60498),sendToRemoteAgent:Yt("send-to-remote-agent",60499),commentDiscussionSparkle:Yt("comment-discussion-sparkle",60500),chatSparkleWarning:Yt("chat-sparkle-warning",60501),chatSparkleError:Yt("chat-sparkle-error",60502),collection:Yt("collection",60503),newCollection:Yt("new-collection",60504),thinking:Yt("thinking",60505),build:Yt("build",60506),commentDiscussionQuote:Yt("comment-discussion-quote",60507),cursor:Yt("cursor",60508),eraser:Yt("eraser",60509),fileText:Yt("file-text",60510),gitLens:Yt("git-lens",60511),quotes:Yt("quotes",60512),rename:Yt("rename",60513),runWithDeps:Yt("run-with-deps",60514),debugConnected:Yt("debug-connected",60515),strikethrough:Yt("strikethrough",60516),openInProduct:Yt("open-in-product",60517),indexZero:Yt("index-zero",60518),agent:Yt("agent",60519),editCode:Yt("edit-code",60520),repoSelected:Yt("repo-selected",60521),skip:Yt("skip",60522),mergeInto:Yt("merge-into",60523),gitBranchChanges:Yt("git-branch-changes",60524),gitBranchStagedChanges:Yt("git-branch-staged-changes",60525),gitBranchConflicts:Yt("git-branch-conflicts",60526),gitBranch:Yt("git-branch",60527),gitBranchCreate:Yt("git-branch-create",60527),gitBranchDelete:Yt("git-branch-delete",60527),searchLarge:Yt("search-large",60528),terminalGitBash:Yt("terminal-git-bash",60529)},...{dialogError:Yt("dialog-error","error"),dialogWarning:Yt("dialog-warning","warning"),dialogInfo:Yt("dialog-info","info"),dialogClose:Yt("dialog-close","close"),treeItemExpanded:Yt("tree-item-expanded","chevron-down"),treeFilterOnTypeOn:Yt("tree-filter-on-type-on","list-filter"),treeFilterOnTypeOff:Yt("tree-filter-on-type-off","list-selection"),treeFilterClear:Yt("tree-filter-clear","close"),treeItemLoading:Yt("tree-item-loading","loading"),menuSelection:Yt("menu-selection","check"),menuSubmenu:Yt("menu-submenu","chevron-right"),menuBarMore:Yt("menubar-more","more"),scrollbarButtonLeft:Yt("scrollbar-button-left","triangle-left"),scrollbarButtonRight:Yt("scrollbar-button-right","triangle-right"),scrollbarButtonUp:Yt("scrollbar-button-up","triangle-up"),scrollbarButtonDown:Yt("scrollbar-button-down","triangle-down"),toolBarMore:Yt("toolbar-more","more"),quickInputBack:Yt("quick-input-back","arrow-left"),dropDownButton:Yt("drop-down-button",60084),symbolCustomColor:Yt("symbol-customcolor",60252),exportIcon:Yt("export",60332),workspaceUnspecified:Yt("workspace-unspecified",60355),newLine:Yt("newline",60394),thumbsDownFilled:Yt("thumbsdown-filled",60435),thumbsUpFilled:Yt("thumbsup-filled",60436),gitFetch:Yt("git-fetch",60445),lightbulbSparkleAutofix:Yt("lightbulb-sparkle-autofix",60447),debugBreakpointPending:Yt("debug-breakpoint-pending",60377)}};class tn extends S{get isResolved(){return this._isResolved}constructor(e,t,n){super(),this._registry=e,this._languageId=t,this._factory=n,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 e=await this._factory.tokenizationSupport;this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))}}class nn{constructor(e,t,n){this.offset=e,this.type=t,this.language=n,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}}var rn,sn,on,an,ln,un,cn,hn,dn,mn,gn,fn,pn,bn,yn,vn;(sn=rn||(rn={}))[sn.Increase=0]="Increase",sn[sn.Decrease=1]="Decrease",function(e){const t=new Map;t.set(0,en.symbolMethod),t.set(1,en.symbolFunction),t.set(2,en.symbolConstructor),t.set(3,en.symbolField),t.set(4,en.symbolVariable),t.set(5,en.symbolClass),t.set(6,en.symbolStruct),t.set(7,en.symbolInterface),t.set(8,en.symbolModule),t.set(9,en.symbolProperty),t.set(10,en.symbolEvent),t.set(11,en.symbolOperator),t.set(12,en.symbolUnit),t.set(13,en.symbolValue),t.set(15,en.symbolEnum),t.set(14,en.symbolConstant),t.set(15,en.symbolEnum),t.set(16,en.symbolEnumMember),t.set(17,en.symbolKeyword),t.set(28,en.symbolSnippet),t.set(18,en.symbolText),t.set(19,en.symbolColor),t.set(20,en.symbolFile),t.set(21,en.symbolReference),t.set(22,en.symbolCustomColor),t.set(23,en.symbolFolder),t.set(24,en.symbolTypeParameter),t.set(25,en.account),t.set(26,en.issues),t.set(27,en.tools),e.toIcon=function(e){let n=t.get(e);return n||(n=en.symbolProperty),n},e.toLabel=function(e){switch(e){case 0:return j(728,"Method");case 1:return j(729,"Function");case 2:return j(730,"Constructor");case 3:return j(731,"Field");case 4:return j(732,"Variable");case 5:return j(733,"Class");case 6:return j(734,"Struct");case 7:return j(735,"Interface");case 8:return j(736,"Module");case 9:return j(737,"Property");case 10:return j(738,"Event");case 11:return j(739,"Operator");case 12:return j(740,"Unit");case 13:return j(741,"Value");case 14:return j(742,"Constant");case 15:return j(743,"Enum");case 16:return j(744,"Enum Member");case 17:return j(745,"Keyword");case 18:return j(746,"Text");case 19:return j(747,"Color");case 20:return j(748,"File");case 21:return j(749,"Reference");case 22:return j(750,"Custom Color");case 23:return j(751,"Folder");case 24:return j(752,"Type Parameter");case 25:return j(753,"User");case 26:return j(754,"Issue");case 27:return j(755,"Tool");case 28:return j(756,"Snippet");default:return""}};const n=new Map;n.set("method",0),n.set("function",1),n.set("constructor",2),n.set("field",3),n.set("variable",4),n.set("class",5),n.set("struct",6),n.set("interface",7),n.set("module",8),n.set("property",9),n.set("event",10),n.set("operator",11),n.set("unit",12),n.set("value",13),n.set("constant",14),n.set("enum",15),n.set("enum-member",16),n.set("enumMember",16),n.set("keyword",17),n.set("snippet",28),n.set("text",18),n.set("color",19),n.set("file",20),n.set("reference",21),n.set("customcolor",22),n.set("folder",23),n.set("type-parameter",24),n.set("typeParameter",24),n.set("account",25),n.set("issue",26),n.set("tool",27),e.fromString=function(e,t){let r=n.get(e);return void 0!==r||t||(r=9),r}}(on||(on={})),(ln=an||(an={}))[ln.Automatic=0]="Automatic",ln[ln.Explicit=1]="Explicit",(cn=un||(un={}))[cn.Code=1]="Code",cn[cn.Label=2]="Label",(dn=hn||(hn={}))[dn.Accepted=0]="Accepted",dn[dn.Rejected=1]="Rejected",dn[dn.Ignored=2]="Ignored",(gn=mn||(mn={}))[gn.Automatic=0]="Automatic",gn[gn.PasteAs=1]="PasteAs",(pn=fn||(fn={}))[pn.Invoke=1]="Invoke",pn[pn.TriggerCharacter=2]="TriggerCharacter",pn[pn.ContentChange=3]="ContentChange",(yn=bn||(bn={}))[yn.Text=0]="Text",yn[yn.Read=1]="Read",yn[yn.Write=2]="Write",j(757,"array"),j(758,"boolean"),j(759,"class"),j(760,"constant"),j(761,"constructor"),j(762,"enumeration"),j(763,"enumeration member"),j(764,"event"),j(765,"field"),j(766,"file"),j(767,"function"),j(768,"interface"),j(769,"key"),j(770,"method"),j(771,"module"),j(772,"namespace"),j(773,"null"),j(774,"number"),j(775,"object"),j(776,"operator"),j(777,"package"),j(778,"property"),j(779,"string"),j(780,"struct"),j(781,"type parameter"),j(782,"variable"),function(e){const t=new Map;t.set(0,en.symbolFile),t.set(1,en.symbolModule),t.set(2,en.symbolNamespace),t.set(3,en.symbolPackage),t.set(4,en.symbolClass),t.set(5,en.symbolMethod),t.set(6,en.symbolProperty),t.set(7,en.symbolField),t.set(8,en.symbolConstructor),t.set(9,en.symbolEnum),t.set(10,en.symbolInterface),t.set(11,en.symbolFunction),t.set(12,en.symbolVariable),t.set(13,en.symbolConstant),t.set(14,en.symbolString),t.set(15,en.symbolNumber),t.set(16,en.symbolBoolean),t.set(17,en.symbolArray),t.set(18,en.symbolObject),t.set(19,en.symbolKey),t.set(20,en.symbolNull),t.set(21,en.symbolEnumMember),t.set(22,en.symbolStruct),t.set(23,en.symbolEvent),t.set(24,en.symbolOperator),t.set(25,en.symbolTypeParameter),e.toIcon=function(e){let n=t.get(e);return n||(n=en.symbolProperty),n};const n=new Map;n.set(0,20),n.set(1,8),n.set(2,8),n.set(3,8),n.set(4,5),n.set(5,0),n.set(6,9),n.set(7,3),n.set(8,2),n.set(9,15),n.set(10,7),n.set(11,1),n.set(12,4),n.set(13,14),n.set(14,18),n.set(15,13),n.set(16,13),n.set(17,13),n.set(18,13),n.set(19,17),n.set(20,13),n.set(21,16),n.set(22,6),n.set(23,10),n.set(24,11),n.set(25,24),e.toCompletionKind=function(e){let t=n.get(e);return void 0===t&&(t=20),t}}(vn||(vn={}));(i=class{static fromValue(e){switch(e){case"comment":return i.Comment;case"imports":return i.Imports;case"region":return i.Region}return new i(e)}constructor(e){this.value=e}}).Comment=new i("comment"),i.Imports=new i("imports"),i.Region=new i("region");var wn,Cn,_n,Ln,Sn,Nn,xn,En,An,kn,Rn,Tn,Mn,On,In,Pn,Fn,Vn,Dn,qn,Kn,$n,Bn,Un,jn,Wn,zn,Hn,Gn,Jn,Xn,Qn,Zn,Yn,er,tr,nr,rr,ir,sr,or,ar,lr,ur,cr,hr,dr,mr,gr,fr,pr,br,yr,vr,wr,Cr,_r,Lr,Sr,Nr,xr,Er,Ar,kr,Rr,Tr,Mr,Or,Ir,Pr,Fr,Vr,Dr,qr,Kr,$r,Br,Ur,jr,Wr,zr,Hr,Gr,Jr,Xr,Qr,Zr,Yr,ei,ti,ni,ri,ii,si;(Cn=wn||(wn={}))[Cn.AIGenerated=1]="AIGenerated",(Ln=_n||(_n={}))[Ln.Invoke=0]="Invoke",Ln[Ln.Automatic=1]="Automatic",(Sn||(Sn={})).is=function(e){return!(!e||"object"!=typeof e)&&"string"==typeof e.id&&"string"==typeof e.title},(xn=Nn||(Nn={}))[xn.Type=1]="Type",xn[xn.Parameter=2]="Parameter",new class{constructor(){this._tokenizationSupports=new Map,this._factories=new Map,this._onDidChange=new q,this.onDidChange=this._onDidChange.event,this._colorMap=null}handleChange(e){this._onDidChange.fire({changedLanguages:e,changedColorMap:!1})}register(e,t){return this._tokenizationSupports.set(e,t),this.handleChange([e]),w(()=>{this._tokenizationSupports.get(e)===t&&(this._tokenizationSupports.delete(e),this.handleChange([e]))})}get(e){return this._tokenizationSupports.get(e)||null}registerFactory(e,t){var n;null==(n=this._factories.get(e))||n.dispose();const r=new tn(this,e,t);return this._factories.set(e,r),w(()=>{const t=this._factories.get(e);t&&t===r&&(this._factories.delete(e),t.dispose())})}async getOrCreate(e){const t=this.get(e);if(t)return t;const n=this._factories.get(e);return!n||n.isResolved?null:(await n.resolve(),this.get(e))}isResolved(e){if(this.get(e))return!0;const t=this._factories.get(e);return!(t&&!t.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}},(An=En||(En={}))[An.Unknown=0]="Unknown",An[An.Disabled=1]="Disabled",An[An.Enabled=2]="Enabled",(Rn=kn||(kn={}))[Rn.Invoke=1]="Invoke",Rn[Rn.Auto=2]="Auto",(Mn=Tn||(Tn={}))[Mn.None=0]="None",Mn[Mn.KeepWhitespace=1]="KeepWhitespace",Mn[Mn.InsertAsSnippet=4]="InsertAsSnippet",(In=On||(On={}))[In.Method=0]="Method",In[In.Function=1]="Function",In[In.Constructor=2]="Constructor",In[In.Field=3]="Field",In[In.Variable=4]="Variable",In[In.Class=5]="Class",In[In.Struct=6]="Struct",In[In.Interface=7]="Interface",In[In.Module=8]="Module",In[In.Property=9]="Property",In[In.Event=10]="Event",In[In.Operator=11]="Operator",In[In.Unit=12]="Unit",In[In.Value=13]="Value",In[In.Constant=14]="Constant",In[In.Enum=15]="Enum",In[In.EnumMember=16]="EnumMember",In[In.Keyword=17]="Keyword",In[In.Text=18]="Text",In[In.Color=19]="Color",In[In.File=20]="File",In[In.Reference=21]="Reference",In[In.Customcolor=22]="Customcolor",In[In.Folder=23]="Folder",In[In.TypeParameter=24]="TypeParameter",In[In.User=25]="User",In[In.Issue=26]="Issue",In[In.Tool=27]="Tool",In[In.Snippet=28]="Snippet",(Fn=Pn||(Pn={}))[Fn.Deprecated=1]="Deprecated",(Dn=Vn||(Vn={}))[Dn.Invoke=0]="Invoke",Dn[Dn.TriggerCharacter=1]="TriggerCharacter",Dn[Dn.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions",(Kn=qn||(qn={}))[Kn.EXACT=0]="EXACT",Kn[Kn.ABOVE=1]="ABOVE",Kn[Kn.BELOW=2]="BELOW",(Bn=$n||($n={}))[Bn.NotSet=0]="NotSet",Bn[Bn.ContentFlush=1]="ContentFlush",Bn[Bn.RecoverFromMarkers=2]="RecoverFromMarkers",Bn[Bn.Explicit=3]="Explicit",Bn[Bn.Paste=4]="Paste",Bn[Bn.Undo=5]="Undo",Bn[Bn.Redo=6]="Redo",(jn=Un||(Un={}))[jn.LF=1]="LF",jn[jn.CRLF=2]="CRLF",function(e){e[e.Text=0]="Text",e[e.Read=1]="Read",e[e.Write=2]="Write"}(Wn||(Wn={})),(Hn=zn||(zn={}))[Hn.None=0]="None",Hn[Hn.Keep=1]="Keep",Hn[Hn.Brackets=2]="Brackets",Hn[Hn.Advanced=3]="Advanced",Hn[Hn.Full=4]="Full",(Jn=Gn||(Gn={}))[Jn.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",Jn[Jn.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",Jn[Jn.accessibilitySupport=2]="accessibilitySupport",Jn[Jn.accessibilityPageSize=3]="accessibilityPageSize",Jn[Jn.allowOverflow=4]="allowOverflow",Jn[Jn.allowVariableLineHeights=5]="allowVariableLineHeights",Jn[Jn.allowVariableFonts=6]="allowVariableFonts",Jn[Jn.allowVariableFontsInAccessibilityMode=7]="allowVariableFontsInAccessibilityMode",Jn[Jn.ariaLabel=8]="ariaLabel",Jn[Jn.ariaRequired=9]="ariaRequired",Jn[Jn.autoClosingBrackets=10]="autoClosingBrackets",Jn[Jn.autoClosingComments=11]="autoClosingComments",Jn[Jn.screenReaderAnnounceInlineSuggestion=12]="screenReaderAnnounceInlineSuggestion",Jn[Jn.autoClosingDelete=13]="autoClosingDelete",Jn[Jn.autoClosingOvertype=14]="autoClosingOvertype",Jn[Jn.autoClosingQuotes=15]="autoClosingQuotes",Jn[Jn.autoIndent=16]="autoIndent",Jn[Jn.autoIndentOnPaste=17]="autoIndentOnPaste",Jn[Jn.autoIndentOnPasteWithinString=18]="autoIndentOnPasteWithinString",Jn[Jn.automaticLayout=19]="automaticLayout",Jn[Jn.autoSurround=20]="autoSurround",Jn[Jn.bracketPairColorization=21]="bracketPairColorization",Jn[Jn.guides=22]="guides",Jn[Jn.codeLens=23]="codeLens",Jn[Jn.codeLensFontFamily=24]="codeLensFontFamily",Jn[Jn.codeLensFontSize=25]="codeLensFontSize",Jn[Jn.colorDecorators=26]="colorDecorators",Jn[Jn.colorDecoratorsLimit=27]="colorDecoratorsLimit",Jn[Jn.columnSelection=28]="columnSelection",Jn[Jn.comments=29]="comments",Jn[Jn.contextmenu=30]="contextmenu",Jn[Jn.copyWithSyntaxHighlighting=31]="copyWithSyntaxHighlighting",Jn[Jn.cursorBlinking=32]="cursorBlinking",Jn[Jn.cursorSmoothCaretAnimation=33]="cursorSmoothCaretAnimation",Jn[Jn.cursorStyle=34]="cursorStyle",Jn[Jn.cursorSurroundingLines=35]="cursorSurroundingLines",Jn[Jn.cursorSurroundingLinesStyle=36]="cursorSurroundingLinesStyle",Jn[Jn.cursorWidth=37]="cursorWidth",Jn[Jn.cursorHeight=38]="cursorHeight",Jn[Jn.disableLayerHinting=39]="disableLayerHinting",Jn[Jn.disableMonospaceOptimizations=40]="disableMonospaceOptimizations",Jn[Jn.domReadOnly=41]="domReadOnly",Jn[Jn.dragAndDrop=42]="dragAndDrop",Jn[Jn.dropIntoEditor=43]="dropIntoEditor",Jn[Jn.editContext=44]="editContext",Jn[Jn.emptySelectionClipboard=45]="emptySelectionClipboard",Jn[Jn.experimentalGpuAcceleration=46]="experimentalGpuAcceleration",Jn[Jn.experimentalWhitespaceRendering=47]="experimentalWhitespaceRendering",Jn[Jn.extraEditorClassName=48]="extraEditorClassName",Jn[Jn.fastScrollSensitivity=49]="fastScrollSensitivity",Jn[Jn.find=50]="find",Jn[Jn.fixedOverflowWidgets=51]="fixedOverflowWidgets",Jn[Jn.folding=52]="folding",Jn[Jn.foldingStrategy=53]="foldingStrategy",Jn[Jn.foldingHighlight=54]="foldingHighlight",Jn[Jn.foldingImportsByDefault=55]="foldingImportsByDefault",Jn[Jn.foldingMaximumRegions=56]="foldingMaximumRegions",Jn[Jn.unfoldOnClickAfterEndOfLine=57]="unfoldOnClickAfterEndOfLine",Jn[Jn.fontFamily=58]="fontFamily",Jn[Jn.fontInfo=59]="fontInfo",Jn[Jn.fontLigatures=60]="fontLigatures",Jn[Jn.fontSize=61]="fontSize",Jn[Jn.fontWeight=62]="fontWeight",Jn[Jn.fontVariations=63]="fontVariations",Jn[Jn.formatOnPaste=64]="formatOnPaste",Jn[Jn.formatOnType=65]="formatOnType",Jn[Jn.glyphMargin=66]="glyphMargin",Jn[Jn.gotoLocation=67]="gotoLocation",Jn[Jn.hideCursorInOverviewRuler=68]="hideCursorInOverviewRuler",Jn[Jn.hover=69]="hover",Jn[Jn.inDiffEditor=70]="inDiffEditor",Jn[Jn.inlineSuggest=71]="inlineSuggest",Jn[Jn.letterSpacing=72]="letterSpacing",Jn[Jn.lightbulb=73]="lightbulb",Jn[Jn.lineDecorationsWidth=74]="lineDecorationsWidth",Jn[Jn.lineHeight=75]="lineHeight",Jn[Jn.lineNumbers=76]="lineNumbers",Jn[Jn.lineNumbersMinChars=77]="lineNumbersMinChars",Jn[Jn.linkedEditing=78]="linkedEditing",Jn[Jn.links=79]="links",Jn[Jn.matchBrackets=80]="matchBrackets",Jn[Jn.minimap=81]="minimap",Jn[Jn.mouseStyle=82]="mouseStyle",Jn[Jn.mouseWheelScrollSensitivity=83]="mouseWheelScrollSensitivity",Jn[Jn.mouseWheelZoom=84]="mouseWheelZoom",Jn[Jn.multiCursorMergeOverlapping=85]="multiCursorMergeOverlapping",Jn[Jn.multiCursorModifier=86]="multiCursorModifier",Jn[Jn.mouseMiddleClickAction=87]="mouseMiddleClickAction",Jn[Jn.multiCursorPaste=88]="multiCursorPaste",Jn[Jn.multiCursorLimit=89]="multiCursorLimit",Jn[Jn.occurrencesHighlight=90]="occurrencesHighlight",Jn[Jn.occurrencesHighlightDelay=91]="occurrencesHighlightDelay",Jn[Jn.overtypeCursorStyle=92]="overtypeCursorStyle",Jn[Jn.overtypeOnPaste=93]="overtypeOnPaste",Jn[Jn.overviewRulerBorder=94]="overviewRulerBorder",Jn[Jn.overviewRulerLanes=95]="overviewRulerLanes",Jn[Jn.padding=96]="padding",Jn[Jn.pasteAs=97]="pasteAs",Jn[Jn.parameterHints=98]="parameterHints",Jn[Jn.peekWidgetDefaultFocus=99]="peekWidgetDefaultFocus",Jn[Jn.placeholder=100]="placeholder",Jn[Jn.definitionLinkOpensInPeek=101]="definitionLinkOpensInPeek",Jn[Jn.quickSuggestions=102]="quickSuggestions",Jn[Jn.quickSuggestionsDelay=103]="quickSuggestionsDelay",Jn[Jn.readOnly=104]="readOnly",Jn[Jn.readOnlyMessage=105]="readOnlyMessage",Jn[Jn.renameOnType=106]="renameOnType",Jn[Jn.renderRichScreenReaderContent=107]="renderRichScreenReaderContent",Jn[Jn.renderControlCharacters=108]="renderControlCharacters",Jn[Jn.renderFinalNewline=109]="renderFinalNewline",Jn[Jn.renderLineHighlight=110]="renderLineHighlight",Jn[Jn.renderLineHighlightOnlyWhenFocus=111]="renderLineHighlightOnlyWhenFocus",Jn[Jn.renderValidationDecorations=112]="renderValidationDecorations",Jn[Jn.renderWhitespace=113]="renderWhitespace",Jn[Jn.revealHorizontalRightPadding=114]="revealHorizontalRightPadding",Jn[Jn.roundedSelection=115]="roundedSelection",Jn[Jn.rulers=116]="rulers",Jn[Jn.scrollbar=117]="scrollbar",Jn[Jn.scrollBeyondLastColumn=118]="scrollBeyondLastColumn",Jn[Jn.scrollBeyondLastLine=119]="scrollBeyondLastLine",Jn[Jn.scrollPredominantAxis=120]="scrollPredominantAxis",Jn[Jn.selectionClipboard=121]="selectionClipboard",Jn[Jn.selectionHighlight=122]="selectionHighlight",Jn[Jn.selectionHighlightMaxLength=123]="selectionHighlightMaxLength",Jn[Jn.selectionHighlightMultiline=124]="selectionHighlightMultiline",Jn[Jn.selectOnLineNumbers=125]="selectOnLineNumbers",Jn[Jn.showFoldingControls=126]="showFoldingControls",Jn[Jn.showUnused=127]="showUnused",Jn[Jn.snippetSuggestions=128]="snippetSuggestions",Jn[Jn.smartSelect=129]="smartSelect",Jn[Jn.smoothScrolling=130]="smoothScrolling",Jn[Jn.stickyScroll=131]="stickyScroll",Jn[Jn.stickyTabStops=132]="stickyTabStops",Jn[Jn.stopRenderingLineAfter=133]="stopRenderingLineAfter",Jn[Jn.suggest=134]="suggest",Jn[Jn.suggestFontSize=135]="suggestFontSize",Jn[Jn.suggestLineHeight=136]="suggestLineHeight",Jn[Jn.suggestOnTriggerCharacters=137]="suggestOnTriggerCharacters",Jn[Jn.suggestSelection=138]="suggestSelection",Jn[Jn.tabCompletion=139]="tabCompletion",Jn[Jn.tabIndex=140]="tabIndex",Jn[Jn.trimWhitespaceOnDelete=141]="trimWhitespaceOnDelete",Jn[Jn.unicodeHighlighting=142]="unicodeHighlighting",Jn[Jn.unusualLineTerminators=143]="unusualLineTerminators",Jn[Jn.useShadowDOM=144]="useShadowDOM",Jn[Jn.useTabStops=145]="useTabStops",Jn[Jn.wordBreak=146]="wordBreak",Jn[Jn.wordSegmenterLocales=147]="wordSegmenterLocales",Jn[Jn.wordSeparators=148]="wordSeparators",Jn[Jn.wordWrap=149]="wordWrap",Jn[Jn.wordWrapBreakAfterCharacters=150]="wordWrapBreakAfterCharacters",Jn[Jn.wordWrapBreakBeforeCharacters=151]="wordWrapBreakBeforeCharacters",Jn[Jn.wordWrapColumn=152]="wordWrapColumn",Jn[Jn.wordWrapOverride1=153]="wordWrapOverride1",Jn[Jn.wordWrapOverride2=154]="wordWrapOverride2",Jn[Jn.wrappingIndent=155]="wrappingIndent",Jn[Jn.wrappingStrategy=156]="wrappingStrategy",Jn[Jn.showDeprecated=157]="showDeprecated",Jn[Jn.inertialScroll=158]="inertialScroll",Jn[Jn.inlayHints=159]="inlayHints",Jn[Jn.wrapOnEscapedLineFeeds=160]="wrapOnEscapedLineFeeds",Jn[Jn.effectiveCursorStyle=161]="effectiveCursorStyle",Jn[Jn.editorClassName=162]="editorClassName",Jn[Jn.pixelRatio=163]="pixelRatio",Jn[Jn.tabFocusMode=164]="tabFocusMode",Jn[Jn.layoutInfo=165]="layoutInfo",Jn[Jn.wrappingInfo=166]="wrappingInfo",Jn[Jn.defaultColorDecorators=167]="defaultColorDecorators",Jn[Jn.colorDecoratorsActivatedOn=168]="colorDecoratorsActivatedOn",Jn[Jn.inlineCompletionsAccessibilityVerbose=169]="inlineCompletionsAccessibilityVerbose",Jn[Jn.effectiveEditContext=170]="effectiveEditContext",Jn[Jn.scrollOnMiddleClick=171]="scrollOnMiddleClick",Jn[Jn.effectiveAllowVariableFonts=172]="effectiveAllowVariableFonts",(Qn=Xn||(Xn={}))[Qn.TextDefined=0]="TextDefined",Qn[Qn.LF=1]="LF",Qn[Qn.CRLF=2]="CRLF",(Yn=Zn||(Zn={}))[Yn.LF=0]="LF",Yn[Yn.CRLF=1]="CRLF",(tr=er||(er={}))[tr.Left=1]="Left",tr[tr.Center=2]="Center",tr[tr.Right=3]="Right",function(e){e[e.Increase=0]="Increase",e[e.Decrease=1]="Decrease"}(nr||(nr={})),(ir=rr||(rr={}))[ir.None=0]="None",ir[ir.Indent=1]="Indent",ir[ir.IndentOutdent=2]="IndentOutdent",ir[ir.Outdent=3]="Outdent",(or=sr||(sr={}))[or.Both=0]="Both",or[or.Right=1]="Right",or[or.Left=2]="Left",or[or.None=3]="None",function(e){e[e.Type=1]="Type",e[e.Parameter=2]="Parameter"}(ar||(ar={})),function(e){e[e.Accepted=0]="Accepted",e[e.Rejected=1]="Rejected",e[e.Ignored=2]="Ignored"}(lr||(lr={})),function(e){e[e.Code=1]="Code",e[e.Label=2]="Label"}(ur||(ur={})),function(e){e[e.Automatic=0]="Automatic",e[e.Explicit=1]="Explicit"}(cr||(cr={})),(dr=hr||(hr={}))[dr.DependsOnKbLayout=-1]="DependsOnKbLayout",dr[dr.Unknown=0]="Unknown",dr[dr.Backspace=1]="Backspace",dr[dr.Tab=2]="Tab",dr[dr.Enter=3]="Enter",dr[dr.Shift=4]="Shift",dr[dr.Ctrl=5]="Ctrl",dr[dr.Alt=6]="Alt",dr[dr.PauseBreak=7]="PauseBreak",dr[dr.CapsLock=8]="CapsLock",dr[dr.Escape=9]="Escape",dr[dr.Space=10]="Space",dr[dr.PageUp=11]="PageUp",dr[dr.PageDown=12]="PageDown",dr[dr.End=13]="End",dr[dr.Home=14]="Home",dr[dr.LeftArrow=15]="LeftArrow",dr[dr.UpArrow=16]="UpArrow",dr[dr.RightArrow=17]="RightArrow",dr[dr.DownArrow=18]="DownArrow",dr[dr.Insert=19]="Insert",dr[dr.Delete=20]="Delete",dr[dr.Digit0=21]="Digit0",dr[dr.Digit1=22]="Digit1",dr[dr.Digit2=23]="Digit2",dr[dr.Digit3=24]="Digit3",dr[dr.Digit4=25]="Digit4",dr[dr.Digit5=26]="Digit5",dr[dr.Digit6=27]="Digit6",dr[dr.Digit7=28]="Digit7",dr[dr.Digit8=29]="Digit8",dr[dr.Digit9=30]="Digit9",dr[dr.KeyA=31]="KeyA",dr[dr.KeyB=32]="KeyB",dr[dr.KeyC=33]="KeyC",dr[dr.KeyD=34]="KeyD",dr[dr.KeyE=35]="KeyE",dr[dr.KeyF=36]="KeyF",dr[dr.KeyG=37]="KeyG",dr[dr.KeyH=38]="KeyH",dr[dr.KeyI=39]="KeyI",dr[dr.KeyJ=40]="KeyJ",dr[dr.KeyK=41]="KeyK",dr[dr.KeyL=42]="KeyL",dr[dr.KeyM=43]="KeyM",dr[dr.KeyN=44]="KeyN",dr[dr.KeyO=45]="KeyO",dr[dr.KeyP=46]="KeyP",dr[dr.KeyQ=47]="KeyQ",dr[dr.KeyR=48]="KeyR",dr[dr.KeyS=49]="KeyS",dr[dr.KeyT=50]="KeyT",dr[dr.KeyU=51]="KeyU",dr[dr.KeyV=52]="KeyV",dr[dr.KeyW=53]="KeyW",dr[dr.KeyX=54]="KeyX",dr[dr.KeyY=55]="KeyY",dr[dr.KeyZ=56]="KeyZ",dr[dr.Meta=57]="Meta",dr[dr.ContextMenu=58]="ContextMenu",dr[dr.F1=59]="F1",dr[dr.F2=60]="F2",dr[dr.F3=61]="F3",dr[dr.F4=62]="F4",dr[dr.F5=63]="F5",dr[dr.F6=64]="F6",dr[dr.F7=65]="F7",dr[dr.F8=66]="F8",dr[dr.F9=67]="F9",dr[dr.F10=68]="F10",dr[dr.F11=69]="F11",dr[dr.F12=70]="F12",dr[dr.F13=71]="F13",dr[dr.F14=72]="F14",dr[dr.F15=73]="F15",dr[dr.F16=74]="F16",dr[dr.F17=75]="F17",dr[dr.F18=76]="F18",dr[dr.F19=77]="F19",dr[dr.F20=78]="F20",dr[dr.F21=79]="F21",dr[dr.F22=80]="F22",dr[dr.F23=81]="F23",dr[dr.F24=82]="F24",dr[dr.NumLock=83]="NumLock",dr[dr.ScrollLock=84]="ScrollLock",dr[dr.Semicolon=85]="Semicolon",dr[dr.Equal=86]="Equal",dr[dr.Comma=87]="Comma",dr[dr.Minus=88]="Minus",dr[dr.Period=89]="Period",dr[dr.Slash=90]="Slash",dr[dr.Backquote=91]="Backquote",dr[dr.BracketLeft=92]="BracketLeft",dr[dr.Backslash=93]="Backslash",dr[dr.BracketRight=94]="BracketRight",dr[dr.Quote=95]="Quote",dr[dr.OEM_8=96]="OEM_8",dr[dr.IntlBackslash=97]="IntlBackslash",dr[dr.Numpad0=98]="Numpad0",dr[dr.Numpad1=99]="Numpad1",dr[dr.Numpad2=100]="Numpad2",dr[dr.Numpad3=101]="Numpad3",dr[dr.Numpad4=102]="Numpad4",dr[dr.Numpad5=103]="Numpad5",dr[dr.Numpad6=104]="Numpad6",dr[dr.Numpad7=105]="Numpad7",dr[dr.Numpad8=106]="Numpad8",dr[dr.Numpad9=107]="Numpad9",dr[dr.NumpadMultiply=108]="NumpadMultiply",dr[dr.NumpadAdd=109]="NumpadAdd",dr[dr.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",dr[dr.NumpadSubtract=111]="NumpadSubtract",dr[dr.NumpadDecimal=112]="NumpadDecimal",dr[dr.NumpadDivide=113]="NumpadDivide",dr[dr.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",dr[dr.ABNT_C1=115]="ABNT_C1",dr[dr.ABNT_C2=116]="ABNT_C2",dr[dr.AudioVolumeMute=117]="AudioVolumeMute",dr[dr.AudioVolumeUp=118]="AudioVolumeUp",dr[dr.AudioVolumeDown=119]="AudioVolumeDown",dr[dr.BrowserSearch=120]="BrowserSearch",dr[dr.BrowserHome=121]="BrowserHome",dr[dr.BrowserBack=122]="BrowserBack",dr[dr.BrowserForward=123]="BrowserForward",dr[dr.MediaTrackNext=124]="MediaTrackNext",dr[dr.MediaTrackPrevious=125]="MediaTrackPrevious",dr[dr.MediaStop=126]="MediaStop",dr[dr.MediaPlayPause=127]="MediaPlayPause",dr[dr.LaunchMediaPlayer=128]="LaunchMediaPlayer",dr[dr.LaunchMail=129]="LaunchMail",dr[dr.LaunchApp2=130]="LaunchApp2",dr[dr.Clear=131]="Clear",dr[dr.MAX_VALUE=132]="MAX_VALUE",(gr=mr||(mr={}))[gr.Hint=1]="Hint",gr[gr.Info=2]="Info",gr[gr.Warning=4]="Warning",gr[gr.Error=8]="Error",(pr=fr||(fr={}))[pr.Unnecessary=1]="Unnecessary",pr[pr.Deprecated=2]="Deprecated",(yr=br||(br={}))[yr.Inline=1]="Inline",yr[yr.Gutter=2]="Gutter",(wr=vr||(vr={}))[wr.Normal=1]="Normal",wr[wr.Underlined=2]="Underlined",(_r=Cr||(Cr={}))[_r.UNKNOWN=0]="UNKNOWN",_r[_r.TEXTAREA=1]="TEXTAREA",_r[_r.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",_r[_r.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",_r[_r.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",_r[_r.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",_r[_r.CONTENT_TEXT=6]="CONTENT_TEXT",_r[_r.CONTENT_EMPTY=7]="CONTENT_EMPTY",_r[_r.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",_r[_r.CONTENT_WIDGET=9]="CONTENT_WIDGET",_r[_r.OVERVIEW_RULER=10]="OVERVIEW_RULER",_r[_r.SCROLLBAR=11]="SCROLLBAR",_r[_r.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",_r[_r.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR",function(e){e[e.AIGenerated=1]="AIGenerated"}(Lr||(Lr={})),function(e){e[e.Invoke=0]="Invoke",e[e.Automatic=1]="Automatic"}(Sr||(Sr={})),(xr=Nr||(Nr={}))[xr.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",xr[xr.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",xr[xr.TOP_CENTER=2]="TOP_CENTER",(Ar=Er||(Er={}))[Ar.Left=1]="Left",Ar[Ar.Center=2]="Center",Ar[Ar.Right=4]="Right",Ar[Ar.Full=7]="Full",(Rr=kr||(kr={}))[Rr.Word=0]="Word",Rr[Rr.Line=1]="Line",Rr[Rr.Suggest=2]="Suggest",(Mr=Tr||(Tr={}))[Mr.Left=0]="Left",Mr[Mr.Right=1]="Right",Mr[Mr.None=2]="None",Mr[Mr.LeftOfInjectedText=3]="LeftOfInjectedText",Mr[Mr.RightOfInjectedText=4]="RightOfInjectedText",(Ir=Or||(Or={}))[Ir.Off=0]="Off",Ir[Ir.On=1]="On",Ir[Ir.Relative=2]="Relative",Ir[Ir.Interval=3]="Interval",Ir[Ir.Custom=4]="Custom",(Fr=Pr||(Pr={}))[Fr.None=0]="None",Fr[Fr.Text=1]="Text",Fr[Fr.Blocks=2]="Blocks",(Dr=Vr||(Vr={}))[Dr.Smooth=0]="Smooth",Dr[Dr.Immediate=1]="Immediate",(Kr=qr||(qr={}))[Kr.Auto=1]="Auto",Kr[Kr.Hidden=2]="Hidden",Kr[Kr.Visible=3]="Visible",(Br=$r||($r={}))[Br.LTR=0]="LTR",Br[Br.RTL=1]="RTL",(jr=Ur||(Ur={})).Off="off",jr.OnCode="onCode",jr.On="on",function(e){e[e.Invoke=1]="Invoke",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.ContentChange=3]="ContentChange"}(Wr||(Wr={})),(Hr=zr||(zr={}))[Hr.File=0]="File",Hr[Hr.Module=1]="Module",Hr[Hr.Namespace=2]="Namespace",Hr[Hr.Package=3]="Package",Hr[Hr.Class=4]="Class",Hr[Hr.Method=5]="Method",Hr[Hr.Property=6]="Property",Hr[Hr.Field=7]="Field",Hr[Hr.Constructor=8]="Constructor",Hr[Hr.Enum=9]="Enum",Hr[Hr.Interface=10]="Interface",Hr[Hr.Function=11]="Function",Hr[Hr.Variable=12]="Variable",Hr[Hr.Constant=13]="Constant",Hr[Hr.String=14]="String",Hr[Hr.Number=15]="Number",Hr[Hr.Boolean=16]="Boolean",Hr[Hr.Array=17]="Array",Hr[Hr.Object=18]="Object",Hr[Hr.Key=19]="Key",Hr[Hr.Null=20]="Null",Hr[Hr.EnumMember=21]="EnumMember",Hr[Hr.Struct=22]="Struct",Hr[Hr.Event=23]="Event",Hr[Hr.Operator=24]="Operator",Hr[Hr.TypeParameter=25]="TypeParameter",(Jr=Gr||(Gr={}))[Jr.Deprecated=1]="Deprecated",(Qr=Xr||(Xr={}))[Qr.LTR=0]="LTR",Qr[Qr.RTL=1]="RTL",(Yr=Zr||(Zr={}))[Yr.Hidden=0]="Hidden",Yr[Yr.Blink=1]="Blink",Yr[Yr.Smooth=2]="Smooth",Yr[Yr.Phase=3]="Phase",Yr[Yr.Expand=4]="Expand",Yr[Yr.Solid=5]="Solid",(ti=ei||(ei={}))[ti.Line=1]="Line",ti[ti.Block=2]="Block",ti[ti.Underline=3]="Underline",ti[ti.LineThin=4]="LineThin",ti[ti.BlockOutline=5]="BlockOutline",ti[ti.UnderlineThin=6]="UnderlineThin",(ri=ni||(ni={}))[ri.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",ri[ri.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",ri[ri.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",ri[ri.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter",(si=ii||(ii={}))[si.None=0]="None",si[si.Same=1]="Same",si[si.Indent=2]="Indent",si[si.DeepIndent=3]="DeepIndent";const oi=class{static chord(e,t){return function(e,t){return(e|(65535&t)<<16>>>0)>>>0}(e,t)}};oi.CtrlCmd=2048,oi.Shift=1024,oi.Alt=512,oi.WinCtrl=256;let ai=oi;var li,ui,ci,hi,di;class mi{constructor(){this[li]="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 e;return null==(e=this._head)?void 0:e.value}get last(){var e;return null==(e=this._tail)?void 0:e.value}has(e){return this._map.has(e)}get(e,t=0){const n=this._map.get(e);if(n)return 0!==t&&this.touch(n,t),n.value}set(e,t,n=0){let r=this._map.get(e);if(r)r.value=t,0!==n&&this.touch(r,n);else{switch(r={key:e,value:t,next:void 0,previous:void 0},n){case 0:case 2:default:this.addItemLast(r);break;case 1:this.addItemFirst(r)}this._map.set(e,r),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const n=this._state;let r=this._head;for(;r;){if(t?e.bind(t)(r.value,r.key,this):e(r.value,r.key,this),this._state!==n)throw new Error("LinkedMap got modified during iteration.");r=r.next}}keys(){const e=this,t=this._state;let n=this._head;const r={[Symbol.iterator]:()=>r,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(n){const e={value:n.key,done:!1};return n=n.next,e}return{value:void 0,done:!0}}};return r}values(){const e=this,t=this._state;let n=this._head;const r={[Symbol.iterator]:()=>r,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(n){const e={value:n.value,done:!1};return n=n.next,e}return{value:void 0,done:!0}}};return r}entries(){const e=this,t=this._state;let n=this._head;const r={[Symbol.iterator]:()=>r,next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(n){const e={value:[n.key,n.value],done:!1};return n=n.next,e}return{value:void 0,done:!0}}};return r}[(li=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._head,n=this.size;for(;t&&n>e;)this._map.delete(t.key),t=t.next,n--;this._head=t,this._size=n,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(0===e)return void this.clear();let t=this._tail,n=this.size;for(;t&&n>e;)this._map.delete(t.key),t=t.previous,n--;this._tail=t,this._size=n,t&&(t.next=void 0),this._state++}addItemFirst(e){if(this._head||this._tail){if(!this._head)throw new Error("Invalid list");e.next=this._head,this._head.previous=e}else this._tail=e;this._head=e,this._state++}addItemLast(e){if(this._head||this._tail){if(!this._tail)throw new Error("Invalid list");e.previous=this._tail,this._tail.next=e}else this._head=e;this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,n=e.previous;if(!t||!n)throw new Error("Invalid list");t.previous=n,n.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(1===t||2===t)if(1===t){if(e===this._head)return;const t=e.next,n=e.previous;e===this._tail?(n.next=void 0,this._tail=n):(t.previous=n,n.next=t),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(2===t){if(e===this._tail)return;const t=e.next,n=e.previous;e===this._head?(t.previous=void 0,this._head=t):(t.previous=n,n.next=t),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}toJSON(){const e=[];return this.forEach((t,n)=>{e.push([n,t])}),e}fromJSON(e){this.clear();for(const[t,n]of e)this.set(t,n)}}class gi extends mi{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class fi{constructor(){this.map=new Map}add(e,t){let n=this.map.get(e);n||(n=new Set,this.map.set(e,n)),n.add(t)}delete(e,t){const n=this.map.get(e);n&&(n.delete(t),0===n.size&&this.map.delete(e))}forEach(e,t){const n=this.map.get(e);n&&n.forEach(t)}}function pi(e,t,n,r,i){return function(e,t,n,r,i){if(0===r)return!0;const s=t.charCodeAt(r-1);if(0!==e.get(s))return!0;if(13===s||10===s)return!0;if(i>0){const n=t.charCodeAt(r);if(0!==e.get(n))return!0}return!1}(e,t,0,r,i)&&function(e,t,n,r,i){if(r+i===n)return!0;const s=t.charCodeAt(r+i);if(0!==e.get(s))return!0;if(13===s||10===s)return!0;if(i>0){const n=t.charCodeAt(r+i-1);if(0!==e.get(n))return!0}return!1}(e,t,n,r,i)}new class extends gi{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}(10),function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=4]="Right",e[e.Full=7]="Full"}(ui||(ui={})),function(e){e[e.Left=1]="Left",e[e.Center=2]="Center",e[e.Right=3]="Right"}(ci||(ci={})),function(e){e[e.LTR=0]="LTR",e[e.RTL=1]="RTL"}(hi||(hi={})),function(e){e[e.Both=0]="Both",e[e.Right=1]="Right",e[e.Left=2]="Left",e[e.None=3]="None"}(di||(di={}));class bi{constructor(e,t){this._wordSeparators=e,this._searchRegex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(e){this._searchRegex.lastIndex=e,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(e){const t=e.length;let n;do{if(this._prevMatchStartIndex+this._prevMatchLength===t)return null;if(n=this._searchRegex.exec(e),!n)return null;const r=n.index,i=n[0].length;if(r===this._prevMatchStartIndex&&i===this._prevMatchLength){if(0===i){ge(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=r,this._prevMatchLength=i,!this._wordSeparators||pi(this._wordSeparators,e,t,r,i))return n}while(n);return null}}const yi=function(e=""){let t="(-?\\d*\\.\\d\\w*)|([^";for(const n of"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?")e.indexOf(n)>=0||(t+="\\"+n);return t+="\\s]+)",new RegExp(t,"g")}();function vi(e){let t=yi;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 wi=new E;function Ci(e,t,n,r,i){if(t=vi(t),i||(i=b.first(wi)),n.length>i.maxLen){let s=e-i.maxLen/2;return s<0?s=0:r+=s,Ci(e,t,n=n.substring(s,e+i.maxLen/2),r,i)}const s=Date.now(),o=e-1-r;let a=-1,l=null;for(let u=1;!(Date.now()-s>=i.timeBudget);u++){const e=o-i.windowSize*u;t.lastIndex=Math.max(0,e);const r=_i(t,n,o,a);if(!r&&l)break;if(l=r,e<=0)break;a=e}if(l){const e={word:l[0],startColumn:r+1+l.index,endColumn:r+1+l.index+l[0].length};return t.lastIndex=0,e}return null}function _i(e,t,n,r){let i;for(;i=e.exec(t);){const t=i.index||0;if(t<=n&&e.lastIndex>=n)return i;if(r>0&&t>r)return null}return null}wi.unshift({maxLen:1e3,windowSize:15,timeBudget:150});class Li{static computeUnicodeHighlights(e,t,n){const r=n?n.startLineNumber:1,i=n?n.endLineNumber:e.getLineCount(),s=new Si(t),o=s.getCandidateCodePoints();let a;var l,u;a="allNonBasicAscii"===o?new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):new RegExp(""+(l=Array.from(o),`[${u=l.map(e=>String.fromCodePoint(e)).join(""),u.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}]`),"g");const c=new bi(null,a),h=[];let d,g=!1,f=0,p=0,b=0;e:for(let y=r,v=i;y<=v;y++){const t=e.getLineContent(y),n=t.length;c.reset(0);do{if(d=c.next(t),d){let e=d.index,r=d.index+d[0].length;if(e>0){me(t.charCodeAt(e-1))&&e--}if(r+1<n){me(t.charCodeAt(r-1))&&r++}const i=t.substring(e,r);let o=Ci(e+1,yi,t,0);o&&o.endColumn<=e+1&&(o=null);const a=s.shouldHighlightNonBasicASCII(i,o?o.word:null);if(0!==a){3===a?f++:2===a?p++:1===a?b++:m();const t=1e3;if(h.length>=t){g=!0;break e}h.push(new Be(y,e+1,y,r+1))}}}while(d)}return{ranges:h,hasMore:g,ambiguousCharacterCount:f,invisibleCharacterCount:p,nonBasicAsciiCharacterCount:b}}static computeUnicodeHighlightReason(e,t){const n=new Si(t);switch(n.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const r=e.codePointAt(0),i=n.ambiguousCharacters.getPrimaryConfusable(r),s=ye.getLocales().filter(e=>!ye.getInstance(new Set([...t.allowedLocales,e])).isAmbiguous(r));return{kind:0,confusableWith:String.fromCodePoint(i),notAmbiguousInLocales:s}}case 1:return{kind:2}}}}class Si{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=ye.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const t of we.codePoints)Ni(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(const t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(const t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){const n=e.codePointAt(0);if(this.allowedCodePoints.has(n))return 0;if(this.options.nonBasicASCII)return 1;let r=!1,i=!1;if(t)for(const s of t){const e=s.codePointAt(0),t=pe(s);r=r||t,t||this.ambiguousCharacters.isAmbiguous(e)||we.isInvisibleCharacter(e)||(i=!0)}return!r&&i?0:this.options.invisibleCharacters&&!Ni(e)&&we.isInvisibleCharacter(n)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(n)?3:0}}function Ni(e){return" "===e||"\n"===e||"\t"===e}class xi{constructor(e,t,n){this.changes=e,this.moves=t,this.hitTimeout=n}}class Ei{constructor(e,t){this.lineRangeMapping=e,this.changes=t}}var Ai,ki;function Ri(e,t){return(n,r)=>t(e(n),e(r))}(ki=Ai||(Ai={})).isLessThan=function(e){return e<0},ki.isLessThanOrEqual=function(e){return e<=0},ki.isGreaterThan=function(e){return e>0},ki.isNeitherLessOrGreaterThan=function(e){return 0===e},ki.greaterThan=1,ki.lessThan=-1,ki.neitherLessOrGreaterThan=0;const Ti=(e,t)=>e-t;const Mi=class e{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(t){return new e(e=>this.iterate(n=>!t(n)||e(n)))}map(t){return new e(e=>this.iterate(n=>e(t(n))))}findLast(e){let t;return this.iterate(n=>(e(n)&&(t=n),!0)),t}findLastMaxBy(e){let t,n=!0;return this.iterate(r=>((n||Ai.isGreaterThan(e(r,t)))&&(n=!1,t=r),!0)),t}};Mi.empty=new Mi(e=>{});class Oi{static fromTo(e,t){return new Oi(e,t)}static addRange(e,t){let n=0;for(;n<t.length&&t[n].endExclusive<e.start;)n++;let r=n;for(;r<t.length&&t[r].start<=e.endExclusive;)r++;if(n===r)t.splice(n,0,e);else{const i=Math.min(e.start,t[n].start),s=Math.max(e.endExclusive,t[r-1].endExclusive);t.splice(n,r-n,new Oi(i,s))}}static tryCreate(e,t){if(!(e>t))return new Oi(e,t)}static ofLength(e){return new Oi(0,e)}static ofStartAndLength(e,t){return new Oi(e,e+t)}static emptyAt(e){return new Oi(e,e)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new d(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new Oi(this.start+e,this.endExclusive+e)}deltaStart(e){return new Oi(this.start+e,this.endExclusive)}deltaEnd(e){return new Oi(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(e){return this.start===e.start&&this.endExclusive===e.endExclusive}contains(e){return this.start<=e&&e<this.endExclusive}join(e){return new Oi(Math.min(this.start,e.start),Math.max(this.endExclusive,e.endExclusive))}intersect(e){const t=Math.max(this.start,e.start),n=Math.min(this.endExclusive,e.endExclusive);if(t<=n)return new Oi(t,n)}intersectionLength(e){const t=Math.max(this.start,e.start),n=Math.min(this.endExclusive,e.endExclusive);return Math.max(0,n-t)}intersects(e){return Math.max(this.start,e.start)<Math.min(this.endExclusive,e.endExclusive)}intersectsOrTouches(e){return Math.max(this.start,e.start)<=Math.min(this.endExclusive,e.endExclusive)}isBefore(e){return this.endExclusive<=e.start}isAfter(e){return this.start>=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new d(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new d(`Invalid clipping range: ${this.toString()}`);return e<this.start?this.endExclusive-(this.start-e)%this.length:e>=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;t<this.endExclusive;t++)e(t)}joinRightTouching(e){if(this.endExclusive!==e.start)throw new d(`Invalid join: ${this.toString()} and ${e.toString()}`);return new Oi(this.start,e.endExclusive)}}function Ii(e,t){const n=Pi(e,t);return-1===n?void 0:e[n]}function Pi(e,t,n=0,r=e.length){let i=n,s=r;for(;i<s;){const n=Math.floor((i+s)/2);t(e[n])?i=n+1:s=n}return i-1}function Fi(e,t,n=0,r=e.length){let i=n,s=r;for(;i<s;){const n=Math.floor((i+s)/2);t(e[n])?s=n:i=n+1}return i}const Vi=class e{constructor(e){this._array=e,this._findLastMonotonousLastIdx=0}findLastMonotonous(t){if(e.assertInvariants){if(this._prevFindLastPredicate)for(const e of this._array)if(this._prevFindLastPredicate(e)&&!t(e))throw new Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.");this._prevFindLastPredicate=t}const n=Pi(this._array,t,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=n+1,-1===n?void 0:this._array[n]}};Vi.assertInvariants=!1;let Di=Vi;const qi=class e{static ofLength(t,n){return new e(t,t+n)}static fromRange(t){return new e(t.startLineNumber,t.endLineNumber)}static fromRangeInclusive(t){return new e(t.startLineNumber,t.endLineNumber+1)}static joinMany(e){if(0===e.length)return[];let t=new $i(e[0].slice());for(let n=1;n<e.length;n++)t=t.getUnion(new $i(e[n].slice()));return t.ranges}static join(t){if(0===t.length)throw new d("lineRanges cannot be empty");let n=t[0].startLineNumber,r=t[0].endLineNumberExclusive;for(let e=1;e<t.length;e++)n=Math.min(n,t[e].startLineNumber),r=Math.max(r,t[e].endLineNumberExclusive);return new e(n,r)}static deserialize(t){return new e(t[0],t[1])}constructor(e,t){if(e>t)throw new d(`startLineNumber ${e} cannot be after endLineNumberExclusive ${t}`);this.startLineNumber=e,this.endLineNumberExclusive=t}contains(e){return this.startLineNumber<=e&&e<this.endLineNumberExclusive}get isEmpty(){return this.startLineNumber===this.endLineNumberExclusive}delta(t){return new e(this.startLineNumber+t,this.endLineNumberExclusive+t)}deltaLength(t){return new e(this.startLineNumber,this.endLineNumberExclusive+t)}get length(){return this.endLineNumberExclusive-this.startLineNumber}join(t){return new e(Math.min(this.startLineNumber,t.startLineNumber),Math.max(this.endLineNumberExclusive,t.endLineNumberExclusive))}toString(){return`[${this.startLineNumber},${this.endLineNumberExclusive})`}intersect(t){const n=Math.max(this.startLineNumber,t.startLineNumber),r=Math.min(this.endLineNumberExclusive,t.endLineNumberExclusive);if(n<=r)return new e(n,r)}intersectsStrict(e){return this.startLineNumber<e.endLineNumberExclusive&&e.startLineNumber<this.endLineNumberExclusive}intersectsOrTouches(e){return this.startLineNumber<=e.endLineNumberExclusive&&e.startLineNumber<=this.endLineNumberExclusive}equals(e){return this.startLineNumber===e.startLineNumber&&this.endLineNumberExclusive===e.endLineNumberExclusive}toInclusiveRange(){return this.isEmpty?null:new Be(this.startLineNumber,1,this.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER)}toExclusiveRange(){return new Be(this.startLineNumber,1,this.endLineNumberExclusive,1)}mapToLineArray(e){const t=[];for(let n=this.startLineNumber;n<this.endLineNumberExclusive;n++)t.push(e(n));return t}forEach(e){for(let t=this.startLineNumber;t<this.endLineNumberExclusive;t++)e(t)}serialize(){return[this.startLineNumber,this.endLineNumberExclusive]}toOffsetRange(){return new Oi(this.startLineNumber-1,this.endLineNumberExclusive-1)}addMargin(t,n){return new e(this.startLineNumber-t,this.endLineNumberExclusive+n)}};qi.compareByStart=Ri(e=>e.startLineNumber,Ti);let Ki=qi;class $i{constructor(e=[]){this._normalizedRanges=e}get ranges(){return this._normalizedRanges}addRange(e){if(0===e.length)return;const t=Fi(this._normalizedRanges,t=>t.endLineNumberExclusive>=e.startLineNumber),n=Pi(this._normalizedRanges,t=>t.startLineNumber<=e.endLineNumberExclusive)+1;if(t===n)this._normalizedRanges.splice(t,0,e);else if(t===n-1){const n=this._normalizedRanges[t];this._normalizedRanges[t]=n.join(e)}else{const r=this._normalizedRanges[t].join(this._normalizedRanges[n-1]).join(e);this._normalizedRanges.splice(t,n-t,r)}}contains(e){const t=Ii(this._normalizedRanges,t=>t.startLineNumber<=e);return!!t&&t.endLineNumberExclusive>e}intersects(e){const t=Ii(this._normalizedRanges,t=>t.startLineNumber<e.endLineNumberExclusive);return!!t&&t.endLineNumberExclusive>e.startLineNumber}getUnion(e){if(0===this._normalizedRanges.length)return e;if(0===e._normalizedRanges.length)return this;const t=[];let n=0,r=0,i=null;for(;n<this._normalizedRanges.length||r<e._normalizedRanges.length;){let s=null;if(n<this._normalizedRanges.length&&r<e._normalizedRanges.length){const t=this._normalizedRanges[n],i=e._normalizedRanges[r];t.startLineNumber<i.startLineNumber?(s=t,n++):(s=i,r++)}else n<this._normalizedRanges.length?(s=this._normalizedRanges[n],n++):(s=e._normalizedRanges[r],r++);null===i?i=s:i.endLineNumberExclusive>=s.startLineNumber?i=new Ki(i.startLineNumber,Math.max(i.endLineNumberExclusive,s.endLineNumberExclusive)):(t.push(i),i=s)}return null!==i&&t.push(i),new $i(t)}subtractFrom(e){const t=Fi(this._normalizedRanges,t=>t.endLineNumberExclusive>=e.startLineNumber),n=Pi(this._normalizedRanges,t=>t.startLineNumber<=e.endLineNumberExclusive)+1;if(t===n)return new $i([e]);const r=[];let i=e.startLineNumber;for(let s=t;s<n;s++){const e=this._normalizedRanges[s];e.startLineNumber>i&&r.push(new Ki(i,e.startLineNumber)),i=e.endLineNumberExclusive}return i<e.endLineNumberExclusive&&r.push(new Ki(i,e.endLineNumberExclusive)),new $i(r)}toString(){return this._normalizedRanges.map(e=>e.toString()).join(", ")}getIntersection(e){const t=[];let n=0,r=0;for(;n<this._normalizedRanges.length&&r<e._normalizedRanges.length;){const i=this._normalizedRanges[n],s=e._normalizedRanges[r],o=i.intersect(s);o&&!o.isEmpty&&t.push(o),i.endLineNumberExclusive<s.endLineNumberExclusive?n++:r++}return new $i(t)}getWithDelta(e){return new $i(this._normalizedRanges.map(t=>t.delta(e)))}}const Bi=class e{static betweenPositions(t,n){return t.lineNumber===n.lineNumber?new e(0,n.column-t.column):new e(n.lineNumber-t.lineNumber,n.column-1)}static fromPosition(t){return new e(t.lineNumber-1,t.column-1)}static ofRange(t){return e.betweenPositions(t.getStartPosition(),t.getEndPosition())}static ofText(t){let n=0,r=0;for(const e of t)"\n"===e?(n++,r=0):r++;return new e(n,r)}constructor(e,t){this.lineCount=e,this.columnCount=t}isGreaterThanOrEqualTo(e){return this.lineCount!==e.lineCount?this.lineCount>e.lineCount:this.columnCount>=e.columnCount}add(t){return 0===t.lineCount?new e(this.lineCount,this.columnCount+t.columnCount):new e(this.lineCount+t.lineCount,t.columnCount)}createRange(e){return 0===this.lineCount?new Be(e.lineNumber,e.column,e.lineNumber,e.column+this.columnCount):new Be(e.lineNumber,e.column,e.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new Be(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return Ki.ofLength(1,this.lineCount+1)}addToPosition(e){return 0===this.lineCount?new $e(e.lineNumber,e.column+this.columnCount):new $e(e.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}};Bi.zero=new Bi(0,0);let Ui=Bi;class ji{getOffsetRange(e){return new Oi(this.getOffset(e.getStartPosition()),this.getOffset(e.getEndPosition()))}getRange(e){return Be.fromPositions(this.getPosition(e.start),this.getPosition(e.endExclusive))}getStringReplacement(e){return new zi.deps.StringReplacement(this.getOffsetRange(e.range),e.text)}getTextReplacement(e){return new zi.deps.TextReplacement(this.getRange(e.replaceRange),e.newText)}getTextEdit(e){const t=e.replacements.map(e=>this.getTextReplacement(e));return new zi.deps.TextEdit(t)}}const Wi=class{static get deps(){if(!this._deps)throw new Error("Dependencies not set. Call _setDependencies first.");return this._deps}};Wi._deps=void 0;let zi=Wi;class Hi extends ji{constructor(e){super(),this.text=e,this.lineStartOffsetByLineIdx=[],this.lineEndOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let t=0;t<e.length;t++)"\n"===e.charAt(t)&&(this.lineStartOffsetByLineIdx.push(t+1),t>0&&"\r"===e.charAt(t-1)?this.lineEndOffsetByLineIdx.push(t-1):this.lineEndOffsetByLineIdx.push(t));this.lineEndOffsetByLineIdx.push(e.length)}getOffset(e){const t=this._validatePosition(e);return this.lineStartOffsetByLineIdx[t.lineNumber-1]+t.column-1}_validatePosition(e){if(e.lineNumber<1)return new $e(1,1);const t=this.textLength.lineCount+1;if(e.lineNumber>t){const e=this.getLineLength(t);return new $e(t,e+1)}if(e.column<1)return new $e(e.lineNumber,1);const n=this.getLineLength(e.lineNumber);return e.column-1>n?new $e(e.lineNumber,n+1):e}getPosition(e){const t=Pi(this.lineStartOffsetByLineIdx,t=>t<=e),n=t+1,r=e-this.lineStartOffsetByLineIdx[t]+1;return new $e(n,r)}get textLength(){const e=this.lineStartOffsetByLineIdx.length-1;return new zi.deps.TextLength(e,this.text.length-this.lineStartOffsetByLineIdx[e])}getLineLength(e){return this.lineEndOffsetByLineIdx[e-1]-this.lineStartOffsetByLineIdx[e-1]}}class Gi{constructor(){this._transformer=void 0}get endPositionExclusive(){return this.length.addToPosition(new $e(1,1))}get lineRange(){return this.length.toLineRange()}getValue(){return this.getValueOfRange(this.length.toRange())}getValueOfOffsetRange(e){return this.getValueOfRange(this.getTransformer().getRange(e))}getLineLength(e){return this.getValueOfRange(new Be(e,1,e,Number.MAX_SAFE_INTEGER)).length}getTransformer(){return this._transformer||(this._transformer=new Hi(this.getValue())),this._transformer}getLineAt(e){return this.getValueOfRange(new Be(e,1,e,Number.MAX_SAFE_INTEGER))}}class Ji extends Gi{constructor(e,t){!function(e,t="unexpected state"){if(!e)throw"string"==typeof t?new d(`Assertion Failed: ${t}`):t}(t>=1),super(),this._getLineContent=e,this._lineCount=t}getValueOfRange(e){if(e.startLineNumber===e.endLineNumber)return this._getLineContent(e.startLineNumber).substring(e.startColumn-1,e.endColumn-1);let t=this._getLineContent(e.startLineNumber).substring(e.startColumn-1);for(let n=e.startLineNumber+1;n<e.endLineNumber;n++)t+="\n"+this._getLineContent(n);return t+="\n"+this._getLineContent(e.endLineNumber).substring(0,e.endColumn-1),t}getLineLength(e){return this._getLineContent(e).length}get length(){const e=this._getLineContent(this._lineCount);return new Ui(this._lineCount-1,e.length)}}class Xi extends Ji{constructor(e){super(t=>e[t-1],e.length)}}class Qi{static joinReplacements(e,t){if(0===e.length)throw new d;if(1===e.length)return e[0];const n=e[0].range.getStartPosition(),r=e[e.length-1].range.getEndPosition();let i="";for(let s=0;s<e.length;s++){const n=e[s];if(i+=n.text,s<e.length-1){const r=e[s+1],o=Be.fromPositions(n.range.getEndPosition(),r.range.getStartPosition());i+=t.getValueOfRange(o)}}return new Qi(Be.fromPositions(n,r),i)}static fromStringReplacement(e,t){return new Qi(t.getTransformer().getRange(e.replaceRange),e.newText)}static delete(e){return new Qi(e,"")}constructor(e,t){this.range=e,this.text=t}get isEmpty(){return this.range.isEmpty()&&0===this.text.length}static equals(e,t){return e.range.equalsRange(t.range)&&e.text===t.text}equals(e){return Qi.equals(this,e)}removeCommonPrefixAndSuffix(e){return this.removeCommonPrefix(e).removeCommonSuffix(e)}removeCommonPrefix(e){const t=e.getValueOfRange(this.range).replaceAll("\r\n","\n"),n=this.text.replaceAll("\r\n","\n"),r=function(e,t){const n=Math.min(e.length,t.length);let r;for(r=0;r<n;r++)if(e.charCodeAt(r)!==t.charCodeAt(r))return r;return n}(t,n),i=Ui.ofText(t.substring(0,r)).addToPosition(this.range.getStartPosition()),s=n.substring(r),o=Be.fromPositions(i,this.range.getEndPosition());return new Qi(o,s)}removeCommonSuffix(e){const t=e.getValueOfRange(this.range).replaceAll("\r\n","\n"),n=this.text.replaceAll("\r\n","\n"),r=function(e,t){const n=Math.min(e.length,t.length);let r;const i=e.length-1,s=t.length-1;for(r=0;r<n;r++)if(e.charCodeAt(i-r)!==t.charCodeAt(s-r))return r;return n}(t,n),i=Ui.ofText(t.substring(0,t.length-r)).addToPosition(this.range.getStartPosition()),s=n.substring(0,n.length-r),o=Be.fromPositions(this.range.getStartPosition(),i);return new Qi(o,s)}toString(){const e=this.range.getStartPosition(),t=this.range.getEndPosition();return`(${e.lineNumber},${e.column} -> ${t.lineNumber},${t.column}): "${this.text}"`}}class Zi{static inverse(e,t,n){const r=[];let i=1,s=1;for(const a of e){const e=new Zi(new Ki(i,a.original.startLineNumber),new Ki(s,a.modified.startLineNumber));e.modified.isEmpty||r.push(e),i=a.original.endLineNumberExclusive,s=a.modified.endLineNumberExclusive}const o=new Zi(new Ki(i,t+1),new Ki(s,n+1));return o.modified.isEmpty||r.push(o),r}static clip(e,t,n){const r=[];for(const i of e){const e=i.original.intersect(t),s=i.modified.intersect(n);e&&!e.isEmpty&&s&&!s.isEmpty&&r.push(new Zi(e,s))}return r}constructor(e,t){this.original=e,this.modified=t}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new Zi(this.modified,this.original)}join(e){return new Zi(this.original.join(e.original),this.modified.join(e.modified))}toRangeMapping(){const e=this.original.toInclusiveRange(),t=this.modified.toInclusiveRange();if(e&&t)return new ns(e,t);if(1===this.original.startLineNumber||1===this.modified.startLineNumber){if(1!==this.modified.startLineNumber||1!==this.original.startLineNumber)throw new d("not a valid diff");return new ns(new Be(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new Be(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}return new ns(new Be(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new Be(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}toRangeMapping2(e,t){if(es(this.original.endLineNumberExclusive,e)&&es(this.modified.endLineNumberExclusive,t))return new ns(new Be(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new Be(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new ns(Be.fromPositions(new $e(this.original.startLineNumber,1),Yi(new $e(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),Be.fromPositions(new $e(this.modified.startLineNumber,1),Yi(new $e(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new ns(Be.fromPositions(Yi(new $e(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),e),Yi(new $e(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),e)),Be.fromPositions(Yi(new $e(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),t),Yi(new $e(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),t)));throw new d}}function Yi(e,t){if(e.lineNumber<1)return new $e(1,1);if(e.lineNumber>t.length)return new $e(t.length,t[t.length-1].length+1);const n=t[e.lineNumber-1];return e.column>n.length+1?new $e(e.lineNumber,n.length+1):e}function es(e,t){return e>=1&&e<=t.length}class ts extends Zi{static fromRangeMappings(e){const t=Ki.join(e.map(e=>Ki.fromRangeInclusive(e.originalRange))),n=Ki.join(e.map(e=>Ki.fromRangeInclusive(e.modifiedRange)));return new ts(t,n,e)}constructor(e,t,n){super(e,t),this.innerChanges=n}flip(){var e;return new ts(this.modified,this.original,null==(e=this.innerChanges)?void 0:e.map(e=>e.flip()))}withInnerChangesFromLineRanges(){return new ts(this.original,this.modified,[this.toRangeMapping()])}}class ns{static fromEdit(e){const t=e.getNewRanges();return e.replacements.map((e,n)=>new ns(e.range,t[n]))}static assertSorted(e){for(let t=1;t<e.length;t++){const n=e[t-1],r=e[t];if(!n.originalRange.getEndPosition().isBeforeOrEqual(r.originalRange.getStartPosition())||!n.modifiedRange.getEndPosition().isBeforeOrEqual(r.modifiedRange.getStartPosition()))throw new d("Range mappings must be sorted")}}constructor(e,t){this.originalRange=e,this.modifiedRange=t}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}flip(){return new ns(this.modifiedRange,this.originalRange)}toTextEdit(e){const t=e.getValueOfRange(this.modifiedRange);return new Qi(this.originalRange,t)}}function rs(e,t,n,r=!1){const i=[];for(const s of function*(e,t){let n,r;for(const i of e)void 0!==r&&t(r,i)?n.push(i):(n&&(yield n),n=[i]),r=i;n&&(yield n)}(e.map(e=>function(e,t,n){let r=0,i=0;1===e.modifiedRange.endColumn&&1===e.originalRange.endColumn&&e.originalRange.startLineNumber+r<=e.originalRange.endLineNumber&&e.modifiedRange.startLineNumber+r<=e.modifiedRange.endLineNumber&&(i=-1);e.modifiedRange.startColumn-1>=n.getLineLength(e.modifiedRange.startLineNumber)&&e.originalRange.startColumn-1>=t.getLineLength(e.originalRange.startLineNumber)&&e.originalRange.startLineNumber<=e.originalRange.endLineNumber+i&&e.modifiedRange.startLineNumber<=e.modifiedRange.endLineNumber+i&&(r=1);const s=new Ki(e.originalRange.startLineNumber+r,e.originalRange.endLineNumber+1+i),o=new Ki(e.modifiedRange.startLineNumber+r,e.modifiedRange.endLineNumber+1+i);return new ts(s,o,[e])}(e,t,n)),(e,t)=>e.original.intersectsOrTouches(t.original)||e.modified.intersectsOrTouches(t.modified))){const e=s[0],t=s[s.length-1];i.push(new ts(e.original.join(t.original),e.modified.join(t.modified),s.map(e=>e.innerChanges[0])))}return g(()=>{if(!r&&i.length>0){if(i[0].modified.startLineNumber!==i[0].original.startLineNumber)return!1;if(n.length.lineCount-i[i.length-1].modified.endLineNumberExclusive!==t.length.lineCount-i[i.length-1].original.endLineNumberExclusive)return!1}return f(i,(e,t)=>t.original.startLineNumber-e.original.endLineNumberExclusive===t.modified.startLineNumber-e.modified.endLineNumberExclusive&&e.original.endLineNumberExclusive<t.original.startLineNumber&&e.modified.endLineNumberExclusive<t.modified.startLineNumber)}),i}class is{computeDiff(e,t,n){var r;const i=new cs(e,t,{maxComputationTime:n.maxComputationTimeMs,shouldIgnoreTrimWhitespace:n.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),s=[];let o=null;for(const a of i.changes){let e,t;e=0===a.originalEndLineNumber?new Ki(a.originalStartLineNumber+1,a.originalStartLineNumber+1):new Ki(a.originalStartLineNumber,a.originalEndLineNumber+1),t=0===a.modifiedEndLineNumber?new Ki(a.modifiedStartLineNumber+1,a.modifiedStartLineNumber+1):new Ki(a.modifiedStartLineNumber,a.modifiedEndLineNumber+1);let n=new ts(e,t,null==(r=a.charChanges)?void 0:r.map(e=>new ns(new Be(e.originalStartLineNumber,e.originalStartColumn,e.originalEndLineNumber,e.originalEndColumn),new Be(e.modifiedStartLineNumber,e.modifiedStartColumn,e.modifiedEndLineNumber,e.modifiedEndColumn))));o&&(o.modified.endLineNumberExclusive!==n.modified.startLineNumber&&o.original.endLineNumberExclusive!==n.original.startLineNumber||(n=new ts(o.original.join(n.original),o.modified.join(n.modified),o.innerChanges&&n.innerChanges?o.innerChanges.concat(n.innerChanges):void 0),s.pop())),s.push(n),o=n}return g(()=>f(s,(e,t)=>t.original.startLineNumber-e.original.endLineNumberExclusive===t.modified.startLineNumber-e.modified.endLineNumberExclusive&&e.original.endLineNumberExclusive<t.original.startLineNumber&&e.modified.endLineNumberExclusive<t.modified.startLineNumber)),new xi(s,[],i.quitEarly)}}function ss(e,t,n,r){return new Ke(e,t,n).ComputeDiff(r)}let os=class{constructor(e){const t=[],n=[];for(let r=0,i=e.length;r<i;r++)t[r]=hs(e[r],1),n[r]=ds(e[r],1);this.lines=e,this._startColumns=t,this._endColumns=n}getElements(){const e=[];for(let t=0,n=this.lines.length;t<n;t++)e[t]=this.lines[t].substring(this._startColumns[t]-1,this._endColumns[t]-1);return e}getStrictElement(e){return this.lines[e]}getStartLineNumber(e){return e+1}getEndLineNumber(e){return e+1}createCharSequence(e,t,n){const r=[],i=[],s=[];let o=0;for(let a=t;a<=n;a++){const t=this.lines[a],l=e?this._startColumns[a]:1,u=e?this._endColumns[a]:t.length+1;for(let e=l;e<u;e++)r[o]=t.charCodeAt(e-1),i[o]=a+1,s[o]=e,o++;!e&&a<n&&(r[o]=10,i[o]=a+1,s[o]=t.length+1,o++)}return new as(r,i,s)}};class as{constructor(e,t,n){this._charCodes=e,this._lineNumbers=t,this._columns=n}toString(){return"["+this._charCodes.map((e,t)=>(10===e?"\\n":String.fromCharCode(e))+`-(${this._lineNumbers[t]},${this._columns[t]})`).join(", ")+"]"}_assertIndex(e,t){if(e<0||e>=t.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(e){return e>0&&e===this._lineNumbers.length?this.getEndLineNumber(e-1):(this._assertIndex(e,this._lineNumbers),this._lineNumbers[e])}getEndLineNumber(e){return-1===e?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),10===this._charCodes[e]?this._lineNumbers[e]+1:this._lineNumbers[e])}getStartColumn(e){return e>0&&e===this._columns.length?this.getEndColumn(e-1):(this._assertIndex(e,this._columns),this._columns[e])}getEndColumn(e){return-1===e?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),10===this._charCodes[e]?1:this._columns[e]+1)}}class ls{constructor(e,t,n,r,i,s,o,a){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=n,this.originalEndColumn=r,this.modifiedStartLineNumber=i,this.modifiedStartColumn=s,this.modifiedEndLineNumber=o,this.modifiedEndColumn=a}static createFromDiffChange(e,t,n){const r=t.getStartLineNumber(e.originalStart),i=t.getStartColumn(e.originalStart),s=t.getEndLineNumber(e.originalStart+e.originalLength-1),o=t.getEndColumn(e.originalStart+e.originalLength-1),a=n.getStartLineNumber(e.modifiedStart),l=n.getStartColumn(e.modifiedStart),u=n.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),c=n.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new ls(r,i,s,o,a,l,u,c)}}class us{constructor(e,t,n,r,i){this.originalStartLineNumber=e,this.originalEndLineNumber=t,this.modifiedStartLineNumber=n,this.modifiedEndLineNumber=r,this.charChanges=i}static createFromDiffResult(e,t,n,r,i,s,o){let a,l,u,c,h;if(0===t.originalLength?(a=n.getStartLineNumber(t.originalStart)-1,l=0):(a=n.getStartLineNumber(t.originalStart),l=n.getEndLineNumber(t.originalStart+t.originalLength-1)),0===t.modifiedLength?(u=r.getStartLineNumber(t.modifiedStart)-1,c=0):(u=r.getStartLineNumber(t.modifiedStart),c=r.getEndLineNumber(t.modifiedStart+t.modifiedLength-1)),s&&t.originalLength>0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&i()){const s=n.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),a=r.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(s.getElements().length>0&&a.getElements().length>0){let e=ss(s,a,i,!0).changes;o&&(e=function(e){if(e.length<=1)return e;const t=[e[0]];let n=t[0];for(let r=1,i=e.length;r<i;r++){const i=e[r],s=i.originalStart-(n.originalStart+n.originalLength),o=i.modifiedStart-(n.modifiedStart+n.modifiedLength);Math.min(s,o)<3?(n.originalLength=i.originalStart+i.originalLength-n.originalStart,n.modifiedLength=i.modifiedStart+i.modifiedLength-n.modifiedStart):(t.push(i),n=i)}return t}(e)),h=[];for(let t=0,n=e.length;t<n;t++)h.push(ls.createFromDiffChange(e[t],s,a))}}return new us(a,l,u,c,h)}}class cs{constructor(e,t,n){this.shouldComputeCharChanges=n.shouldComputeCharChanges,this.shouldPostProcessCharChanges=n.shouldPostProcessCharChanges,this.shouldIgnoreTrimWhitespace=n.shouldIgnoreTrimWhitespace,this.shouldMakePrettyDiff=n.shouldMakePrettyDiff,this.originalLines=e,this.modifiedLines=t,this.original=new os(e),this.modified=new os(t),this.continueLineDiff=ms(n.maxComputationTime),this.continueCharDiff=ms(0===n.maxComputationTime?0:Math.min(n.maxComputationTime,5e3))}computeDiff(){if(1===this.original.lines.length&&0===this.original.lines[0].length)return 1===this.modified.lines.length&&0===this.modified.lines[0].length?{quitEarly:!1,changes:[]}:{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:1,modifiedStartLineNumber:1,modifiedEndLineNumber:this.modified.lines.length,charChanges:void 0}]};if(1===this.modified.lines.length&&0===this.modified.lines[0].length)return{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:this.original.lines.length,modifiedStartLineNumber:1,modifiedEndLineNumber:1,charChanges:void 0}]};const e=ss(this.original,this.modified,this.continueLineDiff,this.shouldMakePrettyDiff),t=e.changes,n=e.quitEarly;if(this.shouldIgnoreTrimWhitespace){const e=[];for(let n=0,r=t.length;n<r;n++)e.push(us.createFromDiffResult(this.shouldIgnoreTrimWhitespace,t[n],this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges));return{quitEarly:n,changes:e}}const r=[];let i=0,s=0;for(let o=-1,a=t.length;o<a;o++){const e=o+1<a?t[o+1]:null,n=e?e.originalStart:this.originalLines.length,l=e?e.modifiedStart:this.modifiedLines.length;for(;i<n&&s<l;){const e=this.originalLines[i],t=this.modifiedLines[s];if(e!==t){{let n=hs(e,1),o=hs(t,1);for(;n>1&&o>1;){if(e.charCodeAt(n-2)!==t.charCodeAt(o-2))break;n--,o--}(n>1||o>1)&&this._pushTrimWhitespaceCharChange(r,i+1,1,n,s+1,1,o)}{let n=ds(e,1),o=ds(t,1);const a=e.length+1,l=t.length+1;for(;n<a&&o<l;){if(e.charCodeAt(n-1)!==e.charCodeAt(o-1))break;n++,o++}(n<a||o<l)&&this._pushTrimWhitespaceCharChange(r,i+1,n,a,s+1,o,l)}}i++,s++}e&&(r.push(us.createFromDiffResult(this.shouldIgnoreTrimWhitespace,e,this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges)),i+=e.originalLength,s+=e.modifiedLength)}return{quitEarly:n,changes:r}}_pushTrimWhitespaceCharChange(e,t,n,r,i,s,o){if(this._mergeTrimWhitespaceCharChange(e,t,n,r,i,s,o))return;let a;this.shouldComputeCharChanges&&(a=[new ls(t,n,t,r,i,s,i,o)]),e.push(new us(t,t,i,i,a))}_mergeTrimWhitespaceCharChange(e,t,n,r,i,s,o){const a=e.length;if(0===a)return!1;const l=e[a-1];return 0!==l.originalEndLineNumber&&0!==l.modifiedEndLineNumber&&(l.originalEndLineNumber===t&&l.modifiedEndLineNumber===i?(this.shouldComputeCharChanges&&l.charChanges&&l.charChanges.push(new ls(t,n,t,r,i,s,i,o)),!0):l.originalEndLineNumber+1===t&&l.modifiedEndLineNumber+1===i&&(l.originalEndLineNumber=t,l.modifiedEndLineNumber=i,this.shouldComputeCharChanges&&l.charChanges&&l.charChanges.push(new ls(t,n,t,r,i,s,i,o)),!0))}}function hs(e,t){const n=function(e){for(let t=0,n=e.length;t<n;t++){const n=e.charCodeAt(t);if(32!==n&&9!==n)return t}return-1}(e);return-1===n?t:n+1}function ds(e,t){const n=function(e,t=e.length-1){for(let n=t;n>=0;n--){const t=e.charCodeAt(n);if(32!==t&&9!==t)return n}return-1}(e);return-1===n?t:n+2}function ms(e){if(0===e)return()=>!0;const t=Date.now();return()=>Date.now()-t<e}class gs{static trivial(e,t){return new gs([new fs(Oi.ofLength(e.length),Oi.ofLength(t.length))],!1)}static trivialTimedOut(e,t){return new gs([new fs(Oi.ofLength(e.length),Oi.ofLength(t.length))],!0)}constructor(e,t){this.diffs=e,this.hitTimeout=t}}class fs{static invert(e,t){const n=[];return function(e,t){for(let n=0;n<=e.length;n++)t(0===n?void 0:e[n-1],n===e.length?void 0:e[n])}(e,(e,r)=>{n.push(fs.fromOffsetPairs(e?e.getEndExclusives():bs.zero,r?r.getStarts():new bs(t,(e?e.seq2Range.endExclusive-e.seq1Range.endExclusive:0)+t)))}),n}static fromOffsetPairs(e,t){return new fs(new Oi(e.offset1,t.offset1),new Oi(e.offset2,t.offset2))}static assertSorted(e){let t;for(const n of e){if(t&&!(t.seq1Range.endExclusive<=n.seq1Range.start&&t.seq2Range.endExclusive<=n.seq2Range.start))throw new d("Sequence diffs must be sorted");t=n}}constructor(e,t){this.seq1Range=e,this.seq2Range=t}swap(){return new fs(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(e){return new fs(this.seq1Range.join(e.seq1Range),this.seq2Range.join(e.seq2Range))}delta(e){return 0===e?this:new fs(this.seq1Range.delta(e),this.seq2Range.delta(e))}deltaStart(e){return 0===e?this:new fs(this.seq1Range.deltaStart(e),this.seq2Range.deltaStart(e))}deltaEnd(e){return 0===e?this:new fs(this.seq1Range.deltaEnd(e),this.seq2Range.deltaEnd(e))}intersect(e){const t=this.seq1Range.intersect(e.seq1Range),n=this.seq2Range.intersect(e.seq2Range);if(t&&n)return new fs(t,n)}getStarts(){return new bs(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new bs(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}const ps=class e{constructor(e,t){this.offset1=e,this.offset2=t}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(t){return 0===t?this:new e(this.offset1+t,this.offset2+t)}equals(e){return this.offset1===e.offset1&&this.offset2===e.offset2}};ps.zero=new ps(0,0),ps.max=new ps(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let bs=ps;const ys=class{isValid(){return!0}};ys.instance=new ys;let vs=ys;class ws{constructor(e){if(this.timeout=e,this.startTime=Date.now(),this.valid=!0,e<=0)throw new d("timeout must be positive")}isValid(){return!(Date.now()-this.startTime<this.timeout)&&this.valid&&(this.valid=!1),this.valid}}class Cs{constructor(e,t){this.width=e,this.height=t,this.array=[],this.array=new Array(e*t)}get(e,t){return this.array[e+t*this.width]}set(e,t,n){this.array[e+t*this.width]=n}}function _s(e){return 32===e||9===e}const Ls=class e{static getKey(e){let t=this.chrKeys.get(e);return void 0===t&&(t=this.chrKeys.size,this.chrKeys.set(e,t)),t}constructor(t,n,r){this.range=t,this.lines=n,this.source=r,this.histogram=[];let i=0;for(let s=t.startLineNumber-1;s<t.endLineNumberExclusive-1;s++){const t=n[s];for(let n=0;n<t.length;n++){i++;const r=t[n],s=e.getKey(r);this.histogram[s]=(this.histogram[s]||0)+1}i++;const r=e.getKey("\n");this.histogram[r]=(this.histogram[r]||0)+1}this.totalCount=i}computeSimilarity(e){let t=0;const n=Math.max(this.histogram.length,e.histogram.length);for(let r=0;r<n;r++)t+=Math.abs((this.histogram[r]??0)-(e.histogram[r]??0));return 1-t/(this.totalCount+e.totalCount)}};Ls.chrKeys=new Map;let Ss=Ls;class Ns{compute(e,t,n=vs.instance,r){if(0===e.length||0===t.length)return gs.trivial(e,t);const i=new Cs(e.length,t.length),s=new Cs(e.length,t.length),o=new Cs(e.length,t.length);for(let m=0;m<e.length;m++)for(let a=0;a<t.length;a++){if(!n.isValid())return gs.trivialTimedOut(e,t);const l=0===m?0:i.get(m-1,a),u=0===a?0:i.get(m,a-1);let c;e.getElement(m)===t.getElement(a)?(c=0===m||0===a?0:i.get(m-1,a-1),m>0&&a>0&&3===s.get(m-1,a-1)&&(c+=o.get(m-1,a-1)),c+=r?r(m,a):1):c=-1;const h=Math.max(l,u,c);if(h===c){const e=m>0&&a>0?o.get(m-1,a-1):0;o.set(m,a,e+1),s.set(m,a,3)}else h===l?(o.set(m,a,0),s.set(m,a,1)):h===u&&(o.set(m,a,0),s.set(m,a,2));i.set(m,a,h)}const a=[];let l=e.length,u=t.length;function c(e,t){e+1===l&&t+1===u||a.push(new fs(new Oi(e+1,l),new Oi(t+1,u))),l=e,u=t}let h=e.length-1,d=t.length-1;for(;h>=0&&d>=0;)3===s.get(h,d)?(c(h,d),h--,d--):1===s.get(h,d)?h--:d--;return c(-1,-1),a.reverse(),new gs(a,!1)}}class xs{compute(e,t,n=vs.instance){if(0===e.length||0===t.length)return gs.trivial(e,t);const r=e,i=t;function s(e,t){for(;e<r.length&&t<i.length&&r.getElement(e)===i.getElement(t);)e++,t++;return e}let o=0;const a=new As;a.set(0,s(0,0));const l=new ks;l.set(0,0===a.get(0)?null:new Es(null,0,0,a.get(0)));let u=0;e:for(;;){if(o++,!n.isValid())return gs.trivialTimedOut(r,i);const e=-Math.min(o,i.length+o%2),t=Math.min(o,r.length+o%2);for(u=e;u<=t;u+=2){const n=u===t?-1:a.get(u+1),o=u===e?-1:a.get(u-1)+1,c=Math.min(Math.max(n,o),r.length),h=c-u;if(c>r.length||h>i.length)continue;const d=s(c,h);a.set(u,d);const m=c===n?l.get(u+1):l.get(u-1);if(l.set(u,d!==c?new Es(m,c,h,d-c):m),a.get(u)===r.length&&a.get(u)-u===i.length)break e}}let c=l.get(u);const h=[];let d=r.length,m=i.length;for(;;){const e=c?c.x+c.length:0,t=c?c.y+c.length:0;if(e===d&&t===m||h.push(new fs(new Oi(e,d),new Oi(t,m))),!c)break;d=c.x,m=c.y,c=c.prev}return h.reverse(),new gs(h,!1)}}class Es{constructor(e,t,n,r){this.prev=e,this.x=t,this.y=n,this.length=r}}class As{constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){if(e<0){if((e=-e-1)>=this.negativeArr.length){const e=this.negativeArr;this.negativeArr=new Int32Array(2*e.length),this.negativeArr.set(e)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){const e=this.positiveArr;this.positiveArr=new Int32Array(2*e.length),this.positiveArr.set(e)}this.positiveArr[e]=t}}}class ks{constructor(){this.positiveArr=[],this.negativeArr=[]}get(e){return e<0?(e=-e-1,this.negativeArr[e]):this.positiveArr[e]}set(e,t){e<0?(e=-e-1,this.negativeArr[e]=t):this.positiveArr[e]=t}}class Rs{constructor(e,t,n){this.lines=e,this.range=t,this.considerWhitespaceChanges=n,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let r=this.range.startLineNumber;r<=this.range.endLineNumber;r++){let t=e[r-1],i=0;r===this.range.startLineNumber&&this.range.startColumn>1&&(i=this.range.startColumn-1,t=t.substring(i)),this.lineStartOffsets.push(i);let s=0;if(!n){const e=t.trimStart();s=t.length-e.length,t=e.trimEnd()}this.trimmedWsLengthsByLineIdx.push(s);const o=r===this.range.endLineNumber?Math.min(this.range.endColumn-1-i-s,t.length):t.length;for(let e=0;e<o;e++)this.elements.push(t.charCodeAt(e));r<this.range.endLineNumber&&(this.elements.push("\n".charCodeAt(0)),this.firstElementOffsetByLineIdx.push(this.elements.length))}}toString(){return`Slice: "${this.text}"`}get text(){return this.getText(new Oi(0,this.length))}getText(e){return this.elements.slice(e.start,e.endExclusive).map(e=>String.fromCharCode(e)).join("")}getElement(e){return this.elements[e]}get length(){return this.elements.length}getBoundaryScore(e){const t=Ps(e>0?this.elements[e-1]:-1),n=Ps(e<this.elements.length?this.elements[e]:-1);if(7===t&&8===n)return 0;if(8===t)return 150;let r=0;return t!==n&&(r+=10,0===t&&1===n&&(r+=1)),r+=Is(t),r+=Is(n),r}translateOffset(e,t="right"){const n=Pi(this.firstElementOffsetByLineIdx,t=>t<=e),r=e-this.firstElementOffsetByLineIdx[n];return new $e(this.range.startLineNumber+n,1+this.lineStartOffsets[n]+r+(0===r&&"left"===t?0:this.trimmedWsLengthsByLineIdx[n]))}translateRange(e){const t=this.translateOffset(e.start,"right"),n=this.translateOffset(e.endExclusive,"left");return n.isBefore(t)?Be.fromPositions(n,n):Be.fromPositions(t,n)}findWordContaining(e){if(e<0||e>=this.elements.length)return;if(!Ts(this.elements[e]))return;let t=e;for(;t>0&&Ts(this.elements[t-1]);)t--;let n=e;for(;n<this.elements.length&&Ts(this.elements[n]);)n++;return new Oi(t,n)}findSubWordContaining(e){if(e<0||e>=this.elements.length)return;if(!Ts(this.elements[e]))return;let t=e;for(;t>0&&Ts(this.elements[t-1])&&!Ms(this.elements[t]);)t--;let n=e;for(;n<this.elements.length&&Ts(this.elements[n])&&!Ms(this.elements[n]);)n++;return new Oi(t,n)}countLinesIn(e){return this.translateOffset(e.endExclusive).lineNumber-this.translateOffset(e.start).lineNumber}isStronglyEqual(e,t){return this.elements[e]===this.elements[t]}extendToFullLines(e){const t=Ii(this.firstElementOffsetByLineIdx,t=>t<=e.start)??0,n=function(e,t){const n=Fi(e,t);return n===e.length?void 0:e[n]}(this.firstElementOffsetByLineIdx,t=>e.endExclusive<=t)??this.elements.length;return new Oi(t,n)}}function Ts(e){return e>=97&&e<=122||e>=65&&e<=90||e>=48&&e<=57}function Ms(e){return e>=65&&e<=90}const Os={0:0,1:0,2:0,3:10,4:2,5:30,6:3,7:10,8:10};function Is(e){return Os[e]}function Ps(e){return 10===e?8:13===e?7:_s(e)?6:e>=97&&e<=122?0:e>=65&&e<=90?1:e>=48&&e<=57?2:-1===e?3:44===e||59===e?5:4}function Fs(e,t,n,r,i,s){let{moves:o,excludedChanges:a}=function(e,t,n,r){const i=[],s=e.filter(e=>e.modified.isEmpty&&e.original.length>=3).map(e=>new Ss(e.original,t,e)),o=new Set(e.filter(e=>e.original.isEmpty&&e.modified.length>=3).map(e=>new Ss(e.modified,n,e))),a=new Set;for(const l of s){let e,t=-1;for(const n of o){const r=l.computeSimilarity(n);r>t&&(t=r,e=n)}if(t>.9&&e&&(o.delete(e),i.push(new Zi(l.range,e.range)),a.add(l.source),a.add(e.source)),!r.isValid())return{moves:i,excludedChanges:a}}return{moves:i,excludedChanges:a}}(e,t,n,s);if(!s.isValid())return[];const l=function(e,t,n,r,i,s){const o=[],a=new fi;for(const m of e)for(let e=m.original.startLineNumber;e<m.original.endLineNumberExclusive-2;e++){const n=`${t[e-1]}:${t[e+1-1]}:${t[e+2-1]}`;a.add(n,{range:new Ki(e,e+3)})}const l=[];e.sort(Ri(e=>e.modified.startLineNumber,Ti));for(const m of e){let e=[];for(let t=m.modified.startLineNumber;t<m.modified.endLineNumberExclusive-2;t++){const r=`${n[t-1]}:${n[t+1-1]}:${n[t+2-1]}`,i=new Ki(t,t+3),s=[];a.forEach(r,({range:t})=>{for(const r of e)if(r.originalLineRange.endLineNumberExclusive+1===t.endLineNumberExclusive&&r.modifiedLineRange.endLineNumberExclusive+1===i.endLineNumberExclusive)return r.originalLineRange=new Ki(r.originalLineRange.startLineNumber,t.endLineNumberExclusive),r.modifiedLineRange=new Ki(r.modifiedLineRange.startLineNumber,i.endLineNumberExclusive),void s.push(r);const n={modifiedLineRange:i,originalLineRange:t};l.push(n),s.push(n)}),e=s}if(!s.isValid())return[]}l.sort((u=Ri(e=>e.modifiedLineRange.length,Ti),(e,t)=>-u(e,t)));var u;const c=new $i,h=new $i;for(const m of l){const e=m.modifiedLineRange.startLineNumber-m.originalLineRange.startLineNumber,t=c.subtractFrom(m.modifiedLineRange),n=h.subtractFrom(m.originalLineRange).getWithDelta(e),r=t.getIntersection(n);for(const i of r.ranges){if(i.length<3)continue;const t=i,n=i.delta(-e);o.push(new Zi(n,t)),c.addRange(t),h.addRange(n)}}o.sort(Ri(e=>e.original.startLineNumber,Ti));const d=new Di(e);for(let m=0;m<o.length;m++){const t=o[m],n=d.findLastMonotonous(e=>e.original.startLineNumber<=t.original.startLineNumber),a=Ii(e,e=>e.modified.startLineNumber<=t.modified.startLineNumber),l=Math.max(t.original.startLineNumber-n.original.startLineNumber,t.modified.startLineNumber-a.modified.startLineNumber),u=d.findLastMonotonous(e=>e.original.startLineNumber<t.original.endLineNumberExclusive),g=Ii(e,e=>e.modified.startLineNumber<t.modified.endLineNumberExclusive),f=Math.max(u.original.endLineNumberExclusive-t.original.endLineNumberExclusive,g.modified.endLineNumberExclusive-t.modified.endLineNumberExclusive);let p,b;for(p=0;p<l;p++){const e=t.original.startLineNumber-p-1,n=t.modified.startLineNumber-p-1;if(e>r.length||n>i.length)break;if(c.contains(n)||h.contains(e))break;if(!Vs(r[e-1],i[n-1],s))break}for(p>0&&(h.addRange(new Ki(t.original.startLineNumber-p,t.original.startLineNumber)),c.addRange(new Ki(t.modified.startLineNumber-p,t.modified.startLineNumber))),b=0;b<f;b++){const e=t.original.endLineNumberExclusive+b,n=t.modified.endLineNumberExclusive+b;if(e>r.length||n>i.length)break;if(c.contains(n)||h.contains(e))break;if(!Vs(r[e-1],i[n-1],s))break}b>0&&(h.addRange(new Ki(t.original.endLineNumberExclusive,t.original.endLineNumberExclusive+b)),c.addRange(new Ki(t.modified.endLineNumberExclusive,t.modified.endLineNumberExclusive+b))),(p>0||b>0)&&(o[m]=new Zi(new Ki(t.original.startLineNumber-p,t.original.endLineNumberExclusive+b),new Ki(t.modified.startLineNumber-p,t.modified.endLineNumberExclusive+b)))}return o}(e.filter(e=>!a.has(e)),r,i,t,n,s);return function(e,t){for(const n of t)e.push(n)}(o,l),o=function(e){if(0===e.length)return e;e.sort(Ri(e=>e.original.startLineNumber,Ti));const t=[e[0]];for(let n=1;n<e.length;n++){const r=t[t.length-1],i=e[n],s=i.original.startLineNumber-r.original.endLineNumberExclusive,o=i.modified.startLineNumber-r.modified.endLineNumberExclusive;s>=0&&o>=0&&s+o<=2?t[t.length-1]=r.join(i):t.push(i)}return t}(o),o=o.filter(e=>{const n=e.original.toOffsetRange().slice(t).map(e=>e.trim());return n.join("\n").length>=15&&function(e,t){let n=0;for(const r of e)t(r)&&n++;return n}(n,e=>e.length>=2)>=2}),o=function(e,t){const n=new Di(e);return t=t.filter(t=>(n.findLastMonotonous(e=>e.original.startLineNumber<t.original.endLineNumberExclusive)||new Zi(new Ki(1,1),new Ki(1,1)))!==Ii(e,e=>e.modified.startLineNumber<t.modified.endLineNumberExclusive)),t}(e,o),o}function Vs(e,t,n){if(e.trim()===t.trim())return!0;if(e.length>300&&t.length>300)return!1;const r=(new xs).compute(new Rs([e],new Be(1,1,1,e.length),!1),new Rs([t],new Be(1,1,1,t.length),!1),n);let i=0;const s=fs.invert(r.diffs,e.length);for(const a of s)a.seq1Range.forEach(t=>{_s(e.charCodeAt(t))||i++});const o=function(t){let n=0;for(let r=0;r<e.length;r++)_s(t.charCodeAt(r))||n++;return n}(e.length>t.length?e:t);return i/o>.6&&o>10}function Ds(e,t,n){let r=n;return r=qs(e,t,r),r=qs(e,t,r),r=function(e,t,n){if(!e.getBoundaryScore||!t.getBoundaryScore)return n;for(let r=0;r<n.length;r++){const i=r>0?n[r-1]:void 0,s=n[r],o=r+1<n.length?n[r+1]:void 0,a=new Oi(i?i.seq1Range.endExclusive+1:0,o?o.seq1Range.start-1:e.length),l=new Oi(i?i.seq2Range.endExclusive+1:0,o?o.seq2Range.start-1:t.length);s.seq1Range.isEmpty?n[r]=Ks(s,e,t,a,l):s.seq2Range.isEmpty&&(n[r]=Ks(s.swap(),t,e,l,a).swap())}return n}(e,t,r),r}function qs(e,t,n){if(0===n.length)return n;const r=[];r.push(n[0]);for(let s=1;s<n.length;s++){const i=r[r.length-1];let o=n[s];if(o.seq1Range.isEmpty||o.seq2Range.isEmpty){const n=o.seq1Range.start-i.seq1Range.endExclusive;let s;for(s=1;s<=n&&(e.getElement(o.seq1Range.start-s)===e.getElement(o.seq1Range.endExclusive-s)&&t.getElement(o.seq2Range.start-s)===t.getElement(o.seq2Range.endExclusive-s));s++);if(s--,s===n){r[r.length-1]=new fs(new Oi(i.seq1Range.start,o.seq1Range.endExclusive-n),new Oi(i.seq2Range.start,o.seq2Range.endExclusive-n));continue}o=o.delta(-s)}r.push(o)}const i=[];for(let s=0;s<r.length-1;s++){const n=r[s+1];let o=r[s];if(o.seq1Range.isEmpty||o.seq2Range.isEmpty){const i=n.seq1Range.start-o.seq1Range.endExclusive;let a;for(a=0;a<i&&(e.isStronglyEqual(o.seq1Range.start+a,o.seq1Range.endExclusive+a)&&t.isStronglyEqual(o.seq2Range.start+a,o.seq2Range.endExclusive+a));a++);if(a===i){r[s+1]=new fs(new Oi(o.seq1Range.start+i,n.seq1Range.endExclusive),new Oi(o.seq2Range.start+i,n.seq2Range.endExclusive));continue}a>0&&(o=o.delta(a))}i.push(o)}return r.length>0&&i.push(r[r.length-1]),i}function Ks(e,t,n,r,i){let s=1;for(;e.seq1Range.start-s>=r.start&&e.seq2Range.start-s>=i.start&&n.isStronglyEqual(e.seq2Range.start-s,e.seq2Range.endExclusive-s)&&s<100;)s++;s--;let o=0;for(;e.seq1Range.start+o<r.endExclusive&&e.seq2Range.endExclusive+o<i.endExclusive&&n.isStronglyEqual(e.seq2Range.start+o,e.seq2Range.endExclusive+o)&&o<100;)o++;if(0===s&&0===o)return e;let a=0,l=-1;for(let u=-s;u<=o;u++){const r=e.seq2Range.start+u,i=e.seq2Range.endExclusive+u,s=e.seq1Range.start+u,o=t.getBoundaryScore(s)+n.getBoundaryScore(r)+n.getBoundaryScore(i);o>l&&(l=o,a=u)}return e.delta(a)}function $s(e,t,n,r,i=!1){const s=fs.invert(n,e.length),o=[];let a=new bs(0,0);function l(n,l){if(n.offset1<a.offset1||n.offset2<a.offset2)return;const u=r(e,n.offset1),c=r(t,n.offset2);if(!u||!c)return;let h=new fs(u,c);const d=h.intersect(l);let m=d.seq1Range.length,g=d.seq2Range.length;for(;s.length>0;){const n=s[0];if(!(n.seq1Range.intersects(h.seq1Range)||n.seq2Range.intersects(h.seq2Range)))break;const i=r(e,n.seq1Range.start),o=r(t,n.seq2Range.start),a=new fs(i,o),l=a.intersect(n);if(m+=l.seq1Range.length,g+=l.seq2Range.length,h=h.join(a),!(h.seq1Range.endExclusive>=n.seq1Range.endExclusive))break;s.shift()}(i&&m+g<h.seq1Range.length+h.seq2Range.length||m+g<2*(h.seq1Range.length+h.seq2Range.length)/3)&&o.push(h),a=h.getEndExclusives()}for(;s.length>0;){const e=s.shift();e.seq1Range.isEmpty||(l(e.getStarts(),e),l(e.getEndExclusives().delta(-1),e))}return function(e,t){const n=[];for(;e.length>0||t.length>0;){const r=e[0],i=t[0];let s;s=r&&(!i||r.seq1Range.start<i.seq1Range.start)?e.shift():t.shift(),n.length>0&&n[n.length-1].seq1Range.endExclusive>=s.seq1Range.start?n[n.length-1]=n[n.length-1].join(s):n.push(s)}return n}(n,o)}class Bs{constructor(e,t){this.trimmedHash=e,this.lines=t}getElement(e){return this.trimmedHash[e]}get length(){return this.trimmedHash.length}getBoundaryScore(e){return 1e3-((0===e?0:Us(this.lines[e-1]))+(e===this.lines.length?0:Us(this.lines[e])))}getText(e){return this.lines.slice(e.start,e.endExclusive).join("\n")}isStronglyEqual(e,t){return this.lines[e]===this.lines[t]}}function Us(e){let t=0;for(;t<e.length&&(32===e.charCodeAt(t)||9===e.charCodeAt(t));)t++;return t}class js{constructor(){this.dynamicProgrammingDiffing=new Ns,this.myersDiffingAlgorithm=new xs}computeDiff(e,t,n){if(e.length<=1&&function(e,t,n=(e,t)=>e===t){if(e===t)return!0;if(!e||!t)return!1;if(e.length!==t.length)return!1;for(let r=0,i=e.length;r<i;r++)if(!n(e[r],t[r]))return!1;return!0}(e,t,(e,t)=>e===t))return new xi([],[],!1);if(1===e.length&&0===e[0].length||1===t.length&&0===t[0].length)return new xi([new ts(new Ki(1,e.length+1),new Ki(1,t.length+1),[new ns(new Be(1,1,e.length,e[e.length-1].length+1),new Be(1,1,t.length,t[t.length-1].length+1))])],[],!1);const r=0===n.maxComputationTimeMs?vs.instance:new ws(n.maxComputationTimeMs),i=!n.ignoreTrimWhitespace,s=new Map;function o(e){let t=s.get(e);return void 0===t&&(t=s.size,s.set(e,t)),t}const a=e.map(e=>o(e.trim())),l=t.map(e=>o(e.trim())),u=new Bs(a,e),c=new Bs(l,t),h=(()=>u.length+c.length<1700?this.dynamicProgrammingDiffing.compute(u,c,r,(n,r)=>e[n]===t[r]?0===t[r].length?.1:1+Math.log(1+t[r].length):.99):this.myersDiffingAlgorithm.compute(u,c,r))();let d=h.diffs,m=h.hitTimeout;d=Ds(u,c,d),d=function(e,t,n){let r=n;if(0===r.length)return r;let i,s=0;do{i=!1;const t=[r[0]];for(let n=1;n<r.length;n++){let s=function(t,n){const r=new Oi(a.seq1Range.endExclusive,o.seq1Range.start);return e.getText(r).replace(/\s/g,"").length<=4&&(t.seq1Range.length+t.seq2Range.length>5||n.seq1Range.length+n.seq2Range.length>5)};const o=r[n],a=t[t.length-1];s(a,o)?(i=!0,t[t.length-1]=t[t.length-1].join(o)):t.push(o)}r=t}while(s++<10&&i);return r}(u,0,d);const f=[],p=s=>{if(i)for(let o=0;o<s;o++){const s=b+o,a=y+o;if(e[s]!==t[a]){const o=this.refineDiff(e,t,new fs(new Oi(s,s+1),new Oi(a,a+1)),r,i,n);for(const e of o.mappings)f.push(e);o.hitTimeout&&(m=!0)}}};let b=0,y=0;for(const L of d){g(()=>L.seq1Range.start-b===L.seq2Range.start-y);p(L.seq1Range.start-b),b=L.seq1Range.endExclusive,y=L.seq2Range.endExclusive;const s=this.refineDiff(e,t,L,r,i,n);s.hitTimeout&&(m=!0);for(const e of s.mappings)f.push(e)}p(e.length-b);const v=new Xi(e),w=new Xi(t),C=rs(f,v,w);let _=[];return n.computeMoves&&(_=this.computeMoves(C,e,t,a,l,r,i,n)),g(()=>{function n(e,t){if(e.lineNumber<1||e.lineNumber>t.length)return!1;const n=t[e.lineNumber-1];return!(e.column<1||e.column>n.length+1)}function r(e,t){return!(e.startLineNumber<1||e.startLineNumber>t.length+1)&&!(e.endLineNumberExclusive<1||e.endLineNumberExclusive>t.length+1)}for(const i of C){if(!i.innerChanges)return!1;for(const r of i.innerChanges){if(!(n(r.modifiedRange.getStartPosition(),t)&&n(r.modifiedRange.getEndPosition(),t)&&n(r.originalRange.getStartPosition(),e)&&n(r.originalRange.getEndPosition(),e)))return!1}if(!r(i.modified,t)||!r(i.original,e))return!1}return!0}),new xi(C,_,m)}computeMoves(e,t,n,r,i,s,o,a){return Fs(e,t,n,r,i,s).map(e=>{const r=rs(this.refineDiff(t,n,new fs(e.original.toOffsetRange(),e.modified.toOffsetRange()),s,o,a).mappings,new Xi(t),new Xi(n),!0);return new Ei(e,r)})}refineDiff(e,t,n,r,i,s){var o;const a=new Zi(new Ki((o=n).seq1Range.start+1,o.seq1Range.endExclusive+1),new Ki(o.seq2Range.start+1,o.seq2Range.endExclusive+1)).toRangeMapping2(e,t),l=new Rs(e,a.originalRange,i),u=new Rs(t,a.modifiedRange,i),c=l.length+u.length<500?this.dynamicProgrammingDiffing.compute(l,u,r):this.myersDiffingAlgorithm.compute(l,u,r);let h=c.diffs;h=Ds(l,u,h),h=$s(l,u,h,(e,t)=>e.findWordContaining(t)),s.extendToSubwords&&(h=$s(l,u,h,(e,t)=>e.findSubWordContaining(t),!0)),h=function(e,t,n){const r=[];for(const i of n){const e=r[r.length-1];e&&(i.seq1Range.start-e.seq1Range.endExclusive<=2||i.seq2Range.start-e.seq2Range.endExclusive<=2)?r[r.length-1]=new fs(e.seq1Range.join(i.seq1Range),e.seq2Range.join(i.seq2Range)):r.push(i)}return r}(0,0,h),h=function(e,t,n){let r=n;if(0===r.length)return r;let i,s=0;do{i=!1;const n=[r[0]];for(let s=1;s<r.length;s++){let o=function(n,r){const i=new Oi(l.seq1Range.endExclusive,a.seq1Range.start);if(e.countLinesIn(i)>5||i.length>500)return!1;const s=e.getText(i).trim();if(s.length>20||s.split(/\r\n|\r|\n/).length>1)return!1;const o=e.countLinesIn(n.seq1Range),u=n.seq1Range.length,c=t.countLinesIn(n.seq2Range),h=n.seq2Range.length,d=e.countLinesIn(r.seq1Range),m=r.seq1Range.length,g=t.countLinesIn(r.seq2Range),f=r.seq2Range.length;function p(e){return Math.min(e,130)}return Math.pow(Math.pow(p(40*o+u),1.5)+Math.pow(p(40*c+h),1.5),1.5)+Math.pow(Math.pow(p(40*d+m),1.5)+Math.pow(p(40*g+f),1.5),1.5)>74184.96480721243};const a=r[s],l=n[n.length-1];o(l,a)?(i=!0,n[n.length-1]=n[n.length-1].join(a)):n.push(a)}r=n}while(s++<10&&i);const o=[];return function(e,t){for(let n=0;n<e.length;n++)t(0===n?void 0:e[n-1],e[n],n+1===e.length?void 0:e[n+1])}(r,(t,n,r)=>{let i=n;function s(e){return e.length>0&&e.trim().length<=3&&n.seq1Range.length+n.seq2Range.length>100}const a=e.extendToFullLines(n.seq1Range),l=e.getText(new Oi(a.start,n.seq1Range.start));s(l)&&(i=i.deltaStart(-l.length));const u=e.getText(new Oi(n.seq1Range.endExclusive,a.endExclusive));s(u)&&(i=i.deltaEnd(u.length));const c=fs.fromOffsetPairs(t?t.getEndExclusives():bs.zero,r?r.getStarts():bs.max),h=i.intersect(c);o.length>0&&h.getStarts().equals(o[o.length-1].getEndExclusives())?o[o.length-1]=o[o.length-1].join(h):o.push(h)}),o}(l,u,h);return{mappings:h.map(e=>new ns(l.translateRange(e.seq1Range),u.translateRange(e.seq2Range))),hitTimeout:c.hitTimeout}}}const Ws=()=>new is,zs=()=>new js;function Hs(e,t){const n=Math.pow(10,t);return Math.round(e*n)/n}class Gs{constructor(e,t,n,r=1){this._rgbaBrand=void 0,this.r=0|Math.min(255,Math.max(0,e)),this.g=0|Math.min(255,Math.max(0,t)),this.b=0|Math.min(255,Math.max(0,n)),this.a=Hs(Math.max(Math.min(1,r),0),3)}static equals(e,t){return e.r===t.r&&e.g===t.g&&e.b===t.b&&e.a===t.a}}class Js{constructor(e,t,n,r){this._hslaBrand=void 0,this.h=0|Math.max(Math.min(360,e),0),this.s=Hs(Math.max(Math.min(1,t),0),3),this.l=Hs(Math.max(Math.min(1,n),0),3),this.a=Hs(Math.max(Math.min(1,r),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.l===t.l&&e.a===t.a}static fromRGBA(e){const t=e.r/255,n=e.g/255,r=e.b/255,i=e.a,s=Math.max(t,n,r),o=Math.min(t,n,r);let a=0,l=0;const u=(o+s)/2,c=s-o;if(c>0){switch(l=Math.min(u<=.5?c/(2*u):c/(2-2*u),1),s){case t:a=(n-r)/c+(n<r?6:0);break;case n:a=(r-t)/c+2;break;case r:a=(t-n)/c+4}a*=60,a=Math.round(a)}return new Js(a,l,u,i)}static _hue2rgb(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}static toRGBA(e){const t=e.h/360,{s:n,l:r,a:i}=e;let s,o,a;if(0===n)s=o=a=r;else{const e=r<.5?r*(1+n):r+n-r*n,i=2*r-e;s=Js._hue2rgb(i,e,t+1/3),o=Js._hue2rgb(i,e,t),a=Js._hue2rgb(i,e,t-1/3)}return new Gs(Math.round(255*s),Math.round(255*o),Math.round(255*a),i)}}class Xs{constructor(e,t,n,r){this._hsvaBrand=void 0,this.h=0|Math.max(Math.min(360,e),0),this.s=Hs(Math.max(Math.min(1,t),0),3),this.v=Hs(Math.max(Math.min(1,n),0),3),this.a=Hs(Math.max(Math.min(1,r),0),3)}static equals(e,t){return e.h===t.h&&e.s===t.s&&e.v===t.v&&e.a===t.a}static fromRGBA(e){const t=e.r/255,n=e.g/255,r=e.b/255,i=Math.max(t,n,r),s=i-Math.min(t,n,r),o=0===i?0:s/i;let a;return a=0===s?0:i===t?((n-r)/s%6+6)%6:i===n?(r-t)/s+2:(t-n)/s+4,new Xs(Math.round(60*a),o,i,e.a)}static toRGBA(e){const{h:t,s:n,v:r,a:i}=e,s=r*n,o=s*(1-Math.abs(t/60%2-1)),a=r-s;let[l,u,c]=[0,0,0];return t<60?(l=s,u=o):t<120?(l=o,u=s):t<180?(u=s,c=o):t<240?(u=o,c=s):t<300?(l=o,c=s):t<=360&&(l=s,c=o),l=Math.round(255*(l+a)),u=Math.round(255*(u+a)),c=Math.round(255*(c+a)),new Gs(l,u,c,i)}}let Qs=((s=class{static fromHex(e){return s.Format.CSS.parseHex(e)||s.red}static equals(e,t){return!e&&!t||!(!e||!t)&&e.equals(t)}get hsla(){return this._hsla?this._hsla:Js.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:Xs.fromRGBA(this.rgba)}constructor(e){if(!e)throw new Error("Color needs a value");if(e instanceof Gs)this.rgba=e;else if(e instanceof Js)this._hsla=e,this.rgba=Js.toRGBA(e);else{if(!(e instanceof Xs))throw new Error("Invalid color ctor argument");this._hsva=e,this.rgba=Xs.toRGBA(e)}}equals(e){return!!e&&Gs.equals(this.rgba,e.rgba)&&Js.equals(this.hsla,e.hsla)&&Xs.equals(this.hsva,e.hsva)}getRelativeLuminance(){return Hs(.2126*s._relativeLuminanceForComponent(this.rgba.r)+.7152*s._relativeLuminanceForComponent(this.rgba.g)+.0722*s._relativeLuminanceForComponent(this.rgba.b),4)}static _relativeLuminanceForComponent(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}isLighter(){return(299*this.rgba.r+587*this.rgba.g+114*this.rgba.b)/1e3>=128}isLighterThan(e){return this.getRelativeLuminance()>e.getRelativeLuminance()}isDarkerThan(e){return this.getRelativeLuminance()<e.getRelativeLuminance()}lighten(e){return new s(new Js(this.hsla.h,this.hsla.s,this.hsla.l+this.hsla.l*e,this.hsla.a))}darken(e){return new s(new Js(this.hsla.h,this.hsla.s,this.hsla.l-this.hsla.l*e,this.hsla.a))}transparent(e){const{r:t,g:n,b:r,a:i}=this.rgba;return new s(new Gs(t,n,r,i*e))}isTransparent(){return 0===this.rgba.a}isOpaque(){return 1===this.rgba.a}opposite(){return new s(new Gs(255-this.rgba.r,255-this.rgba.g,255-this.rgba.b,this.rgba.a))}mix(e,t=.5){const n=Math.min(Math.max(t,0),1),r=this.rgba,i=e.rgba,o=r.r+(i.r-r.r)*n,a=r.g+(i.g-r.g)*n,l=r.b+(i.b-r.b)*n,u=r.a+(i.a-r.a)*n;return new s(new Gs(o,a,l,u))}makeOpaque(e){if(this.isOpaque()||1!==e.rgba.a)return this;const{r:t,g:n,b:r,a:i}=this.rgba;return new s(new Gs(e.rgba.r-i*(e.rgba.r-t),e.rgba.g-i*(e.rgba.g-n),e.rgba.b-i*(e.rgba.b-r),1))}toString(){return this._toString||(this._toString=s.Format.CSS.format(this)),this._toString}toNumber32Bit(){return this._toNumber32Bit||(this._toNumber32Bit=(this.rgba.r<<24|this.rgba.g<<16|this.rgba.b<<8|255*this.rgba.a)>>>0),this._toNumber32Bit}static getLighterColor(e,t,n){if(e.isLighterThan(t))return e;n=n||.5;const r=e.getRelativeLuminance(),i=t.getRelativeLuminance();return n=n*(i-r)/i,e.lighten(n)}static getDarkerColor(e,t,n){if(e.isDarkerThan(t))return e;n=n||.5;const r=e.getRelativeLuminance();return n=n*(r-t.getRelativeLuminance())/r,e.darken(n)}}).white=new s(new Gs(255,255,255,1)),s.black=new s(new Gs(0,0,0,1)),s.red=new s(new Gs(255,0,0,1)),s.blue=new s(new Gs(0,0,255,1)),s.green=new s(new Gs(0,255,0,1)),s.cyan=new s(new Gs(0,255,255,1)),s.lightgrey=new s(new Gs(211,211,211,1)),s.transparent=new s(new Gs(0,0,0,0)),s);var Zs,Ys;function eo(e){const t=[];for(const n of e){const e=Number(n);(e||0===e&&""!==n.replace(/\s/g,""))&&t.push(e)}return t}function to(e,t,n,r){return{red:e/255,blue:n/255,green:t/255,alpha:r}}function no(e,t){const n=t.index,r=t[0].length;if(void 0===n)return;const i=e.positionAt(n);return{startLineNumber:i.lineNumber,startColumn:i.column,endLineNumber:i.lineNumber,endColumn:i.column+r}}function ro(e,t){if(!e)return;const n=Qs.Format.CSS.parseHex(t);return n?{range:e,color:to(n.rgba.r,n.rgba.g,n.rgba.b,n.rgba.a)}:void 0}function io(e,t,n){if(!e||1!==t.length)return;const r=eo(t[0].values());return{range:e,color:to(r[0],r[1],r[2],n?r[3]:1)}}function so(e,t,n){if(!e||1!==t.length)return;const r=eo(t[0].values()),i=new Qs(new Js(r[0],r[1]/100,r[2]/100,n?r[3]:1));return{range:e,color:to(i.rgba.r,i.rgba.g,i.rgba.b,i.rgba.a)}}function oo(e,t){return"string"==typeof e?[...e.matchAll(t)]:e.findMatches(t)}function ao(e){return e&&"function"==typeof e.getValue&&"function"==typeof e.positionAt?function(e){const t=[],n=oo(e,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"));if(n.length>0)for(const r of n){const n=r.filter(e=>void 0!==e),i=n[1],s=n[2];if(!s)continue;let o;if("rgb"===i){const t=/^\(\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;o=io(no(e,r),oo(s,t),!1)}else if("rgba"===i){const t=/^\(\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;o=io(no(e,r),oo(s,t),!0)}else if("hsl"===i){const t=/^\(\s*((?:360(?:\.0+)?|(?:36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])(?:\.\d+)?))\s*[\s,]\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*[\s,]\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;o=so(no(e,r),oo(s,t),!1)}else if("hsla"===i){const t=/^\(\s*((?:360(?:\.0+)?|(?:36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])(?:\.\d+)?))\s*[\s,]\s*(100|\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;o=so(no(e,r),oo(s,t),!0)}else"#"===i&&(o=ro(no(e,r),i+s));o&&t.push(o)}return t}(e):[]}Zs=Qs||(Qs={}),function(e){function t(e){const t=e.toString(16);return 2!==t.length?"0"+t:t}function n(e){const t=e.length;if(0===t)return null;if(35!==e.charCodeAt(0))return null;if(7===t){const t=16*r(e.charCodeAt(1))+r(e.charCodeAt(2)),n=16*r(e.charCodeAt(3))+r(e.charCodeAt(4)),i=16*r(e.charCodeAt(5))+r(e.charCodeAt(6));return new Zs(new Gs(t,n,i,1))}if(9===t){const t=16*r(e.charCodeAt(1))+r(e.charCodeAt(2)),n=16*r(e.charCodeAt(3))+r(e.charCodeAt(4)),i=16*r(e.charCodeAt(5))+r(e.charCodeAt(6)),s=16*r(e.charCodeAt(7))+r(e.charCodeAt(8));return new Zs(new Gs(t,n,i,s/255))}if(4===t){const t=r(e.charCodeAt(1)),n=r(e.charCodeAt(2)),i=r(e.charCodeAt(3));return new Zs(new Gs(16*t+t,16*n+n,16*i+i))}if(5===t){const t=r(e.charCodeAt(1)),n=r(e.charCodeAt(2)),i=r(e.charCodeAt(3)),s=r(e.charCodeAt(4));return new Zs(new Gs(16*t+t,16*n+n,16*i+i,(16*s+s)/255))}return null}function r(e){switch(e){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:case 65:return 10;case 98:case 66:return 11;case 99:case 67:return 12;case 100:case 68:return 13;case 101:case 69:return 14;case 102:case 70:return 15}return 0}e.formatRGB=function(e){return 1===e.rgba.a?`rgb(${e.rgba.r}, ${e.rgba.g}, ${e.rgba.b})`:Zs.Format.CSS.formatRGBA(e)},e.formatRGBA=function(e){return`rgba(${e.rgba.r}, ${e.rgba.g}, ${e.rgba.b}, ${+e.rgba.a.toFixed(2)})`},e.formatHSL=function(e){return 1===e.hsla.a?`hsl(${e.hsla.h}, ${Math.round(100*e.hsla.s)}%, ${Math.round(100*e.hsla.l)}%)`:Zs.Format.CSS.formatHSLA(e)},e.formatHSLA=function(e){return`hsla(${e.hsla.h}, ${Math.round(100*e.hsla.s)}%, ${Math.round(100*e.hsla.l)}%, ${e.hsla.a.toFixed(2)})`},e.formatHex=function(e){return`#${t(e.rgba.r)}${t(e.rgba.g)}${t(e.rgba.b)}`},e.formatHexA=function(e,n=!1){return n&&1===e.rgba.a?Zs.Format.CSS.formatHex(e):`#${t(e.rgba.r)}${t(e.rgba.g)}${t(e.rgba.b)}${t(Math.round(255*e.rgba.a))}`},e.format=function(e){return e.isOpaque()?Zs.Format.CSS.formatHex(e):Zs.Format.CSS.formatRGBA(e)},e.parse=function(e){var t,r,i,s,o,a,l;if("transparent"===e)return Zs.transparent;if(e.startsWith("#"))return n(e);if(e.startsWith("rgba(")){const n=e.match(/rgba\((?<r>(?:\+|-)?\d+), *(?<g>(?:\+|-)?\d+), *(?<b>(?:\+|-)?\d+), *(?<a>(?:\+|-)?\d+(\.\d+)?)\)/);if(!n)throw new Error("Invalid color format "+e);const o=parseInt((null==(t=n.groups)?void 0:t.r)??"0"),a=parseInt((null==(r=n.groups)?void 0:r.g)??"0"),l=parseInt((null==(i=n.groups)?void 0:i.b)??"0"),u=parseFloat((null==(s=n.groups)?void 0:s.a)??"0");return new Zs(new Gs(o,a,l,u))}if(e.startsWith("rgb(")){const t=e.match(/rgb\((?<r>(?:\+|-)?\d+), *(?<g>(?:\+|-)?\d+), *(?<b>(?:\+|-)?\d+)\)/);if(!t)throw new Error("Invalid color format "+e);const n=parseInt((null==(o=t.groups)?void 0:o.r)??"0"),r=parseInt((null==(a=t.groups)?void 0:a.g)??"0"),i=parseInt((null==(l=t.groups)?void 0:l.b)??"0");return new Zs(new Gs(n,r,i))}return function(e){switch(e){case"aliceblue":return new Zs(new Gs(240,248,255,1));case"antiquewhite":return new Zs(new Gs(250,235,215,1));case"aqua":case"cyan":return new Zs(new Gs(0,255,255,1));case"aquamarine":return new Zs(new Gs(127,255,212,1));case"azure":return new Zs(new Gs(240,255,255,1));case"beige":return new Zs(new Gs(245,245,220,1));case"bisque":return new Zs(new Gs(255,228,196,1));case"black":return new Zs(new Gs(0,0,0,1));case"blanchedalmond":return new Zs(new Gs(255,235,205,1));case"blue":return new Zs(new Gs(0,0,255,1));case"blueviolet":return new Zs(new Gs(138,43,226,1));case"brown":return new Zs(new Gs(165,42,42,1));case"burlywood":return new Zs(new Gs(222,184,135,1));case"cadetblue":return new Zs(new Gs(95,158,160,1));case"chartreuse":return new Zs(new Gs(127,255,0,1));case"chocolate":return new Zs(new Gs(210,105,30,1));case"coral":return new Zs(new Gs(255,127,80,1));case"cornflowerblue":return new Zs(new Gs(100,149,237,1));case"cornsilk":return new Zs(new Gs(255,248,220,1));case"crimson":return new Zs(new Gs(220,20,60,1));case"darkblue":return new Zs(new Gs(0,0,139,1));case"darkcyan":return new Zs(new Gs(0,139,139,1));case"darkgoldenrod":return new Zs(new Gs(184,134,11,1));case"darkgray":case"darkgrey":return new Zs(new Gs(169,169,169,1));case"darkgreen":return new Zs(new Gs(0,100,0,1));case"darkkhaki":return new Zs(new Gs(189,183,107,1));case"darkmagenta":return new Zs(new Gs(139,0,139,1));case"darkolivegreen":return new Zs(new Gs(85,107,47,1));case"darkorange":return new Zs(new Gs(255,140,0,1));case"darkorchid":return new Zs(new Gs(153,50,204,1));case"darkred":return new Zs(new Gs(139,0,0,1));case"darksalmon":return new Zs(new Gs(233,150,122,1));case"darkseagreen":return new Zs(new Gs(143,188,143,1));case"darkslateblue":return new Zs(new Gs(72,61,139,1));case"darkslategray":case"darkslategrey":return new Zs(new Gs(47,79,79,1));case"darkturquoise":return new Zs(new Gs(0,206,209,1));case"darkviolet":return new Zs(new Gs(148,0,211,1));case"deeppink":return new Zs(new Gs(255,20,147,1));case"deepskyblue":return new Zs(new Gs(0,191,255,1));case"dimgray":case"dimgrey":return new Zs(new Gs(105,105,105,1));case"dodgerblue":return new Zs(new Gs(30,144,255,1));case"firebrick":return new Zs(new Gs(178,34,34,1));case"floralwhite":return new Zs(new Gs(255,250,240,1));case"forestgreen":return new Zs(new Gs(34,139,34,1));case"fuchsia":case"magenta":return new Zs(new Gs(255,0,255,1));case"gainsboro":return new Zs(new Gs(220,220,220,1));case"ghostwhite":return new Zs(new Gs(248,248,255,1));case"gold":return new Zs(new Gs(255,215,0,1));case"goldenrod":return new Zs(new Gs(218,165,32,1));case"gray":case"grey":return new Zs(new Gs(128,128,128,1));case"green":return new Zs(new Gs(0,128,0,1));case"greenyellow":return new Zs(new Gs(173,255,47,1));case"honeydew":return new Zs(new Gs(240,255,240,1));case"hotpink":return new Zs(new Gs(255,105,180,1));case"indianred":return new Zs(new Gs(205,92,92,1));case"indigo":return new Zs(new Gs(75,0,130,1));case"ivory":return new Zs(new Gs(255,255,240,1));case"khaki":return new Zs(new Gs(240,230,140,1));case"lavender":return new Zs(new Gs(230,230,250,1));case"lavenderblush":return new Zs(new Gs(255,240,245,1));case"lawngreen":return new Zs(new Gs(124,252,0,1));case"lemonchiffon":return new Zs(new Gs(255,250,205,1));case"lightblue":return new Zs(new Gs(173,216,230,1));case"lightcoral":return new Zs(new Gs(240,128,128,1));case"lightcyan":return new Zs(new Gs(224,255,255,1));case"lightgoldenrodyellow":return new Zs(new Gs(250,250,210,1));case"lightgray":case"lightgrey":return new Zs(new Gs(211,211,211,1));case"lightgreen":return new Zs(new Gs(144,238,144,1));case"lightpink":return new Zs(new Gs(255,182,193,1));case"lightsalmon":return new Zs(new Gs(255,160,122,1));case"lightseagreen":return new Zs(new Gs(32,178,170,1));case"lightskyblue":return new Zs(new Gs(135,206,250,1));case"lightslategray":case"lightslategrey":return new Zs(new Gs(119,136,153,1));case"lightsteelblue":return new Zs(new Gs(176,196,222,1));case"lightyellow":return new Zs(new Gs(255,255,224,1));case"lime":return new Zs(new Gs(0,255,0,1));case"limegreen":return new Zs(new Gs(50,205,50,1));case"linen":return new Zs(new Gs(250,240,230,1));case"maroon":return new Zs(new Gs(128,0,0,1));case"mediumaquamarine":return new Zs(new Gs(102,205,170,1));case"mediumblue":return new Zs(new Gs(0,0,205,1));case"mediumorchid":return new Zs(new Gs(186,85,211,1));case"mediumpurple":return new Zs(new Gs(147,112,219,1));case"mediumseagreen":return new Zs(new Gs(60,179,113,1));case"mediumslateblue":return new Zs(new Gs(123,104,238,1));case"mediumspringgreen":return new Zs(new Gs(0,250,154,1));case"mediumturquoise":return new Zs(new Gs(72,209,204,1));case"mediumvioletred":return new Zs(new Gs(199,21,133,1));case"midnightblue":return new Zs(new Gs(25,25,112,1));case"mintcream":return new Zs(new Gs(245,255,250,1));case"mistyrose":return new Zs(new Gs(255,228,225,1));case"moccasin":return new Zs(new Gs(255,228,181,1));case"navajowhite":return new Zs(new Gs(255,222,173,1));case"navy":return new Zs(new Gs(0,0,128,1));case"oldlace":return new Zs(new Gs(253,245,230,1));case"olive":return new Zs(new Gs(128,128,0,1));case"olivedrab":return new Zs(new Gs(107,142,35,1));case"orange":return new Zs(new Gs(255,165,0,1));case"orangered":return new Zs(new Gs(255,69,0,1));case"orchid":return new Zs(new Gs(218,112,214,1));case"palegoldenrod":return new Zs(new Gs(238,232,170,1));case"palegreen":return new Zs(new Gs(152,251,152,1));case"paleturquoise":return new Zs(new Gs(175,238,238,1));case"palevioletred":return new Zs(new Gs(219,112,147,1));case"papayawhip":return new Zs(new Gs(255,239,213,1));case"peachpuff":return new Zs(new Gs(255,218,185,1));case"peru":return new Zs(new Gs(205,133,63,1));case"pink":return new Zs(new Gs(255,192,203,1));case"plum":return new Zs(new Gs(221,160,221,1));case"powderblue":return new Zs(new Gs(176,224,230,1));case"purple":return new Zs(new Gs(128,0,128,1));case"rebeccapurple":return new Zs(new Gs(102,51,153,1));case"red":return new Zs(new Gs(255,0,0,1));case"rosybrown":return new Zs(new Gs(188,143,143,1));case"royalblue":return new Zs(new Gs(65,105,225,1));case"saddlebrown":return new Zs(new Gs(139,69,19,1));case"salmon":return new Zs(new Gs(250,128,114,1));case"sandybrown":return new Zs(new Gs(244,164,96,1));case"seagreen":return new Zs(new Gs(46,139,87,1));case"seashell":return new Zs(new Gs(255,245,238,1));case"sienna":return new Zs(new Gs(160,82,45,1));case"silver":return new Zs(new Gs(192,192,192,1));case"skyblue":return new Zs(new Gs(135,206,235,1));case"slateblue":return new Zs(new Gs(106,90,205,1));case"slategray":case"slategrey":return new Zs(new Gs(112,128,144,1));case"snow":return new Zs(new Gs(255,250,250,1));case"springgreen":return new Zs(new Gs(0,255,127,1));case"steelblue":return new Zs(new Gs(70,130,180,1));case"tan":return new Zs(new Gs(210,180,140,1));case"teal":return new Zs(new Gs(0,128,128,1));case"thistle":return new Zs(new Gs(216,191,216,1));case"tomato":return new Zs(new Gs(255,99,71,1));case"turquoise":return new Zs(new Gs(64,224,208,1));case"violet":return new Zs(new Gs(238,130,238,1));case"wheat":return new Zs(new Gs(245,222,179,1));case"white":return new Zs(new Gs(255,255,255,1));case"whitesmoke":return new Zs(new Gs(245,245,245,1));case"yellow":return new Zs(new Gs(255,255,0,1));case"yellowgreen":return new Zs(new Gs(154,205,50,1));default:return null}}(e)},e.parseHex=n}((Ys=Zs.Format||(Zs.Format={})).CSS||(Ys.CSS={}));const lo=/^-+|-+$/g,uo=100;function co(e,t){var n;let r=[];if(t.findRegionSectionHeaders&&(null==(n=t.foldingRules)?void 0:n.markers)){const n=function(e,t){const n=[],r=e.getLineCount();for(let i=1;i<=r;i++){const r=e.getLineContent(i),s=r.match(t.foldingRules.markers.start);if(s){const e={startLineNumber:i,startColumn:s[0].length+1,endLineNumber:i,endColumn:r.length+1};if(e.endColumn>e.startColumn){const t={range:e,...ho(r.substring(s[0].length)),shouldBeInComments:!1};(t.text||t.hasSeparatorLine)&&n.push(t)}}}return n}(e,t);r=r.concat(n)}if(t.findMarkSectionHeaders){const n=function(e,t){const n=[],r=e.getLineCount();if(!t.markSectionHeaderRegex||""===t.markSectionHeaderRegex.trim())return n;const i=function(e){if(!e||0===e.length)return!1;for(let t=0,n=e.length;t<n;t++){const r=e.charCodeAt(t);if(10===r)return!0;if(92===r){if(t++,t>=n)break;const r=e.charCodeAt(t);if(110===r||114===r||87===r)return!0}}return!1}(t.markSectionHeaderRegex),s=new RegExp(t.markSectionHeaderRegex,"gdm"+(i?"s":""));if(o=s,"^"!==o.source&&"^$"!==o.source&&"$"!==o.source&&"^\\s*$"!==o.source&&o.exec("")&&0===o.lastIndex)return n;var o;for(let a=1;a<=r;a+=95){const t=Math.min(a+uo-1,r),i=[];for(let n=a;n<=t;n++)i.push(e.getLineContent(n));const o=i.join("\n");let l;for(s.lastIndex=0;null!==(l=s.exec(o));){const e=o.substring(0,l.index),t=a+(e.match(/\n/g)||[]).length,r=l[0].split("\n"),i=r.length,u=t+i-1,c=e.lastIndexOf("\n")+1,h=l.index-c+1,d=r[r.length-1],m={range:{startLineNumber:t,startColumn:h,endLineNumber:u,endColumn:1===i?h+l[0].length:d.length+1},text:(l.groups??{}).label??"",hasSeparatorLine:""!==((l.groups??{}).separator??""),shouldBeInComments:!0};(m.text||m.hasSeparatorLine)&&(0===n.length||n[n.length-1].range.endLineNumber<m.range.startLineNumber)&&n.push(m),s.lastIndex=l.index+l[0].length}}return n}(e,t);r=r.concat(n)}return r}function ho(e){const t=(e=e.trim()).startsWith("-");return{text:e=e.replace(lo,""),hasSeparatorLine:t}}class mo{get isRejected(){var e;return 1===(null==(e=this.outcome)?void 0:e.outcome)}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}cancel(){return this.error(new c)}}var go,fo;(fo=go||(go={})).settled=async function(e){let t;const n=await Promise.all(e.map(e=>e.then(e=>e,e=>{t||(t=e)})));if(void 0!==t)throw t;return n},fo.withAsyncBody=function(e){return new Promise(async(t,n)=>{try{await e(t,n)}catch(r){n(r)}})};class po{constructor(){this._unsatisfiedConsumers=[],this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(e){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){const t=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(t,e)}else this._unconsumedValues.push(e)}produceFinal(e){this._ensureNoFinalValue(),this._finalValue=e;for(const t of this._unsatisfiedConsumers)this._resolveOrRejectDeferred(t,e);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new d("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(e,t){t.ok?e.complete(t.value):e.error(t.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){const e=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return e.ok?Promise.resolve(e.value):Promise.reject(e.error)}{const e=new mo;return this._unsatisfiedConsumers.push(e),e.p}}}const bo=class e{constructor(e,t){this._onReturn=t,this._producerConsumer=new po,this._iterator={next:()=>this._producerConsumer.consume(),return:()=>{var e;return null==(e=this._onReturn)||e.call(this),Promise.resolve({done:!0,value:void 0})},throw:async e=>(this._finishError(e),{done:!0,value:void 0})},queueMicrotask(async()=>{const t=e({emitOne:e=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:e}}),emitMany:e=>{for(const t of e)this._producerConsumer.produce({ok:!0,value:{done:!1,value:t}})},reject:e=>this._finishError(e)});if(!this._producerConsumer.hasFinalValue)try{await t,this._finishOk()}catch(n){this._finishError(n)}})}static fromArray(t){return new e(e=>{e.emitMany(t)})}static fromPromise(t){return new e(async e=>{e.emitMany(await t)})}static fromPromisesResolveOrder(t){return new e(async e=>{await Promise.all(t.map(async t=>e.emitOne(await t)))})}static merge(t){return new e(async e=>{await Promise.all(t.map(async t=>{for await(const n of t)e.emitOne(n)}))})}static map(t,n){return new e(async e=>{for await(const r of t)e.emitOne(n(r))})}map(t){return e.map(this,t)}static coalesce(t){return e.filter(t,e=>!!e)}coalesce(){return e.coalesce(this)}static filter(t,n){return new e(async e=>{for await(const r of t)n(r)&&e.emitOne(r)})}filter(t){return e.filter(this,t)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(e){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:e})}[Symbol.asyncIterator](){return this._iterator}};bo.EMPTY=bo.fromArray([]);class yo{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=je(e);const n=this.values,r=this.prefixSum,i=t.length;return 0!==i&&(this.values=new Uint32Array(n.length+i),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e),e+i),this.values.set(t,e),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(r.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=je(e),t=je(t),this.values[e]!==t&&(this.values[e]=t,e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),!0)}removeValues(e,t){e=je(e),t=je(t);const n=this.values,r=this.prefixSum;if(e>=n.length)return!1;const i=n.length-e;return t>=i&&(t=i),0!==t&&(this.values=new Uint32Array(n.length-t),this.values.set(n.subarray(0,e),0),this.values.set(n.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=e-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(r.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return 0===this.values.length?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=je(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;0===t&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let n=t;n<=e;n++)this.prefixSum[n]=this.prefixSum[n-1]+this.values[n];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,n=this.values.length-1,r=0,i=0,s=0;for(;t<=n;)if(r=t+(n-t)/2|0,i=this.prefixSum[r],s=i-this.values[r],e<s)n=r-1;else{if(!(e>=i))break;t=r+1}return new vo(r,e-s)}}class vo{constructor(e,t){this.index=e,this.remainder=t,this._prefixSumIndexOfResultBrand=void 0,this.index=e,this.remainder=t}}class wo{constructor(e,t,n,r){this._uri=e,this._lines=t,this._eol=n,this._versionId=r,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}get version(){return this._versionId}getText(){return null===this._cachedTextValue&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(e){e.eol&&e.eol!==this._eol&&(this._eol=e.eol,this._lineStarts=null);const t=e.changes;for(const n of t)this._acceptDeleteRange(n.range),this._acceptInsertText(new $e(n.range.startLineNumber,n.range.startColumn),n.text);this._versionId=e.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){const e=this._eol.length,t=this._lines.length,n=new Uint32Array(t);for(let r=0;r<t;r++)n[r]=this._lines[r].length+e;this._lineStarts=new yo(n)}}_setLineText(e,t){this._lines[e]=t,this._lineStarts&&this._lineStarts.setValue(e,this._lines[e].length+this._eol.length)}_acceptDeleteRange(e){if(e.startLineNumber!==e.endLineNumber)this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.endLineNumber-1].substring(e.endColumn-1)),this._lines.splice(e.startLineNumber,e.endLineNumber-e.startLineNumber),this._lineStarts&&this._lineStarts.removeValues(e.startLineNumber,e.endLineNumber-e.startLineNumber);else{if(e.startColumn===e.endColumn)return;this._setLineText(e.startLineNumber-1,this._lines[e.startLineNumber-1].substring(0,e.startColumn-1)+this._lines[e.startLineNumber-1].substring(e.endColumn-1))}}_acceptInsertText(e,t){if(0===t.length)return;const n=t.split(/\r\n|\r|\n/);if(1===n.length)return void this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]+this._lines[e.lineNumber-1].substring(e.column-1));n[n.length-1]+=this._lines[e.lineNumber-1].substring(e.column-1),this._setLineText(e.lineNumber-1,this._lines[e.lineNumber-1].substring(0,e.column-1)+n[0]);const r=new Uint32Array(n.length-1);for(let i=1;i<n.length;i++)this._lines.splice(e.lineNumber+i-1,0,n[i]),r[i-1]=n[i].length+this._eol.length;this._lineStarts&&this._lineStarts.insertValues(e.lineNumber,r)}}class Co{constructor(){this._models=Object.create(null)}getModel(e){return this._models[e]}getModels(){const e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}$acceptNewModel(e){this._models[e.url]=new _o(Kt.parse(e.url),e.lines,e.EOL,e.versionId)}$acceptModelChanged(e,t){if(!this._models[e])return;this._models[e].onEvents(t)}$acceptRemovedModel(e){this._models[e]&&delete this._models[e]}}class _o extends wo{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(e){const t=[];for(let n=0;n<this._lines.length;n++){const r=this._lines[n],i=this.offsetAt(new $e(n+1,1)),s=r.matchAll(e);for(const e of s)(e.index||0===e.index)&&(e.index=e.index+i),t.push(e)}return t}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(e){return this._lines[e-1]}getWordAtPosition(e,t){const n=Ci(e.column,vi(t),this._lines[e.lineNumber-1],0);return n?new Be(e.lineNumber,n.startColumn,e.lineNumber,n.endColumn):null}words(e){const t=this._lines,n=this._wordenize.bind(this);let r=0,i="",s=0,o=[];return{*[Symbol.iterator](){for(;;)if(s<o.length){const e=i.substring(o[s].start,o[s].end);s+=1,yield e}else{if(!(r<t.length))break;i=t[r],o=n(i,e),s=0,r+=1}}}}getLineWords(e,t){const n=this._lines[e-1],r=this._wordenize(n,t),i=[];for(const s of r)i.push({word:n.substring(s.start,s.end),startColumn:s.start+1,endColumn:s.end+1});return i}_wordenize(e,t){const n=[];let r;for(t.lastIndex=0;(r=t.exec(e))&&0!==r[0].length;)n.push({start:r.index,end:r.index+r[0].length});return n}getValueInRange(e){if((e=this._validateRange(e)).startLineNumber===e.endLineNumber)return this._lines[e.startLineNumber-1].substring(e.startColumn-1,e.endColumn-1);const t=this._eol,n=e.startLineNumber-1,r=e.endLineNumber-1,i=[];i.push(this._lines[n].substring(e.startColumn-1));for(let s=n+1;s<r;s++)i.push(this._lines[s]);return i.push(this._lines[r].substring(0,e.endColumn-1)),i.join(t)}offsetAt(e){return e=this._validatePosition(e),this._ensureLineStarts(),this._lineStarts.getPrefixSum(e.lineNumber-2)+(e.column-1)}positionAt(e){e=Math.floor(e),e=Math.max(0,e),this._ensureLineStarts();const t=this._lineStarts.getIndexOf(e),n=this._lines[t.index].length;return{lineNumber:1+t.index,column:1+Math.min(t.remainder,n)}}_validateRange(e){const t=this._validatePosition({lineNumber:e.startLineNumber,column:e.startColumn}),n=this._validatePosition({lineNumber:e.endLineNumber,column:e.endColumn});return t.lineNumber!==e.startLineNumber||t.column!==e.startColumn||n.lineNumber!==e.endLineNumber||n.column!==e.endColumn?{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:n.lineNumber,endColumn:n.column}:e}_validatePosition(e){if(!$e.isIPosition(e))throw new Error("bad position");let{lineNumber:t,column:n}=e,r=!1;if(t<1)t=1,n=1,r=!0;else if(t>this._lines.length)t=this._lines.length,n=this._lines[t-1].length+1,r=!0;else{const e=this._lines[t-1].length+1;n<1?(n=1,r=!0):n>e&&(n=e,r=!0)}return r?{lineNumber:t,column:n}:e}}const Lo=class e{constructor(e=null){this._foreignModule=e,this._requestHandlerBrand=void 0,this._workerTextModelSyncServer=new Co}dispose(){}async $ping(){return"pong"}_getModel(e){return this._workerTextModelSyncServer.getModel(e)}getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(e){this._workerTextModelSyncServer.$acceptNewModel(e)}$acceptModelChanged(e,t){this._workerTextModelSyncServer.$acceptModelChanged(e,t)}$acceptRemovedModel(e){this._workerTextModelSyncServer.$acceptRemovedModel(e)}async $computeUnicodeHighlights(e,t,n){const r=this._getModel(e);return r?Li.computeUnicodeHighlights(r,t,n):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(e,t){const n=this._getModel(e);return n?co(n,t):[]}async $computeDiff(t,n,r,i){const s=this._getModel(t),o=this._getModel(n);if(!s||!o)return null;return e.computeDiff(s,o,r,i)}static computeDiff(e,t,n,r){const i="advanced"===r?zs():Ws(),s=e.getLinesContent(),o=t.getLinesContent(),a=i.computeDiff(s,o,n);function l(e){return e.map(e=>{var t;return[e.original.startLineNumber,e.original.endLineNumberExclusive,e.modified.startLineNumber,e.modified.endLineNumberExclusive,null==(t=e.innerChanges)?void 0:t.map(e=>[e.originalRange.startLineNumber,e.originalRange.startColumn,e.originalRange.endLineNumber,e.originalRange.endColumn,e.modifiedRange.startLineNumber,e.modifiedRange.startColumn,e.modifiedRange.endLineNumber,e.modifiedRange.endColumn])]})}return{identical:!(a.changes.length>0)&&this._modelsAreIdentical(e,t),quitEarly:a.hitTimeout,changes:l(a.changes),moves:a.moves.map(e=>[e.lineRangeMapping.original.startLineNumber,e.lineRangeMapping.original.endLineNumberExclusive,e.lineRangeMapping.modified.startLineNumber,e.lineRangeMapping.modified.endLineNumberExclusive,l(e.changes)])}}static _modelsAreIdentical(e,t){const n=e.getLineCount();if(n!==t.getLineCount())return!1;for(let r=1;r<=n;r++){if(e.getLineContent(r)!==t.getLineContent(r))return!1}return!0}async $computeMoreMinimalEdits(t,n,r){const i=this._getModel(t);if(!i)return n;const s=[];let o;n=n.slice(0).sort((e,t)=>{if(e.range&&t.range)return Be.compareRangesUsingStarts(e.range,t.range);return(e.range?0:1)-(t.range?0:1)});let a=0;for(let e=1;e<n.length;e++)Be.getEndPosition(n[a].range).equals(Be.getStartPosition(n[e].range))?(n[a].range=Be.fromPositions(Be.getStartPosition(n[a].range),Be.getEndPosition(n[e].range)),n[a].text+=n[e].text):(a++,n[a]=n[e]);n.length=a+1;for(let{range:l,text:u,eol:c}of n){if("number"==typeof c&&(o=c),Be.isEmpty(l)&&!u)continue;const t=i.getValueInRange(l);if(u=u.replace(/\r\n|\n|\r/g,i.eol),t===u)continue;if(Math.max(u.length,t.length)>e._diffLimit){s.push({range:l,text:u});continue}const n=Fe(t,u,r),a=i.offsetAt(Be.lift(l).getStartPosition());for(const e of n){const t=i.positionAt(a+e.originalStart),n=i.positionAt(a+e.originalStart+e.originalLength),r={text:u.substr(e.modifiedStart,e.modifiedLength),range:{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:n.lineNumber,endColumn:n.column}};i.getValueInRange(r.range)!==r.text&&s.push(r)}}return"number"==typeof o&&s.push({eol:o,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s}async $computeLinks(e){const t=this._getModel(e);return t?function(e){return e&&"function"==typeof e.getLineCount&&"function"==typeof e.getLineContent?Xe.computeLinks(e):[]}(t):null}async $computeDefaultDocumentColors(e){const t=this._getModel(e);return t?ao(t):null}async $textualSuggest(t,n,r,i){const s=new k,o=new RegExp(r,i),a=new Set;e:for(const l of t){const t=this._getModel(l);if(t)for(const r of t.words(o))if(r!==n&&isNaN(Number(r))&&(a.add(r),a.size>e._suggestionsLimit))break e}return{words:Array.from(a),duration:s.elapsed()}}async $computeWordRanges(e,t,n,r){const i=this._getModel(e);if(!i)return Object.create(null);const s=new RegExp(n,r),o=Object.create(null);for(let a=t.startLineNumber;a<t.endLineNumber;a++){const e=i.getLineWords(a,s);for(const t of e){if(!isNaN(Number(t.word)))continue;let e=o[t.word];e||(e=[],o[t.word]=e),e.push({startLineNumber:a,startColumn:t.startColumn,endLineNumber:a,endColumn:t.endColumn})}}return o}async $navigateValueSet(e,t,n,r,i){const s=this._getModel(e);if(!s)return null;const o=new RegExp(r,i);t.startColumn===t.endColumn&&(t={startLineNumber:t.startLineNumber,startColumn:t.startColumn,endLineNumber:t.endLineNumber,endColumn:t.endColumn+1});const a=s.getValueInRange(t),l=s.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn},o);if(!l)return null;const u=s.getValueInRange(l);return Ze.INSTANCE.navigateValueSet(t,a,l,u,n)}$fmr(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(lh){return Promise.reject(lh)}}};Lo._diffLimit=1e5,Lo._suggestionsLimit=1e4;let So=Lo;"function"==typeof importScripts&&(globalThis.monaco={editor:void 0,languages:void 0,CancellationTokenSource:rt,Emitter:q,KeyCode:hr,KeyMod:ai,Position:$e,Range:Be,Selection:Qt,SelectionDirection:$r,MarkerSeverity:mr,MarkerTag:fr,Uri:Kt,Token:nn});const No=class e{static getChannel(t){return t.getChannel(e.CHANNEL_NAME)}static setChannel(t,n){t.setChannel(e.CHANNEL_NAME,n)}};No.CHANNEL_NAME="editorWorkerHost";let xo=No;function Eo(e){let t;const n=function(e){if(Te)throw new Error("WebWorker already initialized!");Te=!0;const t=new Re(e=>globalThis.postMessage(e),t=>e(t));return globalThis.onmessage=e=>{t.onmessage(e.data)},t}(r=>{const i=xo.getChannel(r),s=new Proxy({},{get(e,t,n){if("then"!==t){if("string"!=typeof t)throw new Error("Not supported");return(...e)=>i.$fhr(t,e)}}});return t=e({host:s,getMirrorModels:()=>n.requestHandler.getModels()}),new So(t)});return t}function Ao(e,t=!1){const n=e.length;let r=0,i="",s=0,o=16,a=0,l=0,u=0,c=0,h=0;function d(t,n){let i=0,s=0;for(;i<t;){let t=e.charCodeAt(r);if(t>=48&&t<=57)s=16*s+t-48;else if(t>=65&&t<=70)s=16*s+t-65+10;else{if(!(t>=97&&t<=102))break;s=16*s+t-97+10}r++,i++}return i<t&&(s=-1),s}function m(){if(i="",h=0,s=r,l=a,c=u,r>=n)return s=n,o=17;let t=e.charCodeAt(r);if(ko(t)){do{r++,i+=String.fromCharCode(t),t=e.charCodeAt(r)}while(ko(t));return o=15}if(Ro(t))return r++,i+=String.fromCharCode(t),13===t&&10===e.charCodeAt(r)&&(r++,i+="\n"),a++,u=r,o=14;switch(t){case 123:return r++,o=1;case 125:return r++,o=2;case 91:return r++,o=3;case 93:return r++,o=4;case 58:return r++,o=6;case 44:return r++,o=5;case 34:return r++,i=function(){let t="",i=r;for(;;){if(r>=n){t+=e.substring(i,r),h=2;break}const s=e.charCodeAt(r);if(34===s){t+=e.substring(i,r),r++;break}if(92!==s){if(s>=0&&s<=31){if(Ro(s)){t+=e.substring(i,r),h=2;break}h=6}r++}else{if(t+=e.substring(i,r),r++,r>=n){h=2;break}switch(e.charCodeAt(r++)){case 34:t+='"';break;case 92:t+="\\";break;case 47:t+="/";break;case 98:t+="\b";break;case 102:t+="\f";break;case 110:t+="\n";break;case 114:t+="\r";break;case 116:t+="\t";break;case 117:const e=d(4);e>=0?t+=String.fromCharCode(e):h=4;break;default:h=5}i=r}}return t}(),o=10;case 47:const l=r-1;if(47===e.charCodeAt(r+1)){for(r+=2;r<n&&!Ro(e.charCodeAt(r));)r++;return i=e.substring(l,r),o=12}if(42===e.charCodeAt(r+1)){r+=2;const t=n-1;let s=!1;for(;r<t;){const t=e.charCodeAt(r);if(42===t&&47===e.charCodeAt(r+1)){r+=2,s=!0;break}r++,Ro(t)&&(13===t&&10===e.charCodeAt(r)&&r++,a++,u=r)}return s||(r++,h=1),i=e.substring(l,r),o=13}return i+=String.fromCharCode(t),r++,o=16;case 45:if(i+=String.fromCharCode(t),r++,r===n||!To(e.charCodeAt(r)))return o=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=function(){let t=r;if(48===e.charCodeAt(r))r++;else for(r++;r<e.length&&To(e.charCodeAt(r));)r++;if(r<e.length&&46===e.charCodeAt(r)){if(r++,!(r<e.length&&To(e.charCodeAt(r))))return h=3,e.substring(t,r);for(r++;r<e.length&&To(e.charCodeAt(r));)r++}let n=r;if(r<e.length&&(69===e.charCodeAt(r)||101===e.charCodeAt(r)))if(r++,(r<e.length&&43===e.charCodeAt(r)||45===e.charCodeAt(r))&&r++,r<e.length&&To(e.charCodeAt(r))){for(r++;r<e.length&&To(e.charCodeAt(r));)r++;n=r}else h=3;return e.substring(t,n)}(),o=11;default:for(;r<n&&g(t);)r++,t=e.charCodeAt(r);if(s!==r){switch(i=e.substring(s,r),i){case"true":return o=8;case"false":return o=9;case"null":return o=7}return o=16}return i+=String.fromCharCode(t),r++,o=16}}function g(e){if(ko(e)||Ro(e))return!1;switch(e){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}return{setPosition:function(e){r=e,i="",s=0,o=16,h=0},getPosition:()=>r,scan:t?function(){let e;do{e=m()}while(e>=12&&e<=15);return e}:m,getToken:()=>o,getTokenValue:()=>i,getTokenOffset:()=>s,getTokenLength:()=>r-s,getTokenStartLine:()=>l,getTokenStartCharacter:()=>s-c,getTokenError:()=>h}}function ko(e){return 32===e||9===e}function Ro(e){return 10===e||13===e}function To(e){return e>=48&&e<=57}var Mo,Oo;(Oo=Mo||(Mo={}))[Oo.lineFeed=10]="lineFeed",Oo[Oo.carriageReturn=13]="carriageReturn",Oo[Oo.space=32]="space",Oo[Oo._0=48]="_0",Oo[Oo._1=49]="_1",Oo[Oo._2=50]="_2",Oo[Oo._3=51]="_3",Oo[Oo._4=52]="_4",Oo[Oo._5=53]="_5",Oo[Oo._6=54]="_6",Oo[Oo._7=55]="_7",Oo[Oo._8=56]="_8",Oo[Oo._9=57]="_9",Oo[Oo.a=97]="a",Oo[Oo.b=98]="b",Oo[Oo.c=99]="c",Oo[Oo.d=100]="d",Oo[Oo.e=101]="e",Oo[Oo.f=102]="f",Oo[Oo.g=103]="g",Oo[Oo.h=104]="h",Oo[Oo.i=105]="i",Oo[Oo.j=106]="j",Oo[Oo.k=107]="k",Oo[Oo.l=108]="l",Oo[Oo.m=109]="m",Oo[Oo.n=110]="n",Oo[Oo.o=111]="o",Oo[Oo.p=112]="p",Oo[Oo.q=113]="q",Oo[Oo.r=114]="r",Oo[Oo.s=115]="s",Oo[Oo.t=116]="t",Oo[Oo.u=117]="u",Oo[Oo.v=118]="v",Oo[Oo.w=119]="w",Oo[Oo.x=120]="x",Oo[Oo.y=121]="y",Oo[Oo.z=122]="z",Oo[Oo.A=65]="A",Oo[Oo.B=66]="B",Oo[Oo.C=67]="C",Oo[Oo.D=68]="D",Oo[Oo.E=69]="E",Oo[Oo.F=70]="F",Oo[Oo.G=71]="G",Oo[Oo.H=72]="H",Oo[Oo.I=73]="I",Oo[Oo.J=74]="J",Oo[Oo.K=75]="K",Oo[Oo.L=76]="L",Oo[Oo.M=77]="M",Oo[Oo.N=78]="N",Oo[Oo.O=79]="O",Oo[Oo.P=80]="P",Oo[Oo.Q=81]="Q",Oo[Oo.R=82]="R",Oo[Oo.S=83]="S",Oo[Oo.T=84]="T",Oo[Oo.U=85]="U",Oo[Oo.V=86]="V",Oo[Oo.W=87]="W",Oo[Oo.X=88]="X",Oo[Oo.Y=89]="Y",Oo[Oo.Z=90]="Z",Oo[Oo.asterisk=42]="asterisk",Oo[Oo.backslash=92]="backslash",Oo[Oo.closeBrace=125]="closeBrace",Oo[Oo.closeBracket=93]="closeBracket",Oo[Oo.colon=58]="colon",Oo[Oo.comma=44]="comma",Oo[Oo.dot=46]="dot",Oo[Oo.doubleQuote=34]="doubleQuote",Oo[Oo.minus=45]="minus",Oo[Oo.openBrace=123]="openBrace",Oo[Oo.openBracket=91]="openBracket",Oo[Oo.plus=43]="plus",Oo[Oo.slash=47]="slash",Oo[Oo.formFeed=12]="formFeed",Oo[Oo.tab=9]="tab";const Io=new Array(20).fill(0).map((e,t)=>" ".repeat(t)),Po=200,Fo={" ":{"\n":new Array(Po).fill(0).map((e,t)=>"\n"+" ".repeat(t)),"\r":new Array(Po).fill(0).map((e,t)=>"\r"+" ".repeat(t)),"\r\n":new Array(Po).fill(0).map((e,t)=>"\r\n"+" ".repeat(t))},"\t":{"\n":new Array(Po).fill(0).map((e,t)=>"\n"+"\t".repeat(t)),"\r":new Array(Po).fill(0).map((e,t)=>"\r"+"\t".repeat(t)),"\r\n":new Array(Po).fill(0).map((e,t)=>"\r\n"+"\t".repeat(t))}},Vo=["\n","\r","\r\n"];function Do(e,t,n){let r,i,s,o,a;if(t){for(o=t.offset,a=o+t.length,s=o;s>0&&!Ko(e,s-1);)s--;let l=a;for(;l<e.length&&!Ko(e,l);)l++;i=e.substring(s,l),r=function(e,t){let n=0,r=0;const i=t.tabSize||4;for(;n<e.length;){let t=e.charAt(n);if(t===Io[1])r++;else{if("\t"!==t)break;r+=i}n++}return Math.floor(r/i)}(i,n)}else i=e,r=0,s=0,o=0,a=e.length;const l=function(e,t){for(let n=0;n<t.length;n++){const e=t.charAt(n);if("\r"===e)return n+1<t.length&&"\n"===t.charAt(n+1)?"\r\n":"\r";if("\n"===e)return"\n"}return e&&e.eol||"\n"}(n,e),u=Vo.includes(l);let c,h=0,d=0;c=n.insertSpaces?Io[n.tabSize||4]??qo(Io[1],n.tabSize||4):"\t";const m="\t"===c?"\t":" ";let g=Ao(i,!1),f=!1;function p(){if(h>1)return qo(l,h)+qo(c,r+d);const e=c.length*(r+d);return!u||e>Fo[m][l].length?l+qo(c,r+d):e<=0?l:Fo[m][l][e]}function b(){let e=g.scan();for(h=0;15===e||14===e;)14===e&&n.keepLines?h+=1:14===e&&(h=1),e=g.scan();return f=16===e||0!==g.getTokenError(),e}const y=[];function v(n,r,i){f||t&&!(r<a&&i>o)||e.substring(r,i)===n||y.push({offset:r,length:i-r,content:n})}let w=b();if(n.keepLines&&h>0&&v(qo(l,h),0,0),17!==w){let e=g.getTokenOffset()+s;v(c.length*r<20&&n.insertSpaces?Io[c.length*r]:qo(c,r),s,e)}for(;17!==w;){let e=g.getTokenOffset()+g.getTokenLength()+s,t=b(),r="",i=!1;for(;0===h&&(12===t||13===t);){let n=g.getTokenOffset()+s;v(Io[1],e,n),e=g.getTokenOffset()+g.getTokenLength()+s,i=12===t,r=i?p():"",t=b()}if(2===t)1!==w&&d--,n.keepLines&&h>0||!n.keepLines&&1!==w?r=p():n.keepLines&&(r=Io[1]);else if(4===t)3!==w&&d--,n.keepLines&&h>0||!n.keepLines&&3!==w?r=p():n.keepLines&&(r=Io[1]);else{switch(w){case 3:case 1:d++,r=n.keepLines&&h>0||!n.keepLines?p():Io[1];break;case 5:r=n.keepLines&&h>0||!n.keepLines?p():Io[1];break;case 12:r=p();break;case 13:h>0?r=p():i||(r=Io[1]);break;case 6:n.keepLines&&h>0?r=p():i||(r=Io[1]);break;case 10:n.keepLines&&h>0?r=p():6!==t||i||(r="");break;case 7:case 8:case 9:case 11:case 2:case 4:n.keepLines&&h>0?r=p():12!==t&&13!==t||i?5!==t&&17!==t&&(f=!0):r=Io[1];break;case 16:f=!0}h>0&&(12===t||13===t)&&(r=p())}17===t&&(r=n.keepLines&&h>0?p():n.insertFinalNewline?l:"");v(r,e,g.getTokenOffset()+s),w=t}return y}function qo(e,t){let n="";for(let r=0;r<t;r++)n+=e;return n}function Ko(e,t){return-1!=="\r\n".indexOf(e.charAt(t))}var $o;($o||($o={})).DEFAULT={allowTrailingComma:!1};const Bo=Ao;var Uo,jo,Wo,zo;(jo=Uo||(Uo={}))[jo.None=0]="None",jo[jo.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",jo[jo.UnexpectedEndOfString=2]="UnexpectedEndOfString",jo[jo.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",jo[jo.InvalidUnicode=4]="InvalidUnicode",jo[jo.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",jo[jo.InvalidCharacter=6]="InvalidCharacter",(zo=Wo||(Wo={}))[zo.OpenBraceToken=1]="OpenBraceToken",zo[zo.CloseBraceToken=2]="CloseBraceToken",zo[zo.OpenBracketToken=3]="OpenBracketToken",zo[zo.CloseBracketToken=4]="CloseBracketToken",zo[zo.CommaToken=5]="CommaToken",zo[zo.ColonToken=6]="ColonToken",zo[zo.NullKeyword=7]="NullKeyword",zo[zo.TrueKeyword=8]="TrueKeyword",zo[zo.FalseKeyword=9]="FalseKeyword",zo[zo.StringLiteral=10]="StringLiteral",zo[zo.NumericLiteral=11]="NumericLiteral",zo[zo.LineCommentTrivia=12]="LineCommentTrivia",zo[zo.BlockCommentTrivia=13]="BlockCommentTrivia",zo[zo.LineBreakTrivia=14]="LineBreakTrivia",zo[zo.Trivia=15]="Trivia",zo[zo.Unknown=16]="Unknown",zo[zo.EOF=17]="EOF";const Ho=function(e,t=[],n=$o.DEFAULT){let r=null,i=[];const s=[];function o(e){Array.isArray(i)?i.push(e):null!==r&&(i[r]=e)}return function(e,t,n=$o.DEFAULT){const r=Ao(e,!1),i=[];function s(e){return e?()=>e(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter()):()=>!0}function o(e){return e?()=>e(r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter(),()=>i.slice()):()=>!0}function a(e){return e?t=>e(t,r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter()):()=>!0}function l(e){return e?t=>e(t,r.getTokenOffset(),r.getTokenLength(),r.getTokenStartLine(),r.getTokenStartCharacter(),()=>i.slice()):()=>!0}const u=o(t.onObjectBegin),c=l(t.onObjectProperty),h=s(t.onObjectEnd),d=o(t.onArrayBegin),m=s(t.onArrayEnd),g=l(t.onLiteralValue),f=a(t.onSeparator),p=s(t.onComment),b=a(t.onError),y=n&&n.disallowComments,v=n&&n.allowTrailingComma;function w(){for(;;){const e=r.scan();switch(r.getTokenError()){case 4:C(14);break;case 5:C(15);break;case 3:C(13);break;case 1:y||C(11);break;case 2:C(12);break;case 6:C(16)}switch(e){case 12:case 13:y?C(10):p();break;case 16:C(1);break;case 15:case 14:break;default:return e}}}function C(e,t=[],n=[]){if(b(e),t.length+n.length>0){let e=r.getToken();for(;17!==e;){if(-1!==t.indexOf(e)){w();break}if(-1!==n.indexOf(e))break;e=w()}}}function _(e){const t=r.getTokenValue();return e?g(t):(c(t),i.push(t)),w(),!0}function L(){switch(r.getToken()){case 11:const e=r.getTokenValue();let t=Number(e);isNaN(t)&&(C(2),t=0),g(t);break;case 7:g(null);break;case 8:g(!0);break;case 9:g(!1);break;default:return!1}return w(),!0}function S(){return 10!==r.getToken()?(C(3,[],[2,5]),!1):(_(!1),6===r.getToken()?(f(":"),w(),E()||C(4,[],[2,5])):C(5,[],[2,5]),i.pop(),!0)}function N(){u(),w();let e=!1;for(;2!==r.getToken()&&17!==r.getToken();){if(5===r.getToken()){if(e||C(4,[],[]),f(","),w(),2===r.getToken()&&v)break}else e&&C(6,[],[]);S()||C(4,[],[2,5]),e=!0}return h(),2!==r.getToken()?C(7,[2],[]):w(),!0}function x(){d(),w();let e=!0,t=!1;for(;4!==r.getToken()&&17!==r.getToken();){if(5===r.getToken()){if(t||C(4,[],[]),f(","),w(),4===r.getToken()&&v)break}else t&&C(6,[],[]);e?(i.push(0),e=!1):i[i.length-1]++,E()||C(4,[],[4,5]),t=!0}return m(),e||i.pop(),4!==r.getToken()?C(8,[4],[]):w(),!0}function E(){switch(r.getToken()){case 3:return x();case 1:return N();case 10:return _(!0);default:return L()}}if(w(),17===r.getToken())return!!n.allowEmptyContent||(C(4,[],[]),!1);if(!E())return C(4,[],[]),!1;17!==r.getToken()&&C(9,[],[])}(e,{onObjectBegin:()=>{const e={};o(e),s.push(i),i=e,r=null},onObjectProperty:e=>{r=e},onObjectEnd:()=>{i=s.pop()},onArrayBegin:()=>{const e=[];o(e),s.push(i),i=e,r=null},onArrayEnd:()=>{i=s.pop()},onLiteralValue:o,onError:(e,n,r)=>{t.push({error:e,offset:n,length:r})}},n),i[0]},Go=function e(t,n,r=!1){if(function(e,t,n=!1){return t>=e.offset&&t<e.offset+e.length||n&&t===e.offset+e.length}(t,n,r)){const i=t.children;if(Array.isArray(i))for(let t=0;t<i.length&&i[t].offset<=n;t++){const s=e(i[t],n,r);if(s)return s}return t}},Jo=function e(t){if(!t.parent||!t.parent.children)return[];const n=e(t.parent);if("property"===t.parent.type){const e=t.parent.children[0].value;n.push(e)}else if("array"===t.parent.type){const e=t.parent.children.indexOf(t);-1!==e&&n.push(e)}return n},Xo=function e(t){switch(t.type){case"array":return t.children.map(e);case"object":const n=Object.create(null);for(let r of t.children){const t=r.children[1];t&&(n[r.children[0].value]=e(t))}return n;case"null":case"string":case"number":case"boolean":return t.value;default:return}};var Qo,Zo,Yo,ea,ta,na,ra,ia,sa,oa,aa,la,ua,ca,ha,da,ma,ga,fa,pa,ba,ya,va,wa,Ca,_a,La,Sa,Na,xa,Ea,Aa,ka,Ra,Ta,Ma,Oa,Ia,Pa,Fa,Va,Da,qa,Ka,$a,Ba,Ua,ja,Wa,za,Ha,Ga,Ja,Xa,Qa,Za,Ya,el,tl,nl,rl,il,sl,ol,al,ll,ul,cl,hl,dl,ml,gl,fl,pl,bl,yl,vl,wl,Cl,_l,Ll,Sl,Nl,xl,El,Al,kl,Rl,Tl,Ml,Ol,Il,Pl,Fl,Vl,Dl,ql,Kl,$l,Bl,Ul,jl,Wl,zl,Hl,Gl,Jl,Xl,Ql,Zl,Yl,eu,tu,nu,ru,iu,su,ou,au,lu,uu,cu,hu,du,mu,gu,fu,pu;function bu(e,t){if(e===t)return!0;if(null==e||null==t)return!1;if(typeof e!=typeof t)return!1;if("object"!=typeof e)return!1;if(Array.isArray(e)!==Array.isArray(t))return!1;let n,r;if(Array.isArray(e)){if(e.length!==t.length)return!1;for(n=0;n<e.length;n++)if(!bu(e[n],t[n]))return!1}else{const i=[];for(r in e)i.push(r);i.sort();const s=[];for(r in t)s.push(r);if(s.sort(),!bu(i,s))return!1;for(n=0;n<i.length;n++)if(!bu(e[i[n]],t[i[n]]))return!1}return!0}function yu(e){return"number"==typeof e}function vu(e){return void 0!==e}function wu(e){return"boolean"==typeof e}function Cu(e){return"string"==typeof e}function _u(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function Lu(e,t){const n=e.length-t.length;return n>0?e.lastIndexOf(t)===n:0===n&&e===t}function Su(e){let t="";(function(e,t){if(e.length<t.length)return!1;for(let n=0;n<t.length;n++)if(e[n]!==t[n])return!1;return!0})(e,"(?i)")&&(e=e.substring(4),t="i");try{return new RegExp(e,t+"u")}catch(lh){try{return new RegExp(e,t)}catch(n){return}}}function Nu(e){let t=0;for(let n=0;n<e.length;n++){t++;const r=e.charCodeAt(n);55296<=r&&r<=56319&&n++}return t}(Zo=Qo||(Qo={}))[Zo.InvalidSymbol=1]="InvalidSymbol",Zo[Zo.InvalidNumberFormat=2]="InvalidNumberFormat",Zo[Zo.PropertyNameExpected=3]="PropertyNameExpected",Zo[Zo.ValueExpected=4]="ValueExpected",Zo[Zo.ColonExpected=5]="ColonExpected",Zo[Zo.CommaExpected=6]="CommaExpected",Zo[Zo.CloseBraceExpected=7]="CloseBraceExpected",Zo[Zo.CloseBracketExpected=8]="CloseBracketExpected",Zo[Zo.EndOfFileExpected=9]="EndOfFileExpected",Zo[Zo.InvalidCommentToken=10]="InvalidCommentToken",Zo[Zo.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",Zo[Zo.UnexpectedEndOfString=12]="UnexpectedEndOfString",Zo[Zo.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",Zo[Zo.InvalidUnicode=14]="InvalidUnicode",Zo[Zo.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",Zo[Zo.InvalidCharacter=16]="InvalidCharacter",(Yo||(Yo={})).is=function(e){return"string"==typeof e},(ea||(ea={})).is=function(e){return"string"==typeof e},(na=ta||(ta={})).MIN_VALUE=-2147483648,na.MAX_VALUE=2147483647,na.is=function(e){return"number"==typeof e&&na.MIN_VALUE<=e&&e<=na.MAX_VALUE},(ia=ra||(ra={})).MIN_VALUE=0,ia.MAX_VALUE=2147483647,ia.is=function(e){return"number"==typeof e&&ia.MIN_VALUE<=e&&e<=ia.MAX_VALUE},(oa=sa||(sa={})).create=function(e,t){return e===Number.MAX_VALUE&&(e=ra.MAX_VALUE),t===Number.MAX_VALUE&&(t=ra.MAX_VALUE),{line:e,character:t}},oa.is=function(e){let t=e;return Eu.objectLiteral(t)&&Eu.uinteger(t.line)&&Eu.uinteger(t.character)},(la=aa||(aa={})).create=function(e,t,n,r){if(Eu.uinteger(e)&&Eu.uinteger(t)&&Eu.uinteger(n)&&Eu.uinteger(r))return{start:sa.create(e,t),end:sa.create(n,r)};if(sa.is(e)&&sa.is(t))return{start:e,end:t};throw new Error(`Range#create called with invalid arguments[${e}, ${t}, ${n}, ${r}]`)},la.is=function(e){let t=e;return Eu.objectLiteral(t)&&sa.is(t.start)&&sa.is(t.end)},(ca=ua||(ua={})).create=function(e,t){return{uri:e,range:t}},ca.is=function(e){let t=e;return Eu.objectLiteral(t)&&aa.is(t.range)&&(Eu.string(t.uri)||Eu.undefined(t.uri))},(da=ha||(ha={})).create=function(e,t,n,r){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:r}},da.is=function(e){let t=e;return Eu.objectLiteral(t)&&aa.is(t.targetRange)&&Eu.string(t.targetUri)&&aa.is(t.targetSelectionRange)&&(aa.is(t.originSelectionRange)||Eu.undefined(t.originSelectionRange))},function(e){e.create=function(e,t,n,r){return{red:e,green:t,blue:n,alpha:r}},e.is=function(e){const t=e;return Eu.objectLiteral(t)&&Eu.numberRange(t.red,0,1)&&Eu.numberRange(t.green,0,1)&&Eu.numberRange(t.blue,0,1)&&Eu.numberRange(t.alpha,0,1)}}(ma||(ma={})),(fa=ga||(ga={})).create=function(e,t){return{range:e,color:t}},fa.is=function(e){const t=e;return Eu.objectLiteral(t)&&aa.is(t.range)&&ma.is(t.color)},(ba=pa||(pa={})).create=function(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}},ba.is=function(e){const t=e;return Eu.objectLiteral(t)&&Eu.string(t.label)&&(Eu.undefined(t.textEdit)||Ma.is(t))&&(Eu.undefined(t.additionalTextEdits)||Eu.typedArray(t.additionalTextEdits,Ma.is))},(va=ya||(ya={})).Comment="comment",va.Imports="imports",va.Region="region",(Ca=wa||(wa={})).create=function(e,t,n,r,i,s){const o={startLine:e,endLine:t};return Eu.defined(n)&&(o.startCharacter=n),Eu.defined(r)&&(o.endCharacter=r),Eu.defined(i)&&(o.kind=i),Eu.defined(s)&&(o.collapsedText=s),o},Ca.is=function(e){const t=e;return Eu.objectLiteral(t)&&Eu.uinteger(t.startLine)&&Eu.uinteger(t.startLine)&&(Eu.undefined(t.startCharacter)||Eu.uinteger(t.startCharacter))&&(Eu.undefined(t.endCharacter)||Eu.uinteger(t.endCharacter))&&(Eu.undefined(t.kind)||Eu.string(t.kind))},(La=_a||(_a={})).create=function(e,t){return{location:e,message:t}},La.is=function(e){let t=e;return Eu.defined(t)&&ua.is(t.location)&&Eu.string(t.message)},(Na=Sa||(Sa={})).Error=1,Na.Warning=2,Na.Information=3,Na.Hint=4,(Ea=xa||(xa={})).Unnecessary=1,Ea.Deprecated=2,(Aa||(Aa={})).is=function(e){const t=e;return Eu.objectLiteral(t)&&Eu.string(t.href)},(Ra=ka||(ka={})).create=function(e,t,n,r,i,s){let o={range:e,message:t};return Eu.defined(n)&&(o.severity=n),Eu.defined(r)&&(o.code=r),Eu.defined(i)&&(o.source=i),Eu.defined(s)&&(o.relatedInformation=s),o},Ra.is=function(e){var t;let n=e;return Eu.defined(n)&&aa.is(n.range)&&Eu.string(n.message)&&(Eu.number(n.severity)||Eu.undefined(n.severity))&&(Eu.integer(n.code)||Eu.string(n.code)||Eu.undefined(n.code))&&(Eu.undefined(n.codeDescription)||Eu.string(null===(t=n.codeDescription)||void 0===t?void 0:t.href))&&(Eu.string(n.source)||Eu.undefined(n.source))&&(Eu.undefined(n.relatedInformation)||Eu.typedArray(n.relatedInformation,_a.is))},function(e){e.create=function(e,t,...n){let r={title:e,command:t};return Eu.defined(n)&&n.length>0&&(r.arguments=n),r},e.is=function(e){let t=e;return Eu.defined(t)&&Eu.string(t.title)&&Eu.string(t.command)}}(Ta||(Ta={})),(Oa=Ma||(Ma={})).replace=function(e,t){return{range:e,newText:t}},Oa.insert=function(e,t){return{range:{start:e,end:e},newText:t}},Oa.del=function(e){return{range:e,newText:""}},Oa.is=function(e){const t=e;return Eu.objectLiteral(t)&&Eu.string(t.newText)&&aa.is(t.range)},(Pa=Ia||(Ia={})).create=function(e,t,n){const r={label:e};return void 0!==t&&(r.needsConfirmation=t),void 0!==n&&(r.description=n),r},Pa.is=function(e){const t=e;return Eu.objectLiteral(t)&&Eu.string(t.label)&&(Eu.boolean(t.needsConfirmation)||void 0===t.needsConfirmation)&&(Eu.string(t.description)||void 0===t.description)},(Fa||(Fa={})).is=function(e){const t=e;return Eu.string(t)},(Da=Va||(Va={})).replace=function(e,t,n){return{range:e,newText:t,annotationId:n}},Da.insert=function(e,t,n){return{range:{start:e,end:e},newText:t,annotationId:n}},Da.del=function(e,t){return{range:e,newText:"",annotationId:t}},Da.is=function(e){const t=e;return Ma.is(t)&&(Ia.is(t.annotationId)||Fa.is(t.annotationId))},(Ka=qa||(qa={})).create=function(e,t){return{textDocument:e,edits:t}},Ka.is=function(e){let t=e;return Eu.defined(t)&&Za.is(t.textDocument)&&Array.isArray(t.edits)},(Ba=$a||($a={})).create=function(e,t,n){let r={kind:"create",uri:e};return void 0===t||void 0===t.overwrite&&void 0===t.ignoreIfExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},Ba.is=function(e){let t=e;return t&&"create"===t.kind&&Eu.string(t.uri)&&(void 0===t.options||(void 0===t.options.overwrite||Eu.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Eu.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Fa.is(t.annotationId))},(ja=Ua||(Ua={})).create=function(e,t,n,r){let i={kind:"rename",oldUri:e,newUri:t};return void 0===n||void 0===n.overwrite&&void 0===n.ignoreIfExists||(i.options=n),void 0!==r&&(i.annotationId=r),i},ja.is=function(e){let t=e;return t&&"rename"===t.kind&&Eu.string(t.oldUri)&&Eu.string(t.newUri)&&(void 0===t.options||(void 0===t.options.overwrite||Eu.boolean(t.options.overwrite))&&(void 0===t.options.ignoreIfExists||Eu.boolean(t.options.ignoreIfExists)))&&(void 0===t.annotationId||Fa.is(t.annotationId))},(za=Wa||(Wa={})).create=function(e,t,n){let r={kind:"delete",uri:e};return void 0===t||void 0===t.recursive&&void 0===t.ignoreIfNotExists||(r.options=t),void 0!==n&&(r.annotationId=n),r},za.is=function(e){let t=e;return t&&"delete"===t.kind&&Eu.string(t.uri)&&(void 0===t.options||(void 0===t.options.recursive||Eu.boolean(t.options.recursive))&&(void 0===t.options.ignoreIfNotExists||Eu.boolean(t.options.ignoreIfNotExists)))&&(void 0===t.annotationId||Fa.is(t.annotationId))},(Ha||(Ha={})).is=function(e){let t=e;return t&&(void 0!==t.changes||void 0!==t.documentChanges)&&(void 0===t.documentChanges||t.documentChanges.every(e=>Eu.string(e.kind)?$a.is(e)||Ua.is(e)||Wa.is(e):qa.is(e)))},(Ja=Ga||(Ga={})).create=function(e){return{uri:e}},Ja.is=function(e){let t=e;return Eu.defined(t)&&Eu.string(t.uri)},(Qa=Xa||(Xa={})).create=function(e,t){return{uri:e,version:t}},Qa.is=function(e){let t=e;return Eu.defined(t)&&Eu.string(t.uri)&&Eu.integer(t.version)},(Ya=Za||(Za={})).create=function(e,t){return{uri:e,version:t}},Ya.is=function(e){let t=e;return Eu.defined(t)&&Eu.string(t.uri)&&(null===t.version||Eu.integer(t.version))},(tl=el||(el={})).create=function(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}},tl.is=function(e){let t=e;return Eu.defined(t)&&Eu.string(t.uri)&&Eu.string(t.languageId)&&Eu.integer(t.version)&&Eu.string(t.text)},(rl=nl||(nl={})).PlainText="plaintext",rl.Markdown="markdown",rl.is=function(e){const t=e;return t===rl.PlainText||t===rl.Markdown},(il||(il={})).is=function(e){const t=e;return Eu.objectLiteral(e)&&nl.is(t.kind)&&Eu.string(t.value)},function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25}(sl||(sl={})),(al=ol||(ol={})).PlainText=1,al.Snippet=2,function(e){e.Deprecated=1}(ll||(ll={})),(cl=ul||(ul={})).create=function(e,t,n){return{newText:e,insert:t,replace:n}},cl.is=function(e){const t=e;return t&&Eu.string(t.newText)&&aa.is(t.insert)&&aa.is(t.replace)},(dl=hl||(hl={})).asIs=1,dl.adjustIndentation=2,(ml||(ml={})).is=function(e){const t=e;return t&&(Eu.string(t.detail)||void 0===t.detail)&&(Eu.string(t.description)||void 0===t.description)},(gl||(gl={})).create=function(e){return{label:e}},(fl||(fl={})).create=function(e,t){return{items:e||[],isIncomplete:!!t}},(bl=pl||(pl={})).fromPlainText=function(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")},bl.is=function(e){const t=e;return Eu.string(t)||Eu.objectLiteral(t)&&Eu.string(t.language)&&Eu.string(t.value)},(yl||(yl={})).is=function(e){let t=e;return!!t&&Eu.objectLiteral(t)&&(il.is(t.contents)||pl.is(t.contents)||Eu.typedArray(t.contents,pl.is))&&(void 0===e.range||aa.is(e.range))},(vl||(vl={})).create=function(e,t){return t?{label:e,documentation:t}:{label:e}},(wl||(wl={})).create=function(e,t,...n){let r={label:e};return Eu.defined(t)&&(r.documentation=t),Eu.defined(n)?r.parameters=n:r.parameters=[],r},function(e){e.Text=1,e.Read=2,e.Write=3}(Cl||(Cl={})),(_l||(_l={})).create=function(e,t){let n={range:e};return Eu.number(t)&&(n.kind=t),n},function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26}(Ll||(Ll={})),function(e){e.Deprecated=1}(Sl||(Sl={})),(Nl||(Nl={})).create=function(e,t,n,r,i){let s={name:e,kind:t,location:{uri:r,range:n}};return i&&(s.containerName=i),s},(xl||(xl={})).create=function(e,t,n,r){return void 0!==r?{name:e,kind:t,location:{uri:n,range:r}}:{name:e,kind:t,location:{uri:n}}},(Al=El||(El={})).create=function(e,t,n,r,i,s){let o={name:e,detail:t,kind:n,range:r,selectionRange:i};return void 0!==s&&(o.children=s),o},Al.is=function(e){let t=e;return t&&Eu.string(t.name)&&Eu.number(t.kind)&&aa.is(t.range)&&aa.is(t.selectionRange)&&(void 0===t.detail||Eu.string(t.detail))&&(void 0===t.deprecated||Eu.boolean(t.deprecated))&&(void 0===t.children||Array.isArray(t.children))&&(void 0===t.tags||Array.isArray(t.tags))},(Rl=kl||(kl={})).Empty="",Rl.QuickFix="quickfix",Rl.Refactor="refactor",Rl.RefactorExtract="refactor.extract",Rl.RefactorInline="refactor.inline",Rl.RefactorRewrite="refactor.rewrite",Rl.Source="source",Rl.SourceOrganizeImports="source.organizeImports",Rl.SourceFixAll="source.fixAll",(Ml=Tl||(Tl={})).Invoked=1,Ml.Automatic=2,(Il=Ol||(Ol={})).create=function(e,t,n){let r={diagnostics:e};return null!=t&&(r.only=t),null!=n&&(r.triggerKind=n),r},Il.is=function(e){let t=e;return Eu.defined(t)&&Eu.typedArray(t.diagnostics,ka.is)&&(void 0===t.only||Eu.typedArray(t.only,Eu.string))&&(void 0===t.triggerKind||t.triggerKind===Tl.Invoked||t.triggerKind===Tl.Automatic)},(Fl=Pl||(Pl={})).create=function(e,t,n){let r={title:e},i=!0;return"string"==typeof t?(i=!1,r.kind=t):Ta.is(t)?r.command=t:r.edit=t,i&&void 0!==n&&(r.kind=n),r},Fl.is=function(e){let t=e;return t&&Eu.string(t.title)&&(void 0===t.diagnostics||Eu.typedArray(t.diagnostics,ka.is))&&(void 0===t.kind||Eu.string(t.kind))&&(void 0!==t.edit||void 0!==t.command)&&(void 0===t.command||Ta.is(t.command))&&(void 0===t.isPreferred||Eu.boolean(t.isPreferred))&&(void 0===t.edit||Ha.is(t.edit))},(Dl=Vl||(Vl={})).create=function(e,t){let n={range:e};return Eu.defined(t)&&(n.data=t),n},Dl.is=function(e){let t=e;return Eu.defined(t)&&aa.is(t.range)&&(Eu.undefined(t.command)||Ta.is(t.command))},(Kl=ql||(ql={})).create=function(e,t){return{tabSize:e,insertSpaces:t}},Kl.is=function(e){let t=e;return Eu.defined(t)&&Eu.uinteger(t.tabSize)&&Eu.boolean(t.insertSpaces)},(Bl=$l||($l={})).create=function(e,t,n){return{range:e,target:t,data:n}},Bl.is=function(e){let t=e;return Eu.defined(t)&&aa.is(t.range)&&(Eu.undefined(t.target)||Eu.string(t.target))},(jl=Ul||(Ul={})).create=function(e,t){return{range:e,parent:t}},jl.is=function(e){let t=e;return Eu.objectLiteral(t)&&aa.is(t.range)&&(void 0===t.parent||jl.is(t.parent))},(zl=Wl||(Wl={})).namespace="namespace",zl.type="type",zl.class="class",zl.enum="enum",zl.interface="interface",zl.struct="struct",zl.typeParameter="typeParameter",zl.parameter="parameter",zl.variable="variable",zl.property="property",zl.enumMember="enumMember",zl.event="event",zl.function="function",zl.method="method",zl.macro="macro",zl.keyword="keyword",zl.modifier="modifier",zl.comment="comment",zl.string="string",zl.number="number",zl.regexp="regexp",zl.operator="operator",zl.decorator="decorator",(Gl=Hl||(Hl={})).declaration="declaration",Gl.definition="definition",Gl.readonly="readonly",Gl.static="static",Gl.deprecated="deprecated",Gl.abstract="abstract",Gl.async="async",Gl.modification="modification",Gl.documentation="documentation",Gl.defaultLibrary="defaultLibrary",(Jl||(Jl={})).is=function(e){const t=e;return Eu.objectLiteral(t)&&(void 0===t.resultId||"string"==typeof t.resultId)&&Array.isArray(t.data)&&(0===t.data.length||"number"==typeof t.data[0])},(Ql=Xl||(Xl={})).create=function(e,t){return{range:e,text:t}},Ql.is=function(e){const t=e;return null!=t&&aa.is(t.range)&&Eu.string(t.text)},(Yl=Zl||(Zl={})).create=function(e,t,n){return{range:e,variableName:t,caseSensitiveLookup:n}},Yl.is=function(e){const t=e;return null!=t&&aa.is(t.range)&&Eu.boolean(t.caseSensitiveLookup)&&(Eu.string(t.variableName)||void 0===t.variableName)},(tu=eu||(eu={})).create=function(e,t){return{range:e,expression:t}},tu.is=function(e){const t=e;return null!=t&&aa.is(t.range)&&(Eu.string(t.expression)||void 0===t.expression)},(ru=nu||(nu={})).create=function(e,t){return{frameId:e,stoppedLocation:t}},ru.is=function(e){const t=e;return Eu.defined(t)&&aa.is(e.stoppedLocation)},function(e){e.Type=1,e.Parameter=2,e.is=function(e){return 1===e||2===e}}(iu||(iu={})),(ou=su||(su={})).create=function(e){return{value:e}},ou.is=function(e){const t=e;return Eu.objectLiteral(t)&&(void 0===t.tooltip||Eu.string(t.tooltip)||il.is(t.tooltip))&&(void 0===t.location||ua.is(t.location))&&(void 0===t.command||Ta.is(t.command))},(lu=au||(au={})).create=function(e,t,n){const r={position:e,label:t};return void 0!==n&&(r.kind=n),r},lu.is=function(e){const t=e;return Eu.objectLiteral(t)&&sa.is(t.position)&&(Eu.string(t.label)||Eu.typedArray(t.label,su.is))&&(void 0===t.kind||iu.is(t.kind))&&void 0===t.textEdits||Eu.typedArray(t.textEdits,Ma.is)&&(void 0===t.tooltip||Eu.string(t.tooltip)||il.is(t.tooltip))&&(void 0===t.paddingLeft||Eu.boolean(t.paddingLeft))&&(void 0===t.paddingRight||Eu.boolean(t.paddingRight))},(uu||(uu={})).createSnippet=function(e){return{kind:"snippet",value:e}},(cu||(cu={})).create=function(e,t,n,r){return{insertText:e,filterText:t,range:n,command:r}},(hu||(hu={})).create=function(e){return{items:e}},function(e){e.Invoked=0,e.Automatic=1}(du||(du={})),(mu||(mu={})).create=function(e,t){return{range:e,text:t}},(gu||(gu={})).create=function(e,t){return{triggerKind:e,selectedCompletionInfo:t}},(fu||(fu={})).is=function(e){const t=e;return Eu.objectLiteral(t)&&ea.is(t.uri)&&Eu.string(t.name)},function(e){function t(e,n){if(e.length<=1)return e;const r=e.length/2|0,i=e.slice(0,r),s=e.slice(r);t(i,n),t(s,n);let o=0,a=0,l=0;for(;o<i.length&&a<s.length;){let t=n(i[o],s[a]);e[l++]=t<=0?i[o++]:s[a++]}for(;o<i.length;)e[l++]=i[o++];for(;a<s.length;)e[l++]=s[a++];return e}e.create=function(e,t,n,r){return new xu(e,t,n,r)},e.is=function(e){let t=e;return!!(Eu.defined(t)&&Eu.string(t.uri)&&(Eu.undefined(t.languageId)||Eu.string(t.languageId))&&Eu.uinteger(t.lineCount)&&Eu.func(t.getText)&&Eu.func(t.positionAt)&&Eu.func(t.offsetAt))},e.applyEdits=function(e,n){let r=e.getText(),i=t(n,(e,t)=>{let n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),s=r.length;for(let t=i.length-1;t>=0;t--){let n=i[t],o=e.offsetAt(n.range.start),a=e.offsetAt(n.range.end);if(!(a<=s))throw new Error("Overlapping edit");r=r.substring(0,o)+n.newText+r.substring(a,r.length),s=o}return r}}(pu||(pu={}));let xu=class{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(void 0===this._lineOffsets){let e=[],t=this._content,n=!0;for(let r=0;r<t.length;r++){n&&(e.push(r),n=!1);let i=t.charAt(r);n="\r"===i||"\n"===i,"\r"===i&&r+1<t.length&&"\n"===t.charAt(r+1)&&r++}n&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return sa.create(0,e);for(;n<r;){let i=Math.floor((n+r)/2);t[i]>e?r=i:n=i+1}let i=n-1;return sa.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let n=t[e.line],r=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,r),n)}get lineCount(){return this.getLineOffsets().length}};var Eu,Au,ku,Ru,Tu,Mu,Ou,Iu;!function(e){const t=Object.prototype.toString;e.defined=function(e){return void 0!==e},e.undefined=function(e){return void 0===e},e.boolean=function(e){return!0===e||!1===e},e.string=function(e){return"[object String]"===t.call(e)},e.number=function(e){return"[object Number]"===t.call(e)},e.numberRange=function(e,n,r){return"[object Number]"===t.call(e)&&n<=e&&e<=r},e.integer=function(e){return"[object Number]"===t.call(e)&&-2147483648<=e&&e<=2147483647},e.uinteger=function(e){return"[object Number]"===t.call(e)&&0<=e&&e<=2147483647},e.func=function(e){return"[object Function]"===t.call(e)},e.objectLiteral=function(e){return null!==e&&"object"==typeof e},e.typedArray=function(e,t){return Array.isArray(e)&&e.every(t)}}(Eu||(Eu={}));class Pu{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){const t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){for(let n of e)if(Pu.isIncremental(n)){const e=Du(n.range),t=this.offsetAt(e.start),r=this.offsetAt(e.end);this._content=this._content.substring(0,t)+n.text+this._content.substring(r,this._content.length);const i=Math.max(e.start.line,0),s=Math.max(e.end.line,0);let o=this._lineOffsets;const a=Vu(n.text,!1,t);if(s-i===a.length)for(let n=0,u=a.length;n<u;n++)o[n+i+1]=a[n];else a.length<1e4?o.splice(i+1,s-i,...a):this._lineOffsets=o=o.slice(0,i+1).concat(a,o.slice(s+1));const l=n.text.length-(r-t);if(0!==l)for(let n=i+1+a.length,u=o.length;n<u;n++)o[n]=o[n]+l}else{if(!Pu.isFull(n))throw new Error("Unknown change event received");this._content=n.text,this._lineOffsets=void 0}this._version=t}getLineOffsets(){return void 0===this._lineOffsets&&(this._lineOffsets=Vu(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),n=0,r=t.length;if(0===r)return{line:0,character:e};for(;n<r;){let i=Math.floor((n+r)/2);t[i]>e?r=i:n=i+1}let i=n-1;return{line:i,character:e-t[i]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let n=t[e.line],r=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,r),n)}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let t=e;return null!=t&&"string"==typeof t.text&&void 0!==t.range&&(void 0===t.rangeLength||"number"==typeof t.rangeLength)}static isFull(e){let t=e;return null!=t&&"string"==typeof t.text&&void 0===t.range&&void 0===t.rangeLength}}function Fu(e,t){if(e.length<=1)return e;const n=e.length/2|0,r=e.slice(0,n),i=e.slice(n);Fu(r,t),Fu(i,t);let s=0,o=0,a=0;for(;s<r.length&&o<i.length;){let n=t(r[s],i[o]);e[a++]=n<=0?r[s++]:i[o++]}for(;s<r.length;)e[a++]=r[s++];for(;o<i.length;)e[a++]=i[o++];return e}function Vu(e,t,n=0){const r=t?[n]:[];for(let i=0;i<e.length;i++){let t=e.charCodeAt(i);13!==t&&10!==t||(13===t&&i+1<e.length&&10===e.charCodeAt(i+1)&&i++,r.push(n+i+1))}return r}function Du(e){const t=e.start,n=e.end;return t.line>n.line||t.line===n.line&&t.character>n.character?{start:n,end:t}:e}function qu(e){const t=Du(e.range);return t!==e.range?{newText:e.newText,range:t}:e}function Ku(...e){const t=e[0];let n,r,i;if("string"==typeof t)n=t,r=t,e.splice(0,1),i=e&&"object"==typeof e[0]?e[0]:e;else{if(t instanceof Array){const n=e.slice(1);if(t.length!==n.length+1)throw new Error("expected a string as the first argument to l10n.t");let r=t[0];for(let e=1;e<t.length;e++)r+=`{${e-1}}`+t[e];return Ku(r,...n)}r=t.message,n=r,t.comment&&t.comment.length>0&&(n+=`/${Array.isArray(t.comment)?t.comment.join(""):t.comment}`),i=t.args??{}}return function(e,t){if(0===Object.keys(t).length)return e;return e.replace($u,(e,n)=>t[n]??e)}(r,i)}(ku=Au||(Au={})).create=function(e,t,n,r){return new Pu(e,t,n,r)},ku.update=function(e,t,n){if(e instanceof Pu)return e.update(t,n),e;throw new Error("TextDocument.update: document must be created by TextDocument.create")},ku.applyEdits=function(e,t){let n=e.getText(),r=Fu(t.map(qu),(e,t)=>{let n=e.range.start.line-t.range.start.line;return 0===n?e.range.start.character-t.range.start.character:n}),i=0;const s=[];for(const o of r){let t=e.offsetAt(o.range.start);if(t<i)throw new Error("Overlapping edit");t>i&&s.push(n.substring(i,t)),o.newText.length&&s.push(o.newText),i=e.offsetAt(o.range.end)}return s.push(n.substr(i)),s.join("")},(Tu=Ru||(Ru={}))[Tu.Undefined=0]="Undefined",Tu[Tu.EnumValueMismatch=1]="EnumValueMismatch",Tu[Tu.Deprecated=2]="Deprecated",Tu[Tu.UnexpectedEndOfComment=257]="UnexpectedEndOfComment",Tu[Tu.UnexpectedEndOfString=258]="UnexpectedEndOfString",Tu[Tu.UnexpectedEndOfNumber=259]="UnexpectedEndOfNumber",Tu[Tu.InvalidUnicode=260]="InvalidUnicode",Tu[Tu.InvalidEscapeCharacter=261]="InvalidEscapeCharacter",Tu[Tu.InvalidCharacter=262]="InvalidCharacter",Tu[Tu.PropertyExpected=513]="PropertyExpected",Tu[Tu.CommaExpected=514]="CommaExpected",Tu[Tu.ColonExpected=515]="ColonExpected",Tu[Tu.ValueExpected=516]="ValueExpected",Tu[Tu.CommaOrCloseBacketExpected=517]="CommaOrCloseBacketExpected",Tu[Tu.CommaOrCloseBraceExpected=518]="CommaOrCloseBraceExpected",Tu[Tu.TrailingComma=519]="TrailingComma",Tu[Tu.DuplicateKey=520]="DuplicateKey",Tu[Tu.CommentNotPermitted=521]="CommentNotPermitted",Tu[Tu.PropertyKeysMustBeDoublequoted=528]="PropertyKeysMustBeDoublequoted",Tu[Tu.SchemaResolveError=768]="SchemaResolveError",Tu[Tu.SchemaUnsupportedFeature=769]="SchemaUnsupportedFeature",(Ou=Mu||(Mu={}))[Ou.v3=3]="v3",Ou[Ou.v4=4]="v4",Ou[Ou.v6=6]="v6",Ou[Ou.v7=7]="v7",Ou[Ou.v2019_09=19]="v2019_09",Ou[Ou.v2020_12=20]="v2020_12",(Iu||(Iu={})).LATEST={textDocument:{completion:{completionItem:{documentationFormat:[nl.Markdown,nl.PlainText],commitCharactersSupport:!0,labelDetailsSupport:!0}}}};var $u=/{([^}]+)}/g;const Bu={"color-hex":{errorMessage:Ku("Invalid color format. Use #RGB, #RGBA, #RRGGBB or #RRGGBBAA."),pattern:/^#([0-9A-Fa-f]{3,4}|([0-9A-Fa-f]{2}){3,4})$/},"date-time":{errorMessage:Ku("String is not a RFC3339 date-time."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},date:{errorMessage:Ku("String is not a RFC3339 date."),pattern:/^(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/i},time:{errorMessage:Ku("String is not a RFC3339 time."),pattern:/^([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|(\+|-)([01][0-9]|2[0-3]):([0-5][0-9]))$/i},email:{errorMessage:Ku("String is not an e-mail address."),pattern:/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}))$/},hostname:{errorMessage:Ku("String is not a hostname."),pattern:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i},ipv4:{errorMessage:Ku("String is not an IPv4 address."),pattern:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/},ipv6:{errorMessage:Ku("String is not an IPv6 address."),pattern:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i}};class Uu{constructor(e,t,n=0){this.offset=t,this.length=n,this.parent=e}get children(){return[]}toString(){return"type: "+this.type+" ("+this.offset+"/"+this.length+")"+(this.parent?" parent: {"+this.parent.toString()+"}":"")}}class ju extends Uu{constructor(e,t){super(e,t),this.type="null",this.value=null}}class Wu extends Uu{constructor(e,t,n){super(e,n),this.type="boolean",this.value=t}}class zu extends Uu{constructor(e,t){super(e,t),this.type="array",this.items=[]}get children(){return this.items}}class Hu extends Uu{constructor(e,t){super(e,t),this.type="number",this.isInteger=!0,this.value=Number.NaN}}class Gu extends Uu{constructor(e,t,n){super(e,t,n),this.type="string",this.value=""}}class Ju extends Uu{constructor(e,t,n){super(e,t),this.type="property",this.colonOffset=-1,this.keyNode=n}get children(){return this.valueNode?[this.keyNode,this.valueNode]:[this.keyNode]}}class Xu extends Uu{constructor(e,t){super(e,t),this.type="object",this.properties=[]}get children(){return this.properties}}function Qu(e){return wu(e)?e?{}:{not:{}}:e}var Zu,Yu;(Yu=Zu||(Zu={}))[Yu.Key=0]="Key",Yu[Yu.Enum=1]="Enum";const ec={"http://json-schema.org/draft-03/schema#":Mu.v3,"http://json-schema.org/draft-04/schema#":Mu.v4,"http://json-schema.org/draft-06/schema#":Mu.v6,"http://json-schema.org/draft-07/schema#":Mu.v7,"https://json-schema.org/draft/2019-09/schema":Mu.v2019_09,"https://json-schema.org/draft/2020-12/schema":Mu.v2020_12};class tc{constructor(e){this.schemaDraft=e}}class nc{constructor(e=-1,t){this.focusOffset=e,this.exclude=t,this.schemas=[]}add(e){this.schemas.push(e)}merge(e){Array.prototype.push.apply(this.schemas,e.schemas)}include(e){return(-1===this.focusOffset||ac(e,this.focusOffset))&&e!==this.exclude}newSub(){return new nc(-1,this.exclude)}}class rc{constructor(){}get schemas(){return[]}add(e){}merge(e){}include(e){return!0}newSub(){return this}}rc.instance=new rc;class ic{constructor(){this.problems=[],this.propertiesMatches=0,this.processedProperties=new Set,this.propertiesValueMatches=0,this.primaryValueMatches=0,this.enumValueMatch=!1,this.enumValues=void 0}hasProblems(){return!!this.problems.length}merge(e){this.problems=this.problems.concat(e.problems),this.propertiesMatches+=e.propertiesMatches,this.propertiesValueMatches+=e.propertiesValueMatches,this.mergeProcessedProperties(e)}mergeEnumValues(e){if(!this.enumValueMatch&&!e.enumValueMatch&&this.enumValues&&e.enumValues){this.enumValues=this.enumValues.concat(e.enumValues);for(const e of this.problems)e.code===Ru.EnumValueMismatch&&(e.message=Ku("Value is not accepted. Valid values: {0}.",this.enumValues.map(e=>JSON.stringify(e)).join(", ")))}}mergePropertyMatch(e){this.problems=this.problems.concat(e.problems),this.propertiesMatches++,(e.enumValueMatch||!e.hasProblems()&&e.propertiesMatches)&&this.propertiesValueMatches++,e.enumValueMatch&&e.enumValues&&1===e.enumValues.length&&this.primaryValueMatches++}mergeProcessedProperties(e){e.processedProperties.forEach(e=>this.processedProperties.add(e))}compare(e){const t=this.hasProblems();return t!==e.hasProblems()?t?-1:1:this.enumValueMatch!==e.enumValueMatch?e.enumValueMatch?-1:1:this.primaryValueMatches!==e.primaryValueMatches?this.primaryValueMatches-e.primaryValueMatches:this.propertiesValueMatches!==e.propertiesValueMatches?this.propertiesValueMatches-e.propertiesValueMatches:this.propertiesMatches-e.propertiesMatches}}function sc(e){return Xo(e)}function oc(e){return Jo(e)}function ac(e,t,n=!1){return t>=e.offset&&t<e.offset+e.length||n&&t===e.offset+e.length}class lc{constructor(e,t=[],n=[]){this.root=e,this.syntaxErrors=t,this.comments=n}getNodeFromOffset(e,t=!1){if(this.root)return Go(this.root,e,t)}visit(e){if(this.root){const t=n=>{let r=e(n);const i=n.children;if(Array.isArray(i))for(let e=0;e<i.length&&r;e++)r=t(i[e]);return r};t(this.root)}}validate(e,t,n=Sa.Warning,r){if(this.root&&t){const i=new ic;return cc(this.root,t,i,rc.instance,new tc(r??uc(t))),i.problems.map(t=>{const r=aa.create(e.positionAt(t.location.offset),e.positionAt(t.location.offset+t.location.length));return ka.create(r,t.message,t.severity??n,t.code)})}}getMatchingSchemas(e,t=-1,n){if(this.root&&e){const r=new nc(t,n),i=uc(e),s=new tc(i);return cc(this.root,e,new ic,r,s),r.schemas}return[]}}function uc(e,t=Mu.v2020_12){let n=e.$schema;return n?ec[n]??t:t}function cc(e,t,n,r,i){if(!e||!r.include(e))return;if("property"===e.type)return cc(e.valueNode,t,n,r,i);const s=e;switch(function(){var e;function o(e){return s.type===e||"integer"===e&&"number"===s.type&&s.isInteger}Array.isArray(t.type)?t.type.some(o)||n.problems.push({location:{offset:s.offset,length:s.length},message:t.errorMessage||Ku("Incorrect type. Expected one of {0}.",t.type.join(", "))}):t.type&&(o(t.type)||n.problems.push({location:{offset:s.offset,length:s.length},message:t.errorMessage||Ku('Incorrect type. Expected "{0}".',t.type)}));if(Array.isArray(t.allOf))for(const d of t.allOf){const e=new ic,t=r.newSub();cc(s,Qu(d),e,t,i),n.merge(e),r.merge(t)}const a=Qu(t.not);if(a){const e=new ic,o=r.newSub();cc(s,a,e,o,i),e.hasProblems()||n.problems.push({location:{offset:s.offset,length:s.length},message:t.errorMessage||Ku("Matches a schema that is not allowed.")});for(const t of o.schemas)t.inverted=!t.inverted,r.add(t)}const l=(e,t)=>{const o=[];let a;for(const n of e){const e=Qu(n),l=new ic,u=r.newSub();if(cc(s,e,l,u,i),l.hasProblems()||o.push(e),a)if(t||l.hasProblems()||a.validationResult.hasProblems()){const t=l.compare(a.validationResult);t>0?a={schema:e,validationResult:l,matchingSchemas:u}:0===t&&(a.matchingSchemas.merge(u),a.validationResult.mergeEnumValues(l))}else a.matchingSchemas.merge(u),a.validationResult.propertiesMatches+=l.propertiesMatches,a.validationResult.propertiesValueMatches+=l.propertiesValueMatches,a.validationResult.mergeProcessedProperties(l);else a={schema:e,validationResult:l,matchingSchemas:u}}return o.length>1&&t&&n.problems.push({location:{offset:s.offset,length:1},message:Ku("Matches multiple schemas when only one must validate.")}),a&&(n.merge(a.validationResult),r.merge(a.matchingSchemas)),o.length};Array.isArray(t.anyOf)&&l(t.anyOf,!1);Array.isArray(t.oneOf)&&l(t.oneOf,!0);const u=e=>{const t=new ic,o=r.newSub();cc(s,Qu(e),t,o,i),n.merge(t),r.merge(o)},c=Qu(t.if);c&&((e,t,o)=>{const a=Qu(e),l=new ic,c=r.newSub();cc(s,a,l,c,i),r.merge(c),n.mergeProcessedProperties(l),l.hasProblems()?o&&u(o):t&&u(t)})(c,Qu(t.then),Qu(t.else));if(Array.isArray(t.enum)){const e=sc(s);let r=!1;for(const n of t.enum)if(bu(e,n)){r=!0;break}n.enumValues=t.enum,n.enumValueMatch=r,r||n.problems.push({location:{offset:s.offset,length:s.length},code:Ru.EnumValueMismatch,message:t.errorMessage||Ku("Value is not accepted. Valid values: {0}.",t.enum.map(e=>JSON.stringify(e)).join(", "))})}if(vu(t.const)){bu(sc(s),t.const)?n.enumValueMatch=!0:(n.problems.push({location:{offset:s.offset,length:s.length},code:Ru.EnumValueMismatch,message:t.errorMessage||Ku("Value must be {0}.",JSON.stringify(t.const))}),n.enumValueMatch=!1),n.enumValues=[t.const]}let h=t.deprecationMessage;if(h||t.deprecated){h=h||Ku("Value is deprecated");let t="property"===(null==(e=s.parent)?void 0:e.type)?s.parent:s;n.problems.push({location:{offset:t.offset,length:t.length},severity:Sa.Warning,message:h,code:Ru.Deprecated})}}(),s.type){case"object":!function(e){const s=Object.create(null),o=new Set;for(const t of e.properties){const e=t.keyNode.value;s[e]=t.valueNode,o.add(e)}if(Array.isArray(t.required))for(const r of t.required)if(!s[r]){const t=e.parent&&"property"===e.parent.type&&e.parent.keyNode,i=t?{offset:t.offset,length:t.length}:{offset:e.offset,length:1};n.problems.push({location:i,message:Ku('Missing property "{0}".',r)})}const a=e=>{o.delete(e),n.processedProperties.add(e)};if(t.properties)for(const d of Object.keys(t.properties)){a(d);const e=t.properties[d],o=s[d];if(o)if(wu(e))if(e)n.propertiesMatches++,n.propertiesValueMatches++;else{const e=o.parent;n.problems.push({location:{offset:e.keyNode.offset,length:e.keyNode.length},message:t.errorMessage||Ku("Property {0} is not allowed.",d)})}else{const t=new ic;cc(o,e,t,r,i),n.mergePropertyMatch(t)}}if(t.patternProperties)for(const d of Object.keys(t.patternProperties)){const e=Su(d);if(e){const l=[];for(const a of o)if(e.test(a)){l.push(a);const e=s[a];if(e){const s=t.patternProperties[d];if(wu(s))if(s)n.propertiesMatches++,n.propertiesValueMatches++;else{const r=e.parent;n.problems.push({location:{offset:r.keyNode.offset,length:r.keyNode.length},message:t.errorMessage||Ku("Property {0} is not allowed.",a)})}else{const t=new ic;cc(e,s,t,r,i),n.mergePropertyMatch(t)}}}l.forEach(a)}}const l=t.additionalProperties;if(void 0!==l)for(const d of o){a(d);const e=s[d];if(e)if(!1===l){const r=e.parent;n.problems.push({location:{offset:r.keyNode.offset,length:r.keyNode.length},message:t.errorMessage||Ku("Property {0} is not allowed.",d)})}else if(!0!==l){const t=new ic;cc(e,l,t,r,i),n.mergePropertyMatch(t)}}const u=t.unevaluatedProperties;if(void 0!==u){const e=[];for(const a of o)if(!n.processedProperties.has(a)){e.push(a);const o=s[a];if(o)if(!1===u){const e=o.parent;n.problems.push({location:{offset:e.keyNode.offset,length:e.keyNode.length},message:t.errorMessage||Ku("Property {0} is not allowed.",a)})}else if(!0!==u){const e=new ic;cc(o,u,e,r,i),n.mergePropertyMatch(e)}}e.forEach(a)}yu(t.maxProperties)&&e.properties.length>t.maxProperties&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Object has more properties than limit of {0}.",t.maxProperties)});yu(t.minProperties)&&e.properties.length<t.minProperties&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Object has fewer properties than the required number of {0}",t.minProperties)});if(t.dependentRequired)for(const n in t.dependentRequired){const e=s[n],r=t.dependentRequired[n];e&&Array.isArray(r)&&h(n,r)}if(t.dependentSchemas)for(const n in t.dependentSchemas){const e=s[n],r=t.dependentSchemas[n];e&&_u(r)&&h(n,r)}if(t.dependencies)for(const n in t.dependencies){s[n]&&h(n,t.dependencies[n])}const c=Qu(t.propertyNames);if(c)for(const t of e.properties){const e=t.keyNode;e&&cc(e,c,n,rc.instance,i)}function h(t,o){if(Array.isArray(o))for(const r of o)s[r]?n.propertiesValueMatches++:n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Object is missing property {0} required by property {1}.",r,t)});else{const t=Qu(o);if(t){const s=new ic;cc(e,t,s,r,i),n.mergePropertyMatch(s)}}}}(s);break;case"array":!function(e){let s,o;i.schemaDraft>=Mu.v2020_12?(s=t.prefixItems,o=Array.isArray(t.items)?void 0:t.items):(s=Array.isArray(t.items)?t.items:void 0,o=Array.isArray(t.items)?t.additionalItems:t.items);let a=0;if(void 0!==s){const t=Math.min(s.length,e.items.length);for(;a<t;a++){const t=Qu(s[a]),o=new ic,l=e.items[a];l&&(cc(l,t,o,r,i),n.mergePropertyMatch(o)),n.processedProperties.add(String(a))}}if(void 0!==o&&a<e.items.length)if("boolean"==typeof o)for(!1===o&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Array has too many items according to schema. Expected {0} or fewer.",a)});a<e.items.length;a++)n.processedProperties.add(String(a)),n.propertiesValueMatches++;else for(;a<e.items.length;a++){const t=new ic;cc(e.items[a],o,t,r,i),n.mergePropertyMatch(t),n.processedProperties.add(String(a))}const l=Qu(t.contains);if(l){let r=0;for(let t=0;t<e.items.length;t++){const s=e.items[t],o=new ic;cc(s,l,o,rc.instance,i),o.hasProblems()||(r++,i.schemaDraft>=Mu.v2020_12&&n.processedProperties.add(String(t)))}0!==r||yu(t.minContains)||n.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||Ku("Array does not contain required item.")}),yu(t.minContains)&&r<t.minContains&&n.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||Ku("Array has too few items that match the contains contraint. Expected {0} or more.",t.minContains)}),yu(t.maxContains)&&r>t.maxContains&&n.problems.push({location:{offset:e.offset,length:e.length},message:t.errorMessage||Ku("Array has too many items that match the contains contraint. Expected {0} or less.",t.maxContains)})}const u=t.unevaluatedItems;if(void 0!==u)for(let c=0;c<e.items.length;c++){if(!n.processedProperties.has(String(c)))if(!1===u)n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Item does not match any validation rule from the array.")});else{const s=new ic;cc(e.items[c],t.unevaluatedItems,s,r,i),n.mergePropertyMatch(s)}n.processedProperties.add(String(c)),n.propertiesValueMatches++}yu(t.minItems)&&e.items.length<t.minItems&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Array has too few items. Expected {0} or more.",t.minItems)});yu(t.maxItems)&&e.items.length>t.maxItems&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Array has too many items. Expected {0} or fewer.",t.maxItems)});if(!0===t.uniqueItems){let t=function(){for(let e=0;e<r.length-1;e++){const t=r[e];for(let n=e+1;n<r.length;n++)if(bu(t,r[n]))return!0}return!1};const r=sc(e);t()&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Array has duplicate items.")})}}(s);break;case"string":!function(e){yu(t.minLength)&&Nu(e.value)<t.minLength&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("String is shorter than the minimum length of {0}.",t.minLength)});yu(t.maxLength)&&Nu(e.value)>t.maxLength&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("String is longer than the maximum length of {0}.",t.maxLength)});if(Cu(t.pattern)){const r=Su(t.pattern);(null==r?void 0:r.test(e.value))||n.problems.push({location:{offset:e.offset,length:e.length},message:t.patternErrorMessage||t.errorMessage||Ku('String does not match the pattern of "{0}".',t.pattern)})}if(t.format)switch(t.format){case"uri":case"uri-reference":{let r;if(e.value){const n=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/.exec(e.value);n?n[2]||"uri"!==t.format||(r=Ku("URI with a scheme is expected.")):r=Ku("URI is expected.")}else r=Ku("URI expected.");r&&n.problems.push({location:{offset:e.offset,length:e.length},message:t.patternErrorMessage||t.errorMessage||Ku("String is not a URI: {0}",r)})}break;case"color-hex":case"date-time":case"date":case"time":case"email":case"hostname":case"ipv4":case"ipv6":const r=Bu[t.format];e.value&&r.pattern.exec(e.value)||n.problems.push({location:{offset:e.offset,length:e.length},message:t.patternErrorMessage||t.errorMessage||r.errorMessage})}}(s);break;case"number":!function(e){const r=e.value;function i(e){var t;const n=/^(-?\d+)(?:\.(\d+))?(?:e([-+]\d+))?$/.exec(e.toString());return n&&{value:Number(n[1]+(n[2]||"")),multiplier:((null==(t=n[2])?void 0:t.length)||0)-(parseInt(n[3])||0)}}if(yu(t.multipleOf)){let s=-1;if(Number.isInteger(t.multipleOf))s=r%t.multipleOf;else{let e=i(t.multipleOf),n=i(r);if(e&&n){const t=10**Math.abs(n.multiplier-e.multiplier);n.multiplier<e.multiplier?n.value*=t:e.value*=t,s=n.value%e.value}}0!==s&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Value is not divisible by {0}.",t.multipleOf)})}function s(e,t){return yu(t)?t:wu(t)&&t?e:void 0}function o(e,t){if(!wu(t)||!t)return e}const a=s(t.minimum,t.exclusiveMinimum);yu(a)&&r<=a&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Value is below the exclusive minimum of {0}.",a)});const l=s(t.maximum,t.exclusiveMaximum);yu(l)&&r>=l&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Value is above the exclusive maximum of {0}.",l)});const u=o(t.minimum,t.exclusiveMinimum);yu(u)&&r<u&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Value is below the minimum of {0}.",u)});const c=o(t.maximum,t.exclusiveMaximum);yu(c)&&r>c&&n.problems.push({location:{offset:e.offset,length:e.length},message:Ku("Value is above the maximum of {0}.",c)})}(s)}r.add({node:s,schema:t})}function hc(e,t){const n=[];let r=-1;const i=e.getText(),s=Bo(i,!1),o=t&&t.collectComments?[]:void 0;function a(){for(;;){const t=s.scan();switch(c(),t){case 12:case 13:Array.isArray(o)&&o.push(aa.create(e.positionAt(s.getTokenOffset()),e.positionAt(s.getTokenOffset()+s.getTokenLength())));break;case 15:case 14:break;default:return t}}}function l(t,i,s,o,a=Sa.Error){if(0===n.length||s!==r){const l=aa.create(e.positionAt(s),e.positionAt(o));n.push(ka.create(l,t,a,i,e.languageId)),r=s}}function u(e,t,n=void 0,r=[],o=[]){let u=s.getTokenOffset(),c=s.getTokenOffset()+s.getTokenLength();if(u===c&&u>0){for(u--;u>0&&/\s/.test(i.charAt(u));)u--;c=u+1}if(l(e,t,u,c),n&&h(n,!1),r.length+o.length>0){let e=s.getToken();for(;17!==e;){if(-1!==r.indexOf(e)){a();break}if(-1!==o.indexOf(e))break;e=a()}}return n}function c(){switch(s.getTokenError()){case 4:return u(Ku("Invalid unicode sequence in string."),Ru.InvalidUnicode),!0;case 5:return u(Ku("Invalid escape character in string."),Ru.InvalidEscapeCharacter),!0;case 3:return u(Ku("Unexpected end of number."),Ru.UnexpectedEndOfNumber),!0;case 1:return u(Ku("Unexpected end of comment."),Ru.UnexpectedEndOfComment),!0;case 2:return u(Ku("Unexpected end of string."),Ru.UnexpectedEndOfString),!0;case 6:return u(Ku("Invalid characters in string. Control characters must be escaped."),Ru.InvalidCharacter),!0}return!1}function h(e,t){return e.length=s.getTokenOffset()+s.getTokenLength()-e.offset,t&&a(),e}const d=new Gu(void 0,0,0);function m(t,n){const r=new Ju(t,s.getTokenOffset(),d);let i=g(r);if(!i){if(16!==s.getToken())return;{u(Ku("Property keys must be doublequoted"),Ru.PropertyKeysMustBeDoublequoted);const e=new Gu(r,s.getTokenOffset(),s.getTokenLength());e.value=s.getTokenValue(),i=e,a()}}if(r.keyNode=i,"//"!==i.value){const e=n[i.value];e?(l(Ku("Duplicate object key"),Ru.DuplicateKey,r.keyNode.offset,r.keyNode.offset+r.keyNode.length,Sa.Warning),_u(e)&&l(Ku("Duplicate object key"),Ru.DuplicateKey,e.keyNode.offset,e.keyNode.offset+e.keyNode.length,Sa.Warning),n[i.value]=!0):n[i.value]=r}if(6===s.getToken())r.colonOffset=s.getTokenOffset(),a();else if(u(Ku("Colon expected"),Ru.ColonExpected),10===s.getToken()&&e.positionAt(i.offset+i.length).line<e.positionAt(s.getTokenOffset()).line)return r.length=i.length,r;const o=f(r);return o?(r.valueNode=o,r.length=o.offset+o.length-r.offset,r):u(Ku("Value expected"),Ru.ValueExpected,r,[],[2,5])}function g(e){if(10!==s.getToken())return;const t=new Gu(e,s.getTokenOffset());return t.value=s.getTokenValue(),h(t,!0)}function f(e){return function(e){if(3!==s.getToken())return;const t=new zu(e,s.getTokenOffset());a();let n=!1;for(;4!==s.getToken()&&17!==s.getToken();){if(5===s.getToken()){n||u(Ku("Value expected"),Ru.ValueExpected);const e=s.getTokenOffset();if(a(),4===s.getToken()){n&&l(Ku("Trailing comma"),Ru.TrailingComma,e,e+1);continue}}else n&&u(Ku("Expected comma"),Ru.CommaExpected);const e=f(t);e?t.items.push(e):u(Ku("Value expected"),Ru.ValueExpected,void 0,[],[4,5]),n=!0}return 4!==s.getToken()?u(Ku("Expected comma or closing bracket"),Ru.CommaOrCloseBacketExpected,t):h(t,!0)}(e)||function(e){if(1!==s.getToken())return;const t=new Xu(e,s.getTokenOffset()),n=Object.create(null);a();let r=!1;for(;2!==s.getToken()&&17!==s.getToken();){if(5===s.getToken()){r||u(Ku("Property expected"),Ru.PropertyExpected);const e=s.getTokenOffset();if(a(),2===s.getToken()){r&&l(Ku("Trailing comma"),Ru.TrailingComma,e,e+1);continue}}else r&&u(Ku("Expected comma"),Ru.CommaExpected);const e=m(t,n);e?t.properties.push(e):u(Ku("Property expected"),Ru.PropertyExpected,void 0,[],[2,5]),r=!0}return 2!==s.getToken()?u(Ku("Expected comma or closing brace"),Ru.CommaOrCloseBraceExpected,t):h(t,!0)}(e)||g(e)||function(e){if(11!==s.getToken())return;const t=new Hu(e,s.getTokenOffset());if(0===s.getTokenError()){const e=s.getTokenValue();try{const n=JSON.parse(e);if(!yu(n))return u(Ku("Invalid number format."),Ru.Undefined,t);t.value=n}catch(lh){return u(Ku("Invalid number format."),Ru.Undefined,t)}t.isInteger=-1===e.indexOf(".")}return h(t,!0)}(e)||function(e){switch(s.getToken()){case 7:return h(new ju(e,s.getTokenOffset()),!0);case 8:return h(new Wu(e,!0,s.getTokenOffset()),!0);case 9:return h(new Wu(e,!1,s.getTokenOffset()),!0);default:return}}(e)}let p;return 17!==a()&&(p=f(p),p?17!==s.getToken()&&u(Ku("End of file expected."),Ru.Undefined):u(Ku("Expected a JSON object, array or literal."),Ru.Undefined)),new lc(p,n,o)}function dc(e,t,n){if(null!==e&&"object"==typeof e){const r=t+"\t";if(Array.isArray(e)){if(0===e.length)return"[]";let i="[\n";for(let t=0;t<e.length;t++)i+=r+dc(e[t],r,n),t<e.length-1&&(i+=","),i+="\n";return i+=t+"]",i}{const i=Object.keys(e);if(0===i.length)return"{}";let s="{\n";for(let t=0;t<i.length;t++){const o=i[t];s+=r+JSON.stringify(o)+": "+dc(e[o],r,n),t<i.length-1&&(s+=","),s+="\n"}return s+=t+"}",s}}return n(e)}class mc{constructor(e,t=[],n=Promise,r={}){this.schemaService=e,this.contributions=t,this.promiseConstructor=n,this.clientCapabilities=r}doResolve(e){for(let t=this.contributions.length-1;t>=0;t--){const n=this.contributions[t].resolveCompletion;if(n){const t=n(e);if(t)return t}}return this.promiseConstructor.resolve(e)}doComplete(e,t,n){const r={items:[],isIncomplete:!1},i=e.getText(),s=e.offsetAt(t);let o=n.getNodeFromOffset(s,!0);if(this.isInComment(e,o?o.offset:0,s))return Promise.resolve(r);if(o&&s===o.offset+o.length&&s>0){const e=i[s-1];("object"===o.type&&"}"===e||"array"===o.type&&"]"===e)&&(o=o.parent)}const a=this.getCurrentWord(e,s);let l;if(!o||"string"!==o.type&&"number"!==o.type&&"boolean"!==o.type&&"null"!==o.type){let n=s-a.length;n>0&&'"'===i[n-1]&&n--,l=aa.create(e.positionAt(n),t)}else l=aa.create(e.positionAt(o.offset),e.positionAt(o.offset+o.length));const u=new Map,c={add:e=>{let t=e.label;const n=u.get(t);if(n)n.documentation||(n.documentation=e.documentation),n.detail||(n.detail=e.detail),n.labelDetails||(n.labelDetails=e.labelDetails);else{if(t=t.replace(/[\n]/g,"↵"),t.length>60){const e=t.substr(0,57).trim()+"...";u.has(e)||(t=e)}e.textEdit=Ma.replace(l,e.insertText),e.label=t,u.set(t,e),r.items.push(e)}},setAsIncomplete:()=>{r.isIncomplete=!0},error:e=>{},getNumberOfProposals:()=>r.items.length};return this.schemaService.getSchemaForResource(e.uri,n).then(t=>{const h=[];let d,m=!0,g="";if(o&&"string"===o.type){const e=o.parent;e&&"property"===e.type&&e.keyNode===o&&(m=!e.valueNode,d=e,g=i.substr(o.offset+1,o.length-2),e&&(o=e.parent))}if(o&&"object"===o.type){if(o.offset===s)return r;o.properties.forEach(e=>{d&&d===e||u.set(e.keyNode.value,gl.create("__"))});let f="";m&&(f=this.evaluateSeparatorAfter(e,e.offsetAt(l.end))),t?this.getPropertyCompletions(t,n,o,m,f,c):this.getSchemaLessPropertyCompletions(n,o,g,c);const p=oc(o);this.contributions.forEach(t=>{const n=t.collectPropertyCompletions(e.uri,p,a,m,""===f,c);n&&h.push(n)}),!t&&a.length>0&&'"'!==i.charAt(s-a.length-1)&&(c.add({kind:sl.Property,label:this.getLabelForValue(a),insertText:this.getInsertTextForProperty(a,void 0,!1,f),insertTextFormat:ol.Snippet,documentation:""}),c.setAsIncomplete())}const f={};return t?this.getValueCompletions(t,n,o,s,e,c,f):this.getSchemaLessValueCompletions(n,o,s,e,c),this.contributions.length>0&&this.getContributedValueCompletions(n,o,s,e,c,h),this.promiseConstructor.all(h).then(()=>{if(0===c.getNumberOfProposals()){let t=s;!o||"string"!==o.type&&"number"!==o.type&&"boolean"!==o.type&&"null"!==o.type||(t=o.offset+o.length);const n=this.evaluateSeparatorAfter(e,t);this.addFillerValueCompletions(f,n,c)}return r})})}getPropertyCompletions(e,t,n,r,i,s){t.getMatchingSchemas(e.schema,n.offset).forEach(e=>{if(e.node===n&&!e.inverted){const t=e.schema.properties;t&&Object.keys(t).forEach(e=>{const n=t[e];if("object"==typeof n&&!n.deprecationMessage&&!n.doNotSuggest){const t={kind:sl.Property,label:e,insertText:this.getInsertTextForProperty(e,n,r,i),insertTextFormat:ol.Snippet,filterText:this.getFilterTextForValue(e),documentation:this.fromMarkup(n.markdownDescription)||n.description||""};void 0!==n.suggestSortText&&(t.sortText=n.suggestSortText),t.insertText&&Lu(t.insertText,`$1${i}`)&&(t.command={title:"Suggest",command:"editor.action.triggerSuggest"}),s.add(t)}});const n=e.schema.propertyNames;if("object"==typeof n&&!n.deprecationMessage&&!n.doNotSuggest){const e=(e,t=void 0)=>{const o={kind:sl.Property,label:e,insertText:this.getInsertTextForProperty(e,void 0,r,i),insertTextFormat:ol.Snippet,filterText:this.getFilterTextForValue(e),documentation:t||this.fromMarkup(n.markdownDescription)||n.description||""};void 0!==n.suggestSortText&&(o.sortText=n.suggestSortText),o.insertText&&Lu(o.insertText,`$1${i}`)&&(o.command={title:"Suggest",command:"editor.action.triggerSuggest"}),s.add(o)};if(n.enum)for(let t=0;t<n.enum.length;t++){let r;n.markdownEnumDescriptions&&t<n.markdownEnumDescriptions.length?r=this.fromMarkup(n.markdownEnumDescriptions[t]):n.enumDescriptions&&t<n.enumDescriptions.length&&(r=n.enumDescriptions[t]),e(n.enum[t],r)}n.const&&e(n.const)}}})}getSchemaLessPropertyCompletions(e,t,n,r){const i=e=>{e.properties.forEach(e=>{const t=e.keyNode.value;r.add({kind:sl.Property,label:t,insertText:this.getInsertTextForValue(t,""),insertTextFormat:ol.Snippet,filterText:this.getFilterTextForValue(t),documentation:""})})};if(t.parent)if("property"===t.parent.type){const n=t.parent.keyNode.value;e.visit(e=>("property"===e.type&&e!==t.parent&&e.keyNode.value===n&&e.valueNode&&"object"===e.valueNode.type&&i(e.valueNode),!0))}else"array"===t.parent.type&&t.parent.items.forEach(e=>{"object"===e.type&&e!==t&&i(e)});else"object"===t.type&&r.add({kind:sl.Property,label:"$schema",insertText:this.getInsertTextForProperty("$schema",void 0,!0,""),insertTextFormat:ol.Snippet,documentation:"",filterText:this.getFilterTextForValue("$schema")})}getSchemaLessValueCompletions(e,t,n,r,i){let s=n;if(!t||"string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(s=t.offset+t.length,t=t.parent),!t)return i.add({kind:this.getSuggestionKind("object"),label:"Empty object",insertText:this.getInsertTextForValue({},""),insertTextFormat:ol.Snippet,documentation:""}),void i.add({kind:this.getSuggestionKind("array"),label:"Empty array",insertText:this.getInsertTextForValue([],""),insertTextFormat:ol.Snippet,documentation:""});const o=this.evaluateSeparatorAfter(r,s),a=e=>{e.parent&&!ac(e.parent,n,!0)&&i.add({kind:this.getSuggestionKind(e.type),label:this.getLabelTextForMatchingNode(e,r),insertText:this.getInsertTextForMatchingNode(e,r,o),insertTextFormat:ol.Snippet,documentation:""}),"boolean"===e.type&&this.addBooleanValueCompletion(!e.value,o,i)};if("property"===t.type&&n>(t.colonOffset||0)){const r=t.valueNode;if(r&&(n>r.offset+r.length||"object"===r.type||"array"===r.type))return;const s=t.keyNode.value;e.visit(e=>("property"===e.type&&e.keyNode.value===s&&e.valueNode&&a(e.valueNode),!0)),"$schema"===s&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(o,i)}if("array"===t.type)if(t.parent&&"property"===t.parent.type){const n=t.parent.keyNode.value;e.visit(e=>("property"===e.type&&e.keyNode.value===n&&e.valueNode&&"array"===e.valueNode.type&&e.valueNode.items.forEach(a),!0))}else t.items.forEach(a)}getValueCompletions(e,t,n,r,i,s,o){let a,l,u=r;if(!n||"string"!==n.type&&"number"!==n.type&&"boolean"!==n.type&&"null"!==n.type||(u=n.offset+n.length,l=n,n=n.parent),n){if("property"===n.type&&r>(n.colonOffset||0)){const e=n.valueNode;if(e&&r>e.offset+e.length)return;a=n.keyNode.value,n=n.parent}if(n&&(void 0!==a||"array"===n.type)){const c=this.evaluateSeparatorAfter(i,u),h=t.getMatchingSchemas(e.schema,n.offset,l);for(const e of h)if(e.node===n&&!e.inverted&&e.schema){if("array"===n.type&&e.schema.items){let t=s;if(e.schema.uniqueItems){const e=new Set;n.children.forEach(t=>{"array"!==t.type&&"object"!==t.type&&e.add(this.getLabelForValue(sc(t)))}),t={...s,add(t){e.has(t.label)||s.add(t)}}}if(Array.isArray(e.schema.items)){const s=this.findItemAtOffset(n,i,r);s<e.schema.items.length&&this.addSchemaValueCompletions(e.schema.items[s],c,t,o)}else this.addSchemaValueCompletions(e.schema.items,c,t,o)}if(void 0!==a){let t=!1;if(e.schema.properties){const n=e.schema.properties[a];n&&(t=!0,this.addSchemaValueCompletions(n,c,s,o))}if(e.schema.patternProperties&&!t)for(const n of Object.keys(e.schema.patternProperties)){const r=Su(n);if(null==r?void 0:r.test(a)){t=!0;const r=e.schema.patternProperties[n];this.addSchemaValueCompletions(r,c,s,o)}}if(e.schema.additionalProperties&&!t){const t=e.schema.additionalProperties;this.addSchemaValueCompletions(t,c,s,o)}}}"$schema"!==a||n.parent||this.addDollarSchemaCompletions(c,s),o.boolean&&(this.addBooleanValueCompletion(!0,c,s),this.addBooleanValueCompletion(!1,c,s)),o.null&&this.addNullValueCompletion(c,s)}}else this.addSchemaValueCompletions(e.schema,"",s,o)}getContributedValueCompletions(e,t,n,r,i,s){if(t){if("string"!==t.type&&"number"!==t.type&&"boolean"!==t.type&&"null"!==t.type||(t=t.parent),t&&"property"===t.type&&n>(t.colonOffset||0)){const e=t.keyNode.value,o=t.valueNode;if((!o||n<=o.offset+o.length)&&t.parent){const n=oc(t.parent);this.contributions.forEach(t=>{const o=t.collectValueCompletions(r.uri,n,e,i);o&&s.push(o)})}}}else this.contributions.forEach(e=>{const t=e.collectDefaultCompletions(r.uri,i);t&&s.push(t)})}addSchemaValueCompletions(e,t,n,r){"object"==typeof e&&(this.addEnumValueCompletions(e,t,n),this.addDefaultValueCompletions(e,t,n),this.collectTypes(e,r),Array.isArray(e.allOf)&&e.allOf.forEach(e=>this.addSchemaValueCompletions(e,t,n,r)),Array.isArray(e.anyOf)&&e.anyOf.forEach(e=>this.addSchemaValueCompletions(e,t,n,r)),Array.isArray(e.oneOf)&&e.oneOf.forEach(e=>this.addSchemaValueCompletions(e,t,n,r)))}addDefaultValueCompletions(e,t,n,r=0){let i=!1;if(vu(e.default)){let s=e.type,o=e.default;for(let e=r;e>0;e--)o=[o],s="array";const a={kind:this.getSuggestionKind(s),label:this.getLabelForValue(o),insertText:this.getInsertTextForValue(o,t),insertTextFormat:ol.Snippet};this.doesSupportsLabelDetails()?a.labelDetails={description:Ku("Default value")}:a.detail=Ku("Default value"),n.add(a),i=!0}Array.isArray(e.examples)&&e.examples.forEach(s=>{let o=e.type,a=s;for(let e=r;e>0;e--)a=[a],o="array";n.add({kind:this.getSuggestionKind(o),label:this.getLabelForValue(a),insertText:this.getInsertTextForValue(a,t),insertTextFormat:ol.Snippet}),i=!0}),Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach(s=>{let o,a,l=e.type,u=s.body,c=s.label;if(vu(u)){e.type;for(let e=r;e>0;e--)u=[u];o=this.getInsertTextForSnippetValue(u,t),a=this.getFilterTextForSnippetValue(u),c=c||this.getLabelForSnippetValue(u)}else{if("string"!=typeof s.bodyText)return;{let e="",n="",i="";for(let t=r;t>0;t--)e=e+i+"[\n",n=n+"\n"+i+"]",i+="\t",l="array";o=e+i+s.bodyText.split("\n").join("\n"+i)+n+t,c=c||o,a=o.replace(/[\n]/g,"")}}n.add({kind:this.getSuggestionKind(l),label:c,documentation:this.fromMarkup(s.markdownDescription)||s.description,insertText:o,insertTextFormat:ol.Snippet,filterText:a}),i=!0}),!i&&"object"==typeof e.items&&!Array.isArray(e.items)&&r<5&&this.addDefaultValueCompletions(e.items,t,n,r+1)}addEnumValueCompletions(e,t,n){if(vu(e.const)&&n.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(e.const),insertText:this.getInsertTextForValue(e.const,t),insertTextFormat:ol.Snippet,documentation:this.fromMarkup(e.markdownDescription)||e.description}),Array.isArray(e.enum))for(let r=0,i=e.enum.length;r<i;r++){const i=e.enum[r];let s=this.fromMarkup(e.markdownDescription)||e.description;e.markdownEnumDescriptions&&r<e.markdownEnumDescriptions.length&&this.doesSupportMarkdown()?s=this.fromMarkup(e.markdownEnumDescriptions[r]):e.enumDescriptions&&r<e.enumDescriptions.length&&(s=e.enumDescriptions[r]),n.add({kind:this.getSuggestionKind(e.type),label:this.getLabelForValue(i),insertText:this.getInsertTextForValue(i,t),insertTextFormat:ol.Snippet,documentation:s})}}collectTypes(e,t){if(Array.isArray(e.enum)||vu(e.const))return;const n=e.type;Array.isArray(n)?n.forEach(e=>t[e]=!0):n&&(t[n]=!0)}addFillerValueCompletions(e,t,n){e.object&&n.add({kind:this.getSuggestionKind("object"),label:"{}",insertText:this.getInsertTextForGuessedValue({},t),insertTextFormat:ol.Snippet,detail:Ku("New object"),documentation:""}),e.array&&n.add({kind:this.getSuggestionKind("array"),label:"[]",insertText:this.getInsertTextForGuessedValue([],t),insertTextFormat:ol.Snippet,detail:Ku("New array"),documentation:""})}addBooleanValueCompletion(e,t,n){n.add({kind:this.getSuggestionKind("boolean"),label:e?"true":"false",insertText:this.getInsertTextForValue(e,t),insertTextFormat:ol.Snippet,documentation:""})}addNullValueCompletion(e,t){t.add({kind:this.getSuggestionKind("null"),label:"null",insertText:"null"+e,insertTextFormat:ol.Snippet,documentation:""})}addDollarSchemaCompletions(e,t){this.schemaService.getRegisteredSchemaIds(e=>"http"===e||"https"===e).forEach(n=>{n.startsWith("http://json-schema.org/draft-")&&(n+="#"),t.add({kind:sl.Module,label:this.getLabelForValue(n),filterText:this.getFilterTextForValue(n),insertText:this.getInsertTextForValue(n,e),insertTextFormat:ol.Snippet,documentation:""})})}getLabelForValue(e){return JSON.stringify(e)}getValueFromLabel(e){return JSON.parse(e)}getFilterTextForValue(e){return JSON.stringify(e)}getFilterTextForSnippetValue(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")}getLabelForSnippetValue(e){return JSON.stringify(e).replace(/\$\{\d+:([^}]+)\}|\$\d+/g,"$1")}getInsertTextForPlainText(e){return e.replace(/[\\\$\}]/g,"\\$&")}getInsertTextForValue(e,t){const n=JSON.stringify(e,null,"\t");return"{}"===n?"{$1}"+t:"[]"===n?"[$1]"+t:this.getInsertTextForPlainText(n+t)}getInsertTextForSnippetValue(e,t){return dc(e,"",e=>"string"==typeof e&&"^"===e[0]?e.substr(1):JSON.stringify(e))+t}getInsertTextForGuessedValue(e,t){switch(typeof e){case"object":return null===e?"${1:null}"+t:this.getInsertTextForValue(e,t);case"string":let n=JSON.stringify(e);return n=n.substr(1,n.length-2),n=this.getInsertTextForPlainText(n),'"${1:'+n+'}"'+t;case"number":case"boolean":return"${1:"+JSON.stringify(e)+"}"+t}return this.getInsertTextForValue(e,t)}getSuggestionKind(e){if(Array.isArray(e)){const t=e;e=t.length>0?t[0]:void 0}if(!e)return sl.Value;switch(e){case"string":default:return sl.Value;case"object":return sl.Module;case"property":return sl.Property}}getLabelTextForMatchingNode(e,t){switch(e.type){case"array":return"[]";case"object":return"{}";default:return t.getText().substr(e.offset,e.length)}}getInsertTextForMatchingNode(e,t,n){switch(e.type){case"array":return this.getInsertTextForValue([],n);case"object":return this.getInsertTextForValue({},n);default:const r=t.getText().substr(e.offset,e.length)+n;return this.getInsertTextForPlainText(r)}}getInsertTextForProperty(e,t,n,r){const i=this.getInsertTextForValue(e,"");if(!n)return i;const s=i+": ";let o,a=0;if(t){if(Array.isArray(t.defaultSnippets)){if(1===t.defaultSnippets.length){const e=t.defaultSnippets[0].body;vu(e)&&(o=this.getInsertTextForSnippetValue(e,""))}a+=t.defaultSnippets.length}if(t.enum&&(o||1!==t.enum.length||(o=this.getInsertTextForGuessedValue(t.enum[0],"")),a+=t.enum.length),vu(t.const)&&(o||(o=this.getInsertTextForGuessedValue(t.const,"")),a++),vu(t.default)&&(o||(o=this.getInsertTextForGuessedValue(t.default,"")),a++),Array.isArray(t.examples)&&t.examples.length&&(o||(o=this.getInsertTextForGuessedValue(t.examples[0],"")),a+=t.examples.length),0===a){let e=Array.isArray(t.type)?t.type[0]:t.type;switch(e||(t.properties?e="object":t.items&&(e="array")),e){case"boolean":o="$1";break;case"string":o='"$1"';break;case"object":o="{$1}";break;case"array":o="[$1]";break;case"number":case"integer":o="${1:0}";break;case"null":o="${1:null}";break;default:return i}}}return(!o||a>1)&&(o="$1"),s+o+r}getCurrentWord(e,t){let n=t-1;const r=e.getText();for(;n>=0&&-1===' \t\n\r\v":{[,]}'.indexOf(r.charAt(n));)n--;return r.substring(n+1,t)}evaluateSeparatorAfter(e,t){const n=Bo(e.getText(),!0);n.setPosition(t);switch(n.scan()){case 5:case 2:case 4:case 17:return"";default:return","}}findItemAtOffset(e,t,n){const r=Bo(t.getText(),!0),i=e.items;for(let s=i.length-1;s>=0;s--){const e=i[s];if(n>e.offset+e.length){r.setPosition(e.offset+e.length);return 5===r.scan()&&n>=r.getTokenOffset()+r.getTokenLength()?s+1:s}if(n>=e.offset)return s}return 0}isInComment(e,t,n){const r=Bo(e.getText(),!1);r.setPosition(t);let i=r.scan();for(;17!==i&&r.getTokenOffset()+r.getTokenLength()<n;)i=r.scan();return(12===i||13===i)&&r.getTokenOffset()<=n}fromMarkup(e){if(e&&this.doesSupportMarkdown())return{kind:nl.Markdown,value:e}}doesSupportMarkdown(){var e,t,n;if(!vu(this.supportsMarkdown)){const r=null==(n=null==(t=null==(e=this.clientCapabilities.textDocument)?void 0:e.completion)?void 0:t.completionItem)?void 0:n.documentationFormat;this.supportsMarkdown=Array.isArray(r)&&-1!==r.indexOf(nl.Markdown)}return this.supportsMarkdown}doesSupportsCommitCharacters(){var e,t,n;return vu(this.supportsCommitCharacters)||(this.labelDetailsSupport=null==(n=null==(t=null==(e=this.clientCapabilities.textDocument)?void 0:e.completion)?void 0:t.completionItem)?void 0:n.commitCharactersSupport),this.supportsCommitCharacters}doesSupportsLabelDetails(){var e,t,n;return vu(this.labelDetailsSupport)||(this.labelDetailsSupport=null==(n=null==(t=null==(e=this.clientCapabilities.textDocument)?void 0:e.completion)?void 0:t.completionItem)?void 0:n.labelDetailsSupport),this.labelDetailsSupport}}class gc{constructor(e,t=[],n){this.schemaService=e,this.contributions=t,this.promise=n||Promise}doHover(e,t,n){const r=e.offsetAt(t);let i=n.getNodeFromOffset(r);if(!i||("object"===i.type||"array"===i.type)&&r>i.offset+1&&r<i.offset+i.length-1)return this.promise.resolve(null);const s=i;if("string"===i.type){const e=i.parent;if(e&&"property"===e.type&&e.keyNode===i&&(i=e.valueNode,!i))return this.promise.resolve(null)}const o=aa.create(e.positionAt(s.offset),e.positionAt(s.offset+s.length)),a=e=>({contents:e,range:o}),l=oc(i);for(let u=this.contributions.length-1;u>=0;u--){const t=this.contributions[u].getInfoContribution(e.uri,l);if(t)return t.then(e=>a(e))}return this.schemaService.getSchemaForResource(e.uri,n).then(e=>{if(e&&i){let t,r,s,o;n.getMatchingSchemas(e.schema,i.offset).every(e=>{if(e.node===i&&!e.inverted&&e.schema&&(t=t||e.schema.title,r=r||e.schema.markdownDescription||fc(e.schema.description),e.schema.enum)){const t=e.schema.enum.indexOf(sc(i));e.schema.markdownEnumDescriptions?s=e.schema.markdownEnumDescriptions[t]:e.schema.enumDescriptions&&(s=fc(e.schema.enumDescriptions[t])),s&&(o=e.schema.enum[t],"string"!=typeof o&&(o=JSON.stringify(o)))}return!0});let l="";return t&&(l=fc(t)),r&&(l.length>0&&(l+="\n\n"),l+=r),s&&(l.length>0&&(l+="\n\n"),l+=`\`${function(e){if(-1!==e.indexOf("`"))return"`` "+e+" ``";return e}(o)}\`: ${s}`),a([l])}return null})}}function fc(e){if(e){return e.replace(/([^\n\r])(\r?\n)([^\n\r])/gm,"$1\n\n$3").replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}}class pc{constructor(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}configure(e){e&&(this.validationEnabled=!1!==e.validate,this.commentSeverity=e.allowComments?void 0:Sa.Error)}doValidation(e,t,n,r){if(!this.validationEnabled)return this.promise.resolve([]);const i=[],s={},o=e=>{const t=e.range.start.line+" "+e.range.start.character+" "+e.message;s[t]||(s[t]=!0,i.push(e))},a=r=>{let s=(null==n?void 0:n.trailingCommas)?wc(n.trailingCommas):Sa.Error,a=(null==n?void 0:n.comments)?wc(n.comments):this.commentSeverity,l=(null==n?void 0:n.schemaValidation)?wc(n.schemaValidation):Sa.Warning,u=(null==n?void 0:n.schemaRequest)?wc(n.schemaRequest):Sa.Warning;if(r){const i=(n,r)=>{if(t.root&&u){const i=t.root,s="object"===i.type?i.properties[0]:void 0;if(s&&"$schema"===s.keyNode.value){const t=s.valueNode||s,i=aa.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length));o(ka.create(i,n,u,r))}else{const t=aa.create(e.positionAt(i.offset),e.positionAt(i.offset+1));o(ka.create(t,n,u,r))}}};if(r.errors.length)i(r.errors[0],Ru.SchemaResolveError);else if(l){for(const e of r.warnings)i(e,Ru.SchemaUnsupportedFeature);const s=t.validate(e,r.schema,l,null==n?void 0:n.schemaDraft);s&&s.forEach(o)}yc(r.schema)&&(a=void 0),vc(r.schema)&&(s=void 0)}for(const e of t.syntaxErrors){if(e.code===Ru.TrailingComma){if("number"!=typeof s)continue;e.severity=s}o(e)}if("number"==typeof a){const e=Ku("Comments are not permitted in JSON.");t.comments.forEach(t=>{o(ka.create(t,e,a,Ru.CommentNotPermitted))})}return i};if(r){const e=r.id||"schemaservice://untitled/"+bc++;return this.jsonSchemaService.registerExternalSchema({uri:e,schema:r}).getResolvedSchema().then(e=>a(e))}return this.jsonSchemaService.getSchemaForResource(e.uri,t).then(e=>a(e))}getLanguageStatus(e,t){return{schemas:this.jsonSchemaService.getSchemaURIsForResource(e.uri,t)}}}let bc=0;function yc(e){if(e&&"object"==typeof e){if(wu(e.allowComments))return e.allowComments;if(e.allOf)for(const t of e.allOf){const e=yc(t);if(wu(e))return e}}}function vc(e){if(e&&"object"==typeof e){if(wu(e.allowTrailingCommas))return e.allowTrailingCommas;const t=e;if(wu(t.allowsTrailingCommas))return t.allowsTrailingCommas;if(e.allOf)for(const n of e.allOf){const e=vc(n);if(wu(e))return e}}}function wc(e){switch(e){case"error":return Sa.Error;case"warning":return Sa.Warning;case"ignore":return}}function Cc(e){return e<48?0:e<=57?e-48:(e<97&&(e+=32),e>=97&&e<=102?e-97+10:0)}function _c(e){if("#"===e[0])switch(e.length){case 4:return{red:17*Cc(e.charCodeAt(1))/255,green:17*Cc(e.charCodeAt(2))/255,blue:17*Cc(e.charCodeAt(3))/255,alpha:1};case 5:return{red:17*Cc(e.charCodeAt(1))/255,green:17*Cc(e.charCodeAt(2))/255,blue:17*Cc(e.charCodeAt(3))/255,alpha:17*Cc(e.charCodeAt(4))/255};case 7:return{red:(16*Cc(e.charCodeAt(1))+Cc(e.charCodeAt(2)))/255,green:(16*Cc(e.charCodeAt(3))+Cc(e.charCodeAt(4)))/255,blue:(16*Cc(e.charCodeAt(5))+Cc(e.charCodeAt(6)))/255,alpha:1};case 9:return{red:(16*Cc(e.charCodeAt(1))+Cc(e.charCodeAt(2)))/255,green:(16*Cc(e.charCodeAt(3))+Cc(e.charCodeAt(4)))/255,blue:(16*Cc(e.charCodeAt(5))+Cc(e.charCodeAt(6)))/255,alpha:(16*Cc(e.charCodeAt(7))+Cc(e.charCodeAt(8)))/255}}}class Lc{constructor(e){this.schemaService=e}findDocumentSymbols(e,t,n={resultLimit:Number.MAX_VALUE}){const r=t.root;if(!r)return[];let i=n.resultLimit||Number.MAX_VALUE;const s=e.uri;if(("vscode://defaultsettings/keybindings.json"===s||Lu(s.toLowerCase(),"/user/keybindings.json"))&&"array"===r.type){const t=[];for(const o of r.items)if("object"===o.type)for(const r of o.properties)if("key"===r.keyNode.value&&r.valueNode){const a=ua.create(e.uri,Sc(e,o));if(t.push({name:Nc(r.valueNode),kind:Ll.Function,location:a}),i--,i<=0)return n&&n.onResultLimitExceeded&&n.onResultLimitExceeded(s),t}return t}const o=[{node:r,containerName:""}];let a=0,l=!1;const u=[],c=(t,n)=>{"array"===t.type?t.items.forEach(e=>{e&&o.push({node:e,containerName:n})}):"object"===t.type&&t.properties.forEach(t=>{const r=t.valueNode;if(r)if(i>0){i--;const s=ua.create(e.uri,Sc(e,t)),a=n?n+"."+t.keyNode.value:t.keyNode.value;u.push({name:this.getKeyLabel(t),kind:this.getSymbolKind(r.type),location:s,containerName:n}),o.push({node:r,containerName:a})}else l=!0})};for(;a<o.length;){const e=o[a++];c(e.node,e.containerName)}return l&&n&&n.onResultLimitExceeded&&n.onResultLimitExceeded(s),u}findDocumentSymbols2(e,t,n={resultLimit:Number.MAX_VALUE}){const r=t.root;if(!r)return[];let i=n.resultLimit||Number.MAX_VALUE;const s=e.uri;if(("vscode://defaultsettings/keybindings.json"===s||Lu(s.toLowerCase(),"/user/keybindings.json"))&&"array"===r.type){const t=[];for(const o of r.items)if("object"===o.type)for(const r of o.properties)if("key"===r.keyNode.value&&r.valueNode){const a=Sc(e,o),l=Sc(e,r.keyNode);if(t.push({name:Nc(r.valueNode),kind:Ll.Function,range:a,selectionRange:l}),i--,i<=0)return n&&n.onResultLimitExceeded&&n.onResultLimitExceeded(s),t}return t}const o=[],a=[{node:r,result:o}];let l=0,u=!1;const c=(t,n)=>{"array"===t.type?t.items.forEach((t,r)=>{if(t)if(i>0){i--;const s=Sc(e,t),o=s,l={name:String(r),kind:this.getSymbolKind(t.type),range:s,selectionRange:o,children:[]};n.push(l),a.push({result:l.children,node:t})}else u=!0}):"object"===t.type&&t.properties.forEach(t=>{const r=t.valueNode;if(r)if(i>0){i--;const s=Sc(e,t),o=Sc(e,t.keyNode),l=[],u={name:this.getKeyLabel(t),kind:this.getSymbolKind(r.type),range:s,selectionRange:o,children:l,detail:this.getDetail(r)};n.push(u),a.push({result:l,node:r})}else u=!0})};for(;l<a.length;){const e=a[l++];c(e.node,e.result)}return u&&n&&n.onResultLimitExceeded&&n.onResultLimitExceeded(s),o}getSymbolKind(e){switch(e){case"object":return Ll.Module;case"string":return Ll.String;case"number":return Ll.Number;case"array":return Ll.Array;case"boolean":return Ll.Boolean;default:return Ll.Variable}}getKeyLabel(e){let t=e.keyNode.value;return t&&(t=t.replace(/[\n]/g,"↵")),t&&t.trim()?t:`"${t}"`}getDetail(e){if(e)return"boolean"===e.type||"number"===e.type||"null"===e.type||"string"===e.type?String(e.value):"array"===e.type?e.children.length?void 0:"[]":"object"===e.type?e.children.length?void 0:"{}":void 0}findDocumentColors(e,t,n){return this.schemaService.getSchemaForResource(e.uri,t).then(r=>{const i=[];if(r){let s=n&&"number"==typeof n.resultLimit?n.resultLimit:Number.MAX_VALUE;const o=t.getMatchingSchemas(r.schema),a={};for(const t of o)if(!t.inverted&&t.schema&&("color"===t.schema.format||"color-hex"===t.schema.format)&&t.node&&"string"===t.node.type){const r=String(t.node.offset);if(!a[r]){const o=_c(sc(t.node));if(o){const n=Sc(e,t.node);i.push({color:o,range:n})}if(a[r]=!0,s--,s<=0)return n&&n.onResultLimitExceeded&&n.onResultLimitExceeded(e.uri),i}}}return i})}getColorPresentations(e,t,n,r){const i=[],s=Math.round(255*n.red),o=Math.round(255*n.green),a=Math.round(255*n.blue);function l(e){const t=e.toString(16);return 2!==t.length?"0"+t:t}let u;return u=1===n.alpha?`#${l(s)}${l(o)}${l(a)}`:`#${l(s)}${l(o)}${l(a)}${l(Math.round(255*n.alpha))}`,i.push({label:u,textEdit:Ma.replace(r,JSON.stringify(u))}),i}}function Sc(e,t){return aa.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length))}function Nc(e){return sc(e)||Ku("<empty>")}const xc={schemaAssociations:[],schemas:{"http://json-schema.org/draft-04/schema#":{$schema:"http://json-schema.org/draft-04/schema#",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{type:"string",enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minLength:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minItems:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},uniqueItems:{type:"boolean",default:!1},maxProperties:{allOf:[{$ref:"#/definitions/positiveInteger"}]},minProperties:{allOf:[{$ref:"#/definitions/positiveIntegerDefault0"}]},required:{allOf:[{$ref:"#/definitions/stringArray"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{anyOf:[{type:"string",enum:["date-time","uri","email","hostname","ipv4","ipv6","regex"]},{type:"string"}]},allOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},anyOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},oneOf:{allOf:[{$ref:"#/definitions/schemaArray"}]},not:{allOf:[{$ref:"#"}]}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}},"http://json-schema.org/draft-07/schema#":{definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}},Ec={id:Ku("A unique identifier for the schema."),$schema:Ku("The schema to verify this document against."),title:Ku("A descriptive title of the element."),description:Ku("A long description of the element. Used in hover menus and suggestions."),default:Ku("A default value. Used by suggestions."),multipleOf:Ku("A number that should cleanly divide the current value (i.e. have no remainder)."),maximum:Ku("The maximum numerical value, inclusive by default."),exclusiveMaximum:Ku("Makes the maximum property exclusive."),minimum:Ku("The minimum numerical value, inclusive by default."),exclusiveMinimum:Ku("Makes the minimum property exclusive."),maxLength:Ku("The maximum length of a string."),minLength:Ku("The minimum length of a string."),pattern:Ku("A regular expression to match the string against. It is not implicitly anchored."),additionalItems:Ku("For arrays, only when items is set as an array. If it is a schema, then this schema validates items after the ones specified by the items array. If it is false, then additional items will cause validation to fail."),items:Ku("For arrays. Can either be a schema to validate every element against or an array of schemas to validate each item against in order (the first schema will validate the first element, the second schema will validate the second element, and so on."),maxItems:Ku("The maximum number of items that can be inside an array. Inclusive."),minItems:Ku("The minimum number of items that can be inside an array. Inclusive."),uniqueItems:Ku("If all of the items in the array must be unique. Defaults to false."),maxProperties:Ku("The maximum number of properties an object can have. Inclusive."),minProperties:Ku("The minimum number of properties an object can have. Inclusive."),required:Ku("An array of strings that lists the names of all properties required on this object."),additionalProperties:Ku("Either a schema or a boolean. If a schema, then used to validate all properties not matched by 'properties' or 'patternProperties'. If false, then any properties not matched by either will cause this schema to fail."),definitions:Ku("Not used for validation. Place subschemas here that you wish to reference inline with $ref."),properties:Ku("A map of property names to schemas for each property."),patternProperties:Ku("A map of regular expressions on property names to schemas for matching properties."),dependencies:Ku("A map of property names to either an array of property names or a schema. An array of property names means the property named in the key depends on the properties in the array being present in the object in order to be valid. If the value is a schema, then the schema is only applied to the object if the property in the key exists on the object."),enum:Ku("The set of literal values that are valid."),type:Ku("Either a string of one of the basic schema types (number, integer, null, array, object, boolean, string) or an array of strings specifying a subset of those types."),format:Ku("Describes the format expected for the value."),allOf:Ku("An array of schemas, all of which must match."),anyOf:Ku("An array of schemas, where at least one must match."),oneOf:Ku("An array of schemas, exactly one of which must match."),not:Ku("A schema which must not match."),$id:Ku("A unique identifier for the schema."),$ref:Ku("Reference a definition hosted on any location."),$comment:Ku("Comments from schema authors to readers or maintainers of the schema."),readOnly:Ku("Indicates that the value of the instance is managed exclusively by the owning authority."),examples:Ku("Sample JSON values associated with a particular schema, for the purpose of illustrating usage."),contains:Ku('An array instance is valid against "contains" if at least one of its elements is valid against the given schema.'),propertyNames:Ku("If the instance is an object, this keyword validates if every property name in the instance validates against the provided schema."),const:Ku("An instance validates successfully against this keyword if its value is equal to the value of the keyword."),contentMediaType:Ku("Describes the media type of a string property."),contentEncoding:Ku("Describes the content encoding of a string property."),if:Ku('The validation outcome of the "if" subschema controls which of the "then" or "else" keywords are evaluated.'),then:Ku('The "if" subschema is used for validation when the "if" subschema succeeds.'),else:Ku('The "else" subschema is used for validation when the "if" subschema fails.')};for(const uh in xc.schemas){const e=xc.schemas[uh];for(const t in e.properties){let n=e.properties[t];"boolean"==typeof n&&(n=e.properties[t]={});const r=Ec[t];r&&(n.description=r)}}var Ac;(()=>{var e={470:e=>{function t(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}function n(e,t){for(var n,r="",i=0,s=-1,o=0,a=0;a<=e.length;++a){if(a<e.length)n=e.charCodeAt(a);else{if(47===n)break;n=47}if(47===n){if(s===a-1||1===o);else if(s!==a-1&&2===o){if(r.length<2||2!==i||46!==r.charCodeAt(r.length-1)||46!==r.charCodeAt(r.length-2))if(r.length>2){var l=r.lastIndexOf("/");if(l!==r.length-1){-1===l?(r="",i=0):i=(r=r.slice(0,l)).length-1-r.lastIndexOf("/"),s=a,o=0;continue}}else if(2===r.length||1===r.length){r="",i=0,s=a,o=0;continue}t&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+e.slice(s+1,a):r=e.slice(s+1,a),i=a-s-1;s=a,o=0}else 46===n&&-1!==o?++o:o=-1}return r}var r={resolve:function(){for(var e,r="",i=!1,s=arguments.length-1;s>=-1&&!i;s--){var o;s>=0?o=arguments[s]:(void 0===e&&(e=process.cwd()),o=e),t(o),0!==o.length&&(r=o+"/"+r,i=47===o.charCodeAt(0))}return r=n(r,!i),i?r.length>0?"/"+r:"/":r.length>0?r:"."},normalize:function(e){if(t(e),0===e.length)return".";var r=47===e.charCodeAt(0),i=47===e.charCodeAt(e.length-1);return 0!==(e=n(e,!r)).length||r||(e="."),e.length>0&&i&&(e+="/"),r?"/"+e:e},isAbsolute:function(e){return t(e),e.length>0&&47===e.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var e,n=0;n<arguments.length;++n){var i=arguments[n];t(i),i.length>0&&(void 0===e?e=i:e+="/"+i)}return void 0===e?".":r.normalize(e)},relative:function(e,n){if(t(e),t(n),e===n)return"";if((e=r.resolve(e))===(n=r.resolve(n)))return"";for(var i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var s=e.length,o=s-i,a=1;a<n.length&&47===n.charCodeAt(a);++a);for(var l=n.length-a,u=o<l?o:l,c=-1,h=0;h<=u;++h){if(h===u){if(l>u){if(47===n.charCodeAt(a+h))return n.slice(a+h+1);if(0===h)return n.slice(a+h)}else o>u&&(47===e.charCodeAt(i+h)?c=h:0===h&&(c=0));break}var d=e.charCodeAt(i+h);if(d!==n.charCodeAt(a+h))break;47===d&&(c=h)}var m="";for(h=i+c+1;h<=s;++h)h!==s&&47!==e.charCodeAt(h)||(0===m.length?m+="..":m+="/..");return m.length>0?m+n.slice(a+c):(a+=c,47===n.charCodeAt(a)&&++a,n.slice(a))},_makeLong:function(e){return e},dirname:function(e){if(t(e),0===e.length)return".";for(var n=e.charCodeAt(0),r=47===n,i=-1,s=!0,o=e.length-1;o>=1;--o)if(47===(n=e.charCodeAt(o))){if(!s){i=o;break}}else s=!1;return-1===i?r?"/":".":r&&1===i?"//":e.slice(0,i)},basename:function(e,n){if(void 0!==n&&"string"!=typeof n)throw new TypeError('"ext" argument must be a string');t(e);var r,i=0,s=-1,o=!0;if(void 0!==n&&n.length>0&&n.length<=e.length){if(n.length===e.length&&n===e)return"";var a=n.length-1,l=-1;for(r=e.length-1;r>=0;--r){var u=e.charCodeAt(r);if(47===u){if(!o){i=r+1;break}}else-1===l&&(o=!1,l=r+1),a>=0&&(u===n.charCodeAt(a)?-1==--a&&(s=r):(a=-1,s=l))}return i===s?s=l:-1===s&&(s=e.length),e.slice(i,s)}for(r=e.length-1;r>=0;--r)if(47===e.charCodeAt(r)){if(!o){i=r+1;break}}else-1===s&&(o=!1,s=r+1);return-1===s?"":e.slice(i,s)},extname:function(e){t(e);for(var n=-1,r=0,i=-1,s=!0,o=0,a=e.length-1;a>=0;--a){var l=e.charCodeAt(a);if(47!==l)-1===i&&(s=!1,i=a+1),46===l?-1===n?n=a:1!==o&&(o=1):-1!==n&&(o=-1);else if(!s){r=a+1;break}}return-1===n||-1===i||0===o||1===o&&n===i-1&&n===r+1?"":e.slice(n,i)},format:function(e){if(null===e||"object"!=typeof e)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof e);return n=(t=e).dir||t.root,r=t.base||(t.name||"")+(t.ext||""),n?n===t.root?n+r:n+"/"+r:r;var t,n,r},parse:function(e){t(e);var n={root:"",dir:"",base:"",ext:"",name:""};if(0===e.length)return n;var r,i=e.charCodeAt(0),s=47===i;s?(n.root="/",r=1):r=0;for(var o=-1,a=0,l=-1,u=!0,c=e.length-1,h=0;c>=r;--c)if(47!==(i=e.charCodeAt(c)))-1===l&&(u=!1,l=c+1),46===i?-1===o?o=c:1!==h&&(h=1):-1!==o&&(h=-1);else if(!u){a=c+1;break}return-1===o||-1===l||0===h||1===h&&o===l-1&&o===a+1?-1!==l&&(n.base=n.name=0===a&&s?e.slice(1,l):e.slice(a,l)):(0===a&&s?(n.name=e.slice(1,o),n.base=e.slice(1,l)):(n.name=e.slice(a,o),n.base=e.slice(a,l)),n.ext=e.slice(o,l)),a>0?n.dir=e.slice(0,a-1):s&&(n.dir="/"),n},sep:"/",delimiter:":",win32:null,posix:null};r.posix=r,e.exports=r}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,n),s.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};(()=>{let e;if(n.r(r),n.d(r,{URI:()=>c,Utils:()=>S}),"object"==typeof process)e="win32"===process.platform;else if("object"==typeof navigator){let t=navigator.userAgent;e=t.indexOf("Windows")>=0}const t=/^\w[\w\d+.-]*$/,i=/^\//,s=/^\/\//;function o(e,n){if(!e.scheme&&n)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${e.authority}", path: "${e.path}", query: "${e.query}", fragment: "${e.fragment}"}`);if(e.scheme&&!t.test(e.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(e.path)if(e.authority){if(!i.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(s.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 ("//")')}const a="",l="/",u=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class c{constructor(e,t,n,r,i,s=!1){__publicField(this,"scheme"),__publicField(this,"authority"),__publicField(this,"path"),__publicField(this,"query"),__publicField(this,"fragment"),"object"==typeof e?(this.scheme=e.scheme||a,this.authority=e.authority||a,this.path=e.path||a,this.query=e.query||a,this.fragment=e.fragment||a):(this.scheme=function(e,t){return e||t?e:"file"}(e,s),this.authority=t||a,this.path=function(e,t){switch(e){case"https":case"http":case"file":t?t[0]!==l&&(t=l+t):t=l}return t}(this.scheme,n||a),this.query=r||a,this.fragment=i||a,o(this,s))}static isUri(e){return e instanceof c||!!e&&"string"==typeof e.authority&&"string"==typeof e.fragment&&"string"==typeof e.path&&"string"==typeof e.query&&"string"==typeof e.scheme&&"string"==typeof e.fsPath&&"function"==typeof e.with&&"function"==typeof e.toString}get fsPath(){return p(this)}with(e){if(!e)return this;let{scheme:t,authority:n,path:r,query:i,fragment:s}=e;return void 0===t?t=this.scheme:null===t&&(t=a),void 0===n?n=this.authority:null===n&&(n=a),void 0===r?r=this.path:null===r&&(r=a),void 0===i?i=this.query:null===i&&(i=a),void 0===s?s=this.fragment:null===s&&(s=a),t===this.scheme&&n===this.authority&&r===this.path&&i===this.query&&s===this.fragment?this:new d(t,n,r,i,s)}static parse(e,t=!1){const n=u.exec(e);return n?new d(n[2]||a,w(n[4]||a),w(n[5]||a),w(n[7]||a),w(n[9]||a),t):new d(a,a,a,a,a)}static file(t){let n=a;if(e&&(t=t.replace(/\\/g,l)),t[0]===l&&t[1]===l){const e=t.indexOf(l,2);-1===e?(n=t.substring(2),t=l):(n=t.substring(2,e),t=t.substring(e)||l)}return new d("file",n,t,a,a)}static from(e){const t=new d(e.scheme,e.authority,e.path,e.query,e.fragment);return o(t,!0),t}toString(e=!1){return b(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof c)return e;{const t=new d(e);return t._formatted=e.external,t._fsPath=e._sep===h?e.fsPath:null,t}}return e}}const h=e?1:void 0;class d extends c{constructor(){super(...arguments),__publicField(this,"_formatted",null),__publicField(this,"_fsPath",null)}get fsPath(){return this._fsPath||(this._fsPath=p(this)),this._fsPath}toString(e=!1){return e?b(this,!0):(this._formatted||(this._formatted=b(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=h),this._formatted&&(e.external=this._formatted),this.path&&(e.path=this.path),this.scheme&&(e.scheme=this.scheme),this.authority&&(e.authority=this.authority),this.query&&(e.query=this.query),this.fragment&&(e.fragment=this.fragment),e}}const m={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 g(e,t,n){let r,i=-1;for(let s=0;s<e.length;s++){const o=e.charCodeAt(s);if(o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||45===o||46===o||95===o||126===o||t&&47===o||n&&91===o||n&&93===o||n&&58===o)-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),void 0!==r&&(r+=e.charAt(s));else{void 0===r&&(r=e.substr(0,s));const t=m[o];void 0!==t?(-1!==i&&(r+=encodeURIComponent(e.substring(i,s)),i=-1),r+=t):-1===i&&(i=s)}}return-1!==i&&(r+=encodeURIComponent(e.substring(i))),void 0!==r?r:e}function f(e){let t;for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);35===r||63===r?(void 0===t&&(t=e.substr(0,n)),t+=m[r]):void 0!==t&&(t+=e[n])}return void 0!==t?t:e}function p(t,n){let r;return r=t.authority&&t.path.length>1&&"file"===t.scheme?`//${t.authority}${t.path}`:47===t.path.charCodeAt(0)&&(t.path.charCodeAt(1)>=65&&t.path.charCodeAt(1)<=90||t.path.charCodeAt(1)>=97&&t.path.charCodeAt(1)<=122)&&58===t.path.charCodeAt(2)?t.path[1].toLowerCase()+t.path.substr(2):t.path,e&&(r=r.replace(/\//g,"\\")),r}function b(e,t){const n=t?f:g;let r="",{scheme:i,authority:s,path:o,query:a,fragment:u}=e;if(i&&(r+=i,r+=":"),(s||"file"===i)&&(r+=l,r+=l),s){let e=s.indexOf("@");if(-1!==e){const t=s.substr(0,e);s=s.substr(e+1),e=t.lastIndexOf(":"),-1===e?r+=n(t,!1,!1):(r+=n(t.substr(0,e),!1,!1),r+=":",r+=n(t.substr(e+1),!1,!0)),r+="@"}s=s.toLowerCase(),e=s.lastIndexOf(":"),-1===e?r+=n(s,!1,!0):(r+=n(s.substr(0,e),!1,!0),r+=s.substr(e))}if(o){if(o.length>=3&&47===o.charCodeAt(0)&&58===o.charCodeAt(2)){const e=o.charCodeAt(1);e>=65&&e<=90&&(o=`/${String.fromCharCode(e+32)}:${o.substr(3)}`)}else if(o.length>=2&&58===o.charCodeAt(1)){const e=o.charCodeAt(0);e>=65&&e<=90&&(o=`${String.fromCharCode(e+32)}:${o.substr(2)}`)}r+=n(o,!0,!1)}return a&&(r+="?",r+=n(a,!1,!1)),u&&(r+="#",r+=t?u:g(u,!1,!1)),r}function y(e){try{return decodeURIComponent(e)}catch{return e.length>3?e.substr(0,3)+y(e.substr(3)):e}}const v=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function w(e){return e.match(v)?e.replace(v,e=>y(e)):e}var C=n(470);const _=C.posix||C,L="/";var S,N;(N=S||(S={})).joinPath=function(e,...t){return e.with({path:_.join(e.path,...t)})},N.resolvePath=function(e,...t){let n=e.path,r=!1;n[0]!==L&&(n=L+n,r=!0);let i=_.resolve(n,...t);return r&&i[0]===L&&!e.authority&&(i=i.substring(1)),e.with({path:i})},N.dirname=function(e){if(0===e.path.length||e.path===L)return e;let t=_.dirname(e.path);return 1===t.length&&46===t.charCodeAt(0)&&(t=""),e.with({path:t})},N.basename=function(e){return _.basename(e.path)},N.extname=function(e){return _.extname(e.path)}})(),Ac=r})();const{URI:kc,Utils:Rc}=Ac;function Tc(e,t){if("string"!=typeof e)throw new TypeError("Expected a string");const n=String(e);let r="";const i=!!t,s=!!t;let o=!1;const a=t&&"string"==typeof t.flags?t.flags:"";let l;for(let u=0,c=n.length;u<c;u++)switch(l=n[u],l){case"/":case"$":case"^":case"+":case".":case"(":case")":case"=":case"!":case"|":r+="\\"+l;break;case"?":if(i){r+=".";break}case"[":case"]":if(i){r+=l;break}case"{":if(i){o=!0,r+="(";break}case"}":if(i){o=!1,r+=")";break}case",":if(o){r+="|";break}r+="\\"+l;break;case"*":const e=n[u-1];let t=1;for(;"*"===n[u+1];)t++,u++;const a=n[u+1];if(s){t>1&&("/"===e||void 0===e||"{"===e||","===e)&&("/"===a||void 0===a||","===a||"}"===a)?("/"===a?u++:"/"===e&&r.endsWith("\\/")&&(r=r.substr(0,r.length-2)),r+="((?:[^/]*(?:/|$))*)"):r+="([^/]*)"}else r+=".*";break;default:r+=l}return a&&~a.indexOf("g")||(r="^"+r+"$"),new RegExp(r,a)}class Mc{constructor(e,t,n){this.folderUri=t,this.uris=n,this.globWrappers=[];try{for(let t of e){const e="!"!==t[0];e||(t=t.substring(1)),t.length>0&&("/"===t[0]&&(t=t.substring(1)),this.globWrappers.push({regexp:Tc("**/"+t,{extended:!0,globstar:!0}),include:e}))}t&&((t=qc(t)).endsWith("/")||(t+="/"),this.folderUri=t)}catch(lh){this.globWrappers.length=0,this.uris=[]}}matchesPattern(e){if(this.folderUri&&!e.startsWith(this.folderUri))return!1;let t=!1;for(const{regexp:n,include:r}of this.globWrappers)n.test(e)&&(t=r);return t}getURIs(){return this.uris}}class Oc{constructor(e,t,n){this.service=e,this.uri=t,this.dependencies=new Set,this.anchors=void 0,n&&(this.unresolvedSchema=this.service.promise.resolve(new Ic(n)))}getUnresolvedSchema(){return this.unresolvedSchema||(this.unresolvedSchema=this.service.loadSchema(this.uri)),this.unresolvedSchema}getResolvedSchema(){return this.resolvedSchema||(this.resolvedSchema=this.getUnresolvedSchema().then(e=>this.service.resolveSchemaContent(e,this))),this.resolvedSchema}clearSchema(){const e=!!this.unresolvedSchema;return this.resolvedSchema=void 0,this.unresolvedSchema=void 0,this.dependencies.clear(),this.anchors=void 0,e}}class Ic{constructor(e,t=[]){this.schema=e,this.errors=t}}class Pc{constructor(e,t=[],n=[],r){this.schema=e,this.errors=t,this.warnings=n,this.schemaDraft=r}getSection(e){const t=this.getSectionRecursive(e,this.schema);if(t)return Qu(t)}getSectionRecursive(e,t){if(!t||"boolean"==typeof t||0===e.length)return t;const n=e.shift();if(t.properties&&(t.properties[n],1))return this.getSectionRecursive(e,t.properties[n]);if(t.patternProperties)for(const r of Object.keys(t.patternProperties)){const i=Su(r);if(null==i?void 0:i.test(n))return this.getSectionRecursive(e,t.patternProperties[r])}else{if("object"==typeof t.additionalProperties)return this.getSectionRecursive(e,t.additionalProperties);if(n.match("[0-9]+"))if(Array.isArray(t.items)){const r=parseInt(n,10);if(!isNaN(r)&&t.items[r])return this.getSectionRecursive(e,t.items[r])}else if(t.items)return this.getSectionRecursive(e,t.items)}}}class Fc{constructor(e,t,n){this.contextService=t,this.requestService=e,this.promiseConstructor=n||Promise,this.callOnDispose=[],this.contributionSchemas={},this.contributionAssociations=[],this.schemasById={},this.filePatternAssociations=[],this.registeredSchemasIds={}}getRegisteredSchemaIds(e){return Object.keys(this.registeredSchemasIds).filter(t=>{const n=kc.parse(t).scheme;return"schemaservice"!==n&&(!e||e(n))})}get promise(){return this.promiseConstructor}dispose(){for(;this.callOnDispose.length>0;)this.callOnDispose.pop()()}onResourceChange(e){this.cachedSchemaForResource=void 0;let t=!1;const n=[e=Dc(e)],r=Object.keys(this.schemasById).map(e=>this.schemasById[e]);for(;n.length;){const e=n.pop();for(let i=0;i<r.length;i++){const s=r[i];s&&(s.uri===e||s.dependencies.has(e))&&(s.uri!==e&&n.push(s.uri),s.clearSchema()&&(t=!0),r[i]=void 0)}}return t}setSchemaContributions(e){if(e.schemas){const t=e.schemas;for(const e in t){const n=Dc(e);this.contributionSchemas[n]=this.addSchemaHandle(n,t[e])}}if(Array.isArray(e.schemaAssociations)){const t=e.schemaAssociations;for(let e of t){const t=e.uris.map(Dc),n=this.addFilePatternAssociation(e.pattern,e.folderUri,t);this.contributionAssociations.push(n)}}}addSchemaHandle(e,t){const n=new Oc(this,e,t);return this.schemasById[e]=n,n}getOrAddSchemaHandle(e,t){return this.schemasById[e]||this.addSchemaHandle(e,t)}addFilePatternAssociation(e,t,n){const r=new Mc(e,t,n);return this.filePatternAssociations.push(r),r}registerExternalSchema(e){const t=Dc(e.uri);return this.registeredSchemasIds[t]=!0,this.cachedSchemaForResource=void 0,e.fileMatch&&e.fileMatch.length&&this.addFilePatternAssociation(e.fileMatch,e.folderUri,[t]),e.schema?this.addSchemaHandle(t,e.schema):this.getOrAddSchemaHandle(t)}clearExternalSchemas(){this.schemasById={},this.filePatternAssociations=[],this.registeredSchemasIds={},this.cachedSchemaForResource=void 0;for(const e in this.contributionSchemas)this.schemasById[e]=this.contributionSchemas[e],this.registeredSchemasIds[e]=!0;for(const e of this.contributionAssociations)this.filePatternAssociations.push(e)}getResolvedSchema(e){const t=Dc(e),n=this.schemasById[t];return n?n.getResolvedSchema():this.promise.resolve(void 0)}loadSchema(e){if(!this.requestService){const t=Ku("Unable to load schema from '{0}'. No schema request service available",Kc(e));return this.promise.resolve(new Ic({},[t]))}return e.startsWith("http://json-schema.org/")&&(e="https"+e.substring(4)),this.requestService(e).then(t=>{if(!t){const t=Ku("Unable to load schema from '{0}': No content.",Kc(e));return new Ic({},[t])}const n=[];65279===t.charCodeAt(0)&&(n.push(Ku("Problem reading content from '{0}': UTF-8 with BOM detected, only UTF 8 is allowed.",Kc(e))),t=t.trimStart());let r={};const i=[];return r=Ho(t,i),i.length&&n.push(Ku("Unable to parse content from '{0}': Parse error at offset {1}.",Kc(e),i[0].offset)),new Ic(r,n)},t=>{let n=t.toString();const r=t.toString().split("Error: ");return r.length>1&&(n=r[1]),Lu(n,".")&&(n=n.substr(0,n.length-1)),new Ic({},[Ku("Unable to load schema from '{0}': {1}.",Kc(e),n)])})}resolveSchemaContent(e,t){const n=e.errors.slice(0),r=e.schema;let i=r.$schema?Dc(r.$schema):void 0;if("http://json-schema.org/draft-03/schema"===i)return this.promise.resolve(new Pc({},[Ku("Draft-03 schemas are not supported.")],[],i));let s=new Set;const o=this.contextService,a=(e,t,r,i)=>{let s;var o,a,l;void 0===i||0===i.length?s=t:"/"===i.charAt(0)?s=((e,t)=>{t=decodeURIComponent(t);let n=e;return"/"===t[0]&&(t=t.substring(1)),t.split("/").some(e=>(e=e.replace(/~1/g,"/").replace(/~0/g,"~"),n=n[e],!n)),n})(t,i):(o=t,l=i,(a=r).anchors||(a.anchors=c(o)),s=a.anchors.get(l)),s?((e,t)=>{for(const n in t)t.hasOwnProperty(n)&&"id"!==n&&"$id"!==n&&(e[n]=t[n])})(e,s):n.push(Ku("$ref '{0}' in '{1}' can not be resolved.",i||"",r.uri))},l=(e,t,r,i)=>{o&&!/^[A-Za-z][A-Za-z0-9+\-.+]*:\/\/.*/.test(t)&&(t=o.resolveRelativePath(t,i.uri)),t=Dc(t);const s=this.getOrAddSchemaHandle(t);return s.getUnresolvedSchema().then(o=>{if(i.dependencies.add(t),o.errors.length){const e=r?t+"#"+r:t;n.push(Ku("Problems loading reference '{0}': {1}",e,o.errors[0]))}return a(e,o.schema,s,r),u(e,o.schema,s)})},u=(e,t,n)=>{const r=[];return this.traverseNodes(e,e=>{const i=new Set;for(;e.$ref;){const s=e.$ref,o=s.split("#",2);if(delete e.$ref,o[0].length>0)return void r.push(l(e,o[0],o[1],n));if(!i.has(s)){const r=o[1];a(e,t,n,r),i.add(s)}}e.$recursiveRef&&s.add("$recursiveRef"),e.$dynamicRef&&s.add("$dynamicRef")}),this.promise.all(r)},c=e=>{const t=new Map;return this.traverseNodes(e,e=>{const r=e.$id||e.id,i=Cu(r)&&"#"===r.charAt(0)?r.substring(1):e.$anchor;i&&(t.has(i)?n.push(Ku("Duplicate anchor declaration: '{0}'",i)):t.set(i,e)),e.$recursiveAnchor&&s.add("$recursiveAnchor"),e.$dynamicAnchor&&s.add("$dynamicAnchor")}),t};return u(r,r,t).then(e=>{let t=[];return s.size&&t.push(Ku("The schema uses meta-schema features ({0}) that are not yet supported by the validator.",Array.from(s.keys()).join(", "))),new Pc(r,n,t,i)})}traverseNodes(e,t){if(!e||"object"!=typeof e)return Promise.resolve(null);const n=new Set,r=(...e)=>{for(const t of e)_u(t)&&a.push(t)},i=(...e)=>{for(const t of e)if(_u(t))for(const e in t){const n=t[e];_u(n)&&a.push(n)}},s=(...e)=>{for(const t of e)if(Array.isArray(t))for(const e of t)_u(e)&&a.push(e)},o=e=>{if(Array.isArray(e))for(const t of e)_u(t)&&a.push(t);else _u(e)&&a.push(e)},a=[e];let l=a.pop();for(;l;)n.has(l)||(n.add(l),t(l),r(l.additionalItems,l.additionalProperties,l.not,l.contains,l.propertyNames,l.if,l.then,l.else,l.unevaluatedItems,l.unevaluatedProperties),i(l.definitions,l.$defs,l.properties,l.patternProperties,l.dependencies,l.dependentSchemas),s(l.anyOf,l.allOf,l.oneOf,l.prefixItems),o(l.items)),l=a.pop()}getSchemaFromProperty(e,t){var n,r;if("object"===(null==(n=t.root)?void 0:n.type))for(const i of t.root.properties)if("$schema"===i.keyNode.value&&"string"===(null==(r=i.valueNode)?void 0:r.type)){let t=i.valueNode.value;return this.contextService&&!/^\w[\w\d+.-]*:/.test(t)&&(t=this.contextService.resolveRelativePath(t,e)),t}}getAssociatedSchemas(e){const t=Object.create(null),n=[],r=qc(e);for(const i of this.filePatternAssociations)if(i.matchesPattern(r))for(const e of i.getURIs())t[e]||(n.push(e),t[e]=!0);return n}getSchemaURIsForResource(e,t){let n=t&&this.getSchemaFromProperty(e,t);return n?[n]:this.getAssociatedSchemas(e)}getSchemaForResource(e,t){if(t){let n=this.getSchemaFromProperty(e,t);if(n){const e=Dc(n);return this.getOrAddSchemaHandle(e).getResolvedSchema()}}if(this.cachedSchemaForResource&&this.cachedSchemaForResource.resource===e)return this.cachedSchemaForResource.resolvedSchema;const n=this.getAssociatedSchemas(e),r=n.length>0?this.createCombinedSchema(e,n).getResolvedSchema():this.promise.resolve(void 0);return this.cachedSchemaForResource={resource:e,resolvedSchema:r},r}createCombinedSchema(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);{const n="schemaservice://combinedSchema/"+encodeURIComponent(e),r={allOf:t.map(e=>({$ref:e}))};return this.addSchemaHandle(n,r)}}getMatchingSchemas(e,t,n){if(n){const e=n.id||"schemaservice://untitled/matchingSchemas/"+Vc++;return this.addSchemaHandle(e,n).getResolvedSchema().then(e=>t.getMatchingSchemas(e.schema).filter(e=>!e.inverted))}return this.getSchemaForResource(e.uri,t).then(e=>e?t.getMatchingSchemas(e.schema).filter(e=>!e.inverted):[])}}let Vc=0;function Dc(e){try{return kc.parse(e).toString(!0)}catch(lh){return e}}function qc(e){try{return kc.parse(e).with({fragment:null,query:null}).toString(!0)}catch(lh){return e}}function Kc(e){try{const t=kc.parse(e);if("file"===t.scheme)return t.fsPath}catch(lh){}return e}function $c(e,t){const n=[],r=[],i=[];let s=-1;const o=Bo(e.getText(),!1);let a=o.scan();function l(e){n.push(e),r.push(i.length)}for(;17!==a;){switch(a){case 1:case 3:{const t=e.positionAt(o.getTokenOffset()).line,n={startLine:t,endLine:t,kind:1===a?"object":"array"};i.push(n);break}case 2:case 4:{const t=2===a?"object":"array";if(i.length>0&&i[i.length-1].kind===t){const t=i.pop(),n=e.positionAt(o.getTokenOffset()).line;t&&n>t.startLine+1&&s!==t.startLine&&(t.endLine=n-1,l(t),s=t.startLine)}break}case 13:{const t=e.positionAt(o.getTokenOffset()).line,n=e.positionAt(o.getTokenOffset()+o.getTokenLength()).line;1===o.getTokenError()&&t+1<e.lineCount?o.setPosition(e.offsetAt(sa.create(t+1,0))):t<n&&(l({startLine:t,endLine:n,kind:ya.Comment}),s=t);break}case 12:{const t=e.getText().substr(o.getTokenOffset(),o.getTokenLength()).match(/^\/\/\s*#(region\b)|(endregion\b)/);if(t){const n=e.positionAt(o.getTokenOffset()).line;if(t[1]){const e={startLine:n,endLine:n,kind:ya.Region};i.push(e)}else{let e=i.length-1;for(;e>=0&&i[e].kind!==ya.Region;)e--;if(e>=0){const t=i[e];i.length=e,n>t.startLine&&s!==t.startLine&&(t.endLine=n,l(t),s=t.startLine)}}}break}}a=o.scan()}const u=t&&t.rangeLimit;if("number"!=typeof u||n.length<=u)return n;t&&t.onRangeLimitExceeded&&t.onRangeLimitExceeded(e.uri);const c=[];for(let g of r)g<30&&(c[g]=(c[g]||0)+1);let h=0,d=0;for(let g=0;g<c.length;g++){const e=c[g];if(e){if(e+h>u){d=g;break}h+=e}}const m=[];for(let g=0;g<n.length;g++){const e=r[g];"number"==typeof e&&(e<d||e===d&&h++<u)&&m.push(n[g])}return m}function Bc(e,t,n){function r(t,n){return aa.create(e.positionAt(t),e.positionAt(n))}const i=Bo(e.getText(),!0);function s(e,t){return i.setPosition(e),i.scan()===t?i.getTokenOffset()+i.getTokenLength():-1}return t.map(function(t){let i=e.offsetAt(t),o=n.getNodeFromOffset(i,!0);const a=[];for(;o;){switch(o.type){case"string":case"object":case"array":const e=o.offset+1,t=o.offset+o.length-1;e<t&&i>=e&&i<=t&&a.push(r(e,t)),a.push(r(o.offset,o.offset+o.length));break;case"number":case"boolean":case"null":case"property":a.push(r(o.offset,o.offset+o.length))}if("property"===o.type||o.parent&&"array"===o.parent.type){const e=s(o.offset+o.length,5);-1!==e&&a.push(r(o.offset,e))}o=o.parent}let l;for(let e=a.length-1;e>=0;e--)l=Ul.create(a[e],l);return l||(l=Ul.create(aa.create(t,t))),l})}function Uc(e,t,n){let r;if(n){const t=e.offsetAt(n.start);r={offset:t,length:e.offsetAt(n.end)-t}}const i={tabSize:t?t.tabSize:4,insertSpaces:!0===(null==t?void 0:t.insertSpaces),insertFinalNewline:!0===(null==t?void 0:t.insertFinalNewline),eol:"\n",keepLines:!0===(null==t?void 0:t.keepLines)};return function(e,t,n){return Do(e,t,n)}(e.getText(),r,i).map(t=>Ma.replace(aa.create(e.positionAt(t.offset),e.positionAt(t.offset+t.length)),t.content))}var jc,Wc;(Wc=jc||(jc={}))[Wc.Object=0]="Object",Wc[Wc.Array=1]="Array";class zc{constructor(e,t){this.propertyName=e??"",this.beginningLineNumber=t,this.childrenProperties=[],this.lastProperty=!1,this.noKeyName=!1}addChildProperty(e){if(e.parent=this,this.childrenProperties.length>0){let t=0;t=e.noKeyName?this.childrenProperties.length:function(e,t,n){const r=t.propertyName.toLowerCase(),i=e[0].propertyName.toLowerCase(),s=e[e.length-1].propertyName.toLowerCase();if(r<i)return 0;if(r>s)return e.length;let o=0,a=e.length-1;for(;o<=a;){let r=a+o>>1,i=n(t,e[r]);if(i>0)o=r+1;else{if(!(i<0))return r;a=r-1}}return-o-1}(this.childrenProperties,e,Hc),t<0&&(t=-1*t-1),this.childrenProperties.splice(t,0,e)}else this.childrenProperties.push(e);return e}}function Hc(e,t){const n=e.propertyName.toLowerCase(),r=t.propertyName.toLowerCase();return n<r?-1:n>r?1:0}function Gc(e,t){const n={...t,keepLines:!1},r=Au.applyEdits(e,Uc(e,n,void 0)),i=Au.create("test://test.json","json",0,r),s=function(e,t){if(0===t.childrenProperties.length)return e;const n=Au.create("test://test.json","json",0,e.getText()),r=[];Jc(r,t,t.beginningLineNumber);for(;r.length>0;){const t=r.shift(),i=t.propertyTreeArray;let s=t.beginningLineNumber;for(let o=0;o<i.length;o++){const t=i[o],a=aa.create(sa.create(t.beginningLineNumber,0),sa.create(t.endLineNumber+1,0)),l=e.getText(a),u=Au.create("test://test.json","json",0,l);if(!0===t.lastProperty&&o!==i.length-1){const e=t.lineWhereToAddComma-t.beginningLineNumber,n=t.indexWhereToAddComa,r={range:aa.create(sa.create(e,n),sa.create(e,n)),text:","};Au.update(u,[r],1)}else if(!1===t.lastProperty&&o===i.length-1){const e=t.commaIndex,n=t.commaLine-t.beginningLineNumber,r={range:aa.create(sa.create(n,e),sa.create(n,e+1)),text:""};Au.update(u,[r],1)}const c=t.endLineNumber-t.beginningLineNumber+1,h={range:aa.create(sa.create(s,0),sa.create(s+c,0)),text:u.getText()};Au.update(n,[h],1),Jc(r,t,s),s+=c}}return n}(i,function(e){const t=e.getText(),n=Bo(t,!1);let r,i,s,o=new zc,a=o,l=o,u=o,c=0,h=0,d=-1,m=-1,g=0,f=0,p=[],b=!1,y=!1;for(;17!==(r=n.scan());){if(!0===b&&14!==r&&15!==r&&12!==r&&13!==r&&void 0===l.endLineNumber){let e=n.getTokenStartLine();2===s||4===s?u.endLineNumber=e-1:l.endLineNumber=e-1,g=e,b=!1}if(!0===y&&14!==r&&15!==r&&12!==r&&13!==r&&(g=n.getTokenStartLine(),y=!1),n.getTokenStartLine()!==c){for(let t=c;t<n.getTokenStartLine();t++){h+=e.getText(aa.create(sa.create(t,0),sa.create(t+1,0))).length}c=n.getTokenStartLine()}switch(r){case 10:if(void 0===i||1===i||5===i&&p[p.length-1]===jc.Object){const e=new zc(n.getTokenValue(),g);u=l,l=a.addChildProperty(e)}break;case 3:if(void 0===o.beginningLineNumber&&(o.beginningLineNumber=n.getTokenStartLine()),p[p.length-1]===jc.Object)a=l;else if(p[p.length-1]===jc.Array){const e=new zc(n.getTokenValue(),g);e.noKeyName=!0,u=l,l=a.addChildProperty(e),a=l}p.push(jc.Array),l.type=jc.Array,g=n.getTokenStartLine(),g++;break;case 1:if(void 0===o.beginningLineNumber)o.beginningLineNumber=n.getTokenStartLine();else if(p[p.length-1]===jc.Array){const e=new zc(n.getTokenValue(),g);e.noKeyName=!0,u=l,l=a.addChildProperty(e)}l.type=jc.Object,p.push(jc.Object),a=l,g=n.getTokenStartLine(),g++;break;case 4:f=n.getTokenStartLine(),p.pop(),void 0!==l.endLineNumber||2!==i&&4!==i||(l.endLineNumber=f-1,l.lastProperty=!0,l.lineWhereToAddComma=d,l.indexWhereToAddComa=m,u=l,l=l?l.parent:void 0,a=l),o.endLineNumber=f,g=f+1;break;case 2:f=n.getTokenStartLine(),p.pop(),1!==i&&(void 0===l.endLineNumber&&(l.endLineNumber=f-1,l.lastProperty=!0,l.lineWhereToAddComma=d,l.indexWhereToAddComa=m),u=l,l=l?l.parent:void 0,a=l),o.endLineNumber=n.getTokenStartLine(),g=f+1;break;case 5:f=n.getTokenStartLine(),void 0!==l.endLineNumber||p[p.length-1]!==jc.Object&&(p[p.length-1]!==jc.Array||2!==i&&4!==i)||(l.endLineNumber=f,l.commaIndex=n.getTokenOffset()-h,l.commaLine=f),2!==i&&4!==i||(u=l,l=l?l.parent:void 0,a=l),g=f+1;break;case 13:5!==i||d!==n.getTokenStartLine()||(p[p.length-1]!==jc.Array||2!==s&&4!==s)&&p[p.length-1]!==jc.Object||(p[p.length-1]!==jc.Array||2!==s&&4!==s)&&p[p.length-1]!==jc.Object||(l.endLineNumber=void 0,b=!0),1!==i&&3!==i||d!==n.getTokenStartLine()||(y=!0)}14!==r&&13!==r&&12!==r&&15!==r&&(s=i,i=r,d=n.getTokenStartLine(),m=n.getTokenOffset()+n.getTokenLength()-h)}return o}(i)),o=Uc(s,n,void 0),a=Au.applyEdits(s,o);return[Ma.replace(aa.create(sa.create(0,0),e.positionAt(e.getText().length)),a)]}function Jc(e,t,n){if(0!==t.childrenProperties.length)if(t.type===jc.Object){let r=1/0;for(const e of t.childrenProperties)e.beginningLineNumber<r&&(r=e.beginningLineNumber);n+=r-t.beginningLineNumber,e.push(new Qc(n,t.childrenProperties))}else t.type===jc.Array&&Xc(e,t,n)}function Xc(e,t,n){for(const r of t.childrenProperties){if(r.type===jc.Object){let i=1/0;for(const e of r.childrenProperties)e.beginningLineNumber<i&&(i=e.beginningLineNumber);const s=i-r.beginningLineNumber;e.push(new Qc(n+r.beginningLineNumber-t.beginningLineNumber+s,r.childrenProperties))}r.type===jc.Array&&Xc(e,r,n+r.beginningLineNumber-t.beginningLineNumber)}}class Qc{constructor(e,t){this.beginningLineNumber=e,this.propertyTreeArray=t}}function Zc(e,t){const n=[];return t.visit(r=>{var i;if("property"===r.type&&"$ref"===r.keyNode.value&&"string"===(null==(i=r.valueNode)?void 0:i.type)){const i=r.valueNode.value,s=function(e,t){const n=function(e){if("#"===e)return[];if("#"!==e[0]||"/"!==e[1])return null;return e.substring(2).split(/\//).map(th)}(t);if(!n)return null;return eh(n,e.root)}(t,i);if(s){const t=e.positionAt(s.offset);n.push({target:`${e.uri}#${t.line+1},${t.character+1}`,range:Yc(e,r.valueNode)})}}return!0}),Promise.resolve(n)}function Yc(e,t){return aa.create(e.positionAt(t.offset+1),e.positionAt(t.offset+t.length-1))}function eh(e,t){if(!t)return null;if(0===e.length)return t;const n=e.shift();if(t&&"object"===t.type){const r=t.properties.find(e=>e.keyNode.value===n);return r?eh(e,r.valueNode):null}if(t&&"array"===t.type&&n.match(/^(0|[1-9][0-9]*)$/)){const r=Number.parseInt(n),i=t.items[r];return i?eh(e,i):null}return null}function th(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}function nh(e){const t=e.promiseConstructor||Promise,n=new Fc(e.schemaRequestService,e.workspaceContext,t);n.setSchemaContributions(xc);const r=new mc(n,e.contributions,t,e.clientCapabilities),i=new gc(n,e.contributions,t),s=new Lc(n),o=new pc(n,t);return{configure:e=>{var t;n.clearExternalSchemas(),null==(t=e.schemas)||t.forEach(n.registerExternalSchema.bind(n)),o.configure(e)},resetSchema:e=>n.onResourceChange(e),doValidation:o.doValidation.bind(o),getLanguageStatus:o.getLanguageStatus.bind(o),parseJSONDocument:e=>hc(e,{collectComments:!0}),newJSONDocument:(e,t)=>function(e,t=[]){return new lc(e,t,[])}(e,t),getMatchingSchemas:n.getMatchingSchemas.bind(n),doResolve:r.doResolve.bind(r),doComplete:r.doComplete.bind(r),findDocumentSymbols:s.findDocumentSymbols.bind(s),findDocumentSymbols2:s.findDocumentSymbols2.bind(s),findDocumentColors:s.findDocumentColors.bind(s),getColorPresentations:s.getColorPresentations.bind(s),doHover:i.doHover.bind(i),getFoldingRanges:$c,getSelectionRanges:Bc,findDefinition:()=>Promise.resolve([]),findLinks:Zc,format:(e,t,n)=>Uc(e,n,t),sort:(e,t)=>Gc(e,t)}}let rh;"undefined"!=typeof fetch&&(rh=function(e){return fetch(e).then(e=>e.text())});class ih{constructor(e,t){this._ctx=e,this._languageSettings=t.languageSettings,this._languageId=t.languageId,this._languageService=nh({workspaceContext:{resolveRelativePath:(e,t)=>function(e,t){if(function(e){return e.charCodeAt(0)===sh}(t)){const n=kc.parse(e),r=t.split("/");return n.with({path:ah(r)}).toString()}return function(e,...t){const n=kc.parse(e),r=n.path.split("/");for(let i of t)r.push(...i.split("/"));return n.with({path:ah(r)}).toString()}(e,t)}(t.substr(0,t.lastIndexOf("/")+1),e)},schemaRequestService:t.enableSchemaRequest?rh:void 0,clientCapabilities:Iu.LATEST}),this._languageService.configure(this._languageSettings)}async doValidation(e){let t=this._getTextDocument(e);if(t){let e=this._languageService.parseJSONDocument(t);return this._languageService.doValidation(t,e,this._languageSettings)}return Promise.resolve([])}async doComplete(e,t){let n=this._getTextDocument(e);if(!n)return null;let r=this._languageService.parseJSONDocument(n);return this._languageService.doComplete(n,t,r)}async doResolve(e){return this._languageService.doResolve(e)}async doHover(e,t){let n=this._getTextDocument(e);if(!n)return null;let r=this._languageService.parseJSONDocument(n);return this._languageService.doHover(n,t,r)}async format(e,t,n){let r=this._getTextDocument(e);if(!r)return[];let i=this._languageService.format(r,t,n);return Promise.resolve(i)}async resetSchema(e){return Promise.resolve(this._languageService.resetSchema(e))}async findDocumentSymbols(e){let t=this._getTextDocument(e);if(!t)return[];let n=this._languageService.parseJSONDocument(t),r=this._languageService.findDocumentSymbols2(t,n);return Promise.resolve(r)}async findDocumentColors(e){let t=this._getTextDocument(e);if(!t)return[];let n=this._languageService.parseJSONDocument(t),r=this._languageService.findDocumentColors(t,n);return Promise.resolve(r)}async getColorPresentations(e,t,n){let r=this._getTextDocument(e);if(!r)return[];let i=this._languageService.parseJSONDocument(r),s=this._languageService.getColorPresentations(r,i,t,n);return Promise.resolve(s)}async getFoldingRanges(e,t){let n=this._getTextDocument(e);if(!n)return[];let r=this._languageService.getFoldingRanges(n,t);return Promise.resolve(r)}async getSelectionRanges(e,t){let n=this._getTextDocument(e);if(!n)return[];let r=this._languageService.parseJSONDocument(n),i=this._languageService.getSelectionRanges(n,t,r);return Promise.resolve(i)}async parseJSONDocument(e){let t=this._getTextDocument(e);if(!t)return null;let n=this._languageService.parseJSONDocument(t);return Promise.resolve(n)}async getMatchingSchemas(e){let t=this._getTextDocument(e);if(!t)return[];let n=this._languageService.parseJSONDocument(t);return Promise.resolve(this._languageService.getMatchingSchemas(t,n))}_getTextDocument(e){let t=this._ctx.getMirrorModels();for(let n of t)if(n.uri.toString()===e)return Au.create(e,this._languageId,n.version,n.getValue());return null}}const sh="/".charCodeAt(0),oh=".".charCodeAt(0);function ah(e){const t=[];for(const r of e)0===r.length||1===r.length&&r.charCodeAt(0)===oh||(2===r.length&&r.charCodeAt(0)===oh&&r.charCodeAt(1)===oh?t.pop():t.push(r));e.length>1&&0===e[e.length-1].length&&t.push("");let n=t.join("/");return 0===e[0].length&&(n="/"+n),n}self.onmessage=()=>{var e;e=(e,t)=>new ih(e,t),self.onmessage=t=>{Eo(n=>e(n,t.data))}}}();