var wI=Object.defineProperty;var SI=(s,e,t)=>e in s?wI(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var Hn=(s,e,t)=>(SI(s,typeof e!="symbol"?e+"":e,t),t);import{_ as yI}from"./preload-helper.1703796278973.js";globalThis&&globalThis.__awaiter;let LI=typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function DI(s,e){let t;return e.length===0?t=s:t=s.replace(/\{(\d+)\}/g,(i,n)=>{const o=n[0],r=e[o];let a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),LI&&(t="["+t.replace(/[aouei]/g,"$&$&")+"]"),t}function p(s,e,...t){return DI(e,t)}var yp;const Th="en";let eg=!1,tg=!1,If=!1,FD=!1,Zb=!1,Yb=!1,BD=!1,Bd,Nf=Th,kI,rs;const It=typeof self=="object"?self:typeof global=="object"?global:{};let Mi;typeof It.vscode<"u"&&typeof It.vscode.process<"u"?Mi=It.vscode.process:typeof process<"u"&&(Mi=process);const xI=typeof((yp=Mi==null?void 0:Mi.versions)===null||yp===void 0?void 0:yp.electron)=="string",EI=xI&&(Mi==null?void 0:Mi.type)==="renderer";if(typeof navigator=="object"&&!EI)rs=navigator.userAgent,eg=rs.indexOf("Windows")>=0,tg=rs.indexOf("Macintosh")>=0,Yb=(rs.indexOf("Macintosh")>=0||rs.indexOf("iPad")>=0||rs.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,If=rs.indexOf("Linux")>=0,BD=(rs==null?void 0:rs.indexOf("Mobi"))>=0,Zb=!0,p({key:"ensureLoaderPluginIsLoaded",comment:["{Locked}"]},"_"),Bd=Th,Nf=Bd;else if(typeof Mi=="object"){eg=Mi.platform==="win32",tg=Mi.platform==="darwin",If=Mi.platform==="linux",If&&Mi.env.SNAP&&Mi.env.SNAP_REVISION,Mi.env.CI||Mi.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Bd=Th,Nf=Th;const s=Mi.env.VSCODE_NLS_CONFIG;if(s)try{const e=JSON.parse(s),t=e.availableLanguages["*"];Bd=e.locale,Nf=t||Th,kI=e._translationsConfigFile}catch{}FD=!0}else console.error("Unable to resolve platform.");const Ii=eg,$e=tg,gi=If,Qh=FD,Gc=Zb,II=Zb&&typeof It.importScripts=="function",za=Yb,NI=BD,Js=rs,CU=Nf,TI=typeof It.postMessage=="function"&&!It.importScripts,WD=(()=>{if(TI){const s=[];It.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,n=s.length;i{const i=++e;s.push({id:i,callback:t}),It.postMessage({vscodeScheduleAsyncWork:i},"*")}}return s=>setTimeout(s)})(),$n=tg||Yb?2:eg?1:3;let nw=!0,sw=!1;function AI(){if(!sw){sw=!0;const s=new Uint8Array(2);s[0]=1,s[1]=2,nw=new Uint16Array(s.buffer)[0]===(2<<8)+1}return nw}const VD=!!(Js&&Js.indexOf("Chrome")>=0),MI=!!(Js&&Js.indexOf("Firefox")>=0),RI=!!(!VD&&Js&&Js.indexOf("Safari")>=0),OI=!!(Js&&Js.indexOf("Edg/")>=0);Js&&Js.indexOf("Android")>=0;var je;(function(s){function e(C){return C&&typeof C=="object"&&typeof C[Symbol.iterator]=="function"}s.is=e;const t=Object.freeze([]);function i(){return t}s.empty=i;function*n(C){yield C}s.single=n;function o(C){return e(C)?C:n(C)}s.wrap=o;function r(C){return C||t}s.from=r;function a(C){return!C||C[Symbol.iterator]().next().done===!0}s.isEmpty=a;function l(C){return C[Symbol.iterator]().next().value}s.first=l;function c(C,b){for(const v of C)if(b(v))return!0;return!1}s.some=c;function h(C,b){for(const v of C)if(b(v))return v}s.find=h;function*u(C,b){for(const v of C)b(v)&&(yield v)}s.filter=u;function*d(C,b){let v=0;for(const y of C)yield b(y,v++)}s.map=d;function*f(...C){for(const b of C)for(const v of b)yield v}s.concat=f;function g(C,b,v){let y=v;for(const x of C)y=b(y,x);return y}s.reduce=g;function*m(C,b,v=C.length){for(b<0&&(b+=C.length),v<0?v+=C.length:v>C.length&&(v=C.length);b{n||(n=!0,this._remove(i))}}shift(){if(this._first!==xt.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==xt.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==xt.Undefined&&e.next!==xt.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===xt.Undefined&&e.next===xt.Undefined?(this._first=xt.Undefined,this._last=xt.Undefined):e.next===xt.Undefined?(this._last=this._last.prev,this._last.next=xt.Undefined):e.prev===xt.Undefined&&(this._first=this._first.next,this._first.prev=xt.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==xt.Undefined;)yield e.element,e=e.next}}const HD="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function PI(s=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const t of HD)s.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}const Qb=PI();function zD(s){let e=Qb;if(s&&s instanceof RegExp)if(s.global)e=s;else{let t="g";s.ignoreCase&&(t+="i"),s.multiline&&(t+="m"),s.unicode&&(t+="u"),e=new RegExp(s.source,t)}return e.lastIndex=0,e}const UD=new xi;UD.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function Su(s,e,t,i,n){if(n||(n=je.first(UD)),t.length>n.maxLen){let c=s-n.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,s+n.maxLen/2),Su(s,e,t,i,n)}const o=Date.now(),r=s-1-i;let a=-1,l=null;for(let c=1;!(Date.now()-o>=n.timeBudget);c++){const h=r-n.windowSize*c;e.lastIndex=Math.max(0,h);const u=FI(e,t,r,a);if(!u&&l||(l=u,h<=0))break;a=h}if(l){const c={word:l[0],startColumn:i+1+l.index,endColumn:i+1+l.index+l[0].length};return e.lastIndex=0,c}return null}function FI(s,e,t,i){let n;for(;n=s.exec(e);){const o=n.index||0;if(o<=t&&s.lastIndex>=t)return n;if(i>0&&o>i)return null}return null}function vn(s,e=0){return s[s.length-(1+e)]}function BI(s){if(s.length===0)throw new Error("Invalid tail call");return[s.slice(0,s.length-1),s[s.length-1]]}function Tn(s,e,t=(i,n)=>i===n){if(s===e)return!0;if(!s||!e||s.length!==e.length)return!1;for(let i=0,n=s.length;it(s[i],e))}function HI(s,e){let t=0,i=s-1;for(;t<=i;){const n=(t+i)/2|0,o=e(n);if(o<0)t=n+1;else if(o>0)i=n-1;else return n}return-(t+1)}function wU(s,e){let t=0,i=s.length;if(i===0)return 0;for(;t=e.length)throw new TypeError("invalid index");const i=e[Math.floor(e.length*Math.random())],n=[],o=[],r=[];for(const a of e){const l=t(a,i);l<0?n.push(a):l>0?o.push(a):r.push(a)}return s!!e)}function yU(s){let e=0;for(let t=0;t0}function Ua(s,e=t=>t){const t=new Set;return s.filter(i=>{const n=e(i);return t.has(n)?!1:(t.add(n),!0)})}function $I(s,e){const t=jI(s,e);if(t!==-1)return s[t]}function jI(s,e){for(let t=s.length-1;t>=0;t--){const i=s[t];if(e(i))return t}return-1}function $D(s,e){return s.length>0?s[0]:e}function Ti(s,e){let t=typeof e=="number"?s:0;typeof e=="number"?t=s:(t=0,e=s);const i=[];if(t<=e)for(let n=t;ne;n--)i.push(n);return i}function _m(s,e,t){const i=s.slice(0,e),n=s.slice(e);return i.concat(t,n)}function Lp(s,e){const t=s.indexOf(e);t>-1&&(s.splice(t,1),s.unshift(e))}function Wd(s,e){const t=s.indexOf(e);t>-1&&(s.splice(t,1),s.push(e))}function rw(s,e){for(const t of e)s.push(t)}function KI(s){return Array.isArray(s)?s:[s]}function qI(s,e,t){const i=jD(s,e),n=s.length,o=t.length;s.length=n+o;for(let r=n-1;r>=i;r--)s[r+o]=s[r];for(let r=0;r0}s.isGreaterThan=t;function i(n){return n===0}s.isNeitherLessOrGreaterThan=i,s.greaterThan=1,s.lessThan=-1,s.neitherLessOrGreaterThan=0})(Q_||(Q_={}));function Tf(s,e){return(t,i)=>e(s(t),s(i))}const LU=(s,e)=>s-e;function GI(s,e){if(s.length===0)return;let t=s[0];for(let i=1;i0&&(t=n)}return t}function ZI(s,e){if(s.length===0)return;let t=s[0];for(let i=1;i=0&&(t=n)}return t}function YI(s,e){return GI(s,(t,i)=>-e(t,i))}class wc{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t=0&&e(this.items[t]);)t--;const i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){const e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){const t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}}class Zs{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new Zs(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new Zs(t=>this.iterate(i=>t(e(i))))}findLast(e){let t;return this.iterate(i=>(e(i)&&(t=i),!0)),t}findLastMaxBy(e){let t,i=!0;return this.iterate(n=>((i||Q_.isGreaterThan(e(n,t)))&&(i=!1,t=n),!0)),t}}Zs.empty=new Zs(s=>{});function Xi(s){return typeof s=="string"}function fn(s){return typeof s=="object"&&s!==null&&!Array.isArray(s)&&!(s instanceof RegExp)&&!(s instanceof Date)}function QI(s){const e=Object.getPrototypeOf(Uint8Array);return typeof s=="object"&&s instanceof e}function Zc(s){return typeof s=="number"&&!isNaN(s)}function lw(s){return!!s&&typeof s[Symbol.iterator]=="function"}function KD(s){return s===!0||s===!1}function bs(s){return typeof s>"u"}function XI(s){return!un(s)}function un(s){return bs(s)||s===null}function Fo(s,e){if(!s)throw new Error(e?`Unexpected type, expected '${e}'`:"Unexpected type")}function DU(s){if(un(s))throw new Error("Assertion Failed: argument is undefined or null");return s}function ig(s){return typeof s=="function"}function JI(s,e){const t=Math.min(s.length,e.length);for(let i=0;i{e[t]=i&&typeof i=="object"?ar(i):i}),e}function tN(s){if(!s||typeof s!="object")return s;const e=[s];for(;e.length>0;){const t=e.shift();Object.freeze(t);for(const i in t)if(qD.call(t,i)){const n=t[i];typeof n=="object"&&!Object.isFrozen(n)&&!QI(n)&&e.push(n)}}return s}const qD=Object.prototype.hasOwnProperty;function GD(s,e){return X_(s,e,new Set)}function X_(s,e,t){if(un(s))return s;const i=e(s);if(typeof i<"u")return i;if(Array.isArray(s)){const n=[];for(const o of s)n.push(X_(o,e,t));return n}if(fn(s)){if(t.has(s))throw new Error("Cannot clone recursive data-structure");t.add(s);const n={};for(const o in s)qD.call(s,o)&&(n[o]=X_(s[o],e,t));return t.delete(s),n}return s}function ZD(s,e,t=!0){return fn(s)?(fn(e)&&Object.keys(e).forEach(i=>{i in s?t&&(fn(s[i])&&fn(e[i])?ZD(s[i],e[i],t):s[i]=e[i]):s[i]=e[i]}),s):e}function An(s,e){if(s===e)return!0;if(s==null||e===null||e===void 0||typeof s!=typeof e||typeof s!="object"||Array.isArray(s)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(s)){if(s.length!==e.length)return!1;for(t=0;tfunction(){const o=Array.prototype.slice.call(arguments,0);return e(n,o)},i={};for(const n of s)i[n]=t(n);return i}const Ci={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}},ir=8;class YD{constructor(e){this._values=e}hasChanged(e){return this._values[e]}}class QD{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class Ct{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return bm(e,t)}compute(e,t,i){return i}}class Xh{constructor(e,t){this.newValue=e,this.didChange=t}}function bm(s,e){if(typeof s!="object"||typeof e!="object"||!s||!e)return new Xh(e,s!==e);if(Array.isArray(s)||Array.isArray(e)){const i=Array.isArray(s)&&Array.isArray(e)&&Tn(s,e);return new Xh(e,!i)}let t=!1;for(const i in e)if(e.hasOwnProperty(i)){const n=bm(s[i],e[i]);n.didChange&&(s[i]=n.newValue,t=!0)}return new Xh(s,t)}class dd{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return bm(e,t)}validate(e){return this.defaultValue}}class Yc{constructor(e,t,i,n){this.id=e,this.name=t,this.defaultValue=i,this.schema=n}applyUpdate(e,t){return bm(e,t)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,t,i){return i}}function ce(s,e){return typeof s>"u"?e:s==="false"?!1:Boolean(s)}class Fe extends Yc{constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return ce(e,this.defaultValue)}}function J_(s,e,t,i){if(typeof s>"u")return e;let n=parseInt(s,10);return isNaN(n)?e:(n=Math.max(t,n),n=Math.min(i,n),n|0)}class nt extends Yc{static clampedInt(e,t,i,n){return J_(e,t,i,n)}constructor(e,t,i,n,o,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=n,r.maximum=o),super(e,t,i,r),this.minimum=n,this.maximum=o}validate(e){return nt.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}class Us extends Yc{static clamp(e,t,i){return ei?i:e}static float(e,t){if(typeof e=="number")return e;if(typeof e>"u")return t;const i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,n,o){typeof o<"u"&&(o.type="number",o.default=i),super(e,t,i,o),this.validationFn=n}validate(e){return this.validationFn(Us.float(e,this.defaultValue))}}class Zi extends Yc{static string(e,t){return typeof e!="string"?t:e}constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="string",n.default=i),super(e,t,i,n)}validate(e){return Zi.string(e,this.defaultValue)}}function Ut(s,e,t){return typeof s!="string"||t.indexOf(s)===-1?e:s}class Dt extends Yc{constructor(e,t,i,n,o=void 0){typeof o<"u"&&(o.type="string",o.enum=n,o.default=i),super(e,t,i,o),this._allowedValues=n}validate(e){return Ut(e,this.defaultValue,this._allowedValues)}}class Vd extends Ct{constructor(e,t,i,n,o,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=o,a.default=n),super(e,t,i,a),this._allowedValues=o,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}}function sN(s){switch(s){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class oN extends Ct{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[p("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached"),p("accessibilitySupport.on","Optimize for usage with a Screen Reader"),p("accessibilitySupport.off","Assume a screen reader is not attached")],default:"auto",tags:["accessibility"],description:p("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return i===0?e.accessibilitySupport:i}}class rN extends Ct{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(20,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:p("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:p("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertSpace:ce(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:ce(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function aN(s){switch(s){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var oi;(function(s){s[s.Line=1]="Line",s[s.Block=2]="Block",s[s.Underline=3]="Underline",s[s.LineThin=4]="LineThin",s[s.BlockOutline=5]="BlockOutline",s[s.UnderlineThin=6]="UnderlineThin"})(oi||(oi={}));function lN(s){switch(s){case"line":return oi.Line;case"block":return oi.Block;case"underline":return oi.Underline;case"line-thin":return oi.LineThin;case"block-outline":return oi.BlockOutline;case"underline-thin":return oi.UnderlineThin}}class cN extends dd{constructor(){super(135)}compute(e,t,i){const n=["monaco-editor"];return t.get(36)&&n.push(t.get(36)),e.extraEditorClassName&&n.push(e.extraEditorClassName),t.get(70)==="default"?n.push("mouse-default"):t.get(70)==="copy"&&n.push("mouse-copy"),t.get(105)&&n.push("showUnused"),t.get(133)&&n.push("showDeprecated"),n.join(" ")}}class hN extends Fe{constructor(){super(34,"emptySelectionClipboard",!0,{description:p("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}class uN extends Ct{constructor(){const e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(38,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:p("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[p("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),p("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),p("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:p("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[p("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),p("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),p("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:p("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:p("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:$e},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:p("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:p("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{cursorMoveOnType:ce(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":Ut(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":Ut(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:ce(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:ce(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:ce(t.loop,this.defaultValue.loop)}}}class yn extends Ct{constructor(){super(48,"fontLigatures",yn.OFF,{anyOf:[{type:"boolean",description:p("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:p("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:p("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?yn.OFF:e==="true"?yn.ON:e:Boolean(e)?yn.ON:yn.OFF}}yn.OFF='"liga" off, "calt" off';yn.ON='"liga" on, "calt" on';class gs extends Ct{constructor(){super(51,"fontVariations",gs.OFF,{anyOf:[{type:"boolean",description:p("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:p("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:p("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?gs.OFF:e==="true"?gs.TRANSLATE:e:Boolean(e)?gs.TRANSLATE:gs.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}}gs.OFF="normal";gs.TRANSLATE="translate";class dN extends dd{constructor(){super(47)}compute(e,t,i){return e.fontInfo}}class fN extends Yc{constructor(){super(49,"fontSize",Mn.fontSize,{type:"number",minimum:6,maximum:100,default:Mn.fontSize,description:p("fontSize","Controls the font size in pixels.")})}validate(e){const t=Us.float(e,this.defaultValue);return t===0?Mn.fontSize:Us.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}class Fs extends Ct{constructor(){super(50,"fontWeight",Mn.fontWeight,{anyOf:[{type:"number",minimum:Fs.MINIMUM_VALUE,maximum:Fs.MAXIMUM_VALUE,errorMessage:p("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:Fs.SUGGESTION_VALUES}],default:Mn.fontWeight,description:p("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(nt.clampedInt(e,Mn.fontWeight,Fs.MINIMUM_VALUE,Fs.MAXIMUM_VALUE))}}Fs.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"];Fs.MINIMUM_VALUE=1;Fs.MAXIMUM_VALUE=1e3;class gN extends Ct{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[p("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),p("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),p("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(55,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:p("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":Object.assign({description:p("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleTypeDefinitions":Object.assign({description:p("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleDeclarations":Object.assign({description:p("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleImplementations":Object.assign({description:p("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},t),"editor.gotoLocation.multipleReferences":Object.assign({description:p("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist.")},t),"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:p("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:p("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:p("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:p("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:p("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){var t,i,n,o,r;if(!e||typeof e!="object")return this.defaultValue;const a=e;return{multiple:Ut(a.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:(t=a.multipleDefinitions)!==null&&t!==void 0?t:Ut(a.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:(i=a.multipleTypeDefinitions)!==null&&i!==void 0?i:Ut(a.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:(n=a.multipleDeclarations)!==null&&n!==void 0?n:Ut(a.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:(o=a.multipleImplementations)!==null&&o!==void 0?o:Ut(a.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:(r=a.multipleReferences)!==null&&r!==void 0?r:Ut(a.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:Zi.string(a.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:Zi.string(a.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:Zi.string(a.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:Zi.string(a.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:Zi.string(a.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}}}class mN extends Ct{constructor(){const e={enabled:!0,delay:300,sticky:!0,above:!0};super(57,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:p("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:p("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:p("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.above":{type:"boolean",default:e.above,description:p("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:ce(t.enabled,this.defaultValue.enabled),delay:nt.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:ce(t.sticky,this.defaultValue.sticky),above:ce(t.above,this.defaultValue.above)}}}class ec extends dd{constructor(){super(138)}compute(e,t,i){return ec.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio})}static computeContainedMinimapLineCount(e){const t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight);let n=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(n=Math.max(n,t-1));const o=(i+e.viewLineCount+n)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/o);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:o,minimapLineCount:r}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,o=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(o*n),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:n};const r=t.stableMinimapLayoutInput,a=r&&e.outerHeight===r.outerHeight&&e.lineHeight===r.lineHeight&&e.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&e.pixelRatio===r.pixelRatio&&e.scrollBeyondLastLine===r.scrollBeyondLastLine&&e.paddingTop===r.paddingTop&&e.paddingBottom===r.paddingBottom&&e.minimap.enabled===r.minimap.enabled&&e.minimap.side===r.minimap.side&&e.minimap.size===r.minimap.size&&e.minimap.showSlider===r.minimap.showSlider&&e.minimap.renderCharacters===r.minimap.renderCharacters&&e.minimap.maxColumn===r.minimap.maxColumn&&e.minimap.scale===r.minimap.scale&&e.verticalScrollbarWidth===r.verticalScrollbarWidth&&e.isViewportWrapping===r.isViewportWrapping,l=e.lineHeight,c=e.typicalHalfwidthCharacterWidth,h=e.scrollBeyondLastLine,u=e.minimap.renderCharacters;let d=o>=2?Math.round(e.minimap.scale*2):e.minimap.scale;const f=e.minimap.maxColumn,g=e.minimap.size,m=e.minimap.side,_=e.verticalScrollbarWidth,C=e.viewLineCount,b=e.remainingWidth,v=e.isViewportWrapping,y=u?2:3;let x=Math.floor(o*n);const I=x/o;let D=!1,S=!1,L=y*d,A=d/o,R=1;if(g==="fill"||g==="fit"){const{typicalViewportLineCount:ye,extraLinesBeforeFirstLine:ue,extraLinesBeyondLastLine:Te,desiredRatio:Ne,minimapLineCount:te}=ec.computeContainedMinimapLineCount({viewLineCount:C,scrollBeyondLastLine:h,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:n,lineHeight:l,pixelRatio:o});if(C/te>1)D=!0,S=!0,d=1,L=1,A=d/o;else{let it=!1,sn=d+1;if(g==="fit"){const ti=Math.ceil((ue+C+Te)*L);v&&a&&b<=t.stableFitRemainingWidth?(it=!0,sn=t.stableFitMaxMinimapScale):it=ti>x}if(g==="fill"||it){D=!0;const ti=d;L=Math.min(l*o,Math.max(1,Math.floor(1/Ne))),v&&a&&b<=t.stableFitRemainingWidth&&(sn=t.stableFitMaxMinimapScale),d=Math.min(sn,Math.max(1,Math.floor(L/y))),d>ti&&(R=Math.min(2,d/ti)),A=d/o/R,x=Math.ceil(Math.max(ye,ue+C+Te)*L),v?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=b,t.stableFitMaxMinimapScale=d):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const P=Math.floor(f*A),W=Math.min(P,Math.max(0,Math.floor((b-_-2)*A/(c+A)))+ir);let Z=Math.floor(o*W);const ee=Z/o;Z=Math.floor(Z*R);const le=u?1:2,Ce=m==="left"?0:i-W-_;return{renderMinimap:le,minimapLeft:Ce,minimapWidth:W,minimapHeightIsEditorHeight:D,minimapIsSampling:S,minimapScale:d,minimapLineHeight:L,minimapCanvasInnerWidth:Z,minimapCanvasInnerHeight:x,minimapCanvasOuterWidth:ee,minimapCanvasOuterHeight:I}}static computeLayout(e,t){const i=t.outerWidth|0,n=t.outerHeight|0,o=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,h=t.viewLineCount,u=e.get(130),d=u==="inherit"?e.get(129):u,f=d==="inherit"?e.get(125):d,g=e.get(128),m=t.isDominatedByLongLines,_=e.get(54),C=e.get(64).renderType!==0,b=e.get(65),v=e.get(99),y=e.get(80),x=e.get(69),I=e.get(97),D=I.verticalScrollbarSize,S=I.verticalHasArrows,L=I.arrowSize,A=I.horizontalScrollbarSize,R=e.get(40),P=e.get(104)!=="never";let W=e.get(62);R&&P&&(W+=16);let Z=0;if(C){const jo=Math.max(r,b);Z=Math.round(jo*l)}let ee=0;_&&(ee=o);let le=0,Ce=le+ee,ye=Ce+Z,ue=ye+W;const Te=i-ee-Z-W;let Ne=!1,te=!1,re=-1;d==="inherit"&&m?(Ne=!0,te=!0):f==="on"||f==="bounded"?te=!0:f==="wordWrapColumn"&&(re=g);const it=ec._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:o,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:v,paddingTop:y.top,paddingBottom:y.bottom,minimap:x,verticalScrollbarWidth:D,viewLineCount:h,remainingWidth:Te,isViewportWrapping:te},t.memory||new QD);it.renderMinimap!==0&&it.minimapLeft===0&&(le+=it.minimapWidth,Ce+=it.minimapWidth,ye+=it.minimapWidth,ue+=it.minimapWidth);const sn=Te-it.minimapWidth,ti=Math.max(1,Math.floor((sn-D-2)/a)),is=S?L:0;return te&&(re=Math.max(1,ti),f==="bounded"&&(re=Math.min(re,g))),{width:i,height:n,glyphMarginLeft:le,glyphMarginWidth:ee,lineNumbersLeft:Ce,lineNumbersWidth:Z,decorationsLeft:ye,decorationsWidth:W,contentLeft:ue,contentWidth:sn,minimap:it,viewportColumn:ti,isWordWrapMinified:Ne,isViewportWrapping:te,wrappingColumn:re,verticalScrollbarWidth:D,horizontalScrollbarHeight:A,overviewRuler:{top:is,width:D,height:n-2*is,right:0}}}}class pN extends Ct{constructor(){super(132,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[p("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),p("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:p("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return Ut(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}}class _N extends Ct{constructor(){const e={enabled:!0};super(61,"lightbulb",e,{"editor.lightbulb.enabled":{type:"boolean",default:e.enabled,description:p("codeActions","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:ce(e.enabled,this.defaultValue.enabled)}}}class bN extends Ct{constructor(){const e={enabled:!1,maxLineCount:5};super(109,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:p("editor.stickyScroll","Shows the nested current scopes during the scroll at the top of the editor.")},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:10,description:p("editor.stickyScroll.","Defines the maximum number of sticky lines to show.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:ce(t.enabled,this.defaultValue.enabled),maxLineCount:nt.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,10)}}}class CN extends Ct{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(134,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:p("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[p("editor.inlayHints.on","Inlay hints are enabled"),p("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",$e?"Ctrl+Option":"Ctrl+Alt"),p("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",$e?"Ctrl+Option":"Ctrl+Alt"),p("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:p("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:p("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:p("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return typeof t.enabled=="boolean"&&(t.enabled=t.enabled?"on":"off"),{enabled:Ut(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:nt.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:Zi.string(t.fontFamily,this.defaultValue.fontFamily),padding:ce(t.padding,this.defaultValue.padding)}}}class vN extends Ct{constructor(){super(62,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):nt.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?nt.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}}class wN extends Us{constructor(){super(63,"lineHeight",Mn.lineHeight,e=>Us.clamp(e,0,150),{markdownDescription:p("lineHeight",`Controls the line height. - Use 0 to automatically compute the line height from the font size. - Values between 0 and 8 will be used as a multiplier with the font size. - Values greater than or equal to 8 will be used as effective values.`)})}compute(e,t,i){return e.fontInfo.lineHeight}}class SN extends Ct{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1};super(69,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:p("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:p("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[p("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),p("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),p("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:p("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:p("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:p("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:p("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:p("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:p("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:ce(t.enabled,this.defaultValue.enabled),autohide:ce(t.autohide,this.defaultValue.autohide),size:Ut(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:Ut(t.side,this.defaultValue.side,["right","left"]),showSlider:Ut(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:ce(t.renderCharacters,this.defaultValue.renderCharacters),scale:nt.clampedInt(t.scale,1,1,3),maxColumn:nt.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4)}}}function yN(s){return s==="ctrlCmd"?$e?"metaKey":"ctrlKey":"altKey"}class LN extends Ct{constructor(){super(80,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:p("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:p("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{top:nt.clampedInt(t.top,0,0,1e3),bottom:nt.clampedInt(t.bottom,0,0,1e3)}}}class DN extends Ct{constructor(){const e={enabled:!0,cycle:!0};super(81,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:p("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:p("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:ce(t.enabled,this.defaultValue.enabled),cycle:ce(t.cycle,this.defaultValue.cycle)}}}class kN extends dd{constructor(){super(136)}compute(e,t,i){return e.pixelRatio}}class xN extends Ct{constructor(){const e={other:"on",comments:"off",strings:"off"},t=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[p("on","Quick suggestions show inside the suggest widget"),p("inline","Quick suggestions show as ghost text"),p("off","Quick suggestions are disabled")]}];super(84,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:t,default:e.strings,description:p("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:t,default:e.comments,description:p("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:t,default:e.other,description:p("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:p("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the '{0}'-setting which controls if suggestions are triggered by special characters.","#editor.suggestOnTriggerCharacters#")}),this.defaultValue=e}validate(e){if(typeof e=="boolean"){const c=e?"on":"off";return{comments:c,strings:c,other:c}}if(!e||typeof e!="object")return this.defaultValue;const{other:t,comments:i,strings:n}=e,o=["on","inline","off"];let r,a,l;return typeof t=="boolean"?r=t?"on":"off":r=Ut(t,this.defaultValue.other,o),typeof i=="boolean"?a=i?"on":"off":a=Ut(i,this.defaultValue.comments,o),typeof n=="boolean"?l=n?"on":"off":l=Ut(n,this.defaultValue.strings,o),{other:r,comments:a,strings:l}}}class EN extends Ct{constructor(){super(64,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[p("lineNumbers.off","Line numbers are not rendered."),p("lineNumbers.on","Line numbers are rendered as absolute number."),p("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),p("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:p("lineNumbers","Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return typeof e<"u"&&(typeof e=="function"?(t=4,i=e):e==="interval"?t=3:e==="relative"?t=2:e==="on"?t=1:t=0),{renderType:t,renderFn:i}}}function ng(s){const e=s.get(92);return e==="editable"?s.get(86):e!=="on"}class IN extends Ct{constructor(){const e=[],t={type:"number",description:p("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(96,"rulers",e,{type:"array",items:{anyOf:[t,{type:["object"],properties:{column:t,color:{type:"string",description:p("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:p("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){const t=[];for(const i of e)if(typeof i=="number")t.push({column:nt.clampedInt(i,0,0,1e4),color:null});else if(i&&typeof i=="object"){const n=i;t.push({column:nt.clampedInt(n.column,0,0,1e4),color:n.color})}return t.sort((i,n)=>i.column-n.column),t}return this.defaultValue}}function cw(s,e){if(typeof s!="string")return e;switch(s){case"hidden":return 2;case"visible":return 3;default:return 1}}let NN=class extends Ct{constructor(){const e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1};super(97,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[p("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),p("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),p("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:p("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[p("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),p("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),p("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:p("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:p("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:p("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:p("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e,i=nt.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),n=nt.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:nt.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:cw(t.vertical,this.defaultValue.vertical),horizontal:cw(t.horizontal,this.defaultValue.horizontal),useShadows:ce(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:ce(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:ce(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:ce(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:ce(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:nt.clampedInt(t.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:n,verticalSliderSize:nt.clampedInt(t.verticalSliderSize,n,0,1e3),scrollByPage:ce(t.scrollByPage,this.defaultValue.scrollByPage)}}};const ss="inUntrustedWorkspace",ra={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"};class TN extends Ct{constructor(){const e={nonBasicASCII:ss,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:ss,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(119,"unicodeHighlight",e,{[ra.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,ss],default:e.nonBasicASCII,description:p("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[ra.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:p("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[ra.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:p("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[ra.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,ss],default:e.includeComments,description:p("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[ra.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,ss],default:e.includeStrings,description:p("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[ra.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:p("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[ra.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:p("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,t){let i=!1;t.allowedCharacters&&e&&(An(e.allowedCharacters,t.allowedCharacters)||(e=Object.assign(Object.assign({},e),{allowedCharacters:t.allowedCharacters}),i=!0)),t.allowedLocales&&e&&(An(e.allowedLocales,t.allowedLocales)||(e=Object.assign(Object.assign({},e),{allowedLocales:t.allowedLocales}),i=!0));const n=super.applyUpdate(e,t);return i?new Xh(n.newValue,!0):n}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{nonBasicASCII:tc(t.nonBasicASCII,ss,[!0,!1,ss]),invisibleCharacters:ce(t.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:ce(t.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:tc(t.includeComments,ss,[!0,!1,ss]),includeStrings:tc(t.includeStrings,ss,[!0,!1,ss]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,t){if(typeof e!="object"||!e)return t;const i={};for(const[n,o]of Object.entries(e))o===!0&&(i[n]=!0);return i}}class AN extends Ct{constructor(){const e={enabled:!0,mode:"subwordSmart",showToolbar:"onHover"};super(59,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:p("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover"],enumDescriptions:[p("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),p("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion.")],description:p("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:ce(t.enabled,this.defaultValue.enabled),mode:Ut(t.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:Ut(t.showToolbar,this.defaultValue.showToolbar,["always","onHover"])}}}class MN extends Ct{constructor(){const e={enabled:Ci.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:Ci.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(12,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:p("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:p("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:ce(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:ce(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}}class RN extends Ct{constructor(){const e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(13,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[p("editor.guides.bracketPairs.true","Enables bracket pair guides."),p("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),p("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:p("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[p("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),p("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),p("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:p("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:p("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:p("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[p("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),p("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),p("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:p("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{bracketPairs:tc(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:tc(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:ce(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:ce(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:tc(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}}function tc(s,e,t){const i=t.indexOf(s);return i===-1?e:t[i]}class ON extends Ct{constructor(){const e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!0,localityBonus:!1,shareSuggestSelections:!1,selectionMode:"always",showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,matchOnWordStartOnly:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(112,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[p("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),p("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:p("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:p("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:p("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:p("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[p("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),p("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),p("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),p("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:e.selectionMode,markdownDescription:p("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions (`#editor.quickSuggestions#` and `#editor.suggestOnTriggerCharacters#`) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:p("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:p("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:p("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:p("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:p("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:p("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:p("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{insertMode:Ut(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:ce(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:ce(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:ce(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:ce(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:Ut(t.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:ce(t.showIcons,this.defaultValue.showIcons),showStatusBar:ce(t.showStatusBar,this.defaultValue.showStatusBar),preview:ce(t.preview,this.defaultValue.preview),previewMode:Ut(t.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:ce(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:ce(t.showMethods,this.defaultValue.showMethods),showFunctions:ce(t.showFunctions,this.defaultValue.showFunctions),showConstructors:ce(t.showConstructors,this.defaultValue.showConstructors),showDeprecated:ce(t.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:ce(t.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:ce(t.showFields,this.defaultValue.showFields),showVariables:ce(t.showVariables,this.defaultValue.showVariables),showClasses:ce(t.showClasses,this.defaultValue.showClasses),showStructs:ce(t.showStructs,this.defaultValue.showStructs),showInterfaces:ce(t.showInterfaces,this.defaultValue.showInterfaces),showModules:ce(t.showModules,this.defaultValue.showModules),showProperties:ce(t.showProperties,this.defaultValue.showProperties),showEvents:ce(t.showEvents,this.defaultValue.showEvents),showOperators:ce(t.showOperators,this.defaultValue.showOperators),showUnits:ce(t.showUnits,this.defaultValue.showUnits),showValues:ce(t.showValues,this.defaultValue.showValues),showConstants:ce(t.showConstants,this.defaultValue.showConstants),showEnums:ce(t.showEnums,this.defaultValue.showEnums),showEnumMembers:ce(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:ce(t.showKeywords,this.defaultValue.showKeywords),showWords:ce(t.showWords,this.defaultValue.showWords),showColors:ce(t.showColors,this.defaultValue.showColors),showFiles:ce(t.showFiles,this.defaultValue.showFiles),showReferences:ce(t.showReferences,this.defaultValue.showReferences),showFolders:ce(t.showFolders,this.defaultValue.showFolders),showTypeParameters:ce(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:ce(t.showSnippets,this.defaultValue.showSnippets),showUsers:ce(t.showUsers,this.defaultValue.showUsers),showIssues:ce(t.showIssues,this.defaultValue.showIssues)}}}class PN extends Ct{constructor(){super(107,"smartSelect",{selectLeadingAndTrailingWhitespace:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:p("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:ce(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace)}}}class FN extends Ct{constructor(){super(131,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[p("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),p("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),p("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),p("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:p("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(e,t,i){return t.get(2)===2?0:i}}class BN extends dd{constructor(){super(139)}compute(e,t,i){const n=t.get(138);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:n.isWordWrapMinified,isViewportWrapping:n.isViewportWrapping,wrappingColumn:n.wrappingColumn}}}class WN extends Ct{constructor(){const e={enabled:!0};super(33,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:p("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down `shift` (instead of opening the file in an editor).")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:ce(e.enabled,this.defaultValue.enabled)}}}const VN="Consolas, 'Courier New', monospace",HN="Menlo, Monaco, 'Courier New', monospace",zN="'Droid Sans Mono', 'monospace', monospace",Mn={fontFamily:$e?HN:gi?zN:VN,fontWeight:"normal",fontSize:$e?12:14,lineHeight:0,letterSpacing:0},Rl=[];function G(s){return Rl[s.id]=s,s}const tl={acceptSuggestionOnCommitCharacter:G(new Fe(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:p("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:G(new Dt(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",p("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:p("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:G(new oN),accessibilityPageSize:G(new nt(3,"accessibilityPageSize",10,1,1073741824,{description:p("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:G(new Zi(4,"ariaLabel",p("editorViewAccessibleLabel","Editor content"))),autoClosingBrackets:G(new Dt(5,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",p("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),p("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:p("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingDelete:G(new Dt(6,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",p("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:p("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:G(new Dt(7,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",p("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:p("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:G(new Dt(8,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",p("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),p("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:p("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:G(new Vd(9,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],sN,{enumDescriptions:[p("editor.autoIndent.none","The editor will not insert indentation automatically."),p("editor.autoIndent.keep","The editor will keep the current line's indentation."),p("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),p("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),p("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:p("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:G(new Fe(10,"automaticLayout",!1)),autoSurround:G(new Dt(11,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[p("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),p("editor.autoSurround.quotes","Surround with quotes but not brackets."),p("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:p("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:G(new MN),bracketPairGuides:G(new RN),stickyTabStops:G(new Fe(110,"stickyTabStops",!1,{description:p("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:G(new Fe(14,"codeLens",!0,{description:p("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:G(new Zi(15,"codeLensFontFamily","",{description:p("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:G(new nt(16,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:p("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:G(new Fe(17,"colorDecorators",!0,{description:p("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorsLimit:G(new nt(18,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:p("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:G(new Fe(19,"columnSelection",!1,{description:p("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:G(new rN),contextmenu:G(new Fe(21,"contextmenu",!0)),copyWithSyntaxHighlighting:G(new Fe(22,"copyWithSyntaxHighlighting",!0,{description:p("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:G(new Vd(23,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],aN,{description:p("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:G(new Dt(24,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[p("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),p("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),p("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:p("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:G(new Vd(25,"cursorStyle",oi.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],lN,{description:p("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:G(new nt(26,"cursorSurroundingLines",0,0,1073741824,{description:p("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:G(new Dt(27,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[p("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),p("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],description:p("cursorSurroundingLinesStyle","Controls when `cursorSurroundingLines` should be enforced.")})),cursorWidth:G(new nt(28,"cursorWidth",0,0,1073741824,{markdownDescription:p("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:G(new Fe(29,"disableLayerHinting",!1)),disableMonospaceOptimizations:G(new Fe(30,"disableMonospaceOptimizations",!1)),domReadOnly:G(new Fe(31,"domReadOnly",!1)),dragAndDrop:G(new Fe(32,"dragAndDrop",!0,{description:p("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:G(new hN),dropIntoEditor:G(new WN),stickyScroll:G(new bN),experimentalWhitespaceRendering:G(new Dt(35,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[p("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),p("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),p("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:p("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:G(new Zi(36,"extraEditorClassName","")),fastScrollSensitivity:G(new Us(37,"fastScrollSensitivity",5,s=>s<=0?5:s,{markdownDescription:p("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:G(new uN),fixedOverflowWidgets:G(new Fe(39,"fixedOverflowWidgets",!1)),folding:G(new Fe(40,"folding",!0,{description:p("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:G(new Dt(41,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[p("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),p("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:p("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:G(new Fe(42,"foldingHighlight",!0,{description:p("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:G(new Fe(43,"foldingImportsByDefault",!1,{description:p("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:G(new nt(44,"foldingMaximumRegions",5e3,10,65e3,{description:p("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:G(new Fe(45,"unfoldOnClickAfterEndOfLine",!1,{description:p("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:G(new Zi(46,"fontFamily",Mn.fontFamily,{description:p("fontFamily","Controls the font family.")})),fontInfo:G(new dN),fontLigatures2:G(new yn),fontSize:G(new fN),fontWeight:G(new Fs),fontVariations:G(new gs),formatOnPaste:G(new Fe(52,"formatOnPaste",!1,{description:p("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:G(new Fe(53,"formatOnType",!1,{description:p("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:G(new Fe(54,"glyphMargin",!0,{description:p("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:G(new gN),hideCursorInOverviewRuler:G(new Fe(56,"hideCursorInOverviewRuler",!1,{description:p("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:G(new mN),inDiffEditor:G(new Fe(58,"inDiffEditor",!1)),letterSpacing:G(new Us(60,"letterSpacing",Mn.letterSpacing,s=>Us.clamp(s,-5,20),{description:p("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:G(new _N),lineDecorationsWidth:G(new vN),lineHeight:G(new wN),lineNumbers:G(new EN),lineNumbersMinChars:G(new nt(65,"lineNumbersMinChars",5,1,300)),linkedEditing:G(new Fe(66,"linkedEditing",!1,{description:p("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:G(new Fe(67,"links",!0,{description:p("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:G(new Dt(68,"matchBrackets","always",["always","near","never"],{description:p("matchBrackets","Highlight matching brackets.")})),minimap:G(new SN),mouseStyle:G(new Dt(70,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:G(new Us(71,"mouseWheelScrollSensitivity",1,s=>s===0?1:s,{markdownDescription:p("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:G(new Fe(72,"mouseWheelZoom",!1,{markdownDescription:p("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:G(new Fe(73,"multiCursorMergeOverlapping",!0,{description:p("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:G(new Vd(74,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],yN,{markdownEnumDescriptions:[p("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),p("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:p({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:G(new Dt(75,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[p("multiCursorPaste.spread","Each cursor pastes a single line of the text."),p("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:p("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:G(new nt(76,"multiCursorLimit",1e4,1,1e5,{markdownDescription:p("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:G(new Fe(77,"occurrencesHighlight",!0,{description:p("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:G(new Fe(78,"overviewRulerBorder",!0,{description:p("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:G(new nt(79,"overviewRulerLanes",3,0,3)),padding:G(new LN),parameterHints:G(new DN),peekWidgetDefaultFocus:G(new Dt(82,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[p("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),p("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:p("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),definitionLinkOpensInPeek:G(new Fe(83,"definitionLinkOpensInPeek",!1,{description:p("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:G(new xN),quickSuggestionsDelay:G(new nt(85,"quickSuggestionsDelay",10,0,1073741824,{description:p("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:G(new Fe(86,"readOnly",!1)),renameOnType:G(new Fe(87,"renameOnType",!1,{description:p("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:p("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:G(new Fe(88,"renderControlCharacters",!0,{description:p("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:G(new Dt(89,"renderFinalNewline",gi?"dimmed":"on",["off","on","dimmed"],{description:p("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:G(new Dt(90,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",p("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:p("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:G(new Fe(91,"renderLineHighlightOnlyWhenFocus",!1,{description:p("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:G(new Dt(92,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:G(new Dt(93,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",p("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),p("renderWhitespace.selection","Render whitespace characters only on selected text."),p("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:p("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:G(new nt(94,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:G(new Fe(95,"roundedSelection",!0,{description:p("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:G(new IN),scrollbar:G(new NN),scrollBeyondLastColumn:G(new nt(98,"scrollBeyondLastColumn",4,0,1073741824,{description:p("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:G(new Fe(99,"scrollBeyondLastLine",!0,{description:p("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:G(new Fe(100,"scrollPredominantAxis",!0,{description:p("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:G(new Fe(101,"selectionClipboard",!0,{description:p("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:gi})),selectionHighlight:G(new Fe(102,"selectionHighlight",!0,{description:p("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:G(new Fe(103,"selectOnLineNumbers",!0)),showFoldingControls:G(new Dt(104,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[p("showFoldingControls.always","Always show the folding controls."),p("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),p("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:p("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:G(new Fe(105,"showUnused",!0,{description:p("showUnused","Controls fading out of unused code.")})),showDeprecated:G(new Fe(133,"showDeprecated",!0,{description:p("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:G(new CN),snippetSuggestions:G(new Dt(106,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[p("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),p("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),p("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),p("snippetSuggestions.none","Do not show snippet suggestions.")],description:p("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:G(new PN),smoothScrolling:G(new Fe(108,"smoothScrolling",!1,{description:p("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:G(new nt(111,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:G(new ON),inlineSuggest:G(new AN),suggestFontSize:G(new nt(113,"suggestFontSize",0,0,1e3,{markdownDescription:p("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:G(new nt(114,"suggestLineHeight",0,0,1e3,{markdownDescription:p("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:G(new Fe(115,"suggestOnTriggerCharacters",!0,{description:p("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:G(new Dt(116,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[p("suggestSelection.first","Always select the first suggestion."),p("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),p("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:p("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:G(new Dt(117,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[p("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),p("tabCompletion.off","Disable tab completions."),p("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:p("tabCompletion","Enables tab completions.")})),tabIndex:G(new nt(118,"tabIndex",0,-1,1073741824)),unicodeHighlight:G(new TN),unusualLineTerminators:G(new Dt(120,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[p("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),p("unusualLineTerminators.off","Unusual line terminators are ignored."),p("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:p("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:G(new Fe(121,"useShadowDOM",!0)),useTabStops:G(new Fe(122,"useTabStops",!0,{description:p("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordBreak:G(new Dt(123,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[p("wordBreak.normal","Use the default line break rule."),p("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:p("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSeparators:G(new Zi(124,"wordSeparators",HD,{description:p("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:G(new Dt(125,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[p("wordWrap.off","Lines will never wrap."),p("wordWrap.on","Lines will wrap at the viewport width."),p({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),p({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:p({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:G(new Zi(126,"wordWrapBreakAfterCharacters"," })]?|/&.,;¢°′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:G(new Zi(127,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「£¥$£¥++")),wordWrapColumn:G(new nt(128,"wordWrapColumn",80,1,1073741824,{markdownDescription:p({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:G(new Dt(129,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:G(new Dt(130,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:G(new cN),pixelRatio:G(new kN),tabFocusMode:G(new Fe(137,"tabFocusMode",!1,{markdownDescription:p("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:G(new ec),wrappingInfo:G(new BN),wrappingIndent:G(new FN),wrappingStrategy:G(new pN)};class UN{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?Sc.isErrorNoTelemetry(e)?new Sc(e.message+` `+e.stack):new Error(e.message+` `+e.stack):e},0)}}emit(e){this.listeners.forEach(t=>{t(e)})}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}}const XD=new UN;function Tt(s){Cm(s)||XD.onUnexpectedError(s)}function Jb(s){Cm(s)||XD.onUnexpectedExternalError(s)}function hw(s){if(s instanceof Error){const{name:e,message:t}=s,i=s.stacktrace||s.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:Sc.isErrorNoTelemetry(s)}}return s}const sg="Canceled";function Cm(s){return s instanceof Qc?!0:s instanceof Error&&s.name===sg&&s.message===sg}class Qc extends Error{constructor(){super(sg),this.name=this.message}}function $N(){const s=new Error(sg);return s.name=s.message,s}function vm(s){return s?new Error(`Illegal argument: ${s}`):new Error("Illegal argument")}function jN(s){return s?new Error(`Illegal state: ${s}`):new Error("Illegal state")}class KN extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class Sc extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof Sc)return e;const t=new Sc;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}}class Xc extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,Xc.prototype);debugger}}function Vr(s){const e=this;let t=!1,i;return function(){return t||(t=!0,i=s.apply(e,arguments)),i}}function qN(s){return typeof s.dispose=="function"&&s.dispose.length===0}function Pt(s){if(je.is(s)){const e=[];for(const t of s)if(t)try{t.dispose()}catch(i){e.push(i)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(s)?[]:s}else if(s)return s.dispose(),s}function Ys(...s){return tt(()=>Pt(s))}function tt(s){return{dispose:Vr(()=>{s()})}}class be{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{Pt(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?be.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(e),e}}be.DISABLE_DISPOSED_WARNING=!1;class Y{constructor(){this._store=new be,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)}}Y.None=Object.freeze({dispose(){}});class wm{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){var t;this._isDisposed||e===this._value||((t=this._value)===null||t===void 0||t.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){var e;this._isDisposed=!0,(e=this._value)===null||e===void 0||e.dispose(),this._value=void 0}clearAndLeak(){const e=this._value;return this._value=void 0,e}}class xU{constructor(e){this._disposable=e,this._counter=1}acquire(){return this._counter++,this}release(){return--this._counter===0&&this._disposable.dispose(),this}}class GN{constructor(){this.dispose=()=>{},this.unset=()=>{},this.isset=()=>!1}set(e){let t=e;return this.unset=()=>t=void 0,this.isset=()=>t!==void 0,this.dispose=()=>{t&&(t(),t=void 0)},this}}class ZN{constructor(e){this.object=e}dispose(){}}class JD{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{Pt(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,t,i=!1){var n;this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),i||(n=this._store.get(e))===null||n===void 0||n.dispose(),this._store.set(e,t)}[Symbol.iterator](){return this._store[Symbol.iterator]()}}const YN=It.performance&&typeof It.performance.now=="function";class Jc{static create(e=!0){return new Jc(e)}constructor(e){this._highResolution=YN&&e,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}_now(){return this._highResolution?It.performance.now():Date.now()}}var fe;(function(s){s.None=()=>Y.None;function e(S,L){return h(S,()=>{},0,void 0,!0,void 0,L)}s.defer=e;function t(S){return(L,A=null,R)=>{let P=!1,W;return W=S(Z=>{if(!P)return W?W.dispose():P=!0,L.call(A,Z)},null,R),P&&W.dispose(),W}}s.once=t;function i(S,L,A){return c((R,P=null,W)=>S(Z=>R.call(P,L(Z)),null,W),A)}s.map=i;function n(S,L,A){return c((R,P=null,W)=>S(Z=>{L(Z),R.call(P,Z)},null,W),A)}s.forEach=n;function o(S,L,A){return c((R,P=null,W)=>S(Z=>L(Z)&&R.call(P,Z),null,W),A)}s.filter=o;function r(S){return S}s.signal=r;function a(...S){return(L,A=null,R)=>Ys(...S.map(P=>P(W=>L.call(A,W),null,R)))}s.any=a;function l(S,L,A,R){let P=A;return i(S,W=>(P=L(P,W),P),R)}s.reduce=l;function c(S,L){let A;const R={onWillAddFirstListener(){A=S(P.fire,P)},onDidRemoveLastListener(){A==null||A.dispose()}},P=new B(R);return L==null||L.add(P),P.event}function h(S,L,A=100,R=!1,P=!1,W,Z){let ee,le,Ce,ye=0,ue;const Te={leakWarningThreshold:W,onWillAddFirstListener(){ee=S(te=>{ye++,le=L(le,te),R&&!Ce&&(Ne.fire(le),le=void 0),ue=()=>{const re=le;le=void 0,Ce=void 0,(!R||ye>1)&&Ne.fire(re),ye=0},typeof A=="number"?(clearTimeout(Ce),Ce=setTimeout(ue,A)):Ce===void 0&&(Ce=0,queueMicrotask(ue))})},onWillRemoveListener(){P&&ye>0&&(ue==null||ue())},onDidRemoveLastListener(){ue=void 0,ee.dispose()}},Ne=new B(Te);return Z==null||Z.add(Ne),Ne.event}s.debounce=h;function u(S,L=0,A){return s.debounce(S,(R,P)=>R?(R.push(P),R):[P],L,void 0,!0,void 0,A)}s.accumulate=u;function d(S,L=(R,P)=>R===P,A){let R=!0,P;return o(S,W=>{const Z=R||!L(W,P);return R=!1,P=W,Z},A)}s.latch=d;function f(S,L,A){return[s.filter(S,L,A),s.filter(S,R=>!L(R),A)]}s.split=f;function g(S,L=!1,A=[]){let R=A.slice(),P=S(ee=>{R?R.push(ee):Z.fire(ee)});const W=()=>{R==null||R.forEach(ee=>Z.fire(ee)),R=null},Z=new B({onWillAddFirstListener(){P||(P=S(ee=>Z.fire(ee)))},onDidAddFirstListener(){R&&(L?setTimeout(W):W())},onDidRemoveLastListener(){P&&P.dispose(),P=null}});return Z.event}s.buffer=g;class m{constructor(L){this.event=L,this.disposables=new be}map(L){return new m(i(this.event,L,this.disposables))}forEach(L){return new m(n(this.event,L,this.disposables))}filter(L){return new m(o(this.event,L,this.disposables))}reduce(L,A){return new m(l(this.event,L,A,this.disposables))}latch(){return new m(d(this.event,void 0,this.disposables))}debounce(L,A=100,R=!1,P=!1,W){return new m(h(this.event,L,A,R,P,W,this.disposables))}on(L,A,R){return this.event(L,A,R)}once(L,A,R){return t(this.event)(L,A,R)}dispose(){this.disposables.dispose()}}function _(S){return new m(S)}s.chain=_;function C(S,L,A=R=>R){const R=(...ee)=>Z.fire(A(...ee)),P=()=>S.on(L,R),W=()=>S.removeListener(L,R),Z=new B({onWillAddFirstListener:P,onDidRemoveLastListener:W});return Z.event}s.fromNodeEventEmitter=C;function b(S,L,A=R=>R){const R=(...ee)=>Z.fire(A(...ee)),P=()=>S.addEventListener(L,R),W=()=>S.removeEventListener(L,R),Z=new B({onWillAddFirstListener:P,onDidRemoveLastListener:W});return Z.event}s.fromDOMEventEmitter=b;function v(S){return new Promise(L=>t(S)(L))}s.toPromise=v;function y(S,L){return L(void 0),S(A=>L(A))}s.runAndSubscribe=y;function x(S,L){let A=null;function R(W){A==null||A.dispose(),A=new be,L(W,A)}R(void 0);const P=S(W=>R(W));return tt(()=>{P.dispose(),A==null||A.dispose()})}s.runAndSubscribeWithStore=x;class I{constructor(L,A){this.obs=L,this._counter=0,this._hasChanged=!1;const R={onWillAddFirstListener:()=>{L.addObserver(this)},onDidRemoveLastListener:()=>{L.removeObserver(this)}};this.emitter=new B(R),A&&A.add(this.emitter)}beginUpdate(L){this._counter++}handleChange(L,A){this._hasChanged=!0}endUpdate(L){--this._counter===0&&this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this.obs.get()))}}function D(S,L){return new I(S,L).emitter.event}s.fromObservable=D})(fe||(fe={}));class yc{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${yc._idPool++}`,yc.all.add(this)}start(e){this._stopWatch=new Jc(!0),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}}}yc.all=new Set;yc._idPool=0;let QN=-1;class XN{constructor(e,t=Math.random().toString(18).slice(2,5)){this.threshold=e,this.name=t,this._warnCountdown=0}dispose(){var e;(e=this._stacks)===null||e===void 0||e.clear()}check(e,t){const i=this.threshold;if(i<=0||t{const o=this._stacks.get(e.value)||0;this._stacks.set(e.value,o-1)}}}class eC{static create(){var e;return new eC((e=new Error().stack)!==null&&e!==void 0?e:"")}constructor(e){this.value=e}print(){console.warn(this.value.split(` `).slice(2).join(` `))}}class JN{constructor(e,t,i){this.callback=e,this.callbackThis=t,this.stack=i,this.subscription=new GN}invoke(e){this.callback.call(this.callbackThis,e)}}let B=class{constructor(e){var t,i,n,o,r;this._disposed=!1,this._options=e,this._leakageMon=!((t=this._options)===null||t===void 0)&&t.leakWarningThreshold?new XN((n=(i=this._options)===null||i===void 0?void 0:i.leakWarningThreshold)!==null&&n!==void 0?n:QN):void 0,this._perfMon=!((o=this._options)===null||o===void 0)&&o._profName?new yc(this._options._profName):void 0,this._deliveryQueue=(r=this._options)===null||r===void 0?void 0:r.deliveryQueue}dispose(){var e,t,i,n;this._disposed||(this._disposed=!0,this._listeners&&this._listeners.clear(),(e=this._deliveryQueue)===null||e===void 0||e.clear(this),(i=(t=this._options)===null||t===void 0?void 0:t.onDidRemoveLastListener)===null||i===void 0||i.call(t),(n=this._leakageMon)===null||n===void 0||n.dispose())}get event(){return this._event||(this._event=(e,t,i)=>{var n,o,r;if(this._listeners||(this._listeners=new xi),this._leakageMon&&this._listeners.size>this._leakageMon.threshold*3)return console.warn(`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far`),Y.None;const a=this._listeners.isEmpty();a&&(!((n=this._options)===null||n===void 0)&&n.onWillAddFirstListener)&&this._options.onWillAddFirstListener(this);let l,c;this._leakageMon&&this._listeners.size>=Math.ceil(this._leakageMon.threshold*.2)&&(c=eC.create(),l=this._leakageMon.check(c,this._listeners.size+1));const h=new JN(e,t,c),u=this._listeners.push(h);a&&(!((o=this._options)===null||o===void 0)&&o.onDidAddFirstListener)&&this._options.onDidAddFirstListener(this),!((r=this._options)===null||r===void 0)&&r.onDidAddListener&&this._options.onDidAddListener(this,e,t);const d=h.subscription.set(()=>{var f,g;l==null||l(),this._disposed||((g=(f=this._options)===null||f===void 0?void 0:f.onWillRemoveListener)===null||g===void 0||g.call(f,this),u(),this._options&&this._options.onDidRemoveLastListener&&(this._listeners&&!this._listeners.isEmpty()||this._options.onDidRemoveLastListener(this)))});return i instanceof be?i.add(d):Array.isArray(i)&&i.push(d),d}),this._event}fire(e){var t,i;if(this._listeners){this._deliveryQueue||(this._deliveryQueue=new eT);for(const n of this._listeners)this._deliveryQueue.push(this,n,e);(t=this._perfMon)===null||t===void 0||t.start(this._deliveryQueue.size),this._deliveryQueue.deliver(),(i=this._perfMon)===null||i===void 0||i.stop()}}hasListeners(){return this._listeners?!this._listeners.isEmpty():!1}};class ek{constructor(){this._queue=new xi}get size(){return this._queue.size}push(e,t,i){this._queue.push(new tT(e,t,i))}clear(e){const t=new xi;for(const i of this._queue)i.emitter!==e&&t.push(i);this._queue=t}deliver(){for(;this._queue.size>0;){const e=this._queue.shift();try{e.listener.invoke(e.event)}catch(t){Tt(t)}}}}class eT extends ek{clear(e){this._queue.clear()}}class tT{constructor(e,t,i){this.emitter=e,this.listener=t,this.event=i}}class og extends B{constructor(e){super(e),this._isPaused=0,this._eventQueue=new xi,this._mergeFn=e==null?void 0:e.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0)if(this._mergeFn){if(this._eventQueue.size>0){const e=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(e))}}else for(;!this._isPaused&&this._eventQueue.size!==0;)super.fire(this._eventQueue.shift())}fire(e){this._listeners&&(this._isPaused!==0?this._eventQueue.push(e):super.fire(e))}}class tk extends og{constructor(e){var t;super(e),this._delay=(t=e.delay)!==null&&t!==void 0?t:100}fire(e){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(e)}}class iT extends B{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=e==null?void 0:e.merge}fire(e){this.hasListeners()&&(this._queuedEvents.push(e),this._queuedEvents.length===1&&queueMicrotask(()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach(t=>super.fire(t)),this._queuedEvents=[]}))}}class IU{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new B({onWillAddFirstListener:()=>this.onFirstListenerAdd(),onDidRemoveLastListener:()=>this.onLastListenerRemove()})}get event(){return this.emitter.event}add(e){const t={event:e,listener:null};return this.events.push(t),this.hasListeners&&this.hook(t),tt(Vr(()=>{this.hasListeners&&this.unhook(t);const n=this.events.indexOf(t);this.events.splice(n,1)}))}onFirstListenerAdd(){this.hasListeners=!0,this.events.forEach(e=>this.hook(e))}onLastListenerRemove(){this.hasListeners=!1,this.events.forEach(e=>this.unhook(e))}hook(e){e.listener=e.event(t=>this.emitter.fire(t))}unhook(e){e.listener&&e.listener.dispose(),e.listener=null}dispose(){this.emitter.dispose()}}class tC{constructor(){this.buffers=[]}wrapEvent(e){return(t,i,n)=>e(o=>{const r=this.buffers[this.buffers.length-1];r?r.push(()=>t.call(i,o)):t.call(i,o)},void 0,n)}bufferEvents(e){const t=[];this.buffers.push(t);const i=e();return this.buffers.pop(),t.forEach(n=>n()),i}}class uw{constructor(){this.listening=!1,this.inputEvent=fe.None,this.inputEventListener=Y.None,this.emitter=new B({onDidAddFirstListener:()=>{this.listening=!0,this.inputEventListener=this.inputEvent(this.emitter.fire,this.emitter)},onDidRemoveLastListener:()=>{this.listening=!1,this.inputEventListener.dispose()}}),this.event=this.emitter.event}set input(e){this.inputEvent=e,this.listening&&(this.inputEventListener.dispose(),this.inputEventListener=e(this.emitter.fire,this.emitter))}dispose(){this.inputEventListener.dispose(),this.emitter.dispose()}}const ik=Object.freeze(function(s,e){const t=setTimeout(s.bind(e),0);return{dispose(){clearTimeout(t)}}});var Yn;(function(s){function e(t){return t===s.None||t===s.Cancelled||t instanceof Af?!0:!t||typeof t!="object"?!1:typeof t.isCancellationRequested=="boolean"&&typeof t.onCancellationRequested=="function"}s.isCancellationToken=e,s.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:fe.None}),s.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:ik})})(Yn||(Yn={}));class Af{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?ik:(this._emitter||(this._emitter=new B),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}let Zr=class{constructor(e){this._token=void 0,this._parentListener=void 0,this._parentListener=e&&e.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new Af),this._token}cancel(){this._token?this._token instanceof Af&&this._token.cancel():this._token=Yn.Cancelled}dispose(e=!1){var t;e&&this.cancel(),(t=this._parentListener)===null||t===void 0||t.dispose(),this._token?this._token instanceof Af&&this._token.dispose():this._token=Yn.None}};class iC{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 Mf=new iC,e0=new iC,t0=new iC,nk=new Array(230),nT=Object.create(null),sT=Object.create(null),nC=[];for(let s=0;s<=193;s++)nC[s]=-1;(function(){const s="",e=[[0,1,0,"None",0,"unknown",0,"VK_UNKNOWN",s,s],[0,1,1,"Hyper",0,s,0,s,s,s],[0,1,2,"Super",0,s,0,s,s,s],[0,1,3,"Fn",0,s,0,s,s,s],[0,1,4,"FnLock",0,s,0,s,s,s],[0,1,5,"Suspend",0,s,0,s,s,s],[0,1,6,"Resume",0,s,0,s,s,s],[0,1,7,"Turbo",0,s,0,s,s,s],[0,1,8,"Sleep",0,s,0,"VK_SLEEP",s,s],[0,1,9,"WakeUp",0,s,0,s,s,s],[31,0,10,"KeyA",31,"A",65,"VK_A",s,s],[32,0,11,"KeyB",32,"B",66,"VK_B",s,s],[33,0,12,"KeyC",33,"C",67,"VK_C",s,s],[34,0,13,"KeyD",34,"D",68,"VK_D",s,s],[35,0,14,"KeyE",35,"E",69,"VK_E",s,s],[36,0,15,"KeyF",36,"F",70,"VK_F",s,s],[37,0,16,"KeyG",37,"G",71,"VK_G",s,s],[38,0,17,"KeyH",38,"H",72,"VK_H",s,s],[39,0,18,"KeyI",39,"I",73,"VK_I",s,s],[40,0,19,"KeyJ",40,"J",74,"VK_J",s,s],[41,0,20,"KeyK",41,"K",75,"VK_K",s,s],[42,0,21,"KeyL",42,"L",76,"VK_L",s,s],[43,0,22,"KeyM",43,"M",77,"VK_M",s,s],[44,0,23,"KeyN",44,"N",78,"VK_N",s,s],[45,0,24,"KeyO",45,"O",79,"VK_O",s,s],[46,0,25,"KeyP",46,"P",80,"VK_P",s,s],[47,0,26,"KeyQ",47,"Q",81,"VK_Q",s,s],[48,0,27,"KeyR",48,"R",82,"VK_R",s,s],[49,0,28,"KeyS",49,"S",83,"VK_S",s,s],[50,0,29,"KeyT",50,"T",84,"VK_T",s,s],[51,0,30,"KeyU",51,"U",85,"VK_U",s,s],[52,0,31,"KeyV",52,"V",86,"VK_V",s,s],[53,0,32,"KeyW",53,"W",87,"VK_W",s,s],[54,0,33,"KeyX",54,"X",88,"VK_X",s,s],[55,0,34,"KeyY",55,"Y",89,"VK_Y",s,s],[56,0,35,"KeyZ",56,"Z",90,"VK_Z",s,s],[22,0,36,"Digit1",22,"1",49,"VK_1",s,s],[23,0,37,"Digit2",23,"2",50,"VK_2",s,s],[24,0,38,"Digit3",24,"3",51,"VK_3",s,s],[25,0,39,"Digit4",25,"4",52,"VK_4",s,s],[26,0,40,"Digit5",26,"5",53,"VK_5",s,s],[27,0,41,"Digit6",27,"6",54,"VK_6",s,s],[28,0,42,"Digit7",28,"7",55,"VK_7",s,s],[29,0,43,"Digit8",29,"8",56,"VK_8",s,s],[30,0,44,"Digit9",30,"9",57,"VK_9",s,s],[21,0,45,"Digit0",21,"0",48,"VK_0",s,s],[3,1,46,"Enter",3,"Enter",13,"VK_RETURN",s,s],[9,1,47,"Escape",9,"Escape",27,"VK_ESCAPE",s,s],[1,1,48,"Backspace",1,"Backspace",8,"VK_BACK",s,s],[2,1,49,"Tab",2,"Tab",9,"VK_TAB",s,s],[10,1,50,"Space",10,"Space",32,"VK_SPACE",s,s],[83,0,51,"Minus",83,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[81,0,52,"Equal",81,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[87,0,53,"BracketLeft",87,"[",219,"VK_OEM_4","[","OEM_4"],[89,0,54,"BracketRight",89,"]",221,"VK_OEM_6","]","OEM_6"],[88,0,55,"Backslash",88,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,0,56,"IntlHash",0,s,0,s,s,s],[80,0,57,"Semicolon",80,";",186,"VK_OEM_1",";","OEM_1"],[90,0,58,"Quote",90,"'",222,"VK_OEM_7","'","OEM_7"],[86,0,59,"Backquote",86,"`",192,"VK_OEM_3","`","OEM_3"],[82,0,60,"Comma",82,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[84,0,61,"Period",84,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[85,0,62,"Slash",85,"/",191,"VK_OEM_2","/","OEM_2"],[8,1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",s,s],[59,1,64,"F1",59,"F1",112,"VK_F1",s,s],[60,1,65,"F2",60,"F2",113,"VK_F2",s,s],[61,1,66,"F3",61,"F3",114,"VK_F3",s,s],[62,1,67,"F4",62,"F4",115,"VK_F4",s,s],[63,1,68,"F5",63,"F5",116,"VK_F5",s,s],[64,1,69,"F6",64,"F6",117,"VK_F6",s,s],[65,1,70,"F7",65,"F7",118,"VK_F7",s,s],[66,1,71,"F8",66,"F8",119,"VK_F8",s,s],[67,1,72,"F9",67,"F9",120,"VK_F9",s,s],[68,1,73,"F10",68,"F10",121,"VK_F10",s,s],[69,1,74,"F11",69,"F11",122,"VK_F11",s,s],[70,1,75,"F12",70,"F12",123,"VK_F12",s,s],[0,1,76,"PrintScreen",0,s,0,s,s,s],[79,1,77,"ScrollLock",79,"ScrollLock",145,"VK_SCROLL",s,s],[7,1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",s,s],[19,1,79,"Insert",19,"Insert",45,"VK_INSERT",s,s],[14,1,80,"Home",14,"Home",36,"VK_HOME",s,s],[11,1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",s,s],[20,1,82,"Delete",20,"Delete",46,"VK_DELETE",s,s],[13,1,83,"End",13,"End",35,"VK_END",s,s],[12,1,84,"PageDown",12,"PageDown",34,"VK_NEXT",s,s],[17,1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",s],[15,1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",s],[18,1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",s],[16,1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",s],[78,1,89,"NumLock",78,"NumLock",144,"VK_NUMLOCK",s,s],[108,1,90,"NumpadDivide",108,"NumPad_Divide",111,"VK_DIVIDE",s,s],[103,1,91,"NumpadMultiply",103,"NumPad_Multiply",106,"VK_MULTIPLY",s,s],[106,1,92,"NumpadSubtract",106,"NumPad_Subtract",109,"VK_SUBTRACT",s,s],[104,1,93,"NumpadAdd",104,"NumPad_Add",107,"VK_ADD",s,s],[3,1,94,"NumpadEnter",3,s,0,s,s,s],[94,1,95,"Numpad1",94,"NumPad1",97,"VK_NUMPAD1",s,s],[95,1,96,"Numpad2",95,"NumPad2",98,"VK_NUMPAD2",s,s],[96,1,97,"Numpad3",96,"NumPad3",99,"VK_NUMPAD3",s,s],[97,1,98,"Numpad4",97,"NumPad4",100,"VK_NUMPAD4",s,s],[98,1,99,"Numpad5",98,"NumPad5",101,"VK_NUMPAD5",s,s],[99,1,100,"Numpad6",99,"NumPad6",102,"VK_NUMPAD6",s,s],[100,1,101,"Numpad7",100,"NumPad7",103,"VK_NUMPAD7",s,s],[101,1,102,"Numpad8",101,"NumPad8",104,"VK_NUMPAD8",s,s],[102,1,103,"Numpad9",102,"NumPad9",105,"VK_NUMPAD9",s,s],[93,1,104,"Numpad0",93,"NumPad0",96,"VK_NUMPAD0",s,s],[107,1,105,"NumpadDecimal",107,"NumPad_Decimal",110,"VK_DECIMAL",s,s],[92,0,106,"IntlBackslash",92,"OEM_102",226,"VK_OEM_102",s,s],[58,1,107,"ContextMenu",58,"ContextMenu",93,s,s,s],[0,1,108,"Power",0,s,0,s,s,s],[0,1,109,"NumpadEqual",0,s,0,s,s,s],[71,1,110,"F13",71,"F13",124,"VK_F13",s,s],[72,1,111,"F14",72,"F14",125,"VK_F14",s,s],[73,1,112,"F15",73,"F15",126,"VK_F15",s,s],[74,1,113,"F16",74,"F16",127,"VK_F16",s,s],[75,1,114,"F17",75,"F17",128,"VK_F17",s,s],[76,1,115,"F18",76,"F18",129,"VK_F18",s,s],[77,1,116,"F19",77,"F19",130,"VK_F19",s,s],[0,1,117,"F20",0,s,0,"VK_F20",s,s],[0,1,118,"F21",0,s,0,"VK_F21",s,s],[0,1,119,"F22",0,s,0,"VK_F22",s,s],[0,1,120,"F23",0,s,0,"VK_F23",s,s],[0,1,121,"F24",0,s,0,"VK_F24",s,s],[0,1,122,"Open",0,s,0,s,s,s],[0,1,123,"Help",0,s,0,s,s,s],[0,1,124,"Select",0,s,0,s,s,s],[0,1,125,"Again",0,s,0,s,s,s],[0,1,126,"Undo",0,s,0,s,s,s],[0,1,127,"Cut",0,s,0,s,s,s],[0,1,128,"Copy",0,s,0,s,s,s],[0,1,129,"Paste",0,s,0,s,s,s],[0,1,130,"Find",0,s,0,s,s,s],[0,1,131,"AudioVolumeMute",112,"AudioVolumeMute",173,"VK_VOLUME_MUTE",s,s],[0,1,132,"AudioVolumeUp",113,"AudioVolumeUp",175,"VK_VOLUME_UP",s,s],[0,1,133,"AudioVolumeDown",114,"AudioVolumeDown",174,"VK_VOLUME_DOWN",s,s],[105,1,134,"NumpadComma",105,"NumPad_Separator",108,"VK_SEPARATOR",s,s],[110,0,135,"IntlRo",110,"ABNT_C1",193,"VK_ABNT_C1",s,s],[0,1,136,"KanaMode",0,s,0,s,s,s],[0,0,137,"IntlYen",0,s,0,s,s,s],[0,1,138,"Convert",0,s,0,s,s,s],[0,1,139,"NonConvert",0,s,0,s,s,s],[0,1,140,"Lang1",0,s,0,s,s,s],[0,1,141,"Lang2",0,s,0,s,s,s],[0,1,142,"Lang3",0,s,0,s,s,s],[0,1,143,"Lang4",0,s,0,s,s,s],[0,1,144,"Lang5",0,s,0,s,s,s],[0,1,145,"Abort",0,s,0,s,s,s],[0,1,146,"Props",0,s,0,s,s,s],[0,1,147,"NumpadParenLeft",0,s,0,s,s,s],[0,1,148,"NumpadParenRight",0,s,0,s,s,s],[0,1,149,"NumpadBackspace",0,s,0,s,s,s],[0,1,150,"NumpadMemoryStore",0,s,0,s,s,s],[0,1,151,"NumpadMemoryRecall",0,s,0,s,s,s],[0,1,152,"NumpadMemoryClear",0,s,0,s,s,s],[0,1,153,"NumpadMemoryAdd",0,s,0,s,s,s],[0,1,154,"NumpadMemorySubtract",0,s,0,s,s,s],[0,1,155,"NumpadClear",126,"Clear",12,"VK_CLEAR",s,s],[0,1,156,"NumpadClearEntry",0,s,0,s,s,s],[5,1,0,s,5,"Ctrl",17,"VK_CONTROL",s,s],[4,1,0,s,4,"Shift",16,"VK_SHIFT",s,s],[6,1,0,s,6,"Alt",18,"VK_MENU",s,s],[57,1,0,s,57,"Meta",0,"VK_COMMAND",s,s],[5,1,157,"ControlLeft",5,s,0,"VK_LCONTROL",s,s],[4,1,158,"ShiftLeft",4,s,0,"VK_LSHIFT",s,s],[6,1,159,"AltLeft",6,s,0,"VK_LMENU",s,s],[57,1,160,"MetaLeft",57,s,0,"VK_LWIN",s,s],[5,1,161,"ControlRight",5,s,0,"VK_RCONTROL",s,s],[4,1,162,"ShiftRight",4,s,0,"VK_RSHIFT",s,s],[6,1,163,"AltRight",6,s,0,"VK_RMENU",s,s],[57,1,164,"MetaRight",57,s,0,"VK_RWIN",s,s],[0,1,165,"BrightnessUp",0,s,0,s,s,s],[0,1,166,"BrightnessDown",0,s,0,s,s,s],[0,1,167,"MediaPlay",0,s,0,s,s,s],[0,1,168,"MediaRecord",0,s,0,s,s,s],[0,1,169,"MediaFastForward",0,s,0,s,s,s],[0,1,170,"MediaRewind",0,s,0,s,s,s],[114,1,171,"MediaTrackNext",119,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",s,s],[115,1,172,"MediaTrackPrevious",120,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",s,s],[116,1,173,"MediaStop",121,"MediaStop",178,"VK_MEDIA_STOP",s,s],[0,1,174,"Eject",0,s,0,s,s,s],[117,1,175,"MediaPlayPause",122,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",s,s],[0,1,176,"MediaSelect",123,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",s,s],[0,1,177,"LaunchMail",124,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",s,s],[0,1,178,"LaunchApp2",125,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",s,s],[0,1,179,"LaunchApp1",0,s,0,"VK_MEDIA_LAUNCH_APP1",s,s],[0,1,180,"SelectTask",0,s,0,s,s,s],[0,1,181,"LaunchScreenSaver",0,s,0,s,s,s],[0,1,182,"BrowserSearch",115,"BrowserSearch",170,"VK_BROWSER_SEARCH",s,s],[0,1,183,"BrowserHome",116,"BrowserHome",172,"VK_BROWSER_HOME",s,s],[112,1,184,"BrowserBack",117,"BrowserBack",166,"VK_BROWSER_BACK",s,s],[113,1,185,"BrowserForward",118,"BrowserForward",167,"VK_BROWSER_FORWARD",s,s],[0,1,186,"BrowserStop",0,s,0,"VK_BROWSER_STOP",s,s],[0,1,187,"BrowserRefresh",0,s,0,"VK_BROWSER_REFRESH",s,s],[0,1,188,"BrowserFavorites",0,s,0,"VK_BROWSER_FAVORITES",s,s],[0,1,189,"ZoomToggle",0,s,0,s,s,s],[0,1,190,"MailReply",0,s,0,s,s,s],[0,1,191,"MailForward",0,s,0,s,s,s],[0,1,192,"MailSend",0,s,0,s,s,s],[109,1,0,s,109,"KeyInComposition",229,s,s,s],[111,1,0,s,111,"ABNT_C2",194,"VK_ABNT_C2",s,s],[91,1,0,s,91,"OEM_8",223,"VK_OEM_8",s,s],[0,1,0,s,0,s,0,"VK_KANA",s,s],[0,1,0,s,0,s,0,"VK_HANGUL",s,s],[0,1,0,s,0,s,0,"VK_JUNJA",s,s],[0,1,0,s,0,s,0,"VK_FINAL",s,s],[0,1,0,s,0,s,0,"VK_HANJA",s,s],[0,1,0,s,0,s,0,"VK_KANJI",s,s],[0,1,0,s,0,s,0,"VK_CONVERT",s,s],[0,1,0,s,0,s,0,"VK_NONCONVERT",s,s],[0,1,0,s,0,s,0,"VK_ACCEPT",s,s],[0,1,0,s,0,s,0,"VK_MODECHANGE",s,s],[0,1,0,s,0,s,0,"VK_SELECT",s,s],[0,1,0,s,0,s,0,"VK_PRINT",s,s],[0,1,0,s,0,s,0,"VK_EXECUTE",s,s],[0,1,0,s,0,s,0,"VK_SNAPSHOT",s,s],[0,1,0,s,0,s,0,"VK_HELP",s,s],[0,1,0,s,0,s,0,"VK_APPS",s,s],[0,1,0,s,0,s,0,"VK_PROCESSKEY",s,s],[0,1,0,s,0,s,0,"VK_PACKET",s,s],[0,1,0,s,0,s,0,"VK_DBE_SBCSCHAR",s,s],[0,1,0,s,0,s,0,"VK_DBE_DBCSCHAR",s,s],[0,1,0,s,0,s,0,"VK_ATTN",s,s],[0,1,0,s,0,s,0,"VK_CRSEL",s,s],[0,1,0,s,0,s,0,"VK_EXSEL",s,s],[0,1,0,s,0,s,0,"VK_EREOF",s,s],[0,1,0,s,0,s,0,"VK_PLAY",s,s],[0,1,0,s,0,s,0,"VK_ZOOM",s,s],[0,1,0,s,0,s,0,"VK_NONAME",s,s],[0,1,0,s,0,s,0,"VK_PA1",s,s],[0,1,0,s,0,s,0,"VK_OEM_CLEAR",s,s]],t=[],i=[];for(const n of e){const[o,r,a,l,c,h,u,d,f,g]=n;if(i[a]||(i[a]=!0,nT[l]=a,sT[l.toLowerCase()]=a,r&&(nC[a]=c)),!t[c]){if(t[c]=!0,!h)throw new Error(`String representation missing for key code ${c} around scan code ${l}`);Mf.define(c,h),e0.define(c,f||h),t0.define(c,g||f||h)}u&&(nk[u]=c)}})();var mr;(function(s){function e(a){return Mf.keyCodeToStr(a)}s.toString=e;function t(a){return Mf.strToKeyCode(a)}s.fromString=t;function i(a){return e0.keyCodeToStr(a)}s.toUserSettingsUS=i;function n(a){return t0.keyCodeToStr(a)}s.toUserSettingsGeneral=n;function o(a){return e0.strToKeyCode(a)||t0.strToKeyCode(a)}s.fromUserSettings=o;function r(a){if(a>=93&&a<=108)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return Mf.keyCodeToStr(a)}s.toElectronAccelerator=r})(mr||(mr={}));function oT(s,e){const t=(e&65535)<<16>>>0;return(s|t)>>>0}let ic;if(typeof It.vscode<"u"&&typeof It.vscode.process<"u"){const s=It.vscode.process;ic={get platform(){return s.platform},get arch(){return s.arch},get env(){return s.env},cwd(){return s.cwd()}}}else typeof process<"u"?ic={get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd(){return process.env.VSCODE_CWD||process.cwd()}}:ic={get platform(){return Ii?"win32":$e?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const rg=ic.cwd,rT=ic.env,aT=ic.platform,lT=65,cT=97,hT=90,uT=122,Er=46,Li=47,an=92,Zo=58,dT=63;class sk extends Error{constructor(e,t,i){let n;typeof t=="string"&&t.indexOf("not ")===0?(n="must not be",t=t.replace(/^not /,"")):n="must be";const o=e.indexOf(".")!==-1?"property":"argument";let r=`The "${e}" ${o} ${n} of type ${t}`;r+=`. Received type ${typeof i}`,super(r),this.code="ERR_INVALID_ARG_TYPE"}}function fT(s,e){if(s===null||typeof s!="object")throw new sk(e,"Object",s)}function Zt(s,e){if(typeof s!="string")throw new sk(e,"string",s)}const Yr=aT==="win32";function Ge(s){return s===Li||s===an}function i0(s){return s===Li}function Yo(s){return s>=lT&&s<=hT||s>=cT&&s<=uT}function ag(s,e,t,i){let n="",o=0,r=-1,a=0,l=0;for(let c=0;c<=s.length;++c){if(c2){const h=n.lastIndexOf(t);h===-1?(n="",o=0):(n=n.slice(0,h),o=n.length-1-n.lastIndexOf(t)),r=c,a=0;continue}else if(n.length!==0){n="",o=0,r=c,a=0;continue}}e&&(n+=n.length>0?`${t}..`:"..",o=2)}else n.length>0?n+=`${t}${s.slice(r+1,c)}`:n=s.slice(r+1,c),o=c-r-1;r=c,a=0}else l===Er&&a!==-1?++a:a=-1}return n}function ok(s,e){fT(e,"pathObject");const t=e.dir||e.root,i=e.base||`${e.name||""}${e.ext||""}`;return t?t===e.root?`${t}${i}`:`${t}${s}${i}`:i}const Qi={resolve(...s){let e="",t="",i=!1;for(let n=s.length-1;n>=-1;n--){let o;if(n>=0){if(o=s[n],Zt(o,"path"),o.length===0)continue}else e.length===0?o=rg():(o=rT[`=${e}`]||rg(),(o===void 0||o.slice(0,2).toLowerCase()!==e.toLowerCase()&&o.charCodeAt(2)===an)&&(o=`${e}\\`));const r=o.length;let a=0,l="",c=!1;const h=o.charCodeAt(0);if(r===1)Ge(h)&&(a=1,c=!0);else if(Ge(h))if(c=!0,Ge(o.charCodeAt(1))){let u=2,d=u;for(;u2&&Ge(o.charCodeAt(2))&&(c=!0,a=3));if(l.length>0)if(e.length>0){if(l.toLowerCase()!==e.toLowerCase())continue}else e=l;if(i){if(e.length>0)break}else if(t=`${o.slice(a)}\\${t}`,i=c,c&&e.length>0)break}return t=ag(t,!i,"\\",Ge),i?`${e}\\${t}`:`${e}${t}`||"."},normalize(s){Zt(s,"path");const e=s.length;if(e===0)return".";let t=0,i,n=!1;const o=s.charCodeAt(0);if(e===1)return i0(o)?"\\":s;if(Ge(o))if(n=!0,Ge(s.charCodeAt(1))){let a=2,l=a;for(;a2&&Ge(s.charCodeAt(2))&&(n=!0,t=3));let r=t0&&Ge(s.charCodeAt(e-1))&&(r+="\\"),i===void 0?n?`\\${r}`:r:n?`${i}\\${r}`:`${i}${r}`},isAbsolute(s){Zt(s,"path");const e=s.length;if(e===0)return!1;const t=s.charCodeAt(0);return Ge(t)||e>2&&Yo(t)&&s.charCodeAt(1)===Zo&&Ge(s.charCodeAt(2))},join(...s){if(s.length===0)return".";let e,t;for(let o=0;o0&&(e===void 0?e=t=r:e+=`\\${r}`)}if(e===void 0)return".";let i=!0,n=0;if(typeof t=="string"&&Ge(t.charCodeAt(0))){++n;const o=t.length;o>1&&Ge(t.charCodeAt(1))&&(++n,o>2&&(Ge(t.charCodeAt(2))?++n:i=!1))}if(i){for(;n=2&&(e=`\\${e.slice(n)}`)}return Qi.normalize(e)},relative(s,e){if(Zt(s,"from"),Zt(e,"to"),s===e)return"";const t=Qi.resolve(s),i=Qi.resolve(e);if(t===i||(s=t.toLowerCase(),e=i.toLowerCase(),s===e))return"";let n=0;for(;nn&&s.charCodeAt(o-1)===an;)o--;const r=o-n;let a=0;for(;aa&&e.charCodeAt(l-1)===an;)l--;const c=l-a,h=rh){if(e.charCodeAt(a+d)===an)return i.slice(a+d+1);if(d===2)return i.slice(a+d)}r>h&&(s.charCodeAt(n+d)===an?u=d:d===2&&(u=3)),u===-1&&(u=0)}let f="";for(d=n+u+1;d<=o;++d)(d===o||s.charCodeAt(d)===an)&&(f+=f.length===0?"..":"\\..");return a+=u,f.length>0?`${f}${i.slice(a,l)}`:(i.charCodeAt(a)===an&&++a,i.slice(a,l))},toNamespacedPath(s){if(typeof s!="string"||s.length===0)return s;const e=Qi.resolve(s);if(e.length<=2)return s;if(e.charCodeAt(0)===an){if(e.charCodeAt(1)===an){const t=e.charCodeAt(2);if(t!==dT&&t!==Er)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Yo(e.charCodeAt(0))&&e.charCodeAt(1)===Zo&&e.charCodeAt(2)===an)return`\\\\?\\${e}`;return s},dirname(s){Zt(s,"path");const e=s.length;if(e===0)return".";let t=-1,i=0;const n=s.charCodeAt(0);if(e===1)return Ge(n)?s:".";if(Ge(n)){if(t=i=1,Ge(s.charCodeAt(1))){let a=2,l=a;for(;a2&&Ge(s.charCodeAt(2))?3:2,i=t);let o=-1,r=!0;for(let a=e-1;a>=i;--a)if(Ge(s.charCodeAt(a))){if(!r){o=a;break}}else r=!1;if(o===-1){if(t===-1)return".";o=t}return s.slice(0,o)},basename(s,e){e!==void 0&&Zt(e,"ext"),Zt(s,"path");let t=0,i=-1,n=!0,o;if(s.length>=2&&Yo(s.charCodeAt(0))&&s.charCodeAt(1)===Zo&&(t=2),e!==void 0&&e.length>0&&e.length<=s.length){if(e===s)return"";let r=e.length-1,a=-1;for(o=s.length-1;o>=t;--o){const l=s.charCodeAt(o);if(Ge(l)){if(!n){t=o+1;break}}else a===-1&&(n=!1,a=o+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=o):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=s.length),s.slice(t,i)}for(o=s.length-1;o>=t;--o)if(Ge(s.charCodeAt(o))){if(!n){t=o+1;break}}else i===-1&&(n=!1,i=o+1);return i===-1?"":s.slice(t,i)},extname(s){Zt(s,"path");let e=0,t=-1,i=0,n=-1,o=!0,r=0;s.length>=2&&s.charCodeAt(1)===Zo&&Yo(s.charCodeAt(0))&&(e=i=2);for(let a=s.length-1;a>=e;--a){const l=s.charCodeAt(a);if(Ge(l)){if(!o){i=a+1;break}continue}n===-1&&(o=!1,n=a+1),l===Er?t===-1?t=a:r!==1&&(r=1):t!==-1&&(r=-1)}return t===-1||n===-1||r===0||r===1&&t===n-1&&t===i+1?"":s.slice(t,n)},format:ok.bind(null,"\\"),parse(s){Zt(s,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(s.length===0)return e;const t=s.length;let i=0,n=s.charCodeAt(0);if(t===1)return Ge(n)?(e.root=e.dir=s,e):(e.base=e.name=s,e);if(Ge(n)){if(i=1,Ge(s.charCodeAt(1))){let u=2,d=u;for(;u0&&(e.root=s.slice(0,i));let o=-1,r=i,a=-1,l=!0,c=s.length-1,h=0;for(;c>=i;--c){if(n=s.charCodeAt(c),Ge(n)){if(!l){r=c+1;break}continue}a===-1&&(l=!1,a=c+1),n===Er?o===-1?o=c:h!==1&&(h=1):o!==-1&&(h=-1)}return a!==-1&&(o===-1||h===0||h===1&&o===a-1&&o===r+1?e.base=e.name=s.slice(r,a):(e.name=s.slice(r,o),e.base=s.slice(r,a),e.ext=s.slice(o,a))),r>0&&r!==i?e.dir=s.slice(0,r-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},gT=(()=>{if(Yr){const s=/\\/g;return()=>{const e=rg().replace(s,"/");return e.slice(e.indexOf("/"))}}return()=>rg()})(),Bt={resolve(...s){let e="",t=!1;for(let i=s.length-1;i>=-1&&!t;i--){const n=i>=0?s[i]:gT();Zt(n,"path"),n.length!==0&&(e=`${n}/${e}`,t=n.charCodeAt(0)===Li)}return e=ag(e,!t,"/",i0),t?`/${e}`:e.length>0?e:"."},normalize(s){if(Zt(s,"path"),s.length===0)return".";const e=s.charCodeAt(0)===Li,t=s.charCodeAt(s.length-1)===Li;return s=ag(s,!e,"/",i0),s.length===0?e?"/":t?"./":".":(t&&(s+="/"),e?`/${s}`:s)},isAbsolute(s){return Zt(s,"path"),s.length>0&&s.charCodeAt(0)===Li},join(...s){if(s.length===0)return".";let e;for(let t=0;t0&&(e===void 0?e=i:e+=`/${i}`)}return e===void 0?".":Bt.normalize(e)},relative(s,e){if(Zt(s,"from"),Zt(e,"to"),s===e||(s=Bt.resolve(s),e=Bt.resolve(e),s===e))return"";const t=1,i=s.length,n=i-t,o=1,r=e.length-o,a=na){if(e.charCodeAt(o+c)===Li)return e.slice(o+c+1);if(c===0)return e.slice(o+c)}else n>a&&(s.charCodeAt(t+c)===Li?l=c:c===0&&(l=0));let h="";for(c=t+l+1;c<=i;++c)(c===i||s.charCodeAt(c)===Li)&&(h+=h.length===0?"..":"/..");return`${h}${e.slice(o+l)}`},toNamespacedPath(s){return s},dirname(s){if(Zt(s,"path"),s.length===0)return".";const e=s.charCodeAt(0)===Li;let t=-1,i=!0;for(let n=s.length-1;n>=1;--n)if(s.charCodeAt(n)===Li){if(!i){t=n;break}}else i=!1;return t===-1?e?"/":".":e&&t===1?"//":s.slice(0,t)},basename(s,e){e!==void 0&&Zt(e,"ext"),Zt(s,"path");let t=0,i=-1,n=!0,o;if(e!==void 0&&e.length>0&&e.length<=s.length){if(e===s)return"";let r=e.length-1,a=-1;for(o=s.length-1;o>=0;--o){const l=s.charCodeAt(o);if(l===Li){if(!n){t=o+1;break}}else a===-1&&(n=!1,a=o+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=o):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=s.length),s.slice(t,i)}for(o=s.length-1;o>=0;--o)if(s.charCodeAt(o)===Li){if(!n){t=o+1;break}}else i===-1&&(n=!1,i=o+1);return i===-1?"":s.slice(t,i)},extname(s){Zt(s,"path");let e=-1,t=0,i=-1,n=!0,o=0;for(let r=s.length-1;r>=0;--r){const a=s.charCodeAt(r);if(a===Li){if(!n){t=r+1;break}continue}i===-1&&(n=!1,i=r+1),a===Er?e===-1?e=r:o!==1&&(o=1):e!==-1&&(o=-1)}return e===-1||i===-1||o===0||o===1&&e===i-1&&e===t+1?"":s.slice(e,i)},format:ok.bind(null,"/"),parse(s){Zt(s,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(s.length===0)return e;const t=s.charCodeAt(0)===Li;let i;t?(e.root="/",i=1):i=0;let n=-1,o=0,r=-1,a=!0,l=s.length-1,c=0;for(;l>=i;--l){const h=s.charCodeAt(l);if(h===Li){if(!a){o=l+1;break}continue}r===-1&&(a=!1,r=l+1),h===Er?n===-1?n=l:c!==1&&(c=1):n!==-1&&(c=-1)}if(r!==-1){const h=o===0&&t?1:o;n===-1||c===0||c===1&&n===r-1&&n===o+1?e.base=e.name=s.slice(h,r):(e.name=s.slice(h,n),e.base=s.slice(h,r),e.ext=s.slice(n,r))}return o>0?e.dir=s.slice(0,o-1):t&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};Bt.win32=Qi.win32=Qi;Bt.posix=Qi.posix=Bt;const rk=Yr?Qi.normalize:Bt.normalize,mT=Yr?Qi.resolve:Bt.resolve,pT=Yr?Qi.relative:Bt.relative,_T=Yr?Qi.dirname:Bt.dirname,sC=Yr?Qi.basename:Bt.basename,bT=Yr?Qi.extname:Bt.extname,Ir=Yr?Qi.sep:Bt.sep,CT=/^\w[\w\d+.-]*$/,vT=/^\//,wT=/^\/\//;function dw(s,e){if(!s.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${s.authority}", path: "${s.path}", query: "${s.query}", fragment: "${s.fragment}"}`);if(s.scheme&&!CT.test(s.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(s.path){if(s.authority){if(!vT.test(s.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(wT.test(s.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function ST(s,e){return!s&&!e?"file":s}function yT(s,e){switch(s){case"https":case"http":case"file":e?e[0]!==us&&(e=us+e):e=us;break}return e}const kt="",us="/",LT=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class Be{static isUri(e){return e instanceof Be?!0:e?typeof e.authority=="string"&&typeof e.fragment=="string"&&typeof e.path=="string"&&typeof e.query=="string"&&typeof e.scheme=="string"&&typeof e.fsPath=="string"&&typeof e.with=="function"&&typeof e.toString=="function":!1}constructor(e,t,i,n,o,r=!1){typeof e=="object"?(this.scheme=e.scheme||kt,this.authority=e.authority||kt,this.path=e.path||kt,this.query=e.query||kt,this.fragment=e.fragment||kt):(this.scheme=ST(e,r),this.authority=t||kt,this.path=yT(this.scheme,i||kt),this.query=n||kt,this.fragment=o||kt,dw(this,r))}get fsPath(){return lg(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:o,fragment:r}=e;return t===void 0?t=this.scheme:t===null&&(t=kt),i===void 0?i=this.authority:i===null&&(i=kt),n===void 0?n=this.path:n===null&&(n=kt),o===void 0?o=this.query:o===null&&(o=kt),r===void 0?r=this.fragment:r===null&&(r=kt),t===this.scheme&&i===this.authority&&n===this.path&&o===this.query&&r===this.fragment?this:new _l(t,i,n,o,r)}static parse(e,t=!1){const i=LT.exec(e);return i?new _l(i[2]||kt,Hd(i[4]||kt),Hd(i[5]||kt),Hd(i[7]||kt),Hd(i[9]||kt),t):new _l(kt,kt,kt,kt,kt)}static file(e){let t=kt;if(Ii&&(e=e.replace(/\\/g,us)),e[0]===us&&e[1]===us){const i=e.indexOf(us,2);i===-1?(t=e.substring(2),e=us):(t=e.substring(2,i),e=e.substring(i)||us)}return new _l("file",t,e,kt,kt)}static from(e){const t=new _l(e.scheme,e.authority,e.path,e.query,e.fragment);return dw(t,!0),t}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return Ii&&e.scheme==="file"?i=Be.file(Qi.join(lg(e,!0),...t)).path:i=Bt.join(e.path,...t),e.with({path:i})}toString(e=!1){return n0(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof Be)return e;{const t=new _l(e);return t._formatted=e.external,t._fsPath=e._sep===ak?e.fsPath:null,t}}else return e}}const ak=Ii?1:void 0;let _l=class extends Be{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=lg(this,!1)),this._fsPath}toString(e=!1){return e?n0(this,!0):(this._formatted||(this._formatted=n0(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=ak),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 lk={[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 fw(s,e,t){let i,n=-1;for(let o=0;o=97&&r<=122||r>=65&&r<=90||r>=48&&r<=57||r===45||r===46||r===95||r===126||e&&r===47||t&&r===91||t&&r===93||t&&r===58)n!==-1&&(i+=encodeURIComponent(s.substring(n,o)),n=-1),i!==void 0&&(i+=s.charAt(o));else{i===void 0&&(i=s.substr(0,o));const a=lk[r];a!==void 0?(n!==-1&&(i+=encodeURIComponent(s.substring(n,o)),n=-1),i+=a):n===-1&&(n=o)}}return n!==-1&&(i+=encodeURIComponent(s.substring(n))),i!==void 0?i:s}function DT(s){let e;for(let t=0;t1&&s.scheme==="file"?t=`//${s.authority}${s.path}`:s.path.charCodeAt(0)===47&&(s.path.charCodeAt(1)>=65&&s.path.charCodeAt(1)<=90||s.path.charCodeAt(1)>=97&&s.path.charCodeAt(1)<=122)&&s.path.charCodeAt(2)===58?e?t=s.path.substr(1):t=s.path[1].toLowerCase()+s.path.substr(2):t=s.path,Ii&&(t=t.replace(/\//g,"\\")),t}function n0(s,e){const t=e?DT:fw;let i="",{scheme:n,authority:o,path:r,query:a,fragment:l}=s;if(n&&(i+=n,i+=":"),(o||n==="file")&&(i+=us,i+=us),o){let c=o.indexOf("@");if(c!==-1){const h=o.substr(0,c);o=o.substr(c+1),c=h.lastIndexOf(":"),c===-1?i+=t(h,!1,!1):(i+=t(h.substr(0,c),!1,!1),i+=":",i+=t(h.substr(c+1),!1,!0)),i+="@"}o=o.toLowerCase(),c=o.lastIndexOf(":"),c===-1?i+=t(o,!1,!0):(i+=t(o.substr(0,c),!1,!0),i+=o.substr(c))}if(r){if(r.length>=3&&r.charCodeAt(0)===47&&r.charCodeAt(2)===58){const c=r.charCodeAt(1);c>=65&&c<=90&&(r=`/${String.fromCharCode(c+32)}:${r.substr(3)}`)}else if(r.length>=2&&r.charCodeAt(1)===58){const c=r.charCodeAt(0);c>=65&&c<=90&&(r=`${String.fromCharCode(c+32)}:${r.substr(2)}`)}i+=t(r,!0,!1)}return a&&(i+="?",i+=t(a,!1,!1)),l&&(i+="#",i+=e?l:fw(l,!1,!1)),i}function ck(s){try{return decodeURIComponent(s)}catch{return s.length>3?s.substr(0,3)+ck(s.substr(3)):s}}const gw=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Hd(s){return s.match(gw)?s.replace(gw,e=>ck(e)):s}let z=class{constructor(e,t){this.lineNumber=e,this.column=t}with(e=this.lineNumber,t=this.column){return e===this.lineNumber&&t===this.column?this:new z(e,t)}delta(e=0,t=0){return this.with(this.lineNumber+e,this.column+t)}equals(e){return z.equals(this,e)}static equals(e,t){return!e&&!t?!0:!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return z.isBefore(this,e)}static isBefore(e,t){return e.lineNumberi||e===i&&t>n?(this.startLineNumber=i,this.startColumn=n,this.endLineNumber=e,this.endColumn=t):(this.startLineNumber=e,this.startColumn=t,this.endLineNumber=i,this.endColumn=n)}isEmpty(){return N.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return N.containsPosition(this,e)}static containsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.columne.endColumn)}static strictContainsPosition(e,t){return!(t.lineNumbere.endLineNumber||t.lineNumber===e.startLineNumber&&t.column<=e.startColumn||t.lineNumber===e.endLineNumber&&t.column>=e.endColumn)}containsRange(e){return N.containsRange(this,e)}static containsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumne.endColumn)}strictContainsRange(e){return N.strictContainsRange(this,e)}static strictContainsRange(e,t){return!(t.startLineNumbere.endLineNumber||t.endLineNumber>e.endLineNumber||t.startLineNumber===e.startLineNumber&&t.startColumn<=e.startColumn||t.endLineNumber===e.endLineNumber&&t.endColumn>=e.endColumn)}plusRange(e){return N.plusRange(this,e)}static plusRange(e,t){let i,n,o,r;return t.startLineNumbere.endLineNumber?(o=t.endLineNumber,r=t.endColumn):t.endLineNumber===e.endLineNumber?(o=t.endLineNumber,r=Math.max(t.endColumn,e.endColumn)):(o=e.endLineNumber,r=e.endColumn),new N(i,n,o,r)}intersectRanges(e){return N.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,o=e.endLineNumber,r=e.endColumn;const a=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,h=t.endColumn;return ic?(o=c,r=h):o===c&&(r=Math.min(r,h)),i>o||i===o&&n>r?null:new N(i,n,o,r)}equalsRange(e){return N.equalsRange(this,e)}static equalsRange(e,t){return!e&&!t?!0:!!e&&!!t&&e.startLineNumber===t.startLineNumber&&e.startColumn===t.startColumn&&e.endLineNumber===t.endLineNumber&&e.endColumn===t.endColumn}getEndPosition(){return N.getEndPosition(this)}static getEndPosition(e){return new z(e.endLineNumber,e.endColumn)}getStartPosition(){return N.getStartPosition(this)}static getStartPosition(e){return new z(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new N(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new N(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return N.collapseToStart(this)}static collapseToStart(e){return new N(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return N.collapseToEnd(this)}static collapseToEnd(e){return new N(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new N(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}static fromPositions(e,t=e){return new N(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new N(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):null}static isIRange(e){return e&&typeof e.startLineNumber=="number"&&typeof e.startColumn=="number"&&typeof e.endLineNumber=="number"&&typeof e.endColumn=="number"}static areIntersectingOrTouching(e,t){return!(e.endLineNumbere.startLineNumber}toJSON(){return this}},Oe=class extends N{constructor(e,t,i,n){super(e,t,i,n),this.selectionStartLineNumber=e,this.selectionStartColumn=t,this.positionLineNumber=i,this.positionColumn=n}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(e){return Oe.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 this.getDirection()===0?new Oe(this.startLineNumber,this.startColumn,e,t):new Oe(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new z(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new z(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return this.getDirection()===0?new Oe(e,t,this.endLineNumber,this.endColumn):new Oe(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Oe(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return t===0?new Oe(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Oe(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Oe(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 i=0,n=e.length;i{this._map.get(e)===t&&(this._map.delete(e),this.fire([e]))})}registerFactory(e,t){var i;(i=this._factories.get(e))===null||i===void 0||i.dispose();const n=new xT(this,e,t);return this._factories.set(e,n),tt(()=>{const o=this._factories.get(e);!o||o!==n||(this._factories.delete(e),o.dispose())})}getOrCreate(e){return o0(this,void 0,void 0,function*(){const t=this.get(e);if(t)return t;const i=this._factories.get(e);return!i||i.isResolved?null:(yield i.resolve(),this.get(e))})}get(e){return this._map.get(e)||null}isResolved(e){if(this.get(e))return!0;const i=this._factories.get(e);return!!(!i||i.isResolved)}setColorMap(e){this._colorMap=e,this._onDidChange.fire({changedLanguages:Array.from(this._map.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}};class xT extends Y{get isResolved(){return this._isResolved}constructor(e,t,i){super(),this._registry=e,this._languageId=t,this._factory=i,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}resolve(){return o0(this,void 0,void 0,function*(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise})}_create(){return o0(this,void 0,void 0,function*(){const e=yield Promise.resolve(this._factory.createTokenizationSupport());this._isResolved=!0,e&&!this._isDisposed&&this._register(this._registry.register(this._languageId,e))})}}let yu=class{constructor(e,t,i){this.offset=e,this.type=t,this.language=i,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}};class oC{constructor(e,t){this.tokens=e,this.endState=t,this._tokenizationResultBrand=void 0}}class Sm{constructor(e,t){this.tokens=e,this.endState=t,this._encodedTokenizationResultBrand=void 0}}var mw;(function(s){const e=new Map;e.set(0,ie.symbolMethod),e.set(1,ie.symbolFunction),e.set(2,ie.symbolConstructor),e.set(3,ie.symbolField),e.set(4,ie.symbolVariable),e.set(5,ie.symbolClass),e.set(6,ie.symbolStruct),e.set(7,ie.symbolInterface),e.set(8,ie.symbolModule),e.set(9,ie.symbolProperty),e.set(10,ie.symbolEvent),e.set(11,ie.symbolOperator),e.set(12,ie.symbolUnit),e.set(13,ie.symbolValue),e.set(15,ie.symbolEnum),e.set(14,ie.symbolConstant),e.set(15,ie.symbolEnum),e.set(16,ie.symbolEnumMember),e.set(17,ie.symbolKeyword),e.set(27,ie.symbolSnippet),e.set(18,ie.symbolText),e.set(19,ie.symbolColor),e.set(20,ie.symbolFile),e.set(21,ie.symbolReference),e.set(22,ie.symbolCustomColor),e.set(23,ie.symbolFolder),e.set(24,ie.symbolTypeParameter),e.set(25,ie.account),e.set(26,ie.issues);function t(o){let r=e.get(o);return r||(console.info("No codicon found for CompletionItemKind "+o),r=ie.symbolProperty),r}s.toIcon=t;const i=new Map;i.set("method",0),i.set("function",1),i.set("constructor",2),i.set("field",3),i.set("variable",4),i.set("class",5),i.set("struct",6),i.set("interface",7),i.set("module",8),i.set("property",9),i.set("event",10),i.set("operator",11),i.set("unit",12),i.set("value",13),i.set("constant",14),i.set("enum",15),i.set("enum-member",16),i.set("enumMember",16),i.set("keyword",17),i.set("snippet",27),i.set("text",18),i.set("color",19),i.set("file",20),i.set("reference",21),i.set("customcolor",22),i.set("folder",23),i.set("type-parameter",24),i.set("typeParameter",24),i.set("account",25),i.set("issue",26);function n(o,r){let a=i.get(o);return typeof a>"u"&&!r&&(a=9),a}s.fromString=n})(mw||(mw={}));var pw;(function(s){s[s.Automatic=0]="Automatic",s[s.Explicit=1]="Explicit"})(pw||(pw={}));var _w;(function(s){s[s.Invoke=1]="Invoke",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.ContentChange=3]="ContentChange"})(_w||(_w={}));var bw;(function(s){s[s.Text=0]="Text",s[s.Read=1]="Read",s[s.Write=2]="Write"})(bw||(bw={}));function FU(s){return s&&Be.isUri(s.uri)&&N.isIRange(s.range)&&(N.isIRange(s.originSelectionRange)||N.isIRange(s.targetSelectionRange))}var Cw;(function(s){const e=new Map;e.set(0,ie.symbolFile),e.set(1,ie.symbolModule),e.set(2,ie.symbolNamespace),e.set(3,ie.symbolPackage),e.set(4,ie.symbolClass),e.set(5,ie.symbolMethod),e.set(6,ie.symbolProperty),e.set(7,ie.symbolField),e.set(8,ie.symbolConstructor),e.set(9,ie.symbolEnum),e.set(10,ie.symbolInterface),e.set(11,ie.symbolFunction),e.set(12,ie.symbolVariable),e.set(13,ie.symbolConstant),e.set(14,ie.symbolString),e.set(15,ie.symbolNumber),e.set(16,ie.symbolBoolean),e.set(17,ie.symbolArray),e.set(18,ie.symbolObject),e.set(19,ie.symbolKey),e.set(20,ie.symbolNull),e.set(21,ie.symbolEnumMember),e.set(22,ie.symbolStruct),e.set(23,ie.symbolEvent),e.set(24,ie.symbolOperator),e.set(25,ie.symbolTypeParameter);function t(i){let n=e.get(i);return n||(console.info("No codicon found for SymbolKind "+i),n=ie.symbolProperty),n}s.toIcon=t})(Cw||(Cw={}));class jn{static fromValue(e){switch(e){case"comment":return jn.Comment;case"imports":return jn.Imports;case"region":return jn.Region}return new jn(e)}constructor(e){this.value=e}}jn.Comment=new jn("comment");jn.Imports=new jn("imports");jn.Region=new jn("region");var vw;(function(s){function e(t){return!t||typeof t!="object"?!1:typeof t.id=="string"&&typeof t.title=="string"}s.is=e})(vw||(vw={}));var ww;(function(s){s[s.Type=1]="Type",s[s.Parameter=2]="Parameter"})(ww||(ww={}));const Rt=new kT;var r0;(function(s){s[s.Unknown=0]="Unknown",s[s.Disabled=1]="Disabled",s[s.Enabled=2]="Enabled"})(r0||(r0={}));var a0;(function(s){s[s.Invoke=1]="Invoke",s[s.Auto=2]="Auto"})(a0||(a0={}));var l0;(function(s){s[s.None=0]="None",s[s.KeepWhitespace=1]="KeepWhitespace",s[s.InsertAsSnippet=4]="InsertAsSnippet"})(l0||(l0={}));var c0;(function(s){s[s.Method=0]="Method",s[s.Function=1]="Function",s[s.Constructor=2]="Constructor",s[s.Field=3]="Field",s[s.Variable=4]="Variable",s[s.Class=5]="Class",s[s.Struct=6]="Struct",s[s.Interface=7]="Interface",s[s.Module=8]="Module",s[s.Property=9]="Property",s[s.Event=10]="Event",s[s.Operator=11]="Operator",s[s.Unit=12]="Unit",s[s.Value=13]="Value",s[s.Constant=14]="Constant",s[s.Enum=15]="Enum",s[s.EnumMember=16]="EnumMember",s[s.Keyword=17]="Keyword",s[s.Text=18]="Text",s[s.Color=19]="Color",s[s.File=20]="File",s[s.Reference=21]="Reference",s[s.Customcolor=22]="Customcolor",s[s.Folder=23]="Folder",s[s.TypeParameter=24]="TypeParameter",s[s.User=25]="User",s[s.Issue=26]="Issue",s[s.Snippet=27]="Snippet"})(c0||(c0={}));var h0;(function(s){s[s.Deprecated=1]="Deprecated"})(h0||(h0={}));var u0;(function(s){s[s.Invoke=0]="Invoke",s[s.TriggerCharacter=1]="TriggerCharacter",s[s.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(u0||(u0={}));var d0;(function(s){s[s.EXACT=0]="EXACT",s[s.ABOVE=1]="ABOVE",s[s.BELOW=2]="BELOW"})(d0||(d0={}));var f0;(function(s){s[s.NotSet=0]="NotSet",s[s.ContentFlush=1]="ContentFlush",s[s.RecoverFromMarkers=2]="RecoverFromMarkers",s[s.Explicit=3]="Explicit",s[s.Paste=4]="Paste",s[s.Undo=5]="Undo",s[s.Redo=6]="Redo"})(f0||(f0={}));var g0;(function(s){s[s.LF=1]="LF",s[s.CRLF=2]="CRLF"})(g0||(g0={}));var m0;(function(s){s[s.Text=0]="Text",s[s.Read=1]="Read",s[s.Write=2]="Write"})(m0||(m0={}));var p0;(function(s){s[s.None=0]="None",s[s.Keep=1]="Keep",s[s.Brackets=2]="Brackets",s[s.Advanced=3]="Advanced",s[s.Full=4]="Full"})(p0||(p0={}));var _0;(function(s){s[s.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",s[s.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",s[s.accessibilitySupport=2]="accessibilitySupport",s[s.accessibilityPageSize=3]="accessibilityPageSize",s[s.ariaLabel=4]="ariaLabel",s[s.autoClosingBrackets=5]="autoClosingBrackets",s[s.autoClosingDelete=6]="autoClosingDelete",s[s.autoClosingOvertype=7]="autoClosingOvertype",s[s.autoClosingQuotes=8]="autoClosingQuotes",s[s.autoIndent=9]="autoIndent",s[s.automaticLayout=10]="automaticLayout",s[s.autoSurround=11]="autoSurround",s[s.bracketPairColorization=12]="bracketPairColorization",s[s.guides=13]="guides",s[s.codeLens=14]="codeLens",s[s.codeLensFontFamily=15]="codeLensFontFamily",s[s.codeLensFontSize=16]="codeLensFontSize",s[s.colorDecorators=17]="colorDecorators",s[s.colorDecoratorsLimit=18]="colorDecoratorsLimit",s[s.columnSelection=19]="columnSelection",s[s.comments=20]="comments",s[s.contextmenu=21]="contextmenu",s[s.copyWithSyntaxHighlighting=22]="copyWithSyntaxHighlighting",s[s.cursorBlinking=23]="cursorBlinking",s[s.cursorSmoothCaretAnimation=24]="cursorSmoothCaretAnimation",s[s.cursorStyle=25]="cursorStyle",s[s.cursorSurroundingLines=26]="cursorSurroundingLines",s[s.cursorSurroundingLinesStyle=27]="cursorSurroundingLinesStyle",s[s.cursorWidth=28]="cursorWidth",s[s.disableLayerHinting=29]="disableLayerHinting",s[s.disableMonospaceOptimizations=30]="disableMonospaceOptimizations",s[s.domReadOnly=31]="domReadOnly",s[s.dragAndDrop=32]="dragAndDrop",s[s.dropIntoEditor=33]="dropIntoEditor",s[s.emptySelectionClipboard=34]="emptySelectionClipboard",s[s.experimentalWhitespaceRendering=35]="experimentalWhitespaceRendering",s[s.extraEditorClassName=36]="extraEditorClassName",s[s.fastScrollSensitivity=37]="fastScrollSensitivity",s[s.find=38]="find",s[s.fixedOverflowWidgets=39]="fixedOverflowWidgets",s[s.folding=40]="folding",s[s.foldingStrategy=41]="foldingStrategy",s[s.foldingHighlight=42]="foldingHighlight",s[s.foldingImportsByDefault=43]="foldingImportsByDefault",s[s.foldingMaximumRegions=44]="foldingMaximumRegions",s[s.unfoldOnClickAfterEndOfLine=45]="unfoldOnClickAfterEndOfLine",s[s.fontFamily=46]="fontFamily",s[s.fontInfo=47]="fontInfo",s[s.fontLigatures=48]="fontLigatures",s[s.fontSize=49]="fontSize",s[s.fontWeight=50]="fontWeight",s[s.fontVariations=51]="fontVariations",s[s.formatOnPaste=52]="formatOnPaste",s[s.formatOnType=53]="formatOnType",s[s.glyphMargin=54]="glyphMargin",s[s.gotoLocation=55]="gotoLocation",s[s.hideCursorInOverviewRuler=56]="hideCursorInOverviewRuler",s[s.hover=57]="hover",s[s.inDiffEditor=58]="inDiffEditor",s[s.inlineSuggest=59]="inlineSuggest",s[s.letterSpacing=60]="letterSpacing",s[s.lightbulb=61]="lightbulb",s[s.lineDecorationsWidth=62]="lineDecorationsWidth",s[s.lineHeight=63]="lineHeight",s[s.lineNumbers=64]="lineNumbers",s[s.lineNumbersMinChars=65]="lineNumbersMinChars",s[s.linkedEditing=66]="linkedEditing",s[s.links=67]="links",s[s.matchBrackets=68]="matchBrackets",s[s.minimap=69]="minimap",s[s.mouseStyle=70]="mouseStyle",s[s.mouseWheelScrollSensitivity=71]="mouseWheelScrollSensitivity",s[s.mouseWheelZoom=72]="mouseWheelZoom",s[s.multiCursorMergeOverlapping=73]="multiCursorMergeOverlapping",s[s.multiCursorModifier=74]="multiCursorModifier",s[s.multiCursorPaste=75]="multiCursorPaste",s[s.multiCursorLimit=76]="multiCursorLimit",s[s.occurrencesHighlight=77]="occurrencesHighlight",s[s.overviewRulerBorder=78]="overviewRulerBorder",s[s.overviewRulerLanes=79]="overviewRulerLanes",s[s.padding=80]="padding",s[s.parameterHints=81]="parameterHints",s[s.peekWidgetDefaultFocus=82]="peekWidgetDefaultFocus",s[s.definitionLinkOpensInPeek=83]="definitionLinkOpensInPeek",s[s.quickSuggestions=84]="quickSuggestions",s[s.quickSuggestionsDelay=85]="quickSuggestionsDelay",s[s.readOnly=86]="readOnly",s[s.renameOnType=87]="renameOnType",s[s.renderControlCharacters=88]="renderControlCharacters",s[s.renderFinalNewline=89]="renderFinalNewline",s[s.renderLineHighlight=90]="renderLineHighlight",s[s.renderLineHighlightOnlyWhenFocus=91]="renderLineHighlightOnlyWhenFocus",s[s.renderValidationDecorations=92]="renderValidationDecorations",s[s.renderWhitespace=93]="renderWhitespace",s[s.revealHorizontalRightPadding=94]="revealHorizontalRightPadding",s[s.roundedSelection=95]="roundedSelection",s[s.rulers=96]="rulers",s[s.scrollbar=97]="scrollbar",s[s.scrollBeyondLastColumn=98]="scrollBeyondLastColumn",s[s.scrollBeyondLastLine=99]="scrollBeyondLastLine",s[s.scrollPredominantAxis=100]="scrollPredominantAxis",s[s.selectionClipboard=101]="selectionClipboard",s[s.selectionHighlight=102]="selectionHighlight",s[s.selectOnLineNumbers=103]="selectOnLineNumbers",s[s.showFoldingControls=104]="showFoldingControls",s[s.showUnused=105]="showUnused",s[s.snippetSuggestions=106]="snippetSuggestions",s[s.smartSelect=107]="smartSelect",s[s.smoothScrolling=108]="smoothScrolling",s[s.stickyScroll=109]="stickyScroll",s[s.stickyTabStops=110]="stickyTabStops",s[s.stopRenderingLineAfter=111]="stopRenderingLineAfter",s[s.suggest=112]="suggest",s[s.suggestFontSize=113]="suggestFontSize",s[s.suggestLineHeight=114]="suggestLineHeight",s[s.suggestOnTriggerCharacters=115]="suggestOnTriggerCharacters",s[s.suggestSelection=116]="suggestSelection",s[s.tabCompletion=117]="tabCompletion",s[s.tabIndex=118]="tabIndex",s[s.unicodeHighlighting=119]="unicodeHighlighting",s[s.unusualLineTerminators=120]="unusualLineTerminators",s[s.useShadowDOM=121]="useShadowDOM",s[s.useTabStops=122]="useTabStops",s[s.wordBreak=123]="wordBreak",s[s.wordSeparators=124]="wordSeparators",s[s.wordWrap=125]="wordWrap",s[s.wordWrapBreakAfterCharacters=126]="wordWrapBreakAfterCharacters",s[s.wordWrapBreakBeforeCharacters=127]="wordWrapBreakBeforeCharacters",s[s.wordWrapColumn=128]="wordWrapColumn",s[s.wordWrapOverride1=129]="wordWrapOverride1",s[s.wordWrapOverride2=130]="wordWrapOverride2",s[s.wrappingIndent=131]="wrappingIndent",s[s.wrappingStrategy=132]="wrappingStrategy",s[s.showDeprecated=133]="showDeprecated",s[s.inlayHints=134]="inlayHints",s[s.editorClassName=135]="editorClassName",s[s.pixelRatio=136]="pixelRatio",s[s.tabFocusMode=137]="tabFocusMode",s[s.layoutInfo=138]="layoutInfo",s[s.wrappingInfo=139]="wrappingInfo"})(_0||(_0={}));var b0;(function(s){s[s.TextDefined=0]="TextDefined",s[s.LF=1]="LF",s[s.CRLF=2]="CRLF"})(b0||(b0={}));var C0;(function(s){s[s.LF=0]="LF",s[s.CRLF=1]="CRLF"})(C0||(C0={}));var v0;(function(s){s[s.None=0]="None",s[s.Indent=1]="Indent",s[s.IndentOutdent=2]="IndentOutdent",s[s.Outdent=3]="Outdent"})(v0||(v0={}));var w0;(function(s){s[s.Both=0]="Both",s[s.Right=1]="Right",s[s.Left=2]="Left",s[s.None=3]="None"})(w0||(w0={}));var S0;(function(s){s[s.Type=1]="Type",s[s.Parameter=2]="Parameter"})(S0||(S0={}));var y0;(function(s){s[s.Automatic=0]="Automatic",s[s.Explicit=1]="Explicit"})(y0||(y0={}));var L0;(function(s){s[s.DependsOnKbLayout=-1]="DependsOnKbLayout",s[s.Unknown=0]="Unknown",s[s.Backspace=1]="Backspace",s[s.Tab=2]="Tab",s[s.Enter=3]="Enter",s[s.Shift=4]="Shift",s[s.Ctrl=5]="Ctrl",s[s.Alt=6]="Alt",s[s.PauseBreak=7]="PauseBreak",s[s.CapsLock=8]="CapsLock",s[s.Escape=9]="Escape",s[s.Space=10]="Space",s[s.PageUp=11]="PageUp",s[s.PageDown=12]="PageDown",s[s.End=13]="End",s[s.Home=14]="Home",s[s.LeftArrow=15]="LeftArrow",s[s.UpArrow=16]="UpArrow",s[s.RightArrow=17]="RightArrow",s[s.DownArrow=18]="DownArrow",s[s.Insert=19]="Insert",s[s.Delete=20]="Delete",s[s.Digit0=21]="Digit0",s[s.Digit1=22]="Digit1",s[s.Digit2=23]="Digit2",s[s.Digit3=24]="Digit3",s[s.Digit4=25]="Digit4",s[s.Digit5=26]="Digit5",s[s.Digit6=27]="Digit6",s[s.Digit7=28]="Digit7",s[s.Digit8=29]="Digit8",s[s.Digit9=30]="Digit9",s[s.KeyA=31]="KeyA",s[s.KeyB=32]="KeyB",s[s.KeyC=33]="KeyC",s[s.KeyD=34]="KeyD",s[s.KeyE=35]="KeyE",s[s.KeyF=36]="KeyF",s[s.KeyG=37]="KeyG",s[s.KeyH=38]="KeyH",s[s.KeyI=39]="KeyI",s[s.KeyJ=40]="KeyJ",s[s.KeyK=41]="KeyK",s[s.KeyL=42]="KeyL",s[s.KeyM=43]="KeyM",s[s.KeyN=44]="KeyN",s[s.KeyO=45]="KeyO",s[s.KeyP=46]="KeyP",s[s.KeyQ=47]="KeyQ",s[s.KeyR=48]="KeyR",s[s.KeyS=49]="KeyS",s[s.KeyT=50]="KeyT",s[s.KeyU=51]="KeyU",s[s.KeyV=52]="KeyV",s[s.KeyW=53]="KeyW",s[s.KeyX=54]="KeyX",s[s.KeyY=55]="KeyY",s[s.KeyZ=56]="KeyZ",s[s.Meta=57]="Meta",s[s.ContextMenu=58]="ContextMenu",s[s.F1=59]="F1",s[s.F2=60]="F2",s[s.F3=61]="F3",s[s.F4=62]="F4",s[s.F5=63]="F5",s[s.F6=64]="F6",s[s.F7=65]="F7",s[s.F8=66]="F8",s[s.F9=67]="F9",s[s.F10=68]="F10",s[s.F11=69]="F11",s[s.F12=70]="F12",s[s.F13=71]="F13",s[s.F14=72]="F14",s[s.F15=73]="F15",s[s.F16=74]="F16",s[s.F17=75]="F17",s[s.F18=76]="F18",s[s.F19=77]="F19",s[s.NumLock=78]="NumLock",s[s.ScrollLock=79]="ScrollLock",s[s.Semicolon=80]="Semicolon",s[s.Equal=81]="Equal",s[s.Comma=82]="Comma",s[s.Minus=83]="Minus",s[s.Period=84]="Period",s[s.Slash=85]="Slash",s[s.Backquote=86]="Backquote",s[s.BracketLeft=87]="BracketLeft",s[s.Backslash=88]="Backslash",s[s.BracketRight=89]="BracketRight",s[s.Quote=90]="Quote",s[s.OEM_8=91]="OEM_8",s[s.IntlBackslash=92]="IntlBackslash",s[s.Numpad0=93]="Numpad0",s[s.Numpad1=94]="Numpad1",s[s.Numpad2=95]="Numpad2",s[s.Numpad3=96]="Numpad3",s[s.Numpad4=97]="Numpad4",s[s.Numpad5=98]="Numpad5",s[s.Numpad6=99]="Numpad6",s[s.Numpad7=100]="Numpad7",s[s.Numpad8=101]="Numpad8",s[s.Numpad9=102]="Numpad9",s[s.NumpadMultiply=103]="NumpadMultiply",s[s.NumpadAdd=104]="NumpadAdd",s[s.NUMPAD_SEPARATOR=105]="NUMPAD_SEPARATOR",s[s.NumpadSubtract=106]="NumpadSubtract",s[s.NumpadDecimal=107]="NumpadDecimal",s[s.NumpadDivide=108]="NumpadDivide",s[s.KEY_IN_COMPOSITION=109]="KEY_IN_COMPOSITION",s[s.ABNT_C1=110]="ABNT_C1",s[s.ABNT_C2=111]="ABNT_C2",s[s.AudioVolumeMute=112]="AudioVolumeMute",s[s.AudioVolumeUp=113]="AudioVolumeUp",s[s.AudioVolumeDown=114]="AudioVolumeDown",s[s.BrowserSearch=115]="BrowserSearch",s[s.BrowserHome=116]="BrowserHome",s[s.BrowserBack=117]="BrowserBack",s[s.BrowserForward=118]="BrowserForward",s[s.MediaTrackNext=119]="MediaTrackNext",s[s.MediaTrackPrevious=120]="MediaTrackPrevious",s[s.MediaStop=121]="MediaStop",s[s.MediaPlayPause=122]="MediaPlayPause",s[s.LaunchMediaPlayer=123]="LaunchMediaPlayer",s[s.LaunchMail=124]="LaunchMail",s[s.LaunchApp2=125]="LaunchApp2",s[s.Clear=126]="Clear",s[s.MAX_VALUE=127]="MAX_VALUE"})(L0||(L0={}));var D0;(function(s){s[s.Hint=1]="Hint",s[s.Info=2]="Info",s[s.Warning=4]="Warning",s[s.Error=8]="Error"})(D0||(D0={}));var k0;(function(s){s[s.Unnecessary=1]="Unnecessary",s[s.Deprecated=2]="Deprecated"})(k0||(k0={}));var x0;(function(s){s[s.Inline=1]="Inline",s[s.Gutter=2]="Gutter"})(x0||(x0={}));var E0;(function(s){s[s.UNKNOWN=0]="UNKNOWN",s[s.TEXTAREA=1]="TEXTAREA",s[s.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",s[s.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",s[s.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",s[s.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",s[s.CONTENT_TEXT=6]="CONTENT_TEXT",s[s.CONTENT_EMPTY=7]="CONTENT_EMPTY",s[s.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",s[s.CONTENT_WIDGET=9]="CONTENT_WIDGET",s[s.OVERVIEW_RULER=10]="OVERVIEW_RULER",s[s.SCROLLBAR=11]="SCROLLBAR",s[s.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",s[s.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(E0||(E0={}));var I0;(function(s){s[s.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",s[s.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",s[s.TOP_CENTER=2]="TOP_CENTER"})(I0||(I0={}));var N0;(function(s){s[s.Left=1]="Left",s[s.Center=2]="Center",s[s.Right=4]="Right",s[s.Full=7]="Full"})(N0||(N0={}));var T0;(function(s){s[s.Left=0]="Left",s[s.Right=1]="Right",s[s.None=2]="None",s[s.LeftOfInjectedText=3]="LeftOfInjectedText",s[s.RightOfInjectedText=4]="RightOfInjectedText"})(T0||(T0={}));var A0;(function(s){s[s.Off=0]="Off",s[s.On=1]="On",s[s.Relative=2]="Relative",s[s.Interval=3]="Interval",s[s.Custom=4]="Custom"})(A0||(A0={}));var M0;(function(s){s[s.None=0]="None",s[s.Text=1]="Text",s[s.Blocks=2]="Blocks"})(M0||(M0={}));var R0;(function(s){s[s.Smooth=0]="Smooth",s[s.Immediate=1]="Immediate"})(R0||(R0={}));var O0;(function(s){s[s.Auto=1]="Auto",s[s.Hidden=2]="Hidden",s[s.Visible=3]="Visible"})(O0||(O0={}));var P0;(function(s){s[s.LTR=0]="LTR",s[s.RTL=1]="RTL"})(P0||(P0={}));var F0;(function(s){s[s.Invoke=1]="Invoke",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.ContentChange=3]="ContentChange"})(F0||(F0={}));var B0;(function(s){s[s.File=0]="File",s[s.Module=1]="Module",s[s.Namespace=2]="Namespace",s[s.Package=3]="Package",s[s.Class=4]="Class",s[s.Method=5]="Method",s[s.Property=6]="Property",s[s.Field=7]="Field",s[s.Constructor=8]="Constructor",s[s.Enum=9]="Enum",s[s.Interface=10]="Interface",s[s.Function=11]="Function",s[s.Variable=12]="Variable",s[s.Constant=13]="Constant",s[s.String=14]="String",s[s.Number=15]="Number",s[s.Boolean=16]="Boolean",s[s.Array=17]="Array",s[s.Object=18]="Object",s[s.Key=19]="Key",s[s.Null=20]="Null",s[s.EnumMember=21]="EnumMember",s[s.Struct=22]="Struct",s[s.Event=23]="Event",s[s.Operator=24]="Operator",s[s.TypeParameter=25]="TypeParameter"})(B0||(B0={}));var W0;(function(s){s[s.Deprecated=1]="Deprecated"})(W0||(W0={}));var V0;(function(s){s[s.Hidden=0]="Hidden",s[s.Blink=1]="Blink",s[s.Smooth=2]="Smooth",s[s.Phase=3]="Phase",s[s.Expand=4]="Expand",s[s.Solid=5]="Solid"})(V0||(V0={}));var H0;(function(s){s[s.Line=1]="Line",s[s.Block=2]="Block",s[s.Underline=3]="Underline",s[s.LineThin=4]="LineThin",s[s.BlockOutline=5]="BlockOutline",s[s.UnderlineThin=6]="UnderlineThin"})(H0||(H0={}));var z0;(function(s){s[s.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",s[s.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",s[s.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",s[s.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(z0||(z0={}));var U0;(function(s){s[s.None=0]="None",s[s.Same=1]="Same",s[s.Indent=2]="Indent",s[s.DeepIndent=3]="DeepIndent"})(U0||(U0={}));let fd=class{static chord(e,t){return oT(e,t)}};fd.CtrlCmd=2048;fd.Shift=1024;fd.Alt=512;fd.WinCtrl=256;function uk(){return{editor:void 0,languages:void 0,CancellationTokenSource:Zr,Emitter:B,KeyCode:L0,KeyMod:fd,Position:z,Range:N,Selection:Oe,SelectionDirection:P0,MarkerSeverity:D0,MarkerTag:k0,Uri:Be,Token:yu}}class ET{constructor(e){this.fn=e,this.lastCache=void 0,this.lastArgKey=void 0}get(e){const t=JSON.stringify(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this.fn(e)),this.lastCache}}class Sw{get cachedValues(){return this._map}constructor(e){this.fn=e,this._map=new Map}get(e){if(this._map.has(e))return this._map.get(e);const t=this.fn(e);return this._map.set(e,t),t}}class eh{constructor(e){this.executor=e,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(e){this._error=e}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}var dk;function IT(s){return!s||typeof s!="string"?!0:s.trim().length===0}const NT=/{(\d+)}/g;function cg(s,...e){return e.length===0?s:s.replace(NT,function(t,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=e.length?t:e[n]})}function rC(s){return s.replace(/[<>&]/g,function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}})}function Bo(s){return s.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function WU(s,e=" "){const t=gd(s,e);return fk(t,e)}function gd(s,e){if(!s||!e)return s;const t=e.length;if(t===0||s.length===0)return s;let i=0;for(;s.indexOf(e,i)===i;)i=i+t;return s.substring(i)}function fk(s,e){if(!s||!e)return s;const t=e.length,i=s.length;if(t===0||i===0)return s;let n=i,o=-1;for(;o=s.lastIndexOf(e,n-1),!(o===-1||o+t!==n);){if(o===0)return"";n=o}return s.substring(0,n)}function TT(s){return s.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function VU(s){return s.replace(/\*/g,"")}function gk(s,e,t={}){if(!s)throw new Error("Cannot create regex from empty string");e||(s=Bo(s)),t.wholeWord&&(/\B/.test(s.charAt(0))||(s="\\b"+s),/\B/.test(s.charAt(s.length-1))||(s=s+"\\b"));let i="";return t.global&&(i+="g"),t.matchCase||(i+="i"),t.multiline&&(i+="m"),t.unicode&&(i+="u"),new RegExp(s,i)}function AT(s){return s.source==="^"||s.source==="^$"||s.source==="$"||s.source==="^\\s*$"?!1:!!(s.exec("")&&s.lastIndex===0)}function Dp(s){return(s.global?"g":"")+(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")}function th(s){return s.split(/\r\n|\r|\n/)}function Ji(s){for(let e=0,t=s.length;e=0;t--){const i=s.charCodeAt(t);if(i!==32&&i!==9)return t}return-1}function $0(s,e){return se?1:0}function aC(s,e,t=0,i=s.length,n=0,o=e.length){for(;tc)return 1}const r=i-t,a=o-n;return ra?1:0}function yw(s,e){return md(s,e,0,s.length,0,e.length)}function md(s,e,t=0,i=s.length,n=0,o=e.length){for(;t=128||c>=128)return aC(s.toLowerCase(),e.toLowerCase(),t,i,n,o);Ol(l)&&(l-=32),Ol(c)&&(c-=32);const h=l-c;if(h!==0)return h}const r=i-t,a=o-n;return ra?1:0}function zd(s){return s>=48&&s<=57}function Ol(s){return s>=97&&s<=122}function lr(s){return s>=65&&s<=90}function Pl(s,e){return s.length===e.length&&md(s,e)===0}function lC(s,e){const t=e.length;return e.length>s.length?!1:md(s,e,0,t)===0}function j0(s,e){const t=Math.min(s.length,e.length);let i;for(i=0;i1){const i=s.charCodeAt(e-2);if(Qt(i))return cC(i,t)}return t}class hC{get offset(){return this._offset}constructor(e,t=0){this._str=e,this._len=e.length,this._offset=t}setOffset(e){this._offset=e}prevCodePoint(){const e=MT(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=hg(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class ug{get offset(){return this._iterator.offset}constructor(e,t=0){this._iterator=new hC(e,t)}nextGraphemeLength(){const e=pr.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.nextCodePoint());for(;!t.eol();){const o=t.offset,r=e.getGraphemeBreakType(t.nextCodePoint());if(Lw(n,r)){t.setOffset(o);break}n=r}return t.offset-i}prevGraphemeLength(){const e=pr.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.prevCodePoint());for(;t.offset>0;){const o=t.offset,r=e.getGraphemeBreakType(t.prevCodePoint());if(Lw(r,n)){t.setOffset(o);break}n=r}return i-t.offset}eol(){return this._iterator.eol()}}function uC(s,e){return new ug(s,e).nextGraphemeLength()}function mk(s,e){return new ug(s,e).prevGraphemeLength()}function RT(s,e){e>0&&Lc(s.charCodeAt(e))&&e--;const t=e+uC(s,e);return[t-mk(s,t),t]}let kp;function OT(){return/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/}function Lu(s){return kp||(kp=OT()),kp.test(s)}const PT=/^[\t\n\r\x20-\x7E]*$/;function dC(s){return PT.test(s)}const pk=/[\u2028\u2029]/;function _k(s){return pk.test(s)}function Hr(s){return s>=11904&&s<=55215||s>=63744&&s<=64255||s>=65281&&s<=65374}function fC(s){return s>=127462&&s<=127487||s===8986||s===8987||s===9200||s===9203||s>=9728&&s<=10175||s===11088||s===11093||s>=127744&&s<=128591||s>=128640&&s<=128764||s>=128992&&s<=129008||s>=129280&&s<=129535||s>=129648&&s<=129782}const FT=String.fromCharCode(65279);function gC(s){return!!(s&&s.length>0&&s.charCodeAt(0)===65279)}function HU(s,e=!1){return s?(e&&(s=s.replace(/\\./g,"")),s.toLowerCase()!==s):!1}function bk(s){return s=s%(2*26),s<26?String.fromCharCode(97+s):String.fromCharCode(65+s-26)}function Lw(s,e){return s===0?e!==5&&e!==7:s===2&&e===3?!1:s===4||s===2||s===3||e===4||e===2||e===3?!0:!(s===8&&(e===8||e===9||e===11||e===12)||(s===11||s===9)&&(e===9||e===10)||(s===12||s===10)&&e===10||e===5||e===13||e===7||s===1||s===13&&e===14||s===6&&e===6)}class pr{static getInstance(){return pr._INSTANCE||(pr._INSTANCE=new pr),pr._INSTANCE}constructor(){this._data=BT()}getGraphemeBreakType(e){if(e<32)return e===10?3:e===13?2:4;if(e<127)return 0;const t=this._data,i=t.length/3;let n=1;for(;n<=i;)if(et[3*n+1])n=2*n+1;else return t[3*n+2];return 0}}pr._INSTANCE=null;function BT(){return JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}function WT(s,e){if(s===0)return 0;const t=VT(s,e);if(t!==void 0)return t;const i=new hC(e,s);return i.prevCodePoint(),i.offset}function VT(s,e){const t=new hC(e,s);let i=t.prevCodePoint();for(;HT(i)||i===65039||i===8419;){if(t.offset===0)return;i=t.prevCodePoint()}if(!fC(i))return;let n=t.offset;return n>0&&t.prevCodePoint()===8205&&(n=t.offset),n}function HT(s){return 127995<=s&&s<=127999}const zU=" ";class Qn{static getInstance(e){return Qn.cache.get(Array.from(e))}static getLocales(){return Qn._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())}}dk=Qn;Qn.ambiguousCharacterData=new eh(()=>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,8218,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,8242,96,1370,96,1523,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,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,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,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,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,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,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,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,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,71922,67,71913,67,65315,67,8557,67,8450,67,8493,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,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,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,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,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,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,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,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,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,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,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,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,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,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,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,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,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,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,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,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,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,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,71919,87,71910,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,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,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,66293,90,71909,90,65338,90,8484,90,8488,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,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,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],"_default":[160,32,8211,45,65374,126,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,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,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,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,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,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,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,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,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,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,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,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,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,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,65283,35,65292,44,65307,59],"ko":[8211,45,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,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,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,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,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,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,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,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,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,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,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[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,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,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,65283,35,65307,59]}'));Qn.cache=new ET(s=>{function e(c){const h=new Map;for(let u=0;u!c.startsWith("_")&&c in n);o.length===0&&(o=["_default"]);let r;for(const c of o){const h=e(n[c]);r=i(r,h)}const a=e(n._common),l=t(a,r);return new Qn(l)});Qn._locales=new eh(()=>Object.keys(Qn.ambiguousCharacterData.value).filter(s=>!s.startsWith("_")));class Nr{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,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,12288,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]")}static getData(){return this._data||(this._data=new Set(Nr.getRawData())),this._data}static isInvisibleCharacter(e){return Nr.getData().has(e)}static get codePoints(){return Nr.getData()}}Nr._data=void 0;class q0{constructor(){this._zoomFactor=1}getZoomFactor(){return this._zoomFactor}}q0.INSTANCE=new q0;class zT extends Y{constructor(){super(),this._onDidChange=this._register(new B),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(!0),this._mediaQueryList=null,this._handleChange(!1)}_handleChange(e){var t;(t=this._mediaQueryList)===null||t===void 0||t.removeEventListener("change",this._listener),this._mediaQueryList=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),e&&this._onDidChange.fire()}}class UT extends Y{get value(){return this._value}constructor(){super(),this._onDidChange=this._register(new B),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio();const e=this._register(new zT);this._register(e.onDidChange(()=>{this._value=this._getPixelRatio(),this._onDidChange.fire(this._value)}))}_getPixelRatio(){const e=document.createElement("canvas").getContext("2d"),t=window.devicePixelRatio||1,i=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return t/i}}class $T{constructor(){this._pixelRatioMonitor=null}_getOrCreatePixelRatioMonitor(){return this._pixelRatioMonitor||(this._pixelRatioMonitor=new UT),this._pixelRatioMonitor}get value(){return this._getOrCreatePixelRatioMonitor().value}get onDidChange(){return this._getOrCreatePixelRatioMonitor().onDidChange}}function mC(s,e){typeof s=="string"&&(s=window.matchMedia(s)),s.addEventListener("change",e)}const Du=new $T;function Ck(){return q0.INSTANCE.getZoomFactor()}const ih=navigator.userAgent,Xn=ih.indexOf("Firefox")>=0,Tr=ih.indexOf("AppleWebKit")>=0,pC=ih.indexOf("Chrome")>=0,Wo=!pC&&ih.indexOf("Safari")>=0,_C=!pC&&!Wo&&Tr,jT=ih.indexOf("Electron/")>=0,vk=ih.indexOf("Android")>=0;let Rf=!1;if(window.matchMedia){const s=window.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=window.matchMedia("(display-mode: fullscreen)");Rf=s.matches,mC(s,({matches:t})=>{Rf&&e.matches||(Rf=t)})}function wk(){return Rf}const KT=Object.freeze(Object.defineProperty({__proto__:null,addMatchMediaChangeListener:mC,PixelRatio:Du,getZoomFactor:Ck,isFirefox:Xn,isWebKit:Tr,isChrome:pC,isSafari:Wo,isWebkitWebView:_C,isElectron:jT,isAndroid:vk,isStandalone:wk},Symbol.toStringTag,{value:"Module"}));class Sk{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){const t=os(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const t=os(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){const t=os(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){const t=os(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){const t=os(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){const t=os(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){const t=os(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){const t=os(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){const t=os(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){const t=os(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const t=os(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}}function os(s){return typeof s=="number"?`${s}px`:s}function He(s){return new Sk(s)}function Ei(s,e){s instanceof Sk?(s.setFontFamily(e.getMassagedFontFamily()),s.setFontWeight(e.fontWeight),s.setFontSize(e.fontSize),s.setFontFeatureSettings(e.fontFeatureSettings),s.setFontVariationSettings(e.fontVariationSettings),s.setLineHeight(e.lineHeight),s.setLetterSpacing(e.letterSpacing)):(s.style.fontFamily=e.getMassagedFontFamily(),s.style.fontWeight=e.fontWeight,s.style.fontSize=e.fontSize+"px",s.style.fontFeatureSettings=e.fontFeatureSettings,s.style.fontVariationSettings=e.fontVariationSettings,s.style.lineHeight=e.lineHeight+"px",s.style.letterSpacing=e.letterSpacing+"px")}class qT{constructor(e,t){this.chr=e,this.type=t,this.width=0}fulfill(e){this.width=e}}class bC{constructor(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}read(){this._createDomElements(),document.body.appendChild(this._container),this._readFromDomElements(),document.body.removeChild(this._container),this._container=null,this._testElements=null}_createDomElements(){const e=document.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";const t=document.createElement("div");Ei(t,this._bareFontInfo),e.appendChild(t);const i=document.createElement("div");Ei(i,this._bareFontInfo),i.style.fontWeight="bold",e.appendChild(i);const n=document.createElement("div");Ei(n,this._bareFontInfo),n.style.fontStyle="italic",e.appendChild(n);const o=[];for(const r of this._requests){let a;r.type===0&&(a=t),r.type===2&&(a=i),r.type===1&&(a=n),a.appendChild(document.createElement("br"));const l=document.createElement("span");bC._render(l,r),a.appendChild(l),o.push(l)}this._container=e,this._testElements=o}static _render(e,t){if(t.chr===" "){let i=" ";for(let n=0;n<8;n++)i+=i;e.innerText=i}else{let i=t.chr;for(let n=0;n<8;n++)i+=i;e.textContent=i}}_readFromDomElements(){for(let e=0,t=this._requests.length;e{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings()},5e3))}_evictUntrustedReadings(){const e=this._cache.getValues();let t=!1;for(const i of e)i.isTrusted||(t=!0,this._cache.remove(i));t&&this._onDidChange.fire()}readFontInfo(e){if(!this._cache.has(e)){let t=this._actualReadFontInfo(e);(t.typicalHalfwidthCharacterWidth<=2||t.typicalFullwidthCharacterWidth<=2||t.spaceWidth<=2||t.maxDigitWidth<=2)&&(t=new G0({pixelRatio:Du.value,fontFamily:t.fontFamily,fontWeight:t.fontWeight,fontSize:t.fontSize,fontFeatureSettings:t.fontFeatureSettings,fontVariationSettings:t.fontVariationSettings,lineHeight:t.lineHeight,letterSpacing:t.letterSpacing,isMonospace:t.isMonospace,typicalHalfwidthCharacterWidth:Math.max(t.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(t.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:t.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(t.spaceWidth,5),middotWidth:Math.max(t.middotWidth,5),wsmiddotWidth:Math.max(t.wsmiddotWidth,5),maxDigitWidth:Math.max(t.maxDigitWidth,5)},!1)),this._writeToCache(e,t)}return this._cache.get(e)}_createRequest(e,t,i,n){const o=new qT(e,t);return i.push(o),n==null||n.push(o),o}_actualReadFontInfo(e){const t=[],i=[],n=this._createRequest("n",0,t,i),o=this._createRequest("m",0,t,null),r=this._createRequest(" ",0,t,i),a=this._createRequest("0",0,t,i),l=this._createRequest("1",0,t,i),c=this._createRequest("2",0,t,i),h=this._createRequest("3",0,t,i),u=this._createRequest("4",0,t,i),d=this._createRequest("5",0,t,i),f=this._createRequest("6",0,t,i),g=this._createRequest("7",0,t,i),m=this._createRequest("8",0,t,i),_=this._createRequest("9",0,t,i),C=this._createRequest("→",0,t,i),b=this._createRequest("→",0,t,null),v=this._createRequest("·",0,t,i),y=this._createRequest(String.fromCharCode(11825),0,t,null),x="|/-_ilm%";for(let A=0,R=x.length;A.001){D=!1;break}}let L=!0;return D&&b.width!==S&&(L=!1),b.width>C.width&&(L=!1),new G0({pixelRatio:Du.value,fontFamily:e.fontFamily,fontWeight:e.fontWeight,fontSize:e.fontSize,fontFeatureSettings:e.fontFeatureSettings,fontVariationSettings:e.fontVariationSettings,lineHeight:e.lineHeight,letterSpacing:e.letterSpacing,isMonospace:D,typicalHalfwidthCharacterWidth:n.width,typicalFullwidthCharacterWidth:o.width,canUseHalfwidthRightwardsArrow:L,spaceWidth:r.width,middotWidth:v.width,wsmiddotWidth:y.width,maxDigitWidth:I},!0)}}class Dw{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(e){const t=e.getId();return!!this._values[t]}get(e){const t=e.getId();return this._values[t]}put(e,t){const i=e.getId();this._keys[i]=e,this._values[i]=t}remove(e){const t=e.getId();delete this._keys[t],delete this._values[t]}getValues(){return Object.keys(this._keys).map(e=>this._values[e])}}const Z0=new QT;var ms;(function(s){s.serviceIds=new Map,s.DI_TARGET="$di$target",s.DI_DEPENDENCIES="$di$dependencies";function e(t){return t[s.DI_DEPENDENCIES]||[]}s.getServiceDependencies=e})(ms||(ms={}));const Vt=Ue("instantiationService");function XT(s,e,t){e[ms.DI_TARGET]===e?e[ms.DI_DEPENDENCIES].push({id:s,index:t}):(e[ms.DI_DEPENDENCIES]=[{id:s,index:t}],e[ms.DI_TARGET]=e)}function Ue(s){if(ms.serviceIds.has(s))return ms.serviceIds.get(s);const e=function(t,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");XT(e,t,n)};return e.toString=()=>s,ms.serviceIds.set(s,e),e}const Wt=Ue("codeEditorService");function Jh(s,e){if(!s)throw new Error(e?`Assertion failed (${e})`:"Assertion Failed")}function CC(s,e="Unreachable"){throw new Error(e)}function vC(s){if(!s()){debugger;s(),Tt(new Xc("Assertion Failed"))}}function yk(s,e){let t=0;for(;tthis._deserializeAndExpression(i)),null,!0)}static _deserializeAndExpression(e){const t=e.split("&&");return _r.create(t.map(i=>this._deserializeOne(i)),null,!0)}static _deserializeOne(e){if(e=e.trim(),e.indexOf("!=")>=0){const t=e.split("!=");return Dm.create(t[0].trim(),this._deserializeValue(t[1]))}if(e.indexOf("==")>=0){const t=e.split("==");return Dc.create(t[0].trim(),this._deserializeValue(t[1]))}if(e.indexOf("=~")>=0){const t=e.split("=~");return dg.create(t[0].trim(),this._deserializeRegexValue(t[1]))}if(e.indexOf(" not in ")>=0){const t=e.split(" not in ");return Lm.create(t[0].trim(),this._deserializeValue(t[1]))}if(e.indexOf(" in ")>=0){const t=e.split(" in ");return ym.create(t[0].trim(),this._deserializeValue(t[1]))}if(/^[^<=>]+>=[^<=>]+$/.test(e)){const t=e.split(">=");return Em.create(t[0].trim(),t[1].trim())}if(/^[^<=>]+>[^<=>]+$/.test(e)){const t=e.split(">");return xm.create(t[0].trim(),t[1].trim())}if(/^[^<=>]+<=[^<=>]+$/.test(e)){const t=e.split("<=");return Nm.create(t[0].trim(),t[1].trim())}if(/^[^<=>]+<[^<=>]+$/.test(e)){const t=e.split("<");return Im.create(t[0].trim(),t[1].trim())}return/^\!\s*/.test(e)?$a.create(e.substr(1).trim()):zr.create(e)}static _deserializeValue(e){if(e=e.trim(),e==="true")return!0;if(e==="false")return!1;const t=/^'([^']*)'$/.exec(e);return t?t[1].trim():e}static _deserializeRegexValue(e){if(IT(e))return null;const t=e.indexOf("/"),i=e.lastIndexOf("/");if(t===i||t<0)return null;const n=e.slice(t+1,i),o=e[i+1]==="i"?"i":"";try{return new RegExp(n,o)}catch{return null}}}function e4(s,e){const t=s?s.substituteConstants():void 0,i=e?e.substituteConstants():void 0;return!t&&!i?!0:!t||!i?!1:t.equals(i)}function eu(s,e){return s.cmp(e)}class tn{constructor(){this.type=0}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!1}serialize(){return"false"}keys(){return[]}negate(){return mn.INSTANCE}}tn.INSTANCE=new tn;class mn{constructor(){this.type=1}cmp(e){return this.type-e.type}equals(e){return e.type===this.type}substituteConstants(){return this}evaluate(e){return!0}serialize(){return"true"}keys(){return[]}negate(){return tn.INSTANCE}}mn.INSTANCE=new mn;class zr{static create(e,t=null){const i=wi.get(e);return typeof i=="boolean"?i?mn.INSTANCE:tn.INSTANCE:new zr(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=2}cmp(e){return e.type!==this.type?this.type-e.type:Dk(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=wi.get(this.key);return typeof e=="boolean"?e?mn.INSTANCE:tn.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=$a.create(this.key,this)),this.negated}}class Dc{static create(e,t,i=null){if(typeof t=="boolean")return t?zr.create(e,i):$a.create(e,i);const n=wi.get(e);return typeof n=="boolean"?t===(n?"true":"false")?mn.INSTANCE:tn.INSTANCE:new Dc(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=4}cmp(e){return e.type!==this.type?this.type-e.type:nl(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=wi.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?mn.INSTANCE:tn.INSTANCE}return this}evaluate(e){return e.getValue(this.key)==this.value}serialize(){return`${this.key} == '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Dm.create(this.key,this.value,this)),this.negated}}class ym{static create(e,t){return new ym(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=10,this.negated=null}cmp(e){return e.type!==this.type?this.type-e.type:nl(this.key,this.valueKey,e.key,e.valueKey)}equals(e){return e.type===this.type?this.key===e.key&&this.valueKey===e.valueKey:!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.valueKey),i=e.getValue(this.key);return Array.isArray(t)?t.includes(i):typeof i=="string"&&typeof t=="object"&&t!==null?JT.call(t,i):!1}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=Lm.create(this.key,this.valueKey)),this.negated}}class Lm{static create(e,t){return new Lm(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=ym.create(e,t)}cmp(e){return e.type!==this.type?this.type-e.type:this._negated.cmp(e._negated)}equals(e){return e.type===this.type?this._negated.equals(e._negated):!1}substituteConstants(){return this}evaluate(e){return!this._negated.evaluate(e)}serialize(){return`${this.key} not in '${this.valueKey}'`}keys(){return this._negated.keys()}negate(){return this._negated}}class Dm{static create(e,t,i=null){if(typeof t=="boolean")return t?$a.create(e,i):zr.create(e,i);const n=wi.get(e);return typeof n=="boolean"?t===(n?"true":"false")?tn.INSTANCE:mn.INSTANCE:new Dm(e,t,i)}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=5}cmp(e){return e.type!==this.type?this.type-e.type:nl(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){const e=wi.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?tn.INSTANCE:mn.INSTANCE}return this}evaluate(e){return e.getValue(this.key)!=this.value}serialize(){return`${this.key} != '${this.value}'`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Dc.create(this.key,this.value,this)),this.negated}}class $a{static create(e,t=null){const i=wi.get(e);return typeof i=="boolean"?i?tn.INSTANCE:mn.INSTANCE:new $a(e,t)}constructor(e,t){this.key=e,this.negated=t,this.type=3}cmp(e){return e.type!==this.type?this.type-e.type:Dk(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=wi.get(this.key);return typeof e=="boolean"?e?tn.INSTANCE:mn.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=zr.create(this.key,this)),this.negated}}function km(s,e){if(typeof s=="string"){const t=parseFloat(s);isNaN(t)||(s=t)}return typeof s=="string"||typeof s=="number"?e(s):tn.INSTANCE}class xm{static create(e,t,i=null){return km(t,n=>new xm(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=12}cmp(e){return e.type!==this.type?this.type-e.type:nl(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>this.value}serialize(){return`${this.key} > ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Nm.create(this.key,this.value,this)),this.negated}}class Em{static create(e,t,i=null){return km(t,n=>new Em(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=13}cmp(e){return e.type!==this.type?this.type-e.type:nl(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))>=this.value}serialize(){return`${this.key} >= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=Im.create(this.key,this.value,this)),this.negated}}class Im{static create(e,t,i=null){return km(t,n=>new Im(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=14}cmp(e){return e.type!==this.type?this.type-e.type:nl(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))new Nm(e,n,i))}constructor(e,t,i){this.key=e,this.value=t,this.negated=i,this.type=15}cmp(e){return e.type!==this.type?this.type-e.type:nl(this.key,this.value,e.key,e.value)}equals(e){return e.type===this.type?this.key===e.key&&this.value===e.value:!1}substituteConstants(){return this}evaluate(e){return typeof this.value=="string"?!1:parseFloat(e.getValue(this.key))<=this.value}serialize(){return`${this.key} <= ${this.value}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=xm.create(this.key,this.value,this)),this.negated}}class dg{static create(e,t){return new dg(e,t)}constructor(e,t){this.key=e,this.regexp=t,this.type=7,this.negated=null}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.keye.key)return 1;const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return ti?1:0}equals(e){if(e.type===this.type){const t=this.regexp?this.regexp.source:"",i=e.regexp?e.regexp.source:"";return this.key===e.key&&t===i}return!1}substituteConstants(){return this}evaluate(e){const t=e.getValue(this.key);return this.regexp?this.regexp.test(t):!1}serialize(){const e=this.regexp?`/${this.regexp.source}/${this.regexp.flags}`:"/invalid/";return`${this.key} =~ ${e}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=SC.create(this)),this.negated}}class SC{static create(e){return new SC(e)}constructor(e){this._actual=e,this.type=8}cmp(e){return e.type!==this.type?this.type-e.type:this._actual.cmp(e._actual)}equals(e){return e.type===this.type?this._actual.equals(e._actual):!1}substituteConstants(){return this}evaluate(e){return!this._actual.evaluate(e)}serialize(){throw new Error("Method not implemented.")}keys(){return this._actual.keys()}negate(){return this._actual}}function Lk(s){let e=null;for(let t=0,i=s.length;te.expr.length)return 1;for(let t=0,i=this.expr.length;t1;){const r=n[n.length-1];if(r.type!==9)break;n.pop();const a=n.pop(),l=n.length===0,c=Bs.create(r.expr.map(h=>_r.create([h,a],null,i)),null,l);c&&(n.push(c),n.sort(eu))}if(n.length===1)return n[0];if(i){for(let r=0;re.serialize()).join(" && ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());this.negated=Bs.create(e,this,!0)}return this.negated}}class Bs{static create(e,t,i){return Bs._normalizeArr(e,t,i)}constructor(e,t){this.expr=e,this.negated=t,this.type=9}cmp(e){if(e.type!==this.type)return this.type-e.type;if(this.expr.lengthe.expr.length)return 1;for(let t=0,i=this.expr.length;te.serialize()).join(" || ")}keys(){const e=[];for(const t of this.expr)e.push(...t.keys());return e}negate(){if(!this.negated){const e=[];for(const t of this.expr)e.push(t.negate());for(;e.length>1;){const t=e.shift(),i=e.shift(),n=[];for(const o of xw(t))for(const r of xw(i))n.push(_r.create([o,r],null,!1));e.unshift(Bs.create(n,null,!1))}this.negated=Bs.create(e,this,!0)}return this.negated}}class pe extends zr{static all(){return pe._info.values()}constructor(e,t,i){super(e,null),this._defaultValue=t,typeof i=="object"?pe._info.push(Object.assign(Object.assign({},i),{key:e})):i!==!0&&pe._info.push({key:e,description:i,type:t!=null?typeof t:void 0})}bindTo(e){return e.createKey(this.key,this._defaultValue)}getValue(e){return e.getContextKeyValue(this.key)}toNegated(){return this.negate()}isEqualTo(e){return Dc.create(this.key,e)}}pe._info=[];const ft=Ue("contextKeyService");function Dk(s,e){return se?1:0}function nl(s,e,t,i){return st?1:ei?1:0}function Y0(s,e){if(s.type===0||e.type===1)return!0;if(s.type===9)return e.type===9?kw(s.expr,e.expr):!1;if(e.type===9){for(const t of e.expr)if(Y0(s,t))return!0;return!1}if(s.type===6){if(e.type===6)return kw(e.expr,s.expr);for(const t of s.expr)if(Y0(t,e))return!0;return!1}return s.equals(e)}function kw(s,e){let t=0,i=0;for(;t=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Ep=globalThis&&globalThis.__param||function(s,e){return function(t,i){e(t,i,s)}};const n4={followsCaret:!0,ignoreCharChanges:!0,alwaysRevealFirst:!0,findResultLoop:!0};let Q0=class extends Y{constructor(e,t={},i,n,o){super(),this._audioCueService=i,this._codeEditorService=n,this._accessibilityService=o,this._onDidUpdate=this._register(new B),this._editor=e,this._options=ZD(t,n4,!1),this.disposed=!1,this.nextIdx=-1,this.ranges=[],this.ignoreSelectionChange=!1,this.revealFirst=Boolean(this._options.alwaysRevealFirst),this._register(this._editor.onDidDispose(()=>this.dispose())),this._register(this._editor.onDidUpdateDiff(()=>this._onDiffUpdated())),this._options.followsCaret&&this._register(this._editor.getModifiedEditor().onDidChangeCursorPosition(r=>{this.ignoreSelectionChange||(this._updateAccessibilityState(r.position.lineNumber),this.nextIdx=-1)})),this._options.alwaysRevealFirst&&this._register(this._editor.getModifiedEditor().onDidChangeModel(r=>{this.revealFirst=!0})),this._init()}_init(){this._editor.getLineChanges()}_onDiffUpdated(){this._init(),this._compute(this._editor.getLineChanges()),this.revealFirst&&this._editor.getLineChanges()!==null&&(this.revealFirst=!1,this.nextIdx=-1,this.next(1))}_compute(e){this.ranges=[],e&&e.forEach(t=>{!this._options.ignoreCharChanges&&t.charChanges?t.charChanges.forEach(i=>{this.ranges.push({rhs:!0,range:new N(i.modifiedStartLineNumber,i.modifiedStartColumn,i.modifiedEndLineNumber,i.modifiedEndColumn)})}):t.modifiedEndLineNumber===0?this.ranges.push({rhs:!0,range:new N(t.modifiedStartLineNumber,1,t.modifiedStartLineNumber+1,1)}):this.ranges.push({rhs:!0,range:new N(t.modifiedStartLineNumber,1,t.modifiedEndLineNumber+1,1)})}),this.ranges.sort((t,i)=>N.compareRangesUsingStarts(t.range,i.range)),this._onDidUpdate.fire(this)}_initIdx(e){let t=!1;const i=this._editor.getPosition();if(!i){this.nextIdx=0;return}for(let n=0,o=this.ranges.length;n=this.ranges.length&&(this.nextIdx=0)):(this.nextIdx-=1,this.nextIdx<0&&(this.nextIdx=this.ranges.length-1));const i=this.ranges[this.nextIdx];this.ignoreSelectionChange=!0;try{const n=i.range.getStartPosition();this._editor.setPosition(n),this._editor.revealRangeInCenter(i.range,t),this._updateAccessibilityState(n.lineNumber,!0)}finally{this.ignoreSelectionChange=!1}}_updateAccessibilityState(e,t){var i;const n=(i=this._editor.getModel())===null||i===void 0?void 0:i.modified;if(!n)return;const o=n.getLineDecorations(e).find(a=>a.options.className==="line-insert");if(o)this._audioCueService.playAudioCue(qe.diffLineModified,!0);else if(t)this._audioCueService.playAudioCue(qe.diffLineDeleted,!0);else return;const r=this._codeEditorService.getActiveCodeEditor();t&&r&&o&&this._accessibilityService.isScreenReaderOptimized()&&(r.setSelection({startLineNumber:e,startColumn:0,endLineNumber:e,endColumn:Number.MAX_VALUE}),r.writeScreenReaderContent("diff-navigation"))}canNavigate(){return this.ranges&&this.ranges.length>0}next(e=0){this.canNavigateNext()&&this._move(!0,e)}previous(e=0){this.canNavigatePrevious()&&this._move(!1,e)}canNavigateNext(){return this.canNavigateLoop()||this.nextIdx0&&s.getLanguageId(r-1)===n;)r--;return new c4(s,n,r,o+1,s.getStartOffset(r),s.getEndOffset(o))}class c4{constructor(e,t,i,n,o,r){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=o,this._lastCharOffset=r}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getActualLineContentBefore(e){return this._actual.getLineContent().substring(0,this.firstCharOffset+e)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(e){return this._actual.findTokenIndexAtOffset(e+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(e){return this._actual.getStandardTokenType(e+this._firstTokenIndex)}}function Ns(s){return(s&3)!==0}class xc{constructor(e){if(e.autoClosingPairs?this._autoClosingPairs=e.autoClosingPairs.map(t=>new Np(t)):e.brackets?this._autoClosingPairs=e.brackets.map(t=>new Np({open:t[0],close:t[1]})):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new Np({open:t.open,close:t.close||""}))}this._autoCloseBeforeForQuotes=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:xc.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:xc.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=e.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(e){return e?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}}xc.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=`;:.,=}])> `;xc.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS=`'"\`;:.,=}])> `;const Ew=typeof Buffer<"u";let Tp;class yC{static wrap(e){return Ew&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new yC(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return Ew?this.buffer.toString():(Tp||(Tp=new TextDecoder),Tp.decode(this.buffer))}}function h4(s,e){return s[e+0]<<0>>>0|s[e+1]<<8>>>0}function u4(s,e,t){s[t+0]=e&255,e=e>>>8,s[t+1]=e&255}function ls(s,e){return s[e]*Math.pow(2,24)+s[e+1]*Math.pow(2,16)+s[e+2]*Math.pow(2,8)+s[e+3]}function cs(s,e,t){s[t+3]=e,e=e>>>8,s[t+2]=e,e=e>>>8,s[t+1]=e,e=e>>>8,s[t]=e}function Iw(s,e){return s[e]}function Nw(s,e,t){s[t]=e}let Ap;function kk(){return Ap||(Ap=new TextDecoder("UTF-16LE")),Ap}let Mp;function d4(){return Mp||(Mp=new TextDecoder("UTF-16BE")),Mp}let Rp;function xk(){return Rp||(Rp=AI()?kk():d4()),Rp}function f4(s,e,t){const i=new Uint16Array(s.buffer,e,t);return t>0&&(i[0]===65279||i[0]===65534)?g4(s,e,t):kk().decode(i)}function g4(s,e,t){const i=[];let n=0;for(let o=0;o=this._capacity){this._flushBuffer(),this._completedStrings[this._completedStrings.length]=e;return}for(let i=0;i[r[0].toLowerCase(),r[1].toLowerCase()]);const t=[];for(let r=0;r{const[l,c]=r,[h,u]=a;return l===h||l===u||c===h||c===u},n=(r,a)=>{const l=Math.min(r,a),c=Math.max(r,a);for(let h=0;h0&&o.push({open:a,close:l})}return o}class p4{constructor(e,t){this._richEditBracketsBrand=void 0;const i=m4(t);this.brackets=i.map((n,o)=>new gg(e,o,n.open,n.close,_4(n.open,n.close,i,o),b4(n.open,n.close,i,o))),this.forwardRegex=C4(this.brackets),this.reversedRegex=v4(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const n of this.brackets){for(const o of n.open)this.textIsBracket[o]=n,this.textIsOpenBracket[o]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,o.length);for(const o of n.close)this.textIsBracket[o]=n,this.textIsOpenBracket[o]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,o.length)}}}function Ek(s,e,t,i){for(let n=0,o=e.length;n=0&&i.push(a);for(const a of r.close)a.indexOf(s)>=0&&i.push(a)}}function Ik(s,e){return s.length-e.length}function Mm(s){if(s.length<=1)return s;const e=[],t=new Set;for(const i of s)t.has(i)||(e.push(i),t.add(i));return e}function _4(s,e,t,i){let n=[];n=n.concat(s),n=n.concat(e);for(let o=0,r=n.length;o=0;r--)n[o++]=i.charCodeAt(r);return xk().decode(n)}let e=null,t=null;return function(n){return e!==n&&(e=n,t=s(e)),t}}();class Un{static _findPrevBracketInText(e,t,i,n){const o=i.match(e);if(!o)return null;const r=i.length-(o.index||0),a=o[0].length,l=n+r;return new N(t,l-a+1,t,l+1)}static findPrevBracketInRange(e,t,i,n,o){const a=LC(i).substring(i.length-o,i.length-n);return this._findPrevBracketInText(e,t,a,n)}static findNextBracketInText(e,t,i,n){const o=i.match(e);if(!o)return null;const r=o.index||0,a=o[0].length;if(a===0)return null;const l=n+r;return new N(t,l+1,t,l+1+a)}static findNextBracketInRange(e,t,i,n,o){const r=i.substring(n,o);return this.findNextBracketInText(e,t,r,n)}}class S4{constructor(e){this._richEditBrackets=e}getElectricCharacters(){const e=[];if(this._richEditBrackets)for(const t of this._richEditBrackets.brackets)for(const i of t.close){const n=i.charAt(i.length-1);e.push(n)}return Ua(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const n=t.findTokenIndexAtOffset(i-1);if(Ns(t.getStandardTokenType(n)))return null;const o=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,i-1)+e,a=Un.findPrevBracketInRange(o,1,r,0,r.length);if(!a)return null;const l=r.substring(a.startColumn-1,a.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[l])return null;const h=t.getActualLineContentBefore(a.startColumn-1);return/^\s*$/.test(h)?{matchOpenBracket:l}:null}}function Ud(s){return s.global&&(s.lastIndex=0),!0}class y4{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&Ud(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&Ud(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&Ud(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&Ud(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(e))}getIndentMetadata(e){let t=0;return this.shouldIncrease(e)&&(t+=1),this.shouldDecrease(e)&&(t+=2),this.shouldIndentNextLine(e)&&(t+=4),this.shouldIgnore(e)&&(t+=8),t}}class Fl{constructor(e){e=e||{},e.brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach(t=>{const i=Fl._createOpenBracketRegExp(t[0]),n=Fl._createCloseBracketRegExp(t[1]);i&&n&&this._brackets.push({open:t[0],openRegExp:i,close:t[1],closeRegExp:n})}),this._regExpRules=e.onEnterRules||[]}onEnter(e,t,i,n){if(e>=3)for(let o=0,r=this._regExpRules.length;oc.reg?(c.reg.lastIndex=0,c.reg.test(c.text)):!0))return a.action}if(e>=2&&i.length>0&&n.length>0)for(let o=0,r=this._brackets.length;o=2&&i.length>0){for(let o=0,r=this._brackets.length;o"u"?t:o}function D4(s){return s.replace(/[\[\]]/g,"")}const mi=Ue("languageService");class Rs{constructor(e,t=[],i=!1){this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=i}}const Ak=[];function Ye(s,e,t){e instanceof Rs||(e=new Rs(e,[],Boolean(t))),Ak.push([s,e])}function Aw(){return Ak}class k4{constructor(){this.data=new Map}add(e,t){Jh(Xi(e)),Jh(fn(t)),Jh(!this.data.has(e),"There is already an extension with this id"),this.data.set(e,t)}as(e){return this.data.get(e)||null}}const li=new k4,ko=Object.freeze({text:"text/plain",binary:"application/octet-stream",unknown:"application/unknown",markdown:"text/markdown",latex:"text/latex",uriList:"text/uri-list"}),Om={JSONContribution:"base.contributions.json"};function x4(s){return s.length>0&&s.charAt(s.length-1)==="#"?s.substring(0,s.length-1):s}class E4{constructor(){this._onDidChangeSchema=new B,this.schemasById={}}registerSchema(e,t){this.schemasById[x4(e)]=t,this._onDidChangeSchema.fire(e)}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}}const I4=new E4;li.add(Om.JSONContribution,I4);const sl={Configuration:"base.contributions.configuration"},ph="vscode://schemas/settings/resourceLanguage",Mw=li.as(Om.JSONContribution);class N4{constructor(){this.overrideIdentifiers=new Set,this._onDidSchemaChange=new B,this._onDidUpdateConfiguration=new B,this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:p("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!0,allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.policyConfigurations=new Map,this.excludedConfigurationProperties={},Mw.registerSchema(ph,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){this.registerConfigurations([e],t)}registerConfigurations(e,t=!0){const i=new Set;this.doRegisterConfigurations(e,t,i),Mw.registerSchema(ph,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:i})}registerDefaultConfigurations(e){const t=new Set;this.doRegisterDefaultConfigurations(e,t),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire({properties:t,defaultsOverrides:!0})}doRegisterDefaultConfigurations(e,t){var i;const n=[];for(const{overrides:o,source:r}of e)for(const a in o)if(t.add(a),Ur.test(a)){const l=this.configurationDefaultsOverrides.get(a),c=(i=l==null?void 0:l.valuesSources)!==null&&i!==void 0?i:new Map;if(r)for(const f of Object.keys(o[a]))c.set(f,r);const h=Object.assign(Object.assign({},(l==null?void 0:l.value)||{}),o[a]);this.configurationDefaultsOverrides.set(a,{source:r,value:h,valuesSources:c});const u=D4(a),d={type:"object",default:h,description:p("defaultLanguageConfiguration.description","Configure settings to be overridden for the {0} language.",u),$ref:ph,defaultDefaultValue:h,source:Xi(r)?void 0:r,defaultValueSource:r};n.push(...mg(a)),this.configurationProperties[a]=d,this.defaultLanguageConfigurationOverridesNode.properties[a]=d}else{this.configurationDefaultsOverrides.set(a,{value:o[a],source:r});const l=this.configurationProperties[a];l&&(this.updatePropertyDefaultValue(a,l),this.updateSchema(a,l))}this.doRegisterOverrideIdentifiers(n)}registerOverrideIdentifiers(e){this.doRegisterOverrideIdentifiers(e),this._onDidSchemaChange.fire()}doRegisterOverrideIdentifiers(e){for(const t of e)this.overrideIdentifiers.add(t);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(e,t,i){e.forEach(n=>{this.validateAndRegisterProperties(n,t,n.extensionInfo,n.restrictedProperties,void 0,i),this.configurationContributors.push(n),this.registerJSONConfiguration(n)})}validateAndRegisterProperties(e,t=!0,i,n,o=3,r){var a;o=un(e.scope)?o:e.scope;const l=e.properties;if(l)for(const h in l){const u=l[h];if(t&&M4(h,u)){delete l[h];continue}if(u.source=i,u.defaultDefaultValue=l[h].default,this.updatePropertyDefaultValue(h,u),Ur.test(h)?u.scope=void 0:(u.scope=un(u.scope)?o:u.scope,u.restricted=un(u.restricted)?!!(n!=null&&n.includes(h)):u.restricted),l[h].hasOwnProperty("included")&&!l[h].included){this.excludedConfigurationProperties[h]=l[h],delete l[h];continue}else this.configurationProperties[h]=l[h],!((a=l[h].policy)===null||a===void 0)&&a.name&&this.policyConfigurations.set(l[h].policy.name,h);!l[h].deprecationMessage&&l[h].markdownDeprecationMessage&&(l[h].deprecationMessage=l[h].markdownDeprecationMessage),r.add(h)}const c=e.allOf;if(c)for(const h of c)this.validateAndRegisterProperties(h,t,i,n,o,r)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}registerJSONConfiguration(e){const t=i=>{const n=i.properties;if(n)for(const r in n)this.updateSchema(r,n[r]);const o=i.allOf;o==null||o.forEach(t)};t(e)}updateSchema(e,t){switch(t.scope){case 1:break;case 2:break;case 6:break;case 3:break;case 4:break;case 5:this.resourceLanguageSettingsSchema.properties[e]=t;break}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:p("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:p("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:ph};this.updatePropertyDefaultValue(t,i)}}registerOverridePropertyPatternKey(){p("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),p("overrideSettings.errorMessage","This setting does not support per-language configuration."),this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e);let n=i==null?void 0:i.value,o=i==null?void 0:i.source;bs(n)&&(n=t.defaultDefaultValue,o=void 0),bs(n)&&(n=A4(t.type)),t.default=n,t.defaultValueSource=o}}const Mk="\\[([^\\]]+)\\]",Rw=new RegExp(Mk,"g"),T4=`^(${Mk})+$`,Ur=new RegExp(T4);function mg(s){const e=[];if(Ur.test(s)){let t=Rw.exec(s);for(;t!=null&&t.length;){const i=t[1].trim();i&&e.push(i),t=Rw.exec(s)}}return Ua(e)}function A4(s){switch(Array.isArray(s)?s[0]:s){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const Pf=new N4;li.add(sl.Configuration,Pf);function M4(s,e){var t,i,n,o;return s.trim()?Ur.test(s)?p("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",s):Pf.getConfigurationProperties()[s]!==void 0?p("config.property.duplicate","Cannot register '{0}'. This property is already registered.",s):!((t=e.policy)===null||t===void 0)&&t.name&&Pf.getPolicyConfigurations().get((i=e.policy)===null||i===void 0?void 0:i.name)!==void 0?p("config.policy.duplicate","Cannot register '{0}'. The associated policy {1} is already registered with {2}.",s,(n=e.policy)===null||n===void 0?void 0:n.name,Pf.getPolicyConfigurations().get((o=e.policy)===null||o===void 0?void 0:o.name)):null:p("config.property.empty","Cannot register an empty property")}const R4={ModesRegistry:"editor.modesRegistry"};class O4{constructor(){this._onDidChangeLanguages=new B,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[]}registerLanguage(e){return this._languages.push(e),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let t=0,i=this._languages.length;t{const l=new Set;return{info:new B4(this,a,l),closing:l}}),o=new Sw(a=>{const l=new Set,c=new Set;return{info:new W4(this,a,l,c),opening:l,openingColorized:c}});for(const[a,l]of i){const c=n.get(a),h=o.get(l);c.closing.add(h.info),h.opening.add(c.info)}const r=t.colorizedBracketPairs?Ow(t.colorizedBracketPairs):i.filter(a=>!(a[0]==="<"&&a[1]===">"));for(const[a,l]of r){const c=n.get(a),h=o.get(l);c.closing.add(h.info),h.openingColorized.add(c.info),h.opening.add(c.info)}this._openingBrackets=new Map([...n.cachedValues].map(([a,l])=>[a,l.info])),this._closingBrackets=new Map([...o.cachedValues].map(([a,l])=>[a,l.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(e){return this._openingBrackets.get(e)}getClosingBracketInfo(e){return this._closingBrackets.get(e)}getBracketInfo(e){return this.getOpeningBracketInfo(e)||this.getClosingBracketInfo(e)}}function Ow(s){return s.filter(([e,t])=>e!==""&&t!=="")}class Rk{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class B4 extends Rk{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class W4 extends Rk{constructor(e,t,i,n){super(e,t),this.openingBrackets=i,this.openingColorizedBrackets=n,this.isOpeningBracket=!1}closes(e){return e.config!==this.config?!1:this.openingBrackets.has(e)}closesColorized(e){return e.config!==this.config?!1:this.openingColorizedBrackets.has(e)}getOpeningBrackets(){return[...this.openingBrackets]}}var V4=globalThis&&globalThis.__decorate||function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Pw=globalThis&&globalThis.__param||function(s,e){return function(t,i){e(t,i,s)}};class Op{constructor(e){this.languageId=e}affects(e){return this.languageId?this.languageId===e:!0}}const oo=Ue("languageConfigurationService");let J0=class extends Y{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new $4),this.onDidChangeEmitter=this._register(new B),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(e1));this._register(this.configurationService.onDidChangeConfiguration(n=>{const o=n.change.keys.some(a=>i.has(a)),r=n.change.overrides.filter(([a,l])=>l.some(c=>i.has(c))).map(([a])=>a);if(o)this.configurations.clear(),this.onDidChangeEmitter.fire(new Op(void 0));else for(const a of r)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new Op(a)))})),this._register(this._registry.onDidChange(n=>{this.configurations.delete(n.languageId),this.onDidChangeEmitter.fire(new Op(n.languageId))}))}register(e,t,i){return this._registry.register(e,t,i)}getLanguageConfiguration(e){let t=this.configurations.get(e);return t||(t=H4(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};J0=V4([Pw(0,Kt),Pw(1,mi)],J0);function H4(s,e,t,i){let n=e.getLanguageConfiguration(s);if(!n){if(!i.isRegisteredLanguageId(s))return new sc(s,{});n=new sc(s,{})}const o=z4(n.languageId,t),r=Pk([n.underlyingConfig,o]);return new sc(n.languageId,r)}const e1={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function z4(s,e){const t=e.getValue(e1.brackets,{overrideIdentifier:s}),i=e.getValue(e1.colorizedBracketPairs,{overrideIdentifier:s});return{brackets:Fw(t),colorizedBracketPairs:Fw(i)}}function Fw(s){if(Array.isArray(s))return s.map(e=>{if(!(!Array.isArray(e)||e.length!==2))return[e[0],e[1]]}).filter(e=>!!e)}function Ok(s,e,t){const i=s.getLineContent(e);let n=Ri(i);return n.length>t-1&&(n=n.substring(0,t-1)),n}function nc(s,e,t){s.tokenization.forceTokenization(e);const i=s.tokenization.getLineTokens(e),n=typeof t>"u"?s.getLineMaxColumn(e)-1:t-1;return Tm(i,n)}class U4{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new Bw(e,t,++this._order);return this._entries.push(i),this._resolved=null,tt(()=>{for(let n=0;ne.configuration)))}}function Pk(s){let e={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const t of s)e={comments:t.comments||e.comments,brackets:t.brackets||e.brackets,wordPattern:t.wordPattern||e.wordPattern,indentationRules:t.indentationRules||e.indentationRules,onEnterRules:t.onEnterRules||e.onEnterRules,autoClosingPairs:t.autoClosingPairs||e.autoClosingPairs,surroundingPairs:t.surroundingPairs||e.surroundingPairs,autoCloseBefore:t.autoCloseBefore||e.autoCloseBefore,folding:t.folding||e.folding,colorizedBracketPairs:t.colorizedBracketPairs||e.colorizedBracketPairs,__electricCharacterSupport:t.__electricCharacterSupport||e.__electricCharacterSupport};return e}class Bw{constructor(e,t,i){this.configuration=e,this.priority=t,this.order=i}static cmp(e,t){return e.priority===t.priority?e.order-t.order:e.priority-t.priority}}class Ww{constructor(e){this.languageId=e}}class $4 extends Y{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new B),this.onDidChange=this._onDidChange.event,this._register(this.register(Cs,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(e,t,i=0){let n=this._entries.get(e);n||(n=new U4(e),this._entries.set(e,n));const o=n.register(t,i);return this._onDidChange.fire(new Ww(e)),tt(()=>{o.dispose(),this._onDidChange.fire(new Ww(e))})}getLanguageConfiguration(e){const t=this._entries.get(e);return(t==null?void 0:t.getResolvedConfiguration())||null}}class sc{constructor(e,t){this.languageId=e,this.underlyingConfig=t,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new Fl(this.underlyingConfig):null,this.comments=sc._handleComments(this.underlyingConfig),this.characterPair=new xc(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||Qb,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new y4(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new F4(e,this.underlyingConfig)}getWordDefinition(){return zD(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new p4(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new S4(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new l4(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(e){return this.characterPair.getAutoCloseBeforeSet(e)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(e){const t=e.comments;if(!t)return null;const i={};if(t.lineComment&&(i.lineCommentToken=t.lineComment),t.blockComment){const[n,o]=t.blockComment;i.blockCommentStartToken=n,i.blockCommentEndToken=o}return i}}Ye(oo,J0,1);const xu=new class{clone(){return this}equals(s){return this===s}};function Fk(s,e){return new oC([new yu(0,"",s)],e)}function DC(s,e){const t=new Uint32Array(2);return t[0]=0,t[1]=(s<<0|0<<8|0<<11|1<<15|2<<24)>>>0,new Sm(t,e===null?xu:e)}const ji=Ue("modelService"),Bk=Symbol("MicrotaskDelay");var wn=globalThis&&globalThis.__awaiter||function(s,e,t,i){function n(o){return o instanceof t?o:new t(function(r){r(o)})}return new(t||(t=Promise))(function(o,r){function a(h){try{c(i.next(h))}catch(u){r(u)}}function l(h){try{c(i.throw(h))}catch(u){r(u)}}function c(h){h.done?o(h.value):n(h.value).then(a,l)}c((i=i.apply(s,e||[])).next())})},Ah=globalThis&&globalThis.__asyncValues||function(s){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=s[Symbol.asyncIterator],t;return e?e.call(s):(s=typeof __values=="function"?__values(s):s[Symbol.iterator](),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(o){t[o]=s[o]&&function(r){return new Promise(function(a,l){r=s[o](r),n(a,l,r.done,r.value)})}}function n(o,r,a,l){Promise.resolve(l).then(function(c){o({value:c,done:a})},r)}};function t1(s){return!!s&&typeof s.then=="function"}function Wk(s){const e=new Zr,t=s(e.token),i=new Promise((n,o)=>{const r=e.token.onCancellationRequested(()=>{r.dispose(),e.dispose(),o(new Qc)});Promise.resolve(t).then(a=>{r.dispose(),e.dispose(),n(a)},a=>{r.dispose(),e.dispose(),o(a)})});return new class{cancel(){e.cancel()}then(n,o){return i.then(n,o)}catch(n){return this.then(void 0,n)}finally(n){return i.finally(n)}}}function jU(s,e,t){return new Promise((i,n)=>{const o=e.onCancellationRequested(()=>{o.dispose(),i(t)});s.then(i,n).finally(()=>o.dispose())})}class j4{constructor(){this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(e){if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const t=()=>{this.queuedPromise=null;const i=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,i};this.queuedPromise=new Promise(i=>{this.activePromise.then(t,t).then(i)})}return new Promise((t,i)=>{this.queuedPromise.then(t,i)})}return this.activePromise=e(),new Promise((t,i)=>{this.activePromise.then(n=>{this.activePromise=null,t(n)},n=>{this.activePromise=null,i(n)})})}}const K4=(s,e)=>{let t=!0;const i=setTimeout(()=>{t=!1,e()},s);return{isTriggered:()=>t,dispose:()=>{clearTimeout(i),t=!1}}},q4=s=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,s())}),{isTriggered:()=>e,dispose:()=>{e=!1}}};class Pm{constructor(e){this.defaultDelay=e,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(e,t=this.defaultDelay){this.task=e,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((n,o)=>{this.doResolve=n,this.doReject=o}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const n=this.task;return this.task=null,n()}}));const i=()=>{var n;this.deferred=null,(n=this.doResolve)===null||n===void 0||n.call(this,null)};return this.deferred=t===Bk?q4(i):K4(t,i),this.completionPromise}isTriggered(){var e;return!!(!((e=this.deferred)===null||e===void 0)&&e.isTriggered())}cancel(){var e;this.cancelTimeout(),this.completionPromise&&((e=this.doReject)===null||e===void 0||e.call(this,new Qc),this.completionPromise=null)}cancelTimeout(){var e;(e=this.deferred)===null||e===void 0||e.dispose(),this.deferred=null}dispose(){this.cancel()}}class Vk{constructor(e){this.delayer=new Pm(e),this.throttler=new j4}trigger(e,t){return this.delayer.trigger(()=>this.throttler.queue(e),t)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose()}}function Eu(s,e){return e?new Promise((t,i)=>{const n=setTimeout(()=>{o.dispose(),t()},s),o=e.onCancellationRequested(()=>{clearTimeout(n),o.dispose(),i(new Qc)})}):Wk(t=>Eu(s,t))}function i1(s,e=0){const t=setTimeout(s,e);return tt(()=>clearTimeout(t))}function KU(s,e=i=>!!i,t=null){let i=0;const n=s.length,o=()=>{if(i>=n)return Promise.resolve(t);const r=s[i++];return Promise.resolve(r()).then(l=>e(l)?Promise.resolve(l):o())};return o()}class ol{constructor(e,t){this._token=-1,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel()}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,t){this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},t)}setIfNotSet(e,t){this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},t))}}class _d{constructor(){this._token=-1}dispose(){this.cancel()}cancel(){this._token!==-1&&(clearInterval(this._token),this._token=-1)}cancelAndSet(e,t){this.cancel(),this._token=setInterval(()=>{e()},t)}}class $i{constructor(e,t){this.timeoutToken=-1,this.runner=e,this.timeout=t,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)}schedule(e=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,e)}get delay(){return this.timeout}set delay(e){this.timeout=e}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1,this.runner&&this.doRun()}doRun(){var e;(e=this.runner)===null||e===void 0||e.call(this)}}let br;(function(){typeof requestIdleCallback!="function"||typeof cancelIdleCallback!="function"?br=s=>{WD(()=>{if(e)return;const t=Date.now()+15;s(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,t-Date.now())}}))});let e=!1;return{dispose(){e||(e=!0)}}}:br=(s,e)=>{const t=requestIdleCallback(s,typeof e=="number"?{timeout:e}:void 0);let i=!1;return{dispose(){i||(i=!0,cancelIdleCallback(t))}}}})();class G4{constructor(e){this._didRun=!1,this._executor=()=>{try{this._value=e()}catch(t){this._error=t}finally{this._didRun=!0}},this._handle=br(()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class Hk{get isRejected(){return this.rejected}get isSettled(){return this.rejected||this.resolved}constructor(){this.rejected=!1,this.resolved=!1,this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return new Promise(t=>{this.completeCallback(e),this.resolved=!0,t()})}cancel(){new Promise(e=>{this.errorCallback(new Qc),this.rejected=!0,e()})}}var n1;(function(s){function e(i){return wn(this,void 0,void 0,function*(){let n;const o=yield Promise.all(i.map(r=>r.then(a=>a,a=>{n||(n=a)})));if(typeof n<"u")throw n;return o})}s.settled=e;function t(i){return new Promise((n,o)=>wn(this,void 0,void 0,function*(){try{yield i(n,o)}catch(r){o(r)}}))}s.withAsyncBody=t})(n1||(n1={}));class qi{static fromArray(e){return new qi(t=>{t.emitMany(e)})}static fromPromise(e){return new qi(t=>wn(this,void 0,void 0,function*(){t.emitMany(yield e)}))}static fromPromises(e){return new qi(t=>wn(this,void 0,void 0,function*(){yield Promise.all(e.map(i=>wn(this,void 0,void 0,function*(){return t.emitOne(yield i)})))}))}static merge(e){return new qi(t=>wn(this,void 0,void 0,function*(){yield Promise.all(e.map(i=>{var n,o,r;return wn(this,void 0,void 0,function*(){var a,l,c,h;try{for(n=!0,o=Ah(i);r=yield o.next(),a=r.done,!a;){h=r.value,n=!1;try{const u=h;t.emitOne(u)}finally{n=!0}}}catch(u){l={error:u}}finally{try{!n&&!a&&(c=o.return)&&(yield c.call(o))}finally{if(l)throw l.error}}})}))}))}constructor(e){this._state=0,this._results=[],this._error=null,this._onStateChanged=new B,queueMicrotask(()=>wn(this,void 0,void 0,function*(){const t={emitOne:i=>this.emitOne(i),emitMany:i=>this.emitMany(i),reject:i=>this.reject(i)};try{yield Promise.resolve(e(t)),this.resolve()}catch(i){this.reject(i)}finally{t.emitOne=void 0,t.emitMany=void 0,t.reject=void 0}}))}[Symbol.asyncIterator](){let e=0;return{next:()=>wn(this,void 0,void 0,function*(){do{if(this._state===2)throw this._error;if(ewn(this,void 0,void 0,function*(){var n,o,r,a;try{for(var l=!0,c=Ah(e),h;h=yield c.next(),n=h.done,!n;){a=h.value,l=!1;try{const u=a;i.emitOne(t(u))}finally{l=!0}}}catch(u){o={error:u}}finally{try{!l&&!n&&(r=c.return)&&(yield r.call(c))}finally{if(o)throw o.error}}}))}map(e){return qi.map(this,e)}static filter(e,t){return new qi(i=>wn(this,void 0,void 0,function*(){var n,o,r,a;try{for(var l=!0,c=Ah(e),h;h=yield c.next(),n=h.done,!n;){a=h.value,l=!1;try{const u=a;t(u)&&i.emitOne(u)}finally{l=!0}}}catch(u){o={error:u}}finally{try{!l&&!n&&(r=c.return)&&(yield r.call(c))}finally{if(o)throw o.error}}}))}filter(e){return qi.filter(this,e)}static coalesce(e){return qi.filter(e,t=>!!t)}coalesce(){return qi.coalesce(this)}static toPromise(e){var t,i,n,o,r,a,l;return wn(this,void 0,void 0,function*(){const c=[];try{for(t=!0,i=Ah(e);n=yield i.next(),o=n.done,!o;){l=n.value,t=!1;try{const h=l;c.push(h)}finally{t=!0}}}catch(h){r={error:h}}finally{try{!t&&!o&&(a=i.return)&&(yield a.call(i))}finally{if(r)throw r.error}}return c})}toPromise(){return qi.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}}qi.EMPTY=qi.fromArray([]);class Z4 extends qi{constructor(e,t){super(t),this._source=e}cancel(){this._source.cancel()}}function qU(s){const e=new Zr,t=s(e.token);return new Z4(e,i=>wn(this,void 0,void 0,function*(){var n,o,r,a;const l=e.token.onCancellationRequested(()=>{l.dispose(),e.dispose(),i.reject(new Qc)});try{try{for(var c=!0,h=Ah(t),u;u=yield h.next(),n=u.done,!n;){a=u.value,c=!1;try{const d=a;if(e.token.isCancellationRequested)return;i.emitOne(d)}finally{c=!0}}}catch(d){o={error:d}}finally{try{!c&&!n&&(r=h.return)&&(yield r.call(h))}finally{if(o)throw o.error}}l.dispose(),e.dispose()}catch(d){l.dispose(),e.dispose(),i.reject(d)}}))}const Y4="$initialize";let Vw=!1;function s1(s){Gc&&(Vw||(Vw=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(s.message))}class Q4{constructor(e,t,i,n){this.vsWorker=e,this.req=t,this.method=i,this.args=n,this.type=0}}class Hw{constructor(e,t,i,n){this.vsWorker=e,this.seq=t,this.res=i,this.err=n,this.type=1}}class X4{constructor(e,t,i,n){this.vsWorker=e,this.req=t,this.eventName=i,this.arg=n,this.type=2}}class J4{constructor(e,t,i){this.vsWorker=e,this.req=t,this.event=i,this.type=3}}class eA{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}}class tA{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}sendMessage(e,t){const i=String(++this._lastSentReq);return new Promise((n,o)=>{this._pendingReplies[i]={resolve:n,reject:o},this._send(new Q4(this._workerId,i,e,t))})}listen(e,t){let i=null;const n=new B({onWillAddFirstListener:()=>{i=String(++this._lastSentReq),this._pendingEmitters.set(i,n),this._send(new X4(this._workerId,i,e,t))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(i),this._send(new eA(this._workerId,i)),i=null}});return n.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}const t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let i=e.err;e.err.$isError&&(i=new Error,i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack),t.reject(i);return}t.resolve(e.res)}_handleRequestMessage(e){const t=e.req;this._handler.handleMessage(e.method,e.args).then(n=>{this._send(new Hw(this._workerId,t,n,void 0))},n=>{n.detail instanceof Error&&(n.detail=hw(n.detail)),this._send(new Hw(this._workerId,t,void 0,hw(n)))})}_handleSubscribeEventMessage(e){const t=e.req,i=this._handler.handleEvent(e.eventName,e.arg)(n=>{this._send(new J4(this._workerId,t,n))});this._pendingEvents.set(t,i)}_handleEventMessage(e){if(!this._pendingEmitters.has(e.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){if(!this._pendingEvents.has(e.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)}_send(e){const t=[];if(e.type===0)for(let i=0;i{this._protocol.handleMessage(c)},c=>{n==null||n(c)})),this._protocol=new tA({sendMessage:(c,h)=>{this._worker.postMessage(c,h)},handleMessage:(c,h)=>{if(typeof i[c]!="function")return Promise.reject(new Error("Missing method "+c+" on main thread host."));try{return Promise.resolve(i[c].apply(i,h))}catch(u){return Promise.reject(u)}},handleEvent:(c,h)=>{if(Uk(c)){const u=i[c].call(i,h);if(typeof u!="function")throw new Error(`Missing dynamic event ${c} on main thread host.`);return u}if(zk(c)){const u=i[c];if(typeof u!="function")throw new Error(`Missing event ${c} on main thread host.`);return u}throw new Error(`Malformed event name ${c}`)}}),this._protocol.setWorkerId(this._worker.getId());let o=null;typeof It.require<"u"&&typeof It.require.getConfig=="function"?o=It.require.getConfig():typeof It.requirejs<"u"&&(o=It.requirejs.s.contexts._.config);const r=Xb(i);this._onModuleLoaded=this._protocol.sendMessage(Y4,[this._worker.getId(),JSON.parse(JSON.stringify(o)),t,r]);const a=(c,h)=>this._request(c,h),l=(c,h)=>this._protocol.listen(c,h);this._lazyProxy=new Promise((c,h)=>{n=h,this._onModuleLoaded.then(u=>{c(nA(u,a,l))},u=>{h(u),this._onError("Worker failed to load "+t,u)})})}getProxyObject(){return this._lazyProxy}_request(e,t){return new Promise((i,n)=>{this._onModuleLoaded.then(()=>{this._protocol.sendMessage(e,t).then(i,n)},n)})}_onError(e,t){console.error(e),console.info(t)}}function zk(s){return s[0]==="o"&&s[1]==="n"&&lr(s.charCodeAt(2))}function Uk(s){return/^onDynamic/.test(s)&&lr(s.charCodeAt(9))}function nA(s,e,t){const i=r=>function(){const a=Array.prototype.slice.call(arguments,0);return e(r,a)},n=r=>function(a){return t(r,a)},o={};for(const r of s){if(Uk(r)){o[r]=n(r);continue}if(zk(r)){o[r]=t(r,void 0);continue}o[r]=i(r)}return o}var Pp;const zw=(Pp=window.trustedTypes)===null||Pp===void 0?void 0:Pp.createPolicy("defaultWorkerFactory",{createScriptURL:s=>s});function sA(s){if(It.MonacoEnvironment){if(typeof It.MonacoEnvironment.getWorker=="function")return It.MonacoEnvironment.getWorker("workerMain.js",s);if(typeof It.MonacoEnvironment.getWorkerUrl=="function"){const e=It.MonacoEnvironment.getWorkerUrl("workerMain.js",s);return new Worker(zw?zw.createScriptURL(e):e,{name:s})}}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function oA(s){return typeof s.then=="function"}class rA{constructor(e,t,i,n,o){this.id=t;const r=sA(i);oA(r)?this.worker=r:this.worker=Promise.resolve(r),this.postMessage(e,[]),this.worker.then(a=>{a.onmessage=function(l){n(l.data)},a.onmessageerror=o,typeof a.addEventListener=="function"&&a.addEventListener("error",o)})}getId(){return this.id}postMessage(e,t){var i;(i=this.worker)===null||i===void 0||i.then(n=>n.postMessage(e,t))}dispose(){var e;(e=this.worker)===null||e===void 0||e.then(t=>t.terminate()),this.worker=null}}class Fm{constructor(e){this._label=e,this._webWorkerFailedBeforeError=!1}create(e,t,i){const n=++Fm.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new rA(e,n,this._label||"anonymous"+n,t,o=>{s1(o),this._webWorkerFailedBeforeError=o,i(o)})}}Fm.LAST_WORKER_ID=0;class nr{constructor(e,t,i,n){this.originalStart=e,this.originalLength=t,this.modifiedStart=i,this.modifiedLength=n}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}function GU(s){return Bm(s,0)}function Bm(s,e){switch(typeof s){case"object":return s===null?To(349,e):Array.isArray(s)?lA(s,e):cA(s,e);case"string":return kC(s,e);case"boolean":return aA(s,e);case"number":return To(s,e);case"undefined":return To(937,e);default:return To(617,e)}}function To(s,e){return(e<<5)-e+s|0}function aA(s,e){return To(s?433:863,e)}function kC(s,e){e=To(149417,e);for(let t=0,i=s.length;tBm(i,t),e)}function cA(s,e){return e=To(181387,e),Object.keys(s).sort().reduce((t,i)=>(t=kC(i,t),Bm(s[i],t)),e)}function Fp(s,e,t=32){const i=t-e,n=~((1<>>i)>>>0}function Uw(s,e=0,t=s.byteLength,i=0){for(let n=0;nt.toString(16).padStart(2,"0")).join(""):hA((s>>>0).toString(16),e/4)}class Wm{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(64+3),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(t===0)return;const i=this._buff;let n=this._buffLen,o=this._leftoverHighSurrogate,r,a;for(o!==0?(r=o,a=-1,o=0):(r=e.charCodeAt(0),a=0);;){let l=r;if(Qt(r))if(a+1>>6,e[t++]=128|(i&63)>>>0):i<65536?(e[t++]=224|(i&61440)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0):(e[t++]=240|(i&1835008)>>>18,e[t++]=128|(i&258048)>>>12,e[t++]=128|(i&4032)>>>6,e[t++]=128|(i&63)>>>0),t>=64&&(this._step(),t-=64,this._totalLen+=64,e[0]=e[64+0],e[1]=e[64+1],e[2]=e[64+2]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),_h(this._h0)+_h(this._h1)+_h(this._h2)+_h(this._h3)+_h(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,Uw(this._buff,this._buffLen),this._buffLen>56&&(this._step(),Uw(this._buff));const e=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(e/4294967296),!1),this._buffDV.setUint32(60,e%4294967296,!1),this._step()}_step(){const e=Wm._bigBlock32,t=this._buffDV;for(let u=0;u<64;u+=4)e.setUint32(u,t.getUint32(u,!1),!1);for(let u=64;u<320;u+=4)e.setUint32(u,Fp(e.getUint32(u-12,!1)^e.getUint32(u-32,!1)^e.getUint32(u-56,!1)^e.getUint32(u-64,!1),1),!1);let i=this._h0,n=this._h1,o=this._h2,r=this._h3,a=this._h4,l,c,h;for(let u=0;u<80;u++)u<20?(l=n&o|~n&r,c=1518500249):u<40?(l=n^o^r,c=1859775393):u<60?(l=n&o|n&r|o&r,c=2400959708):(l=n^o^r,c=3395469782),h=Fp(i,5)+l+a+c+e.getUint32(u*4,!1)&4294967295,a=r,r=o,o=Fp(n,30),n=i,i=h;this._h0=this._h0+i&4294967295,this._h1=this._h1+n&4294967295,this._h2=this._h2+o&4294967295,this._h3=this._h3+r&4294967295,this._h4=this._h4+a&4294967295}}Wm._bigBlock32=new DataView(new ArrayBuffer(320));class $w{constructor(e){this.source=e}getElements(){const e=this.source,t=new Int32Array(e.length);for(let i=0,n=e.length;i0||this.m_modifiedCount>0)&&this.m_changes.push(new nr(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 xo{constructor(e,t,i=null){this.ContinueProcessingPredicate=i,this._originalSequence=e,this._modifiedSequence=t;const[n,o,r]=xo._getElements(e),[a,l,c]=xo._getElements(t);this._hasStrings=r&&c,this._originalStringElements=n,this._originalElementsOrHash=o,this._modifiedStringElements=a,this._modifiedElementsOrHash=l,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&typeof e[0]=="string"}static _getElements(e){const t=e.getElements();if(xo._isStringArray(t)){const i=new Int32Array(t.length);for(let n=0,o=t.length;n=e&&n>=i&&this.ElementsAreEqual(t,n);)t--,n--;if(e>t||i>n){let u;return i<=n?(bl.Assert(e===t+1,"originalStart should only be one more than originalEnd"),u=[new nr(e,0,i,n-i+1)]):e<=t?(bl.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),u=[new nr(e,t-e+1,i,0)]):(bl.Assert(e===t+1,"originalStart should only be one more than originalEnd"),bl.Assert(i===n+1,"modifiedStart should only be one more than modifiedEnd"),u=[]),u}const r=[0],a=[0],l=this.ComputeRecursionPoint(e,t,i,n,r,a,o),c=r[0],h=a[0];if(l!==null)return l;if(!o[0]){const u=this.ComputeDiffRecursive(e,c,i,h,o);let d=[];return o[0]?d=[new nr(c+1,t-(c+1)+1,h+1,n-(h+1)+1)]:d=this.ComputeDiffRecursive(c+1,t,h+1,n,o),this.ConcatenateChanges(u,d)}return[new nr(e,t-e+1,i,n-i+1)]}WALKTRACE(e,t,i,n,o,r,a,l,c,h,u,d,f,g,m,_,C,b){let v=null,y=null,x=new jw,I=t,D=i,S=f[0]-_[0]-n,L=-1073741824,A=this.m_forwardHistory.length-1;do{const R=S+e;R===I||R=0&&(c=this.m_forwardHistory[A],e=c[0],I=1,D=c.length-1)}while(--A>=-1);if(v=x.getReverseChanges(),b[0]){let R=f[0]+1,P=_[0]+1;if(v!==null&&v.length>0){const W=v[v.length-1];R=Math.max(R,W.getOriginalEnd()),P=Math.max(P,W.getModifiedEnd())}y=[new nr(R,d-R+1,P,m-P+1)]}else{x=new jw,I=r,D=a,S=f[0]-_[0]-l,L=1073741824,A=C?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const R=S+o;R===I||R=h[R+1]?(u=h[R+1]-1,g=u-S-l,u>L&&x.MarkNextChange(),L=u+1,x.AddOriginalElement(u+1,g+1),S=R+1-o):(u=h[R-1],g=u-S-l,u>L&&x.MarkNextChange(),L=u,x.AddModifiedElement(u+1,g+1),S=R-1-o),A>=0&&(h=this.m_reverseHistory[A],o=h[0],I=1,D=h.length-1)}while(--A>=-1);y=x.getChanges()}return this.ConcatenateChanges(v,y)}ComputeRecursionPoint(e,t,i,n,o,r,a){let l=0,c=0,h=0,u=0,d=0,f=0;e--,i--,o[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const g=t-e+(n-i),m=g+1,_=new Int32Array(m),C=new Int32Array(m),b=n-i,v=t-e,y=e-i,x=t-n,D=(v-b)%2===0;_[b]=e,C[v]=t,a[0]=!1;for(let S=1;S<=g/2+1;S++){let L=0,A=0;h=this.ClipDiagonalBound(b-S,S,b,m),u=this.ClipDiagonalBound(b+S,S,b,m);for(let P=h;P<=u;P+=2){P===h||PL+A&&(L=l,A=c),!D&&Math.abs(P-v)<=S-1&&l>=C[P])return o[0]=l,r[0]=c,W<=C[P]&&1447>0&&S<=1447+1?this.WALKTRACE(b,h,u,y,v,d,f,x,_,C,l,t,o,c,n,r,D,a):null}const R=(L-e+(A-i)-S)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(L,R))return a[0]=!0,o[0]=L,r[0]=A,R>0&&1447>0&&S<=1447+1?this.WALKTRACE(b,h,u,y,v,d,f,x,_,C,l,t,o,c,n,r,D,a):(e++,i++,[new nr(e,t-e+1,i,n-i+1)]);d=this.ClipDiagonalBound(v-S,S,v,m),f=this.ClipDiagonalBound(v+S,S,v,m);for(let P=d;P<=f;P+=2){P===d||P=C[P+1]?l=C[P+1]-1:l=C[P-1],c=l-(P-v)-x;const W=l;for(;l>e&&c>i&&this.ElementsAreEqual(l,c);)l--,c--;if(C[P]=l,D&&Math.abs(P-b)<=S&&l<=_[P])return o[0]=l,r[0]=c,W>=_[P]&&1447>0&&S<=1447+1?this.WALKTRACE(b,h,u,y,v,d,f,x,_,C,l,t,o,c,n,r,D,a):null}if(S<=1447){let P=new Int32Array(u-h+2);P[0]=b-h+1,Cl.Copy2(_,h,P,1,u-h+1),this.m_forwardHistory.push(P),P=new Int32Array(f-d+2),P[0]=v-d+1,Cl.Copy2(C,d,P,1,f-d+1),this.m_reverseHistory.push(P)}}return this.WALKTRACE(b,h,u,y,v,d,f,x,_,C,l,t,o,c,n,r,D,a)}PrettifyChanges(e){for(let t=0;t0,a=i.modifiedLength>0;for(;i.originalStart+i.originalLength=0;t--){const i=e[t];let n=0,o=0;if(t>0){const u=e[t-1];n=u.originalStart+u.originalLength,o=u.modifiedStart+u.modifiedLength}const r=i.originalLength>0,a=i.modifiedLength>0;let l=0,c=this._boundaryScore(i.originalStart,i.originalLength,i.modifiedStart,i.modifiedLength);for(let u=1;;u++){const d=i.originalStart-u,f=i.modifiedStart-u;if(dc&&(c=m,l=u)}i.originalStart-=l,i.modifiedStart-=l;const h=[null];if(t>0&&this.ChangesOverlap(e[t-1],e[t],h)){e[t-1]=h[0],e.splice(t,1),t++;continue}}if(this._hasStrings)for(let t=1,i=e.length;t0&&f>l&&(l=f,c=u,h=d)}return l>0?[c,h]:null}_contiguousSequenceScore(e,t,i){let n=0;for(let o=0;o=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._OriginalIsBoundary(i-1)||this._OriginalIsBoundary(i))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){const i=e+t;if(this._ModifiedIsBoundary(i-1)||this._ModifiedIsBoundary(i))return!0}return!1}_boundaryScore(e,t,i,n){const o=this._OriginalRegionIsBoundary(e,t)?1:0,r=this._ModifiedRegionIsBoundary(i,n)?1:0;return o+r}ConcatenateChanges(e,t){const i=[];if(e.length===0||t.length===0)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],i)){const n=new Array(e.length+t.length-1);return Cl.Copy(e,0,n,0,e.length-1),n[e.length-1]=i[0],Cl.Copy(t,1,n,e.length,t.length-1),n}else{const n=new Array(e.length+t.length);return Cl.Copy(e,0,n,0,e.length),Cl.Copy(t,0,n,e.length,t.length),n}}ChangesOverlap(e,t,i){if(bl.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),bl.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 n=e.originalStart;let o=e.originalLength;const r=e.modifiedStart;let a=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(o=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(a=t.modifiedStart+t.modifiedLength-e.modifiedStart),i[0]=new nr(n,o,r,a),!0}else return i[0]=null,!1}ClipDiagonalBound(e,t,i,n){if(e>=0&&e255?255:s|0}function vl(s){return s<0?0:s>4294967295?4294967295:s|0}class dA{constructor(e){this.values=e,this.prefixSum=new Uint32Array(e.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(e,t){e=vl(e);const i=this.values,n=this.prefixSum,o=t.length;return o===0?!1:(this.values=new Uint32Array(i.length+o),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e),e+o),this.values.set(t,e),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(e,t){return e=vl(e),t=vl(t),this.values[e]===t?!1:(this.values[e]=t,e-1=i.length)return!1;const o=i.length-e;return t>=o&&(t=o),t===0?!1:(this.values=new Uint32Array(i.length-t),this.values.set(i.subarray(0,e),0),this.values.set(i.subarray(e+t),e),this.prefixSum=new Uint32Array(this.values.length),e-1=0&&this.prefixSum.set(n.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(e){return e<0?0:(e=vl(e),this._getPrefixSum(e))}_getPrefixSum(e){if(e<=this.prefixSumValidIndex[0])return this.prefixSum[e];let t=this.prefixSumValidIndex[0]+1;t===0&&(this.prefixSum[0]=this.values[0],t++),e>=this.values.length&&(e=this.values.length-1);for(let i=t;i<=e;i++)this.prefixSum[i]=this.prefixSum[i-1]+this.values[i];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],e),this.prefixSum[e]}getIndexOf(e){e=Math.floor(e),this.getTotalSum();let t=0,i=this.values.length-1,n=0,o=0,r=0;for(;t<=i;)if(n=t+(i-t)/2|0,o=this.prefixSum[n],r=o-this.values[n],e=o)t=n+1;else break;return new $k(n,e-r)}}class fA{constructor(e){this._values=e,this._isValid=!1,this._validEndIndex=-1,this._prefixSum=[],this._indexBySum=[]}getTotalSum(){return this._ensureValid(),this._indexBySum.length}getPrefixSum(e){return this._ensureValid(),e===0?0:this._prefixSum[e-1]}getIndexOf(e){this._ensureValid();const t=this._indexBySum[e],i=t>0?this._prefixSum[t-1]:0;return new $k(t,e-i)}removeValues(e,t){this._values.splice(e,t),this._invalidate(e)}insertValues(e,t){this._values=_m(this._values,e,t),this._invalidate(e)}_invalidate(e){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,e-1)}_ensureValid(){if(!this._isValid){for(let e=this._validEndIndex+1,t=this._values.length;e0?this._prefixSum[e-1]:0;this._prefixSum[e]=n+i;for(let o=0;o=0&&e<256?this._asciiMap[e]=i:this._map.set(e,i)}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 ZU{constructor(){this._actual=new nh(0)}add(e){this._actual.set(e,1)}has(e){return this._actual.get(e)===1}clear(){return this._actual.clear()}}class mA{constructor(e,t,i){const n=new Uint8Array(e*t);for(let o=0,r=e*t;ot&&(t=l),a>i&&(i=a),c>i&&(i=c)}t++,i++;const n=new mA(i,t,0);for(let o=0,r=e.length;o=this._maxCharCode?0:this._states.get(e,t)}}let Bp=null;function _A(){return Bp===null&&(Bp=new pA([[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]])),Bp}let bh=null;function bA(){if(bh===null){bh=new nh(0);const s=` <>'"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…`;for(let t=0;tn);if(n>0){const a=t.charCodeAt(n-1),l=t.charCodeAt(r);(a===40&&l===41||a===91&&l===93||a===123&&l===125)&&r--}return{range:{startLineNumber:i,startColumn:n+1,endLineNumber:i,endColumn:r+2},url:t.substring(n,r+1)}}static computeLinks(e,t=_A()){const i=bA(),n=[];for(let o=1,r=e.getLineCount();o<=r;o++){const a=e.getLineContent(o),l=a.length;let c=0,h=0,u=0,d=1,f=!1,g=!1,m=!1,_=!1;for(;c=0?(n+=i?1:-1,n<0?n=e.length-1:n%=e.length,e[n]):null}}o1.INSTANCE=new o1;class vA extends nh{constructor(e){super(0);for(let t=0,i=e.length;t(e.hasOwnProperty(t)||(e[t]=s(t)),e[t])}const Ic=wA(s=>new vA(s)),SA=999;class wl{constructor(e,t,i,n){this.searchString=e,this.isRegex=t,this.matchCase=i,this.wordSeparators=n}parseSearchRequest(){if(this.searchString==="")return null;let e;this.isRegex?e=yA(this.searchString):e=this.searchString.indexOf(` `)>=0;let t=null;try{t=gk(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:e,global:!0,unicode:!0})}catch{return null}if(!t)return null;let i=!this.isRegex&&!e;return i&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(i=this.matchCase),new o4(t,this.wordSeparators?Ic(this.wordSeparators):null,i?this.searchString:null)}}function yA(s){if(!s||s.length===0)return!1;for(let e=0,t=s.length;e=t)break;const n=s.charCodeAt(e);if(n===110||n===114||n===87)return!0}}return!1}function pa(s,e,t){if(!t)return new ku(s,null);const i=[];for(let n=0,o=e.length;n>0);t[o]>=e?n=o-1:t[o+1]>=e?(i=o,n=o):i=o+1}return i+1}}class $d{static findMatches(e,t,i,n,o){const r=t.parseSearchRequest();return r?r.regex.multiline?this._doFindMatchesMultiline(e,i,new Bl(r.wordSeparators,r.regex),n,o):this._doFindMatchesLineByLine(e,i,r,n,o):[]}static _getMultilineMatchRange(e,t,i,n,o,r){let a,l=0;n?(l=n.findLineFeedCountBeforeOffset(o),a=t+o+l):a=t+o;let c;if(n){const f=n.findLineFeedCountBeforeOffset(o+r.length)-l;c=a+r.length+f}else c=a+r.length;const h=e.getPositionAt(a),u=e.getPositionAt(c);return new N(h.lineNumber,h.column,u.lineNumber,u.column)}static _doFindMatchesMultiline(e,t,i,n,o){const r=e.getOffsetAt(t.getStartPosition()),a=e.getValueInRange(t,1),l=e.getEOL()===`\r `?new Kw(a):null,c=[];let h=0,u;for(i.reset(0);u=i.next(a);)if(c[h++]=pa(this._getMultilineMatchRange(e,r,a,l,u.index,u[0]),u,n),h>=o)return c;return c}static _doFindMatchesLineByLine(e,t,i,n,o){const r=[];let a=0;if(t.startLineNumber===t.endLineNumber){const c=e.getLineContent(t.startLineNumber).substring(t.startColumn-1,t.endColumn-1);return a=this._findMatchesInLine(i,c,t.startLineNumber,t.startColumn-1,a,r,n,o),r}const l=e.getLineContent(t.startLineNumber).substring(t.startColumn-1);a=this._findMatchesInLine(i,l,t.startLineNumber,t.startColumn-1,a,r,n,o);for(let c=t.startLineNumber+1;c=l))return o;return o}const h=new Bl(e.wordSeparators,e.regex);let u;h.reset(0);do if(u=h.next(t),u&&(r[o++]=pa(new N(i,u.index+1+n,i,u.index+1+u[0].length+n),u,a),o>=l))return o;while(u);return o}static findNextMatch(e,t,i,n){const o=t.parseSearchRequest();if(!o)return null;const r=new Bl(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindNextMatchMultiline(e,i,r,n):this._doFindNextMatchLineByLine(e,i,r,n)}static _doFindNextMatchMultiline(e,t,i,n){const o=new z(t.lineNumber,1),r=e.getOffsetAt(o),a=e.getLineCount(),l=e.getValueInRange(new N(o.lineNumber,o.column,a,e.getLineMaxColumn(a)),1),c=e.getEOL()===`\r `?new Kw(l):null;i.reset(t.column-1);const h=i.next(l);return h?pa(this._getMultilineMatchRange(e,r,l,c,h.index,h[0]),h,n):t.lineNumber!==1||t.column!==1?this._doFindNextMatchMultiline(e,new z(1,1),i,n):null}static _doFindNextMatchLineByLine(e,t,i,n){const o=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r),l=this._findFirstMatchInLine(i,a,r,t.column,n);if(l)return l;for(let c=1;c<=o;c++){const h=(r+c-1)%o,u=e.getLineContent(h+1),d=this._findFirstMatchInLine(i,u,h+1,1,n);if(d)return d}return null}static _findFirstMatchInLine(e,t,i,n,o){e.reset(n-1);const r=e.next(t);return r?pa(new N(i,r.index+1,i,r.index+1+r[0].length),r,o):null}static findPreviousMatch(e,t,i,n){const o=t.parseSearchRequest();if(!o)return null;const r=new Bl(o.wordSeparators,o.regex);return o.regex.multiline?this._doFindPreviousMatchMultiline(e,i,r,n):this._doFindPreviousMatchLineByLine(e,i,r,n)}static _doFindPreviousMatchMultiline(e,t,i,n){const o=this._doFindMatchesMultiline(e,new N(1,1,t.lineNumber,t.column),i,n,10*SA);if(o.length>0)return o[o.length-1];const r=e.getLineCount();return t.lineNumber!==r||t.column!==e.getLineMaxColumn(r)?this._doFindPreviousMatchMultiline(e,new z(r,e.getLineMaxColumn(r)),i,n):null}static _doFindPreviousMatchLineByLine(e,t,i,n){const o=e.getLineCount(),r=t.lineNumber,a=e.getLineContent(r).substring(0,t.column-1),l=this._findLastMatchInLine(i,a,r,n);if(l)return l;for(let c=1;c<=o;c++){const h=(o+r-c-1)%o,u=e.getLineContent(h+1),d=this._findLastMatchInLine(i,u,h+1,n);if(d)return d}return null}static _findLastMatchInLine(e,t,i,n){let o=null,r;for(e.reset(0);r=e.next(t);)o=pa(new N(i,r.index+1,i,r.index+1+r[0].length),r,n);return o}}function LA(s,e,t,i,n){if(i===0)return!0;const o=e.charCodeAt(i-1);if(s.get(o)!==0||o===13||o===10)return!0;if(n>0){const r=e.charCodeAt(i);if(s.get(r)!==0)return!0}return!1}function DA(s,e,t,i,n){if(i+n===t)return!0;const o=e.charCodeAt(i+n);if(s.get(o)!==0||o===13||o===10)return!0;if(n>0){const r=e.charCodeAt(i+n-1);if(s.get(r)!==0)return!0}return!1}function xC(s,e,t,i,n){return LA(s,e,t,i,n)&&DA(s,e,t,i,n)}class Bl{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 i;do{if(this._prevMatchStartIndex+this._prevMatchLength===t||(i=this._searchRegex.exec(e),!i))return null;const n=i.index,o=i[0].length;if(n===this._prevMatchStartIndex&&o===this._prevMatchLength){if(o===0){hg(e,t,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=n,this._prevMatchLength=o,!this._wordSeparators||xC(this._wordSeparators,e,t,n,o))return i}while(i);return null}}class kA{static computeUnicodeHighlights(e,t,i){const n=i?i.startLineNumber:1,o=i?i.endLineNumber:e.getLineCount(),r=new qw(t),a=r.getCandidateCodePoints();let l;a==="allNonBasicAscii"?l=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):l=new RegExp(`${xA(Array.from(a))}`,"g");const c=new Bl(null,l),h=[];let u=!1,d,f=0,g=0,m=0;e:for(let _=n,C=o;_<=C;_++){const b=e.getLineContent(_),v=b.length;c.reset(0);do if(d=c.next(b),d){let y=d.index,x=d.index+d[0].length;if(y>0){const L=b.charCodeAt(y-1);Qt(L)&&y--}if(x+1=L){u=!0;break e}h.push(new N(_,y+1,_,x+1))}}while(d)}return{ranges:h,hasMore:u,ambiguousCharacterCount:f,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:m}}static computeUnicodeHighlightReason(e,t){const i=new qw(t);switch(i.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{const o=e.codePointAt(0),r=i.ambiguousCharacters.getPrimaryConfusable(o),a=Qn.getLocales().filter(l=>!Qn.getInstance(new Set([...t.allowedLocales,l])).isAmbiguous(o));return{kind:0,confusableWith:String.fromCodePoint(r),notAmbiguousInLocales:a}}case 1:return{kind:2}}}}function xA(s,e){return`[${Bo(s.map(i=>String.fromCodePoint(i)).join(""))}]`}class qw{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=Qn.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const e=new Set;if(this.options.invisibleCharacters)for(const t of Nr.codePoints)Gw(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 i=e.codePointAt(0);if(this.allowedCodePoints.has(i))return 0;if(this.options.nonBasicASCII)return 1;let n=!1,o=!1;if(t)for(const r of t){const a=r.codePointAt(0),l=dC(r);n=n||l,!l&&!this.ambiguousCharacters.isAmbiguous(a)&&!Nr.isInvisibleCharacter(a)&&(o=!0)}return!n&&o?0:this.options.invisibleCharacters&&!Gw(e)&&Nr.isInvisibleCharacter(i)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(i)?3:0}}function Gw(s){return s===" "||s===` `||s===" "}class Iu{constructor(e,t,i){this.originalRange=e,this.modifiedRange=t,this.innerChanges=i}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}}class Vm{constructor(e,t){this.originalRange=e,this.modifiedRange=t}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}}let ps=class{constructor(e,t){this.startLineNumber=e,this.endLineNumberExclusive=t}get isEmpty(){return this.startLineNumber===this.endLineNumberExclusive}delta(e){return new ps(this.startLineNumber+e,this.endLineNumberExclusive+e)}get length(){return this.endLineNumberExclusive-this.startLineNumber}join(e){return new ps(Math.min(this.startLineNumber,e.startLineNumber),Math.max(this.endLineNumberExclusive,e.endLineNumberExclusive))}toString(){return`[${this.startLineNumber},${this.endLineNumberExclusive})`}};const EA=3;class IA{computeDiff(e,t,i){var n;const r=new AA(e,t,{maxComputationTime:i.maxComputationTimeMs,shouldIgnoreTrimWhitespace:i.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),a=[];let l=null;for(const c of r.changes){let h;c.originalEndLineNumber===0?h=new ps(c.originalStartLineNumber+1,c.originalStartLineNumber+1):h=new ps(c.originalStartLineNumber,c.originalEndLineNumber+1);let u;c.modifiedEndLineNumber===0?u=new ps(c.modifiedStartLineNumber+1,c.modifiedStartLineNumber+1):u=new ps(c.modifiedStartLineNumber,c.modifiedEndLineNumber+1);let d=new Iu(h,u,(n=c.charChanges)===null||n===void 0?void 0:n.map(f=>new Vm(new N(f.originalStartLineNumber,f.originalStartColumn,f.originalEndLineNumber,f.originalEndColumn),new N(f.modifiedStartLineNumber,f.modifiedStartColumn,f.modifiedEndLineNumber,f.modifiedEndColumn))));l&&(l.modifiedRange.endLineNumberExclusive===d.modifiedRange.startLineNumber||l.originalRange.endLineNumberExclusive===d.originalRange.startLineNumber)&&(d=new Iu(l.originalRange.join(d.originalRange),l.modifiedRange.join(d.modifiedRange),l.innerChanges&&d.innerChanges?l.innerChanges.concat(d.innerChanges):void 0),a.pop()),a.push(d),l=d}return vC(()=>yk(a,(c,h)=>h.originalRange.startLineNumber-c.originalRange.endLineNumberExclusive===h.modifiedRange.startLineNumber-c.modifiedRange.endLineNumberExclusive&&c.originalRange.endLineNumberExclusive(e===10?"\\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 e===-1?this.getStartLineNumber(e+1):(this._assertIndex(e,this._lineNumbers),this._charCodes[e]===10?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 e===-1?this.getStartColumn(e+1):(this._assertIndex(e,this._columns),this._charCodes[e]===10?1:this._columns[e]+1)}}class oc{constructor(e,t,i,n,o,r,a,l){this.originalStartLineNumber=e,this.originalStartColumn=t,this.originalEndLineNumber=i,this.originalEndColumn=n,this.modifiedStartLineNumber=o,this.modifiedStartColumn=r,this.modifiedEndLineNumber=a,this.modifiedEndColumn=l}static createFromDiffChange(e,t,i){const n=t.getStartLineNumber(e.originalStart),o=t.getStartColumn(e.originalStart),r=t.getEndLineNumber(e.originalStart+e.originalLength-1),a=t.getEndColumn(e.originalStart+e.originalLength-1),l=i.getStartLineNumber(e.modifiedStart),c=i.getStartColumn(e.modifiedStart),h=i.getEndLineNumber(e.modifiedStart+e.modifiedLength-1),u=i.getEndColumn(e.modifiedStart+e.modifiedLength-1);return new oc(n,o,r,a,l,c,h,u)}}function TA(s){if(s.length<=1)return s;const e=[s[0]];let t=e[0];for(let i=1,n=s.length;i0&&t.originalLength<20&&t.modifiedLength>0&&t.modifiedLength<20&&o()){const f=i.createCharSequence(e,t.originalStart,t.originalStart+t.originalLength-1),g=n.createCharSequence(e,t.modifiedStart,t.modifiedStart+t.modifiedLength-1);if(f.getElements().length>0&&g.getElements().length>0){let m=jk(f,g,o,!0).changes;a&&(m=TA(m)),d=[];for(let _=0,C=m.length;_1&&m>1;){const _=d.charCodeAt(g-2),C=f.charCodeAt(m-2);if(_!==C)break;g--,m--}(g>1||m>1)&&this._pushTrimWhitespaceCharChange(n,o+1,1,g,r+1,1,m)}{let g=a1(d,1),m=a1(f,1);const _=d.length+1,C=f.length+1;for(;g<_&&m!0;const e=Date.now();return()=>Date.now()-e ${this.seq2Range}`}}class cn{constructor(e,t){this.start=e,this.endExclusive=t}get isEmpty(){return this.start===this.endExclusive}delta(e){return new cn(this.start+e,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}join(e){return new cn(Math.min(this.start,e.start),Math.max(this.endExclusive,e.endExclusive))}}class Wp{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,i){this.array[e+t*this.width]=i}}class MA{compute(e,t,i){const n=new Wp(e.length,t.length),o=new Wp(e.length,t.length),r=new Wp(e.length,t.length);for(let f=0;f0&&g>0&&o.get(f-1,g-1)===3&&(C+=r.get(f-1,g-1)),C+=i?i(f,g):1):C=-1;const b=Math.max(m,_,C);if(b===C){const v=f>0&&g>0?r.get(f-1,g-1):0;r.set(f,g,v+1),o.set(f,g,3)}else b===m?(r.set(f,g,0),o.set(f,g,1)):b===_&&(r.set(f,g,0),o.set(f,g,2));n.set(f,g,b)}const a=[];let l=e.length,c=t.length;function h(f,g){(f+1!==l||g+1!==c)&&a.push(new Qs(new cn(f+1,l),new cn(g+1,c))),l=f,c=g}let u=e.length-1,d=t.length-1;for(;u>=0&&d>=0;)o.get(u,d)===3?(h(u,d),u--,d--):o.get(u,d)===1?u--:d--;return h(-1,-1),a.reverse(),a}}function Qw(s,e,t){let i=t;return i=OA(s,e,i),i=PA(s,e,i),i}function RA(s,e,t){const i=[];for(const n of t){const o=i[i.length-1];if(!o){i.push(n);continue}n.seq1Range.start-o.seq1Range.endExclusive<=2||n.seq2Range.start-o.seq2Range.endExclusive<=2?i[i.length-1]=new Qs(o.seq1Range.join(n.seq1Range),o.seq2Range.join(n.seq2Range)):i.push(n)}return i}function OA(s,e,t){const i=[];t.length>0&&i.push(t[0]);for(let n=1;n0?t[i-1].seq2Range.endExclusive:-1,r=i+10?t[i-1].seq1Range.endExclusive:-1,r=i+1n&&t.getElement(s.seq2Range.start-r)===t.getElement(s.seq2Range.endExclusive-r)&&r<20;)r++;r--;let a=0;for(;s.seq2Range.start+ac&&(c=g,l=h)}return l!==0?new Qs(s.seq1Range.delta(l),s.seq2Range.delta(l)):s}class FA{compute(e,t){if(e.length===0)return[new Qs(new cn(0,0),new cn(0,t.length))];if(t.length===0)return[new Qs(new cn(0,e.length),new cn(0,0))];function i(d,f){for(;d=this.negativeArr.length){const i=this.negativeArr;this.negativeArr=new Int32Array(i.length*2),this.negativeArr.set(i)}this.negativeArr[e]=t}else{if(e>=this.positiveArr.length){const i=this.positiveArr;this.positiveArr=new Int32Array(i.length*2),this.positiveArr.set(i)}this.positiveArr[e]=t}}}class WA{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 VA{constructor(){this.dynamicProgrammingDiffing=new MA,this.myersDiffingAlgorithm=new FA}computeDiff(e,t,i){const n=new Map;function o(_){let C=n.get(_);return C===void 0&&(C=n.size,n.set(_,C)),C}const r=e.map(_=>o(_.trim())),a=t.map(_=>o(_.trim())),l=new eS(r,e),c=new eS(a,t);let h=(()=>l.length+c.length<1500?this.dynamicProgrammingDiffing.compute(l,c,(_,C)=>e[_]===t[C]?t[C].length===0?.1:1+Math.log(1+t[C].length):.99):this.myersDiffingAlgorithm.compute(l,c))();h=Qw(l,c,h);const u=[],d=_=>{for(let C=0;C<_;C++){const b=f+C,v=g+C;if(e[b]!==t[v]){const y=this.refineDiff(e,t,new Qs(new cn(b,b+1),new cn(v,v+1)));for(const x of y)u.push(x)}}};let f=0,g=0;for(const _ of h){vC(()=>_.seq1Range.start-f===_.seq2Range.start-g);const C=_.seq1Range.start-f;d(C),f=_.seq1Range.endExclusive,g=_.seq2Range.endExclusive;const b=this.refineDiff(e,t,_);for(const v of b)u.push(v)}return d(e.length-f),{quitEarly:!1,changes:HA(u)}}refineDiff(e,t,i){const n=new iS(e,i.seq1Range),o=new iS(t,i.seq2Range),r=n.length+o.length<500?this.dynamicProgrammingDiffing.compute(n,o):this.myersDiffingAlgorithm.compute(n,o);let a=Qw(n,o,r);return a=RA(n,o,a),a.map(c=>new Vm(n.translateRange(c.seq1Range).delta(i.seq1Range.start),o.translateRange(c.seq2Range).delta(i.seq2Range.start)))}}function HA(s){const e=[];for(const t of zA(s,(i,n)=>n.originalRange.startLineNumber-(i.originalRange.endLineNumber-(i.originalRange.endColumn>1?0:1))<=1||n.modifiedRange.startLineNumber-(i.modifiedRange.endLineNumber-(i.modifiedRange.endColumn>1?0:1))<=1)){const i=t[0],n=t[t.length-1];e.push(new Iu(new ps(i.originalRange.startLineNumber,n.originalRange.endLineNumber+(n.originalRange.endColumn>1||n.modifiedRange.endColumn>1?1:0)),new ps(i.modifiedRange.startLineNumber,n.modifiedRange.endLineNumber+(n.originalRange.endColumn>1||n.modifiedRange.endColumn>1?1:0)),t))}return vC(()=>yk(e,(t,i)=>i.originalRange.startLineNumber-t.originalRange.endLineNumberExclusive===i.modifiedRange.startLineNumber-t.modifiedRange.endLineNumberExclusive&&t.originalRange.endLineNumberExclusive0?this.elements[e-1]:-1),i=sS(ee?i=o:t=o+1}const n=t===0?0:this.firstCharOnLineOffsets[t-1];return new z(t+1,e-n+1)}translateRange(e){return N.fromPositions(this.translateOffset(e.start),this.translateOffset(e.endExclusive))}}const UA={[0]:0,[1]:0,[2]:0,[3]:10,[4]:2,[5]:3,[6]:10,[7]:10};function nS(s){return UA[s]}function sS(s){return s===10?7:s===13?6:$A(s)?5:s>=97&&s<=122?0:s>=65&&s<=90?1:s>=48&&s<=57?2:s===-1?3:4}function $A(s){return s===32||s===9}const oS={smart:new IA,experimental:new VA};var aa=globalThis&&globalThis.__awaiter||function(s,e,t,i){function n(o){return o instanceof t?o:new t(function(r){r(o)})}return new(t||(t=Promise))(function(o,r){function a(h){try{c(i.next(h))}catch(u){r(u)}}function l(h){try{c(i.throw(h))}catch(u){r(u)}}function c(h){h.done?o(h.value):n(h.value).then(a,l)}c((i=i.apply(s,e||[])).next())})};class jA extends gA{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(e){return this._lines[e-1]}getWordAtPosition(e,t){const i=Su(e.column,zD(t),this._lines[e.lineNumber-1],0);return i?new N(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn):null}words(e){const t=this._lines,i=this._wordenize.bind(this);let n=0,o="",r=0,a=[];return{*[Symbol.iterator](){for(;;)if(rthis._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{const o=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>o&&(i=o,n=!0)}return n?{lineNumber:t,column:i}:e}}class Ar{constructor(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(e){return this._models[e]}_getModels(){const e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}acceptNewModel(e){this._models[e.url]=new jA(Be.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]}computeUnicodeHighlights(e,t,i){return aa(this,void 0,void 0,function*(){const n=this._getModel(e);return n?kA.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}})}computeDiff(e,t,i,n){return aa(this,void 0,void 0,function*(){const o=this._getModel(e),r=this._getModel(t);return!o||!r?null:Ar.computeDiff(o,r,i,n)})}static computeDiff(e,t,i,n){const o=n==="experimental"?oS.experimental:oS.smart,r=e.getLinesContent(),a=t.getLinesContent(),l=o.computeDiff(r,a,i);return{identical:l.changes.length>0?!1:this._modelsAreIdentical(e,t),quitEarly:l.quitEarly,changes:l.changes.map(h=>{var u;return[h.originalRange.startLineNumber,h.originalRange.endLineNumberExclusive,h.modifiedRange.startLineNumber,h.modifiedRange.endLineNumberExclusive,(u=h.innerChanges)===null||u===void 0?void 0:u.map(d=>[d.originalRange.startLineNumber,d.originalRange.startColumn,d.originalRange.endLineNumber,d.originalRange.endColumn,d.modifiedRange.startLineNumber,d.modifiedRange.startColumn,d.modifiedRange.endLineNumber,d.modifiedRange.endColumn])]})}}static _modelsAreIdentical(e,t){const i=e.getLineCount(),n=t.getLineCount();if(i!==n)return!1;for(let o=1;o<=i;o++){const r=e.getLineContent(o),a=t.getLineContent(o);if(r!==a)return!1}return!0}computeMoreMinimalEdits(e,t){return aa(this,void 0,void 0,function*(){const i=this._getModel(e);if(!i)return t;const n=[];let o;t=t.slice(0).sort((r,a)=>{if(r.range&&a.range)return N.compareRangesUsingStarts(r.range,a.range);const l=r.range?0:1,c=a.range?0:1;return l-c});for(let{range:r,text:a,eol:l}of t){if(typeof l=="number"&&(o=l),N.isEmpty(r)&&!a)continue;const c=i.getValueInRange(r);if(a=a.replace(/\r\n|\n|\r/g,i.eol),c===a)continue;if(Math.max(a.length,c.length)>Ar._diffLimit){n.push({range:r,text:a});continue}const h=uA(c,a,!1),u=i.offsetAt(N.lift(r).getStartPosition());for(const d of h){const f=i.positionAt(u+d.originalStart),g=i.positionAt(u+d.originalStart+d.originalLength),m={text:a.substr(d.modifiedStart,d.modifiedLength),range:{startLineNumber:f.lineNumber,startColumn:f.column,endLineNumber:g.lineNumber,endColumn:g.column}};i.getValueInRange(m.range)!==m.text&&n.push(m)}}return typeof o=="number"&&n.push({eol:o,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),n})}computeLinks(e){return aa(this,void 0,void 0,function*(){const t=this._getModel(e);return t?CA(t):null})}textualSuggest(e,t,i,n){return aa(this,void 0,void 0,function*(){const o=new Jc(!0),r=new RegExp(i,n),a=new Set;e:for(const l of e){const c=this._getModel(l);if(c){for(const h of c.words(r))if(!(h===t||!isNaN(Number(h)))&&(a.add(h),a.size>Ar._suggestionsLimit))break e}}return{words:Array.from(a),duration:o.elapsed()}})}computeWordRanges(e,t,i,n){return aa(this,void 0,void 0,function*(){const o=this._getModel(e);if(!o)return Object.create(null);const r=new RegExp(i,n),a=Object.create(null);for(let l=t.startLineNumber;lthis._host.fhr(a,l)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(r,t),Promise.resolve(Xb(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))}fmr(e,t){if(!this._foreignModule||typeof this._foreignModule[e]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(i){return Promise.reject(i)}}}Ar._diffLimit=1e5;Ar._suggestionsLimit=1e4;typeof importScripts=="function"&&(It.monaco=uk());const Kk=Ue("textResourceConfigurationService"),qk=Ue("textResourcePropertiesService"),Ho=Ue("logService");var Kn;(function(s){s[s.Off=0]="Off",s[s.Trace=1]="Trace",s[s.Debug=2]="Debug",s[s.Info=3]="Info",s[s.Warning=4]="Warning",s[s.Error=5]="Error"})(Kn||(Kn={}));const Gk=Kn.Info;class Zk extends Y{constructor(){super(...arguments),this.level=Gk,this._onDidChangeLogLevel=this._register(new B),this.onDidChangeLogLevel=this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return this.level!==Kn.Off&&this.level<=e}}class KA extends Zk{constructor(e=Gk){super(),this.setLevel(e)}trace(e,...t){this.checkLogLevel(Kn.Trace)&&console.log("%cTRACE","color: #888",e,...t)}debug(e,...t){this.checkLogLevel(Kn.Debug)&&console.log("%cDEBUG","background: #eee; color: #888",e,...t)}info(e,...t){this.checkLogLevel(Kn.Info)&&console.log("%c INFO","color: #33f",e,...t)}error(e,...t){this.checkLogLevel(Kn.Error)&&console.log("%c ERR","color: #f33",e,...t)}dispose(){}}class qA extends Zk{constructor(e){super(),this.loggers=e,e.length&&this.setLevel(e[0].getLevel())}setLevel(e){for(const t of this.loggers)t.setLevel(e);super.setLevel(e)}trace(e,...t){for(const i of this.loggers)i.trace(e,...t)}debug(e,...t){for(const i of this.loggers)i.debug(e,...t)}info(e,...t){for(const i of this.loggers)i.info(e,...t)}error(e,...t){for(const i of this.loggers)i.error(e,...t)}dispose(){for(const e of this.loggers)e.dispose()}}const lt=Ue("ILanguageFeaturesService");var GA=globalThis&&globalThis.__decorate||function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Ch=globalThis&&globalThis.__param||function(s,e){return function(t,i){e(t,i,s)}},bg=globalThis&&globalThis.__awaiter||function(s,e,t,i){function n(o){return o instanceof t?o:new t(function(r){r(o)})}return new(t||(t=Promise))(function(o,r){function a(h){try{c(i.next(h))}catch(u){r(u)}}function l(h){try{c(i.throw(h))}catch(u){r(u)}}function c(h){h.done?o(h.value):n(h.value).then(a,l)}c((i=i.apply(s,e||[])).next())})};const rS=60*1e3,aS=5*60*1e3;function _a(s,e){const t=s.getModel(e);return!(!t||t.isTooLargeForSyncing())}let l1=class extends Y{constructor(e,t,i,n,o){super(),this._modelService=e,this._workerManager=this._register(new YA(this._modelService,n)),this._logService=i,this._register(o.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:(r,a)=>_a(this._modelService,r.uri)?this._workerManager.withWorker().then(l=>l.computeLinks(r.uri)).then(l=>l&&{links:l}):Promise.resolve({links:[]})})),this._register(o.completionProvider.register("*",new ZA(this._workerManager,t,this._modelService,n)))}dispose(){super.dispose()}canComputeUnicodeHighlights(e){return _a(this._modelService,e)}computedUnicodeHighlights(e,t,i){return this._workerManager.withWorker().then(n=>n.computedUnicodeHighlights(e,t,i))}computeDiff(e,t,i,n){return bg(this,void 0,void 0,function*(){const o=yield this._workerManager.withWorker().then(a=>a.computeDiff(e,t,i,n));return o?{identical:o.identical,quitEarly:o.quitEarly,changes:o.changes.map(a=>{var l;return new Iu(new ps(a[0],a[1]),new ps(a[2],a[3]),(l=a[4])===null||l===void 0?void 0:l.map(c=>new Vm(new N(c[0],c[1],c[2],c[3]),new N(c[4],c[5],c[6],c[7]))))})}:null})}computeMoreMinimalEdits(e,t){if(pm(t)){if(!_a(this._modelService,e))return Promise.resolve(t);const i=Jc.create(!0),n=this._workerManager.withWorker().then(o=>o.computeMoreMinimalEdits(e,t));return n.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",e.toString(!0),i.elapsed())),Promise.race([n,Eu(1e3).then(()=>t)])}else return Promise.resolve(void 0)}canNavigateValueSet(e){return _a(this._modelService,e)}navigateValueSet(e,t,i){return this._workerManager.withWorker().then(n=>n.navigateValueSet(e,t,i))}canComputeWordRanges(e){return _a(this._modelService,e)}computeWordRanges(e,t){return this._workerManager.withWorker().then(i=>i.computeWordRanges(e,t))}};l1=GA([Ch(0,ji),Ch(1,Kk),Ch(2,Ho),Ch(3,oo),Ch(4,lt)],l1);class ZA{constructor(e,t,i,n){this.languageConfigurationService=n,this._debugDisplayName="wordbasedCompletions",this._workerManager=e,this._configurationService=t,this._modelService=i}provideCompletionItems(e,t){return bg(this,void 0,void 0,function*(){const i=this._configurationService.getValue(e.uri,t,"editor");if(!i.wordBasedSuggestions)return;const n=[];if(i.wordBasedSuggestionsMode==="currentDocument")_a(this._modelService,e.uri)&&n.push(e.uri);else for(const u of this._modelService.getModels())_a(this._modelService,u.uri)&&(u===e?n.unshift(u.uri):(i.wordBasedSuggestionsMode==="allDocuments"||u.getLanguageId()===e.getLanguageId())&&n.push(u.uri));if(n.length===0)return;const o=this.languageConfigurationService.getLanguageConfiguration(e.getLanguageId()).getWordDefinition(),r=e.getWordAtPosition(t),a=r?new N(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn):N.fromPositions(t),l=a.setEndPosition(t.lineNumber,t.column),h=yield(yield this._workerManager.withWorker()).textualSuggest(n,r==null?void 0:r.word,o);if(h)return{duration:h.duration,suggestions:h.words.map(u=>({kind:18,label:u,insertText:u,range:{insert:l,replace:a}}))}})}}class YA extends Y{constructor(e,t){super(),this.languageConfigurationService=t,this._modelService=e,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new _d).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(aS/2)),this._register(this._modelService.onModelRemoved(n=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;this._modelService.getModels().length===0&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;new Date().getTime()-this._lastWorkerUsedTime>aS&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new Yk(this._modelService,!1,"editorWorkerService",this.languageConfigurationService)),Promise.resolve(this._editorWorkerClient)}}class QA extends Y{constructor(e,t,i){if(super(),this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),this._proxy=e,this._modelService=t,!i){const n=new _d;n.cancelAndSet(()=>this._checkStopModelSync(),Math.round(rS/2)),this._register(n)}}dispose(){for(const e in this._syncedModels)Pt(this._syncedModels[e]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(e,t){for(const i of e){const n=i.toString();this._syncedModels[n]||this._beginModelSync(i,t),this._syncedModels[n]&&(this._syncedModelsLastUsedTime[n]=new Date().getTime())}}_checkStopModelSync(){const e=new Date().getTime(),t=[];for(const i in this._syncedModelsLastUsedTime)e-this._syncedModelsLastUsedTime[i]>rS&&t.push(i);for(const i of t)this._stopModelSync(i)}_beginModelSync(e,t){const i=this._modelService.getModel(e);if(!i||!t&&i.isTooLargeForSyncing())return;const n=e.toString();this._proxy.acceptNewModel({url:i.uri.toString(),lines:i.getLinesContent(),EOL:i.getEOL(),versionId:i.getVersionId()});const o=new be;o.add(i.onDidChangeContent(r=>{this._proxy.acceptModelChanged(n.toString(),r)})),o.add(i.onWillDispose(()=>{this._stopModelSync(n)})),o.add(tt(()=>{this._proxy.acceptRemovedModel(n)})),this._syncedModels[n]=o}_stopModelSync(e){const t=this._syncedModels[e];delete this._syncedModels[e],delete this._syncedModelsLastUsedTime[e],Pt(t)}}class lS{constructor(e){this._instance=e,this._proxyObj=Promise.resolve(this._instance)}dispose(){this._instance.dispose()}getProxyObject(){return this._proxyObj}}class Vp{constructor(e){this._workerClient=e}fhr(e,t){return this._workerClient.fhr(e,t)}}class Yk extends Y{constructor(e,t,i,n){super(),this.languageConfigurationService=n,this._disposed=!1,this._modelService=e,this._keepIdleModels=t,this._workerFactory=new Fm(i),this._worker=null,this._modelManager=null}fhr(e,t){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(new iA(this._workerFactory,"vs/editor/common/services/editorSimpleWorker",new Vp(this)))}catch(e){s1(e),this._worker=new lS(new Ar(new Vp(this),null))}return this._worker}_getProxy(){return this._getOrCreateWorker().getProxyObject().then(void 0,e=>(s1(e),this._worker=new lS(new Ar(new Vp(this),null)),this._getOrCreateWorker().getProxyObject()))}_getOrCreateModelManager(e){return this._modelManager||(this._modelManager=this._register(new QA(e,this._modelService,this._keepIdleModels))),this._modelManager}_withSyncedResources(e,t=!1){return bg(this,void 0,void 0,function*(){return this._disposed?Promise.reject($N()):this._getProxy().then(i=>(this._getOrCreateModelManager(i).ensureSyncedResources(e,t),i))})}computedUnicodeHighlights(e,t,i){return this._withSyncedResources([e]).then(n=>n.computeUnicodeHighlights(e.toString(),t,i))}computeDiff(e,t,i,n){return this._withSyncedResources([e,t],!0).then(o=>o.computeDiff(e.toString(),t.toString(),i,n))}computeMoreMinimalEdits(e,t){return this._withSyncedResources([e]).then(i=>i.computeMoreMinimalEdits(e.toString(),t))}computeLinks(e){return this._withSyncedResources([e]).then(t=>t.computeLinks(e.toString()))}textualSuggest(e,t,i){return bg(this,void 0,void 0,function*(){const n=yield this._withSyncedResources(e),o=i.source,r=Dp(i);return n.textualSuggest(e.map(a=>a.toString()),t,o,r)})}computeWordRanges(e,t){return this._withSyncedResources([e]).then(i=>{const n=this._modelService.getModel(e);if(!n)return Promise.resolve(null);const o=this.languageConfigurationService.getLanguageConfiguration(n.getLanguageId()).getWordDefinition(),r=o.source,a=Dp(o);return i.computeWordRanges(e.toString(),t,r,a)})}navigateValueSet(e,t,i){return this._withSyncedResources([e]).then(n=>{const o=this._modelService.getModel(e);if(!o)return null;const r=this.languageConfigurationService.getLanguageConfiguration(o.getLanguageId()).getWordDefinition(),a=r.source,l=Dp(r);return n.navigateValueSet(e.toString(),t,i,a,l)})}dispose(){super.dispose(),this._disposed=!0}}function XA(s,e,t){return new JA(s,e,t)}class JA extends Yk{constructor(e,t,i){super(e,i.keepIdleModels||!1,i.label,t),this._foreignModuleId=i.moduleId,this._foreignModuleCreateData=i.createData||null,this._foreignModuleHost=i.host||null,this._foreignProxy=null}fhr(e,t){if(!this._foreignModuleHost||typeof this._foreignModuleHost[e]!="function")return Promise.reject(new Error("Missing method "+e+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[e].apply(this._foreignModuleHost,t))}catch(i){return Promise.reject(i)}}_getForeignProxy(){return this._foreignProxy||(this._foreignProxy=this._getProxy().then(e=>{const t=this._foreignModuleHost?Xb(this._foreignModuleHost):[];return e.loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,t).then(i=>{this._foreignModuleCreateData=null;const n=(a,l)=>e.fmr(a,l),o=(a,l)=>function(){const c=Array.prototype.slice.call(arguments,0);return l(a,c)},r={};for(const a of i)r[a]=o(a,n);return r})})),this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(e){return this._withSyncedResources(e).then(t=>this.getProxy())}}class Yi{static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static getClassNameFromMetadata(e){let i="mtk"+this.getForeground(e);const n=this.getFontStyle(e);return n&1&&(i+=" mtki"),n&2&&(i+=" mtkb"),n&4&&(i+=" mtku"),n&8&&(i+=" mtks"),i}static getInlineStyleFromMetadata(e,t){const i=this.getForeground(e),n=this.getFontStyle(e);let o=`color: ${t[i]};`;n&1&&(o+="font-style: italic;"),n&2&&(o+="font-weight: bold;");let r="";return n&4&&(r+=" underline"),n&8&&(r+=" line-through"),r&&(o+=`text-decoration:${r};`),o}static getPresentationFromMetadata(e){const t=this.getForeground(e),i=this.getFontStyle(e);return{foreground:t,italic:Boolean(i&1),bold:Boolean(i&2),underline:Boolean(i&4),strikethrough:Boolean(i&8)}}}class ei{static createEmpty(e,t){const i=ei.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new ei(n,e,t)}constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this._languageIdCodec=i}equals(e){return e instanceof ei?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,t,i){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;const n=t<<1,o=n+(i<<1);for(let r=n;r0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){const t=this._tokens[(e<<1)+1],i=Yi.getLanguageId(t);return this._languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[(e<<1)+1];return Yi.getTokenType(t)}getForeground(e){const t=this._tokens[(e<<1)+1];return Yi.getForeground(t)}getClassName(e){const t=this._tokens[(e<<1)+1];return Yi.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[(e<<1)+1];return Yi.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[(e<<1)+1];return Yi.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return ei.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new EC(this,e,t,i)}static convertToEndOffset(e,t){const n=(e.length>>>1)-1;for(let o=0;o>>1)-1;for(;it&&(n=o)}return i}withInserted(e){if(e.length===0)return this;let t=0,i=0,n="";const o=new Array;let r=0;for(;;){const a=tr){n+=this._text.substring(r,l.offset);const c=this._tokens[(t<<1)+1];o.push(n.length,c),r=l.offset}n+=l.text,o.push(n.length,l.tokenMetadata),i++}else break}return new ei(new Uint32Array(o),n,this._languageIdCodec)}}ei.defaultTokenMetadata=(0<<11|1<<15|2<<24)>>>0;class EC{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this._tokensCount=0;for(let o=this._firstTokenIndex,r=e.getCount();o=i);o++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof EC?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){const t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}}class qn{constructor(e,t,i,n){this.startColumn=e,this.endColumn=t,this.className=i,this.type=n,this._lineDecorationBrand=void 0}static _equals(e,t){return e.startColumn===t.startColumn&&e.endColumn===t.endColumn&&e.className===t.className&&e.type===t.type}static equalsArr(e,t){const i=e.length,n=t.length;if(i!==n)return!1;for(let o=0;o=o||(a[l++]=new qn(Math.max(1,c.startColumn-n+1),Math.min(r+1,c.endColumn-n+1),c.className,c.type));return a}static filter(e,t,i,n){if(e.length===0)return[];const o=[];let r=0;for(let a=0,l=e.length;at||h.isEmpty()&&(c.type===0||c.type===3))continue;const u=h.startLineNumber===t?h.startColumn:i,d=h.endLineNumber===t?h.endColumn:n;o[r++]=new qn(u,d,c.inlineClassName,c.type)}return o}static _typeCompare(e,t){const i=[2,0,1,3];return i[e]-i[t]}static compare(e,t){if(e.startColumn!==t.startColumn)return e.startColumn-t.startColumn;if(e.endColumn!==t.endColumn)return e.endColumn-t.endColumn;const i=qn._typeCompare(e.type,t.type);return i!==0?i:e.className!==t.className?e.className0&&this.stopOffsets[0]0&&t=e){this.stopOffsets.splice(n,0,e),this.classNames.splice(n,0,t),this.metadata.splice(n,0,i);break}this.count++}}class e5{static normalize(e,t){if(t.length===0)return[];const i=[],n=new Cg;let o=0;for(let r=0,a=t.length;r1){const m=e.charCodeAt(c-2);Qt(m)&&c--}if(h>1){const m=e.charCodeAt(h-2);Qt(m)&&h--}const f=c-1,g=h-2;o=n.consumeLowerThan(f,o,i),n.count===0&&(o=f),n.insert(g,u,d)}return n.consumeLowerThan(1073741824,o,i),i}}class Jt{constructor(e,t,i,n){this.endIndex=e,this.type=t,this.metadata=i,this.containsRTL=n,this._linePartBrand=void 0}isWhitespace(){return!!(this.metadata&1)}isPseudoAfter(){return!!(this.metadata&4)}}class Qk{constructor(e,t){this.startOffset=e,this.endOffset=t}equals(e){return this.startOffset===e.startOffset&&this.endOffset===e.endOffset}}class sh{constructor(e,t,i,n,o,r,a,l,c,h,u,d,f,g,m,_,C,b,v){this.useMonospaceOptimizations=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.continuesWithWrappedLine=n,this.isBasicASCII=o,this.containsRTL=r,this.fauxIndentLength=a,this.lineTokens=l,this.lineDecorations=c.sort(qn.compare),this.tabSize=h,this.startVisibleColumn=u,this.spaceWidth=d,this.stopRenderingLineAfter=m,this.renderWhitespace=_==="all"?4:_==="boundary"?1:_==="selection"?2:_==="trailing"?3:0,this.renderControlCharacters=C,this.fontLigatures=b,this.selectionsOnLine=v&&v.sort((I,D)=>I.startOffset>>16}static getCharIndex(e){return(e&65535)>>>0}constructor(e,t){this.length=e,this._data=new Uint32Array(this.length),this._horizontalOffset=new Uint32Array(this.length)}setColumnInfo(e,t,i,n){const o=(t<<16|i<<0)>>>0;this._data[e-1]=o,this._horizontalOffset[e-1]=n}getHorizontalOffset(e){return this._horizontalOffset.length===0?0:this._horizontalOffset[e-1]}charOffsetToPartData(e){return this.length===0?0:e<0?this._data[0]:e>=this.length?this._data[this.length-1]:this._data[e]}getDomPosition(e){const t=this.charOffsetToPartData(e-1),i=Os.getPartIndex(t),n=Os.getCharIndex(t);return new IC(i,n)}getColumn(e,t){return this.partDataToCharOffset(e.partIndex,t,e.charIndex)+1}partDataToCharOffset(e,t,i){if(this.length===0)return 0;const n=(e<<16|i<<0)>>>0;let o=0,r=this.length-1;for(;o+1>>1,_=this._data[m];if(_===n)return m;_>n?r=m:o=m}if(o===r)return o;const a=this._data[o],l=this._data[r];if(a===n)return o;if(l===n)return r;const c=Os.getPartIndex(a),h=Os.getCharIndex(a),u=Os.getPartIndex(l);let d;c!==u?d=t:d=Os.getCharIndex(l);const f=i-h,g=d-i;return f<=g?o:r}}class c1{constructor(e,t,i){this._renderLineOutputBrand=void 0,this.characterMapping=e,this.containsRTL=t,this.containsForeignElements=i}}function NC(s,e){if(s.lineContent.length===0){if(s.lineDecorations.length>0){e.appendString("");let t=0,i=0,n=0;for(const r of s.lineDecorations)(r.type===1||r.type===2)&&(e.appendString(''),r.type===1&&(n|=1,t++),r.type===2&&(n|=2,i++));e.appendString("");const o=new Os(1,t+i);return o.setColumnInfo(1,t,0,0),new c1(o,!1,n)}return e.appendString(""),new c1(new Os(0,0),!1,0)}return c5(n5(s),e)}class t5{constructor(e,t,i,n){this.characterMapping=e,this.html=t,this.containsRTL=i,this.containsForeignElements=n}}function Hm(s){const e=new Am(1e4),t=NC(s,e);return new t5(t.characterMapping,e.build(),t.containsRTL,t.containsForeignElements)}class i5{constructor(e,t,i,n,o,r,a,l,c,h,u,d,f,g,m,_){this.fontIsMonospace=e,this.canUseHalfwidthRightwardsArrow=t,this.lineContent=i,this.len=n,this.isOverflowing=o,this.overflowingCharCount=r,this.parts=a,this.containsForeignElements=l,this.fauxIndentLength=c,this.tabSize=h,this.startVisibleColumn=u,this.containsRTL=d,this.spaceWidth=f,this.renderSpaceCharCode=g,this.renderWhitespace=m,this.renderControlCharacters=_}}function n5(s){const e=s.lineContent;let t,i,n;s.stopRenderingLineAfter!==-1&&s.stopRenderingLineAfter0){for(let a=0,l=s.lineDecorations.length;a0&&(o[r++]=new Jt(i,"",0,!1));let a=i;for(let l=0,c=t.getCount();l=n){const f=e?Lu(s.substring(a,n)):!1;o[r++]=new Jt(n,u,0,f);break}const d=e?Lu(s.substring(a,h)):!1;o[r++]=new Jt(h,u,0,d),a=h}return o}function o5(s,e,t){let i=0;const n=[];let o=0;if(t)for(let r=0,a=e.length;r=50&&(n[o++]=new Jt(f+1,h,u,d),g=f+1,f=-1);g!==c&&(n[o++]=new Jt(c,h,u,d))}else n[o++]=l;i=c}else for(let r=0,a=e.length;r50){const u=l.type,d=l.metadata,f=l.containsRTL,g=Math.ceil(h/50);for(let m=1;m=8234&&s<=8238||s>=8294&&s<=8297||s>=8206&&s<=8207||s===1564}function r5(s,e){const t=[];let i=new Jt(0,"",0,!1),n=0;for(const o of e){const r=o.endIndex;for(;ni.endIndex&&(i=new Jt(n,o.type,o.metadata,o.containsRTL),t.push(i)),i=new Jt(n+1,"mtkcontrol",o.metadata,!1),t.push(i))}n>i.endIndex&&(i=new Jt(r,o.type,o.metadata,o.containsRTL),t.push(i))}return t}function a5(s,e,t,i){const n=s.continuesWithWrappedLine,o=s.fauxIndentLength,r=s.tabSize,a=s.startVisibleColumn,l=s.useMonospaceOptimizations,c=s.selectionsOnLine,h=s.renderWhitespace===1,u=s.renderWhitespace===3,d=s.renderSpaceWidth!==s.spaceWidth,f=[];let g=0,m=0,_=i[m].type,C=i[m].containsRTL,b=i[m].endIndex;const v=i.length;let y=!1,x=Ji(e),I;x===-1?(y=!0,x=t,I=t):I=il(e);let D=!1,S=0,L=c&&c[S],A=a%r;for(let P=o;P=L.endOffset&&(S++,L=c&&c[S]);let Z;if(PI)Z=!0;else if(W===9)Z=!0;else if(W===32)if(h)if(D)Z=!0;else{const ee=P+1P),Z&&u&&(Z=y||P>I),Z&&C&&P>=x&&P<=I&&(Z=!1),D){if(!Z||!l&&A>=r){if(d){const ee=g>0?f[g-1].endIndex:o;for(let le=ee+1;le<=P;le++)f[g++]=new Jt(le,"mtkw",1,!1)}else f[g++]=new Jt(P,"mtkw",1,!1);A=A%r}}else(P===b||Z&&P>o)&&(f[g++]=new Jt(P,_,0,C),A=A%r);for(W===9?A=r:Hr(W)?A+=2:A++,D=Z;P===b&&(m++,m0?e.charCodeAt(t-1):0,W=t>1?e.charCodeAt(t-2):0;P===32&&W!==32&&W!==9||(R=!0)}else R=!0;if(R)if(d){const P=g>0?f[g-1].endIndex:o;for(let W=P+1;W<=t;W++)f[g++]=new Jt(W,"mtkw",1,!1)}else f[g++]=new Jt(t,"mtkw",1,!1);else f[g++]=new Jt(t,_,0,C);return f}function l5(s,e,t,i){i.sort(qn.compare);const n=e5.normalize(s,i),o=n.length;let r=0;const a=[];let l=0,c=0;for(let u=0,d=t.length;uc&&(c=b.startOffset,a[l++]=new Jt(c,m,_,C)),b.endOffset+1<=g)c=b.endOffset+1,a[l++]=new Jt(c,m+" "+b.className,_|b.metadata,C),r++;else{c=g,a[l++]=new Jt(c,m+" "+b.className,_|b.metadata,C);break}}g>c&&(c=g,a[l++]=new Jt(c,m,_,C))}const h=t[t.length-1].endIndex;if(r'):e.appendString("");for(let L=0,A=c.length;L=h&&(Te+=te)}}for(le&&(e.appendString(' style="width:'),e.appendString(String(g*ye)),e.appendString('px"')),e.appendASCIICharCode(62);y1?e.appendCharCode(8594):e.appendCharCode(65515);for(let te=2;te<=Ne;te++)e.appendCharCode(160)}else Te=2,Ne=1,e.appendCharCode(m),e.appendCharCode(8204);I+=Te,D+=Ne,y>=h&&(x+=Ne)}}else for(e.appendASCIICharCode(62);y=h&&(x+=Te)}Ce?S++:S=0,y>=r&&!v&&R.isPseudoAfter()&&(v=!0,b.setColumnInfo(y+1,L,I,D)),e.appendString("")}return v||b.setColumnInfo(r+1,c.length-1,I,D),a&&(e.appendString(''),e.appendString(p("showMore","Show more ({0})",u5(l))),e.appendString("")),e.appendString(""),new c1(b,f,n)}function h5(s){return s.toString(16).toUpperCase().padStart(4,"0")}function u5(s){return s<1024?p("overflow.chars","{0} chars",s):s<1024*1024?`${(s/1024).toFixed(1)} KB`:`${(s/1024/1024).toFixed(1)} MB`}class hS{constructor(e,t,i,n){this._viewportBrand=void 0,this.top=e|0,this.left=t|0,this.width=i|0,this.height=n|0}}class d5{constructor(e,t){this.tabSize=e,this.data=t}}class TC{constructor(e,t,i,n,o,r,a){this._viewLineDataBrand=void 0,this.content=e,this.continuesWithWrappedLine=t,this.minColumn=i,this.maxColumn=n,this.startVisibleColumn=o,this.tokens=r,this.inlineDecorations=a}}class pn{constructor(e,t,i,n,o,r,a,l,c,h){this.minColumn=e,this.maxColumn=t,this.content=i,this.continuesWithWrappedLine=n,this.isBasicASCII=pn.isBasicASCII(i,r),this.containsRTL=pn.containsRTL(i,this.isBasicASCII,o),this.tokens=a,this.inlineDecorations=l,this.tabSize=c,this.startVisibleColumn=h}static isBasicASCII(e,t){return t?dC(e):!0}static containsRTL(e,t,i){return!t&&i?Lu(e):!1}}class iu{constructor(e,t,i){this.range=e,this.inlineClassName=t,this.type=i}}class f5{constructor(e,t,i,n){this.startOffset=e,this.endOffset=t,this.inlineClassName=i,this.inlineClassNameAffectsLetterSpacing=n}toInlineDecoration(e){return new iu(new N(e,this.startOffset+1,e,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class Jk{constructor(e,t){this._viewModelDecorationBrand=void 0,this.range=e,this.options=t}}class ex{constructor(e,t,i){this.color=e,this.zIndex=t,this.data=i}static cmp(e,t){return e.zIndex===t.zIndex?e.colort.color?1:0:e.zIndex-t.zIndex}}function g5(s){return Array.isArray(s)}function m5(s){return!g5(s)}function tx(s){return typeof s=="string"}function uS(s){return!tx(s)}function Tl(s){return!s}function Mr(s,e){return s.ignoreCase&&e?e.toLowerCase():e}function dS(s){return s.replace(/[&<>'"_]/g,"-")}function p5(s,e){console.log(`${s.languageId}: ${e}`)}function ht(s,e){return new Error(`${s.languageId}: ${e}`)}function hr(s,e,t,i,n){const o=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let r=null;return e.replace(o,function(a,l,c,h,u,d,f,g,m){return Tl(c)?Tl(h)?!Tl(u)&&u0;){const i=s.tokenizer[t];if(i)return i;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return null}function _5(s,e){let t=e;for(;t&&t.length>0;){if(s.stateNames[t])return!0;const n=t.lastIndexOf(".");n<0?t=null:t=t.substr(0,n)}return!1}var b5=globalThis&&globalThis.__decorate||function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},C5=globalThis&&globalThis.__param||function(s,e){return function(t,i){e(t,i,s)}};const ix=5;class Nu{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(e!==null&&e.depth>=this._maxCacheDepth)return new rc(e,t);let i=rc.getStackElementId(e);i.length>0&&(i+="|"),i+=t;let n=this._entries[i];return n||(n=new rc(e,t),this._entries[i]=n,n)}}Nu._INSTANCE=new Nu(ix);class rc{constructor(e,t){this.parent=e,this.state=t,this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(e){let t="";for(;e!==null;)t.length>0&&(t+="|"),t+=e.state,e=e.parent;return t}static _equals(e,t){for(;e!==null&&t!==null;){if(e===t)return!0;if(e.state!==t.state)return!1;e=e.parent,t=t.parent}return e===null&&t===null}equals(e){return rc._equals(this,e)}push(e){return Nu.create(this,e)}pop(){return this.parent}popall(){let e=this;for(;e.parent;)e=e.parent;return e}switchTo(e){return Nu.create(this.parent,e)}}class Wl{constructor(e,t){this.languageId=e,this.state=t}equals(e){return this.languageId===e.languageId&&this.state.equals(e.state)}clone(){return this.state.clone()===this.state?this:new Wl(this.languageId,this.state)}}class ur{static create(e,t){return this._INSTANCE.create(e,t)}constructor(e){this._maxCacheDepth=e,this._entries=Object.create(null)}create(e,t){if(t!==null)return new nu(e,t);if(e!==null&&e.depth>=this._maxCacheDepth)return new nu(e,t);const i=rc.getStackElementId(e);let n=this._entries[i];return n||(n=new nu(e,null),this._entries[i]=n,n)}}ur._INSTANCE=new ur(ix);class nu{constructor(e,t){this.stack=e,this.embeddedLanguageData=t}clone(){return(this.embeddedLanguageData?this.embeddedLanguageData.clone():null)===this.embeddedLanguageData?this:ur.create(this.stack,this.embeddedLanguageData)}equals(e){return!(e instanceof nu)||!this.stack.equals(e.stack)?!1:this.embeddedLanguageData===null&&e.embeddedLanguageData===null?!0:this.embeddedLanguageData===null||e.embeddedLanguageData===null?!1:this.embeddedLanguageData.equals(e.embeddedLanguageData)}}class v5{constructor(){this._tokens=[],this._languageId=null,this._lastTokenType=null,this._lastTokenLanguage=null}enterLanguage(e){this._languageId=e}emit(e,t){this._lastTokenType===t&&this._lastTokenLanguage===this._languageId||(this._lastTokenType=t,this._lastTokenLanguage=this._languageId,this._tokens.push(new yu(e,t,this._languageId)))}nestedLanguageTokenize(e,t,i,n){const o=i.languageId,r=i.state,a=Rt.get(o);if(!a)return this.enterLanguage(o),this.emit(n,""),r;const l=a.tokenize(e,t,r);if(n!==0)for(const c of l.tokens)this._tokens.push(new yu(c.offset+n,c.type,c.language));else this._tokens=this._tokens.concat(l.tokens);return this._lastTokenType=null,this._lastTokenLanguage=null,this._languageId=null,l.endState}finalize(e){return new oC(this._tokens,e)}}class vg{constructor(e,t){this._languageService=e,this._theme=t,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}enterLanguage(e){this._currentLanguageId=this._languageService.languageIdCodec.encodeLanguageId(e)}emit(e,t){const i=this._theme.match(this._currentLanguageId,t)|1024;this._lastTokenMetadata!==i&&(this._lastTokenMetadata=i,this._tokens.push(e),this._tokens.push(i))}static _merge(e,t,i){const n=e!==null?e.length:0,o=t.length,r=i!==null?i.length:0;if(n===0&&o===0&&r===0)return new Uint32Array(0);if(n===0&&o===0)return i;if(o===0&&r===0)return e;const a=new Uint32Array(n+o+r);e!==null&&a.set(e);for(let l=0;l{if(r)return;let l=!1;for(let c=0,h=a.changedLanguages.length;c{a.affectsConfiguration("editor.maxTokenizationLineLength")&&(this._maxTokenizationLineLength=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:this._languageId}))})}dispose(){this._tokenizationRegistryListener.dispose()}getLoadStatus(){const e=[];for(const t in this._embeddedLanguages){const i=Rt.get(t);if(i){if(i instanceof nx){const n=i.getLoadStatus();n.loaded===!1&&e.push(n.promise)}continue}Rt.isResolved(t)||e.push(Rt.getOrCreate(t))}return e.length===0?{loaded:!0}:{loaded:!1,promise:Promise.all(e).then(t=>{})}}getInitialState(){const e=Nu.create(null,this._lexer.start);return ur.create(e,null)}tokenize(e,t,i){if(e.length>=this._maxTokenizationLineLength)return Fk(this._languageId,i);const n=new v5,o=this._tokenize(e,t,i,n);return n.finalize(o)}tokenizeEncoded(e,t,i){if(e.length>=this._maxTokenizationLineLength)return DC(this._languageService.languageIdCodec.encodeLanguageId(this._languageId),i);const n=new vg(this._languageService,this._standaloneThemeService.getColorTheme().tokenTheme),o=this._tokenize(e,t,i,n);return n.finalize(o)}_tokenize(e,t,i,n){return i.embeddedLanguageData?this._nestedTokenize(e,t,i,0,n):this._myTokenize(e,t,i,0,n)}_findLeavingNestedLanguageOffset(e,t){let i=this._lexer.tokenizer[t.stack.state];if(!i&&(i=jd(this._lexer,t.stack.state),!i))throw ht(this._lexer,"tokenizer state is not defined: "+t.stack.state);let n=-1,o=!1;for(const r of i){if(!uS(r.action)||r.action.nextEmbedded!=="@pop")continue;o=!0;let a=r.regex;const l=r.regex.source;if(l.substr(0,4)==="^(?:"&&l.substr(l.length-1,1)===")"){const h=(a.ignoreCase?"i":"")+(a.unicode?"u":"");a=new RegExp(l.substr(4,l.length-5),h)}const c=e.search(a);c===-1||c!==0&&r.matchOnlyAtLineStart||(n===-1||c0&&o.nestedLanguageTokenize(a,!1,i.embeddedLanguageData,n);const l=e.substring(r);return this._myTokenize(l,t,i,n+r,o)}_safeRuleName(e){return e?e.name:"(unknown)"}_myTokenize(e,t,i,n,o){o.enterLanguage(this._languageId);const r=e.length,a=t&&this._lexer.includeLF?e+` `:e,l=a.length;let c=i.embeddedLanguageData,h=i.stack,u=0,d=null,f=!0;for(;f||u=l)break;f=!1;let L=this._lexer.tokenizer[C];if(!L&&(L=jd(this._lexer,C),!L))throw ht(this._lexer,"tokenizer state is not defined: "+C);const A=a.substr(u);for(const R of L)if((u===0||!R.matchOnlyAtLineStart)&&(b=A.match(R.regex),b)){v=b[0],y=R.action;break}}if(b||(b=[""],v=""),y||(u=this._lexer.maxStack)throw ht(this._lexer,"maximum tokenizer stack size reached: ["+h.state+","+h.parent.state+",...]");h=h.push(C)}else if(y.next==="@pop"){if(h.depth<=1)throw ht(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(x));h=h.pop()}else if(y.next==="@popall")h=h.popall();else{let L=hr(this._lexer,y.next,v,b,C);if(L[0]==="@"&&(L=L.substr(1)),jd(this._lexer,L))h=h.push(L);else throw ht(this._lexer,"trying to set a next state '"+L+"' that is undefined in rule: "+this._safeRuleName(x))}}y.log&&typeof y.log=="string"&&p5(this._lexer,this._lexer.languageId+": "+hr(this._lexer,y.log,v,b,C))}if(D===null)throw ht(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(x));const S=L=>{const A=this._languageService.getLanguageIdByLanguageName(L)||this._languageService.getLanguageIdByMimeType(L)||L,R=this._getNestedEmbeddedLanguageData(A);if(u0)throw ht(this._lexer,"groups cannot be nested: "+this._safeRuleName(x));if(b.length!==D.length+1)throw ht(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(x));let L=0;for(let A=1;As});class AC{static colorizeElement(e,t,i,n){n=n||{};const o=n.theme||"vs",r=n.mimeType||i.getAttribute("lang")||i.getAttribute("data-lang");if(!r)return console.error("Mode not detected"),Promise.resolve();const a=t.getLanguageIdByMimeType(r)||r;e.setTheme(o);const l=i.firstChild?i.firstChild.nodeValue:"";i.className+=" "+o;const c=h=>{var u;const d=(u=zp==null?void 0:zp.createHTML(h))!==null&&u!==void 0?u:h;i.innerHTML=d};return this.colorize(t,l||"",a,n).then(c,h=>console.error(h))}static colorize(e,t,i,n){return S5(this,void 0,void 0,function*(){const o=e.languageIdCodec;let r=4;n&&typeof n.tabSize=="number"&&(r=n.tabSize),gC(t)&&(t=t.substr(1));const a=th(t);if(!e.isRegisteredLanguageId(i))return fS(a,r,o);const l=yield Rt.getOrCreate(i);return l?y5(a,r,l,o):fS(a,r,o)})}static colorizeLine(e,t,i,n,o=4){const r=pn.isBasicASCII(e,t),a=pn.containsRTL(e,r,i);return Hm(new sh(!1,!0,e,!1,r,a,0,n,[],o,0,0,0,0,-1,"none",!1,!1,null)).html}static colorizeModelLine(e,t,i=4){const n=e.getLineContent(t);e.tokenization.forceTokenization(t);const r=e.tokenization.getLineTokens(t).inflate();return this.colorizeLine(n,e.mightContainNonBasicASCII(),e.mightContainRTL(),r,i)}}function y5(s,e,t,i){return new Promise((n,o)=>{const r=()=>{const a=L5(s,e,t,i);if(t instanceof Tu){const l=t.getLoadStatus();if(l.loaded===!1){l.promise.then(r,o);return}}n(a)};r()})}function fS(s,e,t){let i=[];const o=new Uint32Array(2);o[0]=0,o[1]=33587200;for(let r=0,a=s.length;r")}return i.join("")}function L5(s,e,t,i){let n=[],o=t.getInitialState();for(let r=0,a=s.length;r"),o=c.endState}return n.join("")}const MC={clipboard:{writeText:Qh||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:Qh||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},keyboard:(()=>Qh||wk()?0:navigator.keyboard||Wo?1:2)(),touch:"ontouchstart"in window||navigator.maxTouchPoints>0,pointerEvents:window.PointerEvent&&("ontouchstart"in window||window.navigator.maxTouchPoints>0||navigator.maxTouchPoints>0)};function h1(s,e){if(s===0)return null;const t=(s&65535)>>>0,i=(s&4294901760)>>>16;return i!==0?new gS([Up(t,e),Up(i,e)]):new gS([Up(t,e)])}function Up(s,e){const t=!!(s&2048),i=!!(s&256),n=e===2?i:t,o=!!(s&1024),r=!!(s&512),a=e===2?t:i,l=s&255;return new ja(n,o,r,a,l)}class ja{constructor(e,t,i,n,o){this.ctrlKey=e,this.shiftKey=t,this.altKey=i,this.metaKey=n,this.keyCode=o}equals(e){return e instanceof ja&&this.ctrlKey===e.ctrlKey&&this.shiftKey===e.shiftKey&&this.altKey===e.altKey&&this.metaKey===e.metaKey&&this.keyCode===e.keyCode}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}}class gS{constructor(e){if(e.length===0)throw vm("chords");this.chords=e}}class D5{constructor(e,t,i,n,o,r){this.ctrlKey=e,this.shiftKey=t,this.altKey=i,this.metaKey=n,this.keyLabel=o,this.keyAriaLabel=r}}class k5{}function x5(s){if(s.charCode){const t=String.fromCharCode(s.charCode).toUpperCase();return mr.fromString(t)}const e=s.keyCode;if(e===3)return 7;if(Xn){if(e===59)return 80;if(e===107)return 81;if(e===109)return 83;if($e&&e===224)return 57}else if(Tr){if(e===91)return 57;if($e&&e===93)return 57;if(!$e&&e===92)return 57}return nk[e]||0}const E5=$e?256:2048,I5=512,N5=1024,T5=$e?2048:256;class dt{constructor(e){this._standardKeyboardEventBrand=!0;const t=e;this.browserEvent=t,this.target=t.target,this.ctrlKey=t.ctrlKey,this.shiftKey=t.shiftKey,this.altKey=t.altKey,this.metaKey=t.metaKey,this.altGraphKey=t.getModifierState("AltGraph"),this.keyCode=x5(t),this.code=t.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(e){return this._asKeybinding===e}_computeKeybinding(){let e=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode);let t=0;return this.ctrlKey&&(t|=E5),this.altKey&&(t|=I5),this.shiftKey&&(t|=N5),this.metaKey&&(t|=T5),t|=e,t}_computeKeyCodeChord(){let e=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode),new ja(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,e)}}let mS=!1,vh=null;function A5(s){if(!s.parent||s.parent===s)return null;try{const e=s.location,t=s.parent.location;if(e.origin!=="null"&&t.origin!=="null"&&e.origin!==t.origin)return mS=!0,null}catch{return mS=!0,null}return s.parent}class M5{static getSameOriginWindowChain(){if(!vh){vh=[];let e=window,t;do t=A5(e),t?vh.push({window:e,iframeElement:e.frameElement||null}):vh.push({window:e,iframeElement:null}),e=t;while(e)}return vh.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(e,t){if(!t||e===t)return{top:0,left:0};let i=0,n=0;const o=this.getSameOriginWindowChain();for(const r of o){if(i+=r.window.scrollY,n+=r.window.scrollX,r.window===t||!r.iframeElement)break;const a=r.iframeElement.getBoundingClientRect();i+=a.top,n+=a.left}return{top:i,left:n}}}class $s{constructor(e){this.timestamp=Date.now(),this.browserEvent=e,this.leftButton=e.button===0,this.middleButton=e.button===1,this.rightButton=e.button===2,this.buttons=e.buttons,this.target=e.target,this.detail=e.detail||1,e.type==="dblclick"&&(this.detail=2),this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,typeof e.pageX=="number"?(this.posx=e.pageX,this.posy=e.pageY):(this.posx=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,this.posy=e.clientY+document.body.scrollTop+document.documentElement.scrollTop);const t=M5.getPositionOfChildWindowRelativeToAncestorWindow(self,e.view);this.posx-=t.left,this.posy-=t.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}}class Ka{constructor(e,t=0,i=0){if(this.browserEvent=e||null,this.target=e?e.target||e.targetNode||e.srcElement:null,this.deltaY=i,this.deltaX=t,e){const n=e,o=e;if(typeof n.wheelDeltaY<"u")this.deltaY=n.wheelDeltaY/120;else if(typeof o.VERTICAL_AXIS<"u"&&o.axis===o.VERTICAL_AXIS)this.deltaY=-o.detail/3;else if(e.type==="wheel"){const r=e;r.deltaMode===r.DOM_DELTA_LINE?Xn&&!$e?this.deltaY=-e.deltaY/3:this.deltaY=-e.deltaY:this.deltaY=-e.deltaY/40}if(typeof n.wheelDeltaX<"u")Wo&&Ii?this.deltaX=-(n.wheelDeltaX/120):this.deltaX=n.wheelDeltaX/120;else if(typeof o.HORIZONTAL_AXIS<"u"&&o.axis===o.HORIZONTAL_AXIS)this.deltaX=-e.detail/3;else if(e.type==="wheel"){const r=e;r.deltaMode===r.DOM_DELTA_LINE?Xn&&!$e?this.deltaX=-e.deltaX/3:this.deltaX=-e.deltaX:this.deltaX=-e.deltaX/40}this.deltaY===0&&this.deltaX===0&&e.wheelDelta&&(this.deltaY=e.wheelDelta/120)}}preventDefault(){var e;(e=this.browserEvent)===null||e===void 0||e.preventDefault()}stopPropagation(){var e;(e=this.browserEvent)===null||e===void 0||e.stopPropagation()}}/*! @license DOMPurify 2.3.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.3.1/LICENSE */function R5(s){if(Array.isArray(s)){for(var e=0,t=Array(s.length);e1?t-1:0),n=1;n/gm),G5=Vo(/^data-[\-\w.\u00B7-\uFFFF]/),Z5=Vo(/^aria-[\-\w]+$/),Y5=Vo(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Q5=Vo(/^(?:\w+script|data):/i),X5=Vo(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Mh=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s};function Es(s){if(Array.isArray(s)){for(var e=0,t=Array(s.length);e"u"?null:window},eM=function(e,t){if((typeof e>"u"?"undefined":Mh(e))!=="object"||typeof e.createPolicy!="function")return null;var i=null,n="data-tt-policy-suffix";t.currentScript&&t.currentScript.hasAttribute(n)&&(i=t.currentScript.getAttribute(n));var o="dompurify"+(i?"#"+i:"");try{return e.createPolicy(o,{createHTML:function(a){return a}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}};function ox(){var s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:J5(),e=function($){return ox($)};if(e.version="2.3.1",e.removed=[],!s||!s.document||s.document.nodeType!==9)return e.isSupported=!1,e;var t=s.document,i=s.document,n=s.DocumentFragment,o=s.HTMLTemplateElement,r=s.Node,a=s.Element,l=s.NodeFilter,c=s.NamedNodeMap,h=c===void 0?s.NamedNodeMap||s.MozNamedAttrMap:c,u=s.Text,d=s.Comment,f=s.DOMParser,g=s.trustedTypes,m=a.prototype,_=Kd(m,"cloneNode"),C=Kd(m,"nextSibling"),b=Kd(m,"childNodes"),v=Kd(m,"parentNode");if(typeof o=="function"){var y=i.createElement("template");y.content&&y.content.ownerDocument&&(i=y.content.ownerDocument)}var x=eM(g,t),I=x&&pl?x.createHTML(""):"",D=i,S=D.implementation,L=D.createNodeIterator,A=D.createDocumentFragment,R=D.getElementsByTagName,P=t.importNode,W={};try{W=la(i).documentMode?i.documentMode:{}}catch{}var Z={};e.isSupported=typeof v=="function"&&S&&typeof S.createHTMLDocument<"u"&&W!==9;var ee=K5,le=q5,Ce=G5,ye=Z5,ue=Q5,Te=X5,Ne=Y5,te=null,re=et({},[].concat(Es(vS),Es($p),Es(jp),Es(Kp),Es(wS))),it=null,sn=et({},[].concat(Es(SS),Es(qp),Es(yS),Es(qd))),ti=null,is=null,jo=!0,ta=!0,ns=!1,xe=!1,Ko=!1,uh=!1,dh=!1,qo=!1,ml=!1,Md=!0,pl=!1,Rd=!0,j=!0,H=!1,V={},k=null,E=et({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),F=null,O=et({},["audio","video","img","source","image","track"]),K=null,Q=et({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),oe="http://www.w3.org/1998/Math/MathML",he="http://www.w3.org/2000/svg",Le="http://www.w3.org/1999/xhtml",Se=Le,st=!1,Qe=null,me=i.createElement("form"),Ht=function($){Qe&&Qe===$||((!$||(typeof $>"u"?"undefined":Mh($))!=="object")&&($={}),$=la($),te="ALLOWED_TAGS"in $?et({},$.ALLOWED_TAGS):re,it="ALLOWED_ATTR"in $?et({},$.ALLOWED_ATTR):sn,K="ADD_URI_SAFE_ATTR"in $?et(la(Q),$.ADD_URI_SAFE_ATTR):Q,F="ADD_DATA_URI_TAGS"in $?et(la(O),$.ADD_DATA_URI_TAGS):O,k="FORBID_CONTENTS"in $?et({},$.FORBID_CONTENTS):E,ti="FORBID_TAGS"in $?et({},$.FORBID_TAGS):{},is="FORBID_ATTR"in $?et({},$.FORBID_ATTR):{},V="USE_PROFILES"in $?$.USE_PROFILES:!1,jo=$.ALLOW_ARIA_ATTR!==!1,ta=$.ALLOW_DATA_ATTR!==!1,ns=$.ALLOW_UNKNOWN_PROTOCOLS||!1,xe=$.SAFE_FOR_TEMPLATES||!1,Ko=$.WHOLE_DOCUMENT||!1,qo=$.RETURN_DOM||!1,ml=$.RETURN_DOM_FRAGMENT||!1,Md=$.RETURN_DOM_IMPORT!==!1,pl=$.RETURN_TRUSTED_TYPE||!1,dh=$.FORCE_BODY||!1,Rd=$.SANITIZE_DOM!==!1,j=$.KEEP_CONTENT!==!1,H=$.IN_PLACE||!1,Ne=$.ALLOWED_URI_REGEXP||Ne,Se=$.NAMESPACE||Le,xe&&(ta=!1),ml&&(qo=!0),V&&(te=et({},[].concat(Es(wS))),it=[],V.html===!0&&(et(te,vS),et(it,SS)),V.svg===!0&&(et(te,$p),et(it,qp),et(it,qd)),V.svgFilters===!0&&(et(te,jp),et(it,qp),et(it,qd)),V.mathMl===!0&&(et(te,Kp),et(it,yS),et(it,qd))),$.ADD_TAGS&&(te===re&&(te=la(te)),et(te,$.ADD_TAGS)),$.ADD_ATTR&&(it===sn&&(it=la(it)),et(it,$.ADD_ATTR)),$.ADD_URI_SAFE_ATTR&&et(K,$.ADD_URI_SAFE_ATTR),$.FORBID_CONTENTS&&(k===E&&(k=la(k)),et(k,$.FORBID_CONTENTS)),j&&(te["#text"]=!0),Ko&&et(te,["html","head","body"]),te.table&&(et(te,["tbody"]),delete ti.tbody),nn&&nn($),Qe=$)},pt=et({},["mi","mo","mn","ms","mtext"]),bn=et({},["foreignobject","desc","title","annotation-xml"]),vt=et({},$p);et(vt,jp),et(vt,$5);var ii=et({},Kp);et(ii,j5);var ia=function($){var ae=v($);(!ae||!ae.tagName)&&(ae={namespaceURI:Le,tagName:"template"});var De=da($.tagName),wt=da(ae.tagName);if($.namespaceURI===he)return ae.namespaceURI===Le?De==="svg":ae.namespaceURI===oe?De==="svg"&&(wt==="annotation-xml"||pt[wt]):Boolean(vt[De]);if($.namespaceURI===oe)return ae.namespaceURI===Le?De==="math":ae.namespaceURI===he?De==="math"&&bn[wt]:Boolean(ii[De]);if($.namespaceURI===Le){if(ae.namespaceURI===he&&!bn[wt]||ae.namespaceURI===oe&&!pt[wt])return!1;var Bi=et({},["title","style","font","a","script"]);return!ii[De]&&(Bi[De]||!vt[De])}return!1},on=function($){wh(e.removed,{element:$});try{$.parentNode.removeChild($)}catch{try{$.outerHTML=I}catch{$.remove()}}},xs=function($,ae){try{wh(e.removed,{attribute:ae.getAttributeNode($),from:ae})}catch{wh(e.removed,{attribute:null,from:ae})}if(ae.removeAttribute($),$==="is"&&!it[$])if(qo||ml)try{on(ae)}catch{}else try{ae.setAttribute($,"")}catch{}},Go=function($){var ae=void 0,De=void 0;if(dh)$=""+$;else{var wt=bS($,/^[\r\n\t ]+/);De=wt&&wt[0]}var Bi=x?x.createHTML($):$;if(Se===Le)try{ae=new f().parseFromString(Bi,"text/html")}catch{}if(!ae||!ae.documentElement){ae=S.createDocument(Se,"template",null);try{ae.documentElement.innerHTML=st?"":Bi}catch{}}var Wi=ae.body||ae.documentElement;return $&&De&&Wi.insertBefore(i.createTextNode(De),Wi.childNodes[0]||null),Se===Le?R.call(ae,Ko?"html":"body")[0]:Ko?ae.documentElement:Wi},na=function($){return L.call($.ownerDocument||$,$,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)},sa=function($){return $ instanceof u||$ instanceof d?!1:typeof $.nodeName!="string"||typeof $.textContent!="string"||typeof $.removeChild!="function"||!($.attributes instanceof h)||typeof $.removeAttribute!="function"||typeof $.setAttribute!="function"||typeof $.namespaceURI!="string"||typeof $.insertBefore!="function"},oa=function($){return(typeof r>"u"?"undefined":Mh(r))==="object"?$ instanceof r:$&&(typeof $>"u"?"undefined":Mh($))==="object"&&typeof $.nodeType=="number"&&typeof $.nodeName=="string"},Cn=function($,ae,De){Z[$]&&V5(Z[$],function(wt){wt.call(e,ae,De,Qe)})},Od=function($){var ae=void 0;if(Cn("beforeSanitizeElements",$,null),sa($)||bS($.nodeName,/[\u0080-\uFFFF]/))return on($),!0;var De=da($.nodeName);if(Cn("uponSanitizeElement",$,{tagName:De,allowedTags:te}),!oa($.firstElementChild)&&(!oa($.content)||!oa($.content.firstElementChild))&&uo(/<[/\w]/g,$.innerHTML)&&uo(/<[/\w]/g,$.textContent)||De==="select"&&uo(/