define("vs/editor.api-CalNCsUg",["exports"],(function(so){"use strict";var $d,jd,ac,xC,Ip,Dp,xu,sl,ku,Ep,TC,Np,Yd,Rp,Du,Mp,Nu,Ap,Pp,Op,Xd,Tu,RC,Ru,uc,Mu,AC,Fp,Wp,Au,Pu,Ou,Bp,Hp,Vp,zp,Up,Qd,$p,jp,Gp,Zp,Yp,Xp,Qp,Jp,em,Wu,Bu,tm,im,FC,WC,gc,nm,Uu,sm,om,ol,$u,rm,am,lm,HC,cm,mc,ju,dm,VC,zC,qu,Ku,hm,um,fm,gm,pm,UC,Zu,$C,mm,jC,qC,Yu,_m,KC,bm,Cm,wm,rl,_c,al,eh,ym,Lm,xm,km,Im,Dm;function QB(){return globalThis._VSCODE_NLS_MESSAGES}function rR(){return globalThis._VSCODE_NLS_LANGUAGE}const Cie=rR()==="pseudo"||typeof document<"u"&&document.location&&typeof document.location.hash=="string"&&document.location.hash.indexOf("pseudo=true")>=0;function QS(o,e){let t;return e.length===0?t=o:t=o.replace(/\{(\d+)\}/g,(i,n)=>{const s=n[0],r=e[s];let a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),Cie&&(t="["+t.replace(/[aouei]/g,"$&$&")+"]"),t}function m(o,e,...t){return QS(typeof o=="number"?JB(o,e):e,t)}function JB(o,e){const t=QB()?.[o];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${o} !!!`)}return t}function H(o,e,...t){let i;typeof o=="number"?i=JB(o,e):i=e;const n=QS(i,t);return{value:n,original:e===i?n:QS(e,t)}}function vie(o,e){const t=o;typeof t.vscodeWindowId!="number"&&Object.defineProperty(t,"vscodeWindowId",{get:()=>e})}const Ct=window,uN=class uN{constructor(){this.mapWindowIdToZoomFactor=new Map}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}getWindowId(e){return e.vscodeWindowId}};uN.INSTANCE=new uN;let aR=uN;function e6(o,e,t){typeof e=="string"&&(e=o.matchMedia(e)),e.addEventListener("change",t)}function lR(o){return aR.INSTANCE.getZoomFactor(o)}const Rm=navigator.userAgent,Bs=Rm.indexOf("Firefox")>=0,JS=Rm.indexOf("AppleWebKit")>=0,iv=Rm.indexOf("Chrome")>=0,Xu=!iv&&Rm.indexOf("Safari")>=0,t6=!iv&&!Xu&&JS;Rm.indexOf("Electron/")>=0;const i6=Rm.indexOf("Android")>=0;let cR=!1;if(typeof Ct.matchMedia=="function"){const o=Ct.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=Ct.matchMedia("(display-mode: fullscreen)");cR=o.matches,e6(Ct,o,({matches:t})=>{cR&&e.matches||(cR=t)})}function dR(){return globalThis.MonacoEnvironment}class wie{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?Mm.isErrorNoTelemetry(e)?new Mm(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 hR=new wie;function ey(o){hR.onUnexpectedError(o)}function De(o){To(o)||hR.onUnexpectedError(o)}function Di(o){To(o)||hR.onUnexpectedExternalError(o)}function uR(o){if(o instanceof Error){const{name:e,message:t,cause:i}=o,n=o.stacktrace||o.stack;return{$isError:!0,name:e,message:t,stack:n,noTelemetry:Mm.isErrorNoTelemetry(o),cause:i?uR(i):void 0,code:o.code}}return o}const ty="Canceled";function To(o){return o instanceof hr?!0:o instanceof Error&&o.name===ty&&o.message===ty}class hr extends Error{constructor(){super(ty),this.name=this.message}}function Sie(){const o=new Error(ty);return o.name=o.message,o}function ur(o){return o?new Error(`Illegal argument: ${o}`):new Error("Illegal argument")}function iy(o){return o?new Error(`Illegal state: ${o}`):new Error("Illegal state")}class yie extends Error{constructor(e){super("NotSupported"),e&&(this.message=e)}}class Mm extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof Mm)return e;const t=new Mm;return t.message=e.message,t.stack=e.stack,t}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}}class Ce extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,Ce.prototype)}}function fR(o,e){if(!o)throw new Error(e?`Assertion failed (${e})`:"Assertion Failed")}function nv(o,e="Unreachable"){throw new Error(e)}function sv(o,e="unexpected state"){if(!o)throw typeof e=="string"?new Ce(`Assertion Failed: ${e}`):e}function n6(o,e="Soft Assertion Failed"){o||De(new Ce(e))}function sh(o){if(!o()){debugger;o(),De(new Ce("Assertion Failed"))}}function ov(o,e){let t=0;for(;t"u"}function rn(o){return!fr(o)}function fr(o){return Hn(o)||o===null}function Je(o,e){if(!o)throw new Error(e?`Unexpected type, expected '${e}'`:"Unexpected type")}function oh(o){return sv(o!=null,"Argument is `undefined` or `null`."),o}function Qu(o){return typeof o=="function"}function kie(o,e){const t=Math.min(o.length,e.length);for(let i=0;i=0,av=vc.indexOf("Macintosh")>=0,_R=(vc.indexOf("Macintosh")>=0||vc.indexOf("iPad")>=0||vc.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,lv=vc.indexOf("Linux")>=0,o6=vc?.indexOf("Mobi")>=0,mR=!0,sy=rR()||Ju,ny=navigator.language.toLowerCase(),r6=ny):console.error("Unable to resolve platform.");let oy=0;av?oy=1:rv?oy=3:lv&&(oy=2);const gn=rv,ze=av,Hs=lv,va=s6,ll=mR,Nie=mR&&typeof wc.importScripts=="function"?wc.origin:void 0,gr=_R,a6=o6,bR=oy,cl=vc,Tie=sy,Rie=typeof wc.postMessage=="function"&&!wc.importScripts,cv=(()=>{if(Rie){const o=[];wc.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,n=o.length;i{const i=++e;o.push({id:i,callback:t}),wc.postMessage({vscodeScheduleAsyncWork:i},"*")}}return o=>setTimeout(o)})(),oo=av||_R?2:rv?1:3;let l6=!0,c6=!1;function d6(){if(!c6){c6=!0;const o=new Uint8Array(2);o[0]=1,o[1]=2,l6=new Uint16Array(o.buffer)[0]===513}return l6}const CR=!!(cl&&cl.indexOf("Chrome")>=0),Mie=!!(cl&&cl.indexOf("Firefox")>=0),Aie=!!(!CR&&cl&&cl.indexOf("Safari")>=0),h6=!!(cl&&cl.indexOf("Edg/")>=0),Pie=!!(cl&&cl.indexOf("Android")>=0),dv={clipboard:{writeText:va||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:va||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},pointerEvents:Ct.PointerEvent&&("ontouchstart"in Ct||navigator.maxTouchPoints>0)};class vR{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 ry=new vR,wR=new vR,SR=new vR,u6=new Array(230),Oie=Object.create(null),Fie=Object.create(null),yR=[];for(let o=0;o<=193;o++)yR[o]=-1;(function(){const e=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Delete",46,"VK_DELETE","",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]],t=[],i=[];for(const n of e){const[s,r,a,l,c,d,h,u,f]=n;if(i[r]||(i[r]=!0,Oie[a]=r,Fie[a.toLowerCase()]=r,s&&(yR[r]=l)),!t[l]){if(t[l]=!0,!c)throw new Error(`String representation missing for key code ${l} around scan code ${a}`);ry.define(l,c),wR.define(l,u||c),SR.define(l,f||u||c)}d&&(u6[d]=l)}})();var Sc;(function(o){function e(a){return ry.keyCodeToStr(a)}o.toString=e;function t(a){return ry.strToKeyCode(a)}o.fromString=t;function i(a){return wR.keyCodeToStr(a)}o.toUserSettingsUS=i;function n(a){return SR.keyCodeToStr(a)}o.toUserSettingsGeneral=n;function s(a){return wR.strToKeyCode(a)||SR.strToKeyCode(a)}o.fromUserSettings=s;function r(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return ry.keyCodeToStr(a)}o.toElectronAccelerator=r})(Sc||(Sc={}));function Ei(o,e){const t=(e&65535)<<16>>>0;return(o|t)>>>0}function LR(o,e){if(typeof o=="number"){if(o===0)return null;const t=(o&65535)>>>0,i=(o&4294901760)>>>16;return i!==0?new xR([ay(t,e),ay(i,e)]):new xR([ay(t,e)])}else{const t=[];for(let i=0;i=0;I--)yield x[I]}o.reverse=a;function l(x){return!x||x[Symbol.iterator]().next().done===!0}o.isEmpty=l;function c(x){return x[Symbol.iterator]().next().value}o.first=c;function d(x,I){let D=0;for(const R of x)if(I(R,D++))return!0;return!1}o.some=d;function h(x,I){let D=0;for(const R of x)if(!I(R,D++))return!1;return!0}o.every=h;function u(x,I){for(const D of x)if(I(D))return D}o.find=u;function*f(x,I){for(const D of x)I(D)&&(yield D)}o.filter=f;function*g(x,I){let D=0;for(const R of x)yield I(R,D++)}o.map=g;function*p(x,I){let D=0;for(const R of x)yield*I(R,D++)}o.flatMap=p;function*_(...x){for(const I of x)gR(I)?yield*I:yield I}o.concat=_;function b(x,I,D){let R=D;for(const O of x)R=I(R,O);return R}o.reduce=b;function C(x){let I=0;for(const D of x)I++;return I}o.length=C;function*w(x,I,D=x.length){for(I<-x.length&&(I=0),I<0&&(I+=x.length),D<0?D+=x.length:D>x.length&&(D=x.length);I1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(o)?[]:o}else if(o)return o.dispose(),o}function qr(...o){return fe(()=>ht(o))}class Kie{constructor(e){this._isDisposed=!1,this._fn=e}dispose(){if(!this._isDisposed){if(!this._fn)throw new Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,this._fn()}}}function fe(o){return new Kie(o)}const fN=class fN{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{ht(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e||e===P.None)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?fN.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}delete(e){if(e){if(e===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(e),e.dispose()}}};fN.DISABLE_DISPOSED_WARNING=!1;let V=fN;const DB=class DB{constructor(){this._store=new V,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)}};DB.None=Object.freeze({dispose(){}});let P=DB;class rt{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}class Gie{constructor(e){this._disposable=e,this._counter=1}acquire(){return this._counter++,this}release(){return--this._counter===0&&this._disposable.dispose(),this}}class Zie{constructor(e){this.object=e}dispose(){}}class ly{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{ht(this._store.values())}finally{this._store.clear()}}get(e){return this._store.get(e)}set(e,t,i=!1){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||this._store.get(e)?.dispose(),this._store.set(e,t)}deleteAndDispose(e){this._store.get(e)?.dispose(),this._store.delete(e)}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}let Yi=($d=class{constructor(e){this.element=e,this.next=$d.Undefined,this.prev=$d.Undefined}},$d.Undefined=new $d(void 0),$d);class es{constructor(){this._first=Yi.Undefined,this._last=Yi.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Yi.Undefined}clear(){let e=this._first;for(;e!==Yi.Undefined;){const t=e.next;e.prev=Yi.Undefined,e.next=Yi.Undefined,e=t}this._first=Yi.Undefined,this._last=Yi.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){const i=new Yi(e);if(this._first===Yi.Undefined)this._first=i,this._last=i;else if(t){const s=this._last;this._last=i,i.prev=s,s.next=i}else{const s=this._first;this._first=i,i.next=s,s.prev=i}this._size+=1;let n=!1;return()=>{n||(n=!0,this._remove(i))}}shift(){if(this._first!==Yi.Undefined){const e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Yi.Undefined){const e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Yi.Undefined&&e.next!==Yi.Undefined){const t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Yi.Undefined&&e.next===Yi.Undefined?(this._first=Yi.Undefined,this._last=Yi.Undefined):e.next===Yi.Undefined?(this._last=this._last.prev,this._last.next=Yi.Undefined):e.prev===Yi.Undefined&&(this._first=this._first.next,this._first.prev=Yi.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Yi.Undefined;)yield e.element,e=e.next}}const Yie=globalThis.performance.now.bind(globalThis.performance);class Xi{static create(e){return new Xi(e)}constructor(e){this._now=e===!1?Date.now:Yie,this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var ie;(function(o){o.None=()=>P.None;function e(F,B){return u(F,()=>{},0,void 0,!0,void 0,B)}o.defer=e;function t(F){return(B,U=null,K)=>{let ne=!1,Q;return Q=F(se=>{if(!ne)return Q?Q.dispose():ne=!0,B.call(U,se)},null,K),ne&&Q.dispose(),Q}}o.once=t;function i(F,B){return o.once(o.filter(F,B))}o.onceIf=i;function n(F,B,U){return d((K,ne=null,Q)=>F(se=>K.call(ne,B(se)),null,Q),U)}o.map=n;function s(F,B,U){return d((K,ne=null,Q)=>F(se=>{B(se),K.call(ne,se)},null,Q),U)}o.forEach=s;function r(F,B,U){return d((K,ne=null,Q)=>F(se=>B(se)&&K.call(ne,se),null,Q),U)}o.filter=r;function a(F){return F}o.signal=a;function l(...F){return(B,U=null,K)=>{const ne=qr(...F.map(Q=>Q(se=>B.call(U,se))));return h(ne,K)}}o.any=l;function c(F,B,U,K){let ne=U;return n(F,Q=>(ne=B(ne,Q),ne),K)}o.reduce=c;function d(F,B){let U;const K={onWillAddFirstListener(){U=F(ne.fire,ne)},onDidRemoveLastListener(){U?.dispose()}},ne=new A(K);return B?.add(ne),ne.event}function h(F,B){return B instanceof Array?B.push(F):B&&B.add(F),F}function u(F,B,U=100,K=!1,ne=!1,Q,se){let de,ye,Pe,it=0,Ke;const Ot={leakWarningThreshold:Q,onWillAddFirstListener(){de=F(on=>{it++,ye=B(ye,on),K&&!Pe&&(bt.fire(ye),ye=void 0),Ke=()=>{const Ai=ye;ye=void 0,Pe=void 0,(!K||it>1)&&bt.fire(Ai),it=0},typeof U=="number"?(Pe&&clearTimeout(Pe),Pe=setTimeout(Ke,U)):Pe===void 0&&(Pe=null,queueMicrotask(Ke))})},onWillRemoveListener(){ne&&it>0&&Ke?.()},onDidRemoveLastListener(){Ke=void 0,de.dispose()}},bt=new A(Ot);return se?.add(bt),bt.event}o.debounce=u;function f(F,B=0,U){return o.debounce(F,(K,ne)=>K?(K.push(ne),K):[ne],B,void 0,!0,void 0,U)}o.accumulate=f;function g(F,B=(K,ne)=>K===ne,U){let K=!0,ne;return r(F,Q=>{const se=K||!B(Q,ne);return K=!1,ne=Q,se},U)}o.latch=g;function p(F,B,U){return[o.filter(F,B,U),o.filter(F,K=>!B(K),U)]}o.split=p;function _(F,B=!1,U=[],K){let ne=U.slice(),Q=F(ye=>{ne?ne.push(ye):de.fire(ye)});K&&K.add(Q);const se=()=>{ne?.forEach(ye=>de.fire(ye)),ne=null},de=new A({onWillAddFirstListener(){Q||(Q=F(ye=>de.fire(ye)),K&&K.add(Q))},onDidAddFirstListener(){ne&&(B?setTimeout(se):se())},onDidRemoveLastListener(){Q&&Q.dispose(),Q=null}});return K&&K.add(de),de.event}o.buffer=_;function b(F,B){return(K,ne,Q)=>{const se=B(new w);return F(function(de){const ye=se.evaluate(de);ye!==C&&K.call(ne,ye)},void 0,Q)}}o.chain=b;const C=Symbol("HaltChainable");class w{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(U=>(B(U),U)),this}filter(B){return this.steps.push(U=>B(U)?U:C),this}reduce(B,U){let K=U;return this.steps.push(ne=>(K=B(K,ne),K)),this}latch(B=(U,K)=>U===K){let U=!0,K;return this.steps.push(ne=>{const Q=U||!B(ne,K);return U=!1,K=ne,Q?ne:C}),this}evaluate(B){for(const U of this.steps)if(B=U(B),B===C)break;return B}}function v(F,B,U=K=>K){const K=(...de)=>se.fire(U(...de)),ne=()=>F.on(B,K),Q=()=>F.removeListener(B,K),se=new A({onWillAddFirstListener:ne,onDidRemoveLastListener:Q});return se.event}o.fromNodeEventEmitter=v;function S(F,B,U=K=>K){const K=(...de)=>se.fire(U(...de)),ne=()=>F.addEventListener(B,K),Q=()=>F.removeEventListener(B,K),se=new A({onWillAddFirstListener:ne,onDidRemoveLastListener:Q});return se.event}o.fromDOMEventEmitter=S;function L(F,B){let U;const K=new Promise((ne,Q)=>{const se=t(F)(ne,null,B);U=()=>se.dispose()});return K.cancel=U,K}o.toPromise=L;function x(F,B){return F(U=>B.fire(U))}o.forward=x;function I(F,B,U){return B(U),F(K=>B(K))}o.runAndSubscribe=I;class D{constructor(B,U){this._observable=B,this._counter=0,this._hasChanged=!1;const K={onWillAddFirstListener:()=>{B.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new A(K),U&&U.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,U){this._hasChanged=!0}endUpdate(B){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function R(F,B){return new D(F,B).emitter.event}o.fromObservable=R;function O(F){return(B,U,K)=>{let ne=0,Q=!1;const se={beginUpdate(){ne++},endUpdate(){ne--,ne===0&&(F.reportChanges(),Q&&(Q=!1,B.call(U)))},handlePossibleChange(){},handleChange(){Q=!0}};F.addObserver(se),F.reportChanges();const de={dispose(){F.removeObserver(se)}};return K instanceof V?K.add(de):Array.isArray(K)&&K.push(de),de}}o.fromObservableLight=O})(ie||(ie={}));const vC=class vC{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${vC._idPool++}`,vC.all.add(this)}start(e){this._stopWatch=new Xi,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}}};vC.all=new Set,vC._idPool=0;let kR=vC,Xie=-1;const gN=class gN{constructor(e,t,i=(gN._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=t,this.name=i,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(e,t){const i=this.threshold;if(i<=0||t{const s=this._stacks.get(e.value)||0;this._stacks.set(e.value,s-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,t=0;for(const[i,n]of this._stacks)(!e||t{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const a=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(a);const l=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],c=new Jie(`${a}. HINT: Stack shows most frequent listener (${l[1]}-times)`,l[0]);return(this._options?.onListenerError||De)(c),P.None}if(this._disposed)return P.None;t&&(e=e.bind(t));const n=new ER(e);let s;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(n.stack=DR.create(),s=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof ER?(this._deliveryQueue??=new g6,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._options?.onDidAddListener?.(this),this._size++;const r=fe(()=>{s?.(),this._removeListener(n)});return i instanceof V?i.add(r):Array.isArray(i)&&i.push(r),r},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}const t=this._listeners,i=t.indexOf(e);if(i===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[i]=void 0;const n=this._deliveryQueue.current===this;if(this._size*ene<=t.length){let s=0;for(let r=0;r0}};const tne=()=>new g6;class g6{constructor(){this.i=-1,this.end=0}enqueue(e,t,i){this.i=0,this.end=i,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}class sf extends A{constructor(e){super(e),this._isPaused=0,this._eventQueue=new es,this._mergeFn=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._size&&(this._isPaused!==0?this._eventQueue.push(e):super.fire(e))}}class p6 extends sf{constructor(e){super(e),this._delay=e.delay??100}fire(e){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(e)}}class ine extends A{constructor(e){super(e),this._queuedEvents=[],this._mergeFn=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 nne{constructor(){this.hasListeners=!1,this.events=[],this.emitter=new A({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),fe(tf(()=>{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?.dispose(),e.listener=null}dispose(){this.emitter.dispose();for(const e of this.events)e.listener?.dispose();this.events=[]}}class hv{constructor(){this.data=[]}wrapEvent(e,t,i){return(n,s,r)=>e(a=>{const l=this.data[this.data.length-1];if(!t){l?l.buffers.push(()=>n.call(s,a)):n.call(s,a);return}const c=l;if(!c){n.call(s,t(i,a));return}c.items??=[],c.items.push(a),c.buffers.length===0&&l.buffers.push(()=>{c.reducedResult??=i?c.items.reduce(t,i):c.items.reduce(t),n.call(s,c.reducedResult)})},void 0,r)}bufferEvents(e){const t={buffers:new Array};this.data.push(t);const i=e();return this.data.pop(),t.buffers.forEach(n=>n()),i}}class uv{constructor(){this.listening=!1,this.inputEvent=ie.None,this.inputEventListener=P.None,this.emitter=new A({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 m6=Object.freeze(function(o,e){const t=setTimeout(o.bind(e),0);return{dispose(){clearTimeout(t)}}});var He;(function(o){function e(t){return t===o.None||t===o.Cancelled||t instanceof cy?!0:!t||typeof t!="object"?!1:typeof t.isCancellationRequested=="boolean"&&typeof t.onCancellationRequested=="function"}o.isCancellationToken=e,o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:ie.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:m6})})(He||(He={}));class cy{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?m6:(this._emitter||(this._emitter=new A),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}let zt=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 cy),this._token}cancel(){this._token?this._token instanceof cy&&this._token.cancel():this._token=He.Cancelled}dispose(e=!1){e&&this.cancel(),this._parentListener?.dispose(),this._token?this._token instanceof cy&&this._token.dispose():this._token=He.None}};function NR(o){const e=new zt;return o.add({dispose(){e.cancel()}}),e.token}const _6=Symbol("MicrotaskDelay");function TR(o){return!!o&&typeof o.then=="function"}function Vi(o){const e=new zt,t=o(e.token);let i=!1;const n=new Promise((s,r)=>{const a=e.token.onCancellationRequested(()=>{i=!0,a.dispose(),r(new hr)});Promise.resolve(t).then(l=>{a.dispose(),e.dispose(),i?nf(l)&&l.dispose():s(l)},l=>{a.dispose(),e.dispose(),r(l)})});return new class{cancel(){e.cancel(),e.dispose()}then(s,r){return n.then(s,r)}catch(s){return this.then(void 0,s)}finally(s){return n.finally(s)}}}function Am(o,e,t){return new Promise((i,n)=>{const s=e.onCancellationRequested(()=>{s.dispose(),i(t)});o.then(i,n).finally(()=>s.dispose())})}function sne(o,e){return new Promise((t,i)=>{const n=e.onCancellationRequested(()=>{n.dispose(),i(new hr)});o.then(t,i).finally(()=>n.dispose())})}let one=class{constructor(){this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null,this.cancellationTokenSource=new zt}queue(e){if(this.cancellationTokenSource.token.isCancellationRequested)return Promise.reject(new Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=e,!this.queuedPromise){const t=()=>{if(this.queuedPromise=null,this.cancellationTokenSource.token.isCancellationRequested)return;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(this.cancellationTokenSource.token),new Promise((t,i)=>{this.activePromise.then(n=>{this.activePromise=null,t(n)},n=>{this.activePromise=null,i(n)})})}dispose(){this.cancellationTokenSource.cancel()}};const rne=(o,e)=>{let t=!0;const i=setTimeout(()=>{t=!1,e()},o);return{isTriggered:()=>t,dispose:()=>{clearTimeout(i),t=!1}}},ane=o=>{let e=!0;return queueMicrotask(()=>{e&&(e=!1,o())}),{isTriggered:()=>e,dispose:()=>{e=!1}}};class pr{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,s)=>{this.doResolve=n,this.doReject=s}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const n=this.task;return this.task=null,n()}}));const i=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=t===_6?ane(i):rne(t,i),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new hr),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class b6{constructor(e){this.delayer=new pr(e),this.throttler=new one}trigger(e,t){return this.delayer.trigger(()=>this.throttler.queue(e),t)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function dl(o,e){return e?new Promise((t,i)=>{const n=setTimeout(()=>{s.dispose(),t()},o),s=e.onCancellationRequested(()=>{clearTimeout(n),s.dispose(),i(new hr)})}):Vi(t=>dl(o,t))}function Lc(o,e=0,t){const i=setTimeout(()=>{o(),t&&n.dispose()},e),n=fe(()=>{clearTimeout(i),t?.delete(n)});return t?.add(n),n}function RR(o,e=i=>!!i,t=null){let i=0;const n=o.length,s=()=>{if(i>=n)return Promise.resolve(t);const r=o[i++];return Promise.resolve(r()).then(l=>e(l)?Promise.resolve(l):s())};return s()}let lne=class{constructor(){this._runningTask=void 0,this._pendingTasks=[]}schedule(e){const t=new of;return this._pendingTasks.push({task:e,deferred:t,setUndefinedWhenCleared:!1}),this._runIfNotRunning(),t.p}_runIfNotRunning(){this._runningTask===void 0&&this._processQueue()}async _processQueue(){if(this._pendingTasks.length===0)return;const e=this._pendingTasks.shift();if(e){if(this._runningTask)throw new Ce;this._runningTask=e.task;try{const t=await e.task();e.deferred.complete(t)}catch(t){e.deferred.error(t)}finally{this._runningTask=void 0,this._processQueue()}}}clearPending(){const e=this._pendingTasks;this._pendingTasks=[];for(const t of e)t.setUndefinedWhenCleared?t.deferred.complete(void 0):t.deferred.error(new hr)}};class ro{constructor(e,t){this._isDisposed=!1,this._token=void 0,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==void 0&&(clearTimeout(this._token),this._token=void 0)}cancelAndSet(e,t){if(this._isDisposed)throw new Ce("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=void 0,e()},t)}setIfNotSet(e,t){if(this._isDisposed)throw new Ce("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===void 0&&(this._token=setTimeout(()=>{this._token=void 0,e()},t))}}class MR{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,i=globalThis){if(this.isDisposed)throw new Ce("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();const n=i.setInterval(()=>{e()},t);this.disposable=fe(()=>{i.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}}class vt{constructor(e,t){this.timeoutToken=void 0,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=void 0)}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!==void 0}onTimeout(){this.timeoutToken=void 0,this.runner&&this.doRun()}doRun(){this.runner?.()}}let AR,fv;(function(){const o=globalThis;typeof o.requestIdleCallback!="function"||typeof o.cancelIdleCallback!="function"?fv=(e,t,i)=>{cv(()=>{if(n)return;const s=Date.now()+15;t(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,s-Date.now())}}))});let n=!1;return{dispose(){n||(n=!0)}}}:fv=(e,t,i)=>{const n=e.requestIdleCallback(t,typeof i=="number"?{timeout:i}:void 0);let s=!1;return{dispose(){s||(s=!0,e.cancelIdleCallback(n))}}},AR=(e,t)=>fv(globalThis,e,t)})();class C6{constructor(e,t){this._didRun=!1,this._executor=()=>{try{this._value=t()}catch(i){this._error=i}finally{this._didRun=!0}},this._handle=fv(e,()=>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 cne extends C6{constructor(e){super(globalThis,e)}}class of{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((e,t)=>{this.completeCallback=e,this.errorCallback=t})}complete(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.completeCallback(e),this.outcome={outcome:0,value:e},t()})}error(e){return this.isSettled?Promise.resolve():new Promise(t=>{this.errorCallback(e),this.outcome={outcome:1,value:e},t()})}cancel(){return this.error(new hr)}}var gv;(function(o){async function e(i){let n;const s=await Promise.all(i.map(r=>r.then(a=>a,a=>{n||(n=a)})));if(typeof n<"u")throw n;return s}o.settled=e;function t(i){return new Promise(async(n,s)=>{try{await i(n,s)}catch(r){s(r)}})}o.withAsyncBody=t})(gv||(gv={}));function dne(o){const e=new zt,t=o(e.token);return new une(e,async i=>{const n=e.token.onCancellationRequested(()=>{n.dispose(),e.dispose(),i.reject(new hr)});try{for await(const s of t){if(e.token.isCancellationRequested)return;i.emitOne(s)}n.dispose(),e.dispose()}catch(s){n.dispose(),e.dispose(),i.reject(s)}})}class hne{constructor(){this._unsatisfiedConsumers=[],this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(e){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){const t=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(t,e)}else this._unconsumedValues.push(e)}produceFinal(e){this._ensureNoFinalValue(),this._finalValue=e;for(const t of this._unsatisfiedConsumers)this._resolveOrRejectDeferred(t,e);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new Ce("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(e,t){t.ok?e.complete(t.value):e.error(t.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){const e=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return e.ok?Promise.resolve(e.value):Promise.reject(e.error)}else{const e=new of;return this._unsatisfiedConsumers.push(e),e.p}}}const ar=class ar{constructor(e,t){this._onReturn=t,this._producerConsumer=new hne,this._iterator={next:()=>this._producerConsumer.consume(),return:()=>(this._onReturn?.(),Promise.resolve({done:!0,value:void 0})),throw:async i=>(this._finishError(i),{done:!0,value:void 0})},queueMicrotask(async()=>{const i=e({emitOne:n=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:n}}),emitMany:n=>{for(const s of n)this._producerConsumer.produce({ok:!0,value:{done:!1,value:s}})},reject:n=>this._finishError(n)});if(!this._producerConsumer.hasFinalValue)try{await i,this._finishOk()}catch(n){this._finishError(n)}})}static fromArray(e){return new ar(t=>{t.emitMany(e)})}static fromPromise(e){return new ar(async t=>{t.emitMany(await e)})}static fromPromisesResolveOrder(e){return new ar(async t=>{await Promise.all(e.map(async i=>t.emitOne(await i)))})}static merge(e){return new ar(async t=>{await Promise.all(e.map(async i=>{for await(const n of i)t.emitOne(n)}))})}static map(e,t){return new ar(async i=>{for await(const n of e)i.emitOne(t(n))})}map(e){return ar.map(this,e)}static coalesce(e){return ar.filter(e,t=>!!t)}coalesce(){return ar.coalesce(this)}static filter(e,t){return new ar(async i=>{for await(const n of e)t(n)&&i.emitOne(n)})}filter(e){return ar.filter(this,e)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(e){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:e})}[Symbol.asyncIterator](){return this._iterator}};ar.EMPTY=ar.fromArray([]);let mr=ar;class une extends mr{constructor(e,t){super(t),this._source=e}cancel(){this._source.cancel()}}function v6(o){return o}class fne{constructor(e,t){this.lastCache=void 0,this.lastArgKey=void 0,typeof e=="function"?(this._fn=e,this._computeKey=v6):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);return this.lastArgKey!==t&&(this.lastArgKey=t,this.lastCache=this._fn(e)),this.lastCache}}class PR{get cachedValues(){return this._map}constructor(e,t){this._map=new Map,this._map2=new Map,typeof e=="function"?(this._fn=e,this._computeKey=v6):(this._fn=t,this._computeKey=e.getCacheKey)}get(e){const t=this._computeKey(e);if(this._map2.has(t))return this._map2.get(t);const i=this._fn(e);return this._map.set(e,i),this._map2.set(t,i),i}}var rf;(function(o){o[o.Uninitialized=0]="Uninitialized",o[o.Running=1]="Running",o[o.Completed=2]="Completed"})(rf||(rf={}));class Ln{constructor(e){this.executor=e,this._state=rf.Uninitialized}get value(){if(this._state===rf.Uninitialized){this._state=rf.Running;try{this._value=this.executor()}catch(e){this._error=e}finally{this._state=rf.Completed}}else if(this._state===rf.Running)throw new Error("Cannot read the value of a lazy that is being initialized");if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function w6(o){return!o||typeof o!="string"?!0:o.trim().length===0}const gne=/{(\d+)}/g;function af(o,...e){return e.length===0?o:o.replace(gne,function(t,i){const n=parseInt(i,10);return isNaN(n)||n<0||n>=e.length?t:e[n]})}function pne(o){return o.replace(/[<>"'&]/g,e=>{switch(e){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return e})}function Kr(o){return o.replace(/[<>&]/g,function(e){switch(e){case"<":return"<";case">":return">";case"&":return"&";default:return e}})}function ao(o){return o.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function mne(o,e=" "){const t=pv(o,e);return S6(t,e)}function pv(o,e){if(!o||!e)return o;const t=e.length;if(t===0||o.length===0)return o;let i=0;for(;o.indexOf(e,i)===i;)i=i+t;return o.substring(i)}function S6(o,e){if(!o||!e)return o;const t=e.length,i=o.length;if(t===0||i===0)return o;let n=i,s=-1;for(;s=o.lastIndexOf(e,n-1),!(s===-1||s+t!==n);){if(s===0)return"";n=s}return o.substring(0,n)}function _ne(o){return o.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function y6(o,e,t={}){if(!o)throw new Error("Cannot create regex from empty string");e||(o=ao(o)),t.wholeWord&&(/\B/.test(o.charAt(0))||(o="\\b"+o),/\B/.test(o.charAt(o.length-1))||(o=o+"\\b"));let i="";return t.global&&(i+="g"),t.matchCase||(i+="i"),t.multiline&&(i+="m"),t.unicode&&(i+="u"),new RegExp(o,i)}function L6(o){return o.source==="^"||o.source==="^$"||o.source==="$"||o.source==="^\\s*$"?!1:!!(o.exec("")&&o.lastIndex===0)}function lo(o){return o.split(/\r\n|\r|\n/)}function ts(o){for(let e=0,t=o.length;e=0;t--){const i=o.charCodeAt(t);if(i!==32&&i!==9)return t}return-1}function mv(o,e){return oe?1:0}function OR(o,e,t=0,i=o.length,n=0,s=e.length){for(;tc)return 1}const r=i-t,a=s-n;return ra?1:0}function FR(o,e){return Pm(o,e,0,o.length,0,e.length)}function Pm(o,e,t=0,i=o.length,n=0,s=e.length){for(;t=128||c>=128)return OR(o.toLowerCase(),e.toLowerCase(),t,i,n,s);rh(l)&&(l-=32),rh(c)&&(c-=32);const d=l-c;if(d!==0)return d}const r=i-t,a=s-n;return ra?1:0}function dy(o){return o>=48&&o<=57}function rh(o){return o>=97&&o<=122}function hl(o){return o>=65&&o<=90}function lf(o,e){return o.length===e.length&&Pm(o,e)===0}function WR(o,e){const t=e.length;return t<=o.length&&Pm(o,e,0,t)===0}function bne(o,e){const t=o.length,i=t-e.length;return i>=0&&Pm(o,e,i,t)===0}function Zr(o,e){const t=Math.min(o.length,e.length);let i;for(i=0;i1){const i=o.charCodeAt(e-2);if(zi(i))return BR(i,t)}return t}class HR{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=Cne(this._str,this._offset);return this._offset-=e>=65536?2:1,e}nextCodePoint(){const e=hy(this._str,this._len,this._offset);return this._offset+=e>=65536?2:1,e}eol(){return this._offset>=this._len}}class uy{get offset(){return this._iterator.offset}constructor(e,t=0){this._iterator=new HR(e,t)}nextGraphemeLength(){const e=fy.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.nextCodePoint());for(;!t.eol();){const s=t.offset,r=e.getGraphemeBreakType(t.nextCodePoint());if(E6(n,r)){t.setOffset(s);break}n=r}return t.offset-i}prevGraphemeLength(){const e=fy.getInstance(),t=this._iterator,i=t.offset;let n=e.getGraphemeBreakType(t.prevCodePoint());for(;t.offset>0;){const s=t.offset,r=e.getGraphemeBreakType(t.prevCodePoint());if(E6(r,n)){t.setOffset(s);break}n=r}return i-t.offset}eol(){return this._iterator.eol()}}function VR(o,e){return new uy(o,e).nextGraphemeLength()}function x6(o,e){return new uy(o,e).prevGraphemeLength()}function vne(o,e){e>0&&ah(o.charCodeAt(e))&&e--;const t=e+VR(o,e);return[t-x6(o,t),t]}let zR;function wne(){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 Om(o){return zR||(zR=wne()),zR.test(o)}const Sne=/^[\t\n\r\x20-\x7E]*$/;function _v(o){return Sne.test(o)}const k6=/[\u2028\u2029]/;function I6(o){return k6.test(o)}function kc(o){return o>=11904&&o<=55215||o>=63744&&o<=64255||o>=65281&&o<=65374}function UR(o){return o>=127462&&o<=127487||o===8986||o===8987||o===9200||o===9203||o>=9728&&o<=10175||o===11088||o===11093||o>=127744&&o<=128591||o>=128640&&o<=128764||o>=128992&&o<=129008||o>=129280&&o<=129535||o>=129648&&o<=129782}const yne="\uFEFF";function $R(o){return!!(o&&o.length>0&&o.charCodeAt(0)===65279)}function Lne(o,e=!1){return o?(e&&(o=o.replace(/\\./g,"")),o.toLowerCase()!==o):!1}function D6(o){return o=o%52,o<26?String.fromCharCode(97+o):String.fromCharCode(65+o-26)}function E6(o,e){return o===0?e!==5&&e!==7:o===2&&e===3?!1:o===4||o===2||o===3||e===4||e===2||e===3?!0:!(o===8&&(e===8||e===9||e===11||e===12)||(o===11||o===9)&&(e===9||e===10)||(o===12||o===10)&&e===10||e===5||e===13||e===7||o===1||o===13&&e===14||o===6&&e===6)}const wp=class wp{static getInstance(){return wp._INSTANCE||(wp._INSTANCE=new wp),wp._INSTANCE}constructor(){this._data=xne()}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}};wp._INSTANCE=null;let fy=wp;function xne(){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 kne(o,e){if(o===0)return 0;const t=Ine(o,e);if(t!==void 0)return t;const i=new HR(e,o);return i.prevCodePoint(),i.offset}function Ine(o,e){const t=new HR(e,o);let i=t.prevCodePoint();for(;Dne(i)||i===65039||i===8419;){if(t.offset===0)return;i=t.prevCodePoint()}if(!UR(i))return;let n=t.offset;return n>0&&t.prevCodePoint()===8205&&(n=t.offset),n}function Dne(o){return 127995<=o&&o<=127999}const N6=" ",rc=class rc{static getInstance(e){return rc.cache.get(Array.from(e))}static getLocales(){return rc._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())}};rc.ambiguousCharacterData=new Ln(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"cs":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"es":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"fr":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"it":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ja":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],"ko":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pt-BR":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ru":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"zh-hans":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],"zh-hant":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}')),rc.cache=new fne({getCacheKey:JSON.stringify},e=>{function t(d){const h=new Map;for(let u=0;u!d.startsWith("_")&&Object.hasOwn(s,d));r.length===0&&(r=["_default"]);let a;for(const d of r){const h=t(s[d]);a=n(a,h)}const l=t(s._common),c=i(l,a);return new rc(c)}),rc._locales=new Ln(()=>Object.keys(rc.ambiguousCharacterData.value).filter(e=>!e.startsWith("_")));let bv=rc;const wC=class wC{static getRawData(){return JSON.parse('{"_common":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],"cs":[173,8203,12288],"de":[173,8203,12288],"es":[8203,12288],"fr":[173,8203,12288],"it":[160,173,12288],"ja":[173],"ko":[173,12288],"pl":[173,8203,12288],"pt-BR":[173,8203,12288],"qps-ploc":[160,173,8203,12288],"ru":[173,12288],"tr":[160,173,8203,12288],"zh-hans":[160,173,8203,12288],"zh-hant":[173,12288]}')}static getData(){return this._data||(this._data=new Set([...Object.values(wC.getRawData())].flat())),this._data}static isInvisibleCharacter(e){return wC.getData().has(e)}static get codePoints(){return wC.getData()}};wC._data=void 0;let cf=wC,Fm;const jR=globalThis.vscode;if(typeof jR<"u"&&typeof jR.process<"u"){const o=jR.process;Fm={get platform(){return o.platform},get arch(){return o.arch},get env(){return o.env},cwd(){return o.cwd()}}}else typeof process<"u"&&typeof process?.versions?.node=="string"?Fm={get platform(){return process.platform},get arch(){return process.arch},get env(){return process.env},cwd(){return process.env.VSCODE_CWD||process.cwd()}}:Fm={get platform(){return gn?"win32":ze?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const gy=Fm.cwd,py=Fm.env,Ene=Fm.platform,Nne=65,Tne=97,Rne=90,Mne=122,df=46,is=47,Mo=92,Ic=58,Ane=63;class T6 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 s=e.indexOf(".")!==-1?"property":"argument";let r=`The "${e}" ${s} ${n} of type ${t}`;r+=`. Received type ${typeof i}`,super(r),this.code="ERR_INVALID_ARG_TYPE"}}function Pne(o,e){if(o===null||typeof o!="object")throw new T6(e,"Object",o)}function an(o,e){if(typeof o!="string")throw new T6(e,"string",o)}const lh=Ene==="win32";function wt(o){return o===is||o===Mo}function qR(o){return o===is}function Dc(o){return o>=Nne&&o<=Rne||o>=Tne&&o<=Mne}function my(o,e,t,i){let n="",s=0,r=-1,a=0,l=0;for(let c=0;c<=o.length;++c){if(c2){const d=n.lastIndexOf(t);d===-1?(n="",s=0):(n=n.slice(0,d),s=n.length-1-n.lastIndexOf(t)),r=c,a=0;continue}else if(n.length!==0){n="",s=0,r=c,a=0;continue}}e&&(n+=n.length>0?`${t}..`:"..",s=2)}else n.length>0?n+=`${t}${o.slice(r+1,c)}`:n=o.slice(r+1,c),s=c-r-1;r=c,a=0}else l===df&&a!==-1?++a:a=-1}return n}function One(o){return o?`${o[0]==="."?"":"."}${o}`:""}function R6(o,e){Pne(e,"pathObject");const t=e.dir||e.root,i=e.base||`${e.name||""}${One(e.ext)}`;return t?t===e.root?`${t}${i}`:`${t}${o}${i}`:i}const co={resolve(...o){let e="",t="",i=!1;for(let n=o.length-1;n>=-1;n--){let s;if(n>=0){if(s=o[n],an(s,`paths[${n}]`),s.length===0)continue}else e.length===0?s=gy():(s=py[`=${e}`]||gy(),(s===void 0||s.slice(0,2).toLowerCase()!==e.toLowerCase()&&s.charCodeAt(2)===Mo)&&(s=`${e}\\`));const r=s.length;let a=0,l="",c=!1;const d=s.charCodeAt(0);if(r===1)wt(d)&&(a=1,c=!0);else if(wt(d))if(c=!0,wt(s.charCodeAt(1))){let h=2,u=h;for(;h2&&wt(s.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=`${s.slice(a)}\\${t}`,i=c,c&&e.length>0)break}return t=my(t,!i,"\\",wt),i?`${e}\\${t}`:`${e}${t}`||"."},normalize(o){an(o,"path");const e=o.length;if(e===0)return".";let t=0,i,n=!1;const s=o.charCodeAt(0);if(e===1)return qR(s)?"\\":o;if(wt(s))if(n=!0,wt(o.charCodeAt(1))){let a=2,l=a;for(;a2&&wt(o.charCodeAt(2))&&(n=!0,t=3));let r=t0&&wt(o.charCodeAt(e-1))&&(r+="\\"),!n&&i===void 0&&o.includes(":")){if(r.length>=2&&Dc(r.charCodeAt(0))&&r.charCodeAt(1)===Ic)return`.\\${r}`;let a=o.indexOf(":");do if(a===e-1||wt(o.charCodeAt(a+1)))return`.\\${r}`;while((a=o.indexOf(":",a+1))!==-1)}return i===void 0?n?`\\${r}`:r:n?`${i}\\${r}`:`${i}${r}`},isAbsolute(o){an(o,"path");const e=o.length;if(e===0)return!1;const t=o.charCodeAt(0);return wt(t)||e>2&&Dc(t)&&o.charCodeAt(1)===Ic&&wt(o.charCodeAt(2))},join(...o){if(o.length===0)return".";let e,t;for(let s=0;s0&&(e===void 0?e=t=r:e+=`\\${r}`)}if(e===void 0)return".";let i=!0,n=0;if(typeof t=="string"&&wt(t.charCodeAt(0))){++n;const s=t.length;s>1&&wt(t.charCodeAt(1))&&(++n,s>2&&(wt(t.charCodeAt(2))?++n:i=!1))}if(i){for(;n=2&&(e=`\\${e.slice(n)}`)}return co.normalize(e)},relative(o,e){if(an(o,"from"),an(e,"to"),o===e)return"";const t=co.resolve(o),i=co.resolve(e);if(t===i||(o=t.toLowerCase(),e=i.toLowerCase(),o===e))return"";if(t.length!==o.length||i.length!==e.length){const g=t.split("\\"),p=i.split("\\");g[g.length-1]===""&&g.pop(),p[p.length-1]===""&&p.pop();const _=g.length,b=p.length,C=_C?p.slice(w).join("\\"):_>C?"..\\".repeat(_-1-w)+"..":"":"..\\".repeat(_-w)+p.slice(w).join("\\")}let n=0;for(;nn&&o.charCodeAt(s-1)===Mo;)s--;const r=s-n;let a=0;for(;aa&&e.charCodeAt(l-1)===Mo;)l--;const c=l-a,d=rd){if(e.charCodeAt(a+u)===Mo)return i.slice(a+u+1);if(u===2)return i.slice(a+u)}r>d&&(o.charCodeAt(n+u)===Mo?h=u:u===2&&(h=3)),h===-1&&(h=0)}let f="";for(u=n+h+1;u<=s;++u)(u===s||o.charCodeAt(u)===Mo)&&(f+=f.length===0?"..":"\\..");return a+=h,f.length>0?`${f}${i.slice(a,l)}`:(i.charCodeAt(a)===Mo&&++a,i.slice(a,l))},toNamespacedPath(o){if(typeof o!="string"||o.length===0)return o;const e=co.resolve(o);if(e.length<=2)return o;if(e.charCodeAt(0)===Mo){if(e.charCodeAt(1)===Mo){const t=e.charCodeAt(2);if(t!==Ane&&t!==df)return`\\\\?\\UNC\\${e.slice(2)}`}}else if(Dc(e.charCodeAt(0))&&e.charCodeAt(1)===Ic&&e.charCodeAt(2)===Mo)return`\\\\?\\${e}`;return e},dirname(o){an(o,"path");const e=o.length;if(e===0)return".";let t=-1,i=0;const n=o.charCodeAt(0);if(e===1)return wt(n)?o:".";if(wt(n)){if(t=i=1,wt(o.charCodeAt(1))){let a=2,l=a;for(;a2&&wt(o.charCodeAt(2))?3:2,i=t);let s=-1,r=!0;for(let a=e-1;a>=i;--a)if(wt(o.charCodeAt(a))){if(!r){s=a;break}}else r=!1;if(s===-1){if(t===-1)return".";s=t}return o.slice(0,s)},basename(o,e){e!==void 0&&an(e,"suffix"),an(o,"path");let t=0,i=-1,n=!0,s;if(o.length>=2&&Dc(o.charCodeAt(0))&&o.charCodeAt(1)===Ic&&(t=2),e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=t;--s){const l=o.charCodeAt(s);if(wt(l)){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=t;--s)if(wt(o.charCodeAt(s))){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){an(o,"path");let e=0,t=-1,i=0,n=-1,s=!0,r=0;o.length>=2&&o.charCodeAt(1)===Ic&&Dc(o.charCodeAt(0))&&(e=i=2);for(let a=o.length-1;a>=e;--a){const l=o.charCodeAt(a);if(wt(l)){if(!s){i=a+1;break}continue}n===-1&&(s=!1,n=a+1),l===df?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?"":o.slice(t,n)},format:R6.bind(null,"\\"),parse(o){an(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.length;let i=0,n=o.charCodeAt(0);if(t===1)return wt(n)?(e.root=e.dir=o,e):(e.base=e.name=o,e);if(wt(n)){if(i=1,wt(o.charCodeAt(1))){let h=2,u=h;for(;h0&&(e.root=o.slice(0,i));let s=-1,r=i,a=-1,l=!0,c=o.length-1,d=0;for(;c>=i;--c){if(n=o.charCodeAt(c),wt(n)){if(!l){r=c+1;break}continue}a===-1&&(l=!1,a=c+1),n===df?s===-1?s=c:d!==1&&(d=1):s!==-1&&(d=-1)}return a!==-1&&(s===-1||d===0||d===1&&s===a-1&&s===r+1?e.base=e.name=o.slice(r,a):(e.name=o.slice(r,s),e.base=o.slice(r,a),e.ext=o.slice(s,a))),r>0&&r!==i?e.dir=o.slice(0,r-1):e.dir=e.root,e},sep:"\\",delimiter:";",win32:null,posix:null},Fne=(()=>{if(lh){const o=/\\/g;return()=>{const e=gy().replace(o,"/");return e.slice(e.indexOf("/"))}}return()=>gy()})(),Pi={resolve(...o){let e="",t=!1;for(let i=o.length-1;i>=0&&!t;i--){const n=o[i];an(n,`paths[${i}]`),n.length!==0&&(e=`${n}/${e}`,t=n.charCodeAt(0)===is)}if(!t){const i=Fne();e=`${i}/${e}`,t=i.charCodeAt(0)===is}return e=my(e,!t,"/",qR),t?`/${e}`:e.length>0?e:"."},normalize(o){if(an(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===is,t=o.charCodeAt(o.length-1)===is;return o=my(o,!e,"/",qR),o.length===0?e?"/":t?"./":".":(t&&(o+="/"),e?`/${o}`:o)},isAbsolute(o){return an(o,"path"),o.length>0&&o.charCodeAt(0)===is},join(...o){if(o.length===0)return".";const e=[];for(let t=0;t0&&e.push(i)}return e.length===0?".":Pi.normalize(e.join("/"))},relative(o,e){if(an(o,"from"),an(e,"to"),o===e||(o=Pi.resolve(o),e=Pi.resolve(e),o===e))return"";const t=1,i=o.length,n=i-t,s=1,r=e.length-s,a=na){if(e.charCodeAt(s+c)===is)return e.slice(s+c+1);if(c===0)return e.slice(s+c)}else n>a&&(o.charCodeAt(t+c)===is?l=c:c===0&&(l=0));let d="";for(c=t+l+1;c<=i;++c)(c===i||o.charCodeAt(c)===is)&&(d+=d.length===0?"..":"/..");return`${d}${e.slice(s+l)}`},toNamespacedPath(o){return o},dirname(o){if(an(o,"path"),o.length===0)return".";const e=o.charCodeAt(0)===is;let t=-1,i=!0;for(let n=o.length-1;n>=1;--n)if(o.charCodeAt(n)===is){if(!i){t=n;break}}else i=!1;return t===-1?e?"/":".":e&&t===1?"//":o.slice(0,t)},basename(o,e){e!==void 0&&an(e,"suffix"),an(o,"path");let t=0,i=-1,n=!0,s;if(e!==void 0&&e.length>0&&e.length<=o.length){if(e===o)return"";let r=e.length-1,a=-1;for(s=o.length-1;s>=0;--s){const l=o.charCodeAt(s);if(l===is){if(!n){t=s+1;break}}else a===-1&&(n=!1,a=s+1),r>=0&&(l===e.charCodeAt(r)?--r===-1&&(i=s):(r=-1,i=a))}return t===i?i=a:i===-1&&(i=o.length),o.slice(t,i)}for(s=o.length-1;s>=0;--s)if(o.charCodeAt(s)===is){if(!n){t=s+1;break}}else i===-1&&(n=!1,i=s+1);return i===-1?"":o.slice(t,i)},extname(o){an(o,"path");let e=-1,t=0,i=-1,n=!0,s=0;for(let r=o.length-1;r>=0;--r){const a=o[r];if(a==="/"){if(!n){t=r+1;break}continue}i===-1&&(n=!1,i=r+1),a==="."?e===-1?e=r:s!==1&&(s=1):e!==-1&&(s=-1)}return e===-1||i===-1||s===0||s===1&&e===i-1&&e===t+1?"":o.slice(e,i)},format:R6.bind(null,"/"),parse(o){an(o,"path");const e={root:"",dir:"",base:"",ext:"",name:""};if(o.length===0)return e;const t=o.charCodeAt(0)===is;let i;t?(e.root="/",i=1):i=0;let n=-1,s=0,r=-1,a=!0,l=o.length-1,c=0;for(;l>=i;--l){const d=o.charCodeAt(l);if(d===is){if(!a){s=l+1;break}continue}r===-1&&(a=!1,r=l+1),d===df?n===-1?n=l:c!==1&&(c=1):n!==-1&&(c=-1)}if(r!==-1){const d=s===0&&t?1:s;n===-1||c===0||c===1&&n===r-1&&n===s+1?e.base=e.name=o.slice(d,r):(e.name=o.slice(d,n),e.base=o.slice(d,r),e.ext=o.slice(n,r))}return s>0?e.dir=o.slice(0,s-1):t&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};Pi.win32=co.win32=co,Pi.posix=co.posix=Pi;const M6=lh?co.normalize:Pi.normalize,Wne=lh?co.resolve:Pi.resolve,Bne=lh?co.relative:Pi.relative,_y=lh?co.dirname:Pi.dirname,Ec=lh?co.basename:Pi.basename,Hne=lh?co.extname:Pi.extname,wa=lh?co.sep:Pi.sep,Vne=/^\w[\w\d+.-]*$/,zne=/^\//,Une=/^\/\//;function $ne(o,e){if(!o.scheme&&e)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${o.authority}", path: "${o.path}", query: "${o.query}", fragment: "${o.fragment}"}`);if(o.scheme&&!Vne.test(o.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(o.path){if(o.authority){if(!zne.test(o.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(Une.test(o.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function jne(o,e){return!o&&!e?"file":o}function qne(o,e){switch(o){case"https":case"http":case"file":e?e[0]!==Sa&&(e=Sa+e):e=Sa;break}return e}const Ni="",Sa="/",Kne=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class be{static isUri(e){return e instanceof be?!0:!e||typeof e!="object"?!1: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"}constructor(e,t,i,n,s,r=!1){typeof e=="object"?(this.scheme=e.scheme||Ni,this.authority=e.authority||Ni,this.path=e.path||Ni,this.query=e.query||Ni,this.fragment=e.fragment||Ni):(this.scheme=jne(e,r),this.authority=t||Ni,this.path=qne(this.scheme,i||Ni),this.query=n||Ni,this.fragment=s||Ni,$ne(this,r))}get fsPath(){return by(this,!1)}with(e){if(!e)return this;let{scheme:t,authority:i,path:n,query:s,fragment:r}=e;return t===void 0?t=this.scheme:t===null&&(t=Ni),i===void 0?i=this.authority:i===null&&(i=Ni),n===void 0?n=this.path:n===null&&(n=Ni),s===void 0?s=this.query:s===null&&(s=Ni),r===void 0?r=this.fragment:r===null&&(r=Ni),t===this.scheme&&i===this.authority&&n===this.path&&s===this.query&&r===this.fragment?this:new Wm(t,i,n,s,r)}static parse(e,t=!1){const i=Kne.exec(e);return i?new Wm(i[2]||Ni,Cy(i[4]||Ni),Cy(i[5]||Ni),Cy(i[7]||Ni),Cy(i[9]||Ni),t):new Wm(Ni,Ni,Ni,Ni,Ni)}static file(e){let t=Ni;if(gn&&(e=e.replace(/\\/g,Sa)),e[0]===Sa&&e[1]===Sa){const i=e.indexOf(Sa,2);i===-1?(t=e.substring(2),e=Sa):(t=e.substring(2,i),e=e.substring(i)||Sa)}return new Wm("file",t,e,Ni,Ni)}static from(e,t){return new Wm(e.scheme,e.authority,e.path,e.query,e.fragment,t)}static joinPath(e,...t){if(!e.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let i;return gn&&e.scheme==="file"?i=be.file(co.join(by(e,!0),...t)).path:i=Pi.join(e.path,...t),e.with({path:i})}toString(e=!1){return KR(this,e)}toJSON(){return this}static revive(e){if(e){if(e instanceof be)return e;{const t=new Wm(e);return t._formatted=e.external??null,t._fsPath=e._sep===A6?e.fsPath??null:null,t}}else return e}}const A6=gn?1:void 0;let Wm=class extends be{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=by(this,!1)),this._fsPath}toString(e=!1){return e?KR(this,!0):(this._formatted||(this._formatted=KR(this,!1)),this._formatted)}toJSON(){const e={$mid:1};return this._fsPath&&(e.fsPath=this._fsPath,e._sep=A6),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 P6={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 O6(o,e,t){let i,n=-1;for(let s=0;s=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(o.substring(n,s)),n=-1),i!==void 0&&(i+=o.charAt(s));else{i===void 0&&(i=o.substr(0,s));const a=P6[r];a!==void 0?(n!==-1&&(i+=encodeURIComponent(o.substring(n,s)),n=-1),i+=a):n===-1&&(n=s)}}return n!==-1&&(i+=encodeURIComponent(o.substring(n))),i!==void 0?i:o}function Gne(o){let e;for(let t=0;t1&&o.scheme==="file"?t=`//${o.authority}${o.path}`:o.path.charCodeAt(0)===47&&(o.path.charCodeAt(1)>=65&&o.path.charCodeAt(1)<=90||o.path.charCodeAt(1)>=97&&o.path.charCodeAt(1)<=122)&&o.path.charCodeAt(2)===58?e?t=o.path.substr(1):t=o.path[1].toLowerCase()+o.path.substr(2):t=o.path,gn&&(t=t.replace(/\//g,"\\")),t}function KR(o,e){const t=e?Gne:O6;let i="",{scheme:n,authority:s,path:r,query:a,fragment:l}=o;if(n&&(i+=n,i+=":"),(s||n==="file")&&(i+=Sa,i+=Sa),s){let c=s.indexOf("@");if(c!==-1){const d=s.substr(0,c);s=s.substr(c+1),c=d.lastIndexOf(":"),c===-1?i+=t(d,!1,!1):(i+=t(d.substr(0,c),!1,!1),i+=":",i+=t(d.substr(c+1),!1,!0)),i+="@"}s=s.toLowerCase(),c=s.lastIndexOf(":"),c===-1?i+=t(s,!1,!0):(i+=t(s.substr(0,c),!1,!0),i+=s.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:O6(l,!1,!1)),i}function F6(o){try{return decodeURIComponent(o)}catch{return o.length>3?o.substr(0,3)+F6(o.substr(3)):o}}const W6=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function Cy(o){return o.match(W6)?o.replace(W6,e=>F6(e)):o}var Le;(function(o){o.inMemory="inmemory",o.vscode="vscode",o.internal="private",o.walkThrough="walkThrough",o.walkThroughSnippet="walkThroughSnippet",o.http="http",o.https="https",o.file="file",o.mailto="mailto",o.untitled="untitled",o.data="data",o.command="command",o.vscodeRemote="vscode-remote",o.vscodeRemoteResource="vscode-remote-resource",o.vscodeManagedRemoteResource="vscode-managed-remote-resource",o.vscodeUserData="vscode-userdata",o.vscodeCustomEditor="vscode-custom-editor",o.vscodeNotebookCell="vscode-notebook-cell",o.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",o.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",o.vscodeNotebookCellOutput="vscode-notebook-cell-output",o.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",o.vscodeNotebookMetadata="vscode-notebook-metadata",o.vscodeInteractiveInput="vscode-interactive-input",o.vscodeSettings="vscode-settings",o.vscodeWorkspaceTrust="vscode-workspace-trust",o.vscodeTerminal="vscode-terminal",o.vscodeChatCodeBlock="vscode-chat-code-block",o.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",o.vscodeChatEditor="vscode-chat-editor",o.vscodeChatInput="chatSessionInput",o.vscodeLocalChatSession="vscode-chat-session",o.webviewPanel="webview-panel",o.vscodeWebview="vscode-webview",o.extension="extension",o.vscodeFileResource="vscode-file",o.tmp="tmp",o.vsls="vsls",o.vscodeSourceControl="vscode-scm",o.commentsInput="comment",o.codeSetting="code-setting",o.outputChannel="output",o.accessibleView="accessible-view",o.chatEditingSnapshotScheme="chat-editing-snapshot-text-model",o.chatEditingModel="chat-editing-text-model",o.copilotPr="copilot-pr"})(Le||(Le={}));function vy(o,e){return be.isUri(o)?lf(o.scheme,e):WR(o,e+":")}function GR(o,...e){return e.some(t=>vy(o,t))}const Zne="tkn";class Yne{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(e){this._preferredWebSchema=e}get _remoteResourcesPath(){return Pi.join(this._serverRootPath,Le.vscodeRemoteResource)}rewrite(e){if(this._delegate)try{return this._delegate(e)}catch(a){return De(a),e}const t=e.authority;let i=this._hosts[t];i&&i.indexOf(":")!==-1&&i.indexOf("[")===-1&&(i=`[${i}]`);const n=this._ports[t],s=this._connectionTokens[t];let r=`path=${encodeURIComponent(e.path)}`;return typeof s=="string"&&(r+=`&${Zne}=${encodeURIComponent(s)}`),be.from({scheme:ll?this._preferredWebSchema:Le.vscodeRemoteResource,authority:`${i}:${n}`,path:this._remoteResourcesPath,query:r})}}const B6=new Yne,Xne="vscode-app",NS=class NS{uriToBrowserUri(e){return e.scheme===Le.vscodeRemote?B6.rewrite(e):e.scheme===Le.file&&(va||Nie===`${Le.vscodeFileResource}://${NS.FALLBACK_AUTHORITY}`)?e.with({scheme:Le.vscodeFileResource,authority:e.authority||NS.FALLBACK_AUTHORITY,query:null,fragment:null}):e}};NS.FALLBACK_AUTHORITY=Xne;let ZR=NS;const H6=new ZR;var YR;(function(o){const e=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);o.CoopAndCoep=Object.freeze(e.get("3"));const t="vscode-coi";function i(s){let r;typeof s=="string"?r=new URL(s).searchParams:s instanceof URL?r=s.searchParams:be.isUri(s)&&(r=new URL(s.toString(!0)).searchParams);const a=r?.get(t);if(a)return e.get(a)}o.getHeadersFromQuery=i;function n(s,r,a){if(!globalThis.crossOriginIsolated)return;const l=r&&a?"3":a?"2":"1";s instanceof URLSearchParams?s.set(t,l):s[t]=l}o.addSearchParam=n})(YR||(YR={}));const V6=typeof Buffer<"u";new Ln(()=>new Uint8Array(256));let XR;class ch{static wrap(e){return V6&&!Buffer.isBuffer(e)&&(e=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),new ch(e)}constructor(e){this.buffer=e,this.byteLength=this.buffer.byteLength}toString(){return V6?this.buffer.toString():(XR||(XR=new TextDecoder),XR.decode(this.buffer))}}function Qne(o,e){return o[e+0]<<0>>>0|o[e+1]<<8>>>0}function Jne(o,e,t){o[t+0]=e&255,e=e>>>8,o[t+1]=e&255}function ya(o,e){return o[e]*2**24+o[e+1]*2**16+o[e+2]*2**8+o[e+3]}function La(o,e,t){o[t+3]=e,e=e>>>8,o[t+2]=e,e=e>>>8,o[t+1]=e,e=e>>>8,o[t]=e}function z6(o,e){return o[e]}function U6(o,e,t){o[t]=e}const $6="0123456789abcdef";function ese({buffer:o}){let e="";for(let t=0;t>>4],e+=$6[i&15]}return e}function Cv(o){return wy(o,0)}function wy(o,e){switch(typeof o){case"object":return o===null?Nc(349,e):Array.isArray(o)?ise(o,e):nse(o,e);case"string":return QR(o,e);case"boolean":return tse(o,e);case"number":return Nc(o,e);case"undefined":return Nc(937,e);default:return Nc(617,e)}}function Nc(o,e){return(e<<5)-e+o|0}function tse(o,e){return Nc(o?433:863,e)}function QR(o,e){e=Nc(149417,e);for(let t=0,i=o.length;twy(i,t),e)}function nse(o,e){return e=Nc(181387,e),Object.keys(o).sort().reduce((t,i)=>(t=QR(i,t),wy(o[i],t)),e)}function JR(o,e,t=32){const i=t-e,n=~((1<>>i)>>>0}function vv(o,e=32){return o instanceof ArrayBuffer?ese(ch.wrap(new Uint8Array(o))):(o>>>0).toString(16).padStart(e/4,"0")}const pN=class pN{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(e){const t=e.length;if(t===0)return;const i=this._buff;let n=this._buffLen,s=this._leftoverHighSurrogate,r,a;for(s!==0?(r=s,a=-1,s=0):(r=e.charCodeAt(0),a=0);;){let l=r;if(zi(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],e[1]=e[65],e[2]=e[66]),t}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),vv(this._h0)+vv(this._h1)+vv(this._h2)+vv(this._h3)+vv(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,this._buff.subarray(this._buffLen).fill(0),this._buffLen>56&&(this._step(),this._buff.fill(0));const 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=pN._bigBlock32,t=this._buffDV;for(let h=0;h<64;h+=4)e.setUint32(h,t.getUint32(h,!1),!1);for(let h=64;h<320;h+=4)e.setUint32(h,JR(e.getUint32(h-12,!1)^e.getUint32(h-32,!1)^e.getUint32(h-56,!1)^e.getUint32(h-64,!1),1),!1);let i=this._h0,n=this._h1,s=this._h2,r=this._h3,a=this._h4,l,c,d;for(let h=0;h<80;h++)h<20?(l=n&s|~n&r,c=1518500249):h<40?(l=n^s^r,c=1859775393):h<60?(l=n&s|n&r|s&r,c=2400959708):(l=n^s^r,c=3395469782),d=JR(i,5)+l+a+c+e.getUint32(h*4,!1)&4294967295,a=r,r=s,s=JR(n,30),n=i,i=d;this._h0=this._h0+i&4294967295,this._h1=this._h1+n&4294967295,this._h2=this._h2+s&4294967295,this._h3=this._h3+r&4294967295,this._h4=this._h4+a&4294967295}};pN._bigBlock32=new DataView(new ArrayBuffer(320));let eM=pN;class xn{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return sse(e,this)}}const j6=new Map,tM=new WeakMap;function sse(o,e){const t=tM.get(o);if(t)return t;const i=ose(o,e);if(i){let n=j6.get(i)??0;n++,j6.set(i,n);const s=n===1?i:`${i}#${n}`;return tM.set(o,s),s}}function ose(o,e){const t=tM.get(o);if(t)return t;const i=e.owner?ase(e.owner)+".":"";let n;const s=e.debugNameSource;if(s!==void 0)if(typeof s=="function"){if(n=s(),n!==void 0)return i+n}else return i+s;const r=e.referenceFn;if(r!==void 0&&(n=iM(r),n!==void 0))return i+n;if(e.owner!==void 0){const a=rse(e.owner,o);if(a!==void 0)return i+a}}function rse(o,e){for(const t in o)if(o[t]===e)return t}const q6=new Map,K6=new WeakMap;function ase(o){const e=K6.get(o);if(e)return e;const t=G6(o)??"Object";let i=q6.get(t)??0;i++,q6.set(t,i);const n=i===1?t:`${t}#${i}`;return K6.set(o,n),n}function G6(o){const e=o.constructor;if(e)return e.name==="Object"?void 0:e.name}function iM(o){const e=o.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e);return(i?i[1]:void 0)?.trim()}function lse(o){if(o.length===0)throw new Error("Invalid tail call");return[o.slice(0,o.length-1),o[o.length-1]]}function Ut(o,e,t=(i,n)=>i===n){if(o===e)return!0;if(!o||!e||o.length!==e.length)return!1;for(let i=0,n=o.length;it(o[i],e))}function nM(o,e){let t=0,i=o-1;for(;t<=i;){const n=(t+i)/2|0,s=e(n);if(s<0)t=n+1;else if(s>0)i=n-1;else return n}return-(t+1)}function sM(o,e,t){if(o=o|0,o>=e.length)throw new TypeError("invalid index");const i=e[Math.floor(e.length*Math.random())],n=[],s=[],r=[];for(const a of e){const l=t(a,i);l<0?n.push(a):l>0?s.push(a):r.push(a)}return o!!e)}function X6(o){let e=0;for(let t=0;t0}function Tc(o,e=t=>t){const t=new Set;return o.filter(i=>{const n=e(i);return t.has(n)?!1:(t.add(n),!0)})}function _s(o,e){let t=typeof e=="number"?o:0;typeof e=="number"?t=o:(t=0,e=o);const i=[];if(t<=e)for(let n=t;ne;n--)i.push(n);return i}function yy(o,e,t){const i=o.slice(0,e),n=o.slice(e);return i.concat(t,n)}function rM(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.unshift(e))}function Ly(o,e){const t=o.indexOf(e);t>-1&&(o.splice(t,1),o.push(e))}function aM(o,e){for(const t of e)o.push(t)}function hse(o,e){const t=[];for(const i of o){const n=e(i);n!==void 0&&t.push(n)}return t}function lM(o){return Array.isArray(o)?o:[o]}function use(o,e,t){const i=J6(o,e),n=o.length,s=t.length;o.length=n+s;for(let r=n-1;r>=i;r--)o[r+s]=o[r];for(let r=0;r0}o.isGreaterThan=i;function n(s){return s===0}o.isNeitherLessOrGreaterThan=n,o.greaterThan=1,o.lessThan=-1,o.neitherLessOrGreaterThan=0})(dh||(dh={}));function kn(o,e){return(t,i)=>e(o(t),o(i))}function fse(...o){return(e,t)=>{for(const i of o){const n=i(e,t);if(!dh.isNeitherLessOrGreaterThan(n))return n}return dh.neitherLessOrGreaterThan}}const ho=(o,e)=>o-e,eH=(o,e)=>ho(o?1:0,e?1:0);function tH(o){return(e,t)=>-o(e,t)}function gse(o){return(e,t)=>e===void 0?t===void 0?dh.neitherLessOrGreaterThan:dh.lessThan:t===void 0?dh.greaterThan:o(e,t)}class Rc{constructor(e){this.firstIdx=0,this.items=e,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}}const SC=class SC{constructor(e){this.iterate=e}toArray(){const e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new SC(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new SC(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||dh.isGreaterThan(e(n,t)))&&(i=!1,t=n),!0)),t}};SC.empty=new SC(e=>{});let hf=SC;class ky{constructor(e){this._indexMap=e}static createSortPermutation(e,t){const i=Array.from(e.keys()).sort((n,s)=>t(e[n],e[s]));return new ky(i)}apply(e){return e.map((t,i)=>e[this._indexMap[i]])}inverse(){const e=this._indexMap.slice();for(let t=0;te+t,0)}const Ao=(o,e)=>o===e;function wv(o=Ao){return(e,t)=>Ut(e,t,o)}function cM(){return(o,e)=>o.equals(e)}function uf(o,e,t){if(t!==void 0){const i=o;return i==null||e===void 0||e===null?e===i:t(i,e)}else{const i=o;return(n,s)=>n==null||s===void 0||s===null?s===n:i(n,s)}}function dM(o,e){if(o===e)return!0;if(Array.isArray(o)&&Array.isArray(e)){if(o.length!==e.length)return!1;for(let t=0;t{i.updateObserver(e,t)});return}this._updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){const e=this._updatingObservers;if(!e){iH("transaction.finish() has already been called!");return}for(let t=0;t{const r=iM(s);if(r!==void 0)return r;const l=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(s.toString());if(l)return`${this.debugName}.${l[2]}`;if(!n)return`${this.debugName} (mapped)`},debugReferenceFn:s},r=>s(this.read(r),r),i)}flatten(){return uM({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},e=>this.read(e).read(e))}recomputeInitiallyAndOnChange(e,t){return e.add(sH(this,t)),this}}class Vm extends oH{constructor(e){super(),this._observers=new Set,Vn()?.handleObservableCreated(this,e)}addObserver(e){const t=this._observers.size;this._observers.add(e),t===0&&this.onFirstObserverAdded(),t!==this._observers.size&&Vn()?.handleOnListenerCountChanged(this,this._observers.size)}removeObserver(e){const t=this._observers.delete(e);t&&this._observers.size===0&&this.onLastObserverRemoved(),t&&Vn()?.handleOnListenerCountChanged(this,this._observers.size)}onFirstObserverAdded(){}onLastObserverRemoved(){}debugGetObservers(){return this._observers}}function xe(o,e,t=Ui.ofCaller()){let i;return typeof o=="string"?i=new xn(void 0,o,void 0):i=new xn(o,void 0,void 0),new yv(i,e,Ao,t)}class yv extends Vm{get debugName(){return this._debugNameData.getDebugName(this)??"ObservableValue"}constructor(e,t,i,n){super(n),this._debugNameData=e,this._equalityComparator=i,this._value=t,Vn()?.handleObservableUpdated(this,{hadValue:!1,newValue:t,change:void 0,didChange:!0,oldValue:void 0})}get(){return this._value}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new Hm(()=>{},()=>`Setting ${this.debugName}`));try{const s=this._value;this._setValue(e),Vn()?.handleObservableUpdated(this,{oldValue:s,newValue:e,change:i,didChange:!0,hadValue:!0});for(const r of this._observers)t.updateObserver(r,this),r.handleChange(this,i)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}debugGetState(){return{value:this._value}}debugSetValue(e){this._value=e}}function fM(o,e,t=Ui.ofCaller()){let i;return typeof o=="string"?i=new xn(void 0,o,void 0):i=new xn(o,void 0,void 0),new vse(i,e,Ao,t)}class vse extends yv{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}class wse extends Vm{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i,n){super(n),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(const e of this._deltas){Vn()?.handleObservableUpdated(this,{change:e,didChange:!0,oldValue:"(unknown)",newValue:this._value,hadValue:!0});for(const t of this._observers)t.handleChange(this,e)}this._deltas.length=0}else{Vn()?.handleObservableUpdated(this,{change:void 0,didChange:!0,oldValue:"(unknown)",newValue:this._value,hadValue:!0});for(const e of this._observers)e.handleChange(this,void 0)}}_beginUpdate(){if(this._updateCounter++,this._updateCounter===1)for(const e of this._observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){this._update();const e=[...this._observers];for(const t of e)t.endUpdate(this)}}addObserver(e){const t=!this._observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){const t=this._observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let n;t||(t=n=new Hm(()=>{},()=>`Setting ${this.debugName}`));try{if(this._isUpToDate=!1,this._setValue(e),i!==void 0&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(s,r)=>{},handlePossibleChange:s=>{}},this),this._updateCounter>1)for(const s of this._observers)s.handlePossibleChange(this)}finally{n&&n.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}function Lv(o,e,t=Ui.ofCaller()){return o.lazy?new wse(new xn(o.owner,o.debugName,void 0),e,o.equalsFn??Ao,t):new yv(new xn(o.owner,o.debugName,void 0),e,o.equalsFn??Ao,t)}function Sse(o){switch(o){case 1:return"dependenciesMightHaveChanged";case 2:return"stale";case 3:return"upToDate";default:return""}}class xv{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n){this._debugNameData=e,this._runFn=t,this._changeTracker=i,this._state=2,this._updateCount=0,this._disposed=!1,this._dependencies=new Set,this._dependenciesToBeRemoved=new Set,this._isRunning=!1,this._store=void 0,this._delayedStore=void 0,this._changeSummary=this._changeTracker?.createChangeSummary(void 0),Vn()?.handleAutorunCreated(this,n),this._run()}dispose(){if(!this._disposed){this._disposed=!0;for(const e of this._dependencies)e.removeObserver(this);this._dependencies.clear(),this._store!==void 0&&this._store.dispose(),this._delayedStore!==void 0&&this._delayedStore.dispose(),Vn()?.handleAutorunDisposed(this)}}_run(){const e=this._dependenciesToBeRemoved;this._dependenciesToBeRemoved=this._dependencies,this._dependencies=e,this._state=3;try{if(!this._disposed){Vn()?.handleAutorunStarted(this);const t=this._changeSummary,i=this._delayedStore;i!==void 0&&(this._delayedStore=void 0);try{this._isRunning=!0,this._changeTracker&&(this._changeTracker.beforeUpdate?.(this,t),this._changeSummary=this._changeTracker.createChangeSummary(t)),this._store!==void 0&&(this._store.dispose(),this._store=void 0),this._runFn(this,t)}catch(n){ey(n)}finally{this._isRunning=!1,i!==void 0&&i.dispose()}}}finally{this._disposed||Vn()?.handleAutorunFinished(this);for(const t of this._dependenciesToBeRemoved)t.removeObserver(this);this._dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(e){this._state===3&&(this._state=1),this._updateCount++}endUpdate(e){try{if(this._updateCount===1)do{if(this._state===1){this._state=3;for(const t of this._dependencies)if(t.reportChanges(),this._state===2)break}this._state!==3&&this._run()}while(this._state!==3)}finally{this._updateCount--}sh(()=>this._updateCount>=0)}handlePossibleChange(e){this._state===3&&this._isDependency(e)&&(this._state=1)}handleChange(e,t){if(this._isDependency(e)){Vn()?.handleAutorunDependencyChanged(this,e,t);try{(this._changeTracker?this._changeTracker.handleChange({changedObservable:e,change:t,didChange:n=>n===e},this._changeSummary):!0)&&(this._state=2)}catch(i){ey(i)}}}_isDependency(e){return this._dependencies.has(e)&&!this._dependenciesToBeRemoved.has(e)}_ensureNoRunning(){if(!this._isRunning)throw new Ce("The reader object cannot be used outside its compute function!")}readObservable(e){if(this._ensureNoRunning(),this._disposed)return e.get();e.addObserver(this);const t=e.get();return this._dependencies.add(e),this._dependenciesToBeRemoved.delete(e),t}get store(){if(this._ensureNoRunning(),this._disposed)throw new Ce("Cannot access store after dispose");return this._store===void 0&&(this._store=new V),this._store}debugGetState(){return{isRunning:this._isRunning,updateCount:this._updateCount,dependencies:this._dependencies,state:this._state,stateStr:Sse(this._state)}}debugRerun(){this._isRunning?this._state=2:this._run()}}function Se(o,e=Ui.ofCaller()){return new xv(new xn(void 0,void 0,o),o,void 0,e)}function Ey(o,e,t=Ui.ofCaller()){return new xv(new xn(o.owner,o.debugName,o.debugReferenceFn??e),e,void 0,t)}function zm(o,e,t=Ui.ofCaller()){return new xv(new xn(o.owner,o.debugName,o.debugReferenceFn??e),e,o.changeTracker,t)}function yse(o,e){const t=new V,i=zm({owner:o.owner,debugName:o.debugName,debugReferenceFn:o.debugReferenceFn??e,changeTracker:o.changeTracker},(n,s)=>{t.clear(),e(n,s,t)});return fe(()=>{i.dispose(),t.dispose()})}function zn(o){const e=new V,t=Ey({owner:void 0,debugName:void 0,debugReferenceFn:o},i=>{e.clear(),o(i,e)});return fe(()=>{t.dispose(),e.dispose()})}function Lse(o,e){let t;return Ey({debugReferenceFn:e},i=>{const n=o.read(i),s=t;t=n,e({lastValue:s,newValue:n})})}function xse(o){switch(o){case 0:return"initial";case 1:return"dependenciesMightHaveChanged";case 2:return"stale";case 3:return"upToDate";default:return""}}class _r extends Vm{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,n=void 0,s,r){super(r),this._debugNameData=e,this._computeFn=t,this._changeTracker=i,this._handleLastObserverRemoved=n,this._equalityComparator=s,this._state=0,this._value=void 0,this._updateCount=0,this._dependencies=new Set,this._dependenciesToBeRemoved=new Set,this._changeSummary=void 0,this._isUpdating=!1,this._isComputing=!1,this._didReportChange=!1,this._isInBeforeUpdate=!1,this._isReaderValid=!1,this._store=void 0,this._delayedStore=void 0,this._removedObserverToCallEndUpdateOn=null,this._changeSummary=this._changeTracker?.createChangeSummary(void 0)}onLastObserverRemoved(){this._state=0,this._value=void 0,Vn()?.handleDerivedCleared(this);for(const e of this._dependencies)e.removeObserver(this);this._dependencies.clear(),this._store!==void 0&&(this._store.dispose(),this._store=void 0),this._delayedStore!==void 0&&(this._delayedStore.dispose(),this._delayedStore=void 0),this._handleLastObserverRemoved?.()}get(){if(this._isComputing,this._observers.size===0){let t;try{this._isReaderValid=!0;let i;this._changeTracker&&(i=this._changeTracker.createChangeSummary(void 0),this._changeTracker.beforeUpdate?.(this,i)),t=this._computeFn(this,i)}finally{this._isReaderValid=!1}return this.onLastObserverRemoved(),t}else{do{if(this._state===1){for(const t of this._dependencies)if(t.reportChanges(),this._state===2)break}this._state===1&&(this._state=3),this._state!==3&&this._recompute()}while(this._state!==3);return this._value}}_recompute(){let e=!1;this._isComputing=!0,this._didReportChange=!1;const t=this._dependenciesToBeRemoved;this._dependenciesToBeRemoved=this._dependencies,this._dependencies=t;try{const i=this._changeSummary;this._isReaderValid=!0,this._changeTracker&&(this._isInBeforeUpdate=!0,this._changeTracker.beforeUpdate?.(this,i),this._isInBeforeUpdate=!1,this._changeSummary=this._changeTracker?.createChangeSummary(i));const n=this._state!==0,s=this._value;this._state=3;const r=this._delayedStore;r!==void 0&&(this._delayedStore=void 0);try{this._store!==void 0&&(this._store.dispose(),this._store=void 0),this._value=this._computeFn(this,i)}finally{this._isReaderValid=!1;for(const a of this._dependenciesToBeRemoved)a.removeObserver(this);this._dependenciesToBeRemoved.clear(),r!==void 0&&r.dispose()}e=this._didReportChange||n&&!this._equalityComparator(s,this._value),Vn()?.handleObservableUpdated(this,{oldValue:s,newValue:this._value,change:void 0,didChange:e,hadValue:n})}catch(i){ey(i)}if(this._isComputing=!1,!this._didReportChange&&e)for(const i of this._observers)i.handleChange(this,void 0);else this._didReportChange=!1}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){if(this._isUpdating)throw new Ce("Cyclic deriveds are not supported yet!");this._updateCount++,this._isUpdating=!0;try{const t=this._updateCount===1;if(this._state===3&&(this._state=1,!t))for(const i of this._observers)i.handlePossibleChange(this);if(t)for(const i of this._observers)i.beginUpdate(this)}finally{this._isUpdating=!1}}endUpdate(e){if(this._updateCount--,this._updateCount===0){const t=[...this._observers];for(const i of t)i.endUpdate(this);if(this._removedObserverToCallEndUpdateOn){const i=[...this._removedObserverToCallEndUpdateOn];this._removedObserverToCallEndUpdateOn=null;for(const n of i)n.endUpdate(this)}}sh(()=>this._updateCount>=0)}handlePossibleChange(e){if(this._state===3&&this._dependencies.has(e)&&!this._dependenciesToBeRemoved.has(e)){this._state=1;for(const t of this._observers)t.handlePossibleChange(this)}}handleChange(e,t){if(this._dependencies.has(e)&&!this._dependenciesToBeRemoved.has(e)||this._isInBeforeUpdate){Vn()?.handleDerivedDependencyChanged(this,e,t);let i=!1;try{i=this._changeTracker?this._changeTracker.handleChange({changedObservable:e,change:t,didChange:s=>s===e},this._changeSummary):!0}catch(s){ey(s)}const n=this._state===3;if(i&&(this._state===1||n)&&(this._state=2,n))for(const s of this._observers)s.handlePossibleChange(this)}}_ensureReaderValid(){if(!this._isReaderValid)throw new Ce("The reader object cannot be used outside its compute function!")}readObservable(e){this._ensureReaderValid(),e.addObserver(this);const t=e.get();return this._dependencies.add(e),this._dependenciesToBeRemoved.delete(e),t}get store(){return this._ensureReaderValid(),this._store===void 0&&(this._store=new V),this._store}addObserver(e){const t=!this._observers.has(e)&&this._updateCount>0;super.addObserver(e),t&&(this._removedObserverToCallEndUpdateOn&&this._removedObserverToCallEndUpdateOn.has(e)?this._removedObserverToCallEndUpdateOn.delete(e):e.beginUpdate(this))}removeObserver(e){this._observers.has(e)&&this._updateCount>0&&(this._removedObserverToCallEndUpdateOn||(this._removedObserverToCallEndUpdateOn=new Set),this._removedObserverToCallEndUpdateOn.add(e)),super.removeObserver(e)}debugGetState(){return{state:this._state,stateStr:xse(this._state),updateCount:this._updateCount,isComputing:this._isComputing,dependencies:this._dependencies,value:this._value}}debugSetValue(e){this._value=e}debugRecompute(){this._isComputing?this._state=2:this._recompute()}setValue(e,t,i){this._value=e;const n=this._observers;t.updateObserver(this,this);for(const s of n)s.handleChange(this,i)}}class rH extends _r{constructor(e,t,i,n=void 0,s,r,a){super(e,t,i,n,s,a),this.set=r}}function $(o,e,t=Ui.ofCaller()){return e!==void 0?new _r(new xn(o,void 0,e),e,void 0,void 0,Ao,t):new _r(new xn(void 0,void 0,o),o,void 0,void 0,Ao,t)}function gM(o,e,t,i=Ui.ofCaller()){return new rH(new xn(o,void 0,e),e,void 0,void 0,Ao,t,i)}function In(o,e,t=Ui.ofCaller()){return new _r(new xn(o.owner,o.debugName,o.debugReferenceFn),e,void 0,o.onLastObserverRemoved,o.equalsFn??Ao,t)}bse(In);function aH(o,e,t=Ui.ofCaller()){return new _r(new xn(o.owner,o.debugName,void 0),e,o.changeTracker,void 0,o.equalityComparer??Ao,t)}function br(o,e,t=Ui.ofCaller()){let i,n;e===void 0?(i=o,n=void 0):(n=o,i=e);let s;return new _r(new xn(n,void 0,i),r=>{s?s.clear():s=new V;const a=i(r);return a&&s.add(a),a},void 0,()=>{s&&(s.dispose(),s=void 0)},Ao,t)}class kse{constructor(e){this._value=xe(this,void 0),this.promiseResult=this._value,this.promise=e.then(t=>(Dt(i=>{this._value.set(new lH(t,void 0),i)}),t),t=>{throw Dt(i=>{this._value.set(new lH(void 0,t),i)}),t})}}class lH{constructor(e,t){this.data=e,this.error=t}getDataOrThrow(){if(this.error)throw this.error;return this.data}}function cH(o,e,t,i){return e||(e=n=>n!=null),new Promise((n,s)=>{let r=!0,a=!1;const l=o.map(d=>({isFinished:e(d),error:t?t(d):!1,state:d})),c=Se(d=>{const{isFinished:h,error:u,state:f}=l.read(d);(h||u)&&(r?a=!0:c.dispose(),u?s(u===!0?f:u):n(f))});if(i){const d=i.onCancellationRequested(()=>{c.dispose(),d.dispose(),s(new hr)});if(i.isCancellationRequested){c.dispose(),d.dispose(),s(new hr);return}}r=!1,a&&c.dispose()})}function at(...o){let e,t,i,n;return o.length===2?[t,i]=o:[e,t,i,n]=o,new Mc(new xn(e,void 0,i),t,i,()=>Mc.globalTransaction,Ao,n??Ui.ofCaller())}function dH(o,e,t,i=Ui.ofCaller()){return new Mc(new xn(o.owner,o.debugName,o.debugReferenceFn??t),e,t,()=>Mc.globalTransaction,o.equalsFn??Ao,i)}class Mc extends Vm{constructor(e,t,i,n,s,r){super(r),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=n,this._equalityComparator=s,this._hasValue=!1,this.handleEvent=a=>{const l=this._getValue(a),c=this._value,d=!this._hasValue||!this._equalityComparator(c,l);let h=!1;d&&(this._value=l,this._hasValue&&(h=!0,Bm(this._getTransaction(),u=>{Vn()?.handleObservableUpdated(this,{oldValue:c,newValue:l,change:void 0,didChange:d,hadValue:this._hasValue});for(const f of this._observers)u.updateObserver(f,this),f.handleChange(this,void 0)},()=>{const u=this.getDebugName();return"Event fired"+(u?`: ${u}`:"")})),this._hasValue=!0),h||Vn()?.handleObservableUpdated(this,{oldValue:c,newValue:l,change:void 0,didChange:d,hadValue:this._hasValue})}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){const e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this._subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this._subscription.dispose(),this._subscription=void 0,this._hasValue=!1,this._value=void 0}get(){return this._subscription?(this._hasValue||this.handleEvent(void 0),this._value):this._getValue(void 0)}debugSetValue(e){this._value=e}debugGetState(){return{value:this._value,hasValue:this._hasValue}}}(function(o){o.Observer=Mc;function e(t,i){let n=!1;Mc.globalTransaction===void 0&&(Mc.globalTransaction=t,n=!0);try{i()}finally{n&&(Mc.globalTransaction=void 0)}}o.batchEventsGlobally=e})(at||(at={}));function Cr(o,e=Ui.ofCaller()){return typeof o=="string"?new hH(o,void 0,e):new hH(void 0,o,e)}class hH extends Vm{get debugName(){return new xn(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t,i){super(i),this._debugName=e,this._owner=t}trigger(e,t){if(!e){Dt(i=>{this.trigger(i,t)},()=>`Trigger signal ${this.debugName}`);return}for(const i of this._observers)e.updateObserver(i,this),i.handleChange(this,t)}get(){}}function uH(o,e){let t=!1,i,n;return at(s=>{const r=Se(a=>{const l=o.read(a);t?(n&&clearTimeout(n),n=setTimeout(()=>{i=l,s()},e)):(t=!0,i=l)});return{dispose(){r.dispose(),t=!1,i=void 0}}},()=>t?i:o.get())}function Um(o,e){const t=new Ise(!0,e);o.addObserver(t);try{t.beginUpdate(o)}finally{t.endUpdate(o)}return fe(()=>{o.removeObserver(t)})}Cse(Um);class Ise{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){this._counter===1&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges()),this._counter--}handlePossibleChange(e){}handleChange(e,t){}}function Ac(o,e){let t;return In({owner:o,debugReferenceFn:e},n=>(t=e(n,t),t))}function pM(o,e,t,i){let n=new fH(t,i);return In({debugReferenceFn:t,owner:o,onLastObserverRemoved:()=>{n.dispose(),n=new fH(t)}},r=>(n.setItems(e.read(r)),n.getItems()))}let fH=class{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach(e=>e.store.dispose()),this._cache.clear()}setItems(e){const t=[],i=new Set(this._cache.keys());for(const n of e){const s=this._keySelector?this._keySelector(n):n;let r=this._cache.get(s);if(r)i.delete(s);else{const a=new V;r={out:this._map(n,a),store:a},this._cache.set(s,r)}t.push(r.out)}for(const n of i)this._cache.get(n).store.dispose(),this._cache.delete(n);this._items=t}getItems(){return this._items}};function Dse(o){return{createChangeSummary:e=>({changes:[]}),handleChange(e,t){for(const i in o)e.didChange(o[i])&&t.changes.push({key:i,change:e.change});return!0},beforeUpdate(e,t){for(const i in o){if(i==="changes")throw new Ce('property name "changes" is reserved for change tracking');t[i]=o[i].read(e)}}}}function Ese(o){let e;return{createChangeSummary:t=>({changes:[]}),handleChange(t,i){e||(e=o());for(const n in e)t.didChange(e[n])&&i.changes.push({key:n,change:t.change});return!0},beforeUpdate(t,i){e||(e=o());for(const n in e){if(n==="changes")throw new Ce('property name "changes" is reserved for change tracking');i[n]=e[n].read(t)}}}}function Et(o){return new Nse(o)}class Nse extends oH{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}}function uo(o,e,t=Ui.ofCaller()){return new Tse(typeof o=="string"?o:new xn(o,void 0,void 0),e,t)}class Tse extends Vm{constructor(e,t,i){super(i),this.event=t,this.handleEvent=()=>{Dt(n=>{for(const s of this._observers)n.updateObserver(s,this),s.handleChange(this,void 0)},()=>this.debugName)},this.debugName=typeof e=="string"?e:e.getDebugName(this)??"Observable Signal From Event"}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}}function ka(o,e){let t,i=!0;return yse({changeTracker:{createChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(n,s)=>{if(n.didChange(o)){const r=n.change;r!==void 0&&s.deltas.push(r),s.didChange=!0}return!0}}},(n,s)=>{const r=o.read(n),a=t;s.didChange&&(t=r,e(r,a,s.deltas)),i&&(i=!1,t=r)})}function gH(o,e){const t=new V,i=ka(o,(n,s,r)=>{t.clear(),e(n,s,r,t)});return{dispose(){i.dispose(),t.dispose()}}}function Rse(o,e){return gH(o,(t,i,n,s)=>{e(t,i,n,NR(s))})}function Mse(o,e){return Ac(o,(t,i)=>i??e(t))}function $m(o,e){switch(typeof o){case"number":return""+o;case"string":return o.length+2<=e?`"${o}"`:`"${o.substr(0,e-7)}"+...`;case"boolean":return o?"true":"false";case"undefined":return"undefined";case"object":return o===null?"null":Array.isArray(o)?Ase(o,e):Pse(o,e);case"symbol":return o.toString();case"function":return`[[Function${o.name?" "+o.name:""}]]`;default:return""+o}}function Ase(o,e){let t="[ ",i=!0;for(const n of o){if(i||(t+=", "),t.length-5>e){t+="...";break}i=!1,t+=`${$m(n,e-t.length)}`}return t+=" ]",t}function Pse(o,e){if(typeof o.toString=="function"&&o.toString!==Object.prototype.toString){const s=o.toString();return s.length<=e?s:s.substring(0,e-3)+"..."}const t=G6(o);let i=t?t+"(":"{ ",n=!0;for(const[s,r]of Object.entries(o)){if(n||(i+=", "),i.length-5>e){i+="...";break}n=!1,i+=`${s}: ${$m(r,e-i.length)}`}return i+=t?")":" }",i}class mM{static createClient(e,t){return new mM(e,t)}constructor(e,t){this._channelFactory=e,this._getHandler=t,this._channel=this._channelFactory({handleNotification:s=>{const r=s,a=this._getHandler().notifications[r[0]];if(!a)throw new Error(`Unknown notification "${r[0]}"!`);a(...r[1])},handleRequest:s=>{const r=s;try{return{type:"result",value:this._getHandler().requests[r[0]](...r[1])}}catch(a){return{type:"error",value:a}}}});const i=new Proxy({},{get:(s,r)=>async(...a)=>{const l=await this._channel.sendRequest([r,a]);if(l.type==="error")throw l.value;return l.value}}),n=new Proxy({},{get:(s,r)=>(...a)=>{this._channel.sendNotification([r,a])}});this.api={notifications:n,requests:i}}}function Ose(o,e){const t=globalThis;let i=[],n;const{channel:s,handler:r}=Fse({sendNotification:l=>{n?n.sendNotification(l):i.push(l)}});let a;return(t.$$debugValueEditor_debugChannels??(t.$$debugValueEditor_debugChannels={}))[o]=l=>{a=e(),n=l;for(const c of i)l.sendNotification(c);return i=[],r},mM.createClient(s,()=>{if(!a)throw new Error("Not supported");return a})}function Fse(o){let e;return{channel:i=>(e=i,{sendNotification:n=>{o.sendNotification(n)},sendRequest:n=>{throw new Error("not supported")}}),handler:{handleRequest:i=>i.type==="notification"?e?.handleNotification(i.data):e?.handleRequest(i.data)}}}class Wse{constructor(){this._timeout=void 0}throttle(e,t){this._timeout===void 0&&(this._timeout=setTimeout(()=>{this._timeout=void 0,e()},t))}dispose(){this._timeout!==void 0&&clearTimeout(this._timeout)}}function pH(o,e){for(const t in e)o[t]&&typeof o[t]=="object"&&e[t]&&typeof e[t]=="object"?pH(o[t],e[t]):o[t]=e[t]}function mH(o,e){for(const t in e)e[t]===null?delete o[t]:o[t]&&typeof o[t]=="object"&&e[t]&&typeof e[t]=="object"?mH(o[t],e[t]):o[t]=e[t]}const Sp=class Sp{static getInstance(){return Sp._instance===void 0&&(Sp._instance=new Sp),Sp._instance}getTransactionState(){const e=[],t=[...this._activeTransactions];if(t.length===0)return;const i=t.flatMap(s=>s.debugGetUpdatingObservers()??[]).map(s=>s.observer),n=new Set;for(;i.length>0;){const s=i.shift();if(n.has(s))continue;n.add(s);const r=this._getInfo(s,a=>{n.has(a)||i.push(a)});r&&e.push(r)}return{names:t.map(s=>s.getDebugName()??"tx"),affected:e}}_getObservableInfo(e){const t=this._instanceInfos.get(e);if(!t){De(new Ce("No info found"));return}return t}_getAutorunInfo(e){const t=this._instanceInfos.get(e);if(!t){De(new Ce("No info found"));return}return t}_getInfo(e,t){if(e instanceof _r){const i=[...e.debugGetObservers()];for(const l of i)t(l);const n=this._getObservableInfo(e);if(!n)return;const s=e.debugGetState(),r={name:e.debugName,instanceId:n.instanceId,updateCount:s.updateCount},a=[...n.changedObservables].map(l=>this._instanceInfos.get(l)?.instanceId).filter(rn);if(s.isComputing)return{...r,type:"observable/derived",state:"updating",changedDependencies:a,initialComputation:!1};switch(s.state){case 0:return{...r,type:"observable/derived",state:"noValue"};case 3:return{...r,type:"observable/derived",state:"upToDate"};case 2:return{...r,type:"observable/derived",state:"stale",changedDependencies:a};case 1:return{...r,type:"observable/derived",state:"possiblyStale"}}}else if(e instanceof xv){const i=this._getAutorunInfo(e);if(!i)return;const n={name:e.debugName,instanceId:i.instanceId,updateCount:i.updateCount},s=[...i.changedObservables].map(r=>this._instanceInfos.get(r).instanceId);if(e.debugGetState().isRunning)return{...n,type:"autorun",state:"updating",changedDependencies:s};switch(e.debugGetState().state){case 3:return{...n,type:"autorun",state:"upToDate"};case 2:return{...n,type:"autorun",state:"stale",changedDependencies:s};case 1:return{...n,type:"autorun",state:"possiblyStale"}}}}_formatObservable(e){const t=this._getObservableInfo(e);if(t)return{name:e.debugName,instanceId:t.instanceId}}_formatObserver(e){if(e instanceof _r)return{name:e.toString(),instanceId:this._getObservableInfo(e)?.instanceId};const t=this._getAutorunInfo(e);if(t)return{name:e.toString(),instanceId:t.instanceId}}constructor(){this._declarationId=0,this._instanceId=0,this._declarations=new Map,this._instanceInfos=new WeakMap,this._aliveInstances=new Map,this._activeTransactions=new Set,this._channel=Ose("observableDevTools",()=>({notifications:{setDeclarationIdFilter:e=>{},logObservableValue:e=>{console.log("logObservableValue",e)},flushUpdates:()=>{this._flushUpdates()},resetUpdates:()=>{this._pendingChanges=null,this._channel.api.notifications.handleChange(this._fullState,!0)}},requests:{getDeclarations:()=>{const e={};for(const t of this._declarations.values())e[t.id]=t;return{decls:e}},getSummarizedInstances:()=>null,getObservableValueInfo:e=>({observers:[...this._aliveInstances.get(e).debugGetObservers()].map(i=>this._formatObserver(i)).filter(rn)}),getDerivedInfo:e=>{const t=this._aliveInstances.get(e);return{dependencies:[...t.debugGetState().dependencies].map(i=>this._formatObservable(i)).filter(rn),observers:[...t.debugGetObservers()].map(i=>this._formatObserver(i)).filter(rn)}},getAutorunInfo:e=>({dependencies:[...this._aliveInstances.get(e).debugGetState().dependencies].map(i=>this._formatObservable(i)).filter(rn)}),getTransactionState:()=>this.getTransactionState(),setValue:(e,t)=>{const i=this._aliveInstances.get(e);if(i instanceof _r)i.debugSetValue(t);else if(i instanceof yv)i.debugSetValue(t);else if(i instanceof Mc)i.debugSetValue(t);else throw new Ce("Observable is not supported");const n=[...i.debugGetObservers()];for(const s of n)s.beginUpdate(i);for(const s of n)s.handleChange(i,void 0);for(const s of n)s.endUpdate(i)},getValue:e=>{const t=this._aliveInstances.get(e);if(t instanceof _r)return $m(t.debugGetState().value,200);if(t instanceof yv)return $m(t.debugGetState().value,200)},logValue:e=>{const t=this._aliveInstances.get(e);if(t&&"get"in t)console.log("Logged Value:",t.get());else throw new Ce("Observable is not supported")},rerun:e=>{const t=this._aliveInstances.get(e);if(t instanceof _r)t.debugRecompute();else if(t instanceof xv)t.debugRerun();else throw new Ce("Observable is not supported")}}})),this._pendingChanges=null,this._changeThrottler=new Wse,this._fullState={},this._flushUpdates=()=>{this._pendingChanges!==null&&(this._channel.api.notifications.handleChange(this._pendingChanges,!1),this._pendingChanges=null)},Ui.enable()}_handleChange(e){mH(this._fullState,e),this._pendingChanges===null?this._pendingChanges=e:pH(this._pendingChanges,e),this._changeThrottler.throttle(this._flushUpdates,10)}_getDeclarationId(e,t){if(!t)return-1;let i=this._declarations.get(t.id);return i===void 0&&(i={id:this._declarationId++,type:e,url:t.fileName,line:t.line,column:t.column},this._declarations.set(t.id,i),this._handleChange({decls:{[i.id]:i}})),i.id}handleObservableCreated(e,t){const n={declarationId:this._getDeclarationId("observable/value",t),instanceId:this._instanceId++,listenerCount:0,lastValue:void 0,updateCount:0,changedObservables:new Set};this._instanceInfos.set(e,n)}handleOnListenerCountChanged(e,t){const i=this._getObservableInfo(e);if(i){if(i.listenerCount===0&&t>0){const n=e instanceof _r?"observable/derived":"observable/value";this._aliveInstances.set(i.instanceId,e),this._handleChange({instances:{[i.instanceId]:{instanceId:i.instanceId,declarationId:i.declarationId,formattedValue:i.lastValue,type:n,name:e.debugName}}})}else i.listenerCount>0&&t===0&&(this._handleChange({instances:{[i.instanceId]:null}}),this._aliveInstances.delete(i.instanceId));i.listenerCount=t}}handleObservableUpdated(e,t){if(e instanceof _r){this._handleDerivedRecomputed(e,t);return}const i=this._getObservableInfo(e);i&&t.didChange&&(i.lastValue=$m(t.newValue,30),i.listenerCount>0&&this._handleChange({instances:{[i.instanceId]:{formattedValue:i.lastValue}}}))}handleAutorunCreated(e,t){const n={declarationId:this._getDeclarationId("autorun",t),instanceId:this._instanceId++,updateCount:0,changedObservables:new Set};this._instanceInfos.set(e,n),this._aliveInstances.set(n.instanceId,e),n&&this._handleChange({instances:{[n.instanceId]:{instanceId:n.instanceId,declarationId:n.declarationId,runCount:0,type:"autorun",name:e.debugName}}})}handleAutorunDisposed(e){const t=this._getAutorunInfo(e);t&&(this._handleChange({instances:{[t.instanceId]:null}}),this._instanceInfos.delete(e),this._aliveInstances.delete(t.instanceId))}handleAutorunDependencyChanged(e,t,i){const n=this._getAutorunInfo(e);n&&n.changedObservables.add(t)}handleAutorunStarted(e){}handleAutorunFinished(e){const t=this._getAutorunInfo(e);t&&(t.changedObservables.clear(),t.updateCount++,this._handleChange({instances:{[t.instanceId]:{runCount:t.updateCount}}}))}handleDerivedDependencyChanged(e,t,i){const n=this._getObservableInfo(e);n&&n.changedObservables.add(t)}_handleDerivedRecomputed(e,t){const i=this._getObservableInfo(e);if(!i)return;const n=$m(t.newValue,30);i.updateCount++,i.changedObservables.clear(),i.lastValue=n,i.listenerCount>0&&this._handleChange({instances:{[i.instanceId]:{formattedValue:n,recomputationCount:i.updateCount}}})}handleDerivedCleared(e){const t=this._getObservableInfo(e);t&&(t.lastValue=void 0,t.changedObservables.clear(),t.listenerCount>0&&this._handleChange({instances:{[t.instanceId]:{formattedValue:void 0}}}))}handleBeginTransaction(e){this._activeTransactions.add(e)}handleEndTransaction(e){this._activeTransactions.delete(e)}};Sp._instance=void 0;let _M=Sp;py&&py.VSCODE_DEV_DEBUG_OBSERVABLES&&pse(_M.getInstance());const{getWindow:me,getDocument:Bse,getWindows:_H,getWindowsCount:Hse,getWindowId:kv,getWindowById:bH,onDidRegisterWindow:Iv,onWillUnregisterWindow:Vse,onDidUnregisterWindow:zse}=(function(){const o=new Map;vie(Ct,1);const e={window:Ct,disposables:new V};o.set(Ct.vscodeWindowId,e);const t=new A,i=new A,n=new A;function s(r,a){return(typeof r=="number"?o.get(r):void 0)??(a?e:void 0)}return{onDidRegisterWindow:t.event,onWillUnregisterWindow:n.event,onDidUnregisterWindow:i.event,registerWindow(r){if(o.has(r.vscodeWindowId))return P.None;const a=new V,l={window:r,disposables:a.add(new V)};return o.set(r.vscodeWindowId,l),a.add(fe(()=>{o.delete(r.vscodeWindowId),i.fire(r)})),a.add(W(r,te.BEFORE_UNLOAD,()=>{n.fire(r)})),t.fire(l),a},getWindows(){return o.values()},getWindowsCount(){return o.size},getWindowId(r){return r.vscodeWindowId},hasWindow(r){return o.has(r)},getWindowById:s,getWindow(r){const a=r;if(a?.ownerDocument?.defaultView)return a.ownerDocument.defaultView.window;const l=r;return l?.view?l.view.window:Ct},getDocument(r){return me(r).document}}})();function pn(o){for(;o.firstChild;)o.firstChild.remove()}class Use{constructor(e,t,i,n){this._node=e,this._type=t,this._handler=i,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function W(o,e,t,i){return new Use(o,e,t,i)}function CH(o,e){return function(t){return e(new yn(o,t))}}function $se(o){return function(e){return o(new yt(e))}}const Si=function(e,t,i,n){let s=i;return t==="click"||t==="mousedown"||t==="contextmenu"?s=CH(me(e),i):(t==="keydown"||t==="keypress"||t==="keyup")&&(s=$se(i)),W(e,t,s,n)},jse=function(e,t,i){const n=CH(me(e),t);return vH(e,n,i)};function vH(o,e,t){return W(o,gr&&dv.pointerEvents?te.POINTER_DOWN:te.MOUSE_DOWN,e,t)}function qse(o,e,t){return W(o,gr&&dv.pointerEvents?te.POINTER_MOVE:te.MOUSE_MOVE,e,t)}function wH(o,e,t){return W(o,gr&&dv.pointerEvents?te.POINTER_UP:te.MOUSE_UP,e,t)}function Dv(o,e,t){return fv(o,e,t)}class bM extends C6{constructor(e,t){super(e,t)}}let Ny,Vs;class CM extends MR{constructor(e){super(),this.defaultTarget=e&&me(e)}cancelAndSet(e,t,i){return super.cancelAndSet(e,t,i??this.defaultTarget)}}class vM{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){De(e)}}static sort(e,t){return t.priority-e.priority}}(function(){const o=new Map,e=new Map,t=new Map,i=new Map,n=s=>{t.set(s,!1);const r=o.get(s)??[];for(e.set(s,r),o.set(s,[]),i.set(s,!0);r.length>0;)r.sort(vM.sort),r.shift().execute();i.set(s,!1)};Vs=(s,r,a=0)=>{const l=kv(s),c=new vM(r,a);let d=o.get(l);return d||(d=[],o.set(l,d)),d.push(c),t.get(l)||(t.set(l,!0),s.requestAnimationFrame(()=>n(l))),c},Ny=(s,r,a)=>{const l=kv(s);if(i.get(l)){const c=new vM(r,a);let d=e.get(l);return d||(d=[],e.set(l,d)),d.push(c),c}else return Vs(s,r,a)}})();function Ty(o){return me(o).getComputedStyle(o,null)}function hh(o,e,t){const i=me(o),n=i.document;if(o!==n.body)return new ut(o.clientWidth,o.clientHeight);if(gr&&i?.visualViewport)return new ut(i.visualViewport.width,i.visualViewport.height);if(i?.innerWidth&&i.innerHeight)return new ut(i.innerWidth,i.innerHeight);if(n.body&&n.body.clientWidth&&n.body.clientHeight)return new ut(n.body.clientWidth,n.body.clientHeight);if(n.documentElement&&n.documentElement.clientWidth&&n.documentElement.clientHeight)return new ut(n.documentElement.clientWidth,n.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}class yi{static convertToPixels(e,t){return parseFloat(t)||0}static getDimension(e,t){const i=Ty(e),n=i?i.getPropertyValue(t):"0";return yi.convertToPixels(e,n)}static getBorderLeftWidth(e){return yi.getDimension(e,"border-left-width")}static getBorderRightWidth(e){return yi.getDimension(e,"border-right-width")}static getBorderTopWidth(e){return yi.getDimension(e,"border-top-width")}static getBorderBottomWidth(e){return yi.getDimension(e,"border-bottom-width")}static getPaddingLeft(e){return yi.getDimension(e,"padding-left")}static getPaddingRight(e){return yi.getDimension(e,"padding-right")}static getPaddingTop(e){return yi.getDimension(e,"padding-top")}static getPaddingBottom(e){return yi.getDimension(e,"padding-bottom")}static getMarginLeft(e){return yi.getDimension(e,"margin-left")}static getMarginTop(e){return yi.getDimension(e,"margin-top")}static getMarginRight(e){return yi.getDimension(e,"margin-right")}static getMarginBottom(e){return yi.getDimension(e,"margin-bottom")}}const yp=class yp{constructor(e,t){this.width=e,this.height=t}with(e=this.width,t=this.height){return e!==this.width||t!==this.height?new yp(e,t):this}static is(e){return typeof e=="object"&&typeof e.height=="number"&&typeof e.width=="number"}static lift(e){return e instanceof yp?e:new yp(e.width,e.height)}static equals(e,t){return e===t?!0:!e||!t?!1:e.width===t.width&&e.height===t.height}};yp.None=new yp(0,0);let ut=yp;function SH(o){let e=o.offsetParent,t=o.offsetTop,i=o.offsetLeft;for(;(o=o.parentNode)!==null&&o!==o.ownerDocument.body&&o!==o.ownerDocument.documentElement;){t-=o.scrollTop;const n=LH(o)?null:Ty(o);n&&(i-=n.direction!=="rtl"?o.scrollLeft:-o.scrollLeft),o===e&&(i+=yi.getBorderLeftWidth(o),t+=yi.getBorderTopWidth(o),t+=o.offsetTop,i+=o.offsetLeft,e=o.offsetParent)}return{left:i,top:t}}function Kse(o,e,t){typeof e=="number"&&(o.style.width=`${e}px`),typeof t=="number"&&(o.style.height=`${t}px`)}function ai(o){const e=o.getBoundingClientRect(),t=me(o);return{left:e.left+t.scrollX,top:e.top+t.scrollY,width:e.width,height:e.height}}function yH(o){let e=o,t=1;do{const i=Ty(e).zoom;i!=null&&i!=="1"&&(t*=i),e=e.parentElement}while(e!==null&&e!==e.ownerDocument.documentElement);return t}function fo(o){const e=yi.getMarginLeft(o)+yi.getMarginRight(o);return o.offsetWidth+e}function wM(o){const e=yi.getBorderLeftWidth(o)+yi.getBorderRightWidth(o),t=yi.getPaddingLeft(o)+yi.getPaddingRight(o);return o.offsetWidth-e-t}function Gse(o){const e=yi.getBorderTopWidth(o)+yi.getBorderBottomWidth(o),t=yi.getPaddingTop(o)+yi.getPaddingBottom(o);return o.offsetHeight-e-t}function Pc(o){const e=yi.getMarginTop(o)+yi.getMarginBottom(o);return o.offsetHeight+e}function Qi(o,e){return!!e?.contains(o)}function Zse(o,e,t){for(;o&&o.nodeType===o.ELEMENT_NODE;){if(o.classList.contains(e))return o;if(t){if(typeof t=="string"){if(o.classList.contains(t))return null}else if(o===t)return null}o=o.parentNode}return null}function SM(o,e,t){return!!Zse(o,e,t)}function LH(o){return o&&!!o.host&&!!o.mode}function Ry(o){return!!uh(o)}function uh(o){for(;o.parentNode;){if(o===o.ownerDocument?.body)return null;o=o.parentNode}return LH(o)?o:null}function $i(){let o=Ev().activeElement;for(;o?.shadowRoot;)o=o.shadowRoot.activeElement;return o}function My(o){return $i()===o}function xH(o){return Qi($i(),o)}function Ev(){return Hse()<=1?Ct.document:Array.from(_H()).map(({window:e})=>e.document).find(e=>e.hasFocus())??Ct.document}function pt(){return Ev().defaultView?.window??Ct}const Yse=new class{constructor(){this.mutationObservers=new Map}observe(o,e,t){let i=this.mutationObservers.get(o);i||(i=new Map,this.mutationObservers.set(o,i));const n=Cv(t);let s=i.get(n);if(s)s.users+=1;else{const r=new A,a=new MutationObserver(c=>r.fire(c));a.observe(o,t);const l=s={users:1,observer:a,onDidMutate:r.event};e.add(fe(()=>{l.users-=1,l.users===0&&(r.dispose(),a.disconnect(),i?.delete(n),i?.size===0&&this.mutationObservers.delete(o))})),i.set(n,s)}return s.onDidMutate}};function li(o){return o instanceof HTMLElement||o instanceof me(o).HTMLElement}function kH(o){return o instanceof HTMLAnchorElement||o instanceof me(o).HTMLAnchorElement}function IH(o){return o instanceof SVGElement||o instanceof me(o).SVGElement}function yM(o){return o instanceof MouseEvent||o instanceof me(o).MouseEvent}function Oc(o){return o instanceof KeyboardEvent||o instanceof me(o).KeyboardEvent}const te={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function Xse(o){const e=o;return!!(e&&typeof e.preventDefault=="function"&&typeof e.stopPropagation=="function")}const st={stop:(o,e)=>(o.preventDefault(),e&&o.stopPropagation(),o)};function Qse(o){const e=[];for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)e[t]=o.scrollTop,o=o.parentNode;return e}function Jse(o,e){for(let t=0;o&&o.nodeType===o.ELEMENT_NODE;t++)o.scrollTop!==e[t]&&(o.scrollTop=e[t]),o=o.parentNode}let eoe=class YB extends P{get onDidFocus(){return this._onDidFocus.event}get onDidBlur(){return this._onDidBlur.event}static hasFocusWithin(e){if(li(e)){const t=uh(e),i=t?t.activeElement:e.ownerDocument.activeElement;return Qi(i,e)}else{const t=e;return Qi(t.document.activeElement,t.document)}}constructor(e){super(),this._onDidFocus=this._register(new A),this._onDidBlur=this._register(new A);let t=YB.hasFocusWithin(e),i=!1;const n=()=>{i=!1,t||(t=!0,this._onDidFocus.fire())},s=()=>{t&&(i=!0,(li(e)?me(e):e).setTimeout(()=>{i&&(i=!1,t=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{YB.hasFocusWithin(e)!==t&&(t?s():n())},this._register(W(e,te.FOCUS,n,!0)),this._register(W(e,te.BLUR,s,!0)),li(e)&&(this._register(W(e,te.FOCUS_IN,()=>this._refreshStateHandler())),this._register(W(e,te.FOCUS_OUT,()=>this._refreshStateHandler())))}};function vr(o){return new eoe(o)}function toe(o,e){return o.after(e),e}function Y(o,...e){if(o.append(...e),e.length===1&&typeof e[0]!="string")return e[0]}function Ay(o,e){return o.insertBefore(e,o.firstChild),e}function Ji(o,...e){o.textContent="",Y(o,...e)}const ioe=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var Nv;(function(o){o.HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg"})(Nv||(Nv={}));function DH(o,e,t,...i){const n=ioe.exec(e);if(!n)throw new Error("Bad use of emmet");const s=n[1]||"div";let r;return o!==Nv.HTML?r=document.createElementNS(o,s):r=document.createElement(s),n[3]&&(r.id=n[3]),n[4]&&(r.className=n[4].replace(/\./g," ").trim()),t&&Object.entries(t).forEach(([a,l])=>{typeof l>"u"||(/^on\w+$/.test(a)?r[a]=l:a==="selected"?l&&r.setAttribute(a,"true"):r.setAttribute(a,l))}),r.append(...i),r}function ee(o,e,...t){return DH(Nv.HTML,o,e,...t)}ee.SVG=function(o,e,...t){return DH(Nv.SVG,o,e,...t)};function noe(o,...e){o?go(...e):bs(...e)}function go(...o){for(const e of o)e.style.display="",e.removeAttribute("aria-hidden")}function bs(...o){for(const e of o)e.style.display="none",e.setAttribute("aria-hidden","true")}function EH(o,e){const t=o.devicePixelRatio*e;return Math.max(1,Math.floor(t))/o.devicePixelRatio}function NH(o){Ct.open(o,"_blank","noopener")}function soe(o,e){const t=()=>{e(),i=Vs(o,t)};let i=Vs(o,t);return fe(()=>i.dispose())}B6.setPreferredWebSchema(/^https:/.test(Ct.location.href)?"https":"http");class Fc extends A{constructor(){super(),this._subscriptions=new V,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(ie.runAndSubscribe(Iv,({window:e,disposables:t})=>this.registerListeners(e,t),{window:Ct,disposables:this._subscriptions}))}registerListeners(e,t){t.add(W(e,"keydown",i=>{if(i.defaultPrevented)return;const n=new yt(i);if(!(n.keyCode===6&&i.repeat)){if(i.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(i.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(i.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(i.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else if(n.keyCode!==6)this._keyStatus.lastKeyPressed=void 0;else return;this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=i,this.fire(this._keyStatus))}},!0)),t.add(W(e,"keyup",i=>{i.defaultPrevented||(!i.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!i.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!i.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!i.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=i.altKey,this._keyStatus.ctrlKey=i.ctrlKey,this._keyStatus.metaKey=i.metaKey,this._keyStatus.shiftKey=i.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=i,this.fire(this._keyStatus)))},!0)),t.add(W(e.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(W(e.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),t.add(W(e.document.body,"mousemove",i=>{i.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),t.add(W(e,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return Fc.instance||(Fc.instance=new Fc),Fc.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class ooe extends P{constructor(e,t){super(),this.element=e,this.callbacks=t,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(W(this.element,te.DRAG_START,e=>{this.callbacks.onDragStart?.(e)})),this.callbacks.onDrag&&this._register(W(this.element,te.DRAG,e=>{this.callbacks.onDrag?.(e)})),this._register(W(this.element,te.DRAG_ENTER,e=>{this.counter++,this.dragStartTime=e.timeStamp,this.callbacks.onDragEnter?.(e)})),this._register(W(this.element,te.DRAG_OVER,e=>{e.preventDefault(),this.callbacks.onDragOver?.(e,e.timeStamp-this.dragStartTime)})),this._register(W(this.element,te.DRAG_LEAVE,e=>{this.counter--,this.counter===0&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(e))})),this._register(W(this.element,te.DRAG_END,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(e)})),this._register(W(this.element,te.DROP,e=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(e)}))}}const roe=/(?[\w\-]+)?(?:#(?[\w\-]+))?(?(?:\.(?:[\w\-]+))*)(?:@(?(?:[\w\_])+))?/;function et(o,...e){let t,i;Array.isArray(e[0])?(t={},i=e[0]):(t=e[0]||{},i=e[1]);const n=roe.exec(o);if(!n||!n.groups)throw new Error("Bad use of h");const s=n.groups.tag||"div",r=document.createElement(s);n.groups.id&&(r.id=n.groups.id);const a=[];if(n.groups.class)for(const c of n.groups.class.split("."))c!==""&&a.push(c);if(t.className!==void 0)for(const c of t.className.split("."))c!==""&&a.push(c);a.length>0&&(r.className=a.join(" "));const l={};if(n.groups.name&&(l[n.groups.name]=r),i)for(const c of i)li(c)?r.appendChild(c):typeof c=="string"?r.append(c):"root"in c&&(Object.assign(l,c),r.appendChild(c.root));for(const[c,d]of Object.entries(t))if(c!=="className")if(c==="style")for(const[h,u]of Object.entries(d))r.style.setProperty(Tv(h),typeof u=="number"?u+"px":""+u);else c==="tabIndex"?r.tabIndex=d:r.setAttribute(Tv(c),d.toString());return l.root=r,l}function Tv(o){return o.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function Ia(o){return o.tagName.toLowerCase()==="input"||o.tagName.toLowerCase()==="textarea"||li(o)&&!!o.editContext}var Ae;(function(o){function e(n=void 0){return(s,r,a)=>{const l=r.class;delete r.class;const c=r.ref;delete r.ref;const d=r.obsRef;return delete r.obsRef,new loe(s,c,d,n,l,r,a)}}function t(n,s=void 0){const r=e(s);return(a,l)=>r(n,a,l)}o.div=t("div"),o.elem=e(void 0),o.svg=t("svg","http://www.w3.org/2000/svg"),o.svgElem=e("http://www.w3.org/2000/svg");function i(){let n;const s=function(r){n=r};return Object.defineProperty(s,"element",{get(){if(!n)throw new Ce("Make sure the ref is set before accessing the element. Maybe wrong initialization order?");return n}}),s}o.ref=i})(Ae||(Ae={}));class LM{constructor(e,t,i,n,s,r,a){this._deriveds=[],this._element=n?document.createElementNS(n,e):document.createElement(e),t&&t(this._element),i&&this._deriveds.push($(l=>{i(this),l.store.add({dispose:()=>{i(null)}})})),s&&(AH(s)?this._deriveds.push($(this,l=>{TH(this._element,MH(s,l))})):TH(this._element,MH(s,void 0)));for(const[l,c]of Object.entries(r))if(l==="style")for(const[d,h]of Object.entries(c)){const u=Tv(d);gf(h)?this._deriveds.push(In({owner:this,debugName:()=>`set.style.${u}`},f=>{this._element.style.setProperty(u,PH(h.read(f)))})):this._element.style.setProperty(u,PH(h))}else l==="tabIndex"?gf(c)?this._deriveds.push($(this,d=>{this._element.tabIndex=c.read(d)})):this._element.tabIndex=c:l.startsWith("on")?this._element[l]=c:gf(c)?this._deriveds.push(In({owner:this,debugName:()=>`set.${l}`},d=>{FH(this._element,l,c.read(d))})):FH(this._element,l,c);if(a){let l=function(d,h){return gf(h)?l(d,h.read(d)):Array.isArray(h)?h.flatMap(u=>l(d,u)):h instanceof LM?(d&&h.readEffect(d),[h._element]):h?[h]:[]};const c=$(this,d=>{this._element.replaceChildren(...l(d,a))});this._deriveds.push(c),OH(a)||c.get()}}readEffect(e){for(const t of this._deriveds)t.read(e)}keepUpdated(e){return $(t=>{this.readEffect(t)}).recomputeInitiallyAndOnChange(e),this}toDisposableLiveElement(){const e=new V;return this.keepUpdated(e),new aoe(this._element,e)}}function TH(o,e){IH(o)?o.setAttribute("class",e):o.className=e}function RH(o,e,t){if(gf(o)){t(o.read(e));return}if(Array.isArray(o)){for(const i of o)RH(i,e,t);return}t(o)}function MH(o,e){let t="";return RH(o,e,i=>{i&&(t.length===0?t=i:t+=" "+i)}),t}function AH(o){return gf(o)?!0:Array.isArray(o)?o.some(e=>AH(e)):!1}function PH(o){return typeof o=="number"?o+"px":o}function OH(o){return gf(o)?!0:Array.isArray(o)?o.some(e=>OH(e)):!1}class aoe{constructor(e,t){this.element=e,this._disposable=t}dispose(){this._disposable.dispose()}}class loe extends LM{constructor(){super(...arguments),this._isHovered=void 0,this._didMouseMoveDuringHover=void 0}get element(){return this._element}get isHovered(){if(!this._isHovered){const e=xe("hovered",!1);this._element.addEventListener("mouseenter",t=>e.set(!0,void 0)),this._element.addEventListener("mouseleave",t=>e.set(!1,void 0)),this._isHovered=e}return this._isHovered}get didMouseMoveDuringHover(){if(!this._didMouseMoveDuringHover){let e=!1;const t=xe("didMouseMoveDuringHover",!1);this._element.addEventListener("mouseenter",i=>{e=!0}),this._element.addEventListener("mousemove",i=>{e&&t.set(!0,void 0)}),this._element.addEventListener("mouseleave",i=>{e=!1,t.set(!1,void 0)}),this._didMouseMoveDuringHover=t}return this._didMouseMoveDuringHover}}function FH(o,e,t){t==null?o.removeAttribute(Tv(e)):o.setAttribute(Tv(e),String(t))}function gf(o){return!!o&&o.read!==void 0&&o.reportChanges!==void 0}const WH=2e4;let pf,Py,xM,Oy,kM;function coe(o){pf=document.createElement("div"),pf.className="monaco-aria-container";const e=()=>{const i=document.createElement("div");return i.className="monaco-alert",i.setAttribute("role","alert"),i.setAttribute("aria-atomic","true"),pf.appendChild(i),i};Py=e(),xM=e();const t=()=>{const i=document.createElement("div");return i.className="monaco-status",i.setAttribute("aria-live","polite"),i.setAttribute("aria-atomic","true"),pf.appendChild(i),i};Oy=t(),kM=t(),o.appendChild(pf)}function Cs(o){pf&&(Py.textContent!==o?(pn(xM),Fy(Py,o)):(pn(Py),Fy(xM,o)))}function Da(o){pf&&(Oy.textContent!==o?(pn(kM),Fy(Oy,o)):(pn(Oy),Fy(kM,o)))}function Fy(o,e){pn(o),e.length>WH&&(e=e.substr(0,WH)),o.textContent=e,o.style.visibility="hidden",o.style.visibility="visible"}var Ea;(function(o){o.serviceIds=new Map,o.DI_TARGET="$di$target",o.DI_DEPENDENCIES="$di$dependencies";function e(t){return t[o.DI_DEPENDENCIES]||[]}o.getServiceDependencies=e})(Ea||(Ea={}));const pe=Fe("instantiationService");function doe(o,e,t){e[Ea.DI_TARGET]===e?e[Ea.DI_DEPENDENCIES].push({id:o,index:t}):(e[Ea.DI_DEPENDENCIES]=[{id:o,index:t}],e[Ea.DI_TARGET]=e)}function Fe(o){if(Ea.serviceIds.has(o))return Ea.serviceIds.get(o);const e=function(t,i,n){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");doe(e,t,n)};return e.toString=()=>o,Ea.serviceIds.set(o,e),e}const tt=Fe("codeEditorService");let M=class Tm{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 Tm(e,t)}delta(e=0,t=0){return this.with(Math.max(1,this.lineNumber+e),Math.max(1,this.column+t))}equals(e){return Tm.equals(this,e)}static equals(e,t){return!e&&!t?!0:!!e&&!!t&&e.lineNumber===t.lineNumber&&e.column===t.column}isBefore(e){return Tm.isBefore(this,e)}static isBefore(e,t){return e.lineNumbero.run(...e)}}const DM=Object.create(null);function y(o,e){if(Zi(e)){const t=DM[e];if(t===void 0)throw new Error(`${o} references an unknown codicon: ${e}`);e=t}return DM[o]=e,{id:o}}function BH(){return DM}const hoe={add:y("add",6e4),plus:y("plus",6e4),gistNew:y("gist-new",6e4),repoCreate:y("repo-create",6e4),lightbulb:y("lightbulb",60001),lightBulb:y("light-bulb",60001),repo:y("repo",60002),repoDelete:y("repo-delete",60002),gistFork:y("gist-fork",60003),repoForked:y("repo-forked",60003),gitPullRequest:y("git-pull-request",60004),gitPullRequestAbandoned:y("git-pull-request-abandoned",60004),recordKeys:y("record-keys",60005),keyboard:y("keyboard",60005),tag:y("tag",60006),gitPullRequestLabel:y("git-pull-request-label",60006),tagAdd:y("tag-add",60006),tagRemove:y("tag-remove",60006),person:y("person",60007),personFollow:y("person-follow",60007),personOutline:y("person-outline",60007),personFilled:y("person-filled",60007),sourceControl:y("source-control",60008),mirror:y("mirror",60009),mirrorPublic:y("mirror-public",60009),star:y("star",60010),starAdd:y("star-add",60010),starDelete:y("star-delete",60010),starEmpty:y("star-empty",60010),comment:y("comment",60011),commentAdd:y("comment-add",60011),alert:y("alert",60012),warning:y("warning",60012),search:y("search",60013),searchSave:y("search-save",60013),logOut:y("log-out",60014),signOut:y("sign-out",60014),logIn:y("log-in",60015),signIn:y("sign-in",60015),eye:y("eye",60016),eyeUnwatch:y("eye-unwatch",60016),eyeWatch:y("eye-watch",60016),circleFilled:y("circle-filled",60017),primitiveDot:y("primitive-dot",60017),closeDirty:y("close-dirty",60017),debugBreakpoint:y("debug-breakpoint",60017),debugBreakpointDisabled:y("debug-breakpoint-disabled",60017),debugHint:y("debug-hint",60017),terminalDecorationSuccess:y("terminal-decoration-success",60017),primitiveSquare:y("primitive-square",60018),edit:y("edit",60019),pencil:y("pencil",60019),info:y("info",60020),issueOpened:y("issue-opened",60020),gistPrivate:y("gist-private",60021),gitForkPrivate:y("git-fork-private",60021),lock:y("lock",60021),mirrorPrivate:y("mirror-private",60021),close:y("close",60022),removeClose:y("remove-close",60022),x:y("x",60022),repoSync:y("repo-sync",60023),sync:y("sync",60023),clone:y("clone",60024),desktopDownload:y("desktop-download",60024),beaker:y("beaker",60025),microscope:y("microscope",60025),vm:y("vm",60026),deviceDesktop:y("device-desktop",60026),file:y("file",60027),more:y("more",60028),ellipsis:y("ellipsis",60028),kebabHorizontal:y("kebab-horizontal",60028),mailReply:y("mail-reply",60029),reply:y("reply",60029),organization:y("organization",60030),organizationFilled:y("organization-filled",60030),organizationOutline:y("organization-outline",60030),newFile:y("new-file",60031),fileAdd:y("file-add",60031),newFolder:y("new-folder",60032),fileDirectoryCreate:y("file-directory-create",60032),trash:y("trash",60033),trashcan:y("trashcan",60033),history:y("history",60034),clock:y("clock",60034),folder:y("folder",60035),fileDirectory:y("file-directory",60035),symbolFolder:y("symbol-folder",60035),logoGithub:y("logo-github",60036),markGithub:y("mark-github",60036),github:y("github",60036),terminal:y("terminal",60037),console:y("console",60037),repl:y("repl",60037),zap:y("zap",60038),symbolEvent:y("symbol-event",60038),error:y("error",60039),stop:y("stop",60039),variable:y("variable",60040),symbolVariable:y("symbol-variable",60040),array:y("array",60042),symbolArray:y("symbol-array",60042),symbolModule:y("symbol-module",60043),symbolPackage:y("symbol-package",60043),symbolNamespace:y("symbol-namespace",60043),symbolObject:y("symbol-object",60043),symbolMethod:y("symbol-method",60044),symbolFunction:y("symbol-function",60044),symbolConstructor:y("symbol-constructor",60044),symbolBoolean:y("symbol-boolean",60047),symbolNull:y("symbol-null",60047),symbolNumeric:y("symbol-numeric",60048),symbolNumber:y("symbol-number",60048),symbolStructure:y("symbol-structure",60049),symbolStruct:y("symbol-struct",60049),symbolParameter:y("symbol-parameter",60050),symbolTypeParameter:y("symbol-type-parameter",60050),symbolKey:y("symbol-key",60051),symbolText:y("symbol-text",60051),symbolReference:y("symbol-reference",60052),goToFile:y("go-to-file",60052),symbolEnum:y("symbol-enum",60053),symbolValue:y("symbol-value",60053),symbolRuler:y("symbol-ruler",60054),symbolUnit:y("symbol-unit",60054),activateBreakpoints:y("activate-breakpoints",60055),archive:y("archive",60056),arrowBoth:y("arrow-both",60057),arrowDown:y("arrow-down",60058),arrowLeft:y("arrow-left",60059),arrowRight:y("arrow-right",60060),arrowSmallDown:y("arrow-small-down",60061),arrowSmallLeft:y("arrow-small-left",60062),arrowSmallRight:y("arrow-small-right",60063),arrowSmallUp:y("arrow-small-up",60064),arrowUp:y("arrow-up",60065),bell:y("bell",60066),bold:y("bold",60067),book:y("book",60068),bookmark:y("bookmark",60069),debugBreakpointConditionalUnverified:y("debug-breakpoint-conditional-unverified",60070),debugBreakpointConditional:y("debug-breakpoint-conditional",60071),debugBreakpointConditionalDisabled:y("debug-breakpoint-conditional-disabled",60071),debugBreakpointDataUnverified:y("debug-breakpoint-data-unverified",60072),debugBreakpointData:y("debug-breakpoint-data",60073),debugBreakpointDataDisabled:y("debug-breakpoint-data-disabled",60073),debugBreakpointLogUnverified:y("debug-breakpoint-log-unverified",60074),debugBreakpointLog:y("debug-breakpoint-log",60075),debugBreakpointLogDisabled:y("debug-breakpoint-log-disabled",60075),briefcase:y("briefcase",60076),broadcast:y("broadcast",60077),browser:y("browser",60078),bug:y("bug",60079),calendar:y("calendar",60080),caseSensitive:y("case-sensitive",60081),check:y("check",60082),checklist:y("checklist",60083),chevronDown:y("chevron-down",60084),chevronLeft:y("chevron-left",60085),chevronRight:y("chevron-right",60086),chevronUp:y("chevron-up",60087),chromeClose:y("chrome-close",60088),chromeMaximize:y("chrome-maximize",60089),chromeMinimize:y("chrome-minimize",60090),chromeRestore:y("chrome-restore",60091),circleOutline:y("circle-outline",60092),circle:y("circle",60092),debugBreakpointUnverified:y("debug-breakpoint-unverified",60092),terminalDecorationIncomplete:y("terminal-decoration-incomplete",60092),circleSlash:y("circle-slash",60093),circuitBoard:y("circuit-board",60094),clearAll:y("clear-all",60095),clippy:y("clippy",60096),closeAll:y("close-all",60097),cloudDownload:y("cloud-download",60098),cloudUpload:y("cloud-upload",60099),code:y("code",60100),collapseAll:y("collapse-all",60101),colorMode:y("color-mode",60102),commentDiscussion:y("comment-discussion",60103),creditCard:y("credit-card",60105),dash:y("dash",60108),dashboard:y("dashboard",60109),database:y("database",60110),debugContinue:y("debug-continue",60111),debugDisconnect:y("debug-disconnect",60112),debugPause:y("debug-pause",60113),debugRestart:y("debug-restart",60114),debugStart:y("debug-start",60115),debugStepInto:y("debug-step-into",60116),debugStepOut:y("debug-step-out",60117),debugStepOver:y("debug-step-over",60118),debugStop:y("debug-stop",60119),debug:y("debug",60120),deviceCameraVideo:y("device-camera-video",60121),deviceCamera:y("device-camera",60122),deviceMobile:y("device-mobile",60123),diffAdded:y("diff-added",60124),diffIgnored:y("diff-ignored",60125),diffModified:y("diff-modified",60126),diffRemoved:y("diff-removed",60127),diffRenamed:y("diff-renamed",60128),diff:y("diff",60129),diffSidebyside:y("diff-sidebyside",60129),discard:y("discard",60130),editorLayout:y("editor-layout",60131),emptyWindow:y("empty-window",60132),exclude:y("exclude",60133),extensions:y("extensions",60134),eyeClosed:y("eye-closed",60135),fileBinary:y("file-binary",60136),fileCode:y("file-code",60137),fileMedia:y("file-media",60138),filePdf:y("file-pdf",60139),fileSubmodule:y("file-submodule",60140),fileSymlinkDirectory:y("file-symlink-directory",60141),fileSymlinkFile:y("file-symlink-file",60142),fileZip:y("file-zip",60143),files:y("files",60144),filter:y("filter",60145),flame:y("flame",60146),foldDown:y("fold-down",60147),foldUp:y("fold-up",60148),fold:y("fold",60149),folderActive:y("folder-active",60150),folderOpened:y("folder-opened",60151),gear:y("gear",60152),gift:y("gift",60153),gistSecret:y("gist-secret",60154),gist:y("gist",60155),gitCommit:y("git-commit",60156),gitCompare:y("git-compare",60157),compareChanges:y("compare-changes",60157),gitMerge:y("git-merge",60158),githubAction:y("github-action",60159),githubAlt:y("github-alt",60160),globe:y("globe",60161),grabber:y("grabber",60162),graph:y("graph",60163),gripper:y("gripper",60164),heart:y("heart",60165),home:y("home",60166),horizontalRule:y("horizontal-rule",60167),hubot:y("hubot",60168),inbox:y("inbox",60169),issueReopened:y("issue-reopened",60171),issues:y("issues",60172),italic:y("italic",60173),jersey:y("jersey",60174),json:y("json",60175),kebabVertical:y("kebab-vertical",60176),key:y("key",60177),law:y("law",60178),lightbulbAutofix:y("lightbulb-autofix",60179),linkExternal:y("link-external",60180),link:y("link",60181),listOrdered:y("list-ordered",60182),listUnordered:y("list-unordered",60183),liveShare:y("live-share",60184),loading:y("loading",60185),location:y("location",60186),mailRead:y("mail-read",60187),mail:y("mail",60188),markdown:y("markdown",60189),megaphone:y("megaphone",60190),mention:y("mention",60191),milestone:y("milestone",60192),gitPullRequestMilestone:y("git-pull-request-milestone",60192),mortarBoard:y("mortar-board",60193),move:y("move",60194),multipleWindows:y("multiple-windows",60195),mute:y("mute",60196),noNewline:y("no-newline",60197),note:y("note",60198),octoface:y("octoface",60199),openPreview:y("open-preview",60200),package:y("package",60201),paintcan:y("paintcan",60202),pin:y("pin",60203),play:y("play",60204),run:y("run",60204),plug:y("plug",60205),preserveCase:y("preserve-case",60206),preview:y("preview",60207),project:y("project",60208),pulse:y("pulse",60209),question:y("question",60210),quote:y("quote",60211),radioTower:y("radio-tower",60212),reactions:y("reactions",60213),references:y("references",60214),refresh:y("refresh",60215),regex:y("regex",60216),remoteExplorer:y("remote-explorer",60217),remote:y("remote",60218),remove:y("remove",60219),replaceAll:y("replace-all",60220),replace:y("replace",60221),repoClone:y("repo-clone",60222),repoForcePush:y("repo-force-push",60223),repoPull:y("repo-pull",60224),repoPush:y("repo-push",60225),report:y("report",60226),requestChanges:y("request-changes",60227),rocket:y("rocket",60228),rootFolderOpened:y("root-folder-opened",60229),rootFolder:y("root-folder",60230),rss:y("rss",60231),ruby:y("ruby",60232),saveAll:y("save-all",60233),saveAs:y("save-as",60234),save:y("save",60235),screenFull:y("screen-full",60236),screenNormal:y("screen-normal",60237),searchStop:y("search-stop",60238),server:y("server",60240),settingsGear:y("settings-gear",60241),settings:y("settings",60242),shield:y("shield",60243),smiley:y("smiley",60244),sortPrecedence:y("sort-precedence",60245),splitHorizontal:y("split-horizontal",60246),splitVertical:y("split-vertical",60247),squirrel:y("squirrel",60248),starFull:y("star-full",60249),starHalf:y("star-half",60250),symbolClass:y("symbol-class",60251),symbolColor:y("symbol-color",60252),symbolConstant:y("symbol-constant",60253),symbolEnumMember:y("symbol-enum-member",60254),symbolField:y("symbol-field",60255),symbolFile:y("symbol-file",60256),symbolInterface:y("symbol-interface",60257),symbolKeyword:y("symbol-keyword",60258),symbolMisc:y("symbol-misc",60259),symbolOperator:y("symbol-operator",60260),symbolProperty:y("symbol-property",60261),wrench:y("wrench",60261),wrenchSubaction:y("wrench-subaction",60261),symbolSnippet:y("symbol-snippet",60262),tasklist:y("tasklist",60263),telescope:y("telescope",60264),textSize:y("text-size",60265),threeBars:y("three-bars",60266),thumbsdown:y("thumbsdown",60267),thumbsup:y("thumbsup",60268),tools:y("tools",60269),triangleDown:y("triangle-down",60270),triangleLeft:y("triangle-left",60271),triangleRight:y("triangle-right",60272),triangleUp:y("triangle-up",60273),twitter:y("twitter",60274),unfold:y("unfold",60275),unlock:y("unlock",60276),unmute:y("unmute",60277),unverified:y("unverified",60278),verified:y("verified",60279),versions:y("versions",60280),vmActive:y("vm-active",60281),vmOutline:y("vm-outline",60282),vmRunning:y("vm-running",60283),watch:y("watch",60284),whitespace:y("whitespace",60285),wholeWord:y("whole-word",60286),window:y("window",60287),wordWrap:y("word-wrap",60288),zoomIn:y("zoom-in",60289),zoomOut:y("zoom-out",60290),listFilter:y("list-filter",60291),listFlat:y("list-flat",60292),listSelection:y("list-selection",60293),selection:y("selection",60293),listTree:y("list-tree",60294),debugBreakpointFunctionUnverified:y("debug-breakpoint-function-unverified",60295),debugBreakpointFunction:y("debug-breakpoint-function",60296),debugBreakpointFunctionDisabled:y("debug-breakpoint-function-disabled",60296),debugStackframeActive:y("debug-stackframe-active",60297),circleSmallFilled:y("circle-small-filled",60298),debugStackframeDot:y("debug-stackframe-dot",60298),terminalDecorationMark:y("terminal-decoration-mark",60298),debugStackframe:y("debug-stackframe",60299),debugStackframeFocused:y("debug-stackframe-focused",60299),debugBreakpointUnsupported:y("debug-breakpoint-unsupported",60300),symbolString:y("symbol-string",60301),debugReverseContinue:y("debug-reverse-continue",60302),debugStepBack:y("debug-step-back",60303),debugRestartFrame:y("debug-restart-frame",60304),debugAlt:y("debug-alt",60305),callIncoming:y("call-incoming",60306),callOutgoing:y("call-outgoing",60307),menu:y("menu",60308),expandAll:y("expand-all",60309),feedback:y("feedback",60310),gitPullRequestReviewer:y("git-pull-request-reviewer",60310),groupByRefType:y("group-by-ref-type",60311),ungroupByRefType:y("ungroup-by-ref-type",60312),account:y("account",60313),gitPullRequestAssignee:y("git-pull-request-assignee",60313),bellDot:y("bell-dot",60314),debugConsole:y("debug-console",60315),library:y("library",60316),output:y("output",60317),runAll:y("run-all",60318),syncIgnored:y("sync-ignored",60319),pinned:y("pinned",60320),githubInverted:y("github-inverted",60321),serverProcess:y("server-process",60322),serverEnvironment:y("server-environment",60323),pass:y("pass",60324),issueClosed:y("issue-closed",60324),stopCircle:y("stop-circle",60325),playCircle:y("play-circle",60326),record:y("record",60327),debugAltSmall:y("debug-alt-small",60328),vmConnect:y("vm-connect",60329),cloud:y("cloud",60330),merge:y("merge",60331),export:y("export",60332),graphLeft:y("graph-left",60333),magnet:y("magnet",60334),notebook:y("notebook",60335),redo:y("redo",60336),checkAll:y("check-all",60337),pinnedDirty:y("pinned-dirty",60338),passFilled:y("pass-filled",60339),circleLargeFilled:y("circle-large-filled",60340),circleLarge:y("circle-large",60341),circleLargeOutline:y("circle-large-outline",60341),combine:y("combine",60342),gather:y("gather",60342),table:y("table",60343),variableGroup:y("variable-group",60344),typeHierarchy:y("type-hierarchy",60345),typeHierarchySub:y("type-hierarchy-sub",60346),typeHierarchySuper:y("type-hierarchy-super",60347),gitPullRequestCreate:y("git-pull-request-create",60348),runAbove:y("run-above",60349),runBelow:y("run-below",60350),notebookTemplate:y("notebook-template",60351),debugRerun:y("debug-rerun",60352),workspaceTrusted:y("workspace-trusted",60353),workspaceUntrusted:y("workspace-untrusted",60354),workspaceUnknown:y("workspace-unknown",60355),terminalCmd:y("terminal-cmd",60356),terminalDebian:y("terminal-debian",60357),terminalLinux:y("terminal-linux",60358),terminalPowershell:y("terminal-powershell",60359),terminalTmux:y("terminal-tmux",60360),terminalUbuntu:y("terminal-ubuntu",60361),terminalBash:y("terminal-bash",60362),arrowSwap:y("arrow-swap",60363),copy:y("copy",60364),personAdd:y("person-add",60365),filterFilled:y("filter-filled",60366),wand:y("wand",60367),debugLineByLine:y("debug-line-by-line",60368),inspect:y("inspect",60369),layers:y("layers",60370),layersDot:y("layers-dot",60371),layersActive:y("layers-active",60372),compass:y("compass",60373),compassDot:y("compass-dot",60374),compassActive:y("compass-active",60375),azure:y("azure",60376),issueDraft:y("issue-draft",60377),gitPullRequestClosed:y("git-pull-request-closed",60378),gitPullRequestDraft:y("git-pull-request-draft",60379),debugAll:y("debug-all",60380),debugCoverage:y("debug-coverage",60381),runErrors:y("run-errors",60382),folderLibrary:y("folder-library",60383),debugContinueSmall:y("debug-continue-small",60384),beakerStop:y("beaker-stop",60385),graphLine:y("graph-line",60386),graphScatter:y("graph-scatter",60387),pieChart:y("pie-chart",60388),bracket:y("bracket",60175),bracketDot:y("bracket-dot",60389),bracketError:y("bracket-error",60390),lockSmall:y("lock-small",60391),azureDevops:y("azure-devops",60392),verifiedFilled:y("verified-filled",60393),newline:y("newline",60394),layout:y("layout",60395),layoutActivitybarLeft:y("layout-activitybar-left",60396),layoutActivitybarRight:y("layout-activitybar-right",60397),layoutPanelLeft:y("layout-panel-left",60398),layoutPanelCenter:y("layout-panel-center",60399),layoutPanelJustify:y("layout-panel-justify",60400),layoutPanelRight:y("layout-panel-right",60401),layoutPanel:y("layout-panel",60402),layoutSidebarLeft:y("layout-sidebar-left",60403),layoutSidebarRight:y("layout-sidebar-right",60404),layoutStatusbar:y("layout-statusbar",60405),layoutMenubar:y("layout-menubar",60406),layoutCentered:y("layout-centered",60407),target:y("target",60408),indent:y("indent",60409),recordSmall:y("record-small",60410),errorSmall:y("error-small",60411),terminalDecorationError:y("terminal-decoration-error",60411),arrowCircleDown:y("arrow-circle-down",60412),arrowCircleLeft:y("arrow-circle-left",60413),arrowCircleRight:y("arrow-circle-right",60414),arrowCircleUp:y("arrow-circle-up",60415),layoutSidebarRightOff:y("layout-sidebar-right-off",60416),layoutPanelOff:y("layout-panel-off",60417),layoutSidebarLeftOff:y("layout-sidebar-left-off",60418),blank:y("blank",60419),heartFilled:y("heart-filled",60420),map:y("map",60421),mapHorizontal:y("map-horizontal",60421),foldHorizontal:y("fold-horizontal",60421),mapFilled:y("map-filled",60422),mapHorizontalFilled:y("map-horizontal-filled",60422),foldHorizontalFilled:y("fold-horizontal-filled",60422),circleSmall:y("circle-small",60423),bellSlash:y("bell-slash",60424),bellSlashDot:y("bell-slash-dot",60425),commentUnresolved:y("comment-unresolved",60426),gitPullRequestGoToChanges:y("git-pull-request-go-to-changes",60427),gitPullRequestNewChanges:y("git-pull-request-new-changes",60428),searchFuzzy:y("search-fuzzy",60429),commentDraft:y("comment-draft",60430),send:y("send",60431),sparkle:y("sparkle",60432),insert:y("insert",60433),mic:y("mic",60434),thumbsdownFilled:y("thumbsdown-filled",60435),thumbsupFilled:y("thumbsup-filled",60436),coffee:y("coffee",60437),snake:y("snake",60438),game:y("game",60439),vr:y("vr",60440),chip:y("chip",60441),piano:y("piano",60442),music:y("music",60443),micFilled:y("mic-filled",60444),repoFetch:y("repo-fetch",60445),copilot:y("copilot",60446),lightbulbSparkle:y("lightbulb-sparkle",60447),robot:y("robot",60448),sparkleFilled:y("sparkle-filled",60449),diffSingle:y("diff-single",60450),diffMultiple:y("diff-multiple",60451),surroundWith:y("surround-with",60452),share:y("share",60453),gitStash:y("git-stash",60454),gitStashApply:y("git-stash-apply",60455),gitStashPop:y("git-stash-pop",60456),vscode:y("vscode",60457),vscodeInsiders:y("vscode-insiders",60458),codeOss:y("code-oss",60459),runCoverage:y("run-coverage",60460),runAllCoverage:y("run-all-coverage",60461),coverage:y("coverage",60462),githubProject:y("github-project",60463),mapVertical:y("map-vertical",60464),foldVertical:y("fold-vertical",60464),mapVerticalFilled:y("map-vertical-filled",60465),foldVerticalFilled:y("fold-vertical-filled",60465),goToSearch:y("go-to-search",60466),percentage:y("percentage",60467),sortPercentage:y("sort-percentage",60467),attach:y("attach",60468),goToEditingSession:y("go-to-editing-session",60469),editSession:y("edit-session",60470),codeReview:y("code-review",60471),copilotWarning:y("copilot-warning",60472),python:y("python",60473),copilotLarge:y("copilot-large",60474),copilotWarningLarge:y("copilot-warning-large",60475),keyboardTab:y("keyboard-tab",60476),copilotBlocked:y("copilot-blocked",60477),copilotNotConnected:y("copilot-not-connected",60478),flag:y("flag",60479),lightbulbEmpty:y("lightbulb-empty",60480),symbolMethodArrow:y("symbol-method-arrow",60481),copilotUnavailable:y("copilot-unavailable",60482),repoPinned:y("repo-pinned",60483),keyboardTabAbove:y("keyboard-tab-above",60484),keyboardTabBelow:y("keyboard-tab-below",60485),gitPullRequestDone:y("git-pull-request-done",60486),mcp:y("mcp",60487),extensionsLarge:y("extensions-large",60488),layoutPanelDock:y("layout-panel-dock",60489),layoutSidebarLeftDock:y("layout-sidebar-left-dock",60490),layoutSidebarRightDock:y("layout-sidebar-right-dock",60491),copilotInProgress:y("copilot-in-progress",60492),copilotError:y("copilot-error",60493),copilotSuccess:y("copilot-success",60494),chatSparkle:y("chat-sparkle",60495),searchSparkle:y("search-sparkle",60496),editSparkle:y("edit-sparkle",60497),copilotSnooze:y("copilot-snooze",60498),sendToRemoteAgent:y("send-to-remote-agent",60499),commentDiscussionSparkle:y("comment-discussion-sparkle",60500),chatSparkleWarning:y("chat-sparkle-warning",60501),chatSparkleError:y("chat-sparkle-error",60502),collection:y("collection",60503),newCollection:y("new-collection",60504),thinking:y("thinking",60505),build:y("build",60506),commentDiscussionQuote:y("comment-discussion-quote",60507),cursor:y("cursor",60508),eraser:y("eraser",60509),fileText:y("file-text",60510),gitLens:y("git-lens",60511),quotes:y("quotes",60512),rename:y("rename",60513),runWithDeps:y("run-with-deps",60514),debugConnected:y("debug-connected",60515),strikethrough:y("strikethrough",60516),openInProduct:y("open-in-product",60517),indexZero:y("index-zero",60518),agent:y("agent",60519),editCode:y("edit-code",60520),repoSelected:y("repo-selected",60521),skip:y("skip",60522),mergeInto:y("merge-into",60523),gitBranchChanges:y("git-branch-changes",60524),gitBranchStagedChanges:y("git-branch-staged-changes",60525),gitBranchConflicts:y("git-branch-conflicts",60526),gitBranch:y("git-branch",60527),gitBranchCreate:y("git-branch-create",60527),gitBranchDelete:y("git-branch-delete",60527),searchLarge:y("search-large",60528),terminalGitBash:y("terminal-git-bash",60529)},uoe={dialogError:y("dialog-error","error"),dialogWarning:y("dialog-warning","warning"),dialogInfo:y("dialog-info","info"),dialogClose:y("dialog-close","close"),treeItemExpanded:y("tree-item-expanded","chevron-down"),treeFilterOnTypeOn:y("tree-filter-on-type-on","list-filter"),treeFilterOnTypeOff:y("tree-filter-on-type-off","list-selection"),treeFilterClear:y("tree-filter-clear","close"),treeItemLoading:y("tree-item-loading","loading"),menuSelection:y("menu-selection","check"),menuSubmenu:y("menu-submenu","chevron-right"),menuBarMore:y("menubar-more","more"),scrollbarButtonLeft:y("scrollbar-button-left","triangle-left"),scrollbarButtonRight:y("scrollbar-button-right","triangle-right"),scrollbarButtonUp:y("scrollbar-button-up","triangle-up"),scrollbarButtonDown:y("scrollbar-button-down","triangle-down"),toolBarMore:y("toolbar-more","more"),quickInputBack:y("quick-input-back","arrow-left"),dropDownButton:y("drop-down-button",60084),symbolCustomColor:y("symbol-customcolor",60252),exportIcon:y("export",60332),workspaceUnspecified:y("workspace-unspecified",60355),newLine:y("newline",60394),thumbsDownFilled:y("thumbsdown-filled",60435),thumbsUpFilled:y("thumbsup-filled",60436),gitFetch:y("git-fetch",60445),lightbulbSparkleAutofix:y("lightbulb-sparkle-autofix",60447),debugBreakpointPending:y("debug-breakpoint-pending",60377)},Z={...hoe,...uoe};var EM;(function(o){function e(t){return!!t&&typeof t=="object"&&typeof t.id=="string"}o.isThemeColor=e})(EM||(EM={}));var ve;(function(o){o.iconNameSegment="[A-Za-z0-9]+",o.iconNameExpression="[A-Za-z0-9-]+",o.iconModifierExpression="~[A-Za-z]+",o.iconNameCharacter="[A-Za-z0-9~-]";const e=new RegExp(`^(${o.iconNameExpression})(${o.iconModifierExpression})?$`);function t(g){const p=e.exec(g.id);if(!p)return t(Z.error);const[,_,b]=p,C=["codicon","codicon-"+_];return b&&C.push("codicon-modifier-"+b.substring(1)),C}o.asClassNameArray=t;function i(g){return t(g).join(" ")}o.asClassName=i;function n(g){return"."+t(g).join(".")}o.asCSSSelector=n;function s(g){return!!g&&typeof g=="object"&&typeof g.id=="string"&&(typeof g.color>"u"||EM.isThemeColor(g.color))}o.isThemeIcon=s;const r=new RegExp(`^\\$\\((${o.iconNameExpression}(?:${o.iconModifierExpression})?)\\)$`);function a(g){const p=r.exec(g);if(!p)return;const[,_]=p;return{id:_}}o.fromString=a;function l(g){return{id:g}}o.fromId=l;function c(g,p){let _=g.id;const b=_.lastIndexOf("~");return b!==-1&&(_=_.substring(0,b)),p&&(_=`${_}~${p}`),{id:_}}o.modify=c;function d(g){const p=g.id.lastIndexOf("~");if(p!==-1)return g.id.substring(p+1)}o.getModifier=d;function h(g,p){return g.id===p.id&&g.color?.id===p.color?.id}o.isEqual=h;function u(g){return g?.id===Z.file.id}o.isFile=u;function f(g){return g?.id===Z.folder.id}o.isFolder=f})(ve||(ve={}));const Rt=Fe("commandService"),Xe=new class{constructor(){this._commands=new Map,this._onDidRegisterCommand=new A,this.onDidRegisterCommand=this._onDidRegisterCommand.event}registerCommand(o,e){if(!o)throw new Error("invalid command");if(typeof o=="string"){if(!e)throw new Error("invalid command");return this.registerCommand({id:o,handler:e})}if(o.metadata&&Array.isArray(o.metadata.args)){const r=[];for(const l of o.metadata.args)r.push(l.constraint);const a=o.handler;o.handler=function(l,...c){return kie(c,r),a(l,...c)}}const{id:t}=o;let i=this._commands.get(t);i||(i=new es,this._commands.set(t,i));const n=i.unshift(o),s=fe(()=>{n(),this._commands.get(t)?.isEmpty()&&this._commands.delete(t)});return this._onDidRegisterCommand.fire(t),s}registerCommandAlias(o,e){return Xe.registerCommand(o,(t,...i)=>t.get(Rt).executeCommand(e,...i))}getCommand(o){const e=this._commands.get(o);if(!(!e||e.isEmpty()))return Ge.first(e)}getCommands(){const o=new Map;for(const e of this._commands.keys()){const t=this.getCommand(e);t&&o.set(e,t)}return o}};Xe.registerCommand("noop",()=>{});function NM(...o){switch(o.length){case 1:return m(1693,"Did you mean {0}?",o[0]);case 2:return m(1694,"Did you mean {0} or {1}?",o[0],o[1]);case 3:return m(1695,"Did you mean {0}, {1} or {2}?",o[0],o[1],o[2]);default:return}}const foe=m(1696,"Did you forget to open or close the quote?"),goe=m(1697,"Did you forget to escape the '/' (slash) character? Put two backslashes before it to escape, e.g., '\\\\/'.");let Rv=(jd=class{constructor(){this._input="",this._start=0,this._current=0,this._tokens=[],this._errors=[],this.stringRe=/[a-zA-Z0-9_<>\-\./\\:\*\?\+\[\]\^,#@;"%\$\p{L}-]+/uy}static getLexeme(e){switch(e.type){case 0:return"(";case 1:return")";case 2:return"!";case 3:return e.isTripleEq?"===":"==";case 4:return e.isTripleEq?"!==":"!=";case 5:return"<";case 6:return"<=";case 7:return">=";case 8:return">=";case 9:return"=~";case 10:return e.lexeme;case 11:return"true";case 12:return"false";case 13:return"in";case 14:return"not";case 15:return"&&";case 16:return"||";case 17:return e.lexeme;case 18:return e.lexeme;case 19:return e.lexeme;case 20:return"EOF";default:throw iy(`unhandled token type: ${JSON.stringify(e)}; have you forgotten to add a case?`)}}reset(e){return this._input=e,this._start=0,this._current=0,this._tokens=[],this._errors=[],this}scan(){for(;!this._isAtEnd();)switch(this._start=this._current,this._advance()){case 40:this._addToken(0);break;case 41:this._addToken(1);break;case 33:if(this._match(61)){const t=this._match(61);this._tokens.push({type:4,offset:this._start,isTripleEq:t})}else this._addToken(2);break;case 39:this._quotedString();break;case 47:this._regex();break;case 61:if(this._match(61)){const t=this._match(61);this._tokens.push({type:3,offset:this._start,isTripleEq:t})}else this._match(126)?this._addToken(9):this._error(NM("==","=~"));break;case 60:this._addToken(this._match(61)?6:5);break;case 62:this._addToken(this._match(61)?8:7);break;case 38:this._match(38)?this._addToken(15):this._error(NM("&&"));break;case 124:this._match(124)?this._addToken(16):this._error(NM("||"));break;case 32:case 13:case 9:case 10:case 160:break;default:this._string()}return this._start=this._current,this._addToken(20),Array.from(this._tokens)}_match(e){return this._isAtEnd()||this._input.charCodeAt(this._current)!==e?!1:(this._current++,!0)}_advance(){return this._input.charCodeAt(this._current++)}_peek(){return this._isAtEnd()?0:this._input.charCodeAt(this._current)}_addToken(e){this._tokens.push({type:e,offset:this._start})}_error(e){const t=this._start,i=this._input.substring(this._start,this._current),n={type:19,offset:this._start,lexeme:i};this._errors.push({offset:t,lexeme:i,additionalInfo:e}),this._tokens.push(n)}_string(){this.stringRe.lastIndex=this._start;const e=this.stringRe.exec(this._input);if(e){this._current=this._start+e[0].length;const t=this._input.substring(this._start,this._current),i=jd._keywords.get(t);i?this._addToken(i):this._tokens.push({type:17,lexeme:t,offset:this._start})}}_quotedString(){for(;this._peek()!==39&&!this._isAtEnd();)this._advance();if(this._isAtEnd()){this._error(foe);return}this._advance(),this._tokens.push({type:18,lexeme:this._input.substring(this._start+1,this._current-1),offset:this._start+1})}_regex(){let e=this._current,t=!1,i=!1;for(;;){if(e>=this._input.length){this._current=e,this._error(goe);return}const s=this._input.charCodeAt(e);if(t)t=!1;else if(s===47&&!i){e++;break}else s===91?i=!0:s===92?t=!0:s===93&&(i=!1);e++}for(;e=this._input.length}},jd._regexFlags=new Set(["i","g","s","m","y","u"].map(e=>e.charCodeAt(0))),jd._keywords=new Map([["not",14],["in",13],["false",12],["true",11]]),jd);const Un=new Map;Un.set("false",!1),Un.set("true",!0),Un.set("isMac",ze),Un.set("isLinux",Hs),Un.set("isWindows",gn),Un.set("isWeb",ll),Un.set("isMacNative",ze&&!ll),Un.set("isEdge",h6),Un.set("isFirefox",Mie),Un.set("isChrome",CR),Un.set("isSafari",Aie);const poe=Object.prototype.hasOwnProperty,moe={regexParsingWithErrorRecovery:!0},_oe=m(1675,"Empty context key expression"),boe=m(1676,"Did you forget to write an expression? You can also put 'false' or 'true' to always evaluate to false or true, respectively."),Coe=m(1677,"'in' after 'not'."),HH=m(1678,"closing parenthesis ')'"),voe=m(1679,"Unexpected token"),woe=m(1680,"Did you forget to put && or || before the token?"),Soe=m(1681,"Unexpected end of expression"),yoe=m(1682,"Did you forget to put a context key?");let Loe=(ac=class{constructor(e=moe){this._config=e,this._scanner=new Rv,this._tokens=[],this._current=0,this._parsingErrors=[],this._flagsGYRe=/g|y/g}parse(e){if(e===""){this._parsingErrors.push({message:_oe,offset:0,lexeme:"",additionalInfo:boe});return}this._tokens=this._scanner.reset(e).scan(),this._current=0,this._parsingErrors=[];try{const t=this._expr();if(!this._isAtEnd()){const i=this._peek(),n=i.type===17?woe:void 0;throw this._parsingErrors.push({message:voe,offset:i.offset,lexeme:Rv.getLexeme(i),additionalInfo:n}),ac._parseError}return t}catch(t){if(t!==ac._parseError)throw t;return}}_expr(){return this._or()}_or(){const e=[this._and()];for(;this._matchOne(16);){const t=this._and();e.push(t)}return e.length===1?e[0]:q.or(...e)}_and(){const e=[this._term()];for(;this._matchOne(15);){const t=this._term();e.push(t)}return e.length===1?e[0]:q.and(...e)}_term(){if(this._matchOne(2)){const e=this._peek();switch(e.type){case 11:return this._advance(),vs.INSTANCE;case 12:return this._advance(),zs.INSTANCE;case 0:{this._advance();const t=this._expr();return this._consume(1,HH),t?.negate()}case 17:return this._advance(),Cf.create(e.lexeme);default:throw this._errExpectedButGot("KEY | true | false | '(' expression ')'",e)}}return this._primary()}_primary(){const e=this._peek();switch(e.type){case 11:return this._advance(),q.true();case 12:return this._advance(),q.false();case 0:{this._advance();const t=this._expr();return this._consume(1,HH),t}case 17:{const t=e.lexeme;if(this._advance(),this._matchOne(9)){const n=this._peek();if(!this._config.regexParsingWithErrorRecovery){if(this._advance(),n.type!==10)throw this._errExpectedButGot("REGEX",n);const s=n.lexeme,r=s.lastIndexOf("/"),a=r===s.length-1?void 0:this._removeFlagsGY(s.substring(r+1));let l;try{l=new RegExp(s.substring(1,r),a)}catch{throw this._errExpectedButGot("REGEX",n)}return Av.create(t,l)}switch(n.type){case 10:case 19:{const s=[n.lexeme];this._advance();let r=this._peek(),a=0;for(let u=0;u=0){const c=s.slice(a+1,l),d=s[l+1]==="i"?"i":"";try{r=new RegExp(c,d)}catch{throw this._errExpectedButGot("REGEX",n)}}}if(r===null)throw this._errExpectedButGot("REGEX",n);return Av.create(t,r)}default:throw this._errExpectedButGot("REGEX",this._peek())}}if(this._matchOne(14)){this._consume(13,Coe);const n=this._value();return q.notIn(t,n)}switch(this._peek().type){case 3:{this._advance();const n=this._value();if(this._previous().type===18)return q.equals(t,n);switch(n){case"true":return q.has(t);case"false":return q.not(t);default:return q.equals(t,n)}}case 4:{this._advance();const n=this._value();if(this._previous().type===18)return q.notEquals(t,n);switch(n){case"true":return q.not(t);case"false":return q.has(t);default:return q.notEquals(t,n)}}case 5:return this._advance(),$y.create(t,this._value());case 6:return this._advance(),jy.create(t,this._value());case 7:return this._advance(),zy.create(t,this._value());case 8:return this._advance(),Uy.create(t,this._value());case 13:return this._advance(),q.in(t,this._value());default:return q.has(t)}}case 20:throw this._parsingErrors.push({message:Soe,offset:e.offset,lexeme:"",additionalInfo:yoe}),ac._parseError;default:throw this._errExpectedButGot(`true | false | KEY | KEY '=~' REGEX | KEY ('==' | '!=' | '<' | '<=' | '>' | '>=' | 'in' | 'not' 'in') value`,this._peek())}}_value(){const e=this._peek();switch(e.type){case 17:case 18:return this._advance(),e.lexeme;case 11:return this._advance(),"true";case 12:return this._advance(),"false";case 13:return this._advance(),"in";default:return""}}_removeFlagsGY(e){return e.replaceAll(this._flagsGYRe,"")}_previous(){return this._tokens[this._current-1]}_matchOne(e){return this._check(e)?(this._advance(),!0):!1}_advance(){return this._isAtEnd()||this._current++,this._previous()}_consume(e,t){if(this._check(e))return this._advance();throw this._errExpectedButGot(t,this._peek())}_errExpectedButGot(e,t,i){const n=m(1683,`Expected: {0} Received: '{1}'.`,e,Rv.getLexeme(t)),s=t.offset,r=Rv.getLexeme(t);return this._parsingErrors.push({message:n,offset:s,lexeme:r,additionalInfo:i}),ac._parseError}_check(e){return this._peek().type===e}_peek(){return this._tokens[this._current]}_isAtEnd(){return this._peek().type===20}},ac._parseError=new Error,ac);const EB=class EB{static false(){return vs.INSTANCE}static true(){return zs.INSTANCE}static has(e){return bf.create(e)}static equals(e,t){return qm.create(e,t)}static notEquals(e,t){return Hy.create(e,t)}static regex(e,t){return Av.create(e,t)}static in(e,t){return Wy.create(e,t)}static notIn(e,t){return By.create(e,t)}static not(e){return Cf.create(e)}static and(...e){return vf.create(e,null,!0)}static or(...e){return Wc.create(e,null,!0)}static deserialize(e){return e==null?void 0:this._parser.parse(e)}};EB._parser=new Loe({regexParsingWithErrorRecovery:!1});let q=EB;function xoe(o,e){const t=o?o.substituteConstants():void 0,i=e?e.substituteConstants():void 0;return!t&&!i?!0:!t||!i?!1:t.equals(i)}function Mv(o,e){return o.cmp(e)}const _N=class _N{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 zs.INSTANCE}};_N.INSTANCE=new _N;let vs=_N;const bN=class bN{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 vs.INSTANCE}};bN.INSTANCE=new bN;let zs=bN;class bf{static create(e,t=null){const i=Un.get(e);return typeof i=="boolean"?i?zs.INSTANCE:vs.INSTANCE:new bf(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:zH(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Un.get(this.key);return typeof e=="boolean"?e?zs.INSTANCE:vs.INSTANCE:this}evaluate(e){return!!e.getValue(this.key)}serialize(){return this.key}keys(){return[this.key]}negate(){return this.negated||(this.negated=Cf.create(this.key,this)),this.negated}}class qm{static create(e,t,i=null){if(typeof t=="boolean")return t?bf.create(e,i):Cf.create(e,i);const n=Un.get(e);return typeof n=="boolean"?t===(n?"true":"false")?zs.INSTANCE:vs.INSTANCE:new qm(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:wf(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=Un.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?zs.INSTANCE:vs.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=Hy.create(this.key,this.value,this)),this.negated}}class Wy{static create(e,t){return new Wy(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:wf(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?poe.call(t,i):!1}serialize(){return`${this.key} in '${this.valueKey}'`}keys(){return[this.key,this.valueKey]}negate(){return this.negated||(this.negated=By.create(this.key,this.valueKey)),this.negated}}class By{static create(e,t){return new By(e,t)}constructor(e,t){this.key=e,this.valueKey=t,this.type=11,this._negated=Wy.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 Hy{static create(e,t,i=null){if(typeof t=="boolean")return t?Cf.create(e,i):bf.create(e,i);const n=Un.get(e);return typeof n=="boolean"?t===(n?"true":"false")?vs.INSTANCE:zs.INSTANCE:new Hy(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:wf(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=Un.get(this.key);if(typeof e=="boolean"){const t=e?"true":"false";return this.value===t?vs.INSTANCE:zs.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=qm.create(this.key,this.value,this)),this.negated}}class Cf{static create(e,t=null){const i=Un.get(e);return typeof i=="boolean"?i?vs.INSTANCE:zs.INSTANCE:new Cf(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:zH(this.key,e.key)}equals(e){return e.type===this.type?this.key===e.key:!1}substituteConstants(){const e=Un.get(this.key);return typeof e=="boolean"?e?vs.INSTANCE:zs.INSTANCE:this}evaluate(e){return!e.getValue(this.key)}serialize(){return`!${this.key}`}keys(){return[this.key]}negate(){return this.negated||(this.negated=bf.create(this.key,this)),this.negated}}function Vy(o,e){if(typeof o=="string"){const t=parseFloat(o);isNaN(t)||(o=t)}return typeof o=="string"||typeof o=="number"?e(o):vs.INSTANCE}class zy{static create(e,t,i=null){return Vy(t,n=>new zy(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:wf(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=jy.create(this.key,this.value,this)),this.negated}}class Uy{static create(e,t,i=null){return Vy(t,n=>new Uy(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:wf(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=$y.create(this.key,this.value,this)),this.negated}}class $y{static create(e,t,i=null){return Vy(t,n=>new $y(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:wf(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 jy(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:wf(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=zy.create(this.key,this.value,this)),this.negated}}class Av{static create(e,t){return new Av(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=TM.create(this)),this.negated}}class TM{static create(e){return new TM(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(){return`!(${this._actual.serialize()})`}keys(){return this._actual.keys()}negate(){return this._actual}}function VH(o){let e=null;for(let t=0,i=o.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=Wc.create(r.expr.map(d=>vf.create([d,a],null,i)),null,l);c&&(n.push(c),n.sort(Mv))}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=Wc.create(e,this,!0)}return this.negated}}class Wc{static create(e,t,i){return Wc._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 s of $H(t))for(const r of $H(i))n.push(vf.create([s,r],null,!1));e.unshift(Wc.create(n,null,!1))}this.negated=Wc.create(e,this,!0)}return this.negated}}const yC=class yC extends bf{static all(){return yC._info.values()}constructor(e,t,i){super(e,null),this._defaultValue=t,typeof i=="object"?yC._info.push({...i,key:e}):i!==!0&&yC._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 qm.create(this.key,e)}};yC._info=[];let re=yC;const ke=Fe("contextKeyService");function zH(o,e){return oe?1:0}function wf(o,e,t,i){return ot?1:ei?1:0}function RM(o,e){if(o.type===0||e.type===1)return!0;if(o.type===9)return e.type===9?UH(o.expr,e.expr):!1;if(e.type===9){for(const t of e.expr)if(RM(o,t))return!0;return!1}if(o.type===6){if(e.type===6)return UH(e.expr,o.expr);for(const t of o.expr)if(RM(t,e))return!0;return!1}return o.equals(e)}function UH(o,e){let t=0,i=0;for(;t{Qu(e.dispose)&&e.dispose()}),this.data.clear()}}const ei=new koe;class MM{constructor(){this._coreKeybindings=new es,this._extensionKeybindings=[],this._cachedMergedKeybindings=null}static bindToCurrentPlatform(e){if(oo===1){if(e&&e.win)return e.win}else if(oo===2){if(e&&e.mac)return e.mac}else if(e&&e.linux)return e.linux;return e}registerKeybindingRule(e){const t=MM.bindToCurrentPlatform(e),i=new V;if(t&&t.primary){const n=LR(t.primary,oo);n&&i.add(this._registerDefaultKeybinding(n,e.id,e.args,e.weight,0,e.when))}if(t&&Array.isArray(t.secondary))for(let n=0,s=t.secondary.length;n{a(),this._cachedMergedKeybindings=null})}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=Array.from(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(Doe)),this._cachedMergedKeybindings.slice(0)}}const ln=new MM,Ioe={EditorModes:"platform.keybindingsRegistry"};ei.add(Ioe.EditorModes,ln);function Doe(o,e){if(o.weight1!==e.weight1)return o.weight1-e.weight1;if(o.command&&e.command){if(o.commande.command)return 1}return o.weight2-e.weight2}var Eoe=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},jH=function(o,e){return function(t,i){e(t,i,o)}},qy;function Km(o){return o.command!==void 0}function Noe(o){return o.submenu!==void 0}const E=class E{constructor(e){if(E._instances.has(e))throw new TypeError(`MenuId with identifier '${e}' already exists. Use MenuId.for(ident) or a unique identifier`);E._instances.set(e,this),this.id=e}};E._instances=new Map,E.CommandPalette=new E("CommandPalette"),E.DebugBreakpointsContext=new E("DebugBreakpointsContext"),E.DebugCallStackContext=new E("DebugCallStackContext"),E.DebugConsoleContext=new E("DebugConsoleContext"),E.DebugVariablesContext=new E("DebugVariablesContext"),E.NotebookVariablesContext=new E("NotebookVariablesContext"),E.DebugHoverContext=new E("DebugHoverContext"),E.DebugWatchContext=new E("DebugWatchContext"),E.DebugToolBar=new E("DebugToolBar"),E.DebugToolBarStop=new E("DebugToolBarStop"),E.DebugDisassemblyContext=new E("DebugDisassemblyContext"),E.DebugCallStackToolbar=new E("DebugCallStackToolbar"),E.DebugCreateConfiguration=new E("DebugCreateConfiguration"),E.EditorContext=new E("EditorContext"),E.SimpleEditorContext=new E("SimpleEditorContext"),E.EditorContent=new E("EditorContent"),E.EditorLineNumberContext=new E("EditorLineNumberContext"),E.EditorContextCopy=new E("EditorContextCopy"),E.EditorContextPeek=new E("EditorContextPeek"),E.EditorContextShare=new E("EditorContextShare"),E.EditorTitle=new E("EditorTitle"),E.CompactWindowEditorTitle=new E("CompactWindowEditorTitle"),E.EditorTitleRun=new E("EditorTitleRun"),E.EditorTitleContext=new E("EditorTitleContext"),E.EditorTitleContextShare=new E("EditorTitleContextShare"),E.EmptyEditorGroup=new E("EmptyEditorGroup"),E.EmptyEditorGroupContext=new E("EmptyEditorGroupContext"),E.EditorTabsBarContext=new E("EditorTabsBarContext"),E.EditorTabsBarShowTabsSubmenu=new E("EditorTabsBarShowTabsSubmenu"),E.EditorTabsBarShowTabsZenModeSubmenu=new E("EditorTabsBarShowTabsZenModeSubmenu"),E.EditorActionsPositionSubmenu=new E("EditorActionsPositionSubmenu"),E.EditorSplitMoveSubmenu=new E("EditorSplitMoveSubmenu"),E.ExplorerContext=new E("ExplorerContext"),E.ExplorerContextShare=new E("ExplorerContextShare"),E.ExtensionContext=new E("ExtensionContext"),E.ExtensionEditorContextMenu=new E("ExtensionEditorContextMenu"),E.GlobalActivity=new E("GlobalActivity"),E.CommandCenter=new E("CommandCenter"),E.CommandCenterCenter=new E("CommandCenterCenter"),E.LayoutControlMenuSubmenu=new E("LayoutControlMenuSubmenu"),E.LayoutControlMenu=new E("LayoutControlMenu"),E.MenubarMainMenu=new E("MenubarMainMenu"),E.MenubarAppearanceMenu=new E("MenubarAppearanceMenu"),E.MenubarDebugMenu=new E("MenubarDebugMenu"),E.MenubarEditMenu=new E("MenubarEditMenu"),E.MenubarCopy=new E("MenubarCopy"),E.MenubarFileMenu=new E("MenubarFileMenu"),E.MenubarGoMenu=new E("MenubarGoMenu"),E.MenubarHelpMenu=new E("MenubarHelpMenu"),E.MenubarLayoutMenu=new E("MenubarLayoutMenu"),E.MenubarNewBreakpointMenu=new E("MenubarNewBreakpointMenu"),E.PanelAlignmentMenu=new E("PanelAlignmentMenu"),E.PanelPositionMenu=new E("PanelPositionMenu"),E.ActivityBarPositionMenu=new E("ActivityBarPositionMenu"),E.MenubarPreferencesMenu=new E("MenubarPreferencesMenu"),E.MenubarRecentMenu=new E("MenubarRecentMenu"),E.MenubarSelectionMenu=new E("MenubarSelectionMenu"),E.MenubarShare=new E("MenubarShare"),E.MenubarSwitchEditorMenu=new E("MenubarSwitchEditorMenu"),E.MenubarSwitchGroupMenu=new E("MenubarSwitchGroupMenu"),E.MenubarTerminalMenu=new E("MenubarTerminalMenu"),E.MenubarTerminalSuggestStatusMenu=new E("MenubarTerminalSuggestStatusMenu"),E.MenubarViewMenu=new E("MenubarViewMenu"),E.MenubarHomeMenu=new E("MenubarHomeMenu"),E.OpenEditorsContext=new E("OpenEditorsContext"),E.OpenEditorsContextShare=new E("OpenEditorsContextShare"),E.ProblemsPanelContext=new E("ProblemsPanelContext"),E.SCMInputBox=new E("SCMInputBox"),E.SCMChangeContext=new E("SCMChangeContext"),E.SCMResourceContext=new E("SCMResourceContext"),E.SCMResourceContextShare=new E("SCMResourceContextShare"),E.SCMResourceFolderContext=new E("SCMResourceFolderContext"),E.SCMResourceGroupContext=new E("SCMResourceGroupContext"),E.SCMSourceControl=new E("SCMSourceControl"),E.SCMSourceControlInline=new E("SCMSourceControlInline"),E.SCMSourceControlTitle=new E("SCMSourceControlTitle"),E.SCMHistoryTitle=new E("SCMHistoryTitle"),E.SCMHistoryItemContext=new E("SCMHistoryItemContext"),E.SCMHistoryItemChangeContext=new E("SCMHistoryItemChangeContext"),E.SCMHistoryItemRefContext=new E("SCMHistoryItemRefContext"),E.SCMArtifactGroupContext=new E("SCMArtifactGroupContext"),E.SCMArtifactContext=new E("SCMArtifactContext"),E.SCMQuickDiffDecorations=new E("SCMQuickDiffDecorations"),E.SCMTitle=new E("SCMTitle"),E.SearchContext=new E("SearchContext"),E.SearchActionMenu=new E("SearchActionContext"),E.StatusBarWindowIndicatorMenu=new E("StatusBarWindowIndicatorMenu"),E.StatusBarRemoteIndicatorMenu=new E("StatusBarRemoteIndicatorMenu"),E.StickyScrollContext=new E("StickyScrollContext"),E.TestItem=new E("TestItem"),E.TestItemGutter=new E("TestItemGutter"),E.TestProfilesContext=new E("TestProfilesContext"),E.TestMessageContext=new E("TestMessageContext"),E.TestMessageContent=new E("TestMessageContent"),E.TestPeekElement=new E("TestPeekElement"),E.TestPeekTitle=new E("TestPeekTitle"),E.TestCallStack=new E("TestCallStack"),E.TestCoverageFilterItem=new E("TestCoverageFilterItem"),E.TouchBarContext=new E("TouchBarContext"),E.TitleBar=new E("TitleBar"),E.TitleBarContext=new E("TitleBarContext"),E.TitleBarTitleContext=new E("TitleBarTitleContext"),E.TunnelContext=new E("TunnelContext"),E.TunnelPrivacy=new E("TunnelPrivacy"),E.TunnelProtocol=new E("TunnelProtocol"),E.TunnelPortInline=new E("TunnelInline"),E.TunnelTitle=new E("TunnelTitle"),E.TunnelLocalAddressInline=new E("TunnelLocalAddressInline"),E.TunnelOriginInline=new E("TunnelOriginInline"),E.ViewItemContext=new E("ViewItemContext"),E.ViewContainerTitle=new E("ViewContainerTitle"),E.ViewContainerTitleContext=new E("ViewContainerTitleContext"),E.ViewTitle=new E("ViewTitle"),E.ViewTitleContext=new E("ViewTitleContext"),E.CommentEditorActions=new E("CommentEditorActions"),E.CommentThreadTitle=new E("CommentThreadTitle"),E.CommentThreadActions=new E("CommentThreadActions"),E.CommentThreadAdditionalActions=new E("CommentThreadAdditionalActions"),E.CommentThreadTitleContext=new E("CommentThreadTitleContext"),E.CommentThreadCommentContext=new E("CommentThreadCommentContext"),E.CommentTitle=new E("CommentTitle"),E.CommentActions=new E("CommentActions"),E.CommentsViewThreadActions=new E("CommentsViewThreadActions"),E.InteractiveToolbar=new E("InteractiveToolbar"),E.InteractiveCellTitle=new E("InteractiveCellTitle"),E.InteractiveCellDelete=new E("InteractiveCellDelete"),E.InteractiveCellExecute=new E("InteractiveCellExecute"),E.InteractiveInputExecute=new E("InteractiveInputExecute"),E.InteractiveInputConfig=new E("InteractiveInputConfig"),E.ReplInputExecute=new E("ReplInputExecute"),E.IssueReporter=new E("IssueReporter"),E.NotebookToolbar=new E("NotebookToolbar"),E.NotebookToolbarContext=new E("NotebookToolbarContext"),E.NotebookStickyScrollContext=new E("NotebookStickyScrollContext"),E.NotebookCellTitle=new E("NotebookCellTitle"),E.NotebookCellDelete=new E("NotebookCellDelete"),E.NotebookCellInsert=new E("NotebookCellInsert"),E.NotebookCellBetween=new E("NotebookCellBetween"),E.NotebookCellListTop=new E("NotebookCellTop"),E.NotebookCellExecute=new E("NotebookCellExecute"),E.NotebookCellExecuteGoTo=new E("NotebookCellExecuteGoTo"),E.NotebookCellExecutePrimary=new E("NotebookCellExecutePrimary"),E.NotebookDiffCellInputTitle=new E("NotebookDiffCellInputTitle"),E.NotebookDiffDocumentMetadata=new E("NotebookDiffDocumentMetadata"),E.NotebookDiffCellMetadataTitle=new E("NotebookDiffCellMetadataTitle"),E.NotebookDiffCellOutputsTitle=new E("NotebookDiffCellOutputsTitle"),E.NotebookOutputToolbar=new E("NotebookOutputToolbar"),E.NotebookOutlineFilter=new E("NotebookOutlineFilter"),E.NotebookOutlineActionMenu=new E("NotebookOutlineActionMenu"),E.NotebookEditorLayoutConfigure=new E("NotebookEditorLayoutConfigure"),E.NotebookKernelSource=new E("NotebookKernelSource"),E.BulkEditTitle=new E("BulkEditTitle"),E.BulkEditContext=new E("BulkEditContext"),E.TimelineItemContext=new E("TimelineItemContext"),E.TimelineTitle=new E("TimelineTitle"),E.TimelineTitleContext=new E("TimelineTitleContext"),E.TimelineFilterSubMenu=new E("TimelineFilterSubMenu"),E.AccountsContext=new E("AccountsContext"),E.SidebarTitle=new E("SidebarTitle"),E.PanelTitle=new E("PanelTitle"),E.AuxiliaryBarTitle=new E("AuxiliaryBarTitle"),E.TerminalInstanceContext=new E("TerminalInstanceContext"),E.TerminalEditorInstanceContext=new E("TerminalEditorInstanceContext"),E.TerminalNewDropdownContext=new E("TerminalNewDropdownContext"),E.TerminalTabContext=new E("TerminalTabContext"),E.TerminalTabEmptyAreaContext=new E("TerminalTabEmptyAreaContext"),E.TerminalStickyScrollContext=new E("TerminalStickyScrollContext"),E.WebviewContext=new E("WebviewContext"),E.InlineCompletionsActions=new E("InlineCompletionsActions"),E.InlineEditsActions=new E("InlineEditsActions"),E.NewFile=new E("NewFile"),E.MergeInput1Toolbar=new E("MergeToolbar1Toolbar"),E.MergeInput2Toolbar=new E("MergeToolbar2Toolbar"),E.MergeBaseToolbar=new E("MergeBaseToolbar"),E.MergeInputResultToolbar=new E("MergeToolbarResultToolbar"),E.InlineSuggestionToolbar=new E("InlineSuggestionToolbar"),E.InlineEditToolbar=new E("InlineEditToolbar"),E.ChatContext=new E("ChatContext"),E.ChatCodeBlock=new E("ChatCodeblock"),E.ChatCompareBlock=new E("ChatCompareBlock"),E.ChatMessageTitle=new E("ChatMessageTitle"),E.ChatHistory=new E("ChatHistory"),E.ChatWelcomeContext=new E("ChatWelcomeContext"),E.ChatMessageFooter=new E("ChatMessageFooter"),E.ChatExecute=new E("ChatExecute"),E.ChatInput=new E("ChatInput"),E.ChatInputSide=new E("ChatInputSide"),E.ChatModePicker=new E("ChatModePicker"),E.ChatEditingWidgetToolbar=new E("ChatEditingWidgetToolbar"),E.ChatEditingEditorContent=new E("ChatEditingEditorContent"),E.ChatEditingEditorHunk=new E("ChatEditingEditorHunk"),E.ChatEditingDeletedNotebookCell=new E("ChatEditingDeletedNotebookCell"),E.ChatInputAttachmentToolbar=new E("ChatInputAttachmentToolbar"),E.ChatEditingWidgetModifiedFilesToolbar=new E("ChatEditingWidgetModifiedFilesToolbar"),E.ChatInputResourceAttachmentContext=new E("ChatInputResourceAttachmentContext"),E.ChatInputSymbolAttachmentContext=new E("ChatInputSymbolAttachmentContext"),E.ChatInlineResourceAnchorContext=new E("ChatInlineResourceAnchorContext"),E.ChatInlineSymbolAnchorContext=new E("ChatInlineSymbolAnchorContext"),E.ChatMessageCheckpoint=new E("ChatMessageCheckpoint"),E.ChatMessageRestoreCheckpoint=new E("ChatMessageRestoreCheckpoint"),E.ChatNewMenu=new E("ChatNewMenu"),E.ChatEditingCodeBlockContext=new E("ChatEditingCodeBlockContext"),E.ChatTitleBarMenu=new E("ChatTitleBarMenu"),E.ChatAttachmentsContext=new E("ChatAttachmentsContext"),E.ChatToolOutputResourceToolbar=new E("ChatToolOutputResourceToolbar"),E.ChatTextEditorMenu=new E("ChatTextEditorMenu"),E.ChatToolOutputResourceContext=new E("ChatToolOutputResourceContext"),E.ChatMultiDiffContext=new E("ChatMultiDiffContext"),E.ChatSessionsMenu=new E("ChatSessionsMenu"),E.ChatSessionsCreateSubMenu=new E("ChatSessionsCreateSubMenu"),E.ChatConfirmationMenu=new E("ChatConfirmationMenu"),E.ChatEditorInlineExecute=new E("ChatEditorInputExecute"),E.ChatEditorInlineInputSide=new E("ChatEditorInputSide"),E.AccessibleView=new E("AccessibleView"),E.MultiDiffEditorFileToolbar=new E("MultiDiffEditorFileToolbar"),E.DiffEditorHunkToolbar=new E("DiffEditorHunkToolbar"),E.DiffEditorSelectionToolbar=new E("DiffEditorSelectionToolbar");let ue=E;const wr=Fe("menuService"),RS=class RS{static for(e){let t=this._all.get(e);return t||(t=new RS(e),this._all.set(e,t)),t}static merge(e){const t=new Set;for(const i of e)i instanceof RS&&t.add(i.id);return t}constructor(e){this.id=e,this.has=t=>t===e}};RS._all=new Map;let Sf=RS;const cn=new class{constructor(){this._commands=new Map,this._menuItems=new Map,this._onDidChangeMenu=new ine({merge:Sf.merge}),this.onDidChangeMenu=this._onDidChangeMenu.event}addCommand(o){return this._commands.set(o.id,o),this._onDidChangeMenu.fire(Sf.for(ue.CommandPalette)),fe(()=>{this._commands.delete(o.id)&&this._onDidChangeMenu.fire(Sf.for(ue.CommandPalette))})}getCommand(o){return this._commands.get(o)}getCommands(){const o=new Map;return this._commands.forEach((e,t)=>o.set(t,e)),o}appendMenuItem(o,e){let t=this._menuItems.get(o);t||(t=new es,this._menuItems.set(o,t));const i=t.push(e);return this._onDidChangeMenu.fire(Sf.for(o)),fe(()=>{i(),this._onDidChangeMenu.fire(Sf.for(o))})}appendMenuItems(o){const e=new V;for(const{id:t,item:i}of o)e.add(this.appendMenuItem(t,i));return e}getMenuItems(o){let e;return this._menuItems.has(o)?e=[...this._menuItems.get(o)]:e=[],o===ue.CommandPalette&&this._appendImplicitItems(e),e}_appendImplicitItems(o){const e=new Set;for(const t of o)Km(t)&&(e.add(t.command.id),t.alt&&e.add(t.alt.id));this._commands.forEach((t,i)=>{e.has(i)||o.push({command:t})})}};class yf extends jm{constructor(e,t,i){super(`submenuitem.${e.submenu.id}`,typeof e.title=="string"?e.title:e.title.value,i,"submenu"),this.item=e,this.hideActions=t}}let Oo=qy=class{static label(e,t){return t?.renderShortTitle&&e.shortTitle?typeof e.shortTitle=="string"?e.shortTitle:e.shortTitle.value:typeof e.title=="string"?e.title:e.title.value}constructor(e,t,i,n,s,r,a){this.hideActions=n,this.menuKeybinding=s,this._commandService=a,this.id=e.id,this.label=qy.label(e,i),this.tooltip=(typeof e.tooltip=="string"?e.tooltip:e.tooltip?.value)??"",this.enabled=!e.precondition||r.contextMatchesRules(e.precondition),this.checked=void 0;let l;if(e.toggled){const c=e.toggled.condition?e.toggled:{condition:e.toggled};this.checked=r.contextMatchesRules(c.condition),this.checked&&c.tooltip&&(this.tooltip=typeof c.tooltip=="string"?c.tooltip:c.tooltip.value),this.checked&&ve.isThemeIcon(c.icon)&&(l=c.icon),this.checked&&c.title&&(this.label=typeof c.title=="string"?c.title:c.title.value)}l||(l=ve.isThemeIcon(e.icon)?e.icon:void 0),this.item=e,this.alt=t?new qy(t,void 0,i,n,void 0,r,a):void 0,this._options=i,this.class=l&&ve.asClassName(l)}run(...e){let t=[];return this._options?.arg&&(t=[...t,this._options.arg]),this._options?.shouldForwardArgs&&(t=[...t,...e]),this._commandService.executeCommand(this.id,...t)}};Oo=qy=Eoe([jH(5,ke),jH(6,Rt)],Oo);class dn{constructor(e){this.desc=e}}function _t(o){const e=[],t=new o,{f1:i,menu:n,keybinding:s,...r}=t.desc;if(Xe.getCommand(r.id))throw new Error(`Cannot register two commands with the same id: ${r.id}`);if(e.push(Xe.registerCommand({id:r.id,handler:(a,...l)=>t.run(a,...l),metadata:r.metadata??{description:t.desc.title}})),Array.isArray(n))for(const a of n)e.push(cn.appendMenuItem(a.id,{command:{...r,precondition:a.precondition===null?void 0:r.precondition},...a}));else n&&e.push(cn.appendMenuItem(n.id,{command:{...r,precondition:n.precondition===null?void 0:r.precondition},...n}));if(i&&(e.push(cn.appendMenuItem(ue.CommandPalette,{command:r,when:r.precondition})),e.push(cn.addCommand(r))),Array.isArray(s))for(const a of s)e.push(ln.registerKeybindingRule({...a,id:r.id,when:r.precondition?q.and(r.precondition,a.when):a.when}));else s&&e.push(ln.registerKeybindingRule({...s,id:r.id,when:r.precondition?q.and(r.precondition,s.when):s.when}));return{dispose(){ht(e)}}}const $n=Fe("telemetryService");var qH,KH,GH;class Toe{constructor(e,t){this.uri=e,this.value=t}}function Roe(o){return Array.isArray(o)}const Lp=class Lp{constructor(e,t){if(this[qH]="ResourceMap",e instanceof Lp)this.map=new Map(e.map),this.toKey=t??Lp.defaultToKey;else if(Roe(e)){this.map=new Map,this.toKey=t??Lp.defaultToKey;for(const[i,n]of e)this.set(i,n)}else this.map=new Map,this.toKey=e??Lp.defaultToKey}set(e,t){return this.map.set(this.toKey(e),new Toe(e,t)),this}get(e){return this.map.get(this.toKey(e))?.value}has(e){return this.map.has(this.toKey(e))}get size(){return this.map.size}clear(){this.map.clear()}delete(e){return this.map.delete(this.toKey(e))}forEach(e,t){typeof t<"u"&&(e=e.bind(t));for(const[i,n]of this.map)e(n.value,n.uri,this)}*values(){for(const e of this.map.values())yield e.value}*keys(){for(const e of this.map.values())yield e.uri}*entries(){for(const e of this.map.values())yield[e.uri,e.value]}*[(qH=Symbol.toStringTag,Symbol.iterator)](){for(const[,e]of this.map)yield[e.uri,e.value]}};Lp.defaultToKey=e=>e.toString();let Li=Lp;class Moe{constructor(e,t){this[KH]="ResourceSet",!e||typeof e=="function"?this._map=new Li(e):(this._map=new Li(t),e.forEach(this.add,this))}get size(){return this._map.size}add(e){return this._map.set(e,e),this}clear(){this._map.clear()}delete(e){return this._map.delete(e)}forEach(e,t){this._map.forEach((i,n)=>e.call(t,n,n,this))}has(e){return this._map.has(e)}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.keys()}[(KH=Symbol.toStringTag,Symbol.iterator)](){return this.keys()}}class Aoe{constructor(){this[GH]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,t=0){const i=this._map.get(e);if(i)return t!==0&&this.touch(i,t),i.value}set(e,t,i=0){let n=this._map.get(e);if(n)n.value=t,i!==0&&this.touch(n,i);else{switch(n={key:e,value:t,next:void 0,previous:void 0},i){case 0:this.addItemLast(n);break;case 1:this.addItemFirst(n);break;case 2:this.addItemLast(n);break;default:this.addItemLast(n);break}this._map.set(e,n),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){const t=this._map.get(e);if(t)return this._map.delete(e),this.removeItem(t),this._size--,t.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,t){const i=this._state;let n=this._head;for(;n;){if(t?e.bind(t)(n.value,n.key,this):e(n.value,n.key,this),this._state!==i)throw new Error("LinkedMap got modified during iteration.");n=n.next}}keys(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.key,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}values(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:i.value,done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}entries(){const e=this,t=this._state;let i=this._head;const n={[Symbol.iterator](){return n},next(){if(e._state!==t)throw new Error("LinkedMap got modified during iteration.");if(i){const s={value:[i.key,i.value],done:!1};return i=i.next,s}else return{value:void 0,done:!0}}};return n}[(GH=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._head,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.next,i--;this._head=t,this._size=i,t&&(t.previous=void 0),this._state++}trimNew(e){if(e>=this.size)return;if(e===0){this.clear();return}let t=this._tail,i=this.size;for(;t&&i>e;)this._map.delete(t.key),t=t.previous,i--;this._tail=t,this._size=i,t&&(t.next=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{const t=e.next,i=e.previous;if(!t||!i)throw new Error("Invalid list");t.previous=i,i.next=t}e.next=void 0,e.previous=void 0,this._state++}touch(e,t){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(t!==1&&t!==2)){if(t===1){if(e===this._head)return;const i=e.next,n=e.previous;e===this._tail?(n.next=void 0,this._tail=n):(i.previous=n,n.next=i),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(t===2){if(e===this._tail)return;const i=e.next,n=e.previous;e===this._head?(i.previous=void 0,this._head=i):(i.previous=n,n.next=i),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){const e=[];return this.forEach((t,i)=>{e.push([i,t])}),e}fromJSON(e){this.clear();for(const[t,i]of e)this.set(t,i)}}class Poe extends Aoe{constructor(e,t=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,t),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get(e,t=2){return super.get(e,t)}peek(e){return super.get(e,0)}set(e,t){return super.set(e,t,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class Yr extends Poe{constructor(e,t=1){super(e,t)}trim(e){this.trimOld(e)}set(e,t){return super.set(e,t),this.checkTrim(),this}}class Ooe{constructor(e){if(this._m1=new Map,this._m2=new Map,e)for(const[t,i]of e)this.set(t,i)}clear(){this._m1.clear(),this._m2.clear()}set(e,t){this._m1.set(e,t),this._m2.set(t,e)}get(e){return this._m1.get(e)}getKey(e){return this._m2.get(e)}delete(e){const t=this._m1.get(e);return t===void 0?!1:(this._m1.delete(e),this._m2.delete(t),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class ZH{constructor(){this.map=new Map}add(e,t){let i=this.map.get(e);i||(i=new Set,this.map.set(e,i)),i.add(t)}delete(e,t){const i=this.map.get(e);i&&(i.delete(t),i.size===0&&this.map.delete(e))}forEach(e,t){const i=this.map.get(e);i&&i.forEach(t)}}class Ky{constructor(){this._data=new Map}set(e,...t){let i=this._data;for(let n=0;n{let n="";for(const[s,r]of t)n+=`${" ".repeat(i)}${s}: `,r instanceof Map?n+=` `+e(r,i+1):n+=`${r} `;return n};return e(this._data,0)}}function fh(o){return o===47||o===92}function YH(o){return o.replace(/[\\/]/g,Pi.sep)}function Foe(o){return o.indexOf("/")===-1&&(o=YH(o)),/^[a-zA-Z]:(\/|$)/.test(o)&&(o="/"+o),o}function XH(o,e=Pi.sep){if(!o)return"";const t=o.length,i=o.charCodeAt(0);if(fh(i)){if(fh(o.charCodeAt(1))&&!fh(o.charCodeAt(2))){let s=3;const r=s;for(;so.length)return!1;if(t){if(!WR(o,e))return!1;if(e.length===o.length)return!0;let s=e.length;return e.charAt(e.length-1)===i&&s--,o.charAt(s)===i}return e.charAt(e.length-1)!==i&&(e+=i),o.indexOf(e)===0}function QH(o){return o>=65&&o<=90||o>=97&&o<=122}function Woe(o,e=gn){return e?QH(o.charCodeAt(0))&&o.charCodeAt(1)===58:!1}function ul(o){return by(o,!0)}class Boe{constructor(e){this._ignorePathCasing=e}compare(e,t,i=!1){return e===t?0:mv(this.getComparisonKey(e,i),this.getComparisonKey(t,i))}isEqual(e,t,i=!1){return e===t?!0:!e||!t?!1:this.getComparisonKey(e,i)===this.getComparisonKey(t,i)}getComparisonKey(e,t=!1){return e.with({path:this._ignorePathCasing(e)?e.path.toLowerCase():void 0,fragment:t?null:void 0}).toString()}isEqualOrParent(e,t,i=!1){if(e.scheme===t.scheme){if(e.scheme===Le.file)return AM(ul(e),ul(t),this._ignorePathCasing(e))&&e.query===t.query&&(i||e.fragment===t.fragment);if(tV(e.authority,t.authority))return AM(e.path,t.path,this._ignorePathCasing(e),"/")&&e.query===t.query&&(i||e.fragment===t.fragment)}return!1}joinPath(e,...t){return be.joinPath(e,...t)}basenameOrAuthority(e){return Sr(e)||e.authority}basename(e){return Pi.basename(e.path)}extname(e){return Pi.extname(e.path)}dirname(e){if(e.path.length===0)return e;let t;return e.scheme===Le.file?t=be.file(_y(ul(e))).path:(t=Pi.dirname(e.path),e.authority&&t.length&&t.charCodeAt(0)!==47&&(console.error(`dirname("${e.toString})) resulted in a relative path`),t="/")),e.with({path:t})}normalizePath(e){if(!e.path.length)return e;let t;return e.scheme===Le.file?t=be.file(M6(ul(e))).path:t=Pi.normalize(e.path),e.with({path:t})}relativePath(e,t){if(e.scheme!==t.scheme||!tV(e.authority,t.authority))return;if(e.scheme===Le.file){const s=Bne(ul(e),ul(t));return gn?YH(s):s}let i=e.path||"/";const n=t.path||"/";if(this._ignorePathCasing(e)){let s=0;for(const r=Math.min(i.length,n.length);sXH(i).length&&i[i.length-1]===t}else{const i=e.path;return i.length>1&&i.charCodeAt(i.length-1)===47&&!/^[a-zA-Z]:(\/$|\\$)/.test(e.fsPath)}}removeTrailingPathSeparator(e,t=wa){return iV(e,t)?e.with({path:e.path.substr(0,e.path.length-1)}):e}addTrailingPathSeparator(e,t=wa){let i=!1;if(e.scheme===Le.file){const n=ul(e);i=n!==void 0&&n.length===XH(n).length&&n[n.length-1]===t}else{t="/";const n=e.path;i=n.length===1&&n.charCodeAt(n.length-1)===47}return!i&&!iV(e,t)?e.with({path:e.path+"/"}):e}}const $t=new Boe(()=>!1),gh=$t.isEqual.bind($t);$t.isEqualOrParent.bind($t),$t.getComparisonKey.bind($t);const Hoe=$t.basenameOrAuthority.bind($t),Sr=$t.basename.bind($t),Voe=$t.extname.bind($t),Gy=$t.dirname.bind($t),JH=$t.joinPath.bind($t),zoe=$t.normalizePath.bind($t),Uoe=$t.relativePath.bind($t),eV=$t.resolvePath.bind($t);$t.isAbsolutePath.bind($t);const tV=$t.isEqualAuthority.bind($t),iV=$t.hasTrailingPathSeparator.bind($t);$t.removeTrailingPathSeparator.bind($t),$t.addTrailingPathSeparator.bind($t);var ph;(function(o){o.META_DATA_LABEL="label",o.META_DATA_DESCRIPTION="description",o.META_DATA_SIZE="size",o.META_DATA_MIME="mime";function e(t){const i=new Map;t.path.substring(t.path.indexOf(";")+1,t.path.lastIndexOf(";")).split(";").forEach(r=>{const[a,l]=r.split(":");a&&l&&i.set(a,l)});const s=t.path.substring(0,t.path.indexOf(";"));return s&&i.set(o.META_DATA_MIME,s),i}o.parseMetaData=e})(ph||(ph={}));const Mt=Fe("logService"),nV=Fe("loggerService");var en;(function(o){o[o.Off=0]="Off",o[o.Trace=1]="Trace",o[o.Debug=2]="Debug",o[o.Info=3]="Info",o[o.Warning=4]="Warning",o[o.Error=5]="Error"})(en||(en={}));const sV=en.Info;function oV(o,e){return o!==en.Off&&o<=e}class rV extends P{constructor(){super(...arguments),this.level=sV,this._onDidChangeLogLevel=this._register(new A)}get onDidChangeLogLevel(){return this._onDidChangeLogLevel.event}setLevel(e){this.level!==e&&(this.level=e,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}checkLogLevel(e){return oV(this.level,e)}canLog(e){return this._store.isDisposed?!1:this.checkLogLevel(e)}}class $oe extends rV{constructor(e=sV,t=!0){super(),this.useColors=t,this.setLevel(e)}trace(e,...t){this.canLog(en.Trace)&&(this.useColors?console.log("%cTRACE","color: #888",e,...t):console.log(e,...t))}debug(e,...t){this.canLog(en.Debug)&&(this.useColors?console.log("%cDEBUG","background: #eee; color: #888",e,...t):console.log(e,...t))}info(e,...t){this.canLog(en.Info)&&(this.useColors?console.log("%c INFO","color: #33f",e,...t):console.log(e,...t))}warn(e,...t){this.canLog(en.Warning)&&(this.useColors?console.warn("%c WARN","color: #993",e,...t):console.log(e,...t))}error(e,...t){this.canLog(en.Error)&&(this.useColors?console.error("%c ERR","color: #f33",e,...t):console.error(e,...t))}}class joe extends rV{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)}warn(e,...t){for(const i of this.loggers)i.warn(e,...t)}error(e,...t){for(const i of this.loggers)i.error(e,...t)}dispose(){for(const e of this.loggers)e.dispose();super.dispose()}}class qoe extends P{constructor(e,t,i){if(super(),this.logLevel=e,this.logsHome=t,this._loggers=new Li,this._onDidChangeLoggers=this._register(new A),this._onDidChangeVisibility=this._register(new A),i)for(const n of i)this._loggers.set(n.resource,{logger:void 0,info:n})}getLoggerEntry(e){return Zi(e)?[...this._loggers.values()].find(t=>t.info.id===e):this._loggers.get(e)}createLogger(e,t){const i=this.toResource(e),n=Zi(e)?e:t?.id??Cv(i.toString()).toString(16);let s=this._loggers.get(i)?.logger;const r=t?.logLevel==="always"?en.Trace:t?.logLevel;s||(s=this.doCreateLogger(i,r??this.getLogLevel(i)??this.logLevel,{...t,id:n}));const a={logger:s,info:{resource:i,id:n,logLevel:r,name:t?.name,hidden:t?.hidden,group:t?.group,extensionId:t?.extensionId,when:t?.when}};return this.registerLogger(a.info),this._loggers.set(i,a),s}toResource(e){return Zi(e)?JH(this.logsHome,`${e}.log`):e}setVisibility(e,t){const i=this.getLoggerEntry(e);i&&t!==!i.info.hidden&&(i.info.hidden=!t,this._loggers.set(i.info.resource,i),this._onDidChangeVisibility.fire([i.info.resource,t]))}getLogLevel(e){let t;return e&&(t=this._loggers.get(e)?.info.logLevel),t??this.logLevel}registerLogger(e){const t=this._loggers.get(e.resource);t?t.info.hidden!==e.hidden&&this.setVisibility(e.resource,!e.hidden):(this._loggers.set(e.resource,{info:e,logger:void 0}),this._onDidChangeLoggers.fire({added:[e],removed:[]}))}dispose(){this._loggers.forEach(e=>e.logger?.dispose()),this._loggers.clear(),super.dispose()}}class Koe{constructor(){this.onDidChangeLogLevel=new A().event}setLevel(e){}getLevel(){return en.Info}trace(e,...t){}debug(e,...t){}info(e,...t){}warn(e,...t){}error(e,...t){}dispose(){}}class Goe extends qoe{constructor(){super(en.Off,be.parse("log:///log"))}doCreateLogger(e,t,i){return new Koe}}function Zoe(o){switch(o){case en.Trace:return"trace";case en.Debug:return"debug";case en.Info:return"info";case en.Warning:return"warn";case en.Error:return"error";case en.Off:return"off"}}new re("logLevel",Zoe(en.Info));const MS=class MS{static getRegisteredCommands(){return[...MS.REGISTERED_COMMANDS]}static registerCommand(e){MS.REGISTERED_COMMANDS.add(e)}};MS.REGISTERED_COMMANDS=new Set;let Zy=MS,Yy=class{constructor(e){this.id=e.id,this.precondition=e.precondition,this._kbOpts=e.kbOpts,this._menuOpts=e.menuOpts,this.metadata=e.metadata,this.canTriggerInlineEdits=e.canTriggerInlineEdits}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const e=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const t of e){let i=t.kbExpr;this.precondition&&(i?i=q.and(i,this.precondition):i=this.precondition);const n={id:this.id,weight:t.weight,args:t.args,when:i,primary:t.primary,secondary:t.secondary,win:t.win,linux:t.linux,mac:t.mac};ln.registerKeybindingRule(n)}}Xe.registerCommand({id:this.id,handler:(e,t)=>this.runCommand(e,t),metadata:this.metadata}),this.canTriggerInlineEdits&&Zy.registerCommand(this.id)}_registerMenuItem(e){cn.appendMenuItem(e.menuId,{group:e.group,command:{id:this.id,title:e.title,icon:e.icon,precondition:this.precondition},when:e.when,order:e.order})}};class Gm extends Yy{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t,i,n){return this._implementations.push({priority:e,name:t,implementation:i,when:n}),this._implementations.sort((s,r)=>r.priority-s.priority),{dispose:()=>{for(let s=0;s{if(a.get(ke).contextMatchesRules(i??void 0))return n(a,r,t)})}runCommand(e,t){return ji.runEditorCommand(e,t,this.precondition,(i,n,s)=>this.runEditorCommand(i,n,s))}}class ce extends ji{static convertOptions(e){let t;Array.isArray(e.menuOpts)?t=e.menuOpts:e.menuOpts?t=[e.menuOpts]:t=[];function i(n){return n.menuId||(n.menuId=ue.EditorContext),n.title||(n.title=typeof e.label=="string"?e.label:e.label.value),n.when=q.and(e.precondition,n.when),n}return Array.isArray(e.contextMenuOpts)?t.push(...e.contextMenuOpts.map(i)):e.contextMenuOpts&&t.push(i(e.contextMenuOpts)),e.menuOpts=t,e}constructor(e){super(ce.convertOptions(e)),typeof e.label=="string"?(this.label=e.label,this.alias=e.alias??e.label):(this.label=e.label.value,this.alias=e.alias??e.label.original)}runEditorCommand(e,t,i){return this.reportTelemetry(e,t),this.run(e,t,i||{})}reportTelemetry(e,t){e.get($n).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class Xy extends ce{constructor(){super(...arguments),this._implementations=[]}addImplementation(e,t){return this._implementations.push([e,t]),this._implementations.sort((i,n)=>n[0]-i[0]),{dispose:()=>{for(let i=0;i{const r=s.get(ke),a=s.get(Mt);if(!r.contextMatchesRules(this.desc.precondition??void 0)){a.debug("[EditorAction2] NOT running command because its precondition is FALSE",this.desc.id,this.desc.precondition?.serialize());return}return this.runEditorCommand(s,n,...t)})}}function Us(o,e){Xe.registerCommand(o,function(t,...i){const n=t.get(pe),[s,r]=i;Je(be.isUri(s)),Je(M.isIPosition(r));const a=t.get(Xt).getModel(s);if(a){const l=M.lift(r);return n.invokeFunction(e,a,l,...i.slice(2))}return t.get(ss).createModelReference(s).then(l=>new Promise((c,d)=>{try{const h=n.invokeFunction(e,l.object.textEditorModel,M.lift(r),i.slice(2));c(h)}catch(h){d(h)}}).finally(()=>{l.dispose()}))})}function ae(o){return yr.INSTANCE.registerEditorCommand(o),o}function oe(o){const e=new o;return yr.INSTANCE.registerEditorAction(e),e}function Qy(o){return yr.INSTANCE.registerEditorAction(o),o}function Yoe(o){yr.INSTANCE.registerEditorAction(o)}function Qe(o,e,t){yr.INSTANCE.registerEditorContribution(o,e,t)}var Zm;(function(o){function e(r){return yr.INSTANCE.getEditorCommand(r)}o.getEditorCommand=e;function t(){return yr.INSTANCE.getEditorActions()}o.getEditorActions=t;function i(){return yr.INSTANCE.getEditorContributions()}o.getEditorContributions=i;function n(r){return yr.INSTANCE.getEditorContributions().filter(a=>r.indexOf(a.id)>=0)}o.getSomeEditorContributions=n;function s(){return yr.INSTANCE.getDiffEditorContributions()}o.getDiffEditorContributions=s})(Zm||(Zm={}));const Xoe={EditorCommonContributions:"editor.contributions"},CN=class CN{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(e,t,i){this.editorContributions.push({id:e,ctor:t,instantiation:i})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(e){e.register(),this.editorActions.push(e)}getEditorActions(){return this.editorActions}registerEditorCommand(e){e.register(),this.editorCommands[e.id]=e}getEditorCommand(e){return this.editorCommands[e]||null}};CN.INSTANCE=new CN;let yr=CN;ei.add(Xoe.EditorCommonContributions,yr.INSTANCE);function Pv(o){return o.register(),o}const lV=Pv(new Gm({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2104},menuOpts:[{menuId:ue.MenubarEditMenu,group:"1_do",title:m(69,"&&Undo"),order:1},{menuId:ue.CommandPalette,group:"",title:m(70,"Undo"),order:1},{menuId:ue.SimpleEditorContext,group:"1_do",title:m(71,"Undo"),order:1}]}));Pv(new aV(lV,{id:"default:undo",precondition:void 0}));const cV=Pv(new Gm({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2103,secondary:[3128],mac:{primary:3128}},menuOpts:[{menuId:ue.MenubarEditMenu,group:"1_do",title:m(72,"&&Redo"),order:2},{menuId:ue.CommandPalette,group:"",title:m(73,"Redo"),order:1},{menuId:ue.SimpleEditorContext,group:"1_do",title:m(74,"Redo"),order:2}]}));Pv(new aV(cV,{id:"default:redo",precondition:void 0}));const Qoe=Pv(new Gm({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2079},menuOpts:[{menuId:ue.MenubarSelectionMenu,group:"1_basic",title:m(75,"&&Select All"),order:1},{menuId:ue.CommandPalette,group:"",title:m(76,"Select All"),order:1},{menuId:ue.SimpleEditorContext,group:"9_select",title:m(77,"Select All"),order:1}]}));let k=class Sn{constructor(e,t,i,n){e>i||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 Sn.isEmpty(this)}static isEmpty(e){return e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn}containsPosition(e){return Sn.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 Sn.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 Sn.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 Sn.plusRange(this,e)}static plusRange(e,t){let i,n,s,r;return t.startLineNumbere.endLineNumber?(s=t.endLineNumber,r=t.endColumn):t.endLineNumber===e.endLineNumber?(s=t.endLineNumber,r=Math.max(t.endColumn,e.endColumn)):(s=e.endLineNumber,r=e.endColumn),new Sn(i,n,s,r)}intersectRanges(e){return Sn.intersectRanges(this,e)}static intersectRanges(e,t){let i=e.startLineNumber,n=e.startColumn,s=e.endLineNumber,r=e.endColumn;const a=t.startLineNumber,l=t.startColumn,c=t.endLineNumber,d=t.endColumn;return ic?(s=c,r=d):s===c&&(r=Math.min(r,d)),i>s||i===s&&n>r?null:new Sn(i,n,s,r)}equalsRange(e){return Sn.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 Sn.getEndPosition(this)}static getEndPosition(e){return new M(e.endLineNumber,e.endColumn)}getStartPosition(){return Sn.getStartPosition(this)}static getStartPosition(e){return new M(e.startLineNumber,e.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(e,t){return new Sn(this.startLineNumber,this.startColumn,e,t)}setStartPosition(e,t){return new Sn(e,t,this.endLineNumber,this.endColumn)}collapseToStart(){return Sn.collapseToStart(this)}static collapseToStart(e){return new Sn(e.startLineNumber,e.startColumn,e.startLineNumber,e.startColumn)}collapseToEnd(){return Sn.collapseToEnd(this)}static collapseToEnd(e){return new Sn(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn)}delta(e){return new Sn(this.startLineNumber+e,this.startColumn,this.endLineNumber+e,this.endColumn)}isSingleLine(){return this.startLineNumber===this.endLineNumber}static fromPositions(e,t=e){return new Sn(e.lineNumber,e.column,t.lineNumber,t.column)}static lift(e){return e?new Sn(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}},le=class Ca extends k{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 Ca.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 Ca(this.startLineNumber,this.startColumn,e,t):new Ca(e,t,this.startLineNumber,this.startColumn)}getPosition(){return new M(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new M(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(e,t){return this.getDirection()===0?new Ca(e,t,this.endLineNumber,this.endColumn):new Ca(this.endLineNumber,this.endColumn,e,t)}static fromPositions(e,t=e){return new Ca(e.lineNumber,e.column,t.lineNumber,t.column)}static fromRange(e,t){return t===0?new Ca(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn):new Ca(e.endLineNumber,e.endColumn,e.startLineNumber,e.startColumn)}static liftSelection(e){return new Ca(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;i0&&o.getLanguageId(r-1)===n;)r--;return new Joe(o,n,r,s+1,o.getStartOffset(r),o.getEndOffset(s))}class Joe{constructor(e,t,i,n,s,r){this._scopedLineTokensBrand=void 0,this._actual=e,this.languageId=t,this._firstTokenIndex=i,this._lastTokenIndex=n,this.firstCharOffset=s,this._lastCharOffset=r,this.languageIdCodec=e.languageIdCodec}getLineContent(){return this._actual.getLineContent().substring(this.firstCharOffset,this._lastCharOffset)}getLineLength(){return this._lastCharOffset-this.firstCharOffset}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)}toIViewLineTokens(){return this._actual.sliceAndInflate(this.firstCharOffset,this._lastCharOffset,0)}}function fl(o){return(o&3)!==0}class ti{static _nextVisibleColumn(e,t,i){return e===9?ti.nextRenderTabStop(t,i):kc(e)||UR(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){const n=Math.min(t-1,e.length),s=e.substring(0,n),r=new uy(s);let a=0;for(;!r.eol();){const l=hy(s,n,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(l,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;const n=e.length,s=new uy(e);let r=0,a=1;for(;!s.eol();){const l=hy(e,n,s.offset);s.nextGraphemeLength();const c=this._nextVisibleColumn(l,r,i),d=s.offset+1;if(c>=t){const h=t-r;return c-t!0,nre=()=>!1,sre=o=>o===" "||o===" ";class Ym{static shouldRecreate(e){return e.hasChanged(165)||e.hasChanged(148)||e.hasChanged(45)||e.hasChanged(85)||e.hasChanged(88)||e.hasChanged(89)||e.hasChanged(10)||e.hasChanged(11)||e.hasChanged(15)||e.hasChanged(13)||e.hasChanged(14)||e.hasChanged(20)||e.hasChanged(145)||e.hasChanged(141)||e.hasChanged(59)||e.hasChanged(104)||e.hasChanged(147)||e.hasChanged(93)}constructor(e,t,i,n){this.languageConfigurationService=n,this._cursorMoveConfigurationBrand=void 0,this._languageId=e;const s=i.options,r=s.get(165),a=s.get(59);this.readOnly=s.get(104),this.tabSize=t.tabSize,this.indentSize=t.indentSize,this.insertSpaces=t.insertSpaces,this.stickyTabStops=s.get(132),this.lineHeight=a.lineHeight,this.typicalHalfwidthCharacterWidth=a.typicalHalfwidthCharacterWidth,this.pageSize=Math.max(1,Math.floor(r.height/this.lineHeight)-2),this.useTabStops=s.get(145),this.trimWhitespaceOnDelete=s.get(141),this.wordSeparators=s.get(148),this.emptySelectionClipboard=s.get(45),this.copyWithSyntaxHighlighting=s.get(31),this.multiCursorMergeOverlapping=s.get(85),this.multiCursorPaste=s.get(88),this.multiCursorLimit=s.get(89),this.autoClosingBrackets=s.get(10),this.autoClosingComments=s.get(11),this.autoClosingQuotes=s.get(15),this.autoClosingDelete=s.get(13),this.autoClosingOvertype=s.get(14),this.autoSurround=s.get(20),this.autoIndent=s.get(16),this.wordSegmenterLocales=s.get(147),this.overtypeOnPaste=s.get(93),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:this._getShouldAutoClose(e,this.autoClosingQuotes,!0),comment:this._getShouldAutoClose(e,this.autoClosingComments,!1),bracket:this._getShouldAutoClose(e,this.autoClosingBrackets,!1)},this.autoClosingPairs=this.languageConfigurationService.getLanguageConfiguration(e).getAutoClosingPairs();const l=this.languageConfigurationService.getLanguageConfiguration(e).getSurroundingPairs();if(l)for(const d of l)this.surroundingPairs[d.open]=d.close;const c=this.languageConfigurationService.getLanguageConfiguration(e).comments;this.blockCommentStartToken=c?.blockCommentStartToken??null}get electricChars(){if(!this._electricChars){this._electricChars={};const e=this.languageConfigurationService.getLanguageConfiguration(this._languageId).electricCharacter?.getElectricCharacters();if(e)for(const t of e)this._electricChars[t]=!0}return this._electricChars}get inputMode(){return OM.getInputMode()}onElectricCharacter(e,t,i){const n=Lf(t,i-1),s=this.languageConfigurationService.getLanguageConfiguration(n.languageId).electricCharacter;return s?s.onElectricCharacter(e,n,i-n.firstCharOffset):null}normalizeIndentation(e){return PM(e,this.indentSize,this.insertSpaces)}_getShouldAutoClose(e,t,i){switch(t){case"beforeWhitespace":return sre;case"languageDefined":return this._getLanguageDefinedShouldAutoClose(e,i);case"always":return ire;case"never":return nre}}_getLanguageDefinedShouldAutoClose(e,t){const i=this.languageConfigurationService.getLanguageConfiguration(e).getAutoCloseBeforeSet(t);return n=>i.indexOf(n)!==-1}visibleColumnFromColumn(e,t){return ti.visibleColumnFromColumn(e.getLineContent(t.lineNumber),t.column,this.tabSize)}columnFromVisibleColumn(e,t,i){const n=ti.columnFromVisibleColumn(e.getLineContent(t),i,this.tabSize),s=e.getLineMinColumn(t);if(nr?r:n}}let nt=class bie{static fromModelState(e){return new ore(e)}static fromViewState(e){return new rre(e)}static fromModelSelection(e){const t=le.liftSelection(e),i=new mn(k.fromPositions(t.getSelectionStart()),0,0,t.getPosition(),0);return bie.fromModelState(i)}static fromModelSelections(e){const t=[];for(let i=0,n=e.length;is,c=n>r,d=nr||bn||_0&&n--,xf.columnSelect(e,t,i.fromViewLineNumber,i.fromViewVisualColumn,i.toViewLineNumber,n)}static columnSelectRight(e,t,i){let n=0;const s=Math.min(i.fromViewLineNumber,i.toViewLineNumber),r=Math.max(i.fromViewLineNumber,i.toViewLineNumber);for(let l=s;l<=r;l++){const c=t.getLineMaxColumn(l),d=e.visibleColumnFromColumn(t,new M(l,c));n=Math.max(n,d)}let a=i.toViewVisualColumn;return as&&(a=new M(s,e.getLineMaxColumn(s)));const l=k.fromPositions(i,a);t.addTrackedEditOperation(l,this._text)}computeCursorState(e,t){const n=t.getInverseEditOperations()[0].range;return le.fromPositions(n.getEndPosition())}}class are{constructor(e,t){this._range=e,this._text=t}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text)}computeCursorState(e,t){const n=t.getInverseEditOperations()[0].range;return le.fromRange(n,0)}}class Jy{constructor(e,t,i=!1){this._range=e,this._text=t,this.insertsAutoWhitespace=i}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text)}computeCursorState(e,t){const n=t.getInverseEditOperations()[0].range;return le.fromPositions(n.getStartPosition())}}class eL{constructor(e,t,i,n,s=!1){this._range=e,this._text=t,this._columnDeltaOffset=n,this._lineNumberDeltaOffset=i,this.insertsAutoWhitespace=s}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text)}computeCursorState(e,t){const n=t.getInverseEditOperations()[0].range;return le.fromPositions(n.getEndPosition().delta(this._lineNumberDeltaOffset,this._columnDeltaOffset))}}class lre{constructor(e){this._range=e}getEditOperations(e,t){const i=e.getValueInRange(this._range),n=this._range.getEndPosition(),s=n.lineNumber;let r=dV(e,n,i.length);r.lineNumber>s&&(r=new M(s,e.getLineMaxColumn(s)));const a=k.fromPositions(n,r);t.addTrackedEditOperation(a,"")}computeCursorState(e,t){const n=t.getInverseEditOperations()[0].range;return le.fromPositions(n.getEndPosition())}}class WM{constructor(e,t,i,n=!1){this._range=e,this._text=t,this._initialSelection=i,this._forceMoveMarkers=n,this._selectionId=null}getEditOperations(e,t){t.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=t.trackSelection(this._initialSelection)}computeCursorState(e,t){return t.getTrackedSelection(this._selectionId)}}function dV(o,e,t){if(t<0)throw new Error("Unexpected negative delta");const i=o.getLineCount();let n=new M(i,o.getLineMaxColumn(i));for(let s=e.lineNumber;s<=i;s++)if(s===e.lineNumber){const r=t-o.getLineMaxColumn(e.lineNumber)+e.column;if(r<=0){n=new M(e.lineNumber,e.column+t);break}t=r}else{const r=t-o.getLineMaxColumn(s);if(r<=0){n=new M(s,t);break}t=r}return n}class Ov{static whitespaceVisibleColumn(e,t,i){const n=e.length;let s=0,r=-1,a=-1;for(let l=0;le.getLineMinColumn(t.lineNumber))return t.delta(void 0,-x6(e.getLineContent(t.lineNumber),t.column-1));if(t.lineNumber>1){const i=t.lineNumber-1;return new M(i,e.getLineMaxColumn(i))}else return t}static leftPositionAtomicSoftTabs(e,t,i){if(t.column<=e.getLineIndentColumn(t.lineNumber)){const n=e.getLineMinColumn(t.lineNumber),s=e.getLineContent(t.lineNumber),r=Ov.atomicPosition(s,t.column-1,i,0);if(r!==-1&&r+1>=n)return new M(t.lineNumber,r+1)}return this.leftPosition(e,t)}static left(e,t,i){const n=e.stickyTabStops?ft.leftPositionAtomicSoftTabs(t,i,e.tabSize):ft.leftPosition(t,i);return new BM(n.lineNumber,n.column,0)}static moveLeft(e,t,i,n,s){let r,a;if(i.hasSelection()&&!n)r=i.selection.startLineNumber,a=i.selection.startColumn;else{const l=i.position.delta(void 0,-(s-1)),c=t.normalizePosition(ft.clipPositionColumn(l,t),0),d=ft.left(e,t,c);r=d.lineNumber,a=d.column}return i.move(n,r,a,0)}static clipPositionColumn(e,t){return new M(e.lineNumber,ft.clipRange(e.column,t.getLineMinColumn(e.lineNumber),t.getLineMaxColumn(e.lineNumber)))}static clipRange(e,t,i){return ei?i:e}static rightPosition(e,t,i){return id?(i=d,a?n=t.getLineMaxColumn(i):n=Math.min(t.getLineMaxColumn(i),n)):n=e.columnFromVisibleColumn(t,i,c),f?s=0:s=c-ti.visibleColumnFromColumn(t.getLineContent(i),n,e.tabSize),l!==void 0){const g=new M(i,n),p=t.normalizePosition(g,l);s=s+(n-p.column),i=p.lineNumber,n=p.column}return new BM(i,n,s)}static down(e,t,i,n,s,r,a){return this.vertical(e,t,i,n,s,i+r,a,4)}static moveDown(e,t,i,n,s){let r,a;i.hasSelection()&&!n?(r=i.selection.endLineNumber,a=i.selection.endColumn):(r=i.position.lineNumber,a=i.position.column);let l=0,c;do if(c=ft.down(e,t,r+l,a,i.leftoverVisibleColumns,s,!0),t.normalizePosition(new M(c.lineNumber,c.column),2).lineNumber>r)break;while(l++<10&&r+l1&&this._isBlankLine(t,s);)s--;for(;s>1&&!this._isBlankLine(t,s);)s--;return i.move(n,s,t.getLineMinColumn(s),0)}static moveToNextBlankLine(e,t,i,n){const s=t.getLineCount();let r=i.position.lineNumber;for(;r0,a=t.getLineFirstNonWhitespaceColumn(s.lineNumber);if(r&&a>0)return new k(s.lineNumber,a,n.lineNumber,n.column)}return new k(s.lineNumber,s.column,n.lineNumber,n.column)}static isAutoClosingPairDelete(e,t,i,n,s,r,a){if(t==="never"&&i==="never"||e==="never")return!1;for(let l=0,c=r.length;l=u.length+1)return!1;const f=u.charAt(h.column-2),g=n.get(f);if(!g)return!1;if(mh(f)){if(i==="never")return!1}else if(t==="never")return!1;const p=u.charAt(h.column-1);let _=!1;for(const b of g)b.open===f&&b.close===p&&(_=!0);if(!_)return!1;if(e==="auto"){let b=!1;for(let C=0,w=a.length;C1){const s=t.getLineContent(n.lineNumber),r=ts(s),a=r===-1?s.length+1:r+1;if(n.column<=a){const l=i.visibleColumnFromColumn(t,n),c=ti.prevIndentTabStop(l,i.indentSize),d=i.columnFromVisibleColumn(t,n.lineNumber,c);return new k(n.lineNumber,d,n.lineNumber,n.column)}}return k.fromPositions(kf.getPositionAfterDeleteLeft(n,t),n)}static getPositionAfterDeleteLeft(e,t){if(e.column>1){const i=kne(e.column-1,t.getLineContent(e.lineNumber));return e.with(void 0,i+1)}else if(e.lineNumber>1){const i=e.lineNumber-1;return new M(i,t.getLineMaxColumn(i))}else return e}static cut(e,t,i){const n=[];let s=null;i.sort((r,a)=>M.compare(r.getStartPosition(),a.getEndPosition()));for(let r=0,a=i.length;r1&&s?.endLineNumber!==c.lineNumber?(d=c.lineNumber-1,h=t.getLineMaxColumn(c.lineNumber-1),u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber)):(d=c.lineNumber,h=1,u=c.lineNumber,f=t.getLineMaxColumn(c.lineNumber));const g=new k(d,h,u,f);s=g,g.isEmpty()?n[r]=null:n[r]=new Dn(g,"")}else n[r]=null;else n[r]=new Dn(l,"")}return new ws(0,n,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}const If={DateTimeFormat(o,e){return new Ln(()=>{try{return new Intl.DateTimeFormat(o,e)}catch{return new Intl.DateTimeFormat(void 0,e)}})},Collator(o,e){return new Ln(()=>{try{return new Intl.Collator(o,e)}catch{return new Intl.Collator(void 0,e)}})},Segmenter(o,e){return new Ln(()=>{try{return new Intl.Segmenter(o,e)}catch{return new Intl.Segmenter(void 0,e)}})},Locale(o,e){return new Ln(()=>{try{return new Intl.Locale(o,e)}catch{return new Intl.Locale(Ju,e)}})},NumberFormat(o,e){return new Ln(()=>{try{return new Intl.NumberFormat(o,e)}catch{return new Intl.NumberFormat(void 0,e)}})}};function tL(o){return o<0?0:o>255?255:o|0}function Xm(o){return o<0?0:o>4294967295?4294967295:o|0}class Qm{constructor(e){const t=tL(e);this._defaultValue=t,this._asciiMap=Qm._createAsciiMap(t),this._map=new Map}static _createAsciiMap(e){const t=new Uint8Array(256);return t.fill(e),t}set(e,t){const i=tL(t);e>=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 iL{constructor(){this._actual=new Qm(0)}add(e){this._actual.set(e,1)}has(e){return this._actual.get(e)===1}clear(){return this._actual.clear()}}class cre extends Qm{constructor(e,t){super(0),this._segmenter=null,this._cachedLine=null,this._cachedSegments=[],this.intlSegmenterLocales=t,this.intlSegmenterLocales.length>0?this._segmenter=If.Segmenter(this.intlSegmenterLocales,{granularity:"word"}):this._segmenter=null;for(let i=0,n=e.length;it)break;i=n}return i}findNextIntlWordAtOrAfterOffset(e,t){for(const i of this._getIntlSegmenterWordsOnLine(e))if(!(i.index=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return this._createIntlWord(s,l);if(l===0){if(n===2)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=1}else if(l===2){if(n===1)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1));n=2}else if(l===1&&n!==0)return this._createWord(e,n,l,r+1,this._findEndOfWord(e,t,n,r+1))}return n!==0?this._createWord(e,n,1,0,this._findEndOfWord(e,t,n,0)):null}static _findEndOfWord(e,t,i,n){const s=t.findNextIntlWordAtOrAfterOffset(e,n),r=e.length;for(let a=n;a=0;r--){const a=e.charCodeAt(r),l=t.get(a);if(s&&r===s.index)return r;if(l===1||i===1&&l===2||i===2&&l===0)return r+1}return 0}static moveWordLeft(e,t,i,n,s){let r=i.lineNumber,a=i.column;a===1&&r>1&&(r=r-1,a=t.getLineMaxColumn(r));let l=gt._findPreviousWordOnLine(e,t,new M(r,a));if(n===0)return new M(r,l?l.start+1:1);if(n===1)return!s&&l&&l.wordType===2&&l.end-l.start===1&&l.nextCharClass===0&&(l=gt._findPreviousWordOnLine(e,t,new M(r,l.start+1))),new M(r,l?l.start+1:1);if(n===3){for(;l&&l.wordType===2;)l=gt._findPreviousWordOnLine(e,t,new M(r,l.start+1));return new M(r,l?l.start+1:1)}return l&&a<=l.end+1&&(l=gt._findPreviousWordOnLine(e,t,new M(r,l.start+1))),new M(r,l?l.end+1:1)}static _moveWordPartLeft(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===1)return i>1?new M(i-1,e.getLineMaxColumn(i-1)):t;const s=e.getLineContent(i);for(let r=t.column-1;r>1;r--){const a=s.charCodeAt(r-2),l=s.charCodeAt(r-1);if(a===95&&l!==95)return new M(i,r);if(a===45&&l!==45)return new M(i,r);if((rh(a)||dy(a))&&hl(l))return new M(i,r);if(hl(a)&&hl(l)&&r+1=l.start+1&&(l=gt._findNextWordOnLine(e,t,new M(s,l.end+1))),l?r=l.start+1:r=t.getLineMaxColumn(s);return new M(s,r)}static _moveWordPartRight(e,t){const i=t.lineNumber,n=e.getLineMaxColumn(i);if(t.column===n)return i1?c=1:(l--,c=n.getLineMaxColumn(l)):(d&&c<=d.end+1&&(d=gt._findPreviousWordOnLine(i,n,new M(l,d.start+1))),d?c=d.end+1:c>1?c=1:(l--,c=n.getLineMaxColumn(l))),new k(l,c,a.lineNumber,a.column)}static deleteInsideWord(e,t,i){if(!i.isEmpty())return i;const n=new M(i.positionLineNumber,i.positionColumn),s=this._deleteInsideWordWhitespace(t,n);return s||this._deleteInsideWordDetermineDeleteRange(e,t,n)}static _charAtIsWhitespace(e,t){const i=e.charCodeAt(t);return i===32||i===9}static _deleteInsideWordWhitespace(e,t){const i=e.getLineContent(t.lineNumber),n=i.length;if(n===0)return null;let s=Math.max(t.column-2,0);if(!this._charAtIsWhitespace(i,s))return null;let r=Math.min(t.column-1,n-1);if(!this._charAtIsWhitespace(i,r))return null;for(;s>0&&this._charAtIsWhitespace(i,s-1);)s--;for(;r+11?new k(i.lineNumber-1,t.getLineMaxColumn(i.lineNumber-1),i.lineNumber,1):i.lineNumberh.start+1<=i.column&&i.column<=h.end+1,a=(h,u)=>(h=Math.min(h,i.column),u=Math.max(u,i.column),new k(i.lineNumber,h,i.lineNumber,u)),l=h=>{let u=h.start+1,f=h.end+1,g=!1;for(;f-11&&this._charAtIsWhitespace(n,u-2);)u--;return a(u,f)},c=gt._findPreviousWordOnLine(e,t,i);if(c&&r(c))return l(c);const d=gt._findNextWordOnLine(e,t,i);return d&&r(d)?l(d):c&&d?a(c.end+1,d.start+1):c?a(c.start+1,c.end+1):d?a(d.start+1,d.end+1):a(1,s+1)}static _deleteWordPartLeft(e,t){if(!t.isEmpty())return t;const i=t.getPosition(),n=gt._moveWordPartLeft(e,i);return new k(i.lineNumber,i.column,n.lineNumber,n.column)}static _findFirstNonWhitespaceChar(e,t){const i=e.length;for(let n=t;n=u.start+1&&(u=gt._findNextWordOnLine(i,n,new M(l,u.end+1))),u?c=u.start+1:c!!e)}function gl(o){if(!o||typeof o!="object"||o instanceof RegExp)return o;const e=Array.isArray(o)?[]:{};return Object.entries(o).forEach(([t,i])=>{e[t]=i&&typeof i=="object"?gl(i):i}),e}function dre(o){if(!o||typeof o!="object")return o;const e=[o];for(;e.length>0;){const t=e.shift();Object.freeze(t);for(const i in t)if(uV.call(t,i)){const n=t[i];typeof n=="object"&&!Object.isFrozen(n)&&!xie(n)&&e.push(n)}}return o}const uV=Object.prototype.hasOwnProperty;function fV(o,e){return HM(o,e,new Set)}function HM(o,e,t){if(fr(o))return o;const i=e(o);if(typeof i<"u")return i;if(Array.isArray(o)){const n=[];for(const s of o)n.push(HM(s,e,t));return n}if(Hi(o)){if(t.has(o))throw new Error("Cannot clone recursive data-structure");t.add(o);const n={};for(const s in o)uV.call(o,s)&&(n[s]=HM(o[s],e,t));return t.delete(o),n}return o}function oL(o,e,t=!0){return Hi(o)?(Hi(e)&&Object.keys(e).forEach(i=>{i in o?t&&(Hi(o[i])&&Hi(e[i])?oL(o[i],e[i],t):o[i]=e[i]):o[i]=e[i]}),o):e}function po(o,e){if(o===e)return!0;if(o==null||e===null||e===void 0||typeof o!=typeof e||typeof o!="object"||Array.isArray(o)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(o)){if(o.length!==e.length)return!1;for(t=0;tc&&(d=c,h=e.model.getLineMaxColumn(d)),nt.fromModelState(new mn(new k(r.lineNumber,1,d,h),2,0,new M(d,h),0))}const l=t.modelState.selectionStart.getStartPosition().lineNumber;if(r.lineNumberl){const c=e.getLineCount();let d=a.lineNumber+1,h=1;return d>c&&(d=c,h=e.getLineMaxColumn(d)),nt.fromViewState(t.viewState.move(!0,d,h,0))}else{const c=t.modelState.selectionStart.getEndPosition();return nt.fromModelState(t.modelState.move(!0,c.lineNumber,c.column,0))}}static word(e,t,i,n){const s=e.model.validatePosition(n);return nt.fromModelState(gt.word(e.cursorConfig,e.model,t.modelState,i,s))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new nt(t.modelState,t.viewState);const i=t.viewState.position.lineNumber,n=t.viewState.position.column;return nt.fromViewState(new mn(new k(i,n,i,n),0,0,new M(i,n),0))}static moveTo(e,t,i,n,s){if(i){if(t.modelState.selectionStartKind===1)return this.word(e,t,i,n);if(t.modelState.selectionStartKind===2)return this.line(e,t,i,n,s)}const r=e.model.validatePosition(n),a=s?e.coordinatesConverter.validateViewPosition(new M(s.lineNumber,s.column),r):e.coordinatesConverter.convertModelPositionToViewPosition(r);return nt.fromViewState(t.viewState.move(i,a.lineNumber,a.column,0))}static simpleMove(e,t,i,n,s,r){switch(i){case 0:return r===4?this._moveHalfLineLeft(e,t,n):this._moveLeft(e,t,n,s);case 1:return r===4?this._moveHalfLineRight(e,t,n):this._moveRight(e,t,n,s);case 2:return r===2?this._moveUpByViewLines(e,t,n,s):this._moveUpByModelLines(e,t,n,s);case 3:return r===2?this._moveDownByViewLines(e,t,n,s):this._moveDownByModelLines(e,t,n,s);case 4:return r===2?t.map(a=>nt.fromViewState(ft.moveToPrevBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>nt.fromModelState(ft.moveToPrevBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 5:return r===2?t.map(a=>nt.fromViewState(ft.moveToNextBlankLine(e.cursorConfig,e,a.viewState,n))):t.map(a=>nt.fromModelState(ft.moveToNextBlankLine(e.cursorConfig,e.model,a.modelState,n)));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,s){const r=e.getCompletelyVisibleViewRange(),a=e.coordinatesConverter.convertViewRangeToModelRange(r);switch(i){case 11:{const l=this._firstLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 13:{const l=this._lastLineNumberInRange(e.model,a,s),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 12:{const l=Math.round((a.startLineNumber+a.endLineNumber)/2),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],n,l,c)]}case 14:{const l=[];for(let c=0,d=t.length;ci.endLineNumber-1?r=i.endLineNumber-1:s{const a=e.getTextDirection(s.viewState.position.lineNumber)===Wo.RTL;return nt.fromViewState(a?ft.moveRight(e.cursorConfig,e,s.viewState,i,n):ft.moveLeft(e.cursorConfig,e,s.viewState,i,n))})}static _moveHalfLineLeft(e,t,i){const n=[];for(let s=0,r=t.length;s{const a=e.getTextDirection(s.viewState.position.lineNumber)===Wo.RTL;return nt.fromViewState(a?ft.moveLeft(e.cursorConfig,e,s.viewState,i,n):ft.moveRight(e.cursorConfig,e,s.viewState,i,n))})}static _moveHalfLineRight(e,t,i){const n=[];for(let s=0,r=t.length;s/?";function pre(o=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(const t of lL)o.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}const UM=pre();function $M(o){let e=UM;if(o&&o instanceof RegExp)if(o.global)e=o;else{let t="g";o.ignoreCase&&(t+="i"),o.multiline&&(t+="m"),o.unicode&&(t+="u"),e=new RegExp(o.source,t)}return e.lastIndex=0,e}const pV=new es;pV.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function Bv(o,e,t,i,n){if(e=$M(e),n||(n=Ge.first(pV)),t.length>n.maxLen){let c=o-n.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,o+n.maxLen/2),Bv(o,e,t,i,n)}const s=Date.now(),r=o-1-i;let a=-1,l=null;for(let c=1;!(Date.now()-s>=n.timeBudget);c++){const d=r-n.windowSize*c;e.lastIndex=Math.max(0,d);const h=mre(e,t,r,a);if(!h&&l||(l=h,d<=0))break;a=d}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 mre(o,e,t,i){let n;for(;n=o.exec(e);){const s=n.index||0;if(s<=t&&o.lastIndex>=t)return n;if(i>0&&s>i)return null}return null}const LC=class LC{constructor(e){if(e.autoClosingPairs?this._autoClosingPairs=e.autoClosingPairs.map(t=>new zM(t)):e.brackets?this._autoClosingPairs=e.brackets.map(t=>new zM({open:t[0],close:t[1]})):this._autoClosingPairs=[],e.__electricCharacterSupport&&e.__electricCharacterSupport.docComment){const t=e.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new zM({open:t.open,close:t.close||""}))}this._autoCloseBeforeForQuotes=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:LC.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets=typeof e.autoCloseBefore=="string"?e.autoCloseBefore:LC.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}};LC.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=`;:.,=}])> `,LC.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS=`'"\`;:.,=}])> `;let jM=LC,qM;function mV(){return qM||(qM=new TextDecoder("UTF-16LE")),qM}let KM;function _re(){return KM||(KM=new TextDecoder("UTF-16BE")),KM}let GM;function _V(){return GM||(GM=d6()?mV():_re()),GM}function bre(o,e,t){const i=new Uint16Array(o.buffer,e,t);return t>0&&(i[0]===65279||i[0]===65534)?Cre(o,e,t):mV().decode(i)}function Cre(o,e,t){const i=[];let n=0;for(let s=0;s=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,[d,h]=a;return l===d||l===h||c===d||c===h},n=(r,a)=>{const l=Math.min(r,a),c=Math.max(r,a);for(let d=0;d0&&s.push({open:a,close:l})}return s}class wre{constructor(e,t){this._richEditBracketsBrand=void 0;const i=vre(t);this.brackets=i.map((n,s)=>new cL(e,s,n.open,n.close,Sre(n.open,n.close,i,s),yre(n.open,n.close,i,s))),this.forwardRegex=Lre(this.brackets),this.reversedRegex=xre(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const n of this.brackets){for(const s of n.open)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,s.length);for(const s of n.close)this.textIsBracket[s]=n,this.textIsOpenBracket[s]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,s.length)}}}function bV(o,e,t,i){for(let n=0,s=e.length;n=0&&i.push(a);for(const a of r.close)a.indexOf(o)>=0&&i.push(a)}}function CV(o,e){return o.length-e.length}function dL(o){if(o.length<=1)return o;const e=[],t=new Set;for(const i of o)t.has(i)||(e.push(i),t.add(i));return e}function Sre(o,e,t,i){let n=[];n=n.concat(o),n=n.concat(e);for(let s=0,r=n.length;s=0;r--)n[s++]=i.charCodeAt(r);return _V().decode(n)}let e=null,t=null;return function(n){return e!==n&&(e=n,t=o(e)),t}})();class Qr{static _findPrevBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=i.length-(s.index||0),a=s[0].length,l=n+r;return new k(t,l-a+1,t,l+1)}static findPrevBracketInRange(e,t,i,n,s){const a=ZM(i).substring(i.length-s,i.length-n);return this._findPrevBracketInText(e,t,a,n)}static findNextBracketInText(e,t,i,n){const s=i.match(e);if(!s)return null;const r=s.index||0,a=s[0].length;if(a===0)return null;const l=n+r;return new k(t,l+1,t,l+1+a)}static findNextBracketInRange(e,t,i,n,s){const r=i.substring(n,s);return this.findNextBracketInText(e,t,r,n)}}class Ire{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 Tc(e)}onElectricCharacter(e,t,i){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const n=t.findTokenIndexAtOffset(i-1);if(fl(t.getStandardTokenType(n)))return null;const s=this._richEditBrackets.reversedRegex,r=t.getLineContent().substring(0,i-1)+e,a=Qr.findPrevBracketInRange(s,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 d=t.getActualLineContentBefore(a.startColumn-1);return/^\s*$/.test(d)?{matchOpenBracket:l}:null}}function hL(o){return o.global&&(o.lastIndex=0),!0}class Dre{constructor(e){this._indentationRules=e}shouldIncrease(e){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&hL(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(e))}shouldDecrease(e){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&hL(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(e))}shouldIndentNextLine(e){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&hL(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(e))}shouldIgnore(e){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&hL(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 Jm{constructor(e){e=e||{},e.brackets=e.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],e.brackets.forEach(t=>{const i=Jm._createOpenBracketRegExp(t[0]),n=Jm._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 s=0,r=this._regExpRules.length;sc.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 s=0,r=this._brackets.length;s=2&&i.length>0){for(let s=0,r=this._brackets.length;s"u"?t:s}function Nre(o){return o.replace(/^\[/,"").replace(/]$/g,"").replace(/\]\[/g,", ")}const ci=Fe("languageService");class pl{constructor(e,t=[],i=!1){this.ctor=e,this.staticArguments=t,this.supportsDelayedInstantiation=i}}const yV=[];function je(o,e,t){e instanceof pl||(e=new pl(e,[],!!t)),yV.push([o,e])}function LV(){return yV}const _i=Object.freeze({text:"text/plain",binary:"application/octet-stream",unknown:"application/unknown",markdown:"text/markdown",latex:"text/latex",uriList:"text/uri-list",html:"text/html"}),uL={JSONContribution:"base.contributions.json"};function Tre(o){return o.length>0&&o.charAt(o.length-1)==="#"?o.substring(0,o.length-1):o}class Rre extends P{constructor(){super(...arguments),this.schemasById={},this._onDidChangeSchema=this._register(new A)}registerSchema(e,t,i){const n=Tre(e);this.schemasById[n]=t,this._onDidChangeSchema.fire(e),i&&i.add(fe(()=>{delete this.schemasById[n],this._onDidChangeSchema.fire(e)}))}notifySchemaChanged(e){this._onDidChangeSchema.fire(e)}}const Mre=new Rre;ei.add(uL.JSONContribution,Mre);let Bo;const XM=globalThis.vscode;if(typeof XM<"u"&&typeof XM.context<"u"){const o=XM.context.configuration();if(o)Bo=o.product;else throw new Error("Sandbox: unable to resolve product configuration from preload script.")}else if(globalThis._VSCODE_PRODUCT_JSON&&globalThis._VSCODE_PACKAGE_JSON){if(Bo=globalThis._VSCODE_PRODUCT_JSON,py.VSCODE_DEV&&Object.assign(Bo,{nameShort:`${Bo.nameShort} Dev`,nameLong:`${Bo.nameLong} Dev`,dataFolderName:`${Bo.dataFolderName}-dev`,serverDataFolderName:Bo.serverDataFolderName?`${Bo.serverDataFolderName}-dev`:void 0}),!Bo.version){const o=globalThis._VSCODE_PACKAGE_JSON;Object.assign(Bo,{version:o.version})}}else Bo={},Object.keys(Bo).length===0&&Object.assign(Bo,{version:"1.104.0-dev",nameShort:"Code - OSS Dev",nameLong:"Code - OSS Dev",applicationName:"code-oss",dataFolderName:".vscode-oss",urlProtocol:"code-oss",reportIssueUrl:"https://github.com/microsoft/vscode/issues/new",licenseName:"MIT",licenseUrl:"https://github.com/microsoft/vscode/blob/main/LICENSE.txt",serverLicenseUrl:"https://github.com/microsoft/vscode/blob/main/LICENSE.txt"});const fL=Bo,Ta={Configuration:"base.contributions.configuration"},gL="vscode://schemas/settings/resourceLanguage",xV=ei.as(uL.JSONContribution);class Are extends P{constructor(){super(),this.registeredConfigurationDefaults=[],this.overrideIdentifiers=new Set,this._onDidSchemaChange=this._register(new A),this._onDidUpdateConfiguration=this._register(new A),this.configurationDefaultsOverrides=new Map,this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:m(1664,"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={},xV.registerSchema(gL,this.resourceLanguageSettingsSchema),this.registerOverridePropertyPatternKey()}registerConfiguration(e,t=!0){return this.registerConfigurations([e],t),e}registerConfigurations(e,t=!0){const i=new Set;this.doRegisterConfigurations(e,t,i),xV.registerSchema(gL,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){this.registeredConfigurationDefaults.push(...e);const i=[];for(const{overrides:n,source:s}of e)for(const r in n){t.add(r);const a=this.configurationDefaultsOverrides.get(r)??this.configurationDefaultsOverrides.set(r,{configurationDefaultOverrides:[]}).get(r),l=n[r];if(a.configurationDefaultOverrides.push({value:l,source:s}),bh.test(r)){const c=this.mergeDefaultConfigurationsForOverrideIdentifier(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c,this.updateDefaultOverrideProperty(r,c,s),i.push(...pL(r))}else{const c=this.mergeDefaultConfigurationsForConfigurationProperty(r,l,s,a.configurationDefaultOverrideValue);if(!c)continue;a.configurationDefaultOverrideValue=c;const d=this.configurationProperties[r];d&&(this.updatePropertyDefaultValue(r,d),this.updateSchema(r,d))}}this.doRegisterOverrideIdentifiers(i)}updateDefaultOverrideProperty(e,t,i){const n={section:{id:this.defaultLanguageConfigurationOverridesNode.id,title:this.defaultLanguageConfigurationOverridesNode.title,order:this.defaultLanguageConfigurationOverridesNode.order,extensionInfo:this.defaultLanguageConfigurationOverridesNode.extensionInfo},type:"object",default:t.value,description:m(1665,"Configure settings to be overridden for {0}.",Nre(e)),$ref:gL,defaultDefaultValue:t.value,source:i,defaultValueSource:i};this.configurationProperties[e]=n,this.defaultLanguageConfigurationOverridesNode.properties[e]=n}mergeDefaultConfigurationsForOverrideIdentifier(e,t,i,n){const s=n?.value||{},r=n?.source??new Map;if(!(r instanceof Map)){console.error("objectConfigurationSources is not a Map");return}for(const a of Object.keys(t)){const l=t[a];if(Hi(l)&&(Hn(s[a])||Hi(s[a]))){if(s[a]={...s[a]??{},...l},i)for(const d in l)r.set(`${a}.${d}`,i)}else s[a]=l,i?r.set(a,i):r.delete(a)}return{value:s,source:r}}mergeDefaultConfigurationsForConfigurationProperty(e,t,i,n){const s=this.configurationProperties[e],r=n?.value??s?.defaultDefaultValue;let a=i;if(Hi(t)&&(s!==void 0&&s.type==="object"||s===void 0&&(Hn(r)||Hi(r)))){if(a=n?.source??new Map,!(a instanceof Map)){console.error("defaultValueSource is not a Map");return}for(const c in t)i&&a.set(`${e}.${c}`,i);t={...Hi(r)?r:{},...t}}return{value:t,source:a}}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,s=4,r){s=fr(e.scope)?s:e.scope;const a=e.properties;if(a)for(const c in a){const d=a[c];if(d.section={id:e.id,title:e.title,order:e.order,extensionInfo:e.extensionInfo},t&&Fre(c,d,i?.id)){delete a[c];continue}d.source=i,d.defaultDefaultValue=a[c].default,this.updatePropertyDefaultValue(c,d),bh.test(c)?d.scope=void 0:(d.scope=fr(d.scope)?s:d.scope,d.restricted=fr(d.restricted)?!!n?.includes(c):d.restricted),d.experiment?d.tags?.some(f=>f.toLowerCase()==="onexp")||(d.tags=d.tags??[],d.tags.push("onExP")):d.tags?.some(f=>f.toLowerCase()==="onexp")&&(console.error(`Invalid tag 'onExP' found for property '${c}'. Please use 'experiment' property instead.`),d.experiment={mode:"startup"});const h=a[c].hasOwnProperty("included")&&!a[c].included,u=a[c].policy?.name;h?(this.excludedConfigurationProperties[c]=a[c],u&&(this.policyConfigurations.set(u,c),r.add(c)),delete a[c]):(r.add(c),u&&this.policyConfigurations.set(u,c),this.configurationProperties[c]=a[c],!a[c].deprecationMessage&&a[c].markdownDeprecationMessage&&(a[c].deprecationMessage=a[c].markdownDeprecationMessage))}const l=e.allOf;if(l)for(const c of l)this.validateAndRegisterProperties(c,t,i,n,s,r)}getConfigurationProperties(){return this.configurationProperties}getPolicyConfigurations(){return this.policyConfigurations}getExcludedConfigurationProperties(){return this.excludedConfigurationProperties}registerJSONConfiguration(e){const t=i=>{const n=i.properties;if(n)for(const r in n)this.updateSchema(r,n[r]);i.allOf?.forEach(t)};t(e)}updateSchema(e,t){switch(t.scope){case 1:break;case 2:break;case 3:break;case 7:break;case 4:break;case 5:break;case 6:this.resourceLanguageSettingsSchema.properties[e]=t;break}}updateOverridePropertyPatternKey(){for(const e of this.overrideIdentifiers.values()){const t=`[${e}]`,i={type:"object",description:m(1666,"Configure editor settings to be overridden for a language."),errorMessage:m(1667,"This setting does not support per-language configuration."),$ref:gL};this.updatePropertyDefaultValue(t,i)}}registerOverridePropertyPatternKey(){m(1668,"Configure editor settings to be overridden for a language."),m(1669,"This setting does not support per-language configuration."),this._onDidSchemaChange.fire()}updatePropertyDefaultValue(e,t){const i=this.configurationDefaultsOverrides.get(e)?.configurationDefaultOverrideValue;let n,s;i&&(!t.disallowConfigurationDefault||!i.source)&&(n=i.value,s=i.source),Hn(n)&&(n=t.defaultDefaultValue,s=void 0),Hn(n)&&(n=Ore(t.type)),t.default=n,t.defaultValueSource=s}}const kV="\\[([^\\]]+)\\]",IV=new RegExp(kV,"g"),Pre=`^(${kV})+$`,bh=new RegExp(Pre);function pL(o){const e=[];if(bh.test(o)){let t=IV.exec(o);for(;t?.length;){const i=t[1].trim();i&&e.push(i),t=IV.exec(o)}}return Tc(e)}function Ore(o){switch(Array.isArray(o)?o[0]:o){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const mL=new Are;ei.add(Ta.Configuration,mL);function Fre(o,e,t){return o.trim()?bh.test(o)?m(1671,"Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",o):mL.getConfigurationProperties()[o]!==void 0&&(!t||!Wre.has(t.toLowerCase()))?m(1672,"Cannot register '{0}'. This property is already registered.",o):e.policy?.name&&mL.getPolicyConfigurations().get(e.policy?.name)!==void 0?m(1673,"Cannot register '{0}'. The associated policy {1} is already registered with {2}.",o,e.policy?.name,mL.getPolicyConfigurations().get(e.policy?.name)):null:m(1670,"Cannot register an empty property")}const Wre=new Set(fL.defaultChatAgent?[fL.defaultChatAgent.extensionId,fL.defaultChatAgent.chatExtensionId].map(o=>o.toLowerCase()):[]),Bre={ModesRegistry:"editor.modesRegistry"};class Hre extends P{constructor(){super(),this._onDidChangeLanguages=this._register(new A),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 zre(this,a,l),closing:l}}),s=new PR(a=>{const l=new Set,c=new Set;return{info:new Ure(this,a,l,c),opening:l,openingColorized:c}});for(const[a,l]of i){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.opening.add(c.info)}const r=t.colorizedBracketPairs?DV(t.colorizedBracketPairs):i.filter(a=>!(a[0]==="<"&&a[1]===">"));for(const[a,l]of r){const c=n.get(a),d=s.get(l);c.closing.add(d.info),d.openingColorized.add(c.info),d.opening.add(c.info)}this._openingBrackets=new Map([...n.cachedValues].map(([a,l])=>[a,l.info])),this._closingBrackets=new Map([...s.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)}getBracketRegExp(e){const t=Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]);return Hv(t,e)}}function DV(o){return o.filter(([e,t])=>e!==""&&t!=="")}class EV{constructor(e,t){this.config=e,this.bracketText=t}get languageId(){return this.config.languageId}}class zre extends EV{constructor(e,t,i){super(e,t),this.openedBrackets=i,this.isOpeningBracket=!0}}class Ure extends EV{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 $re=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},NV=function(o,e){return function(t,i){e(t,i,o)}};class QM{constructor(e){this.languageId=e}affects(e){return this.languageId?this.languageId===e:!0}}const Qt=Fe("languageConfigurationService");let JM=class extends P{constructor(e,t){super(),this.configurationService=e,this.languageService=t,this._registry=this._register(new Gre),this.onDidChangeEmitter=this._register(new A),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const i=new Set(Object.values(e2));this._register(this.configurationService.onDidChangeConfiguration(n=>{const s=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(s)this.configurations.clear(),this.onDidChangeEmitter.fire(new QM(void 0));else for(const a of r)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new QM(a)))})),this._register(this._registry.onDidChange(n=>{this.configurations.delete(n.languageId),this.onDidChangeEmitter.fire(new QM(n.languageId))}))}register(e,t,i){return this._registry.register(e,t,i)}getLanguageConfiguration(e){let t=this.configurations.get(e);return t||(t=jre(e,this._registry,this.configurationService,this.languageService),this.configurations.set(e,t)),t}};JM=$re([NV(0,Me),NV(1,ci)],JM);function jre(o,e,t,i){let n=e.getLanguageConfiguration(o);if(!n){if(!i.isRegisteredLanguageId(o))return new t_(o,{});n=new t_(o,{})}const s=qre(n.languageId,t),r=MV([n.underlyingConfig,s]);return new t_(n.languageId,r)}const e2={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function qre(o,e){const t=e.getValue(e2.brackets,{overrideIdentifier:o}),i=e.getValue(e2.colorizedBracketPairs,{overrideIdentifier:o});return{brackets:TV(t),colorizedBracketPairs:TV(i)}}function TV(o){if(Array.isArray(o))return o.map(e=>{if(!(!Array.isArray(e)||e.length!==2))return[e[0],e[1]]}).filter(e=>!!e)}function RV(o,e,t){const i=o.getLineContent(e);let n=It(i);return n.length>t-1&&(n=n.substring(0,t-1)),n}class Kre{constructor(e){this.languageId=e,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(e,t){const i=new AV(e,t,++this._order);return this._entries.push(i),this._resolved=null,fe(()=>{for(let n=0;ne.configuration)))}}function MV(o){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 o)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 AV{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 PV{constructor(e){this.languageId=e}}class Gre extends P{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._register(this.register(Ho,{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 Kre(e),this._entries.set(e,n));const s=n.register(t,i);return this._onDidChange.fire(new PV(e)),fe(()=>{s.dispose(),this._onDidChange.fire(new PV(e))})}getLanguageConfiguration(e){return this._entries.get(e)?.getResolvedConfiguration()||null}}class t_{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 Jm(this.underlyingConfig):null,this.comments=t_._handleComments(this.underlyingConfig),this.characterPair=new jM(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||UM,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new Dre(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new Vre(e,this.underlyingConfig)}getWordDefinition(){return $M(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new wre(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new Ire(this.brackets)),this._electricCharacter}onEnter(e,t,i,n){return this._onEnterSupport?this._onEnterSupport.onEnter(e,t,i,n):null}getAutoClosingPairs(){return new gre(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&&(typeof t.lineComment=="string"?i.lineCommentToken=t.lineComment:(i.lineCommentToken=t.lineComment.comment,i.lineCommentNoIndent=t.lineComment.noIndent)),t.blockComment){const[n,s]=t.blockComment;i.blockCommentStartToken=n,i.blockCommentEndToken=s}return i}}je(Qt,JM,1);class jn{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 s=`color: ${t[i]};`;n&1&&(s+="font-style: italic;"),n&2&&(s+="font-weight: bold;");let r="";return n&4&&(r+=" underline"),n&8&&(r+=" line-through"),r&&(s+=`text-decoration:${r};`),s}static getPresentationFromMetadata(e){const t=this.getForeground(e),i=this.getFontStyle(e);return{foreground:t,italic:!!(i&1),bold:!!(i&2),underline:!!(i&4),strikethrough:!!(i&8)}}}class ge{static fromTo(e,t){return new ge(e,t)}static addRange(e,t){let i=0;for(;it))return new ge(e,t)}static ofLength(e){return new ge(0,e)}static ofStartAndLength(e,t){return new ge(e,e+t)}static emptyAt(e){return new ge(e,e)}constructor(e,t){if(this.start=e,this.endExclusive=t,e>t)throw new Ce(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(e){return new ge(this.start+e,this.endExclusive+e)}deltaStart(e){return new ge(this.start+e,this.endExclusive)}deltaEnd(e){return new ge(this.start,this.endExclusive+e)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}equals(e){return this.start===e.start&&this.endExclusive===e.endExclusive}contains(e){return this.start<=e&&e=e.endExclusive}slice(e){return e.slice(this.start,this.endExclusive)}substring(e){return e.substring(this.start,this.endExclusive)}clip(e){if(this.isEmpty)throw new Ce(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,e))}clipCyclic(e){if(this.isEmpty)throw new Ce(`Invalid clipping range: ${this.toString()}`);return e=this.endExclusive?this.start+(e-this.start)%this.length:e}forEach(e){for(let t=this.start;te.toString()).join(", ")}intersectsStrict(e){let t=0;for(;te+t.length,0)}}const qd=class qd{static createEmpty(e,t){const i=qd.defaultTokenMetadata,n=new Uint32Array(2);return n[0]=e.length,n[1]=i,new qd(n,e,t)}static createFromTextAndMetadata(e,t){let i=0,n="";const s=new Array;for(const{text:r,metadata:a}of e)s.push(i+r.length,a),i+=r.length,n+=r;return new qd(new Uint32Array(s),n,t)}static convertToEndOffset(e,t){const n=(e.length>>>1)-1;for(let s=0;s>>1)-1;for(;it&&(n=s)}return i}constructor(e,t,i){this._lineTokensBrand=void 0,(e.length>1?e[e.length-2]:0)!==t.length&&De(new Error("Token length and text length do not match!")),this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}getTextLength(){return this._text.length}equals(e){return e instanceof qd?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,s=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=jn.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){const t=this._tokens[(e<<1)+1];return jn.getTokenType(t)}getForeground(e){const t=this._tokens[(e<<1)+1];return jn.getForeground(t)}getClassName(e){const t=this._tokens[(e<<1)+1];return jn.getClassNameFromMetadata(t)}getInlineStyle(e,t){const i=this._tokens[(e<<1)+1];return jn.getInlineStyleFromMetadata(i,t)}getPresentation(e){const t=this._tokens[(e<<1)+1];return jn.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return qd.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new i2(this,e,t,i)}sliceZeroCopy(e){return this.sliceAndInflate(e.start,e.endExclusive,0)}withInserted(e){if(e.length===0)return this;let t=0,i=0,n="";const s=new Array;let r=0;for(;;){const a=tr){n+=this._text.substring(r,l.offset);const c=this._tokens[(t<<1)+1];s.push(n.length,c),r=l.offset}n+=l.text,s.push(n.length,l.tokenMetadata),i++}else break}return new qd(new Uint32Array(s),n,this.languageIdCodec)}getTokensInRange(e){const t=new Yre,i=this.findTokenIndexAtOffset(e.start),n=this.findTokenIndexAtOffset(e.endExclusive);for(let s=i;s<=n;s++){const a=new ge(this.getStartOffset(s),this.getEndOffset(s)).intersectionLength(e);a>0&&t.add(a,this.getMetadata(s))}return t.build()}getTokenText(e){const t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){const t=this.getCount();for(let i=0;i{e+=`[${this.getTokenText(t)}]{${this.getClassName(t)}}`}),e}};qd.defaultTokenMetadata=(32768|2<<24)>>>0;let bi=qd;class i2{constructor(e,t,i,n){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=n,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let s=this._firstTokenIndex,r=e.getCount();s=i);s++)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 i2?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}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}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}getTokenText(e){const t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),n=this._source.getEndOffset(t);let s=this._source.getTokenText(t);return ithis._endOffset&&(s=s.substring(0,s.length-(n-this._endOffset))),s}forEach(e){for(let t=0;t({text:i.substring(e),metadata:n.metadata})),t)}forEach(e){let t=0;for(const i of this._tokenInfo){const n=new ge(t,t+i.length);e(n,i),t+=i.length}}map(e){const t=[];let i=0;for(const n of this._tokenInfo){const s=new ge(i,i+n.length);t.push(e(s,n)),i+=n.length}return t}slice(e){const t=[];let i=0;for(const n of this._tokenInfo){const s=i,r=s+n.length;if(r>e.start){if(s>=e.endExclusive)break;const a=Math.max(0,e.start-s),l=Math.max(0,r-e.endExclusive);t.push(new n2(n.length-a-l,n.metadata))}i+=n.length}return Bc.create(t)}}class n2{constructor(e,t){this.length=e,this.metadata=t}}class Yre{constructor(){this._tokens=[]}add(e,t){this._tokens.push(new n2(e,t))}build(){return Bc.create(this._tokens)}}class s2{constructor(e,t,i){this._indentRulesSupport=t,this._indentationLineProcessor=new OV(e,i)}shouldIncrease(e,t){const i=this._indentationLineProcessor.getProcessedLine(e,t);return this._indentRulesSupport.shouldIncrease(i)}shouldDecrease(e,t){const i=this._indentationLineProcessor.getProcessedLine(e,t);return this._indentRulesSupport.shouldDecrease(i)}shouldIgnore(e,t){const i=this._indentationLineProcessor.getProcessedLine(e,t);return this._indentRulesSupport.shouldIgnore(i)}shouldIndentNextLine(e,t){const i=this._indentationLineProcessor.getProcessedLine(e,t);return this._indentRulesSupport.shouldIndentNextLine(i)}}class o2{constructor(e,t){this.model=e,this.indentationLineProcessor=new OV(e,t)}getProcessedTokenContextAroundRange(e){const t=this._getProcessedTokensBeforeRange(e),i=this._getProcessedTokensAfterRange(e),n=this._getProcessedPreviousLineTokens(e);return{beforeRangeProcessedTokens:t,afterRangeProcessedTokens:i,previousLineProcessedTokens:n}}_getProcessedTokensBeforeRange(e){this.model.tokenization.forceTokenization(e.startLineNumber);const t=this.model.tokenization.getLineTokens(e.startLineNumber),i=Lf(t,e.startColumn-1);let n;if(r2(this.model,e.getStartPosition())){const r=e.startColumn-1-i.firstCharOffset,a=i.firstCharOffset,l=a+r;n=t.sliceAndInflate(a,l,0)}else{const r=e.startColumn-1;n=t.sliceAndInflate(0,r,0)}return this.indentationLineProcessor.getProcessedTokens(n)}_getProcessedTokensAfterRange(e){const t=e.isEmpty()?e.getStartPosition():e.getEndPosition();this.model.tokenization.forceTokenization(t.lineNumber);const i=this.model.tokenization.getLineTokens(t.lineNumber),n=Lf(i,t.column-1),s=t.column-1-n.firstCharOffset,r=n.firstCharOffset+s,a=n.firstCharOffset+n.getLineLength(),l=i.sliceAndInflate(r,a,0);return this.indentationLineProcessor.getProcessedTokens(l)}_getProcessedPreviousLineTokens(e){const t=f=>{this.model.tokenization.forceTokenization(f);const g=this.model.tokenization.getLineTokens(f),p=this.model.getLineMaxColumn(f)-1;return Lf(g,p)};this.model.tokenization.forceTokenization(e.startLineNumber);const i=this.model.tokenization.getLineTokens(e.startLineNumber),n=Lf(i,e.startColumn-1),s=bi.createEmpty("",n.languageIdCodec),r=e.startLineNumber-1;if(r===0||!(n.firstCharOffset===0))return s;const c=t(r);if(!(n.languageId===c.languageId))return s;const h=c.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(h)}}class OV{constructor(e,t){this.model=e,this.languageConfigurationService=t}getProcessedLine(e,t){const i=(r,a)=>{const l=It(r);return a+r.substring(l.length)};this.model.tokenization.forceTokenization?.(e);const n=this.model.tokenization.getLineTokens(e);let s=this.getProcessedTokens(n).getLineContent();return t!==void 0&&(s=i(s,t)),s}getProcessedTokens(e){const t=l=>l===2||l===3||l===1,i=e.getLanguageId(0),s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew.getBracketRegExp({global:!0}),r=[];return e.forEach(l=>{const c=e.getStandardTokenType(l);let d=e.getTokenText(l);t(c)&&(d=d.replace(s,""));const h=e.getMetadata(l);r.push({text:d,metadata:h})}),bi.createFromTextAndMetadata(r,e.languageIdCodec)}}function r2(o,e){o.tokenization.forceTokenization(e.lineNumber);const t=o.tokenization.getLineTokens(e.lineNumber),i=Lf(t,e.column-1),n=i.firstCharOffset===0,s=t.getLanguageId(0)===i.languageId;return!n&&!s}function i_(o,e,t,i){e.tokenization.forceTokenization(t.startLineNumber);const n=e.getLanguageIdAtPosition(t.startLineNumber,t.startColumn),s=i.getLanguageConfiguration(n);if(!s)return null;const a=new o2(e,i).getProcessedTokenContextAroundRange(t),l=a.previousLineProcessedTokens.getLineContent(),c=a.beforeRangeProcessedTokens.getLineContent(),d=a.afterRangeProcessedTokens.getLineContent(),h=s.onEnter(o,l,c,d);if(!h)return null;const u=h.indentAction;let f=h.appendText;const g=h.removeText||0;f?u===Oi.Indent&&(f=" "+f):u===Oi.Indent||u===Oi.IndentOutdent?f=" ":f="";let p=RV(e,t.startLineNumber,t.startColumn);return g&&(p=p.substring(0,p.length-g)),{indentAction:u,appendText:f,removeText:g,indentation:p}}var Xre=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},Qre=function(o,e){return function(t,i){e(t,i,o)}},_L;const a2=Object.create(null);function Df(o,e){if(e<=0)return"";a2[o]||(a2[o]=["",o]);const t=a2[o];for(let i=t.length;i<=e;i++)t[i]=t[i-1]+o;return t[e]}let kr=_L=class{static unshiftIndent(e,t,i,n,s){const r=ti.visibleColumnFromColumn(e,t,i);if(s){const a=Df(" ",n),c=ti.prevIndentTabStop(r,n)/n;return Df(a,c)}else{const c=ti.prevRenderTabStop(r,i)/i;return Df(" ",c)}}static shiftIndent(e,t,i,n,s){const r=ti.visibleColumnFromColumn(e,t,i);if(s){const a=Df(" ",n),c=ti.nextIndentTabStop(r,n)/n;return Df(a,c)}else{const c=ti.nextRenderTabStop(r,i)/i;return Df(" ",c)}}constructor(e,t,i){this._languageConfigurationService=i,this._opts=t,this._selection=e,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(e,t,i){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,i):e.addEditOperation(t,i)}getEditOperations(e,t){const i=this._selection.startLineNumber;let n=this._selection.endLineNumber;this._selection.endColumn===1&&i!==n&&(n=n-1);const{tabSize:s,indentSize:r,insertSpaces:a}=this._opts,l=i===n;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(e.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0);let c=0,d=0;for(let h=i;h<=n;h++,c=d){d=0;const u=e.getLineContent(h);let f=ts(u);if(this._opts.isUnshift&&(u.length===0||f===0)||!l&&!this._opts.isUnshift&&u.length===0)continue;if(f===-1&&(f=u.length),h>1&&ti.visibleColumnFromColumn(u,f+1,s)%r!==0&&e.tokenization.isCheapToTokenize(h-1)){const _=i_(this._opts.autoIndent,e,new k(h-1,e.getLineMaxColumn(h-1),h-1,e.getLineMaxColumn(h-1)),this._languageConfigurationService);if(_){if(d=c,_.appendText)for(let b=0,C=_.appendText.length;b1){let n,s=-1;for(n=e-1;n>=1;n--){if(o.tokenization.getLanguageIdAtPosition(n,0)!==i)return s;const r=o.getLineContent(n);if(t.shouldIgnore(n)||/^\s+$/.test(r)||r===""){s=n;continue}return n}}return-1}function Vv(o,e,t,i=!0,n){if(o<4)return null;const s=n.getLanguageConfiguration(e.tokenization.getLanguageId()).indentRulesSupport;if(!s)return null;const r=new s2(e,s,n);if(t<=1)return{indentation:"",action:null};for(let l=t-1;l>0&&e.getLineContent(l)==="";l--)if(l===1)return{indentation:"",action:null};const a=tae(e,t,r);if(a<0)return null;if(a<1)return{indentation:"",action:null};if(r.shouldIncrease(a)||r.shouldIndentNextLine(a)){const l=e.getLineContent(a);return{indentation:It(l),action:Oi.Indent,line:a}}else if(r.shouldDecrease(a)){const l=e.getLineContent(a);return{indentation:It(l),action:null,line:a}}else{if(a===1)return{indentation:It(e.getLineContent(a)),action:null,line:a};const l=a-1,c=s.getIndentMetadata(e.getLineContent(l));if(!(c&3)&&c&4){let d=0;for(let h=l-1;h>0;h--)if(!r.shouldIndentNextLine(h)){d=h;break}return{indentation:It(e.getLineContent(d+1)),action:null,line:d+1}}if(i)return{indentation:It(e.getLineContent(a)),action:null,line:a};for(let d=a;d>0;d--){if(r.shouldIncrease(d))return{indentation:It(e.getLineContent(d)),action:Oi.Indent,line:d};if(r.shouldIndentNextLine(d)){let h=0;for(let u=d-1;u>0;u--)if(!r.shouldIndentNextLine(d)){h=u;break}return{indentation:It(e.getLineContent(h+1)),action:null,line:h+1}}else if(r.shouldDecrease(d))return{indentation:It(e.getLineContent(d)),action:null,line:d}}return{indentation:It(e.getLineContent(1)),action:null,line:1}}}function zv(o,e,t,i,n,s){if(o<4)return null;const r=s.getLanguageConfiguration(t);if(!r)return null;const a=s.getLanguageConfiguration(t).indentRulesSupport;if(!a)return null;const l=new s2(e,a,s),c=Vv(o,e,i,void 0,s);if(c){const d=c.line;if(d!==void 0){let h=!0;for(let u=d;u0){const b=e.getLineContent(_);if(c.shouldIndentNextLine(b)&&c.shouldIncrease(p)){const w=Vv(r,e,t.startLineNumber,!1,s)?.indentation;if(w!==void 0){const v=e.getLineContent(t.startLineNumber),S=It(v),x=n.shiftIndent(w)===S,I=/^\s*$/.test(g),D=o.autoClosingPairs.autoClosingPairsOpenByEnd.get(i),O=D&&D.length>0&&I;if(x&&O)return w}}}return null}function FV(o,e,t){const i=t.getLanguageConfiguration(o.getLanguageId()).indentRulesSupport;return!i||e<1||e>o.getLineCount()?null:i.getIndentMetadata(o.getLineContent(e))}function sae(o,e,t){return{tokenization:{getLineTokens:n=>n===e?t:o.tokenization.getLineTokens(n),getLanguageId:()=>o.getLanguageId(),getLanguageIdAtPosition:(n,s)=>o.getLanguageIdAtPosition(n,s)},getLineContent:n=>n===e?t.getLineContent():o.getLineContent(n)}}class oae{static getEdits(e,t,i,n,s){if(!s&&this._isAutoIndentType(e,t,i)){const r=[];for(const l of i){const c=this._findActualIndentationForSelection(e,t,l,n);if(c===null)return;r.push({selection:l,indentation:c})}const a=l2.getAutoClosingPairClose(e,t,i,n,!1);return this._getIndentationAndAutoClosingPairEdits(e,t,r,n,a)}}static _isAutoIndentType(e,t,i){if(e.autoIndent<4)return!1;for(let n=0,s=i.length;nh2(e,a),unshiftIndent:a=>vL(e,a)},e.languageConfigurationService);if(s===null)return null;const r=RV(t,i.startLineNumber,i.startColumn);return s===e.normalizeIndentation(r)?null:s}static _getIndentationAndAutoClosingPairEdits(e,t,i,n,s){const r=i.map(({selection:l,indentation:c})=>{if(s!==null){const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!1);return new mae(d,l,n,s)}else{const d=this._getEditFromIndentationAndSelection(e,t,c,l,n,!0);return Ef(d.range,d.text,!1)}}),a={shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1};return new ws(4,r,a)}static _getEditFromIndentationAndSelection(e,t,i,n,s,r=!0){const a=n.startLineNumber,l=t.getLineFirstNonWhitespaceColumn(a);let c=e.normalizeIndentation(i);if(l!==0){const h=t.getLineContent(a);c+=h.substring(l-1,n.startColumn-1)}return c+=r?s:"",{range:new k(a,1,n.endLineNumber,n.endColumn),text:c}}}class rae{static getEdits(e,t,i,n,s,r){if(VV(t,i,n,s,r))return this._runAutoClosingOvertype(e,n,r)}static _runAutoClosingOvertype(e,t,i){const n=[];for(let s=0,r=t.length;snew Dn(new k(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new ws(4,r,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class l2{static getEdits(e,t,i,n,s,r){if(!r){const a=this.getAutoClosingPairClose(e,t,i,n,s);if(a!==null)return this._runAutoClosingOpenCharType(i,n,s,a)}}static _runAutoClosingOpenCharType(e,t,i,n){const s=[];for(let r=0,a=e.length;r{const p=g.getPosition();return s?{lineNumber:p.lineNumber,beforeColumn:p.column-n.length,afterColumn:p.column}:{lineNumber:p.lineNumber,beforeColumn:p.column,afterColumn:p.column}}),a=this._findAutoClosingPairOpen(e,t,r.map(g=>new M(g.lineNumber,g.beforeColumn)),n);if(!a)return null;let l,c;if(mh(n)?(l=e.autoClosingQuotes,c=e.shouldAutoCloseBefore.quote):(e.blockCommentStartToken?a.open.includes(e.blockCommentStartToken):!1)?(l=e.autoClosingComments,c=e.shouldAutoCloseBefore.comment):(l=e.autoClosingBrackets,c=e.shouldAutoCloseBefore.bracket),l==="never")return null;const h=this._findContainedAutoClosingPair(e,a),u=h?h.close:"";let f=!0;for(const g of r){const{lineNumber:p,beforeColumn:_,afterColumn:b}=g,C=t.getLineContent(p),w=C.substring(0,_-1),v=C.substring(b-1);if(v.startsWith(u)||(f=!1),v.length>0){const I=v.charAt(0);if(!this._isBeforeClosingBrace(e,v)&&!c(I))return null}if(a.open.length===1&&(n==="'"||n==='"')&&l!=="always"){const I=Lr(e.wordSeparators,[]);if(w.length>0){const D=w.charCodeAt(w.length-1);if(I.get(D)===0)return null}}if(!t.tokenization.isCheapToTokenize(p))return null;t.tokenization.forceTokenization(p);const S=t.tokenization.getLineTokens(p),L=Lf(S,_-1);if(!a.shouldAutoClose(L,_-L.firstCharOffset))return null;const x=a.findNeutralCharacter();if(x){const I=t.tokenization.getTokenTypeIfInsertingCharacter(p,_,x);if(!a.isOK(I))return null}}return f?a.close.substring(0,a.close.length-u.length):a.close}static _findContainedAutoClosingPair(e,t){if(t.open.length<=1)return null;const i=t.close.charAt(t.close.length-1),n=e.autoClosingPairs.autoClosingPairsCloseByEnd.get(i)||[];let s=null;for(const r of n)r.open!==t.open&&t.open.includes(r.open)&&t.close.endsWith(r.close)&&(!s||r.open.length>s.open.length)&&(s=r);return s}static _findAutoClosingPairOpen(e,t,i,n){const s=e.autoClosingPairs.autoClosingPairsOpenByEnd.get(n);if(!s)return null;let r=null;for(const a of s)if(r===null||a.open.length>r.open.length){let l=!0;for(const c of i)if(t.getValueInRange(new k(c.lineNumber,c.column-a.open.length+1,c.lineNumber,c.column))+n!==a.open){l=!1;break}l&&(r=a)}return r}static _isBeforeClosingBrace(e,t){const i=t.charAt(0),n=e.autoClosingPairs.autoClosingPairsOpenByStart.get(i)||[],s=e.autoClosingPairs.autoClosingPairsCloseByStart.get(i)||[],r=n.some(l=>t.startsWith(l.open)),a=s.some(l=>t.startsWith(l.close));return!r&&a}}class WV{static getEdits(e,t){if(!(e.inputMode==="overtype"))return null;const n=t.map(s=>new lre(s.insertedTextRange));return new ws(4,n,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class lae{static getEdits(e,t,i,n,s){if(!s&&this._isSurroundSelectionType(e,t,i,n))return this._runSurroundSelectionType(e,i,n)}static _runSurroundSelectionType(e,t,i){const n=[];for(let s=0,r=t.length;s=4){const l=iae(e.autoIndent,t,n,{unshiftIndent:c=>vL(e,c),shiftIndent:c=>h2(e,c),normalizeIndentation:c=>e.normalizeIndentation(c)},e.languageConfigurationService);if(l){let c=e.visibleColumnFromColumn(t,n.getEndPosition());const d=n.endColumn,h=t.getLineContent(n.endLineNumber),u=ts(h);if(u>=0?n=n.setEndPosition(n.endLineNumber,Math.max(n.endColumn,u+1)):n=n.setEndPosition(n.endLineNumber,t.getLineMaxColumn(n.endLineNumber)),i)return new Jy(n,` `+e.normalizeIndentation(l.afterEnter),!0);{let f=0;return d<=u+1&&(e.insertSpaces||(c=Math.ceil(c/e.indentSize)),f=Math.min(c+1-e.normalizeIndentation(l.afterEnter).length-1,0)),new eL(n,` `+e.normalizeIndentation(l.afterEnter),0,f,!0)}}}return Ef(n,` `+e.normalizeIndentation(a),i)}static lineInsertBefore(e,t,i){if(t===null||i===null)return[];const n=[];for(let s=0,r=i.length;sthis._compositionType(i,d,s,r,a,l));return new ws(4,c,{shouldPushStackElementBefore:CL(e,4),shouldPushStackElementAfter:!1})}static _compositionType(e,t,i,n,s,r){if(!t.isEmpty())return null;const a=t.getPosition(),l=Math.max(1,a.column-n),c=Math.min(e.getLineMaxColumn(a.lineNumber),a.column+s),d=new k(a.lineNumber,l,a.lineNumber,c);return new eL(d,i,0,r)}}class fae{static getEdits(e,t,i){const n=[];for(let r=0,a=t.length;r1){let a;for(a=i-1;a>=1;a--){const d=t.getLineContent(a);if(Gr(d)>=0)break}if(a<1)return null;const l=t.getLineMaxColumn(a),c=i_(e.autoIndent,t,new k(a,l,a,l),e.languageConfigurationService);c&&(s=c.indentation+c.appendText)}return n&&(n===Oi.Indent&&(s=h2(e,s)),n===Oi.Outdent&&(s=vL(e,s)),s=e.normalizeIndentation(s)),s||null}static _replaceJumpToNextIndent(e,t,i,n){let s="";const r=i.getStartPosition();if(e.insertSpaces){const a=e.visibleColumnFromColumn(t,r),l=e.indentSize,c=l-a%l;for(let d=0;d2?c.charCodeAt(l.column-2):0)===92&&h)return!1;if(o.autoClosingOvertype==="auto"){let f=!1;for(let g=0,p=i.length;g{const n=t.get(tt).getFocusedCodeEditor();return n&&n.hasTextFocus()?this._runEditorCommand(t,n,i):!1}),e.addImplementation(1e3,"generic-dom-input-textarea",(t,i)=>{const n=$i();return n&&Ia(n)?(this.runDOMCommand(n),!0):!1}),e.addImplementation(0,"generic-dom",(t,i)=>{const n=t.get(tt).getActiveCodeEditor();return n?(n.focus(),this._runEditorCommand(t,n,i)):!1})}_runEditorCommand(e,t,i){const n=this.runEditorCommand(e,t,i);return n||!0}}var hn;(function(o){class e extends Ci{constructor(C){super(C),this._inSelectionMode=C.inSelectionMode}runCoreEditorCommand(C,w){if(!w.position)return;C.model.pushStackElement(),C.setCursorStates(w.source,3,[_n.moveTo(C,C.getPrimaryCursorState(),this._inSelectionMode,w.position,w.viewPosition)])&&w.revealType!==2&&C.revealAllCursors(w.source,!0,!0)}}o.MoveTo=ae(new e({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),o.MoveToSelect=ae(new e({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class t extends Ci{runCoreEditorCommand(C,w){C.model.pushStackElement();const v=this._getColumnSelectResult(C,C.getPrimaryCursorState(),C.getCursorColumnSelectData(),w);v!==null&&(C.setCursorStates(w.source,3,v.viewStates.map(S=>nt.fromViewState(S))),C.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:v.fromLineNumber,fromViewVisualColumn:v.fromVisualColumn,toViewLineNumber:v.toLineNumber,toViewVisualColumn:v.toVisualColumn}),v.reversed?C.revealTopMostCursor(w.source):C.revealBottomMostCursor(w.source))}}o.ColumnSelect=ae(new class extends t{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(b,C,w,v){if(typeof v.position>"u"||typeof v.viewPosition>"u"||typeof v.mouseColumn>"u")return null;const S=b.model.validatePosition(v.position),L=b.coordinatesConverter.validateViewPosition(new M(v.viewPosition.lineNumber,v.viewPosition.column),S),x=v.doColumnSelect?w.fromViewLineNumber:L.lineNumber,I=v.doColumnSelect?w.fromViewVisualColumn:v.mouseColumn-1;return xf.columnSelect(b.cursorConfig,b,x,I,L.lineNumber,v.mouseColumn-1)}}),o.CursorColumnSelectLeft=ae(new class extends t{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return xf.columnSelectLeft(b.cursorConfig,b,w)}}),o.CursorColumnSelectRight=ae(new class extends t{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(b,C,w,v){return xf.columnSelectRight(b.cursorConfig,b,w)}});class i extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,S){return xf.columnSelectUp(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectUp=ae(new i({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:3600,linux:{primary:0}}})),o.CursorColumnSelectPageUp=ae(new i({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:3595,linux:{primary:0}}}));class n extends t{constructor(C){super(C),this._isPaged=C.isPaged}_getColumnSelectResult(C,w,v,S){return xf.columnSelectDown(C.cursorConfig,C,v,this._isPaged)}}o.CursorColumnSelectDown=ae(new n({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:3602,linux:{primary:0}}})),o.CursorColumnSelectPageDown=ae(new n({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:3596,linux:{primary:0}}}));class s extends Ci{constructor(){super({id:"cursorMove",precondition:void 0,metadata:aL.metadata})}runCoreEditorCommand(C,w){const v=aL.parse(w);v&&this._runCursorMove(C,w.source,v)}_runCursorMove(C,w,v){const S=v.noHistory?"api":w;C.model.pushStackElement(),C.setCursorStates(S,3,s._move(C,C.getCursorStates(),v)),C.revealAllCursors(S,!0)}static _move(C,w,v){const S=v.select,L=v.value;switch(v.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return _n.simpleMove(C,w,v.direction,S,L,v.unit);case 11:case 13:case 12:case 14:return _n.viewportMove(C,w,v.direction,S,L);default:return null}}}o.CursorMoveImpl=s,o.CursorMove=ae(new s);class r extends Ci{constructor(C){super(C),this._staticArgs=C.args}runCoreEditorCommand(C,w){let v=this._staticArgs;this._staticArgs.value===-1&&(v={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:w.pageSize||C.cursorConfig.pageSize}),C.model.pushStackElement(),C.setCursorStates(w.source,3,_n.simpleMove(C,C.getCursorStates(),v.direction,v.select,v.value,v.unit)),C.revealAllCursors(w.source,!0)}}o.CursorLeft=ae(new r({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),o.CursorLeftSelect=ae(new r({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:1039}})),o.CursorRight=ae(new r({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),o.CursorRightSelect=ae(new r({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:1041}})),o.CursorUp=ae(new r({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),o.CursorUpSelect=ae(new r({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),o.CursorPageUp=ae(new r({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:11}})),o.CursorPageUpSelect=ae(new r({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:1035}})),o.CursorDown=ae(new r({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),o.CursorDownSelect=ae(new r({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),o.CursorPageDown=ae(new r({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:12}})),o.CursorPageDownSelect=ae(new r({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:1036}})),o.CreateCursor=ae(new class extends Ci{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(b,C){if(!C.position)return;let w;C.wholeLine?w=_n.line(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition):w=_n.moveTo(b,b.getPrimaryCursorState(),!1,C.position,C.viewPosition);const v=b.getCursorStates();if(v.length>1){const S=w.modelState?w.modelState.position:null,L=w.viewState?w.viewState.position:null;for(let x=0,I=v.length;xL&&(S=L);const x=new k(S,1,S,b.model.getLineMaxColumn(S));let I=0;if(w.at)switch(w.at){case n_.RawAtArgument.Top:I=3;break;case n_.RawAtArgument.Center:I=1;break;case n_.RawAtArgument.Bottom:I=4;break}const D=b.coordinatesConverter.convertModelRangeToViewRange(x);b.revealRange(C.source,!1,D,I,0)}}),o.SelectAll=new class extends u2{constructor(){super(Qoe)}runDOMCommand(b){Bs&&(b.focus(),b.select()),b.ownerDocument.execCommand("selectAll")}runEditorCommand(b,C,w){const v=C._getViewModel();v&&this.runCoreEditorCommand(v,w)}runCoreEditorCommand(b,C){b.model.pushStackElement(),b.setCursorStates("keyboard",3,[_n.selectAll(b,b.getPrimaryCursorState())])}},o.SetSelection=ae(new class extends Ci{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(b,C){C.selection&&(b.model.pushStackElement(),b.setCursorStates(C.source,3,[nt.fromModelSelection(C.selection)]))}})})(hn||(hn={}));const bae=q.and(T.textInputFocus,T.columnSelection);function s_(o,e){ln.registerKeybindingRule({id:o,primary:e,when:bae,weight:lt+1})}s_(hn.CursorColumnSelectLeft.id,1039),s_(hn.CursorColumnSelectRight.id,1041),s_(hn.CursorColumnSelectUp.id,1040),s_(hn.CursorColumnSelectPageUp.id,1035),s_(hn.CursorColumnSelectDown.id,1042),s_(hn.CursorColumnSelectPageDown.id,1036);function UV(o){return o.register(),o}var o_;(function(o){class e extends ji{runEditorCommand(i,n,s){const r=n._getViewModel();r&&this.runCoreEditingCommand(n,r,s||{})}}o.CoreEditingCommand=e,o.LineBreakInsert=ae(new class extends e{constructor(){super({id:"lineBreakInsert",precondition:T.writable,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,bL.lineBreakInsert(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection)))}}),o.Outdent=ae(new class extends e{constructor(){super({id:"outdent",precondition:T.writable,kbOpts:{weight:lt,kbExpr:q.and(T.editorTextFocus,T.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ch.outdent(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.Tab=ae(new class extends e{constructor(){super({id:"tab",precondition:T.writable,kbOpts:{weight:lt,kbExpr:q.and(T.editorTextFocus,T.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(t,i,n){t.pushUndoStop(),t.executeCommands(this.id,Ch.tab(i.cursorConfig,i.model,i.getCursorStates().map(s=>s.modelState.selection))),t.pushUndoStop()}}),o.DeleteLeft=ae(new class extends e{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(t,i,n){const[s,r]=kf.deleteLeft(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection),i.getCursorAutoClosedCharacters());s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(2)}}),o.DeleteRight=ae(new class extends e{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:lt,kbExpr:T.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(t,i,n){const[s,r]=kf.deleteRight(i.getPrevEditOperationType(),i.cursorConfig,i.model,i.getCursorStates().map(a=>a.modelState.selection));s&&t.pushUndoStop(),t.executeCommands(this.id,r),i.setPrevEditOperationType(3)}}),o.Undo=new class extends u2{constructor(){super(lV)}runDOMCommand(t){t.ownerDocument.execCommand("undo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(104)===!0))return i.getModel().undo()}},o.Redo=new class extends u2{constructor(){super(cV)}runDOMCommand(t){t.ownerDocument.execCommand("redo")}runEditorCommand(t,i,n){if(!(!i.hasModel()||i.getOption(104)===!0))return i.getModel().redo()}}})(o_||(o_={}));class $V extends Yy{constructor(e,t,i){super({id:e,precondition:void 0,metadata:i}),this._handlerId=t}runCommand(e,t){const i=e.get(tt).getFocusedCodeEditor();i&&i.trigger("keyboard",this._handlerId,t)}}function Nf(o,e){UV(new $V("default:"+o,o)),UV(new $V(o,o,e))}Nf("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),Nf("replacePreviousChar"),Nf("compositionType"),Nf("compositionStart"),Nf("compositionEnd"),Nf("paste"),Nf("cut");const f2=Fe("markerDecorationsService");var Cae=function(o,e,t,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(o,e,t,i);else for(var a=o.length-1;a>=0;a--)(r=o[a])&&(s=(n<3?r(s):n>3?r(e,t,s):r(e,t))||s);return n>3&&s&&Object.defineProperty(e,t,s),s},vae=function(o,e){return function(t,i){e(t,i,o)}};let wL=(xC=class{constructor(e,t){}dispose(){}},xC.ID="editor.contrib.markerDecorations",xC);wL=Cae([vae(1,f2)],wL),Qe(wL.ID,wL,0);class SL{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=""}focus(){this.domNode.focus()}setMaxWidth(e){const t=Ra(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){const t=Ra(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){const t=Ra(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){const t=Ra(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){const t=Ra(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){const t=Ra(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){const t=Ra(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){const t=Ra(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=Ra(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=Ra(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){const t=Ra(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 Ra(o){return typeof o=="number"?`${o}px`:o}function ct(o){return new SL(o)}function un(o,e){o instanceof SL?(o.setFontFamily(e.getMassagedFontFamily()),o.setFontWeight(e.fontWeight),o.setFontSize(e.fontSize),o.setFontFeatureSettings(e.fontFeatureSettings),o.setFontVariationSettings(e.fontVariationSettings),o.setLineHeight(e.lineHeight),o.setLetterSpacing(e.letterSpacing)):(o.style.fontFamily=e.getMassagedFontFamily(),o.style.fontWeight=e.fontWeight,o.style.fontSize=e.fontSize+"px",o.style.fontFeatureSettings=e.fontFeatureSettings,o.style.fontVariationSettings=e.fontVariationSettings,o.style.lineHeight=e.lineHeight+"px",o.style.letterSpacing=e.letterSpacing+"px")}class jV extends P{constructor(e,t){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,t)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null;const t=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()};let i=!1,n=!1;const s=()=>{if(i&&!n)try{i=!1,n=!0,t()}finally{Vs(me(this._referenceDomElement),()=>{n=!1,s()})}};this._resizeObserver=new ResizeObserver(r=>{r&&r[0]&&r[0].contentRect?e={width:r[0].contentRect.width,height:r[0].contentRect.height}:e=null,i=!0,s()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,t){let i=0,n=0;t?(i=t.width,n=t.height):this._referenceDomElement&&(i=this._referenceDomElement.clientWidth,n=this._referenceDomElement.clientHeight),i=Math.max(5,i),n=Math.max(5,n),(this._width!==i||this._height!==n)&&(this._width=i,this._height=n,e&&this._onDidChange.fire())}}class wae extends P{constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(e,!0),this._mediaQueryList=null,this._handleChange(e,!1)}_handleChange(e,t){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=e.matchMedia(`(resolution: ${e.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),t&&this._onDidChange.fire()}}class Sae extends P{get value(){return this._value}constructor(e){super(),this._onDidChange=this._register(new A),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(e);const t=this._register(new wae(e));this._register(t.onDidChange(()=>{this._value=this._getPixelRatio(e),this._onDidChange.fire(this._value)}))}_getPixelRatio(e){const t=document.createElement("canvas").getContext("2d"),i=e.devicePixelRatio||1,n=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return i/n}}class yae{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(e){const t=kv(e);let i=this.mapWindowIdToPixelRatioMonitor.get(t);return i||(i=new Sae(e),this.mapWindowIdToPixelRatioMonitor.set(t,i),ie.once(zse)(({vscodeWindowId:n})=>{n===t&&(i?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(t))})),i}getInstance(e){return this._getOrCreatePixelRatioMonitor(e)}}const Uv=new yae;class Lae{constructor(e,t){this.chr=e,this.type=t,this.width=0}fulfill(e){this.width=e}}class g2{constructor(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}read(e){this._createDomElements(),e.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),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");un(t,this._bareFontInfo),e.appendChild(t);const i=document.createElement("div");un(i,this._bareFontInfo),i.style.fontWeight="bold",e.appendChild(i);const n=document.createElement("div");un(n,this._bareFontInfo),n.style.fontStyle="italic",e.appendChild(n);const s=[];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");g2._render(l,r),a.appendChild(l),s.push(l)}this._container=e,this._testElements=s}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"u"?e:o==="false"?!1:!!o}class Ve extends r_{constructor(e,t,i,n=void 0){typeof n<"u"&&(n.type="boolean",n.default=i),super(e,t,i,n)}validate(e){return _e(e,this.defaultValue)}}function Hc(o,e,t,i){if(typeof o=="string"&&(o=parseInt(o,10)),typeof o!="number"||isNaN(o))return e;let n=o;return n=Math.max(t,n),n=Math.min(i,n),n|0}class St extends r_{static clampedInt(e,t,i,n){return Hc(e,t,i,n)}constructor(e,t,i,n,s,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=n,r.maximum=s),super(e,t,i,r),this.minimum=n,this.maximum=s}validate(e){return St.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}function Dae(o,e,t,i){if(typeof o>"u")return e;const n=js.float(o,e);return js.clamp(n,t,i)}class js extends r_{static clamp(e,t,i){return ei?i:e}static float(e,t){return typeof e=="string"&&(e=parseFloat(e)),typeof e!="number"||isNaN(e)?t:e}constructor(e,t,i,n,s,r,a){typeof s<"u"&&(s.type="number",s.default=i,s.minimum=r,s.maximum=a),super(e,t,i,s),this.validationFn=n,this.minimum=r,this.maximum=a}validate(e){return this.validationFn(js.float(e,this.defaultValue))}}class os extends r_{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 os.string(e,this.defaultValue)}}function Ft(o,e,t,i){return typeof o!="string"?e:i&&o in i?i[o]:t.indexOf(o)===-1?e:o}class Yt extends r_{constructor(e,t,i,n,s=void 0){typeof s<"u"&&(s.type="string",s.enum=n.slice(0),s.default=i),super(e,t,i,s),this._allowedValues=n}validate(e){return Ft(e,this.defaultValue,this._allowedValues)}}class jv extends Zt{constructor(e,t,i,n,s,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=s,a.default=n),super(e,t,i,a),this._allowedValues=s,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}}function Eae(o){switch(o){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class Nae extends Zt{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[m(201,"Use platform APIs to detect when a Screen Reader is attached."),m(202,"Optimize for usage with a Screen Reader."),m(203,"Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:m(204,"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 Tae extends Zt{constructor(){const e={insertSpace:!0,ignoreEmptyLines:!0};super(29,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:m(205,"Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:m(206,"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:_e(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:_e(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function Rae(o){switch(o){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var tn;(function(o){o[o.Line=1]="Line",o[o.Block=2]="Block",o[o.Underline=3]="Underline",o[o.LineThin=4]="LineThin",o[o.BlockOutline=5]="BlockOutline",o[o.UnderlineThin=6]="UnderlineThin"})(tn||(tn={}));function YV(o){switch(o){case"line":return tn.Line;case"block":return tn.Block;case"underline":return tn.Underline;case"line-thin":return tn.LineThin;case"block-outline":return tn.BlockOutline;case"underline-thin":return tn.UnderlineThin}}class Mae extends vh{constructor(){super(162,"")}compute(e,t,i){const n=["monaco-editor"];return t.get(48)&&n.push(t.get(48)),e.extraEditorClassName&&n.push(e.extraEditorClassName),t.get(82)==="default"?n.push("mouse-default"):t.get(82)==="copy"&&n.push("mouse-copy"),t.get(127)&&n.push("showUnused"),t.get(157)&&n.push("showDeprecated"),n.join(" ")}}class Aae extends Ve{constructor(){super(45,"emptySelectionClipboard",!0,{description:m(207,"Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}}class Pae extends Zt{constructor(){const e={cursorMoveOnType:!0,findOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0,history:"workspace",replaceHistory:"workspace"};super(50,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:m(208,"Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[m(209,"Never seed search string from the editor selection."),m(210,"Always seed search string from the editor selection, including word at cursor position."),m(211,"Only seed search string from the editor selection.")],description:m(212,"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:[m(213,"Never turn on Find in Selection automatically (default)."),m(214,"Always turn on Find in Selection automatically."),m(215,"Turn on Find in Selection automatically when multiple lines of content are selected.")],description:m(216,"Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:m(217,"Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:ze},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:m(218,"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:m(219,"Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")},"editor.find.history":{type:"string",enum:["never","workspace"],default:"workspace",enumDescriptions:[m(220,"Do not store search history from the find widget."),m(221,"Store search history across the active workspace")],description:m(222,"Controls how the find widget history should be stored")},"editor.find.replaceHistory":{type:"string",enum:["never","workspace"],default:"workspace",enumDescriptions:[m(223,"Do not store history from the replace widget."),m(224,"Store replace history across the active workspace")],description:m(225,"Controls how the replace widget history should be stored")},"editor.find.findOnType":{type:"boolean",default:e.findOnType,description:m(226,"Controls whether the Find Widget should search as you type.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{cursorMoveOnType:_e(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),findOnType:_e(t.findOnType,this.defaultValue.findOnType),seedSearchStringFromSelection:typeof t.seedSearchStringFromSelection=="boolean"?t.seedSearchStringFromSelection?"always":"never":Ft(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof t.autoFindInSelection=="boolean"?t.autoFindInSelection?"always":"never":Ft(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:_e(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:_e(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:_e(t.loop,this.defaultValue.loop),history:Ft(t.history,this.defaultValue.history,["never","workspace"]),replaceHistory:Ft(t.replaceHistory,this.defaultValue.replaceHistory,["never","workspace"])}}}const Kd=class Kd extends Zt{constructor(){super(60,"fontLigatures",Kd.OFF,{anyOf:[{type:"boolean",description:m(227,"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:m(228,"Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:m(229,"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"||e.length===0?Kd.OFF:e==="true"?Kd.ON:e:e?Kd.ON:Kd.OFF}};Kd.OFF='"liga" off, "calt" off',Kd.ON='"liga" on, "calt" on';let Vc=Kd;const Gd=class Gd extends Zt{constructor(){super(63,"fontVariations",Gd.OFF,{anyOf:[{type:"boolean",description:m(230,"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:m(231,"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:m(232,"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"?Gd.OFF:e==="true"?Gd.TRANSLATE:e:e?Gd.TRANSLATE:Gd.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}};Gd.OFF=qV,Gd.TRANSLATE=KV;let m2=Gd;class Oae extends vh{constructor(){super(59,new yL({pixelRatio:0,fontFamily:"",fontWeight:"",fontSize:0,fontFeatureSettings:"",fontVariationSettings:"",lineHeight:0,letterSpacing:0,isMonospace:!1,typicalHalfwidthCharacterWidth:0,typicalFullwidthCharacterWidth:0,canUseHalfwidthRightwardsArrow:!1,spaceWidth:0,middotWidth:0,wsmiddotWidth:0,maxDigitWidth:0},!1))}compute(e,t,i){return e.fontInfo}}class Fae extends vh{constructor(){super(161,tn.Line)}compute(e,t,i){return e.inputMode==="overtype"?t.get(92):t.get(34)}}class Wae extends vh{constructor(){super(170,!1)}compute(e,t){return e.editContextSupported&&t.get(44)}}class Bae extends vh{constructor(){super(172,!1)}compute(e,t){return e.accessibilitySupport===2?t.get(7):t.get(6)}}class Hae extends r_{constructor(){super(61,"fontSize",$s.fontSize,{type:"number",minimum:6,maximum:100,default:$s.fontSize,description:m(233,"Controls the font size in pixels.")})}validate(e){const t=js.float(e,this.defaultValue);return t===0?$s.fontSize:js.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}}const lc=class lc extends Zt{constructor(){super(62,"fontWeight",$s.fontWeight,{anyOf:[{type:"number",minimum:lc.MINIMUM_VALUE,maximum:lc.MAXIMUM_VALUE,errorMessage:m(234,'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:lc.SUGGESTION_VALUES}],default:$s.fontWeight,description:m(235,'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(St.clampedInt(e,$s.fontWeight,lc.MINIMUM_VALUE,lc.MAXIMUM_VALUE))}};lc.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],lc.MINIMUM_VALUE=1,lc.MAXIMUM_VALUE=1e3;let _2=lc;class Vae extends Zt{constructor(){const e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[m(236,"Show Peek view of the results (default)"),m(237,"Go to the primary result and show a Peek view"),m(238,"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(67,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:m(239,"This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:m(240,"Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:m(241,"Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:m(242,"Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:m(243,"Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:m(244,"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:m(245,"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:m(246,"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:m(247,"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:m(248,"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:m(249,"Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{multiple:Ft(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:Ft(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:Ft(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:Ft(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:Ft(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:Ft(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:Ft(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:os.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:os.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:os.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:os.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:os.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:os.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}}class zae extends Zt{constructor(){const e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(69,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:m(250,"Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:m(251,"Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:m(252,"Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,markdownDescription:m(253,"Controls the delay in milliseconds after which the hover is hidden. Requires `#editor.hover.sticky#` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:m(254,"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:_e(t.enabled,this.defaultValue.enabled),delay:St.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:_e(t.sticky,this.defaultValue.sticky),hidingDelay:St.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:_e(t.above,this.defaultValue.above)}}}class a_ extends vh{constructor(){super(165,{width:0,height:0,glyphMarginLeft:0,glyphMarginWidth:0,glyphMarginDecorationLaneCount:0,lineNumbersLeft:0,lineNumbersWidth:0,decorationsLeft:0,decorationsWidth:0,contentLeft:0,contentWidth:0,minimap:{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:0,minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:0},viewportColumn:0,isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:-1,verticalScrollbarWidth:0,horizontalScrollbarHeight:0,overviewRuler:{top:0,width:0,height:0,right:0}})}compute(e,t,i){return a_.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,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}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 s=(i+e.viewLineCount+n)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/s);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:n,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(e,t){const i=e.outerWidth,n=e.outerHeight,s=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(s*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,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters;let u=s>=2?Math.round(e.minimap.scale*2):e.minimap.scale;const f=e.minimap.maxColumn,g=e.minimap.size,p=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,C=e.remainingWidth,w=e.isViewportWrapping,v=h?2:3;let S=Math.floor(s*n);const L=S/s;let x=!1,I=!1,D=v*u,R=u/s,O=1;if(g==="fill"||g==="fit"){const{typicalViewportLineCount:se,extraLinesBeforeFirstLine:de,extraLinesBeyondLastLine:ye,desiredRatio:Pe,minimapLineCount:it}=a_.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:n,lineHeight:l,pixelRatio:s});if(b/it>1)x=!0,I=!0,u=1,D=1,R=u/s;else{let Ot=!1,bt=u+1;if(g==="fit"){const on=Math.ceil((de+b+ye)*D);w&&a&&C<=t.stableFitRemainingWidth?(Ot=!0,bt=t.stableFitMaxMinimapScale):Ot=on>S}if(g==="fill"||Ot){x=!0;const on=u;D=Math.min(l*s,Math.max(1,Math.floor(1/Pe))),w&&a&&C<=t.stableFitRemainingWidth&&(bt=t.stableFitMaxMinimapScale),u=Math.min(bt,Math.max(1,Math.floor(D/v))),u>on&&(O=Math.min(2,u/on)),R=u/s/O,S=Math.ceil(Math.max(se,de+b+ye)*D),w?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=C,t.stableFitMaxMinimapScale=u):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}const F=Math.floor(f*R),B=Math.min(F,Math.max(0,Math.floor((C-_-2)*R/(c+R)))+ml);let U=Math.floor(s*B);const K=U/s;U=Math.floor(U*O);const ne=h?1:2,Q=p==="left"?0:i-B-_;return{renderMinimap:ne,minimapLeft:Q,minimapWidth:B,minimapHeightIsEditorHeight:x,minimapIsSampling:I,minimapScale:u,minimapLineHeight:D,minimapCanvasInnerWidth:U,minimapCanvasInnerHeight:S,minimapCanvasOuterWidth:K,minimapCanvasOuterHeight:L}}static computeLayout(e,t){const i=t.outerWidth|0,n=t.outerHeight|0,s=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(154),u=h==="inherit"?e.get(153):h,f=u==="inherit"?e.get(149):u,g=e.get(152),p=t.isDominatedByLongLines,_=e.get(66),b=e.get(76).renderType!==0,C=e.get(77),w=e.get(119),v=e.get(96),S=e.get(81),L=e.get(117),x=L.verticalScrollbarSize,I=L.verticalHasArrows,D=L.arrowSize,R=L.horizontalScrollbarSize,O=e.get(52),F=e.get(126)!=="never";let B=e.get(74);O&&F&&(B+=16);let U=0;if(b){const Fs=Math.max(r,C);U=Math.round(Fs*l)}let K=0;_&&(K=s*t.glyphMarginDecorationLaneCount);let ne=0,Q=ne+K,se=Q+U,de=se+B;const ye=i-K-U-B;let Pe=!1,it=!1,Ke=-1;e.get(2)===2&&u==="inherit"&&p?(Pe=!0,it=!0):f==="on"||f==="bounded"?it=!0:f==="wordWrapColumn"&&(Ke=g);const Ot=a_._computeMinimapLayout({outerWidth:i,outerHeight:n,lineHeight:s,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:w,paddingTop:v.top,paddingBottom:v.bottom,minimap:S,verticalScrollbarWidth:x,viewLineCount:d,remainingWidth:ye,isViewportWrapping:it},t.memory||new ZV);Ot.renderMinimap!==0&&Ot.minimapLeft===0&&(ne+=Ot.minimapWidth,Q+=Ot.minimapWidth,se+=Ot.minimapWidth,de+=Ot.minimapWidth);const bt=ye-Ot.minimapWidth,on=Math.max(1,Math.floor((bt-x-2)/a)),Ai=I?D:0;return it&&(Ke=Math.max(1,on),f==="bounded"&&(Ke=Math.min(Ke,g))),{width:i,height:n,glyphMarginLeft:ne,glyphMarginWidth:K,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:Q,lineNumbersWidth:U,decorationsLeft:se,decorationsWidth:B,contentLeft:de,contentWidth:bt,minimap:Ot,viewportColumn:on,isWordWrapMinified:Pe,isViewportWrapping:it,wrappingColumn:Ke,verticalScrollbarWidth:x,horizontalScrollbarHeight:R,overviewRuler:{top:Ai,width:x,height:n-2*Ai,right:0}}}}class Uae extends Zt{constructor(){super(156,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[m(255,"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."),m(256,"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:m(257,"Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return Ft(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}}var Jr;(function(o){o.Off="off",o.OnCode="onCode",o.On="on"})(Jr||(Jr={}));class $ae extends Zt{constructor(){const e={enabled:Jr.OnCode};super(73,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",enum:[Jr.Off,Jr.OnCode,Jr.On],default:e.enabled,enumDescriptions:[m(258,"Disable the code action menu."),m(259,"Show the code action menu when the cursor is on lines with code."),m(260,"Show the code action menu when the cursor is on lines with code or on empty lines.")],description:m(261,"Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:Ft(e.enabled,this.defaultValue.enabled,[Jr.Off,Jr.OnCode,Jr.On])}}}class jae extends Zt{constructor(){const e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(131,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:m(262,"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:20,description:m(263,"Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:m(264,"Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:m(265,"Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;const t=e;return{enabled:_e(t.enabled,this.defaultValue.enabled),maxLineCount:St.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:Ft(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:_e(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}}class qae extends Zt{constructor(){const e={enabled:"on",fontSize:0,fontFamily:"",padding:!1,maximumLength:43};super(159,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:m(266,"Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[m(267,"Inlay hints are enabled"),m(268,"Inlay hints are showing by default and hide when holding {0}",ze?"Ctrl+Option":"Ctrl+Alt"),m(269,"Inlay hints are hidden by default and show when holding {0}",ze?"Ctrl+Option":"Ctrl+Alt"),m(270,"Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:m(271,"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:m(272,"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:m(273,"Enables the padding around the inlay hints in the editor.")},"editor.inlayHints.maximumLength":{type:"number",default:e.maximumLength,markdownDescription:m(274,"Maximum overall length of inlay hints, for a single line, before they get truncated by the editor. Set to `0` to never truncate")}})}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:Ft(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:St.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:os.string(t.fontFamily,this.defaultValue.fontFamily),padding:_e(t.padding,this.defaultValue.padding),maximumLength:St.clampedInt(t.maximumLength,this.defaultValue.maximumLength,0,Number.MAX_SAFE_INTEGER)}}}class Kae extends Zt{constructor(){super(74,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):St.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?St.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}}class Gae extends js{constructor(){super(75,"lineHeight",$s.lineHeight,e=>js.clamp(e,0,150),{markdownDescription:m(275,`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.`)},0,150)}compute(e,t,i){return e.fontInfo.lineHeight}}class Zae extends Zt{constructor(){const e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:"none",renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,markSectionHeaderRegex:"\\bMARK:\\s*(?-?)\\s*(?