groove-dev 0.18.0 → 0.18.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/CLAUDE.md +7 -0
  2. package/node_modules/@groove-dev/cli/package.json +4 -3
  3. package/node_modules/@groove-dev/daemon/package.json +4 -3
  4. package/node_modules/@groove-dev/daemon/src/api.js +109 -9
  5. package/node_modules/@groove-dev/daemon/src/index.js +68 -1
  6. package/node_modules/@groove-dev/daemon/src/process.js +83 -11
  7. package/node_modules/@groove-dev/daemon/src/registry.js +1 -1
  8. package/node_modules/@groove-dev/gui/.groove/audit.log +1 -0
  9. package/node_modules/@groove-dev/gui/.groove/credentials.json +6 -0
  10. package/node_modules/@groove-dev/gui/dist/assets/index-x5suAiK7.js +182 -0
  11. package/node_modules/@groove-dev/gui/dist/index.html +1 -1
  12. package/node_modules/@groove-dev/gui/package.json +5 -4
  13. package/node_modules/@groove-dev/gui/src/App.jsx +122 -72
  14. package/node_modules/@groove-dev/gui/src/components/AgentActions.jsx +130 -1
  15. package/node_modules/@groove-dev/gui/src/components/AgentChat.jsx +46 -6
  16. package/node_modules/@groove-dev/gui/src/components/AgentNode.jsx +13 -83
  17. package/node_modules/@groove-dev/gui/src/components/SpawnPanel.jsx +91 -6
  18. package/node_modules/@groove-dev/gui/src/stores/groove.js +31 -2
  19. package/node_modules/@groove-dev/gui/src/views/AgentTree.jsx +133 -67
  20. package/package.json +1 -1
  21. package/packages/cli/package.json +4 -3
  22. package/packages/daemon/package.json +4 -3
  23. package/packages/daemon/src/api.js +109 -9
  24. package/packages/daemon/src/index.js +68 -1
  25. package/packages/daemon/src/process.js +83 -11
  26. package/packages/daemon/src/registry.js +1 -1
  27. package/packages/gui/dist/assets/index-x5suAiK7.js +182 -0
  28. package/packages/gui/dist/index.html +1 -1
  29. package/packages/gui/package.json +5 -4
  30. package/packages/gui/src/App.jsx +122 -72
  31. package/packages/gui/src/components/AgentActions.jsx +130 -1
  32. package/packages/gui/src/components/AgentChat.jsx +46 -6
  33. package/packages/gui/src/components/AgentNode.jsx +13 -83
  34. package/packages/gui/src/components/SpawnPanel.jsx +91 -6
  35. package/packages/gui/src/stores/groove.js +31 -2
  36. package/packages/gui/src/views/AgentTree.jsx +133 -67
  37. package/node_modules/@groove-dev/gui/.groove/daemon.host +0 -1
  38. package/node_modules/@groove-dev/gui/.groove/daemon.pid +0 -1
  39. package/node_modules/@groove-dev/gui/dist/assets/index-DXkccbmd.js +0 -182
  40. package/packages/gui/dist/assets/index-DXkccbmd.js +0 -182
@@ -1,182 +0,0 @@
1
- (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const s of r)if(s.type==="childList")for(const a of s.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function i(r){const s={};return r.integrity&&(s.integrity=r.integrity),r.referrerPolicy&&(s.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?s.credentials="include":r.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(r){if(r.ep)return;r.ep=!0;const s=i(r);fetch(r.href,s)}})();function H$(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var F0={exports:{}},Vh={};/**
2
- * @license React
3
- * react-jsx-runtime.production.js
4
- *
5
- * Copyright (c) Meta Platforms, Inc. and affiliates.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */var Ik;function V3(){if(Ik)return Vh;Ik=1;var t=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function i(n,r,s){var a=null;if(s!==void 0&&(a=""+s),r.key!==void 0&&(a=""+r.key),"key"in r){s={};for(var c in r)c!=="key"&&(s[c]=r[c])}else s=r;return r=s.ref,{$$typeof:t,type:n,key:a,ref:r!==void 0?r:null,props:s}}return Vh.Fragment=e,Vh.jsx=i,Vh.jsxs=i,Vh}var Vk;function Y3(){return Vk||(Vk=1,F0.exports=V3()),F0.exports}var O=Y3(),K0={exports:{}},We={};/**
10
- * @license React
11
- * react.production.js
12
- *
13
- * Copyright (c) Meta Platforms, Inc. and affiliates.
14
- *
15
- * This source code is licensed under the MIT license found in the
16
- * LICENSE file in the root directory of this source tree.
17
- */var Yk;function H3(){if(Yk)return We;Yk=1;var t=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),a=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),m=Symbol.iterator;function v(D){return D===null||typeof D!="object"?null:(D=m&&D[m]||D["@@iterator"],typeof D=="function"?D:null)}var S={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,w={};function x(D,I,J){this.props=D,this.context=I,this.refs=w,this.updater=J||S}x.prototype.isReactComponent={},x.prototype.setState=function(D,I){if(typeof D!="object"&&typeof D!="function"&&D!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,D,I,"setState")},x.prototype.forceUpdate=function(D){this.updater.enqueueForceUpdate(this,D,"forceUpdate")};function Q(){}Q.prototype=x.prototype;function C(D,I,J){this.props=D,this.context=I,this.refs=w,this.updater=J||S}var T=C.prototype=new Q;T.constructor=C,_(T,x.prototype),T.isPureReactComponent=!0;var A=Array.isArray;function P(){}var M={H:null,A:null,T:null,S:null},V=Object.prototype.hasOwnProperty;function H(D,I,J){var ne=J.ref;return{$$typeof:t,type:D,key:I,ref:ne!==void 0?ne:null,props:J}}function G(D,I){return H(D.type,I,D.props)}function N(D){return typeof D=="object"&&D!==null&&D.$$typeof===t}function j(D){var I={"=":"=0",":":"=2"};return"$"+D.replace(/[=:]/g,function(J){return I[J]})}var B=/\/+/g;function E(D,I){return typeof D=="object"&&D!==null&&D.key!=null?j(""+D.key):I.toString(36)}function W(D){switch(D.status){case"fulfilled":return D.value;case"rejected":throw D.reason;default:switch(typeof D.status=="string"?D.then(P,P):(D.status="pending",D.then(function(I){D.status==="pending"&&(D.status="fulfilled",D.value=I)},function(I){D.status==="pending"&&(D.status="rejected",D.reason=I)})),D.status){case"fulfilled":return D.value;case"rejected":throw D.reason}}throw D}function $(D,I,J,ne,ce){var de=typeof D;(de==="undefined"||de==="boolean")&&(D=null);var pe=!1;if(D===null)pe=!0;else switch(de){case"bigint":case"string":case"number":pe=!0;break;case"object":switch(D.$$typeof){case t:case e:pe=!0;break;case f:return pe=D._init,$(pe(D._payload),I,J,ne,ce)}}if(pe)return ce=ce(D),pe=ne===""?"."+E(D,0):ne,A(ce)?(J="",pe!=null&&(J=pe.replace(B,"$&/")+"/"),$(ce,I,J,"",function(je){return je})):ce!=null&&(N(ce)&&(ce=G(ce,J+(ce.key==null||D&&D.key===ce.key?"":(""+ce.key).replace(B,"$&/")+"/")+pe)),I.push(ce)),1;pe=0;var fe=ne===""?".":ne+":";if(A(D))for(var Oe=0;Oe<D.length;Oe++)ne=D[Oe],de=fe+E(ne,Oe),pe+=$(ne,I,J,de,ce);else if(Oe=v(D),typeof Oe=="function")for(D=Oe.call(D),Oe=0;!(ne=D.next()).done;)ne=ne.value,de=fe+E(ne,Oe++),pe+=$(ne,I,J,de,ce);else if(de==="object"){if(typeof D.then=="function")return $(W(D),I,J,ne,ce);throw I=String(D),Error("Objects are not valid as a React child (found: "+(I==="[object Object]"?"object with keys {"+Object.keys(D).join(", ")+"}":I)+"). If you meant to render a collection of children, use an array instead.")}return pe}function Z(D,I,J){if(D==null)return D;var ne=[],ce=0;return $(D,ne,"","",function(de){return I.call(J,de,ce++)}),ne}function z(D){if(D._status===-1){var I=D._result;I=I(),I.then(function(J){(D._status===0||D._status===-1)&&(D._status=1,D._result=J)},function(J){(D._status===0||D._status===-1)&&(D._status=2,D._result=J)}),D._status===-1&&(D._status=0,D._result=I)}if(D._status===1)return D._result.default;throw D._result}var L=typeof reportError=="function"?reportError:function(D){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var I=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof D=="object"&&D!==null&&typeof D.message=="string"?String(D.message):String(D),error:D});if(!window.dispatchEvent(I))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",D);return}console.error(D)},U={map:Z,forEach:function(D,I,J){Z(D,function(){I.apply(this,arguments)},J)},count:function(D){var I=0;return Z(D,function(){I++}),I},toArray:function(D){return Z(D,function(I){return I})||[]},only:function(D){if(!N(D))throw Error("React.Children.only expected to receive a single React element child.");return D}};return We.Activity=g,We.Children=U,We.Component=x,We.Fragment=i,We.Profiler=r,We.PureComponent=C,We.StrictMode=n,We.Suspense=h,We.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=M,We.__COMPILER_RUNTIME={__proto__:null,c:function(D){return M.H.useMemoCache(D)}},We.cache=function(D){return function(){return D.apply(null,arguments)}},We.cacheSignal=function(){return null},We.cloneElement=function(D,I,J){if(D==null)throw Error("The argument must be a React element, but you passed "+D+".");var ne=_({},D.props),ce=D.key;if(I!=null)for(de in I.key!==void 0&&(ce=""+I.key),I)!V.call(I,de)||de==="key"||de==="__self"||de==="__source"||de==="ref"&&I.ref===void 0||(ne[de]=I[de]);var de=arguments.length-2;if(de===1)ne.children=J;else if(1<de){for(var pe=Array(de),fe=0;fe<de;fe++)pe[fe]=arguments[fe+2];ne.children=pe}return H(D.type,ce,ne)},We.createContext=function(D){return D={$$typeof:a,_currentValue:D,_currentValue2:D,_threadCount:0,Provider:null,Consumer:null},D.Provider=D,D.Consumer={$$typeof:s,_context:D},D},We.createElement=function(D,I,J){var ne,ce={},de=null;if(I!=null)for(ne in I.key!==void 0&&(de=""+I.key),I)V.call(I,ne)&&ne!=="key"&&ne!=="__self"&&ne!=="__source"&&(ce[ne]=I[ne]);var pe=arguments.length-2;if(pe===1)ce.children=J;else if(1<pe){for(var fe=Array(pe),Oe=0;Oe<pe;Oe++)fe[Oe]=arguments[Oe+2];ce.children=fe}if(D&&D.defaultProps)for(ne in pe=D.defaultProps,pe)ce[ne]===void 0&&(ce[ne]=pe[ne]);return H(D,de,ce)},We.createRef=function(){return{current:null}},We.forwardRef=function(D){return{$$typeof:c,render:D}},We.isValidElement=N,We.lazy=function(D){return{$$typeof:f,_payload:{_status:-1,_result:D},_init:z}},We.memo=function(D,I){return{$$typeof:d,type:D,compare:I===void 0?null:I}},We.startTransition=function(D){var I=M.T,J={};M.T=J;try{var ne=D(),ce=M.S;ce!==null&&ce(J,ne),typeof ne=="object"&&ne!==null&&typeof ne.then=="function"&&ne.then(P,L)}catch(de){L(de)}finally{I!==null&&J.types!==null&&(I.types=J.types),M.T=I}},We.unstable_useCacheRefresh=function(){return M.H.useCacheRefresh()},We.use=function(D){return M.H.use(D)},We.useActionState=function(D,I,J){return M.H.useActionState(D,I,J)},We.useCallback=function(D,I){return M.H.useCallback(D,I)},We.useContext=function(D){return M.H.useContext(D)},We.useDebugValue=function(){},We.useDeferredValue=function(D,I){return M.H.useDeferredValue(D,I)},We.useEffect=function(D,I){return M.H.useEffect(D,I)},We.useEffectEvent=function(D){return M.H.useEffectEvent(D)},We.useId=function(){return M.H.useId()},We.useImperativeHandle=function(D,I,J){return M.H.useImperativeHandle(D,I,J)},We.useInsertionEffect=function(D,I){return M.H.useInsertionEffect(D,I)},We.useLayoutEffect=function(D,I){return M.H.useLayoutEffect(D,I)},We.useMemo=function(D,I){return M.H.useMemo(D,I)},We.useOptimistic=function(D,I){return M.H.useOptimistic(D,I)},We.useReducer=function(D,I,J){return M.H.useReducer(D,I,J)},We.useRef=function(D){return M.H.useRef(D)},We.useState=function(D){return M.H.useState(D)},We.useSyncExternalStore=function(D,I,J){return M.H.useSyncExternalStore(D,I,J)},We.useTransition=function(){return M.H.useTransition()},We.version="19.2.4",We}var Hk;function hd(){return Hk||(Hk=1,K0.exports=H3()),K0.exports}var X=hd();const In=H$(X);var J0={exports:{}},Yh={},ev={exports:{}},tv={};/**
18
- * @license React
19
- * scheduler.production.js
20
- *
21
- * Copyright (c) Meta Platforms, Inc. and affiliates.
22
- *
23
- * This source code is licensed under the MIT license found in the
24
- * LICENSE file in the root directory of this source tree.
25
- */var Uk;function U3(){return Uk||(Uk=1,(function(t){function e($,Z){var z=$.length;$.push(Z);e:for(;0<z;){var L=z-1>>>1,U=$[L];if(0<r(U,Z))$[L]=Z,$[z]=U,z=L;else break e}}function i($){return $.length===0?null:$[0]}function n($){if($.length===0)return null;var Z=$[0],z=$.pop();if(z!==Z){$[0]=z;e:for(var L=0,U=$.length,D=U>>>1;L<D;){var I=2*(L+1)-1,J=$[I],ne=I+1,ce=$[ne];if(0>r(J,z))ne<U&&0>r(ce,J)?($[L]=ce,$[ne]=z,L=ne):($[L]=J,$[I]=z,L=I);else if(ne<U&&0>r(ce,z))$[L]=ce,$[ne]=z,L=ne;else break e}}return Z}function r($,Z){var z=$.sortIndex-Z.sortIndex;return z!==0?z:$.id-Z.id}if(t.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var s=performance;t.unstable_now=function(){return s.now()}}else{var a=Date,c=a.now();t.unstable_now=function(){return a.now()-c}}var h=[],d=[],f=1,g=null,m=3,v=!1,S=!1,_=!1,w=!1,x=typeof setTimeout=="function"?setTimeout:null,Q=typeof clearTimeout=="function"?clearTimeout:null,C=typeof setImmediate<"u"?setImmediate:null;function T($){for(var Z=i(d);Z!==null;){if(Z.callback===null)n(d);else if(Z.startTime<=$)n(d),Z.sortIndex=Z.expirationTime,e(h,Z);else break;Z=i(d)}}function A($){if(_=!1,T($),!S)if(i(h)!==null)S=!0,P||(P=!0,j());else{var Z=i(d);Z!==null&&W(A,Z.startTime-$)}}var P=!1,M=-1,V=5,H=-1;function G(){return w?!0:!(t.unstable_now()-H<V)}function N(){if(w=!1,P){var $=t.unstable_now();H=$;var Z=!0;try{e:{S=!1,_&&(_=!1,Q(M),M=-1),v=!0;var z=m;try{t:{for(T($),g=i(h);g!==null&&!(g.expirationTime>$&&G());){var L=g.callback;if(typeof L=="function"){g.callback=null,m=g.priorityLevel;var U=L(g.expirationTime<=$);if($=t.unstable_now(),typeof U=="function"){g.callback=U,T($),Z=!0;break t}g===i(h)&&n(h),T($)}else n(h);g=i(h)}if(g!==null)Z=!0;else{var D=i(d);D!==null&&W(A,D.startTime-$),Z=!1}}break e}finally{g=null,m=z,v=!1}Z=void 0}}finally{Z?j():P=!1}}}var j;if(typeof C=="function")j=function(){C(N)};else if(typeof MessageChannel<"u"){var B=new MessageChannel,E=B.port2;B.port1.onmessage=N,j=function(){E.postMessage(null)}}else j=function(){x(N,0)};function W($,Z){M=x(function(){$(t.unstable_now())},Z)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function($){$.callback=null},t.unstable_forceFrameRate=function($){0>$||125<$?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):V=0<$?Math.floor(1e3/$):5},t.unstable_getCurrentPriorityLevel=function(){return m},t.unstable_next=function($){switch(m){case 1:case 2:case 3:var Z=3;break;default:Z=m}var z=m;m=Z;try{return $()}finally{m=z}},t.unstable_requestPaint=function(){w=!0},t.unstable_runWithPriority=function($,Z){switch($){case 1:case 2:case 3:case 4:case 5:break;default:$=3}var z=m;m=$;try{return Z()}finally{m=z}},t.unstable_scheduleCallback=function($,Z,z){var L=t.unstable_now();switch(typeof z=="object"&&z!==null?(z=z.delay,z=typeof z=="number"&&0<z?L+z:L):z=L,$){case 1:var U=-1;break;case 2:U=250;break;case 5:U=1073741823;break;case 4:U=1e4;break;default:U=5e3}return U=z+U,$={id:f++,callback:Z,priorityLevel:$,startTime:z,expirationTime:U,sortIndex:-1},z>L?($.sortIndex=z,e(d,$),i(h)===null&&$===i(d)&&(_?(Q(M),M=-1):_=!0,W(A,z-L))):($.sortIndex=U,e(h,$),S||v||(S=!0,P||(P=!0,j()))),$},t.unstable_shouldYield=G,t.unstable_wrapCallback=function($){var Z=m;return function(){var z=m;m=Z;try{return $.apply(this,arguments)}finally{m=z}}}})(tv)),tv}var Gk;function G3(){return Gk||(Gk=1,ev.exports=U3()),ev.exports}var iv={exports:{}},qi={};/**
26
- * @license React
27
- * react-dom.production.js
28
- *
29
- * Copyright (c) Meta Platforms, Inc. and affiliates.
30
- *
31
- * This source code is licensed under the MIT license found in the
32
- * LICENSE file in the root directory of this source tree.
33
- */var Fk;function F3(){if(Fk)return qi;Fk=1;var t=hd();function e(h){var d="https://react.dev/errors/"+h;if(1<arguments.length){d+="?args[]="+encodeURIComponent(arguments[1]);for(var f=2;f<arguments.length;f++)d+="&args[]="+encodeURIComponent(arguments[f])}return"Minified React error #"+h+"; visit "+d+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function i(){}var n={d:{f:i,r:function(){throw Error(e(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},r=Symbol.for("react.portal");function s(h,d,f){var g=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:r,key:g==null?null:""+g,children:h,containerInfo:d,implementation:f}}var a=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(h,d){if(h==="font")return"";if(typeof d=="string")return d==="use-credentials"?d:""}return qi.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=n,qi.createPortal=function(h,d){var f=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!d||d.nodeType!==1&&d.nodeType!==9&&d.nodeType!==11)throw Error(e(299));return s(h,d,null,f)},qi.flushSync=function(h){var d=a.T,f=n.p;try{if(a.T=null,n.p=2,h)return h()}finally{a.T=d,n.p=f,n.d.f()}},qi.preconnect=function(h,d){typeof h=="string"&&(d?(d=d.crossOrigin,d=typeof d=="string"?d==="use-credentials"?d:"":void 0):d=null,n.d.C(h,d))},qi.prefetchDNS=function(h){typeof h=="string"&&n.d.D(h)},qi.preinit=function(h,d){if(typeof h=="string"&&d&&typeof d.as=="string"){var f=d.as,g=c(f,d.crossOrigin),m=typeof d.integrity=="string"?d.integrity:void 0,v=typeof d.fetchPriority=="string"?d.fetchPriority:void 0;f==="style"?n.d.S(h,typeof d.precedence=="string"?d.precedence:void 0,{crossOrigin:g,integrity:m,fetchPriority:v}):f==="script"&&n.d.X(h,{crossOrigin:g,integrity:m,fetchPriority:v,nonce:typeof d.nonce=="string"?d.nonce:void 0})}},qi.preinitModule=function(h,d){if(typeof h=="string")if(typeof d=="object"&&d!==null){if(d.as==null||d.as==="script"){var f=c(d.as,d.crossOrigin);n.d.M(h,{crossOrigin:f,integrity:typeof d.integrity=="string"?d.integrity:void 0,nonce:typeof d.nonce=="string"?d.nonce:void 0})}}else d==null&&n.d.M(h)},qi.preload=function(h,d){if(typeof h=="string"&&typeof d=="object"&&d!==null&&typeof d.as=="string"){var f=d.as,g=c(f,d.crossOrigin);n.d.L(h,f,{crossOrigin:g,integrity:typeof d.integrity=="string"?d.integrity:void 0,nonce:typeof d.nonce=="string"?d.nonce:void 0,type:typeof d.type=="string"?d.type:void 0,fetchPriority:typeof d.fetchPriority=="string"?d.fetchPriority:void 0,referrerPolicy:typeof d.referrerPolicy=="string"?d.referrerPolicy:void 0,imageSrcSet:typeof d.imageSrcSet=="string"?d.imageSrcSet:void 0,imageSizes:typeof d.imageSizes=="string"?d.imageSizes:void 0,media:typeof d.media=="string"?d.media:void 0})}},qi.preloadModule=function(h,d){if(typeof h=="string")if(d){var f=c(d.as,d.crossOrigin);n.d.m(h,{as:typeof d.as=="string"&&d.as!=="script"?d.as:void 0,crossOrigin:f,integrity:typeof d.integrity=="string"?d.integrity:void 0})}else n.d.m(h)},qi.requestFormReset=function(h){n.d.r(h)},qi.unstable_batchedUpdates=function(h,d){return h(d)},qi.useFormState=function(h,d,f){return a.H.useFormState(h,d,f)},qi.useFormStatus=function(){return a.H.useHostTransitionStatus()},qi.version="19.2.4",qi}var Kk;function U$(){if(Kk)return iv.exports;Kk=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(e){console.error(e)}}return t(),iv.exports=F3(),iv.exports}/**
34
- * @license React
35
- * react-dom-client.production.js
36
- *
37
- * Copyright (c) Meta Platforms, Inc. and affiliates.
38
- *
39
- * This source code is licensed under the MIT license found in the
40
- * LICENSE file in the root directory of this source tree.
41
- */var Jk;function K3(){if(Jk)return Yh;Jk=1;var t=G3(),e=hd(),i=U$();function n(o){var l="https://react.dev/errors/"+o;if(1<arguments.length){l+="?args[]="+encodeURIComponent(arguments[1]);for(var u=2;u<arguments.length;u++)l+="&args[]="+encodeURIComponent(arguments[u])}return"Minified React error #"+o+"; visit "+l+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(o){return!(!o||o.nodeType!==1&&o.nodeType!==9&&o.nodeType!==11)}function s(o){var l=o,u=o;if(o.alternate)for(;l.return;)l=l.return;else{o=l;do l=o,(l.flags&4098)!==0&&(u=l.return),o=l.return;while(o)}return l.tag===3?u:null}function a(o){if(o.tag===13){var l=o.memoizedState;if(l===null&&(o=o.alternate,o!==null&&(l=o.memoizedState)),l!==null)return l.dehydrated}return null}function c(o){if(o.tag===31){var l=o.memoizedState;if(l===null&&(o=o.alternate,o!==null&&(l=o.memoizedState)),l!==null)return l.dehydrated}return null}function h(o){if(s(o)!==o)throw Error(n(188))}function d(o){var l=o.alternate;if(!l){if(l=s(o),l===null)throw Error(n(188));return l!==o?null:o}for(var u=o,p=l;;){var y=u.return;if(y===null)break;var b=y.alternate;if(b===null){if(p=y.return,p!==null){u=p;continue}break}if(y.child===b.child){for(b=y.child;b;){if(b===u)return h(y),o;if(b===p)return h(y),l;b=b.sibling}throw Error(n(188))}if(u.return!==p.return)u=y,p=b;else{for(var k=!1,R=y.child;R;){if(R===u){k=!0,u=y,p=b;break}if(R===p){k=!0,p=y,u=b;break}R=R.sibling}if(!k){for(R=b.child;R;){if(R===u){k=!0,u=b,p=y;break}if(R===p){k=!0,p=b,u=y;break}R=R.sibling}if(!k)throw Error(n(189))}}if(u.alternate!==p)throw Error(n(190))}if(u.tag!==3)throw Error(n(188));return u.stateNode.current===u?o:l}function f(o){var l=o.tag;if(l===5||l===26||l===27||l===6)return o;for(o=o.child;o!==null;){if(l=f(o),l!==null)return l;o=o.sibling}return null}var g=Object.assign,m=Symbol.for("react.element"),v=Symbol.for("react.transitional.element"),S=Symbol.for("react.portal"),_=Symbol.for("react.fragment"),w=Symbol.for("react.strict_mode"),x=Symbol.for("react.profiler"),Q=Symbol.for("react.consumer"),C=Symbol.for("react.context"),T=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),P=Symbol.for("react.suspense_list"),M=Symbol.for("react.memo"),V=Symbol.for("react.lazy"),H=Symbol.for("react.activity"),G=Symbol.for("react.memo_cache_sentinel"),N=Symbol.iterator;function j(o){return o===null||typeof o!="object"?null:(o=N&&o[N]||o["@@iterator"],typeof o=="function"?o:null)}var B=Symbol.for("react.client.reference");function E(o){if(o==null)return null;if(typeof o=="function")return o.$$typeof===B?null:o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case _:return"Fragment";case x:return"Profiler";case w:return"StrictMode";case A:return"Suspense";case P:return"SuspenseList";case H:return"Activity"}if(typeof o=="object")switch(o.$$typeof){case S:return"Portal";case C:return o.displayName||"Context";case Q:return(o._context.displayName||"Context")+".Consumer";case T:var l=o.render;return o=o.displayName,o||(o=l.displayName||l.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case M:return l=o.displayName||null,l!==null?l:E(o.type)||"Memo";case V:l=o._payload,o=o._init;try{return E(o(l))}catch{}}return null}var W=Array.isArray,$=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Z=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,z={pending:!1,data:null,method:null,action:null},L=[],U=-1;function D(o){return{current:o}}function I(o){0>U||(o.current=L[U],L[U]=null,U--)}function J(o,l){U++,L[U]=o.current,o.current=l}var ne=D(null),ce=D(null),de=D(null),pe=D(null);function fe(o,l){switch(J(de,l),J(ce,o),J(ne,null),l.nodeType){case 9:case 11:o=(o=l.documentElement)&&(o=o.namespaceURI)?pk(o):0;break;default:if(o=l.tagName,l=l.namespaceURI)l=pk(l),o=gk(l,o);else switch(o){case"svg":o=1;break;case"math":o=2;break;default:o=0}}I(ne),J(ne,o)}function Oe(){I(ne),I(ce),I(de)}function je(o){o.memoizedState!==null&&J(pe,o);var l=ne.current,u=gk(l,o.type);l!==u&&(J(ce,o),J(ne,u))}function $e(o){ce.current===o&&(I(ne),I(ce)),pe.current===o&&(I(pe),Zh._currentValue=z)}var Te,me;function Be(o){if(Te===void 0)try{throw Error()}catch(u){var l=u.stack.trim().match(/\n( *(at )?)/);Te=l&&l[1]||"",me=-1<u.stack.indexOf(`
42
- at`)?" (<anonymous>)":-1<u.stack.indexOf("@")?"@unknown:0:0":""}return`
43
- `+Te+o+me}var at=!1;function He(o,l){if(!o||at)return"";at=!0;var u=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var p={DetermineComponentFrameRoot:function(){try{if(l){var he=function(){throw Error()};if(Object.defineProperty(he.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(he,[])}catch(se){var re=se}Reflect.construct(o,[],he)}else{try{he.call()}catch(se){re=se}o.call(he.prototype)}}else{try{throw Error()}catch(se){re=se}(he=o())&&typeof he.catch=="function"&&he.catch(function(){})}}catch(se){if(se&&re&&typeof se.stack=="string")return[se.stack,re.stack]}return[null,null]}};p.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var y=Object.getOwnPropertyDescriptor(p.DetermineComponentFrameRoot,"name");y&&y.configurable&&Object.defineProperty(p.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var b=p.DetermineComponentFrameRoot(),k=b[0],R=b[1];if(k&&R){var Y=k.split(`
44
- `),te=R.split(`
45
- `);for(y=p=0;p<Y.length&&!Y[p].includes("DetermineComponentFrameRoot");)p++;for(;y<te.length&&!te[y].includes("DetermineComponentFrameRoot");)y++;if(p===Y.length||y===te.length)for(p=Y.length-1,y=te.length-1;1<=p&&0<=y&&Y[p]!==te[y];)y--;for(;1<=p&&0<=y;p--,y--)if(Y[p]!==te[y]){if(p!==1||y!==1)do if(p--,y--,0>y||Y[p]!==te[y]){var oe=`
46
- `+Y[p].replace(" at new "," at ");return o.displayName&&oe.includes("<anonymous>")&&(oe=oe.replace("<anonymous>",o.displayName)),oe}while(1<=p&&0<=y);break}}}finally{at=!1,Error.prepareStackTrace=u}return(u=o?o.displayName||o.name:"")?Be(u):""}function Dt(o,l){switch(o.tag){case 26:case 27:case 5:return Be(o.type);case 16:return Be("Lazy");case 13:return o.child!==l&&l!==null?Be("Suspense Fallback"):Be("Suspense");case 19:return Be("SuspenseList");case 0:case 15:return He(o.type,!1);case 11:return He(o.type.render,!1);case 1:return He(o.type,!0);case 31:return Be("Activity");default:return""}}function Jt(o){try{var l="",u=null;do l+=Dt(o,u),u=o,o=o.return;while(o);return l}catch(p){return`
47
- Error generating stack: `+p.message+`
48
- `+p.stack}}var Gi=Object.prototype.hasOwnProperty,an=t.unstable_scheduleCallback,mr=t.unstable_cancelCallback,jr=t.unstable_shouldYield,fs=t.unstable_requestPaint,hi=t.unstable_now,Or=t.unstable_getCurrentPriorityLevel,Pi=t.unstable_ImmediatePriority,wn=t.unstable_UserBlockingPriority,kn=t.unstable_NormalPriority,Ol=t.unstable_LowPriority,Cn=t.unstable_IdlePriority,ro=t.log,Ed=t.unstable_setDisableYieldValue,Dr=null,Si=null;function Tn(o){if(typeof ro=="function"&&Ed(o),Si&&typeof Si.setStrictMode=="function")try{Si.setStrictMode(Dr,o)}catch{}}var Ei=Math.clz32?Math.clz32:Jc,Fc=Math.log,Kc=Math.LN2;function Jc(o){return o>>>=0,o===0?32:31-(Fc(o)/Kc|0)|0}var so=256,Gn=262144,Br=4194304;function Qn(o){var l=o&42;if(l!==0)return l;switch(o&-o){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return o&261888;case 262144:case 524288:case 1048576:case 2097152:return o&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return o&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return o}}function oo(o,l,u){var p=o.pendingLanes;if(p===0)return 0;var y=0,b=o.suspendedLanes,k=o.pingedLanes;o=o.warmLanes;var R=p&134217727;return R!==0?(p=R&~b,p!==0?y=Qn(p):(k&=R,k!==0?y=Qn(k):u||(u=R&~o,u!==0&&(y=Qn(u))))):(R=p&~b,R!==0?y=Qn(R):k!==0?y=Qn(k):u||(u=p&~o,u!==0&&(y=Qn(u)))),y===0?0:l!==0&&l!==y&&(l&b)===0&&(b=y&-y,u=l&-l,b>=u||b===32&&(u&4194048)!==0)?l:y}function Lr(o,l){return(o.pendingLanes&~(o.suspendedLanes&~o.pingedLanes)&l)===0}function eh(o,l){switch(o){case 1:case 2:case 4:case 8:case 64:return l+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return l+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function vl(){var o=Br;return Br<<=1,(Br&62914560)===0&&(Br=4194304),o}function ao(o){for(var l=[],u=0;31>u;u++)l.push(o);return l}function ps(o,l){o.pendingLanes|=l,l!==268435456&&(o.suspendedLanes=0,o.pingedLanes=0,o.warmLanes=0)}function th(o,l,u,p,y,b){var k=o.pendingLanes;o.pendingLanes=u,o.suspendedLanes=0,o.pingedLanes=0,o.warmLanes=0,o.expiredLanes&=u,o.entangledLanes&=u,o.errorRecoveryDisabledLanes&=u,o.shellSuspendCounter=0;var R=o.entanglements,Y=o.expirationTimes,te=o.hiddenUpdates;for(u=k&~u;0<u;){var oe=31-Ei(u),he=1<<oe;R[oe]=0,Y[oe]=-1;var re=te[oe];if(re!==null)for(te[oe]=null,oe=0;oe<re.length;oe++){var se=re[oe];se!==null&&(se.lane&=-536870913)}u&=~he}p!==0&&ie(o,p,0),b!==0&&y===0&&o.tag!==0&&(o.suspendedLanes|=b&~(k&~l))}function ie(o,l,u){o.pendingLanes|=l,o.suspendedLanes&=~l;var p=31-Ei(l);o.entangledLanes|=l,o.entanglements[p]=o.entanglements[p]|1073741824|u&261930}function Ne(o,l){var u=o.entangledLanes|=l;for(o=o.entanglements;u;){var p=31-Ei(u),y=1<<p;y&l|o[p]&l&&(o[p]|=l),u&=~y}}function lt(o,l){var u=l&-l;return u=(u&42)!==0?1:ui(u),(u&(o.suspendedLanes|l))!==0?0:u}function ui(o){switch(o){case 2:o=1;break;case 8:o=4;break;case 32:o=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:o=128;break;case 268435456:o=134217728;break;default:o=0}return o}function ln(o){return o&=-o,2<o?8<o?(o&134217727)!==0?32:268435456:8:2}function $n(){var o=Z.p;return o!==0?o:(o=window.event,o===void 0?32:Bk(o.type))}function vr(o,l){var u=Z.p;try{return Z.p=o,l()}finally{Z.p=u}}var Xr=Math.random().toString(36).slice(2),di="__reactFiber$"+Xr,Wi="__reactProps$"+Xr,gs="__reactContainer$"+Xr,yl="__reactEvents$"+Xr,Rd="__reactListeners$"+Xr,Zm="__reactHandles$"+Xr,Ad="__reactResources$"+Xr,ma="__reactMarker$"+Xr;function ih(o){delete o[di],delete o[Wi],delete o[yl],delete o[Rd],delete o[Zm]}function lo(o){var l=o[di];if(l)return l;for(var u=o.parentNode;u;){if(l=u[gs]||u[di]){if(u=l.alternate,l.child!==null||u!==null&&u.child!==null)for(o=_k(o);o!==null;){if(u=o[di])return u;o=_k(o)}return l}o=u,u=o.parentNode}return null}function co(o){if(o=o[di]||o[gs]){var l=o.tag;if(l===5||l===6||l===13||l===31||l===26||l===27||l===3)return o}return null}function ho(o){var l=o.tag;if(l===5||l===26||l===27||l===6)return o.stateNode;throw Error(n(33))}function uo(o){var l=o[Ad];return l||(l=o[Ad]={hoistableStyles:new Map,hoistableScripts:new Map}),l}function ei(o){o[ma]=!0}var Md=new Set,zd={};function ms(o,l){fo(o,l),fo(o+"Capture",l)}function fo(o,l){for(zd[o]=l,o=0;o<l.length;o++)Md.add(l[o])}var Wm=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),nh={},jd={};function qm(o){return Gi.call(jd,o)?!0:Gi.call(nh,o)?!1:Wm.test(o)?jd[o]=!0:(nh[o]=!0,!1)}function Sl(o,l,u){if(qm(l))if(u===null)o.removeAttribute(l);else{switch(typeof u){case"undefined":case"function":case"symbol":o.removeAttribute(l);return;case"boolean":var p=l.toLowerCase().slice(0,5);if(p!=="data-"&&p!=="aria-"){o.removeAttribute(l);return}}o.setAttribute(l,""+u)}}function bl(o,l,u){if(u===null)o.removeAttribute(l);else{switch(typeof u){case"undefined":case"function":case"symbol":case"boolean":o.removeAttribute(l);return}o.setAttribute(l,""+u)}}function yr(o,l,u,p){if(p===null)o.removeAttribute(u);else{switch(typeof p){case"undefined":case"function":case"symbol":case"boolean":o.removeAttribute(u);return}o.setAttributeNS(l,u,""+p)}}function cn(o){switch(typeof o){case"bigint":case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function Dd(o){var l=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(l==="checkbox"||l==="radio")}function Im(o,l,u){var p=Object.getOwnPropertyDescriptor(o.constructor.prototype,l);if(!o.hasOwnProperty(l)&&typeof p<"u"&&typeof p.get=="function"&&typeof p.set=="function"){var y=p.get,b=p.set;return Object.defineProperty(o,l,{configurable:!0,get:function(){return y.call(this)},set:function(k){u=""+k,b.call(this,k)}}),Object.defineProperty(o,l,{enumerable:p.enumerable}),{getValue:function(){return u},setValue:function(k){u=""+k},stopTracking:function(){o._valueTracker=null,delete o[l]}}}}function po(o){if(!o._valueTracker){var l=Dd(o)?"checked":"value";o._valueTracker=Im(o,l,""+o[l])}}function Bd(o){if(!o)return!1;var l=o._valueTracker;if(!l)return!0;var u=l.getValue(),p="";return o&&(p=Dd(o)?o.checked?"true":"false":o.value),o=p,o!==u?(l.setValue(o),!0):!1}function Oa(o){if(o=o||(typeof document<"u"?document:void 0),typeof o>"u")return null;try{return o.activeElement||o.body}catch{return o.body}}var Vm=/[\n"\\]/g;function hn(o){return o.replace(Vm,function(l){return"\\"+l.charCodeAt(0).toString(16)+" "})}function va(o,l,u,p,y,b,k,R){o.name="",k!=null&&typeof k!="function"&&typeof k!="symbol"&&typeof k!="boolean"?o.type=k:o.removeAttribute("type"),l!=null?k==="number"?(l===0&&o.value===""||o.value!=l)&&(o.value=""+cn(l)):o.value!==""+cn(l)&&(o.value=""+cn(l)):k!=="submit"&&k!=="reset"||o.removeAttribute("value"),l!=null?rh(o,k,cn(l)):u!=null?rh(o,k,cn(u)):p!=null&&o.removeAttribute("value"),y==null&&b!=null&&(o.defaultChecked=!!b),y!=null&&(o.checked=y&&typeof y!="function"&&typeof y!="symbol"),R!=null&&typeof R!="function"&&typeof R!="symbol"&&typeof R!="boolean"?o.name=""+cn(R):o.removeAttribute("name")}function Ld(o,l,u,p,y,b,k,R){if(b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"&&(o.type=b),l!=null||u!=null){if(!(b!=="submit"&&b!=="reset"||l!=null)){po(o);return}u=u!=null?""+cn(u):"",l=l!=null?""+cn(l):u,R||l===o.value||(o.value=l),o.defaultValue=l}p=p??y,p=typeof p!="function"&&typeof p!="symbol"&&!!p,o.checked=R?o.checked:!!p,o.defaultChecked=!!p,k!=null&&typeof k!="function"&&typeof k!="symbol"&&typeof k!="boolean"&&(o.name=k),po(o)}function rh(o,l,u){l==="number"&&Oa(o.ownerDocument)===o||o.defaultValue===""+u||(o.defaultValue=""+u)}function Os(o,l,u,p){if(o=o.options,l){l={};for(var y=0;y<u.length;y++)l["$"+u[y]]=!0;for(u=0;u<o.length;u++)y=l.hasOwnProperty("$"+o[u].value),o[u].selected!==y&&(o[u].selected=y),y&&p&&(o[u].defaultSelected=!0)}else{for(u=""+cn(u),l=null,y=0;y<o.length;y++){if(o[y].value===u){o[y].selected=!0,p&&(o[y].defaultSelected=!0);return}l!==null||o[y].disabled||(l=o[y])}l!==null&&(l.selected=!0)}}function c_(o,l,u){if(l!=null&&(l=""+cn(l),l!==o.value&&(o.value=l),u==null)){o.defaultValue!==l&&(o.defaultValue=l);return}o.defaultValue=u!=null?""+cn(u):""}function h_(o,l,u,p){if(l==null){if(p!=null){if(u!=null)throw Error(n(92));if(W(p)){if(1<p.length)throw Error(n(93));p=p[0]}u=p}u==null&&(u=""),l=u}u=cn(l),o.defaultValue=u,p=o.textContent,p===u&&p!==""&&p!==null&&(o.value=p),po(o)}function _l(o,l){if(l){var u=o.firstChild;if(u&&u===o.lastChild&&u.nodeType===3){u.nodeValue=l;return}}o.textContent=l}var Nz=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function u_(o,l,u){var p=l.indexOf("--")===0;u==null||typeof u=="boolean"||u===""?p?o.setProperty(l,""):l==="float"?o.cssFloat="":o[l]="":p?o.setProperty(l,u):typeof u!="number"||u===0||Nz.has(l)?l==="float"?o.cssFloat=u:o[l]=(""+u).trim():o[l]=u+"px"}function d_(o,l,u){if(l!=null&&typeof l!="object")throw Error(n(62));if(o=o.style,u!=null){for(var p in u)!u.hasOwnProperty(p)||l!=null&&l.hasOwnProperty(p)||(p.indexOf("--")===0?o.setProperty(p,""):p==="float"?o.cssFloat="":o[p]="");for(var y in l)p=l[y],l.hasOwnProperty(y)&&u[y]!==p&&u_(o,y,p)}else for(var b in l)l.hasOwnProperty(b)&&u_(o,b,l[b])}function Ym(o){if(o.indexOf("-")===-1)return!1;switch(o){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Zz=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),Wz=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Xd(o){return Wz.test(""+o)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":o}function vs(){}var Hm=null;function Um(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var xl=null,wl=null;function f_(o){var l=co(o);if(l&&(o=l.stateNode)){var u=o[Wi]||null;e:switch(o=l.stateNode,l.type){case"input":if(va(o,u.value,u.defaultValue,u.defaultValue,u.checked,u.defaultChecked,u.type,u.name),l=u.name,u.type==="radio"&&l!=null){for(u=o;u.parentNode;)u=u.parentNode;for(u=u.querySelectorAll('input[name="'+hn(""+l)+'"][type="radio"]'),l=0;l<u.length;l++){var p=u[l];if(p!==o&&p.form===o.form){var y=p[Wi]||null;if(!y)throw Error(n(90));va(p,y.value,y.defaultValue,y.defaultValue,y.checked,y.defaultChecked,y.type,y.name)}}for(l=0;l<u.length;l++)p=u[l],p.form===o.form&&Bd(p)}break e;case"textarea":c_(o,u.value,u.defaultValue);break e;case"select":l=u.value,l!=null&&Os(o,!!u.multiple,l,!1)}}}var Gm=!1;function p_(o,l,u){if(Gm)return o(l,u);Gm=!0;try{var p=o(l);return p}finally{if(Gm=!1,(xl!==null||wl!==null)&&(Qf(),xl&&(l=xl,o=wl,wl=xl=null,f_(l),o)))for(l=0;l<o.length;l++)f_(o[l])}}function sh(o,l){var u=o.stateNode;if(u===null)return null;var p=u[Wi]||null;if(p===null)return null;u=p[l];e:switch(l){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(p=!p.disabled)||(o=o.type,p=!(o==="button"||o==="input"||o==="select"||o==="textarea")),o=!p;break e;default:o=!1}if(o)return null;if(u&&typeof u!="function")throw Error(n(231,l,typeof u));return u}var ys=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Fm=!1;if(ys)try{var oh={};Object.defineProperty(oh,"passive",{get:function(){Fm=!0}}),window.addEventListener("test",oh,oh),window.removeEventListener("test",oh,oh)}catch{Fm=!1}var go=null,Km=null,Nd=null;function g_(){if(Nd)return Nd;var o,l=Km,u=l.length,p,y="value"in go?go.value:go.textContent,b=y.length;for(o=0;o<u&&l[o]===y[o];o++);var k=u-o;for(p=1;p<=k&&l[u-p]===y[b-p];p++);return Nd=y.slice(o,1<p?1-p:void 0)}function Zd(o){var l=o.keyCode;return"charCode"in o?(o=o.charCode,o===0&&l===13&&(o=13)):o=l,o===10&&(o=13),32<=o||o===13?o:0}function Wd(){return!0}function m_(){return!1}function un(o){function l(u,p,y,b,k){this._reactName=u,this._targetInst=y,this.type=p,this.nativeEvent=b,this.target=k,this.currentTarget=null;for(var R in o)o.hasOwnProperty(R)&&(u=o[R],this[R]=u?u(b):b[R]);return this.isDefaultPrevented=(b.defaultPrevented!=null?b.defaultPrevented:b.returnValue===!1)?Wd:m_,this.isPropagationStopped=m_,this}return g(l.prototype,{preventDefault:function(){this.defaultPrevented=!0;var u=this.nativeEvent;u&&(u.preventDefault?u.preventDefault():typeof u.returnValue!="unknown"&&(u.returnValue=!1),this.isDefaultPrevented=Wd)},stopPropagation:function(){var u=this.nativeEvent;u&&(u.stopPropagation?u.stopPropagation():typeof u.cancelBubble!="unknown"&&(u.cancelBubble=!0),this.isPropagationStopped=Wd)},persist:function(){},isPersistent:Wd}),l}var ya={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(o){return o.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},qd=un(ya),ah=g({},ya,{view:0,detail:0}),qz=un(ah),Jm,eO,lh,Id=g({},ah,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:iO,button:0,buttons:0,relatedTarget:function(o){return o.relatedTarget===void 0?o.fromElement===o.srcElement?o.toElement:o.fromElement:o.relatedTarget},movementX:function(o){return"movementX"in o?o.movementX:(o!==lh&&(lh&&o.type==="mousemove"?(Jm=o.screenX-lh.screenX,eO=o.screenY-lh.screenY):eO=Jm=0,lh=o),Jm)},movementY:function(o){return"movementY"in o?o.movementY:eO}}),O_=un(Id),Iz=g({},Id,{dataTransfer:0}),Vz=un(Iz),Yz=g({},ah,{relatedTarget:0}),tO=un(Yz),Hz=g({},ya,{animationName:0,elapsedTime:0,pseudoElement:0}),Uz=un(Hz),Gz=g({},ya,{clipboardData:function(o){return"clipboardData"in o?o.clipboardData:window.clipboardData}}),Fz=un(Gz),Kz=g({},ya,{data:0}),v_=un(Kz),Jz={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},ej={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},tj={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function ij(o){var l=this.nativeEvent;return l.getModifierState?l.getModifierState(o):(o=tj[o])?!!l[o]:!1}function iO(){return ij}var nj=g({},ah,{key:function(o){if(o.key){var l=Jz[o.key]||o.key;if(l!=="Unidentified")return l}return o.type==="keypress"?(o=Zd(o),o===13?"Enter":String.fromCharCode(o)):o.type==="keydown"||o.type==="keyup"?ej[o.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:iO,charCode:function(o){return o.type==="keypress"?Zd(o):0},keyCode:function(o){return o.type==="keydown"||o.type==="keyup"?o.keyCode:0},which:function(o){return o.type==="keypress"?Zd(o):o.type==="keydown"||o.type==="keyup"?o.keyCode:0}}),rj=un(nj),sj=g({},Id,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),y_=un(sj),oj=g({},ah,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:iO}),aj=un(oj),lj=g({},ya,{propertyName:0,elapsedTime:0,pseudoElement:0}),cj=un(lj),hj=g({},Id,{deltaX:function(o){return"deltaX"in o?o.deltaX:"wheelDeltaX"in o?-o.wheelDeltaX:0},deltaY:function(o){return"deltaY"in o?o.deltaY:"wheelDeltaY"in o?-o.wheelDeltaY:"wheelDelta"in o?-o.wheelDelta:0},deltaZ:0,deltaMode:0}),uj=un(hj),dj=g({},ya,{newState:0,oldState:0}),fj=un(dj),pj=[9,13,27,32],nO=ys&&"CompositionEvent"in window,ch=null;ys&&"documentMode"in document&&(ch=document.documentMode);var gj=ys&&"TextEvent"in window&&!ch,S_=ys&&(!nO||ch&&8<ch&&11>=ch),b_=" ",__=!1;function x_(o,l){switch(o){case"keyup":return pj.indexOf(l.keyCode)!==-1;case"keydown":return l.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function w_(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var kl=!1;function mj(o,l){switch(o){case"compositionend":return w_(l);case"keypress":return l.which!==32?null:(__=!0,b_);case"textInput":return o=l.data,o===b_&&__?null:o;default:return null}}function Oj(o,l){if(kl)return o==="compositionend"||!nO&&x_(o,l)?(o=g_(),Nd=Km=go=null,kl=!1,o):null;switch(o){case"paste":return null;case"keypress":if(!(l.ctrlKey||l.altKey||l.metaKey)||l.ctrlKey&&l.altKey){if(l.char&&1<l.char.length)return l.char;if(l.which)return String.fromCharCode(l.which)}return null;case"compositionend":return S_&&l.locale!=="ko"?null:l.data;default:return null}}var vj={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function k_(o){var l=o&&o.nodeName&&o.nodeName.toLowerCase();return l==="input"?!!vj[o.type]:l==="textarea"}function C_(o,l,u,p){xl?wl?wl.push(p):wl=[p]:xl=p,l=zf(l,"onChange"),0<l.length&&(u=new qd("onChange","change",null,u,p),o.push({event:u,listeners:l}))}var hh=null,uh=null;function yj(o){lk(o,0)}function Vd(o){var l=ho(o);if(Bd(l))return o}function T_(o,l){if(o==="change")return l}var Q_=!1;if(ys){var rO;if(ys){var sO="oninput"in document;if(!sO){var $_=document.createElement("div");$_.setAttribute("oninput","return;"),sO=typeof $_.oninput=="function"}rO=sO}else rO=!1;Q_=rO&&(!document.documentMode||9<document.documentMode)}function P_(){hh&&(hh.detachEvent("onpropertychange",E_),uh=hh=null)}function E_(o){if(o.propertyName==="value"&&Vd(uh)){var l=[];C_(l,uh,o,Um(o)),p_(yj,l)}}function Sj(o,l,u){o==="focusin"?(P_(),hh=l,uh=u,hh.attachEvent("onpropertychange",E_)):o==="focusout"&&P_()}function bj(o){if(o==="selectionchange"||o==="keyup"||o==="keydown")return Vd(uh)}function _j(o,l){if(o==="click")return Vd(l)}function xj(o,l){if(o==="input"||o==="change")return Vd(l)}function wj(o,l){return o===l&&(o!==0||1/o===1/l)||o!==o&&l!==l}var Pn=typeof Object.is=="function"?Object.is:wj;function dh(o,l){if(Pn(o,l))return!0;if(typeof o!="object"||o===null||typeof l!="object"||l===null)return!1;var u=Object.keys(o),p=Object.keys(l);if(u.length!==p.length)return!1;for(p=0;p<u.length;p++){var y=u[p];if(!Gi.call(l,y)||!Pn(o[y],l[y]))return!1}return!0}function R_(o){for(;o&&o.firstChild;)o=o.firstChild;return o}function A_(o,l){var u=R_(o);o=0;for(var p;u;){if(u.nodeType===3){if(p=o+u.textContent.length,o<=l&&p>=l)return{node:u,offset:l-o};o=p}e:{for(;u;){if(u.nextSibling){u=u.nextSibling;break e}u=u.parentNode}u=void 0}u=R_(u)}}function M_(o,l){return o&&l?o===l?!0:o&&o.nodeType===3?!1:l&&l.nodeType===3?M_(o,l.parentNode):"contains"in o?o.contains(l):o.compareDocumentPosition?!!(o.compareDocumentPosition(l)&16):!1:!1}function z_(o){o=o!=null&&o.ownerDocument!=null&&o.ownerDocument.defaultView!=null?o.ownerDocument.defaultView:window;for(var l=Oa(o.document);l instanceof o.HTMLIFrameElement;){try{var u=typeof l.contentWindow.location.href=="string"}catch{u=!1}if(u)o=l.contentWindow;else break;l=Oa(o.document)}return l}function oO(o){var l=o&&o.nodeName&&o.nodeName.toLowerCase();return l&&(l==="input"&&(o.type==="text"||o.type==="search"||o.type==="tel"||o.type==="url"||o.type==="password")||l==="textarea"||o.contentEditable==="true")}var kj=ys&&"documentMode"in document&&11>=document.documentMode,Cl=null,aO=null,fh=null,lO=!1;function j_(o,l,u){var p=u.window===u?u.document:u.nodeType===9?u:u.ownerDocument;lO||Cl==null||Cl!==Oa(p)||(p=Cl,"selectionStart"in p&&oO(p)?p={start:p.selectionStart,end:p.selectionEnd}:(p=(p.ownerDocument&&p.ownerDocument.defaultView||window).getSelection(),p={anchorNode:p.anchorNode,anchorOffset:p.anchorOffset,focusNode:p.focusNode,focusOffset:p.focusOffset}),fh&&dh(fh,p)||(fh=p,p=zf(aO,"onSelect"),0<p.length&&(l=new qd("onSelect","select",null,l,u),o.push({event:l,listeners:p}),l.target=Cl)))}function Sa(o,l){var u={};return u[o.toLowerCase()]=l.toLowerCase(),u["Webkit"+o]="webkit"+l,u["Moz"+o]="moz"+l,u}var Tl={animationend:Sa("Animation","AnimationEnd"),animationiteration:Sa("Animation","AnimationIteration"),animationstart:Sa("Animation","AnimationStart"),transitionrun:Sa("Transition","TransitionRun"),transitionstart:Sa("Transition","TransitionStart"),transitioncancel:Sa("Transition","TransitionCancel"),transitionend:Sa("Transition","TransitionEnd")},cO={},D_={};ys&&(D_=document.createElement("div").style,"AnimationEvent"in window||(delete Tl.animationend.animation,delete Tl.animationiteration.animation,delete Tl.animationstart.animation),"TransitionEvent"in window||delete Tl.transitionend.transition);function ba(o){if(cO[o])return cO[o];if(!Tl[o])return o;var l=Tl[o],u;for(u in l)if(l.hasOwnProperty(u)&&u in D_)return cO[o]=l[u];return o}var B_=ba("animationend"),L_=ba("animationiteration"),X_=ba("animationstart"),Cj=ba("transitionrun"),Tj=ba("transitionstart"),Qj=ba("transitioncancel"),N_=ba("transitionend"),Z_=new Map,hO="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");hO.push("scrollEnd");function Sr(o,l){Z_.set(o,l),ms(l,[o])}var Yd=typeof reportError=="function"?reportError:function(o){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var l=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof o=="object"&&o!==null&&typeof o.message=="string"?String(o.message):String(o),error:o});if(!window.dispatchEvent(l))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",o);return}console.error(o)},Fn=[],Ql=0,uO=0;function Hd(){for(var o=Ql,l=uO=Ql=0;l<o;){var u=Fn[l];Fn[l++]=null;var p=Fn[l];Fn[l++]=null;var y=Fn[l];Fn[l++]=null;var b=Fn[l];if(Fn[l++]=null,p!==null&&y!==null){var k=p.pending;k===null?y.next=y:(y.next=k.next,k.next=y),p.pending=y}b!==0&&W_(u,y,b)}}function Ud(o,l,u,p){Fn[Ql++]=o,Fn[Ql++]=l,Fn[Ql++]=u,Fn[Ql++]=p,uO|=p,o.lanes|=p,o=o.alternate,o!==null&&(o.lanes|=p)}function dO(o,l,u,p){return Ud(o,l,u,p),Gd(o)}function _a(o,l){return Ud(o,null,null,l),Gd(o)}function W_(o,l,u){o.lanes|=u;var p=o.alternate;p!==null&&(p.lanes|=u);for(var y=!1,b=o.return;b!==null;)b.childLanes|=u,p=b.alternate,p!==null&&(p.childLanes|=u),b.tag===22&&(o=b.stateNode,o===null||o._visibility&1||(y=!0)),o=b,b=b.return;return o.tag===3?(b=o.stateNode,y&&l!==null&&(y=31-Ei(u),o=b.hiddenUpdates,p=o[y],p===null?o[y]=[l]:p.push(l),l.lane=u|536870912),b):null}function Gd(o){if(50<zh)throw zh=0,b0=null,Error(n(185));for(var l=o.return;l!==null;)o=l,l=o.return;return o.tag===3?o.stateNode:null}var $l={};function $j(o,l,u,p){this.tag=o,this.key=u,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=l,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=p,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function En(o,l,u,p){return new $j(o,l,u,p)}function fO(o){return o=o.prototype,!(!o||!o.isReactComponent)}function Ss(o,l){var u=o.alternate;return u===null?(u=En(o.tag,l,o.key,o.mode),u.elementType=o.elementType,u.type=o.type,u.stateNode=o.stateNode,u.alternate=o,o.alternate=u):(u.pendingProps=l,u.type=o.type,u.flags=0,u.subtreeFlags=0,u.deletions=null),u.flags=o.flags&65011712,u.childLanes=o.childLanes,u.lanes=o.lanes,u.child=o.child,u.memoizedProps=o.memoizedProps,u.memoizedState=o.memoizedState,u.updateQueue=o.updateQueue,l=o.dependencies,u.dependencies=l===null?null:{lanes:l.lanes,firstContext:l.firstContext},u.sibling=o.sibling,u.index=o.index,u.ref=o.ref,u.refCleanup=o.refCleanup,u}function q_(o,l){o.flags&=65011714;var u=o.alternate;return u===null?(o.childLanes=0,o.lanes=l,o.child=null,o.subtreeFlags=0,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null,o.stateNode=null):(o.childLanes=u.childLanes,o.lanes=u.lanes,o.child=u.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=u.memoizedProps,o.memoizedState=u.memoizedState,o.updateQueue=u.updateQueue,o.type=u.type,l=u.dependencies,o.dependencies=l===null?null:{lanes:l.lanes,firstContext:l.firstContext}),o}function Fd(o,l,u,p,y,b){var k=0;if(p=o,typeof o=="function")fO(o)&&(k=1);else if(typeof o=="string")k=M3(o,u,ne.current)?26:o==="html"||o==="head"||o==="body"?27:5;else e:switch(o){case H:return o=En(31,u,l,y),o.elementType=H,o.lanes=b,o;case _:return xa(u.children,y,b,l);case w:k=8,y|=24;break;case x:return o=En(12,u,l,y|2),o.elementType=x,o.lanes=b,o;case A:return o=En(13,u,l,y),o.elementType=A,o.lanes=b,o;case P:return o=En(19,u,l,y),o.elementType=P,o.lanes=b,o;default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case C:k=10;break e;case Q:k=9;break e;case T:k=11;break e;case M:k=14;break e;case V:k=16,p=null;break e}k=29,u=Error(n(130,o===null?"null":typeof o,"")),p=null}return l=En(k,u,l,y),l.elementType=o,l.type=p,l.lanes=b,l}function xa(o,l,u,p){return o=En(7,o,p,l),o.lanes=u,o}function pO(o,l,u){return o=En(6,o,null,l),o.lanes=u,o}function I_(o){var l=En(18,null,null,0);return l.stateNode=o,l}function gO(o,l,u){return l=En(4,o.children!==null?o.children:[],o.key,l),l.lanes=u,l.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},l}var V_=new WeakMap;function Kn(o,l){if(typeof o=="object"&&o!==null){var u=V_.get(o);return u!==void 0?u:(l={value:o,source:l,stack:Jt(l)},V_.set(o,l),l)}return{value:o,source:l,stack:Jt(l)}}var Pl=[],El=0,Kd=null,ph=0,Jn=[],er=0,mo=null,Nr=1,Zr="";function bs(o,l){Pl[El++]=ph,Pl[El++]=Kd,Kd=o,ph=l}function Y_(o,l,u){Jn[er++]=Nr,Jn[er++]=Zr,Jn[er++]=mo,mo=o;var p=Nr;o=Zr;var y=32-Ei(p)-1;p&=~(1<<y),u+=1;var b=32-Ei(l)+y;if(30<b){var k=y-y%5;b=(p&(1<<k)-1).toString(32),p>>=k,y-=k,Nr=1<<32-Ei(l)+y|u<<y|p,Zr=b+o}else Nr=1<<b|u<<y|p,Zr=o}function mO(o){o.return!==null&&(bs(o,1),Y_(o,1,0))}function OO(o){for(;o===Kd;)Kd=Pl[--El],Pl[El]=null,ph=Pl[--El],Pl[El]=null;for(;o===mo;)mo=Jn[--er],Jn[er]=null,Zr=Jn[--er],Jn[er]=null,Nr=Jn[--er],Jn[er]=null}function H_(o,l){Jn[er++]=Nr,Jn[er++]=Zr,Jn[er++]=mo,Nr=l.id,Zr=l.overflow,mo=o}var Ri=null,$t=null,rt=!1,Oo=null,tr=!1,vO=Error(n(519));function vo(o){var l=Error(n(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw gh(Kn(l,o)),vO}function U_(o){var l=o.stateNode,u=o.type,p=o.memoizedProps;switch(l[di]=o,l[Wi]=p,u){case"dialog":Ke("cancel",l),Ke("close",l);break;case"iframe":case"object":case"embed":Ke("load",l);break;case"video":case"audio":for(u=0;u<Dh.length;u++)Ke(Dh[u],l);break;case"source":Ke("error",l);break;case"img":case"image":case"link":Ke("error",l),Ke("load",l);break;case"details":Ke("toggle",l);break;case"input":Ke("invalid",l),Ld(l,p.value,p.defaultValue,p.checked,p.defaultChecked,p.type,p.name,!0);break;case"select":Ke("invalid",l);break;case"textarea":Ke("invalid",l),h_(l,p.value,p.defaultValue,p.children)}u=p.children,typeof u!="string"&&typeof u!="number"&&typeof u!="bigint"||l.textContent===""+u||p.suppressHydrationWarning===!0||dk(l.textContent,u)?(p.popover!=null&&(Ke("beforetoggle",l),Ke("toggle",l)),p.onScroll!=null&&Ke("scroll",l),p.onScrollEnd!=null&&Ke("scrollend",l),p.onClick!=null&&(l.onclick=vs),l=!0):l=!1,l||vo(o,!0)}function G_(o){for(Ri=o.return;Ri;)switch(Ri.tag){case 5:case 31:case 13:tr=!1;return;case 27:case 3:tr=!0;return;default:Ri=Ri.return}}function Rl(o){if(o!==Ri)return!1;if(!rt)return G_(o),rt=!0,!1;var l=o.tag,u;if((u=l!==3&&l!==27)&&((u=l===5)&&(u=o.type,u=!(u!=="form"&&u!=="button")||j0(o.type,o.memoizedProps)),u=!u),u&&$t&&vo(o),G_(o),l===13){if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(n(317));$t=bk(o)}else if(l===31){if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(n(317));$t=bk(o)}else l===27?(l=$t,Ro(o.type)?(o=N0,N0=null,$t=o):$t=l):$t=Ri?nr(o.stateNode.nextSibling):null;return!0}function wa(){$t=Ri=null,rt=!1}function yO(){var o=Oo;return o!==null&&(gn===null?gn=o:gn.push.apply(gn,o),Oo=null),o}function gh(o){Oo===null?Oo=[o]:Oo.push(o)}var SO=D(null),ka=null,_s=null;function yo(o,l,u){J(SO,l._currentValue),l._currentValue=u}function xs(o){o._currentValue=SO.current,I(SO)}function bO(o,l,u){for(;o!==null;){var p=o.alternate;if((o.childLanes&l)!==l?(o.childLanes|=l,p!==null&&(p.childLanes|=l)):p!==null&&(p.childLanes&l)!==l&&(p.childLanes|=l),o===u)break;o=o.return}}function _O(o,l,u,p){var y=o.child;for(y!==null&&(y.return=o);y!==null;){var b=y.dependencies;if(b!==null){var k=y.child;b=b.firstContext;e:for(;b!==null;){var R=b;b=y;for(var Y=0;Y<l.length;Y++)if(R.context===l[Y]){b.lanes|=u,R=b.alternate,R!==null&&(R.lanes|=u),bO(b.return,u,o),p||(k=null);break e}b=R.next}}else if(y.tag===18){if(k=y.return,k===null)throw Error(n(341));k.lanes|=u,b=k.alternate,b!==null&&(b.lanes|=u),bO(k,u,o),k=null}else k=y.child;if(k!==null)k.return=y;else for(k=y;k!==null;){if(k===o){k=null;break}if(y=k.sibling,y!==null){y.return=k.return,k=y;break}k=k.return}y=k}}function Al(o,l,u,p){o=null;for(var y=l,b=!1;y!==null;){if(!b){if((y.flags&524288)!==0)b=!0;else if((y.flags&262144)!==0)break}if(y.tag===10){var k=y.alternate;if(k===null)throw Error(n(387));if(k=k.memoizedProps,k!==null){var R=y.type;Pn(y.pendingProps.value,k.value)||(o!==null?o.push(R):o=[R])}}else if(y===pe.current){if(k=y.alternate,k===null)throw Error(n(387));k.memoizedState.memoizedState!==y.memoizedState.memoizedState&&(o!==null?o.push(Zh):o=[Zh])}y=y.return}o!==null&&_O(l,o,u,p),l.flags|=262144}function Jd(o){for(o=o.firstContext;o!==null;){if(!Pn(o.context._currentValue,o.memoizedValue))return!0;o=o.next}return!1}function Ca(o){ka=o,_s=null,o=o.dependencies,o!==null&&(o.firstContext=null)}function Ai(o){return F_(ka,o)}function ef(o,l){return ka===null&&Ca(o),F_(o,l)}function F_(o,l){var u=l._currentValue;if(l={context:l,memoizedValue:u,next:null},_s===null){if(o===null)throw Error(n(308));_s=l,o.dependencies={lanes:0,firstContext:l},o.flags|=524288}else _s=_s.next=l;return u}var Pj=typeof AbortController<"u"?AbortController:function(){var o=[],l=this.signal={aborted:!1,addEventListener:function(u,p){o.push(p)}};this.abort=function(){l.aborted=!0,o.forEach(function(u){return u()})}},Ej=t.unstable_scheduleCallback,Rj=t.unstable_NormalPriority,ti={$$typeof:C,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function xO(){return{controller:new Pj,data:new Map,refCount:0}}function mh(o){o.refCount--,o.refCount===0&&Ej(Rj,function(){o.controller.abort()})}var Oh=null,wO=0,Ml=0,zl=null;function Aj(o,l){if(Oh===null){var u=Oh=[];wO=0,Ml=T0(),zl={status:"pending",value:void 0,then:function(p){u.push(p)}}}return wO++,l.then(K_,K_),l}function K_(){if(--wO===0&&Oh!==null){zl!==null&&(zl.status="fulfilled");var o=Oh;Oh=null,Ml=0,zl=null;for(var l=0;l<o.length;l++)(0,o[l])()}}function Mj(o,l){var u=[],p={status:"pending",value:null,reason:null,then:function(y){u.push(y)}};return o.then(function(){p.status="fulfilled",p.value=l;for(var y=0;y<u.length;y++)(0,u[y])(l)},function(y){for(p.status="rejected",p.reason=y,y=0;y<u.length;y++)(0,u[y])(void 0)}),p}var J_=$.S;$.S=function(o,l){jw=hi(),typeof l=="object"&&l!==null&&typeof l.then=="function"&&Aj(o,l),J_!==null&&J_(o,l)};var Ta=D(null);function kO(){var o=Ta.current;return o!==null?o:wt.pooledCache}function tf(o,l){l===null?J(Ta,Ta.current):J(Ta,l.pool)}function ex(){var o=kO();return o===null?null:{parent:ti._currentValue,pool:o}}var jl=Error(n(460)),CO=Error(n(474)),nf=Error(n(542)),rf={then:function(){}};function tx(o){return o=o.status,o==="fulfilled"||o==="rejected"}function ix(o,l,u){switch(u=o[u],u===void 0?o.push(l):u!==l&&(l.then(vs,vs),l=u),l.status){case"fulfilled":return l.value;case"rejected":throw o=l.reason,rx(o),o;default:if(typeof l.status=="string")l.then(vs,vs);else{if(o=wt,o!==null&&100<o.shellSuspendCounter)throw Error(n(482));o=l,o.status="pending",o.then(function(p){if(l.status==="pending"){var y=l;y.status="fulfilled",y.value=p}},function(p){if(l.status==="pending"){var y=l;y.status="rejected",y.reason=p}})}switch(l.status){case"fulfilled":return l.value;case"rejected":throw o=l.reason,rx(o),o}throw $a=l,jl}}function Qa(o){try{var l=o._init;return l(o._payload)}catch(u){throw u!==null&&typeof u=="object"&&typeof u.then=="function"?($a=u,jl):u}}var $a=null;function nx(){if($a===null)throw Error(n(459));var o=$a;return $a=null,o}function rx(o){if(o===jl||o===nf)throw Error(n(483))}var Dl=null,vh=0;function sf(o){var l=vh;return vh+=1,Dl===null&&(Dl=[]),ix(Dl,o,l)}function yh(o,l){l=l.props.ref,o.ref=l!==void 0?l:null}function of(o,l){throw l.$$typeof===m?Error(n(525)):(o=Object.prototype.toString.call(l),Error(n(31,o==="[object Object]"?"object with keys {"+Object.keys(l).join(", ")+"}":o)))}function sx(o){function l(K,F){if(o){var ee=K.deletions;ee===null?(K.deletions=[F],K.flags|=16):ee.push(F)}}function u(K,F){if(!o)return null;for(;F!==null;)l(K,F),F=F.sibling;return null}function p(K){for(var F=new Map;K!==null;)K.key!==null?F.set(K.key,K):F.set(K.index,K),K=K.sibling;return F}function y(K,F){return K=Ss(K,F),K.index=0,K.sibling=null,K}function b(K,F,ee){return K.index=ee,o?(ee=K.alternate,ee!==null?(ee=ee.index,ee<F?(K.flags|=67108866,F):ee):(K.flags|=67108866,F)):(K.flags|=1048576,F)}function k(K){return o&&K.alternate===null&&(K.flags|=67108866),K}function R(K,F,ee,ae){return F===null||F.tag!==6?(F=pO(ee,K.mode,ae),F.return=K,F):(F=y(F,ee),F.return=K,F)}function Y(K,F,ee,ae){var Ae=ee.type;return Ae===_?oe(K,F,ee.props.children,ae,ee.key):F!==null&&(F.elementType===Ae||typeof Ae=="object"&&Ae!==null&&Ae.$$typeof===V&&Qa(Ae)===F.type)?(F=y(F,ee.props),yh(F,ee),F.return=K,F):(F=Fd(ee.type,ee.key,ee.props,null,K.mode,ae),yh(F,ee),F.return=K,F)}function te(K,F,ee,ae){return F===null||F.tag!==4||F.stateNode.containerInfo!==ee.containerInfo||F.stateNode.implementation!==ee.implementation?(F=gO(ee,K.mode,ae),F.return=K,F):(F=y(F,ee.children||[]),F.return=K,F)}function oe(K,F,ee,ae,Ae){return F===null||F.tag!==7?(F=xa(ee,K.mode,ae,Ae),F.return=K,F):(F=y(F,ee),F.return=K,F)}function he(K,F,ee){if(typeof F=="string"&&F!==""||typeof F=="number"||typeof F=="bigint")return F=pO(""+F,K.mode,ee),F.return=K,F;if(typeof F=="object"&&F!==null){switch(F.$$typeof){case v:return ee=Fd(F.type,F.key,F.props,null,K.mode,ee),yh(ee,F),ee.return=K,ee;case S:return F=gO(F,K.mode,ee),F.return=K,F;case V:return F=Qa(F),he(K,F,ee)}if(W(F)||j(F))return F=xa(F,K.mode,ee,null),F.return=K,F;if(typeof F.then=="function")return he(K,sf(F),ee);if(F.$$typeof===C)return he(K,ef(K,F),ee);of(K,F)}return null}function re(K,F,ee,ae){var Ae=F!==null?F.key:null;if(typeof ee=="string"&&ee!==""||typeof ee=="number"||typeof ee=="bigint")return Ae!==null?null:R(K,F,""+ee,ae);if(typeof ee=="object"&&ee!==null){switch(ee.$$typeof){case v:return ee.key===Ae?Y(K,F,ee,ae):null;case S:return ee.key===Ae?te(K,F,ee,ae):null;case V:return ee=Qa(ee),re(K,F,ee,ae)}if(W(ee)||j(ee))return Ae!==null?null:oe(K,F,ee,ae,null);if(typeof ee.then=="function")return re(K,F,sf(ee),ae);if(ee.$$typeof===C)return re(K,F,ef(K,ee),ae);of(K,ee)}return null}function se(K,F,ee,ae,Ae){if(typeof ae=="string"&&ae!==""||typeof ae=="number"||typeof ae=="bigint")return K=K.get(ee)||null,R(F,K,""+ae,Ae);if(typeof ae=="object"&&ae!==null){switch(ae.$$typeof){case v:return K=K.get(ae.key===null?ee:ae.key)||null,Y(F,K,ae,Ae);case S:return K=K.get(ae.key===null?ee:ae.key)||null,te(F,K,ae,Ae);case V:return ae=Qa(ae),se(K,F,ee,ae,Ae)}if(W(ae)||j(ae))return K=K.get(ee)||null,oe(F,K,ae,Ae,null);if(typeof ae.then=="function")return se(K,F,ee,sf(ae),Ae);if(ae.$$typeof===C)return se(K,F,ee,ef(F,ae),Ae);of(F,ae)}return null}function ke(K,F,ee,ae){for(var Ae=null,ht=null,Qe=F,Ve=F=0,tt=null;Qe!==null&&Ve<ee.length;Ve++){Qe.index>Ve?(tt=Qe,Qe=null):tt=Qe.sibling;var ut=re(K,Qe,ee[Ve],ae);if(ut===null){Qe===null&&(Qe=tt);break}o&&Qe&&ut.alternate===null&&l(K,Qe),F=b(ut,F,Ve),ht===null?Ae=ut:ht.sibling=ut,ht=ut,Qe=tt}if(Ve===ee.length)return u(K,Qe),rt&&bs(K,Ve),Ae;if(Qe===null){for(;Ve<ee.length;Ve++)Qe=he(K,ee[Ve],ae),Qe!==null&&(F=b(Qe,F,Ve),ht===null?Ae=Qe:ht.sibling=Qe,ht=Qe);return rt&&bs(K,Ve),Ae}for(Qe=p(Qe);Ve<ee.length;Ve++)tt=se(Qe,K,Ve,ee[Ve],ae),tt!==null&&(o&&tt.alternate!==null&&Qe.delete(tt.key===null?Ve:tt.key),F=b(tt,F,Ve),ht===null?Ae=tt:ht.sibling=tt,ht=tt);return o&&Qe.forEach(function(Do){return l(K,Do)}),rt&&bs(K,Ve),Ae}function De(K,F,ee,ae){if(ee==null)throw Error(n(151));for(var Ae=null,ht=null,Qe=F,Ve=F=0,tt=null,ut=ee.next();Qe!==null&&!ut.done;Ve++,ut=ee.next()){Qe.index>Ve?(tt=Qe,Qe=null):tt=Qe.sibling;var Do=re(K,Qe,ut.value,ae);if(Do===null){Qe===null&&(Qe=tt);break}o&&Qe&&Do.alternate===null&&l(K,Qe),F=b(Do,F,Ve),ht===null?Ae=Do:ht.sibling=Do,ht=Do,Qe=tt}if(ut.done)return u(K,Qe),rt&&bs(K,Ve),Ae;if(Qe===null){for(;!ut.done;Ve++,ut=ee.next())ut=he(K,ut.value,ae),ut!==null&&(F=b(ut,F,Ve),ht===null?Ae=ut:ht.sibling=ut,ht=ut);return rt&&bs(K,Ve),Ae}for(Qe=p(Qe);!ut.done;Ve++,ut=ee.next())ut=se(Qe,K,Ve,ut.value,ae),ut!==null&&(o&&ut.alternate!==null&&Qe.delete(ut.key===null?Ve:ut.key),F=b(ut,F,Ve),ht===null?Ae=ut:ht.sibling=ut,ht=ut);return o&&Qe.forEach(function(I3){return l(K,I3)}),rt&&bs(K,Ve),Ae}function _t(K,F,ee,ae){if(typeof ee=="object"&&ee!==null&&ee.type===_&&ee.key===null&&(ee=ee.props.children),typeof ee=="object"&&ee!==null){switch(ee.$$typeof){case v:e:{for(var Ae=ee.key;F!==null;){if(F.key===Ae){if(Ae=ee.type,Ae===_){if(F.tag===7){u(K,F.sibling),ae=y(F,ee.props.children),ae.return=K,K=ae;break e}}else if(F.elementType===Ae||typeof Ae=="object"&&Ae!==null&&Ae.$$typeof===V&&Qa(Ae)===F.type){u(K,F.sibling),ae=y(F,ee.props),yh(ae,ee),ae.return=K,K=ae;break e}u(K,F);break}else l(K,F);F=F.sibling}ee.type===_?(ae=xa(ee.props.children,K.mode,ae,ee.key),ae.return=K,K=ae):(ae=Fd(ee.type,ee.key,ee.props,null,K.mode,ae),yh(ae,ee),ae.return=K,K=ae)}return k(K);case S:e:{for(Ae=ee.key;F!==null;){if(F.key===Ae)if(F.tag===4&&F.stateNode.containerInfo===ee.containerInfo&&F.stateNode.implementation===ee.implementation){u(K,F.sibling),ae=y(F,ee.children||[]),ae.return=K,K=ae;break e}else{u(K,F);break}else l(K,F);F=F.sibling}ae=gO(ee,K.mode,ae),ae.return=K,K=ae}return k(K);case V:return ee=Qa(ee),_t(K,F,ee,ae)}if(W(ee))return ke(K,F,ee,ae);if(j(ee)){if(Ae=j(ee),typeof Ae!="function")throw Error(n(150));return ee=Ae.call(ee),De(K,F,ee,ae)}if(typeof ee.then=="function")return _t(K,F,sf(ee),ae);if(ee.$$typeof===C)return _t(K,F,ef(K,ee),ae);of(K,ee)}return typeof ee=="string"&&ee!==""||typeof ee=="number"||typeof ee=="bigint"?(ee=""+ee,F!==null&&F.tag===6?(u(K,F.sibling),ae=y(F,ee),ae.return=K,K=ae):(u(K,F),ae=pO(ee,K.mode,ae),ae.return=K,K=ae),k(K)):u(K,F)}return function(K,F,ee,ae){try{vh=0;var Ae=_t(K,F,ee,ae);return Dl=null,Ae}catch(Qe){if(Qe===jl||Qe===nf)throw Qe;var ht=En(29,Qe,null,K.mode);return ht.lanes=ae,ht.return=K,ht}finally{}}}var Pa=sx(!0),ox=sx(!1),So=!1;function TO(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function QO(o,l){o=o.updateQueue,l.updateQueue===o&&(l.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,callbacks:null})}function bo(o){return{lane:o,tag:0,payload:null,callback:null,next:null}}function _o(o,l,u){var p=o.updateQueue;if(p===null)return null;if(p=p.shared,(ft&2)!==0){var y=p.pending;return y===null?l.next=l:(l.next=y.next,y.next=l),p.pending=l,l=Gd(o),W_(o,null,u),l}return Ud(o,p,l,u),Gd(o)}function Sh(o,l,u){if(l=l.updateQueue,l!==null&&(l=l.shared,(u&4194048)!==0)){var p=l.lanes;p&=o.pendingLanes,u|=p,l.lanes=u,Ne(o,u)}}function $O(o,l){var u=o.updateQueue,p=o.alternate;if(p!==null&&(p=p.updateQueue,u===p)){var y=null,b=null;if(u=u.firstBaseUpdate,u!==null){do{var k={lane:u.lane,tag:u.tag,payload:u.payload,callback:null,next:null};b===null?y=b=k:b=b.next=k,u=u.next}while(u!==null);b===null?y=b=l:b=b.next=l}else y=b=l;u={baseState:p.baseState,firstBaseUpdate:y,lastBaseUpdate:b,shared:p.shared,callbacks:p.callbacks},o.updateQueue=u;return}o=u.lastBaseUpdate,o===null?u.firstBaseUpdate=l:o.next=l,u.lastBaseUpdate=l}var PO=!1;function bh(){if(PO){var o=zl;if(o!==null)throw o}}function _h(o,l,u,p){PO=!1;var y=o.updateQueue;So=!1;var b=y.firstBaseUpdate,k=y.lastBaseUpdate,R=y.shared.pending;if(R!==null){y.shared.pending=null;var Y=R,te=Y.next;Y.next=null,k===null?b=te:k.next=te,k=Y;var oe=o.alternate;oe!==null&&(oe=oe.updateQueue,R=oe.lastBaseUpdate,R!==k&&(R===null?oe.firstBaseUpdate=te:R.next=te,oe.lastBaseUpdate=Y))}if(b!==null){var he=y.baseState;k=0,oe=te=Y=null,R=b;do{var re=R.lane&-536870913,se=re!==R.lane;if(se?(et&re)===re:(p&re)===re){re!==0&&re===Ml&&(PO=!0),oe!==null&&(oe=oe.next={lane:0,tag:R.tag,payload:R.payload,callback:null,next:null});e:{var ke=o,De=R;re=l;var _t=u;switch(De.tag){case 1:if(ke=De.payload,typeof ke=="function"){he=ke.call(_t,he,re);break e}he=ke;break e;case 3:ke.flags=ke.flags&-65537|128;case 0:if(ke=De.payload,re=typeof ke=="function"?ke.call(_t,he,re):ke,re==null)break e;he=g({},he,re);break e;case 2:So=!0}}re=R.callback,re!==null&&(o.flags|=64,se&&(o.flags|=8192),se=y.callbacks,se===null?y.callbacks=[re]:se.push(re))}else se={lane:re,tag:R.tag,payload:R.payload,callback:R.callback,next:null},oe===null?(te=oe=se,Y=he):oe=oe.next=se,k|=re;if(R=R.next,R===null){if(R=y.shared.pending,R===null)break;se=R,R=se.next,se.next=null,y.lastBaseUpdate=se,y.shared.pending=null}}while(!0);oe===null&&(Y=he),y.baseState=Y,y.firstBaseUpdate=te,y.lastBaseUpdate=oe,b===null&&(y.shared.lanes=0),To|=k,o.lanes=k,o.memoizedState=he}}function ax(o,l){if(typeof o!="function")throw Error(n(191,o));o.call(l)}function lx(o,l){var u=o.callbacks;if(u!==null)for(o.callbacks=null,o=0;o<u.length;o++)ax(u[o],l)}var Bl=D(null),af=D(0);function cx(o,l){o=Rs,J(af,o),J(Bl,l),Rs=o|l.baseLanes}function EO(){J(af,Rs),J(Bl,Bl.current)}function RO(){Rs=af.current,I(Bl),I(af)}var Rn=D(null),ir=null;function xo(o){var l=o.alternate;J(Yt,Yt.current&1),J(Rn,o),ir===null&&(l===null||Bl.current!==null||l.memoizedState!==null)&&(ir=o)}function AO(o){J(Yt,Yt.current),J(Rn,o),ir===null&&(ir=o)}function hx(o){o.tag===22?(J(Yt,Yt.current),J(Rn,o),ir===null&&(ir=o)):wo()}function wo(){J(Yt,Yt.current),J(Rn,Rn.current)}function An(o){I(Rn),ir===o&&(ir=null),I(Yt)}var Yt=D(0);function lf(o){for(var l=o;l!==null;){if(l.tag===13){var u=l.memoizedState;if(u!==null&&(u=u.dehydrated,u===null||L0(u)||X0(u)))return l}else if(l.tag===19&&(l.memoizedProps.revealOrder==="forwards"||l.memoizedProps.revealOrder==="backwards"||l.memoizedProps.revealOrder==="unstable_legacy-backwards"||l.memoizedProps.revealOrder==="together")){if((l.flags&128)!==0)return l}else if(l.child!==null){l.child.return=l,l=l.child;continue}if(l===o)break;for(;l.sibling===null;){if(l.return===null||l.return===o)return null;l=l.return}l.sibling.return=l.return,l=l.sibling}return null}var ws=0,Ie=null,St=null,ii=null,cf=!1,Ll=!1,Ea=!1,hf=0,xh=0,Xl=null,zj=0;function Zt(){throw Error(n(321))}function MO(o,l){if(l===null)return!1;for(var u=0;u<l.length&&u<o.length;u++)if(!Pn(o[u],l[u]))return!1;return!0}function zO(o,l,u,p,y,b){return ws=b,Ie=l,l.memoizedState=null,l.updateQueue=null,l.lanes=0,$.H=o===null||o.memoizedState===null?Yx:GO,Ea=!1,b=u(p,y),Ea=!1,Ll&&(b=dx(l,u,p,y)),ux(o),b}function ux(o){$.H=Ch;var l=St!==null&&St.next!==null;if(ws=0,ii=St=Ie=null,cf=!1,xh=0,Xl=null,l)throw Error(n(300));o===null||ni||(o=o.dependencies,o!==null&&Jd(o)&&(ni=!0))}function dx(o,l,u,p){Ie=o;var y=0;do{if(Ll&&(Xl=null),xh=0,Ll=!1,25<=y)throw Error(n(301));if(y+=1,ii=St=null,o.updateQueue!=null){var b=o.updateQueue;b.lastEffect=null,b.events=null,b.stores=null,b.memoCache!=null&&(b.memoCache.index=0)}$.H=Hx,b=l(u,p)}while(Ll);return b}function jj(){var o=$.H,l=o.useState()[0];return l=typeof l.then=="function"?wh(l):l,o=o.useState()[0],(St!==null?St.memoizedState:null)!==o&&(Ie.flags|=1024),l}function jO(){var o=hf!==0;return hf=0,o}function DO(o,l,u){l.updateQueue=o.updateQueue,l.flags&=-2053,o.lanes&=~u}function BO(o){if(cf){for(o=o.memoizedState;o!==null;){var l=o.queue;l!==null&&(l.pending=null),o=o.next}cf=!1}ws=0,ii=St=Ie=null,Ll=!1,xh=hf=0,Xl=null}function Fi(){var o={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ii===null?Ie.memoizedState=ii=o:ii=ii.next=o,ii}function Ht(){if(St===null){var o=Ie.alternate;o=o!==null?o.memoizedState:null}else o=St.next;var l=ii===null?Ie.memoizedState:ii.next;if(l!==null)ii=l,St=o;else{if(o===null)throw Ie.alternate===null?Error(n(467)):Error(n(310));St=o,o={memoizedState:St.memoizedState,baseState:St.baseState,baseQueue:St.baseQueue,queue:St.queue,next:null},ii===null?Ie.memoizedState=ii=o:ii=ii.next=o}return ii}function uf(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function wh(o){var l=xh;return xh+=1,Xl===null&&(Xl=[]),o=ix(Xl,o,l),l=Ie,(ii===null?l.memoizedState:ii.next)===null&&(l=l.alternate,$.H=l===null||l.memoizedState===null?Yx:GO),o}function df(o){if(o!==null&&typeof o=="object"){if(typeof o.then=="function")return wh(o);if(o.$$typeof===C)return Ai(o)}throw Error(n(438,String(o)))}function LO(o){var l=null,u=Ie.updateQueue;if(u!==null&&(l=u.memoCache),l==null){var p=Ie.alternate;p!==null&&(p=p.updateQueue,p!==null&&(p=p.memoCache,p!=null&&(l={data:p.data.map(function(y){return y.slice()}),index:0})))}if(l==null&&(l={data:[],index:0}),u===null&&(u=uf(),Ie.updateQueue=u),u.memoCache=l,u=l.data[l.index],u===void 0)for(u=l.data[l.index]=Array(o),p=0;p<o;p++)u[p]=G;return l.index++,u}function ks(o,l){return typeof l=="function"?l(o):l}function ff(o){var l=Ht();return XO(l,St,o)}function XO(o,l,u){var p=o.queue;if(p===null)throw Error(n(311));p.lastRenderedReducer=u;var y=o.baseQueue,b=p.pending;if(b!==null){if(y!==null){var k=y.next;y.next=b.next,b.next=k}l.baseQueue=y=b,p.pending=null}if(b=o.baseState,y===null)o.memoizedState=b;else{l=y.next;var R=k=null,Y=null,te=l,oe=!1;do{var he=te.lane&-536870913;if(he!==te.lane?(et&he)===he:(ws&he)===he){var re=te.revertLane;if(re===0)Y!==null&&(Y=Y.next={lane:0,revertLane:0,gesture:null,action:te.action,hasEagerState:te.hasEagerState,eagerState:te.eagerState,next:null}),he===Ml&&(oe=!0);else if((ws&re)===re){te=te.next,re===Ml&&(oe=!0);continue}else he={lane:0,revertLane:te.revertLane,gesture:null,action:te.action,hasEagerState:te.hasEagerState,eagerState:te.eagerState,next:null},Y===null?(R=Y=he,k=b):Y=Y.next=he,Ie.lanes|=re,To|=re;he=te.action,Ea&&u(b,he),b=te.hasEagerState?te.eagerState:u(b,he)}else re={lane:he,revertLane:te.revertLane,gesture:te.gesture,action:te.action,hasEagerState:te.hasEagerState,eagerState:te.eagerState,next:null},Y===null?(R=Y=re,k=b):Y=Y.next=re,Ie.lanes|=he,To|=he;te=te.next}while(te!==null&&te!==l);if(Y===null?k=b:Y.next=R,!Pn(b,o.memoizedState)&&(ni=!0,oe&&(u=zl,u!==null)))throw u;o.memoizedState=b,o.baseState=k,o.baseQueue=Y,p.lastRenderedState=b}return y===null&&(p.lanes=0),[o.memoizedState,p.dispatch]}function NO(o){var l=Ht(),u=l.queue;if(u===null)throw Error(n(311));u.lastRenderedReducer=o;var p=u.dispatch,y=u.pending,b=l.memoizedState;if(y!==null){u.pending=null;var k=y=y.next;do b=o(b,k.action),k=k.next;while(k!==y);Pn(b,l.memoizedState)||(ni=!0),l.memoizedState=b,l.baseQueue===null&&(l.baseState=b),u.lastRenderedState=b}return[b,p]}function fx(o,l,u){var p=Ie,y=Ht(),b=rt;if(b){if(u===void 0)throw Error(n(407));u=u()}else u=l();var k=!Pn((St||y).memoizedState,u);if(k&&(y.memoizedState=u,ni=!0),y=y.queue,qO(mx.bind(null,p,y,o),[o]),y.getSnapshot!==l||k||ii!==null&&ii.memoizedState.tag&1){if(p.flags|=2048,Nl(9,{destroy:void 0},gx.bind(null,p,y,u,l),null),wt===null)throw Error(n(349));b||(ws&127)!==0||px(p,l,u)}return u}function px(o,l,u){o.flags|=16384,o={getSnapshot:l,value:u},l=Ie.updateQueue,l===null?(l=uf(),Ie.updateQueue=l,l.stores=[o]):(u=l.stores,u===null?l.stores=[o]:u.push(o))}function gx(o,l,u,p){l.value=u,l.getSnapshot=p,Ox(l)&&vx(o)}function mx(o,l,u){return u(function(){Ox(l)&&vx(o)})}function Ox(o){var l=o.getSnapshot;o=o.value;try{var u=l();return!Pn(o,u)}catch{return!0}}function vx(o){var l=_a(o,2);l!==null&&mn(l,o,2)}function ZO(o){var l=Fi();if(typeof o=="function"){var u=o;if(o=u(),Ea){Tn(!0);try{u()}finally{Tn(!1)}}}return l.memoizedState=l.baseState=o,l.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ks,lastRenderedState:o},l}function yx(o,l,u,p){return o.baseState=u,XO(o,St,typeof p=="function"?p:ks)}function Dj(o,l,u,p,y){if(mf(o))throw Error(n(485));if(o=l.action,o!==null){var b={payload:y,action:o,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(k){b.listeners.push(k)}};$.T!==null?u(!0):b.isTransition=!1,p(b),u=l.pending,u===null?(b.next=l.pending=b,Sx(l,b)):(b.next=u.next,l.pending=u.next=b)}}function Sx(o,l){var u=l.action,p=l.payload,y=o.state;if(l.isTransition){var b=$.T,k={};$.T=k;try{var R=u(y,p),Y=$.S;Y!==null&&Y(k,R),bx(o,l,R)}catch(te){WO(o,l,te)}finally{b!==null&&k.types!==null&&(b.types=k.types),$.T=b}}else try{b=u(y,p),bx(o,l,b)}catch(te){WO(o,l,te)}}function bx(o,l,u){u!==null&&typeof u=="object"&&typeof u.then=="function"?u.then(function(p){_x(o,l,p)},function(p){return WO(o,l,p)}):_x(o,l,u)}function _x(o,l,u){l.status="fulfilled",l.value=u,xx(l),o.state=u,l=o.pending,l!==null&&(u=l.next,u===l?o.pending=null:(u=u.next,l.next=u,Sx(o,u)))}function WO(o,l,u){var p=o.pending;if(o.pending=null,p!==null){p=p.next;do l.status="rejected",l.reason=u,xx(l),l=l.next;while(l!==p)}o.action=null}function xx(o){o=o.listeners;for(var l=0;l<o.length;l++)(0,o[l])()}function wx(o,l){return l}function kx(o,l){if(rt){var u=wt.formState;if(u!==null){e:{var p=Ie;if(rt){if($t){t:{for(var y=$t,b=tr;y.nodeType!==8;){if(!b){y=null;break t}if(y=nr(y.nextSibling),y===null){y=null;break t}}b=y.data,y=b==="F!"||b==="F"?y:null}if(y){$t=nr(y.nextSibling),p=y.data==="F!";break e}}vo(p)}p=!1}p&&(l=u[0])}}return u=Fi(),u.memoizedState=u.baseState=l,p={pending:null,lanes:0,dispatch:null,lastRenderedReducer:wx,lastRenderedState:l},u.queue=p,u=qx.bind(null,Ie,p),p.dispatch=u,p=ZO(!1),b=UO.bind(null,Ie,!1,p.queue),p=Fi(),y={state:l,dispatch:null,action:o,pending:null},p.queue=y,u=Dj.bind(null,Ie,y,b,u),y.dispatch=u,p.memoizedState=o,[l,u,!1]}function Cx(o){var l=Ht();return Tx(l,St,o)}function Tx(o,l,u){if(l=XO(o,l,wx)[0],o=ff(ks)[0],typeof l=="object"&&l!==null&&typeof l.then=="function")try{var p=wh(l)}catch(k){throw k===jl?nf:k}else p=l;l=Ht();var y=l.queue,b=y.dispatch;return u!==l.memoizedState&&(Ie.flags|=2048,Nl(9,{destroy:void 0},Bj.bind(null,y,u),null)),[p,b,o]}function Bj(o,l){o.action=l}function Qx(o){var l=Ht(),u=St;if(u!==null)return Tx(l,u,o);Ht(),l=l.memoizedState,u=Ht();var p=u.queue.dispatch;return u.memoizedState=o,[l,p,!1]}function Nl(o,l,u,p){return o={tag:o,create:u,deps:p,inst:l,next:null},l=Ie.updateQueue,l===null&&(l=uf(),Ie.updateQueue=l),u=l.lastEffect,u===null?l.lastEffect=o.next=o:(p=u.next,u.next=o,o.next=p,l.lastEffect=o),o}function $x(){return Ht().memoizedState}function pf(o,l,u,p){var y=Fi();Ie.flags|=o,y.memoizedState=Nl(1|l,{destroy:void 0},u,p===void 0?null:p)}function gf(o,l,u,p){var y=Ht();p=p===void 0?null:p;var b=y.memoizedState.inst;St!==null&&p!==null&&MO(p,St.memoizedState.deps)?y.memoizedState=Nl(l,b,u,p):(Ie.flags|=o,y.memoizedState=Nl(1|l,b,u,p))}function Px(o,l){pf(8390656,8,o,l)}function qO(o,l){gf(2048,8,o,l)}function Lj(o){Ie.flags|=4;var l=Ie.updateQueue;if(l===null)l=uf(),Ie.updateQueue=l,l.events=[o];else{var u=l.events;u===null?l.events=[o]:u.push(o)}}function Ex(o){var l=Ht().memoizedState;return Lj({ref:l,nextImpl:o}),function(){if((ft&2)!==0)throw Error(n(440));return l.impl.apply(void 0,arguments)}}function Rx(o,l){return gf(4,2,o,l)}function Ax(o,l){return gf(4,4,o,l)}function Mx(o,l){if(typeof l=="function"){o=o();var u=l(o);return function(){typeof u=="function"?u():l(null)}}if(l!=null)return o=o(),l.current=o,function(){l.current=null}}function zx(o,l,u){u=u!=null?u.concat([o]):null,gf(4,4,Mx.bind(null,l,o),u)}function IO(){}function jx(o,l){var u=Ht();l=l===void 0?null:l;var p=u.memoizedState;return l!==null&&MO(l,p[1])?p[0]:(u.memoizedState=[o,l],o)}function Dx(o,l){var u=Ht();l=l===void 0?null:l;var p=u.memoizedState;if(l!==null&&MO(l,p[1]))return p[0];if(p=o(),Ea){Tn(!0);try{o()}finally{Tn(!1)}}return u.memoizedState=[p,l],p}function VO(o,l,u){return u===void 0||(ws&1073741824)!==0&&(et&261930)===0?o.memoizedState=l:(o.memoizedState=u,o=Bw(),Ie.lanes|=o,To|=o,u)}function Bx(o,l,u,p){return Pn(u,l)?u:Bl.current!==null?(o=VO(o,u,p),Pn(o,l)||(ni=!0),o):(ws&42)===0||(ws&1073741824)!==0&&(et&261930)===0?(ni=!0,o.memoizedState=u):(o=Bw(),Ie.lanes|=o,To|=o,l)}function Lx(o,l,u,p,y){var b=Z.p;Z.p=b!==0&&8>b?b:8;var k=$.T,R={};$.T=R,UO(o,!1,l,u);try{var Y=y(),te=$.S;if(te!==null&&te(R,Y),Y!==null&&typeof Y=="object"&&typeof Y.then=="function"){var oe=Mj(Y,p);kh(o,l,oe,jn(o))}else kh(o,l,p,jn(o))}catch(he){kh(o,l,{then:function(){},status:"rejected",reason:he},jn())}finally{Z.p=b,k!==null&&R.types!==null&&(k.types=R.types),$.T=k}}function Xj(){}function YO(o,l,u,p){if(o.tag!==5)throw Error(n(476));var y=Xx(o).queue;Lx(o,y,l,z,u===null?Xj:function(){return Nx(o),u(p)})}function Xx(o){var l=o.memoizedState;if(l!==null)return l;l={memoizedState:z,baseState:z,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ks,lastRenderedState:z},next:null};var u={};return l.next={memoizedState:u,baseState:u,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ks,lastRenderedState:u},next:null},o.memoizedState=l,o=o.alternate,o!==null&&(o.memoizedState=l),l}function Nx(o){var l=Xx(o);l.next===null&&(l=o.alternate.memoizedState),kh(o,l.next.queue,{},jn())}function HO(){return Ai(Zh)}function Zx(){return Ht().memoizedState}function Wx(){return Ht().memoizedState}function Nj(o){for(var l=o.return;l!==null;){switch(l.tag){case 24:case 3:var u=jn();o=bo(u);var p=_o(l,o,u);p!==null&&(mn(p,l,u),Sh(p,l,u)),l={cache:xO()},o.payload=l;return}l=l.return}}function Zj(o,l,u){var p=jn();u={lane:p,revertLane:0,gesture:null,action:u,hasEagerState:!1,eagerState:null,next:null},mf(o)?Ix(l,u):(u=dO(o,l,u,p),u!==null&&(mn(u,o,p),Vx(u,l,p)))}function qx(o,l,u){var p=jn();kh(o,l,u,p)}function kh(o,l,u,p){var y={lane:p,revertLane:0,gesture:null,action:u,hasEagerState:!1,eagerState:null,next:null};if(mf(o))Ix(l,y);else{var b=o.alternate;if(o.lanes===0&&(b===null||b.lanes===0)&&(b=l.lastRenderedReducer,b!==null))try{var k=l.lastRenderedState,R=b(k,u);if(y.hasEagerState=!0,y.eagerState=R,Pn(R,k))return Ud(o,l,y,0),wt===null&&Hd(),!1}catch{}finally{}if(u=dO(o,l,y,p),u!==null)return mn(u,o,p),Vx(u,l,p),!0}return!1}function UO(o,l,u,p){if(p={lane:2,revertLane:T0(),gesture:null,action:p,hasEagerState:!1,eagerState:null,next:null},mf(o)){if(l)throw Error(n(479))}else l=dO(o,u,p,2),l!==null&&mn(l,o,2)}function mf(o){var l=o.alternate;return o===Ie||l!==null&&l===Ie}function Ix(o,l){Ll=cf=!0;var u=o.pending;u===null?l.next=l:(l.next=u.next,u.next=l),o.pending=l}function Vx(o,l,u){if((u&4194048)!==0){var p=l.lanes;p&=o.pendingLanes,u|=p,l.lanes=u,Ne(o,u)}}var Ch={readContext:Ai,use:df,useCallback:Zt,useContext:Zt,useEffect:Zt,useImperativeHandle:Zt,useLayoutEffect:Zt,useInsertionEffect:Zt,useMemo:Zt,useReducer:Zt,useRef:Zt,useState:Zt,useDebugValue:Zt,useDeferredValue:Zt,useTransition:Zt,useSyncExternalStore:Zt,useId:Zt,useHostTransitionStatus:Zt,useFormState:Zt,useActionState:Zt,useOptimistic:Zt,useMemoCache:Zt,useCacheRefresh:Zt};Ch.useEffectEvent=Zt;var Yx={readContext:Ai,use:df,useCallback:function(o,l){return Fi().memoizedState=[o,l===void 0?null:l],o},useContext:Ai,useEffect:Px,useImperativeHandle:function(o,l,u){u=u!=null?u.concat([o]):null,pf(4194308,4,Mx.bind(null,l,o),u)},useLayoutEffect:function(o,l){return pf(4194308,4,o,l)},useInsertionEffect:function(o,l){pf(4,2,o,l)},useMemo:function(o,l){var u=Fi();l=l===void 0?null:l;var p=o();if(Ea){Tn(!0);try{o()}finally{Tn(!1)}}return u.memoizedState=[p,l],p},useReducer:function(o,l,u){var p=Fi();if(u!==void 0){var y=u(l);if(Ea){Tn(!0);try{u(l)}finally{Tn(!1)}}}else y=l;return p.memoizedState=p.baseState=y,o={pending:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:y},p.queue=o,o=o.dispatch=Zj.bind(null,Ie,o),[p.memoizedState,o]},useRef:function(o){var l=Fi();return o={current:o},l.memoizedState=o},useState:function(o){o=ZO(o);var l=o.queue,u=qx.bind(null,Ie,l);return l.dispatch=u,[o.memoizedState,u]},useDebugValue:IO,useDeferredValue:function(o,l){var u=Fi();return VO(u,o,l)},useTransition:function(){var o=ZO(!1);return o=Lx.bind(null,Ie,o.queue,!0,!1),Fi().memoizedState=o,[!1,o]},useSyncExternalStore:function(o,l,u){var p=Ie,y=Fi();if(rt){if(u===void 0)throw Error(n(407));u=u()}else{if(u=l(),wt===null)throw Error(n(349));(et&127)!==0||px(p,l,u)}y.memoizedState=u;var b={value:u,getSnapshot:l};return y.queue=b,Px(mx.bind(null,p,b,o),[o]),p.flags|=2048,Nl(9,{destroy:void 0},gx.bind(null,p,b,u,l),null),u},useId:function(){var o=Fi(),l=wt.identifierPrefix;if(rt){var u=Zr,p=Nr;u=(p&~(1<<32-Ei(p)-1)).toString(32)+u,l="_"+l+"R_"+u,u=hf++,0<u&&(l+="H"+u.toString(32)),l+="_"}else u=zj++,l="_"+l+"r_"+u.toString(32)+"_";return o.memoizedState=l},useHostTransitionStatus:HO,useFormState:kx,useActionState:kx,useOptimistic:function(o){var l=Fi();l.memoizedState=l.baseState=o;var u={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return l.queue=u,l=UO.bind(null,Ie,!0,u),u.dispatch=l,[o,l]},useMemoCache:LO,useCacheRefresh:function(){return Fi().memoizedState=Nj.bind(null,Ie)},useEffectEvent:function(o){var l=Fi(),u={impl:o};return l.memoizedState=u,function(){if((ft&2)!==0)throw Error(n(440));return u.impl.apply(void 0,arguments)}}},GO={readContext:Ai,use:df,useCallback:jx,useContext:Ai,useEffect:qO,useImperativeHandle:zx,useInsertionEffect:Rx,useLayoutEffect:Ax,useMemo:Dx,useReducer:ff,useRef:$x,useState:function(){return ff(ks)},useDebugValue:IO,useDeferredValue:function(o,l){var u=Ht();return Bx(u,St.memoizedState,o,l)},useTransition:function(){var o=ff(ks)[0],l=Ht().memoizedState;return[typeof o=="boolean"?o:wh(o),l]},useSyncExternalStore:fx,useId:Zx,useHostTransitionStatus:HO,useFormState:Cx,useActionState:Cx,useOptimistic:function(o,l){var u=Ht();return yx(u,St,o,l)},useMemoCache:LO,useCacheRefresh:Wx};GO.useEffectEvent=Ex;var Hx={readContext:Ai,use:df,useCallback:jx,useContext:Ai,useEffect:qO,useImperativeHandle:zx,useInsertionEffect:Rx,useLayoutEffect:Ax,useMemo:Dx,useReducer:NO,useRef:$x,useState:function(){return NO(ks)},useDebugValue:IO,useDeferredValue:function(o,l){var u=Ht();return St===null?VO(u,o,l):Bx(u,St.memoizedState,o,l)},useTransition:function(){var o=NO(ks)[0],l=Ht().memoizedState;return[typeof o=="boolean"?o:wh(o),l]},useSyncExternalStore:fx,useId:Zx,useHostTransitionStatus:HO,useFormState:Qx,useActionState:Qx,useOptimistic:function(o,l){var u=Ht();return St!==null?yx(u,St,o,l):(u.baseState=o,[o,u.queue.dispatch])},useMemoCache:LO,useCacheRefresh:Wx};Hx.useEffectEvent=Ex;function FO(o,l,u,p){l=o.memoizedState,u=u(p,l),u=u==null?l:g({},l,u),o.memoizedState=u,o.lanes===0&&(o.updateQueue.baseState=u)}var KO={enqueueSetState:function(o,l,u){o=o._reactInternals;var p=jn(),y=bo(p);y.payload=l,u!=null&&(y.callback=u),l=_o(o,y,p),l!==null&&(mn(l,o,p),Sh(l,o,p))},enqueueReplaceState:function(o,l,u){o=o._reactInternals;var p=jn(),y=bo(p);y.tag=1,y.payload=l,u!=null&&(y.callback=u),l=_o(o,y,p),l!==null&&(mn(l,o,p),Sh(l,o,p))},enqueueForceUpdate:function(o,l){o=o._reactInternals;var u=jn(),p=bo(u);p.tag=2,l!=null&&(p.callback=l),l=_o(o,p,u),l!==null&&(mn(l,o,u),Sh(l,o,u))}};function Ux(o,l,u,p,y,b,k){return o=o.stateNode,typeof o.shouldComponentUpdate=="function"?o.shouldComponentUpdate(p,b,k):l.prototype&&l.prototype.isPureReactComponent?!dh(u,p)||!dh(y,b):!0}function Gx(o,l,u,p){o=l.state,typeof l.componentWillReceiveProps=="function"&&l.componentWillReceiveProps(u,p),typeof l.UNSAFE_componentWillReceiveProps=="function"&&l.UNSAFE_componentWillReceiveProps(u,p),l.state!==o&&KO.enqueueReplaceState(l,l.state,null)}function Ra(o,l){var u=l;if("ref"in l){u={};for(var p in l)p!=="ref"&&(u[p]=l[p])}if(o=o.defaultProps){u===l&&(u=g({},u));for(var y in o)u[y]===void 0&&(u[y]=o[y])}return u}function Fx(o){Yd(o)}function Kx(o){console.error(o)}function Jx(o){Yd(o)}function Of(o,l){try{var u=o.onUncaughtError;u(l.value,{componentStack:l.stack})}catch(p){setTimeout(function(){throw p})}}function ew(o,l,u){try{var p=o.onCaughtError;p(u.value,{componentStack:u.stack,errorBoundary:l.tag===1?l.stateNode:null})}catch(y){setTimeout(function(){throw y})}}function JO(o,l,u){return u=bo(u),u.tag=3,u.payload={element:null},u.callback=function(){Of(o,l)},u}function tw(o){return o=bo(o),o.tag=3,o}function iw(o,l,u,p){var y=u.type.getDerivedStateFromError;if(typeof y=="function"){var b=p.value;o.payload=function(){return y(b)},o.callback=function(){ew(l,u,p)}}var k=u.stateNode;k!==null&&typeof k.componentDidCatch=="function"&&(o.callback=function(){ew(l,u,p),typeof y!="function"&&(Qo===null?Qo=new Set([this]):Qo.add(this));var R=p.stack;this.componentDidCatch(p.value,{componentStack:R!==null?R:""})})}function Wj(o,l,u,p,y){if(u.flags|=32768,p!==null&&typeof p=="object"&&typeof p.then=="function"){if(l=u.alternate,l!==null&&Al(l,u,y,!0),u=Rn.current,u!==null){switch(u.tag){case 31:case 13:return ir===null?$f():u.alternate===null&&Wt===0&&(Wt=3),u.flags&=-257,u.flags|=65536,u.lanes=y,p===rf?u.flags|=16384:(l=u.updateQueue,l===null?u.updateQueue=new Set([p]):l.add(p),w0(o,p,y)),!1;case 22:return u.flags|=65536,p===rf?u.flags|=16384:(l=u.updateQueue,l===null?(l={transitions:null,markerInstances:null,retryQueue:new Set([p])},u.updateQueue=l):(u=l.retryQueue,u===null?l.retryQueue=new Set([p]):u.add(p)),w0(o,p,y)),!1}throw Error(n(435,u.tag))}return w0(o,p,y),$f(),!1}if(rt)return l=Rn.current,l!==null?((l.flags&65536)===0&&(l.flags|=256),l.flags|=65536,l.lanes=y,p!==vO&&(o=Error(n(422),{cause:p}),gh(Kn(o,u)))):(p!==vO&&(l=Error(n(423),{cause:p}),gh(Kn(l,u))),o=o.current.alternate,o.flags|=65536,y&=-y,o.lanes|=y,p=Kn(p,u),y=JO(o.stateNode,p,y),$O(o,y),Wt!==4&&(Wt=2)),!1;var b=Error(n(520),{cause:p});if(b=Kn(b,u),Mh===null?Mh=[b]:Mh.push(b),Wt!==4&&(Wt=2),l===null)return!0;p=Kn(p,u),u=l;do{switch(u.tag){case 3:return u.flags|=65536,o=y&-y,u.lanes|=o,o=JO(u.stateNode,p,o),$O(u,o),!1;case 1:if(l=u.type,b=u.stateNode,(u.flags&128)===0&&(typeof l.getDerivedStateFromError=="function"||b!==null&&typeof b.componentDidCatch=="function"&&(Qo===null||!Qo.has(b))))return u.flags|=65536,y&=-y,u.lanes|=y,y=tw(y),iw(y,o,u,p),$O(u,y),!1}u=u.return}while(u!==null);return!1}var e0=Error(n(461)),ni=!1;function Mi(o,l,u,p){l.child=o===null?ox(l,null,u,p):Pa(l,o.child,u,p)}function nw(o,l,u,p,y){u=u.render;var b=l.ref;if("ref"in p){var k={};for(var R in p)R!=="ref"&&(k[R]=p[R])}else k=p;return Ca(l),p=zO(o,l,u,k,b,y),R=jO(),o!==null&&!ni?(DO(o,l,y),Cs(o,l,y)):(rt&&R&&mO(l),l.flags|=1,Mi(o,l,p,y),l.child)}function rw(o,l,u,p,y){if(o===null){var b=u.type;return typeof b=="function"&&!fO(b)&&b.defaultProps===void 0&&u.compare===null?(l.tag=15,l.type=b,sw(o,l,b,p,y)):(o=Fd(u.type,null,p,l,l.mode,y),o.ref=l.ref,o.return=l,l.child=o)}if(b=o.child,!l0(o,y)){var k=b.memoizedProps;if(u=u.compare,u=u!==null?u:dh,u(k,p)&&o.ref===l.ref)return Cs(o,l,y)}return l.flags|=1,o=Ss(b,p),o.ref=l.ref,o.return=l,l.child=o}function sw(o,l,u,p,y){if(o!==null){var b=o.memoizedProps;if(dh(b,p)&&o.ref===l.ref)if(ni=!1,l.pendingProps=p=b,l0(o,y))(o.flags&131072)!==0&&(ni=!0);else return l.lanes=o.lanes,Cs(o,l,y)}return t0(o,l,u,p,y)}function ow(o,l,u,p){var y=p.children,b=o!==null?o.memoizedState:null;if(o===null&&l.stateNode===null&&(l.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),p.mode==="hidden"){if((l.flags&128)!==0){if(b=b!==null?b.baseLanes|u:u,o!==null){for(p=l.child=o.child,y=0;p!==null;)y=y|p.lanes|p.childLanes,p=p.sibling;p=y&~b}else p=0,l.child=null;return aw(o,l,b,u,p)}if((u&536870912)!==0)l.memoizedState={baseLanes:0,cachePool:null},o!==null&&tf(l,b!==null?b.cachePool:null),b!==null?cx(l,b):EO(),hx(l);else return p=l.lanes=536870912,aw(o,l,b!==null?b.baseLanes|u:u,u,p)}else b!==null?(tf(l,b.cachePool),cx(l,b),wo(),l.memoizedState=null):(o!==null&&tf(l,null),EO(),wo());return Mi(o,l,y,u),l.child}function Th(o,l){return o!==null&&o.tag===22||l.stateNode!==null||(l.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),l.sibling}function aw(o,l,u,p,y){var b=kO();return b=b===null?null:{parent:ti._currentValue,pool:b},l.memoizedState={baseLanes:u,cachePool:b},o!==null&&tf(l,null),EO(),hx(l),o!==null&&Al(o,l,p,!0),l.childLanes=y,null}function vf(o,l){return l=Sf({mode:l.mode,children:l.children},o.mode),l.ref=o.ref,o.child=l,l.return=o,l}function lw(o,l,u){return Pa(l,o.child,null,u),o=vf(l,l.pendingProps),o.flags|=2,An(l),l.memoizedState=null,o}function qj(o,l,u){var p=l.pendingProps,y=(l.flags&128)!==0;if(l.flags&=-129,o===null){if(rt){if(p.mode==="hidden")return o=vf(l,p),l.lanes=536870912,Th(null,o);if(AO(l),(o=$t)?(o=Sk(o,tr),o=o!==null&&o.data==="&"?o:null,o!==null&&(l.memoizedState={dehydrated:o,treeContext:mo!==null?{id:Nr,overflow:Zr}:null,retryLane:536870912,hydrationErrors:null},u=I_(o),u.return=l,l.child=u,Ri=l,$t=null)):o=null,o===null)throw vo(l);return l.lanes=536870912,null}return vf(l,p)}var b=o.memoizedState;if(b!==null){var k=b.dehydrated;if(AO(l),y)if(l.flags&256)l.flags&=-257,l=lw(o,l,u);else if(l.memoizedState!==null)l.child=o.child,l.flags|=128,l=null;else throw Error(n(558));else if(ni||Al(o,l,u,!1),y=(u&o.childLanes)!==0,ni||y){if(p=wt,p!==null&&(k=lt(p,u),k!==0&&k!==b.retryLane))throw b.retryLane=k,_a(o,k),mn(p,o,k),e0;$f(),l=lw(o,l,u)}else o=b.treeContext,$t=nr(k.nextSibling),Ri=l,rt=!0,Oo=null,tr=!1,o!==null&&H_(l,o),l=vf(l,p),l.flags|=4096;return l}return o=Ss(o.child,{mode:p.mode,children:p.children}),o.ref=l.ref,l.child=o,o.return=l,o}function yf(o,l){var u=l.ref;if(u===null)o!==null&&o.ref!==null&&(l.flags|=4194816);else{if(typeof u!="function"&&typeof u!="object")throw Error(n(284));(o===null||o.ref!==u)&&(l.flags|=4194816)}}function t0(o,l,u,p,y){return Ca(l),u=zO(o,l,u,p,void 0,y),p=jO(),o!==null&&!ni?(DO(o,l,y),Cs(o,l,y)):(rt&&p&&mO(l),l.flags|=1,Mi(o,l,u,y),l.child)}function cw(o,l,u,p,y,b){return Ca(l),l.updateQueue=null,u=dx(l,p,u,y),ux(o),p=jO(),o!==null&&!ni?(DO(o,l,b),Cs(o,l,b)):(rt&&p&&mO(l),l.flags|=1,Mi(o,l,u,b),l.child)}function hw(o,l,u,p,y){if(Ca(l),l.stateNode===null){var b=$l,k=u.contextType;typeof k=="object"&&k!==null&&(b=Ai(k)),b=new u(p,b),l.memoizedState=b.state!==null&&b.state!==void 0?b.state:null,b.updater=KO,l.stateNode=b,b._reactInternals=l,b=l.stateNode,b.props=p,b.state=l.memoizedState,b.refs={},TO(l),k=u.contextType,b.context=typeof k=="object"&&k!==null?Ai(k):$l,b.state=l.memoizedState,k=u.getDerivedStateFromProps,typeof k=="function"&&(FO(l,u,k,p),b.state=l.memoizedState),typeof u.getDerivedStateFromProps=="function"||typeof b.getSnapshotBeforeUpdate=="function"||typeof b.UNSAFE_componentWillMount!="function"&&typeof b.componentWillMount!="function"||(k=b.state,typeof b.componentWillMount=="function"&&b.componentWillMount(),typeof b.UNSAFE_componentWillMount=="function"&&b.UNSAFE_componentWillMount(),k!==b.state&&KO.enqueueReplaceState(b,b.state,null),_h(l,p,b,y),bh(),b.state=l.memoizedState),typeof b.componentDidMount=="function"&&(l.flags|=4194308),p=!0}else if(o===null){b=l.stateNode;var R=l.memoizedProps,Y=Ra(u,R);b.props=Y;var te=b.context,oe=u.contextType;k=$l,typeof oe=="object"&&oe!==null&&(k=Ai(oe));var he=u.getDerivedStateFromProps;oe=typeof he=="function"||typeof b.getSnapshotBeforeUpdate=="function",R=l.pendingProps!==R,oe||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(R||te!==k)&&Gx(l,b,p,k),So=!1;var re=l.memoizedState;b.state=re,_h(l,p,b,y),bh(),te=l.memoizedState,R||re!==te||So?(typeof he=="function"&&(FO(l,u,he,p),te=l.memoizedState),(Y=So||Ux(l,u,Y,p,re,te,k))?(oe||typeof b.UNSAFE_componentWillMount!="function"&&typeof b.componentWillMount!="function"||(typeof b.componentWillMount=="function"&&b.componentWillMount(),typeof b.UNSAFE_componentWillMount=="function"&&b.UNSAFE_componentWillMount()),typeof b.componentDidMount=="function"&&(l.flags|=4194308)):(typeof b.componentDidMount=="function"&&(l.flags|=4194308),l.memoizedProps=p,l.memoizedState=te),b.props=p,b.state=te,b.context=k,p=Y):(typeof b.componentDidMount=="function"&&(l.flags|=4194308),p=!1)}else{b=l.stateNode,QO(o,l),k=l.memoizedProps,oe=Ra(u,k),b.props=oe,he=l.pendingProps,re=b.context,te=u.contextType,Y=$l,typeof te=="object"&&te!==null&&(Y=Ai(te)),R=u.getDerivedStateFromProps,(te=typeof R=="function"||typeof b.getSnapshotBeforeUpdate=="function")||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(k!==he||re!==Y)&&Gx(l,b,p,Y),So=!1,re=l.memoizedState,b.state=re,_h(l,p,b,y),bh();var se=l.memoizedState;k!==he||re!==se||So||o!==null&&o.dependencies!==null&&Jd(o.dependencies)?(typeof R=="function"&&(FO(l,u,R,p),se=l.memoizedState),(oe=So||Ux(l,u,oe,p,re,se,Y)||o!==null&&o.dependencies!==null&&Jd(o.dependencies))?(te||typeof b.UNSAFE_componentWillUpdate!="function"&&typeof b.componentWillUpdate!="function"||(typeof b.componentWillUpdate=="function"&&b.componentWillUpdate(p,se,Y),typeof b.UNSAFE_componentWillUpdate=="function"&&b.UNSAFE_componentWillUpdate(p,se,Y)),typeof b.componentDidUpdate=="function"&&(l.flags|=4),typeof b.getSnapshotBeforeUpdate=="function"&&(l.flags|=1024)):(typeof b.componentDidUpdate!="function"||k===o.memoizedProps&&re===o.memoizedState||(l.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||k===o.memoizedProps&&re===o.memoizedState||(l.flags|=1024),l.memoizedProps=p,l.memoizedState=se),b.props=p,b.state=se,b.context=Y,p=oe):(typeof b.componentDidUpdate!="function"||k===o.memoizedProps&&re===o.memoizedState||(l.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||k===o.memoizedProps&&re===o.memoizedState||(l.flags|=1024),p=!1)}return b=p,yf(o,l),p=(l.flags&128)!==0,b||p?(b=l.stateNode,u=p&&typeof u.getDerivedStateFromError!="function"?null:b.render(),l.flags|=1,o!==null&&p?(l.child=Pa(l,o.child,null,y),l.child=Pa(l,null,u,y)):Mi(o,l,u,y),l.memoizedState=b.state,o=l.child):o=Cs(o,l,y),o}function uw(o,l,u,p){return wa(),l.flags|=256,Mi(o,l,u,p),l.child}var i0={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function n0(o){return{baseLanes:o,cachePool:ex()}}function r0(o,l,u){return o=o!==null?o.childLanes&~u:0,l&&(o|=zn),o}function dw(o,l,u){var p=l.pendingProps,y=!1,b=(l.flags&128)!==0,k;if((k=b)||(k=o!==null&&o.memoizedState===null?!1:(Yt.current&2)!==0),k&&(y=!0,l.flags&=-129),k=(l.flags&32)!==0,l.flags&=-33,o===null){if(rt){if(y?xo(l):wo(),(o=$t)?(o=Sk(o,tr),o=o!==null&&o.data!=="&"?o:null,o!==null&&(l.memoizedState={dehydrated:o,treeContext:mo!==null?{id:Nr,overflow:Zr}:null,retryLane:536870912,hydrationErrors:null},u=I_(o),u.return=l,l.child=u,Ri=l,$t=null)):o=null,o===null)throw vo(l);return X0(o)?l.lanes=32:l.lanes=536870912,null}var R=p.children;return p=p.fallback,y?(wo(),y=l.mode,R=Sf({mode:"hidden",children:R},y),p=xa(p,y,u,null),R.return=l,p.return=l,R.sibling=p,l.child=R,p=l.child,p.memoizedState=n0(u),p.childLanes=r0(o,k,u),l.memoizedState=i0,Th(null,p)):(xo(l),s0(l,R))}var Y=o.memoizedState;if(Y!==null&&(R=Y.dehydrated,R!==null)){if(b)l.flags&256?(xo(l),l.flags&=-257,l=o0(o,l,u)):l.memoizedState!==null?(wo(),l.child=o.child,l.flags|=128,l=null):(wo(),R=p.fallback,y=l.mode,p=Sf({mode:"visible",children:p.children},y),R=xa(R,y,u,null),R.flags|=2,p.return=l,R.return=l,p.sibling=R,l.child=p,Pa(l,o.child,null,u),p=l.child,p.memoizedState=n0(u),p.childLanes=r0(o,k,u),l.memoizedState=i0,l=Th(null,p));else if(xo(l),X0(R)){if(k=R.nextSibling&&R.nextSibling.dataset,k)var te=k.dgst;k=te,p=Error(n(419)),p.stack="",p.digest=k,gh({value:p,source:null,stack:null}),l=o0(o,l,u)}else if(ni||Al(o,l,u,!1),k=(u&o.childLanes)!==0,ni||k){if(k=wt,k!==null&&(p=lt(k,u),p!==0&&p!==Y.retryLane))throw Y.retryLane=p,_a(o,p),mn(k,o,p),e0;L0(R)||$f(),l=o0(o,l,u)}else L0(R)?(l.flags|=192,l.child=o.child,l=null):(o=Y.treeContext,$t=nr(R.nextSibling),Ri=l,rt=!0,Oo=null,tr=!1,o!==null&&H_(l,o),l=s0(l,p.children),l.flags|=4096);return l}return y?(wo(),R=p.fallback,y=l.mode,Y=o.child,te=Y.sibling,p=Ss(Y,{mode:"hidden",children:p.children}),p.subtreeFlags=Y.subtreeFlags&65011712,te!==null?R=Ss(te,R):(R=xa(R,y,u,null),R.flags|=2),R.return=l,p.return=l,p.sibling=R,l.child=p,Th(null,p),p=l.child,R=o.child.memoizedState,R===null?R=n0(u):(y=R.cachePool,y!==null?(Y=ti._currentValue,y=y.parent!==Y?{parent:Y,pool:Y}:y):y=ex(),R={baseLanes:R.baseLanes|u,cachePool:y}),p.memoizedState=R,p.childLanes=r0(o,k,u),l.memoizedState=i0,Th(o.child,p)):(xo(l),u=o.child,o=u.sibling,u=Ss(u,{mode:"visible",children:p.children}),u.return=l,u.sibling=null,o!==null&&(k=l.deletions,k===null?(l.deletions=[o],l.flags|=16):k.push(o)),l.child=u,l.memoizedState=null,u)}function s0(o,l){return l=Sf({mode:"visible",children:l},o.mode),l.return=o,o.child=l}function Sf(o,l){return o=En(22,o,null,l),o.lanes=0,o}function o0(o,l,u){return Pa(l,o.child,null,u),o=s0(l,l.pendingProps.children),o.flags|=2,l.memoizedState=null,o}function fw(o,l,u){o.lanes|=l;var p=o.alternate;p!==null&&(p.lanes|=l),bO(o.return,l,u)}function a0(o,l,u,p,y,b){var k=o.memoizedState;k===null?o.memoizedState={isBackwards:l,rendering:null,renderingStartTime:0,last:p,tail:u,tailMode:y,treeForkCount:b}:(k.isBackwards=l,k.rendering=null,k.renderingStartTime=0,k.last=p,k.tail=u,k.tailMode=y,k.treeForkCount=b)}function pw(o,l,u){var p=l.pendingProps,y=p.revealOrder,b=p.tail;p=p.children;var k=Yt.current,R=(k&2)!==0;if(R?(k=k&1|2,l.flags|=128):k&=1,J(Yt,k),Mi(o,l,p,u),p=rt?ph:0,!R&&o!==null&&(o.flags&128)!==0)e:for(o=l.child;o!==null;){if(o.tag===13)o.memoizedState!==null&&fw(o,u,l);else if(o.tag===19)fw(o,u,l);else if(o.child!==null){o.child.return=o,o=o.child;continue}if(o===l)break e;for(;o.sibling===null;){if(o.return===null||o.return===l)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}switch(y){case"forwards":for(u=l.child,y=null;u!==null;)o=u.alternate,o!==null&&lf(o)===null&&(y=u),u=u.sibling;u=y,u===null?(y=l.child,l.child=null):(y=u.sibling,u.sibling=null),a0(l,!1,y,u,b,p);break;case"backwards":case"unstable_legacy-backwards":for(u=null,y=l.child,l.child=null;y!==null;){if(o=y.alternate,o!==null&&lf(o)===null){l.child=y;break}o=y.sibling,y.sibling=u,u=y,y=o}a0(l,!0,u,null,b,p);break;case"together":a0(l,!1,null,null,void 0,p);break;default:l.memoizedState=null}return l.child}function Cs(o,l,u){if(o!==null&&(l.dependencies=o.dependencies),To|=l.lanes,(u&l.childLanes)===0)if(o!==null){if(Al(o,l,u,!1),(u&l.childLanes)===0)return null}else return null;if(o!==null&&l.child!==o.child)throw Error(n(153));if(l.child!==null){for(o=l.child,u=Ss(o,o.pendingProps),l.child=u,u.return=l;o.sibling!==null;)o=o.sibling,u=u.sibling=Ss(o,o.pendingProps),u.return=l;u.sibling=null}return l.child}function l0(o,l){return(o.lanes&l)!==0?!0:(o=o.dependencies,!!(o!==null&&Jd(o)))}function Ij(o,l,u){switch(l.tag){case 3:fe(l,l.stateNode.containerInfo),yo(l,ti,o.memoizedState.cache),wa();break;case 27:case 5:je(l);break;case 4:fe(l,l.stateNode.containerInfo);break;case 10:yo(l,l.type,l.memoizedProps.value);break;case 31:if(l.memoizedState!==null)return l.flags|=128,AO(l),null;break;case 13:var p=l.memoizedState;if(p!==null)return p.dehydrated!==null?(xo(l),l.flags|=128,null):(u&l.child.childLanes)!==0?dw(o,l,u):(xo(l),o=Cs(o,l,u),o!==null?o.sibling:null);xo(l);break;case 19:var y=(o.flags&128)!==0;if(p=(u&l.childLanes)!==0,p||(Al(o,l,u,!1),p=(u&l.childLanes)!==0),y){if(p)return pw(o,l,u);l.flags|=128}if(y=l.memoizedState,y!==null&&(y.rendering=null,y.tail=null,y.lastEffect=null),J(Yt,Yt.current),p)break;return null;case 22:return l.lanes=0,ow(o,l,u,l.pendingProps);case 24:yo(l,ti,o.memoizedState.cache)}return Cs(o,l,u)}function gw(o,l,u){if(o!==null)if(o.memoizedProps!==l.pendingProps)ni=!0;else{if(!l0(o,u)&&(l.flags&128)===0)return ni=!1,Ij(o,l,u);ni=(o.flags&131072)!==0}else ni=!1,rt&&(l.flags&1048576)!==0&&Y_(l,ph,l.index);switch(l.lanes=0,l.tag){case 16:e:{var p=l.pendingProps;if(o=Qa(l.elementType),l.type=o,typeof o=="function")fO(o)?(p=Ra(o,p),l.tag=1,l=hw(null,l,o,p,u)):(l.tag=0,l=t0(null,l,o,p,u));else{if(o!=null){var y=o.$$typeof;if(y===T){l.tag=11,l=nw(null,l,o,p,u);break e}else if(y===M){l.tag=14,l=rw(null,l,o,p,u);break e}}throw l=E(o)||o,Error(n(306,l,""))}}return l;case 0:return t0(o,l,l.type,l.pendingProps,u);case 1:return p=l.type,y=Ra(p,l.pendingProps),hw(o,l,p,y,u);case 3:e:{if(fe(l,l.stateNode.containerInfo),o===null)throw Error(n(387));p=l.pendingProps;var b=l.memoizedState;y=b.element,QO(o,l),_h(l,p,null,u);var k=l.memoizedState;if(p=k.cache,yo(l,ti,p),p!==b.cache&&_O(l,[ti],u,!0),bh(),p=k.element,b.isDehydrated)if(b={element:p,isDehydrated:!1,cache:k.cache},l.updateQueue.baseState=b,l.memoizedState=b,l.flags&256){l=uw(o,l,p,u);break e}else if(p!==y){y=Kn(Error(n(424)),l),gh(y),l=uw(o,l,p,u);break e}else{switch(o=l.stateNode.containerInfo,o.nodeType){case 9:o=o.body;break;default:o=o.nodeName==="HTML"?o.ownerDocument.body:o}for($t=nr(o.firstChild),Ri=l,rt=!0,Oo=null,tr=!0,u=ox(l,null,p,u),l.child=u;u;)u.flags=u.flags&-3|4096,u=u.sibling}else{if(wa(),p===y){l=Cs(o,l,u);break e}Mi(o,l,p,u)}l=l.child}return l;case 26:return yf(o,l),o===null?(u=Ck(l.type,null,l.pendingProps,null))?l.memoizedState=u:rt||(u=l.type,o=l.pendingProps,p=jf(de.current).createElement(u),p[di]=l,p[Wi]=o,zi(p,u,o),ei(p),l.stateNode=p):l.memoizedState=Ck(l.type,o.memoizedProps,l.pendingProps,o.memoizedState),null;case 27:return je(l),o===null&&rt&&(p=l.stateNode=xk(l.type,l.pendingProps,de.current),Ri=l,tr=!0,y=$t,Ro(l.type)?(N0=y,$t=nr(p.firstChild)):$t=y),Mi(o,l,l.pendingProps.children,u),yf(o,l),o===null&&(l.flags|=4194304),l.child;case 5:return o===null&&rt&&((y=p=$t)&&(p=b3(p,l.type,l.pendingProps,tr),p!==null?(l.stateNode=p,Ri=l,$t=nr(p.firstChild),tr=!1,y=!0):y=!1),y||vo(l)),je(l),y=l.type,b=l.pendingProps,k=o!==null?o.memoizedProps:null,p=b.children,j0(y,b)?p=null:k!==null&&j0(y,k)&&(l.flags|=32),l.memoizedState!==null&&(y=zO(o,l,jj,null,null,u),Zh._currentValue=y),yf(o,l),Mi(o,l,p,u),l.child;case 6:return o===null&&rt&&((o=u=$t)&&(u=_3(u,l.pendingProps,tr),u!==null?(l.stateNode=u,Ri=l,$t=null,o=!0):o=!1),o||vo(l)),null;case 13:return dw(o,l,u);case 4:return fe(l,l.stateNode.containerInfo),p=l.pendingProps,o===null?l.child=Pa(l,null,p,u):Mi(o,l,p,u),l.child;case 11:return nw(o,l,l.type,l.pendingProps,u);case 7:return Mi(o,l,l.pendingProps,u),l.child;case 8:return Mi(o,l,l.pendingProps.children,u),l.child;case 12:return Mi(o,l,l.pendingProps.children,u),l.child;case 10:return p=l.pendingProps,yo(l,l.type,p.value),Mi(o,l,p.children,u),l.child;case 9:return y=l.type._context,p=l.pendingProps.children,Ca(l),y=Ai(y),p=p(y),l.flags|=1,Mi(o,l,p,u),l.child;case 14:return rw(o,l,l.type,l.pendingProps,u);case 15:return sw(o,l,l.type,l.pendingProps,u);case 19:return pw(o,l,u);case 31:return qj(o,l,u);case 22:return ow(o,l,u,l.pendingProps);case 24:return Ca(l),p=Ai(ti),o===null?(y=kO(),y===null&&(y=wt,b=xO(),y.pooledCache=b,b.refCount++,b!==null&&(y.pooledCacheLanes|=u),y=b),l.memoizedState={parent:p,cache:y},TO(l),yo(l,ti,y)):((o.lanes&u)!==0&&(QO(o,l),_h(l,null,null,u),bh()),y=o.memoizedState,b=l.memoizedState,y.parent!==p?(y={parent:p,cache:p},l.memoizedState=y,l.lanes===0&&(l.memoizedState=l.updateQueue.baseState=y),yo(l,ti,p)):(p=b.cache,yo(l,ti,p),p!==y.cache&&_O(l,[ti],u,!0))),Mi(o,l,l.pendingProps.children,u),l.child;case 29:throw l.pendingProps}throw Error(n(156,l.tag))}function Ts(o){o.flags|=4}function c0(o,l,u,p,y){if((l=(o.mode&32)!==0)&&(l=!1),l){if(o.flags|=16777216,(y&335544128)===y)if(o.stateNode.complete)o.flags|=8192;else if(Zw())o.flags|=8192;else throw $a=rf,CO}else o.flags&=-16777217}function mw(o,l){if(l.type!=="stylesheet"||(l.state.loading&4)!==0)o.flags&=-16777217;else if(o.flags|=16777216,!Ek(l))if(Zw())o.flags|=8192;else throw $a=rf,CO}function bf(o,l){l!==null&&(o.flags|=4),o.flags&16384&&(l=o.tag!==22?vl():536870912,o.lanes|=l,Il|=l)}function Qh(o,l){if(!rt)switch(o.tailMode){case"hidden":l=o.tail;for(var u=null;l!==null;)l.alternate!==null&&(u=l),l=l.sibling;u===null?o.tail=null:u.sibling=null;break;case"collapsed":u=o.tail;for(var p=null;u!==null;)u.alternate!==null&&(p=u),u=u.sibling;p===null?l||o.tail===null?o.tail=null:o.tail.sibling=null:p.sibling=null}}function Pt(o){var l=o.alternate!==null&&o.alternate.child===o.child,u=0,p=0;if(l)for(var y=o.child;y!==null;)u|=y.lanes|y.childLanes,p|=y.subtreeFlags&65011712,p|=y.flags&65011712,y.return=o,y=y.sibling;else for(y=o.child;y!==null;)u|=y.lanes|y.childLanes,p|=y.subtreeFlags,p|=y.flags,y.return=o,y=y.sibling;return o.subtreeFlags|=p,o.childLanes=u,l}function Vj(o,l,u){var p=l.pendingProps;switch(OO(l),l.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Pt(l),null;case 1:return Pt(l),null;case 3:return u=l.stateNode,p=null,o!==null&&(p=o.memoizedState.cache),l.memoizedState.cache!==p&&(l.flags|=2048),xs(ti),Oe(),u.pendingContext&&(u.context=u.pendingContext,u.pendingContext=null),(o===null||o.child===null)&&(Rl(l)?Ts(l):o===null||o.memoizedState.isDehydrated&&(l.flags&256)===0||(l.flags|=1024,yO())),Pt(l),null;case 26:var y=l.type,b=l.memoizedState;return o===null?(Ts(l),b!==null?(Pt(l),mw(l,b)):(Pt(l),c0(l,y,null,p,u))):b?b!==o.memoizedState?(Ts(l),Pt(l),mw(l,b)):(Pt(l),l.flags&=-16777217):(o=o.memoizedProps,o!==p&&Ts(l),Pt(l),c0(l,y,o,p,u)),null;case 27:if($e(l),u=de.current,y=l.type,o!==null&&l.stateNode!=null)o.memoizedProps!==p&&Ts(l);else{if(!p){if(l.stateNode===null)throw Error(n(166));return Pt(l),null}o=ne.current,Rl(l)?U_(l):(o=xk(y,p,u),l.stateNode=o,Ts(l))}return Pt(l),null;case 5:if($e(l),y=l.type,o!==null&&l.stateNode!=null)o.memoizedProps!==p&&Ts(l);else{if(!p){if(l.stateNode===null)throw Error(n(166));return Pt(l),null}if(b=ne.current,Rl(l))U_(l);else{var k=jf(de.current);switch(b){case 1:b=k.createElementNS("http://www.w3.org/2000/svg",y);break;case 2:b=k.createElementNS("http://www.w3.org/1998/Math/MathML",y);break;default:switch(y){case"svg":b=k.createElementNS("http://www.w3.org/2000/svg",y);break;case"math":b=k.createElementNS("http://www.w3.org/1998/Math/MathML",y);break;case"script":b=k.createElement("div"),b.innerHTML="<script><\/script>",b=b.removeChild(b.firstChild);break;case"select":b=typeof p.is=="string"?k.createElement("select",{is:p.is}):k.createElement("select"),p.multiple?b.multiple=!0:p.size&&(b.size=p.size);break;default:b=typeof p.is=="string"?k.createElement(y,{is:p.is}):k.createElement(y)}}b[di]=l,b[Wi]=p;e:for(k=l.child;k!==null;){if(k.tag===5||k.tag===6)b.appendChild(k.stateNode);else if(k.tag!==4&&k.tag!==27&&k.child!==null){k.child.return=k,k=k.child;continue}if(k===l)break e;for(;k.sibling===null;){if(k.return===null||k.return===l)break e;k=k.return}k.sibling.return=k.return,k=k.sibling}l.stateNode=b;e:switch(zi(b,y,p),y){case"button":case"input":case"select":case"textarea":p=!!p.autoFocus;break e;case"img":p=!0;break e;default:p=!1}p&&Ts(l)}}return Pt(l),c0(l,l.type,o===null?null:o.memoizedProps,l.pendingProps,u),null;case 6:if(o&&l.stateNode!=null)o.memoizedProps!==p&&Ts(l);else{if(typeof p!="string"&&l.stateNode===null)throw Error(n(166));if(o=de.current,Rl(l)){if(o=l.stateNode,u=l.memoizedProps,p=null,y=Ri,y!==null)switch(y.tag){case 27:case 5:p=y.memoizedProps}o[di]=l,o=!!(o.nodeValue===u||p!==null&&p.suppressHydrationWarning===!0||dk(o.nodeValue,u)),o||vo(l,!0)}else o=jf(o).createTextNode(p),o[di]=l,l.stateNode=o}return Pt(l),null;case 31:if(u=l.memoizedState,o===null||o.memoizedState!==null){if(p=Rl(l),u!==null){if(o===null){if(!p)throw Error(n(318));if(o=l.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(n(557));o[di]=l}else wa(),(l.flags&128)===0&&(l.memoizedState=null),l.flags|=4;Pt(l),o=!1}else u=yO(),o!==null&&o.memoizedState!==null&&(o.memoizedState.hydrationErrors=u),o=!0;if(!o)return l.flags&256?(An(l),l):(An(l),null);if((l.flags&128)!==0)throw Error(n(558))}return Pt(l),null;case 13:if(p=l.memoizedState,o===null||o.memoizedState!==null&&o.memoizedState.dehydrated!==null){if(y=Rl(l),p!==null&&p.dehydrated!==null){if(o===null){if(!y)throw Error(n(318));if(y=l.memoizedState,y=y!==null?y.dehydrated:null,!y)throw Error(n(317));y[di]=l}else wa(),(l.flags&128)===0&&(l.memoizedState=null),l.flags|=4;Pt(l),y=!1}else y=yO(),o!==null&&o.memoizedState!==null&&(o.memoizedState.hydrationErrors=y),y=!0;if(!y)return l.flags&256?(An(l),l):(An(l),null)}return An(l),(l.flags&128)!==0?(l.lanes=u,l):(u=p!==null,o=o!==null&&o.memoizedState!==null,u&&(p=l.child,y=null,p.alternate!==null&&p.alternate.memoizedState!==null&&p.alternate.memoizedState.cachePool!==null&&(y=p.alternate.memoizedState.cachePool.pool),b=null,p.memoizedState!==null&&p.memoizedState.cachePool!==null&&(b=p.memoizedState.cachePool.pool),b!==y&&(p.flags|=2048)),u!==o&&u&&(l.child.flags|=8192),bf(l,l.updateQueue),Pt(l),null);case 4:return Oe(),o===null&&E0(l.stateNode.containerInfo),Pt(l),null;case 10:return xs(l.type),Pt(l),null;case 19:if(I(Yt),p=l.memoizedState,p===null)return Pt(l),null;if(y=(l.flags&128)!==0,b=p.rendering,b===null)if(y)Qh(p,!1);else{if(Wt!==0||o!==null&&(o.flags&128)!==0)for(o=l.child;o!==null;){if(b=lf(o),b!==null){for(l.flags|=128,Qh(p,!1),o=b.updateQueue,l.updateQueue=o,bf(l,o),l.subtreeFlags=0,o=u,u=l.child;u!==null;)q_(u,o),u=u.sibling;return J(Yt,Yt.current&1|2),rt&&bs(l,p.treeForkCount),l.child}o=o.sibling}p.tail!==null&&hi()>Cf&&(l.flags|=128,y=!0,Qh(p,!1),l.lanes=4194304)}else{if(!y)if(o=lf(b),o!==null){if(l.flags|=128,y=!0,o=o.updateQueue,l.updateQueue=o,bf(l,o),Qh(p,!0),p.tail===null&&p.tailMode==="hidden"&&!b.alternate&&!rt)return Pt(l),null}else 2*hi()-p.renderingStartTime>Cf&&u!==536870912&&(l.flags|=128,y=!0,Qh(p,!1),l.lanes=4194304);p.isBackwards?(b.sibling=l.child,l.child=b):(o=p.last,o!==null?o.sibling=b:l.child=b,p.last=b)}return p.tail!==null?(o=p.tail,p.rendering=o,p.tail=o.sibling,p.renderingStartTime=hi(),o.sibling=null,u=Yt.current,J(Yt,y?u&1|2:u&1),rt&&bs(l,p.treeForkCount),o):(Pt(l),null);case 22:case 23:return An(l),RO(),p=l.memoizedState!==null,o!==null?o.memoizedState!==null!==p&&(l.flags|=8192):p&&(l.flags|=8192),p?(u&536870912)!==0&&(l.flags&128)===0&&(Pt(l),l.subtreeFlags&6&&(l.flags|=8192)):Pt(l),u=l.updateQueue,u!==null&&bf(l,u.retryQueue),u=null,o!==null&&o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(u=o.memoizedState.cachePool.pool),p=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(p=l.memoizedState.cachePool.pool),p!==u&&(l.flags|=2048),o!==null&&I(Ta),null;case 24:return u=null,o!==null&&(u=o.memoizedState.cache),l.memoizedState.cache!==u&&(l.flags|=2048),xs(ti),Pt(l),null;case 25:return null;case 30:return null}throw Error(n(156,l.tag))}function Yj(o,l){switch(OO(l),l.tag){case 1:return o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 3:return xs(ti),Oe(),o=l.flags,(o&65536)!==0&&(o&128)===0?(l.flags=o&-65537|128,l):null;case 26:case 27:case 5:return $e(l),null;case 31:if(l.memoizedState!==null){if(An(l),l.alternate===null)throw Error(n(340));wa()}return o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 13:if(An(l),o=l.memoizedState,o!==null&&o.dehydrated!==null){if(l.alternate===null)throw Error(n(340));wa()}return o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 19:return I(Yt),null;case 4:return Oe(),null;case 10:return xs(l.type),null;case 22:case 23:return An(l),RO(),o!==null&&I(Ta),o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 24:return xs(ti),null;case 25:return null;default:return null}}function Ow(o,l){switch(OO(l),l.tag){case 3:xs(ti),Oe();break;case 26:case 27:case 5:$e(l);break;case 4:Oe();break;case 31:l.memoizedState!==null&&An(l);break;case 13:An(l);break;case 19:I(Yt);break;case 10:xs(l.type);break;case 22:case 23:An(l),RO(),o!==null&&I(Ta);break;case 24:xs(ti)}}function $h(o,l){try{var u=l.updateQueue,p=u!==null?u.lastEffect:null;if(p!==null){var y=p.next;u=y;do{if((u.tag&o)===o){p=void 0;var b=u.create,k=u.inst;p=b(),k.destroy=p}u=u.next}while(u!==y)}}catch(R){yt(l,l.return,R)}}function ko(o,l,u){try{var p=l.updateQueue,y=p!==null?p.lastEffect:null;if(y!==null){var b=y.next;p=b;do{if((p.tag&o)===o){var k=p.inst,R=k.destroy;if(R!==void 0){k.destroy=void 0,y=l;var Y=u,te=R;try{te()}catch(oe){yt(y,Y,oe)}}}p=p.next}while(p!==b)}}catch(oe){yt(l,l.return,oe)}}function vw(o){var l=o.updateQueue;if(l!==null){var u=o.stateNode;try{lx(l,u)}catch(p){yt(o,o.return,p)}}}function yw(o,l,u){u.props=Ra(o.type,o.memoizedProps),u.state=o.memoizedState;try{u.componentWillUnmount()}catch(p){yt(o,l,p)}}function Ph(o,l){try{var u=o.ref;if(u!==null){switch(o.tag){case 26:case 27:case 5:var p=o.stateNode;break;case 30:p=o.stateNode;break;default:p=o.stateNode}typeof u=="function"?o.refCleanup=u(p):u.current=p}}catch(y){yt(o,l,y)}}function Wr(o,l){var u=o.ref,p=o.refCleanup;if(u!==null)if(typeof p=="function")try{p()}catch(y){yt(o,l,y)}finally{o.refCleanup=null,o=o.alternate,o!=null&&(o.refCleanup=null)}else if(typeof u=="function")try{u(null)}catch(y){yt(o,l,y)}else u.current=null}function Sw(o){var l=o.type,u=o.memoizedProps,p=o.stateNode;try{e:switch(l){case"button":case"input":case"select":case"textarea":u.autoFocus&&p.focus();break e;case"img":u.src?p.src=u.src:u.srcSet&&(p.srcset=u.srcSet)}}catch(y){yt(o,o.return,y)}}function h0(o,l,u){try{var p=o.stateNode;g3(p,o.type,u,l),p[Wi]=l}catch(y){yt(o,o.return,y)}}function bw(o){return o.tag===5||o.tag===3||o.tag===26||o.tag===27&&Ro(o.type)||o.tag===4}function u0(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||bw(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.tag===27&&Ro(o.type)||o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function d0(o,l,u){var p=o.tag;if(p===5||p===6)o=o.stateNode,l?(u.nodeType===9?u.body:u.nodeName==="HTML"?u.ownerDocument.body:u).insertBefore(o,l):(l=u.nodeType===9?u.body:u.nodeName==="HTML"?u.ownerDocument.body:u,l.appendChild(o),u=u._reactRootContainer,u!=null||l.onclick!==null||(l.onclick=vs));else if(p!==4&&(p===27&&Ro(o.type)&&(u=o.stateNode,l=null),o=o.child,o!==null))for(d0(o,l,u),o=o.sibling;o!==null;)d0(o,l,u),o=o.sibling}function _f(o,l,u){var p=o.tag;if(p===5||p===6)o=o.stateNode,l?u.insertBefore(o,l):u.appendChild(o);else if(p!==4&&(p===27&&Ro(o.type)&&(u=o.stateNode),o=o.child,o!==null))for(_f(o,l,u),o=o.sibling;o!==null;)_f(o,l,u),o=o.sibling}function _w(o){var l=o.stateNode,u=o.memoizedProps;try{for(var p=o.type,y=l.attributes;y.length;)l.removeAttributeNode(y[0]);zi(l,p,u),l[di]=o,l[Wi]=u}catch(b){yt(o,o.return,b)}}var Qs=!1,ri=!1,f0=!1,xw=typeof WeakSet=="function"?WeakSet:Set,bi=null;function Hj(o,l){if(o=o.containerInfo,M0=Wf,o=z_(o),oO(o)){if("selectionStart"in o)var u={start:o.selectionStart,end:o.selectionEnd};else e:{u=(u=o.ownerDocument)&&u.defaultView||window;var p=u.getSelection&&u.getSelection();if(p&&p.rangeCount!==0){u=p.anchorNode;var y=p.anchorOffset,b=p.focusNode;p=p.focusOffset;try{u.nodeType,b.nodeType}catch{u=null;break e}var k=0,R=-1,Y=-1,te=0,oe=0,he=o,re=null;t:for(;;){for(var se;he!==u||y!==0&&he.nodeType!==3||(R=k+y),he!==b||p!==0&&he.nodeType!==3||(Y=k+p),he.nodeType===3&&(k+=he.nodeValue.length),(se=he.firstChild)!==null;)re=he,he=se;for(;;){if(he===o)break t;if(re===u&&++te===y&&(R=k),re===b&&++oe===p&&(Y=k),(se=he.nextSibling)!==null)break;he=re,re=he.parentNode}he=se}u=R===-1||Y===-1?null:{start:R,end:Y}}else u=null}u=u||{start:0,end:0}}else u=null;for(z0={focusedElem:o,selectionRange:u},Wf=!1,bi=l;bi!==null;)if(l=bi,o=l.child,(l.subtreeFlags&1028)!==0&&o!==null)o.return=l,bi=o;else for(;bi!==null;){switch(l=bi,b=l.alternate,o=l.flags,l.tag){case 0:if((o&4)!==0&&(o=l.updateQueue,o=o!==null?o.events:null,o!==null))for(u=0;u<o.length;u++)y=o[u],y.ref.impl=y.nextImpl;break;case 11:case 15:break;case 1:if((o&1024)!==0&&b!==null){o=void 0,u=l,y=b.memoizedProps,b=b.memoizedState,p=u.stateNode;try{var ke=Ra(u.type,y);o=p.getSnapshotBeforeUpdate(ke,b),p.__reactInternalSnapshotBeforeUpdate=o}catch(De){yt(u,u.return,De)}}break;case 3:if((o&1024)!==0){if(o=l.stateNode.containerInfo,u=o.nodeType,u===9)B0(o);else if(u===1)switch(o.nodeName){case"HEAD":case"HTML":case"BODY":B0(o);break;default:o.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((o&1024)!==0)throw Error(n(163))}if(o=l.sibling,o!==null){o.return=l.return,bi=o;break}bi=l.return}}function ww(o,l,u){var p=u.flags;switch(u.tag){case 0:case 11:case 15:Ps(o,u),p&4&&$h(5,u);break;case 1:if(Ps(o,u),p&4)if(o=u.stateNode,l===null)try{o.componentDidMount()}catch(k){yt(u,u.return,k)}else{var y=Ra(u.type,l.memoizedProps);l=l.memoizedState;try{o.componentDidUpdate(y,l,o.__reactInternalSnapshotBeforeUpdate)}catch(k){yt(u,u.return,k)}}p&64&&vw(u),p&512&&Ph(u,u.return);break;case 3:if(Ps(o,u),p&64&&(o=u.updateQueue,o!==null)){if(l=null,u.child!==null)switch(u.child.tag){case 27:case 5:l=u.child.stateNode;break;case 1:l=u.child.stateNode}try{lx(o,l)}catch(k){yt(u,u.return,k)}}break;case 27:l===null&&p&4&&_w(u);case 26:case 5:Ps(o,u),l===null&&p&4&&Sw(u),p&512&&Ph(u,u.return);break;case 12:Ps(o,u);break;case 31:Ps(o,u),p&4&&Tw(o,u);break;case 13:Ps(o,u),p&4&&Qw(o,u),p&64&&(o=u.memoizedState,o!==null&&(o=o.dehydrated,o!==null&&(u=n3.bind(null,u),x3(o,u))));break;case 22:if(p=u.memoizedState!==null||Qs,!p){l=l!==null&&l.memoizedState!==null||ri,y=Qs;var b=ri;Qs=p,(ri=l)&&!b?Es(o,u,(u.subtreeFlags&8772)!==0):Ps(o,u),Qs=y,ri=b}break;case 30:break;default:Ps(o,u)}}function kw(o){var l=o.alternate;l!==null&&(o.alternate=null,kw(l)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(l=o.stateNode,l!==null&&ih(l)),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}var Rt=null,dn=!1;function $s(o,l,u){for(u=u.child;u!==null;)Cw(o,l,u),u=u.sibling}function Cw(o,l,u){if(Si&&typeof Si.onCommitFiberUnmount=="function")try{Si.onCommitFiberUnmount(Dr,u)}catch{}switch(u.tag){case 26:ri||Wr(u,l),$s(o,l,u),u.memoizedState?u.memoizedState.count--:u.stateNode&&(u=u.stateNode,u.parentNode.removeChild(u));break;case 27:ri||Wr(u,l);var p=Rt,y=dn;Ro(u.type)&&(Rt=u.stateNode,dn=!1),$s(o,l,u),Lh(u.stateNode),Rt=p,dn=y;break;case 5:ri||Wr(u,l);case 6:if(p=Rt,y=dn,Rt=null,$s(o,l,u),Rt=p,dn=y,Rt!==null)if(dn)try{(Rt.nodeType===9?Rt.body:Rt.nodeName==="HTML"?Rt.ownerDocument.body:Rt).removeChild(u.stateNode)}catch(b){yt(u,l,b)}else try{Rt.removeChild(u.stateNode)}catch(b){yt(u,l,b)}break;case 18:Rt!==null&&(dn?(o=Rt,vk(o.nodeType===9?o.body:o.nodeName==="HTML"?o.ownerDocument.body:o,u.stateNode),Jl(o)):vk(Rt,u.stateNode));break;case 4:p=Rt,y=dn,Rt=u.stateNode.containerInfo,dn=!0,$s(o,l,u),Rt=p,dn=y;break;case 0:case 11:case 14:case 15:ko(2,u,l),ri||ko(4,u,l),$s(o,l,u);break;case 1:ri||(Wr(u,l),p=u.stateNode,typeof p.componentWillUnmount=="function"&&yw(u,l,p)),$s(o,l,u);break;case 21:$s(o,l,u);break;case 22:ri=(p=ri)||u.memoizedState!==null,$s(o,l,u),ri=p;break;default:$s(o,l,u)}}function Tw(o,l){if(l.memoizedState===null&&(o=l.alternate,o!==null&&(o=o.memoizedState,o!==null))){o=o.dehydrated;try{Jl(o)}catch(u){yt(l,l.return,u)}}}function Qw(o,l){if(l.memoizedState===null&&(o=l.alternate,o!==null&&(o=o.memoizedState,o!==null&&(o=o.dehydrated,o!==null))))try{Jl(o)}catch(u){yt(l,l.return,u)}}function Uj(o){switch(o.tag){case 31:case 13:case 19:var l=o.stateNode;return l===null&&(l=o.stateNode=new xw),l;case 22:return o=o.stateNode,l=o._retryCache,l===null&&(l=o._retryCache=new xw),l;default:throw Error(n(435,o.tag))}}function xf(o,l){var u=Uj(o);l.forEach(function(p){if(!u.has(p)){u.add(p);var y=r3.bind(null,o,p);p.then(y,y)}})}function fn(o,l){var u=l.deletions;if(u!==null)for(var p=0;p<u.length;p++){var y=u[p],b=o,k=l,R=k;e:for(;R!==null;){switch(R.tag){case 27:if(Ro(R.type)){Rt=R.stateNode,dn=!1;break e}break;case 5:Rt=R.stateNode,dn=!1;break e;case 3:case 4:Rt=R.stateNode.containerInfo,dn=!0;break e}R=R.return}if(Rt===null)throw Error(n(160));Cw(b,k,y),Rt=null,dn=!1,b=y.alternate,b!==null&&(b.return=null),y.return=null}if(l.subtreeFlags&13886)for(l=l.child;l!==null;)$w(l,o),l=l.sibling}var br=null;function $w(o,l){var u=o.alternate,p=o.flags;switch(o.tag){case 0:case 11:case 14:case 15:fn(l,o),pn(o),p&4&&(ko(3,o,o.return),$h(3,o),ko(5,o,o.return));break;case 1:fn(l,o),pn(o),p&512&&(ri||u===null||Wr(u,u.return)),p&64&&Qs&&(o=o.updateQueue,o!==null&&(p=o.callbacks,p!==null&&(u=o.shared.hiddenCallbacks,o.shared.hiddenCallbacks=u===null?p:u.concat(p))));break;case 26:var y=br;if(fn(l,o),pn(o),p&512&&(ri||u===null||Wr(u,u.return)),p&4){var b=u!==null?u.memoizedState:null;if(p=o.memoizedState,u===null)if(p===null)if(o.stateNode===null){e:{p=o.type,u=o.memoizedProps,y=y.ownerDocument||y;t:switch(p){case"title":b=y.getElementsByTagName("title")[0],(!b||b[ma]||b[di]||b.namespaceURI==="http://www.w3.org/2000/svg"||b.hasAttribute("itemprop"))&&(b=y.createElement(p),y.head.insertBefore(b,y.querySelector("head > title"))),zi(b,p,u),b[di]=o,ei(b),p=b;break e;case"link":var k=$k("link","href",y).get(p+(u.href||""));if(k){for(var R=0;R<k.length;R++)if(b=k[R],b.getAttribute("href")===(u.href==null||u.href===""?null:u.href)&&b.getAttribute("rel")===(u.rel==null?null:u.rel)&&b.getAttribute("title")===(u.title==null?null:u.title)&&b.getAttribute("crossorigin")===(u.crossOrigin==null?null:u.crossOrigin)){k.splice(R,1);break t}}b=y.createElement(p),zi(b,p,u),y.head.appendChild(b);break;case"meta":if(k=$k("meta","content",y).get(p+(u.content||""))){for(R=0;R<k.length;R++)if(b=k[R],b.getAttribute("content")===(u.content==null?null:""+u.content)&&b.getAttribute("name")===(u.name==null?null:u.name)&&b.getAttribute("property")===(u.property==null?null:u.property)&&b.getAttribute("http-equiv")===(u.httpEquiv==null?null:u.httpEquiv)&&b.getAttribute("charset")===(u.charSet==null?null:u.charSet)){k.splice(R,1);break t}}b=y.createElement(p),zi(b,p,u),y.head.appendChild(b);break;default:throw Error(n(468,p))}b[di]=o,ei(b),p=b}o.stateNode=p}else Pk(y,o.type,o.stateNode);else o.stateNode=Qk(y,p,o.memoizedProps);else b!==p?(b===null?u.stateNode!==null&&(u=u.stateNode,u.parentNode.removeChild(u)):b.count--,p===null?Pk(y,o.type,o.stateNode):Qk(y,p,o.memoizedProps)):p===null&&o.stateNode!==null&&h0(o,o.memoizedProps,u.memoizedProps)}break;case 27:fn(l,o),pn(o),p&512&&(ri||u===null||Wr(u,u.return)),u!==null&&p&4&&h0(o,o.memoizedProps,u.memoizedProps);break;case 5:if(fn(l,o),pn(o),p&512&&(ri||u===null||Wr(u,u.return)),o.flags&32){y=o.stateNode;try{_l(y,"")}catch(ke){yt(o,o.return,ke)}}p&4&&o.stateNode!=null&&(y=o.memoizedProps,h0(o,y,u!==null?u.memoizedProps:y)),p&1024&&(f0=!0);break;case 6:if(fn(l,o),pn(o),p&4){if(o.stateNode===null)throw Error(n(162));p=o.memoizedProps,u=o.stateNode;try{u.nodeValue=p}catch(ke){yt(o,o.return,ke)}}break;case 3:if(Lf=null,y=br,br=Df(l.containerInfo),fn(l,o),br=y,pn(o),p&4&&u!==null&&u.memoizedState.isDehydrated)try{Jl(l.containerInfo)}catch(ke){yt(o,o.return,ke)}f0&&(f0=!1,Pw(o));break;case 4:p=br,br=Df(o.stateNode.containerInfo),fn(l,o),pn(o),br=p;break;case 12:fn(l,o),pn(o);break;case 31:fn(l,o),pn(o),p&4&&(p=o.updateQueue,p!==null&&(o.updateQueue=null,xf(o,p)));break;case 13:fn(l,o),pn(o),o.child.flags&8192&&o.memoizedState!==null!=(u!==null&&u.memoizedState!==null)&&(kf=hi()),p&4&&(p=o.updateQueue,p!==null&&(o.updateQueue=null,xf(o,p)));break;case 22:y=o.memoizedState!==null;var Y=u!==null&&u.memoizedState!==null,te=Qs,oe=ri;if(Qs=te||y,ri=oe||Y,fn(l,o),ri=oe,Qs=te,pn(o),p&8192)e:for(l=o.stateNode,l._visibility=y?l._visibility&-2:l._visibility|1,y&&(u===null||Y||Qs||ri||Aa(o)),u=null,l=o;;){if(l.tag===5||l.tag===26){if(u===null){Y=u=l;try{if(b=Y.stateNode,y)k=b.style,typeof k.setProperty=="function"?k.setProperty("display","none","important"):k.display="none";else{R=Y.stateNode;var he=Y.memoizedProps.style,re=he!=null&&he.hasOwnProperty("display")?he.display:null;R.style.display=re==null||typeof re=="boolean"?"":(""+re).trim()}}catch(ke){yt(Y,Y.return,ke)}}}else if(l.tag===6){if(u===null){Y=l;try{Y.stateNode.nodeValue=y?"":Y.memoizedProps}catch(ke){yt(Y,Y.return,ke)}}}else if(l.tag===18){if(u===null){Y=l;try{var se=Y.stateNode;y?yk(se,!0):yk(Y.stateNode,!1)}catch(ke){yt(Y,Y.return,ke)}}}else if((l.tag!==22&&l.tag!==23||l.memoizedState===null||l===o)&&l.child!==null){l.child.return=l,l=l.child;continue}if(l===o)break e;for(;l.sibling===null;){if(l.return===null||l.return===o)break e;u===l&&(u=null),l=l.return}u===l&&(u=null),l.sibling.return=l.return,l=l.sibling}p&4&&(p=o.updateQueue,p!==null&&(u=p.retryQueue,u!==null&&(p.retryQueue=null,xf(o,u))));break;case 19:fn(l,o),pn(o),p&4&&(p=o.updateQueue,p!==null&&(o.updateQueue=null,xf(o,p)));break;case 30:break;case 21:break;default:fn(l,o),pn(o)}}function pn(o){var l=o.flags;if(l&2){try{for(var u,p=o.return;p!==null;){if(bw(p)){u=p;break}p=p.return}if(u==null)throw Error(n(160));switch(u.tag){case 27:var y=u.stateNode,b=u0(o);_f(o,b,y);break;case 5:var k=u.stateNode;u.flags&32&&(_l(k,""),u.flags&=-33);var R=u0(o);_f(o,R,k);break;case 3:case 4:var Y=u.stateNode.containerInfo,te=u0(o);d0(o,te,Y);break;default:throw Error(n(161))}}catch(oe){yt(o,o.return,oe)}o.flags&=-3}l&4096&&(o.flags&=-4097)}function Pw(o){if(o.subtreeFlags&1024)for(o=o.child;o!==null;){var l=o;Pw(l),l.tag===5&&l.flags&1024&&l.stateNode.reset(),o=o.sibling}}function Ps(o,l){if(l.subtreeFlags&8772)for(l=l.child;l!==null;)ww(o,l.alternate,l),l=l.sibling}function Aa(o){for(o=o.child;o!==null;){var l=o;switch(l.tag){case 0:case 11:case 14:case 15:ko(4,l,l.return),Aa(l);break;case 1:Wr(l,l.return);var u=l.stateNode;typeof u.componentWillUnmount=="function"&&yw(l,l.return,u),Aa(l);break;case 27:Lh(l.stateNode);case 26:case 5:Wr(l,l.return),Aa(l);break;case 22:l.memoizedState===null&&Aa(l);break;case 30:Aa(l);break;default:Aa(l)}o=o.sibling}}function Es(o,l,u){for(u=u&&(l.subtreeFlags&8772)!==0,l=l.child;l!==null;){var p=l.alternate,y=o,b=l,k=b.flags;switch(b.tag){case 0:case 11:case 15:Es(y,b,u),$h(4,b);break;case 1:if(Es(y,b,u),p=b,y=p.stateNode,typeof y.componentDidMount=="function")try{y.componentDidMount()}catch(te){yt(p,p.return,te)}if(p=b,y=p.updateQueue,y!==null){var R=p.stateNode;try{var Y=y.shared.hiddenCallbacks;if(Y!==null)for(y.shared.hiddenCallbacks=null,y=0;y<Y.length;y++)ax(Y[y],R)}catch(te){yt(p,p.return,te)}}u&&k&64&&vw(b),Ph(b,b.return);break;case 27:_w(b);case 26:case 5:Es(y,b,u),u&&p===null&&k&4&&Sw(b),Ph(b,b.return);break;case 12:Es(y,b,u);break;case 31:Es(y,b,u),u&&k&4&&Tw(y,b);break;case 13:Es(y,b,u),u&&k&4&&Qw(y,b);break;case 22:b.memoizedState===null&&Es(y,b,u),Ph(b,b.return);break;case 30:break;default:Es(y,b,u)}l=l.sibling}}function p0(o,l){var u=null;o!==null&&o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(u=o.memoizedState.cachePool.pool),o=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(o=l.memoizedState.cachePool.pool),o!==u&&(o!=null&&o.refCount++,u!=null&&mh(u))}function g0(o,l){o=null,l.alternate!==null&&(o=l.alternate.memoizedState.cache),l=l.memoizedState.cache,l!==o&&(l.refCount++,o!=null&&mh(o))}function _r(o,l,u,p){if(l.subtreeFlags&10256)for(l=l.child;l!==null;)Ew(o,l,u,p),l=l.sibling}function Ew(o,l,u,p){var y=l.flags;switch(l.tag){case 0:case 11:case 15:_r(o,l,u,p),y&2048&&$h(9,l);break;case 1:_r(o,l,u,p);break;case 3:_r(o,l,u,p),y&2048&&(o=null,l.alternate!==null&&(o=l.alternate.memoizedState.cache),l=l.memoizedState.cache,l!==o&&(l.refCount++,o!=null&&mh(o)));break;case 12:if(y&2048){_r(o,l,u,p),o=l.stateNode;try{var b=l.memoizedProps,k=b.id,R=b.onPostCommit;typeof R=="function"&&R(k,l.alternate===null?"mount":"update",o.passiveEffectDuration,-0)}catch(Y){yt(l,l.return,Y)}}else _r(o,l,u,p);break;case 31:_r(o,l,u,p);break;case 13:_r(o,l,u,p);break;case 23:break;case 22:b=l.stateNode,k=l.alternate,l.memoizedState!==null?b._visibility&2?_r(o,l,u,p):Eh(o,l):b._visibility&2?_r(o,l,u,p):(b._visibility|=2,Zl(o,l,u,p,(l.subtreeFlags&10256)!==0||!1)),y&2048&&p0(k,l);break;case 24:_r(o,l,u,p),y&2048&&g0(l.alternate,l);break;default:_r(o,l,u,p)}}function Zl(o,l,u,p,y){for(y=y&&((l.subtreeFlags&10256)!==0||!1),l=l.child;l!==null;){var b=o,k=l,R=u,Y=p,te=k.flags;switch(k.tag){case 0:case 11:case 15:Zl(b,k,R,Y,y),$h(8,k);break;case 23:break;case 22:var oe=k.stateNode;k.memoizedState!==null?oe._visibility&2?Zl(b,k,R,Y,y):Eh(b,k):(oe._visibility|=2,Zl(b,k,R,Y,y)),y&&te&2048&&p0(k.alternate,k);break;case 24:Zl(b,k,R,Y,y),y&&te&2048&&g0(k.alternate,k);break;default:Zl(b,k,R,Y,y)}l=l.sibling}}function Eh(o,l){if(l.subtreeFlags&10256)for(l=l.child;l!==null;){var u=o,p=l,y=p.flags;switch(p.tag){case 22:Eh(u,p),y&2048&&p0(p.alternate,p);break;case 24:Eh(u,p),y&2048&&g0(p.alternate,p);break;default:Eh(u,p)}l=l.sibling}}var Rh=8192;function Wl(o,l,u){if(o.subtreeFlags&Rh)for(o=o.child;o!==null;)Rw(o,l,u),o=o.sibling}function Rw(o,l,u){switch(o.tag){case 26:Wl(o,l,u),o.flags&Rh&&o.memoizedState!==null&&z3(u,br,o.memoizedState,o.memoizedProps);break;case 5:Wl(o,l,u);break;case 3:case 4:var p=br;br=Df(o.stateNode.containerInfo),Wl(o,l,u),br=p;break;case 22:o.memoizedState===null&&(p=o.alternate,p!==null&&p.memoizedState!==null?(p=Rh,Rh=16777216,Wl(o,l,u),Rh=p):Wl(o,l,u));break;default:Wl(o,l,u)}}function Aw(o){var l=o.alternate;if(l!==null&&(o=l.child,o!==null)){l.child=null;do l=o.sibling,o.sibling=null,o=l;while(o!==null)}}function Ah(o){var l=o.deletions;if((o.flags&16)!==0){if(l!==null)for(var u=0;u<l.length;u++){var p=l[u];bi=p,zw(p,o)}Aw(o)}if(o.subtreeFlags&10256)for(o=o.child;o!==null;)Mw(o),o=o.sibling}function Mw(o){switch(o.tag){case 0:case 11:case 15:Ah(o),o.flags&2048&&ko(9,o,o.return);break;case 3:Ah(o);break;case 12:Ah(o);break;case 22:var l=o.stateNode;o.memoizedState!==null&&l._visibility&2&&(o.return===null||o.return.tag!==13)?(l._visibility&=-3,wf(o)):Ah(o);break;default:Ah(o)}}function wf(o){var l=o.deletions;if((o.flags&16)!==0){if(l!==null)for(var u=0;u<l.length;u++){var p=l[u];bi=p,zw(p,o)}Aw(o)}for(o=o.child;o!==null;){switch(l=o,l.tag){case 0:case 11:case 15:ko(8,l,l.return),wf(l);break;case 22:u=l.stateNode,u._visibility&2&&(u._visibility&=-3,wf(l));break;default:wf(l)}o=o.sibling}}function zw(o,l){for(;bi!==null;){var u=bi;switch(u.tag){case 0:case 11:case 15:ko(8,u,l);break;case 23:case 22:if(u.memoizedState!==null&&u.memoizedState.cachePool!==null){var p=u.memoizedState.cachePool.pool;p!=null&&p.refCount++}break;case 24:mh(u.memoizedState.cache)}if(p=u.child,p!==null)p.return=u,bi=p;else e:for(u=o;bi!==null;){p=bi;var y=p.sibling,b=p.return;if(kw(p),p===u){bi=null;break e}if(y!==null){y.return=b,bi=y;break e}bi=b}}}var Gj={getCacheForType:function(o){var l=Ai(ti),u=l.data.get(o);return u===void 0&&(u=o(),l.data.set(o,u)),u},cacheSignal:function(){return Ai(ti).controller.signal}},Fj=typeof WeakMap=="function"?WeakMap:Map,ft=0,wt=null,Fe=null,et=0,vt=0,Mn=null,Co=!1,ql=!1,m0=!1,Rs=0,Wt=0,To=0,Ma=0,O0=0,zn=0,Il=0,Mh=null,gn=null,v0=!1,kf=0,jw=0,Cf=1/0,Tf=null,Qo=null,fi=0,$o=null,Vl=null,As=0,y0=0,S0=null,Dw=null,zh=0,b0=null;function jn(){return(ft&2)!==0&&et!==0?et&-et:$.T!==null?T0():$n()}function Bw(){if(zn===0)if((et&536870912)===0||rt){var o=Gn;Gn<<=1,(Gn&3932160)===0&&(Gn=262144),zn=o}else zn=536870912;return o=Rn.current,o!==null&&(o.flags|=32),zn}function mn(o,l,u){(o===wt&&(vt===2||vt===9)||o.cancelPendingCommit!==null)&&(Yl(o,0),Po(o,et,zn,!1)),ps(o,u),((ft&2)===0||o!==wt)&&(o===wt&&((ft&2)===0&&(Ma|=u),Wt===4&&Po(o,et,zn,!1)),qr(o))}function Lw(o,l,u){if((ft&6)!==0)throw Error(n(327));var p=!u&&(l&127)===0&&(l&o.expiredLanes)===0||Lr(o,l),y=p?e3(o,l):x0(o,l,!0),b=p;do{if(y===0){ql&&!p&&Po(o,l,0,!1);break}else{if(u=o.current.alternate,b&&!Kj(u)){y=x0(o,l,!1),b=!1;continue}if(y===2){if(b=l,o.errorRecoveryDisabledLanes&b)var k=0;else k=o.pendingLanes&-536870913,k=k!==0?k:k&536870912?536870912:0;if(k!==0){l=k;e:{var R=o;y=Mh;var Y=R.current.memoizedState.isDehydrated;if(Y&&(Yl(R,k).flags|=256),k=x0(R,k,!1),k!==2){if(m0&&!Y){R.errorRecoveryDisabledLanes|=b,Ma|=b,y=4;break e}b=gn,gn=y,b!==null&&(gn===null?gn=b:gn.push.apply(gn,b))}y=k}if(b=!1,y!==2)continue}}if(y===1){Yl(o,0),Po(o,l,0,!0);break}e:{switch(p=o,b=y,b){case 0:case 1:throw Error(n(345));case 4:if((l&4194048)!==l)break;case 6:Po(p,l,zn,!Co);break e;case 2:gn=null;break;case 3:case 5:break;default:throw Error(n(329))}if((l&62914560)===l&&(y=kf+300-hi(),10<y)){if(Po(p,l,zn,!Co),oo(p,0,!0)!==0)break e;As=l,p.timeoutHandle=mk(Xw.bind(null,p,u,gn,Tf,v0,l,zn,Ma,Il,Co,b,"Throttled",-0,0),y);break e}Xw(p,u,gn,Tf,v0,l,zn,Ma,Il,Co,b,null,-0,0)}}break}while(!0);qr(o)}function Xw(o,l,u,p,y,b,k,R,Y,te,oe,he,re,se){if(o.timeoutHandle=-1,he=l.subtreeFlags,he&8192||(he&16785408)===16785408){he={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:vs},Rw(l,b,he);var ke=(b&62914560)===b?kf-hi():(b&4194048)===b?jw-hi():0;if(ke=j3(he,ke),ke!==null){As=b,o.cancelPendingCommit=ke(Hw.bind(null,o,l,b,u,p,y,k,R,Y,oe,he,null,re,se)),Po(o,b,k,!te);return}}Hw(o,l,b,u,p,y,k,R,Y)}function Kj(o){for(var l=o;;){var u=l.tag;if((u===0||u===11||u===15)&&l.flags&16384&&(u=l.updateQueue,u!==null&&(u=u.stores,u!==null)))for(var p=0;p<u.length;p++){var y=u[p],b=y.getSnapshot;y=y.value;try{if(!Pn(b(),y))return!1}catch{return!1}}if(u=l.child,l.subtreeFlags&16384&&u!==null)u.return=l,l=u;else{if(l===o)break;for(;l.sibling===null;){if(l.return===null||l.return===o)return!0;l=l.return}l.sibling.return=l.return,l=l.sibling}}return!0}function Po(o,l,u,p){l&=~O0,l&=~Ma,o.suspendedLanes|=l,o.pingedLanes&=~l,p&&(o.warmLanes|=l),p=o.expirationTimes;for(var y=l;0<y;){var b=31-Ei(y),k=1<<b;p[b]=-1,y&=~k}u!==0&&ie(o,u,l)}function Qf(){return(ft&6)===0?(jh(0),!1):!0}function _0(){if(Fe!==null){if(vt===0)var o=Fe.return;else o=Fe,_s=ka=null,BO(o),Dl=null,vh=0,o=Fe;for(;o!==null;)Ow(o.alternate,o),o=o.return;Fe=null}}function Yl(o,l){var u=o.timeoutHandle;u!==-1&&(o.timeoutHandle=-1,v3(u)),u=o.cancelPendingCommit,u!==null&&(o.cancelPendingCommit=null,u()),As=0,_0(),wt=o,Fe=u=Ss(o.current,null),et=l,vt=0,Mn=null,Co=!1,ql=Lr(o,l),m0=!1,Il=zn=O0=Ma=To=Wt=0,gn=Mh=null,v0=!1,(l&8)!==0&&(l|=l&32);var p=o.entangledLanes;if(p!==0)for(o=o.entanglements,p&=l;0<p;){var y=31-Ei(p),b=1<<y;l|=o[y],p&=~b}return Rs=l,Hd(),u}function Nw(o,l){Ie=null,$.H=Ch,l===jl||l===nf?(l=nx(),vt=3):l===CO?(l=nx(),vt=4):vt=l===e0?8:l!==null&&typeof l=="object"&&typeof l.then=="function"?6:1,Mn=l,Fe===null&&(Wt=1,Of(o,Kn(l,o.current)))}function Zw(){var o=Rn.current;return o===null?!0:(et&4194048)===et?ir===null:(et&62914560)===et||(et&536870912)!==0?o===ir:!1}function Ww(){var o=$.H;return $.H=Ch,o===null?Ch:o}function qw(){var o=$.A;return $.A=Gj,o}function $f(){Wt=4,Co||(et&4194048)!==et&&Rn.current!==null||(ql=!0),(To&134217727)===0&&(Ma&134217727)===0||wt===null||Po(wt,et,zn,!1)}function x0(o,l,u){var p=ft;ft|=2;var y=Ww(),b=qw();(wt!==o||et!==l)&&(Tf=null,Yl(o,l)),l=!1;var k=Wt;e:do try{if(vt!==0&&Fe!==null){var R=Fe,Y=Mn;switch(vt){case 8:_0(),k=6;break e;case 3:case 2:case 9:case 6:Rn.current===null&&(l=!0);var te=vt;if(vt=0,Mn=null,Hl(o,R,Y,te),u&&ql){k=0;break e}break;default:te=vt,vt=0,Mn=null,Hl(o,R,Y,te)}}Jj(),k=Wt;break}catch(oe){Nw(o,oe)}while(!0);return l&&o.shellSuspendCounter++,_s=ka=null,ft=p,$.H=y,$.A=b,Fe===null&&(wt=null,et=0,Hd()),k}function Jj(){for(;Fe!==null;)Iw(Fe)}function e3(o,l){var u=ft;ft|=2;var p=Ww(),y=qw();wt!==o||et!==l?(Tf=null,Cf=hi()+500,Yl(o,l)):ql=Lr(o,l);e:do try{if(vt!==0&&Fe!==null){l=Fe;var b=Mn;t:switch(vt){case 1:vt=0,Mn=null,Hl(o,l,b,1);break;case 2:case 9:if(tx(b)){vt=0,Mn=null,Vw(l);break}l=function(){vt!==2&&vt!==9||wt!==o||(vt=7),qr(o)},b.then(l,l);break e;case 3:vt=7;break e;case 4:vt=5;break e;case 7:tx(b)?(vt=0,Mn=null,Vw(l)):(vt=0,Mn=null,Hl(o,l,b,7));break;case 5:var k=null;switch(Fe.tag){case 26:k=Fe.memoizedState;case 5:case 27:var R=Fe;if(k?Ek(k):R.stateNode.complete){vt=0,Mn=null;var Y=R.sibling;if(Y!==null)Fe=Y;else{var te=R.return;te!==null?(Fe=te,Pf(te)):Fe=null}break t}}vt=0,Mn=null,Hl(o,l,b,5);break;case 6:vt=0,Mn=null,Hl(o,l,b,6);break;case 8:_0(),Wt=6;break e;default:throw Error(n(462))}}t3();break}catch(oe){Nw(o,oe)}while(!0);return _s=ka=null,$.H=p,$.A=y,ft=u,Fe!==null?0:(wt=null,et=0,Hd(),Wt)}function t3(){for(;Fe!==null&&!jr();)Iw(Fe)}function Iw(o){var l=gw(o.alternate,o,Rs);o.memoizedProps=o.pendingProps,l===null?Pf(o):Fe=l}function Vw(o){var l=o,u=l.alternate;switch(l.tag){case 15:case 0:l=cw(u,l,l.pendingProps,l.type,void 0,et);break;case 11:l=cw(u,l,l.pendingProps,l.type.render,l.ref,et);break;case 5:BO(l);default:Ow(u,l),l=Fe=q_(l,Rs),l=gw(u,l,Rs)}o.memoizedProps=o.pendingProps,l===null?Pf(o):Fe=l}function Hl(o,l,u,p){_s=ka=null,BO(l),Dl=null,vh=0;var y=l.return;try{if(Wj(o,y,l,u,et)){Wt=1,Of(o,Kn(u,o.current)),Fe=null;return}}catch(b){if(y!==null)throw Fe=y,b;Wt=1,Of(o,Kn(u,o.current)),Fe=null;return}l.flags&32768?(rt||p===1?o=!0:ql||(et&536870912)!==0?o=!1:(Co=o=!0,(p===2||p===9||p===3||p===6)&&(p=Rn.current,p!==null&&p.tag===13&&(p.flags|=16384))),Yw(l,o)):Pf(l)}function Pf(o){var l=o;do{if((l.flags&32768)!==0){Yw(l,Co);return}o=l.return;var u=Vj(l.alternate,l,Rs);if(u!==null){Fe=u;return}if(l=l.sibling,l!==null){Fe=l;return}Fe=l=o}while(l!==null);Wt===0&&(Wt=5)}function Yw(o,l){do{var u=Yj(o.alternate,o);if(u!==null){u.flags&=32767,Fe=u;return}if(u=o.return,u!==null&&(u.flags|=32768,u.subtreeFlags=0,u.deletions=null),!l&&(o=o.sibling,o!==null)){Fe=o;return}Fe=o=u}while(o!==null);Wt=6,Fe=null}function Hw(o,l,u,p,y,b,k,R,Y){o.cancelPendingCommit=null;do Ef();while(fi!==0);if((ft&6)!==0)throw Error(n(327));if(l!==null){if(l===o.current)throw Error(n(177));if(b=l.lanes|l.childLanes,b|=uO,th(o,u,b,k,R,Y),o===wt&&(Fe=wt=null,et=0),Vl=l,$o=o,As=u,y0=b,S0=y,Dw=p,(l.subtreeFlags&10256)!==0||(l.flags&10256)!==0?(o.callbackNode=null,o.callbackPriority=0,s3(kn,function(){return Jw(),null})):(o.callbackNode=null,o.callbackPriority=0),p=(l.flags&13878)!==0,(l.subtreeFlags&13878)!==0||p){p=$.T,$.T=null,y=Z.p,Z.p=2,k=ft,ft|=4;try{Hj(o,l,u)}finally{ft=k,Z.p=y,$.T=p}}fi=1,Uw(),Gw(),Fw()}}function Uw(){if(fi===1){fi=0;var o=$o,l=Vl,u=(l.flags&13878)!==0;if((l.subtreeFlags&13878)!==0||u){u=$.T,$.T=null;var p=Z.p;Z.p=2;var y=ft;ft|=4;try{$w(l,o);var b=z0,k=z_(o.containerInfo),R=b.focusedElem,Y=b.selectionRange;if(k!==R&&R&&R.ownerDocument&&M_(R.ownerDocument.documentElement,R)){if(Y!==null&&oO(R)){var te=Y.start,oe=Y.end;if(oe===void 0&&(oe=te),"selectionStart"in R)R.selectionStart=te,R.selectionEnd=Math.min(oe,R.value.length);else{var he=R.ownerDocument||document,re=he&&he.defaultView||window;if(re.getSelection){var se=re.getSelection(),ke=R.textContent.length,De=Math.min(Y.start,ke),_t=Y.end===void 0?De:Math.min(Y.end,ke);!se.extend&&De>_t&&(k=_t,_t=De,De=k);var K=A_(R,De),F=A_(R,_t);if(K&&F&&(se.rangeCount!==1||se.anchorNode!==K.node||se.anchorOffset!==K.offset||se.focusNode!==F.node||se.focusOffset!==F.offset)){var ee=he.createRange();ee.setStart(K.node,K.offset),se.removeAllRanges(),De>_t?(se.addRange(ee),se.extend(F.node,F.offset)):(ee.setEnd(F.node,F.offset),se.addRange(ee))}}}}for(he=[],se=R;se=se.parentNode;)se.nodeType===1&&he.push({element:se,left:se.scrollLeft,top:se.scrollTop});for(typeof R.focus=="function"&&R.focus(),R=0;R<he.length;R++){var ae=he[R];ae.element.scrollLeft=ae.left,ae.element.scrollTop=ae.top}}Wf=!!M0,z0=M0=null}finally{ft=y,Z.p=p,$.T=u}}o.current=l,fi=2}}function Gw(){if(fi===2){fi=0;var o=$o,l=Vl,u=(l.flags&8772)!==0;if((l.subtreeFlags&8772)!==0||u){u=$.T,$.T=null;var p=Z.p;Z.p=2;var y=ft;ft|=4;try{ww(o,l.alternate,l)}finally{ft=y,Z.p=p,$.T=u}}fi=3}}function Fw(){if(fi===4||fi===3){fi=0,fs();var o=$o,l=Vl,u=As,p=Dw;(l.subtreeFlags&10256)!==0||(l.flags&10256)!==0?fi=5:(fi=0,Vl=$o=null,Kw(o,o.pendingLanes));var y=o.pendingLanes;if(y===0&&(Qo=null),ln(u),l=l.stateNode,Si&&typeof Si.onCommitFiberRoot=="function")try{Si.onCommitFiberRoot(Dr,l,void 0,(l.current.flags&128)===128)}catch{}if(p!==null){l=$.T,y=Z.p,Z.p=2,$.T=null;try{for(var b=o.onRecoverableError,k=0;k<p.length;k++){var R=p[k];b(R.value,{componentStack:R.stack})}}finally{$.T=l,Z.p=y}}(As&3)!==0&&Ef(),qr(o),y=o.pendingLanes,(u&261930)!==0&&(y&42)!==0?o===b0?zh++:(zh=0,b0=o):zh=0,jh(0)}}function Kw(o,l){(o.pooledCacheLanes&=l)===0&&(l=o.pooledCache,l!=null&&(o.pooledCache=null,mh(l)))}function Ef(){return Uw(),Gw(),Fw(),Jw()}function Jw(){if(fi!==5)return!1;var o=$o,l=y0;y0=0;var u=ln(As),p=$.T,y=Z.p;try{Z.p=32>u?32:u,$.T=null,u=S0,S0=null;var b=$o,k=As;if(fi=0,Vl=$o=null,As=0,(ft&6)!==0)throw Error(n(331));var R=ft;if(ft|=4,Mw(b.current),Ew(b,b.current,k,u),ft=R,jh(0,!1),Si&&typeof Si.onPostCommitFiberRoot=="function")try{Si.onPostCommitFiberRoot(Dr,b)}catch{}return!0}finally{Z.p=y,$.T=p,Kw(o,l)}}function ek(o,l,u){l=Kn(u,l),l=JO(o.stateNode,l,2),o=_o(o,l,2),o!==null&&(ps(o,2),qr(o))}function yt(o,l,u){if(o.tag===3)ek(o,o,u);else for(;l!==null;){if(l.tag===3){ek(l,o,u);break}else if(l.tag===1){var p=l.stateNode;if(typeof l.type.getDerivedStateFromError=="function"||typeof p.componentDidCatch=="function"&&(Qo===null||!Qo.has(p))){o=Kn(u,o),u=tw(2),p=_o(l,u,2),p!==null&&(iw(u,p,l,o),ps(p,2),qr(p));break}}l=l.return}}function w0(o,l,u){var p=o.pingCache;if(p===null){p=o.pingCache=new Fj;var y=new Set;p.set(l,y)}else y=p.get(l),y===void 0&&(y=new Set,p.set(l,y));y.has(u)||(m0=!0,y.add(u),o=i3.bind(null,o,l,u),l.then(o,o))}function i3(o,l,u){var p=o.pingCache;p!==null&&p.delete(l),o.pingedLanes|=o.suspendedLanes&u,o.warmLanes&=~u,wt===o&&(et&u)===u&&(Wt===4||Wt===3&&(et&62914560)===et&&300>hi()-kf?(ft&2)===0&&Yl(o,0):O0|=u,Il===et&&(Il=0)),qr(o)}function tk(o,l){l===0&&(l=vl()),o=_a(o,l),o!==null&&(ps(o,l),qr(o))}function n3(o){var l=o.memoizedState,u=0;l!==null&&(u=l.retryLane),tk(o,u)}function r3(o,l){var u=0;switch(o.tag){case 31:case 13:var p=o.stateNode,y=o.memoizedState;y!==null&&(u=y.retryLane);break;case 19:p=o.stateNode;break;case 22:p=o.stateNode._retryCache;break;default:throw Error(n(314))}p!==null&&p.delete(l),tk(o,u)}function s3(o,l){return an(o,l)}var Rf=null,Ul=null,k0=!1,Af=!1,C0=!1,Eo=0;function qr(o){o!==Ul&&o.next===null&&(Ul===null?Rf=Ul=o:Ul=Ul.next=o),Af=!0,k0||(k0=!0,a3())}function jh(o,l){if(!C0&&Af){C0=!0;do for(var u=!1,p=Rf;p!==null;){if(o!==0){var y=p.pendingLanes;if(y===0)var b=0;else{var k=p.suspendedLanes,R=p.pingedLanes;b=(1<<31-Ei(42|o)+1)-1,b&=y&~(k&~R),b=b&201326741?b&201326741|1:b?b|2:0}b!==0&&(u=!0,sk(p,b))}else b=et,b=oo(p,p===wt?b:0,p.cancelPendingCommit!==null||p.timeoutHandle!==-1),(b&3)===0||Lr(p,b)||(u=!0,sk(p,b));p=p.next}while(u);C0=!1}}function o3(){ik()}function ik(){Af=k0=!1;var o=0;Eo!==0&&O3()&&(o=Eo);for(var l=hi(),u=null,p=Rf;p!==null;){var y=p.next,b=nk(p,l);b===0?(p.next=null,u===null?Rf=y:u.next=y,y===null&&(Ul=u)):(u=p,(o!==0||(b&3)!==0)&&(Af=!0)),p=y}fi!==0&&fi!==5||jh(o),Eo!==0&&(Eo=0)}function nk(o,l){for(var u=o.suspendedLanes,p=o.pingedLanes,y=o.expirationTimes,b=o.pendingLanes&-62914561;0<b;){var k=31-Ei(b),R=1<<k,Y=y[k];Y===-1?((R&u)===0||(R&p)!==0)&&(y[k]=eh(R,l)):Y<=l&&(o.expiredLanes|=R),b&=~R}if(l=wt,u=et,u=oo(o,o===l?u:0,o.cancelPendingCommit!==null||o.timeoutHandle!==-1),p=o.callbackNode,u===0||o===l&&(vt===2||vt===9)||o.cancelPendingCommit!==null)return p!==null&&p!==null&&mr(p),o.callbackNode=null,o.callbackPriority=0;if((u&3)===0||Lr(o,u)){if(l=u&-u,l===o.callbackPriority)return l;switch(p!==null&&mr(p),ln(u)){case 2:case 8:u=wn;break;case 32:u=kn;break;case 268435456:u=Cn;break;default:u=kn}return p=rk.bind(null,o),u=an(u,p),o.callbackPriority=l,o.callbackNode=u,l}return p!==null&&p!==null&&mr(p),o.callbackPriority=2,o.callbackNode=null,2}function rk(o,l){if(fi!==0&&fi!==5)return o.callbackNode=null,o.callbackPriority=0,null;var u=o.callbackNode;if(Ef()&&o.callbackNode!==u)return null;var p=et;return p=oo(o,o===wt?p:0,o.cancelPendingCommit!==null||o.timeoutHandle!==-1),p===0?null:(Lw(o,p,l),nk(o,hi()),o.callbackNode!=null&&o.callbackNode===u?rk.bind(null,o):null)}function sk(o,l){if(Ef())return null;Lw(o,l,!0)}function a3(){y3(function(){(ft&6)!==0?an(Pi,o3):ik()})}function T0(){if(Eo===0){var o=Ml;o===0&&(o=so,so<<=1,(so&261888)===0&&(so=256)),Eo=o}return Eo}function ok(o){return o==null||typeof o=="symbol"||typeof o=="boolean"?null:typeof o=="function"?o:Xd(""+o)}function ak(o,l){var u=l.ownerDocument.createElement("input");return u.name=l.name,u.value=l.value,o.id&&u.setAttribute("form",o.id),l.parentNode.insertBefore(u,l),o=new FormData(o),u.parentNode.removeChild(u),o}function l3(o,l,u,p,y){if(l==="submit"&&u&&u.stateNode===y){var b=ok((y[Wi]||null).action),k=p.submitter;k&&(l=(l=k[Wi]||null)?ok(l.formAction):k.getAttribute("formAction"),l!==null&&(b=l,k=null));var R=new qd("action","action",null,p,y);o.push({event:R,listeners:[{instance:null,listener:function(){if(p.defaultPrevented){if(Eo!==0){var Y=k?ak(y,k):new FormData(y);YO(u,{pending:!0,data:Y,method:y.method,action:b},null,Y)}}else typeof b=="function"&&(R.preventDefault(),Y=k?ak(y,k):new FormData(y),YO(u,{pending:!0,data:Y,method:y.method,action:b},b,Y))},currentTarget:y}]})}}for(var Q0=0;Q0<hO.length;Q0++){var $0=hO[Q0],c3=$0.toLowerCase(),h3=$0[0].toUpperCase()+$0.slice(1);Sr(c3,"on"+h3)}Sr(B_,"onAnimationEnd"),Sr(L_,"onAnimationIteration"),Sr(X_,"onAnimationStart"),Sr("dblclick","onDoubleClick"),Sr("focusin","onFocus"),Sr("focusout","onBlur"),Sr(Cj,"onTransitionRun"),Sr(Tj,"onTransitionStart"),Sr(Qj,"onTransitionCancel"),Sr(N_,"onTransitionEnd"),fo("onMouseEnter",["mouseout","mouseover"]),fo("onMouseLeave",["mouseout","mouseover"]),fo("onPointerEnter",["pointerout","pointerover"]),fo("onPointerLeave",["pointerout","pointerover"]),ms("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),ms("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),ms("onBeforeInput",["compositionend","keypress","textInput","paste"]),ms("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),ms("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),ms("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Dh="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),u3=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Dh));function lk(o,l){l=(l&4)!==0;for(var u=0;u<o.length;u++){var p=o[u],y=p.event;p=p.listeners;e:{var b=void 0;if(l)for(var k=p.length-1;0<=k;k--){var R=p[k],Y=R.instance,te=R.currentTarget;if(R=R.listener,Y!==b&&y.isPropagationStopped())break e;b=R,y.currentTarget=te;try{b(y)}catch(oe){Yd(oe)}y.currentTarget=null,b=Y}else for(k=0;k<p.length;k++){if(R=p[k],Y=R.instance,te=R.currentTarget,R=R.listener,Y!==b&&y.isPropagationStopped())break e;b=R,y.currentTarget=te;try{b(y)}catch(oe){Yd(oe)}y.currentTarget=null,b=Y}}}}function Ke(o,l){var u=l[yl];u===void 0&&(u=l[yl]=new Set);var p=o+"__bubble";u.has(p)||(ck(l,o,2,!1),u.add(p))}function P0(o,l,u){var p=0;l&&(p|=4),ck(u,o,p,l)}var Mf="_reactListening"+Math.random().toString(36).slice(2);function E0(o){if(!o[Mf]){o[Mf]=!0,Md.forEach(function(u){u!=="selectionchange"&&(u3.has(u)||P0(u,!1,o),P0(u,!0,o))});var l=o.nodeType===9?o:o.ownerDocument;l===null||l[Mf]||(l[Mf]=!0,P0("selectionchange",!1,l))}}function ck(o,l,u,p){switch(Bk(l)){case 2:var y=L3;break;case 8:y=X3;break;default:y=V0}u=y.bind(null,l,u,o),y=void 0,!Fm||l!=="touchstart"&&l!=="touchmove"&&l!=="wheel"||(y=!0),p?y!==void 0?o.addEventListener(l,u,{capture:!0,passive:y}):o.addEventListener(l,u,!0):y!==void 0?o.addEventListener(l,u,{passive:y}):o.addEventListener(l,u,!1)}function R0(o,l,u,p,y){var b=p;if((l&1)===0&&(l&2)===0&&p!==null)e:for(;;){if(p===null)return;var k=p.tag;if(k===3||k===4){var R=p.stateNode.containerInfo;if(R===y)break;if(k===4)for(k=p.return;k!==null;){var Y=k.tag;if((Y===3||Y===4)&&k.stateNode.containerInfo===y)return;k=k.return}for(;R!==null;){if(k=lo(R),k===null)return;if(Y=k.tag,Y===5||Y===6||Y===26||Y===27){p=b=k;continue e}R=R.parentNode}}p=p.return}p_(function(){var te=b,oe=Um(u),he=[];e:{var re=Z_.get(o);if(re!==void 0){var se=qd,ke=o;switch(o){case"keypress":if(Zd(u)===0)break e;case"keydown":case"keyup":se=rj;break;case"focusin":ke="focus",se=tO;break;case"focusout":ke="blur",se=tO;break;case"beforeblur":case"afterblur":se=tO;break;case"click":if(u.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":se=O_;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":se=Vz;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":se=aj;break;case B_:case L_:case X_:se=Uz;break;case N_:se=cj;break;case"scroll":case"scrollend":se=qz;break;case"wheel":se=uj;break;case"copy":case"cut":case"paste":se=Fz;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":se=y_;break;case"toggle":case"beforetoggle":se=fj}var De=(l&4)!==0,_t=!De&&(o==="scroll"||o==="scrollend"),K=De?re!==null?re+"Capture":null:re;De=[];for(var F=te,ee;F!==null;){var ae=F;if(ee=ae.stateNode,ae=ae.tag,ae!==5&&ae!==26&&ae!==27||ee===null||K===null||(ae=sh(F,K),ae!=null&&De.push(Bh(F,ae,ee))),_t)break;F=F.return}0<De.length&&(re=new se(re,ke,null,u,oe),he.push({event:re,listeners:De}))}}if((l&7)===0){e:{if(re=o==="mouseover"||o==="pointerover",se=o==="mouseout"||o==="pointerout",re&&u!==Hm&&(ke=u.relatedTarget||u.fromElement)&&(lo(ke)||ke[gs]))break e;if((se||re)&&(re=oe.window===oe?oe:(re=oe.ownerDocument)?re.defaultView||re.parentWindow:window,se?(ke=u.relatedTarget||u.toElement,se=te,ke=ke?lo(ke):null,ke!==null&&(_t=s(ke),De=ke.tag,ke!==_t||De!==5&&De!==27&&De!==6)&&(ke=null)):(se=null,ke=te),se!==ke)){if(De=O_,ae="onMouseLeave",K="onMouseEnter",F="mouse",(o==="pointerout"||o==="pointerover")&&(De=y_,ae="onPointerLeave",K="onPointerEnter",F="pointer"),_t=se==null?re:ho(se),ee=ke==null?re:ho(ke),re=new De(ae,F+"leave",se,u,oe),re.target=_t,re.relatedTarget=ee,ae=null,lo(oe)===te&&(De=new De(K,F+"enter",ke,u,oe),De.target=ee,De.relatedTarget=_t,ae=De),_t=ae,se&&ke)t:{for(De=d3,K=se,F=ke,ee=0,ae=K;ae;ae=De(ae))ee++;ae=0;for(var Ae=F;Ae;Ae=De(Ae))ae++;for(;0<ee-ae;)K=De(K),ee--;for(;0<ae-ee;)F=De(F),ae--;for(;ee--;){if(K===F||F!==null&&K===F.alternate){De=K;break t}K=De(K),F=De(F)}De=null}else De=null;se!==null&&hk(he,re,se,De,!1),ke!==null&&_t!==null&&hk(he,_t,ke,De,!0)}}e:{if(re=te?ho(te):window,se=re.nodeName&&re.nodeName.toLowerCase(),se==="select"||se==="input"&&re.type==="file")var ht=T_;else if(k_(re))if(Q_)ht=xj;else{ht=bj;var Qe=Sj}else se=re.nodeName,!se||se.toLowerCase()!=="input"||re.type!=="checkbox"&&re.type!=="radio"?te&&Ym(te.elementType)&&(ht=T_):ht=_j;if(ht&&(ht=ht(o,te))){C_(he,ht,u,oe);break e}Qe&&Qe(o,re,te),o==="focusout"&&te&&re.type==="number"&&te.memoizedProps.value!=null&&rh(re,"number",re.value)}switch(Qe=te?ho(te):window,o){case"focusin":(k_(Qe)||Qe.contentEditable==="true")&&(Cl=Qe,aO=te,fh=null);break;case"focusout":fh=aO=Cl=null;break;case"mousedown":lO=!0;break;case"contextmenu":case"mouseup":case"dragend":lO=!1,j_(he,u,oe);break;case"selectionchange":if(kj)break;case"keydown":case"keyup":j_(he,u,oe)}var Ve;if(nO)e:{switch(o){case"compositionstart":var tt="onCompositionStart";break e;case"compositionend":tt="onCompositionEnd";break e;case"compositionupdate":tt="onCompositionUpdate";break e}tt=void 0}else kl?x_(o,u)&&(tt="onCompositionEnd"):o==="keydown"&&u.keyCode===229&&(tt="onCompositionStart");tt&&(S_&&u.locale!=="ko"&&(kl||tt!=="onCompositionStart"?tt==="onCompositionEnd"&&kl&&(Ve=g_()):(go=oe,Km="value"in go?go.value:go.textContent,kl=!0)),Qe=zf(te,tt),0<Qe.length&&(tt=new v_(tt,o,null,u,oe),he.push({event:tt,listeners:Qe}),Ve?tt.data=Ve:(Ve=w_(u),Ve!==null&&(tt.data=Ve)))),(Ve=gj?mj(o,u):Oj(o,u))&&(tt=zf(te,"onBeforeInput"),0<tt.length&&(Qe=new v_("onBeforeInput","beforeinput",null,u,oe),he.push({event:Qe,listeners:tt}),Qe.data=Ve)),l3(he,o,te,u,oe)}lk(he,l)})}function Bh(o,l,u){return{instance:o,listener:l,currentTarget:u}}function zf(o,l){for(var u=l+"Capture",p=[];o!==null;){var y=o,b=y.stateNode;if(y=y.tag,y!==5&&y!==26&&y!==27||b===null||(y=sh(o,u),y!=null&&p.unshift(Bh(o,y,b)),y=sh(o,l),y!=null&&p.push(Bh(o,y,b))),o.tag===3)return p;o=o.return}return[]}function d3(o){if(o===null)return null;do o=o.return;while(o&&o.tag!==5&&o.tag!==27);return o||null}function hk(o,l,u,p,y){for(var b=l._reactName,k=[];u!==null&&u!==p;){var R=u,Y=R.alternate,te=R.stateNode;if(R=R.tag,Y!==null&&Y===p)break;R!==5&&R!==26&&R!==27||te===null||(Y=te,y?(te=sh(u,b),te!=null&&k.unshift(Bh(u,te,Y))):y||(te=sh(u,b),te!=null&&k.push(Bh(u,te,Y)))),u=u.return}k.length!==0&&o.push({event:l,listeners:k})}var f3=/\r\n?/g,p3=/\u0000|\uFFFD/g;function uk(o){return(typeof o=="string"?o:""+o).replace(f3,`
49
- `).replace(p3,"")}function dk(o,l){return l=uk(l),uk(o)===l}function bt(o,l,u,p,y,b){switch(u){case"children":typeof p=="string"?l==="body"||l==="textarea"&&p===""||_l(o,p):(typeof p=="number"||typeof p=="bigint")&&l!=="body"&&_l(o,""+p);break;case"className":bl(o,"class",p);break;case"tabIndex":bl(o,"tabindex",p);break;case"dir":case"role":case"viewBox":case"width":case"height":bl(o,u,p);break;case"style":d_(o,p,b);break;case"data":if(l!=="object"){bl(o,"data",p);break}case"src":case"href":if(p===""&&(l!=="a"||u!=="href")){o.removeAttribute(u);break}if(p==null||typeof p=="function"||typeof p=="symbol"||typeof p=="boolean"){o.removeAttribute(u);break}p=Xd(""+p),o.setAttribute(u,p);break;case"action":case"formAction":if(typeof p=="function"){o.setAttribute(u,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof b=="function"&&(u==="formAction"?(l!=="input"&&bt(o,l,"name",y.name,y,null),bt(o,l,"formEncType",y.formEncType,y,null),bt(o,l,"formMethod",y.formMethod,y,null),bt(o,l,"formTarget",y.formTarget,y,null)):(bt(o,l,"encType",y.encType,y,null),bt(o,l,"method",y.method,y,null),bt(o,l,"target",y.target,y,null)));if(p==null||typeof p=="symbol"||typeof p=="boolean"){o.removeAttribute(u);break}p=Xd(""+p),o.setAttribute(u,p);break;case"onClick":p!=null&&(o.onclick=vs);break;case"onScroll":p!=null&&Ke("scroll",o);break;case"onScrollEnd":p!=null&&Ke("scrollend",o);break;case"dangerouslySetInnerHTML":if(p!=null){if(typeof p!="object"||!("__html"in p))throw Error(n(61));if(u=p.__html,u!=null){if(y.children!=null)throw Error(n(60));o.innerHTML=u}}break;case"multiple":o.multiple=p&&typeof p!="function"&&typeof p!="symbol";break;case"muted":o.muted=p&&typeof p!="function"&&typeof p!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(p==null||typeof p=="function"||typeof p=="boolean"||typeof p=="symbol"){o.removeAttribute("xlink:href");break}u=Xd(""+p),o.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",u);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":p!=null&&typeof p!="function"&&typeof p!="symbol"?o.setAttribute(u,""+p):o.removeAttribute(u);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":p&&typeof p!="function"&&typeof p!="symbol"?o.setAttribute(u,""):o.removeAttribute(u);break;case"capture":case"download":p===!0?o.setAttribute(u,""):p!==!1&&p!=null&&typeof p!="function"&&typeof p!="symbol"?o.setAttribute(u,p):o.removeAttribute(u);break;case"cols":case"rows":case"size":case"span":p!=null&&typeof p!="function"&&typeof p!="symbol"&&!isNaN(p)&&1<=p?o.setAttribute(u,p):o.removeAttribute(u);break;case"rowSpan":case"start":p==null||typeof p=="function"||typeof p=="symbol"||isNaN(p)?o.removeAttribute(u):o.setAttribute(u,p);break;case"popover":Ke("beforetoggle",o),Ke("toggle",o),Sl(o,"popover",p);break;case"xlinkActuate":yr(o,"http://www.w3.org/1999/xlink","xlink:actuate",p);break;case"xlinkArcrole":yr(o,"http://www.w3.org/1999/xlink","xlink:arcrole",p);break;case"xlinkRole":yr(o,"http://www.w3.org/1999/xlink","xlink:role",p);break;case"xlinkShow":yr(o,"http://www.w3.org/1999/xlink","xlink:show",p);break;case"xlinkTitle":yr(o,"http://www.w3.org/1999/xlink","xlink:title",p);break;case"xlinkType":yr(o,"http://www.w3.org/1999/xlink","xlink:type",p);break;case"xmlBase":yr(o,"http://www.w3.org/XML/1998/namespace","xml:base",p);break;case"xmlLang":yr(o,"http://www.w3.org/XML/1998/namespace","xml:lang",p);break;case"xmlSpace":yr(o,"http://www.w3.org/XML/1998/namespace","xml:space",p);break;case"is":Sl(o,"is",p);break;case"innerText":case"textContent":break;default:(!(2<u.length)||u[0]!=="o"&&u[0]!=="O"||u[1]!=="n"&&u[1]!=="N")&&(u=Zz.get(u)||u,Sl(o,u,p))}}function A0(o,l,u,p,y,b){switch(u){case"style":d_(o,p,b);break;case"dangerouslySetInnerHTML":if(p!=null){if(typeof p!="object"||!("__html"in p))throw Error(n(61));if(u=p.__html,u!=null){if(y.children!=null)throw Error(n(60));o.innerHTML=u}}break;case"children":typeof p=="string"?_l(o,p):(typeof p=="number"||typeof p=="bigint")&&_l(o,""+p);break;case"onScroll":p!=null&&Ke("scroll",o);break;case"onScrollEnd":p!=null&&Ke("scrollend",o);break;case"onClick":p!=null&&(o.onclick=vs);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!zd.hasOwnProperty(u))e:{if(u[0]==="o"&&u[1]==="n"&&(y=u.endsWith("Capture"),l=u.slice(2,y?u.length-7:void 0),b=o[Wi]||null,b=b!=null?b[u]:null,typeof b=="function"&&o.removeEventListener(l,b,y),typeof p=="function")){typeof b!="function"&&b!==null&&(u in o?o[u]=null:o.hasAttribute(u)&&o.removeAttribute(u)),o.addEventListener(l,p,y);break e}u in o?o[u]=p:p===!0?o.setAttribute(u,""):Sl(o,u,p)}}}function zi(o,l,u){switch(l){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Ke("error",o),Ke("load",o);var p=!1,y=!1,b;for(b in u)if(u.hasOwnProperty(b)){var k=u[b];if(k!=null)switch(b){case"src":p=!0;break;case"srcSet":y=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(n(137,l));default:bt(o,l,b,k,u,null)}}y&&bt(o,l,"srcSet",u.srcSet,u,null),p&&bt(o,l,"src",u.src,u,null);return;case"input":Ke("invalid",o);var R=b=k=y=null,Y=null,te=null;for(p in u)if(u.hasOwnProperty(p)){var oe=u[p];if(oe!=null)switch(p){case"name":y=oe;break;case"type":k=oe;break;case"checked":Y=oe;break;case"defaultChecked":te=oe;break;case"value":b=oe;break;case"defaultValue":R=oe;break;case"children":case"dangerouslySetInnerHTML":if(oe!=null)throw Error(n(137,l));break;default:bt(o,l,p,oe,u,null)}}Ld(o,b,R,Y,te,k,y,!1);return;case"select":Ke("invalid",o),p=k=b=null;for(y in u)if(u.hasOwnProperty(y)&&(R=u[y],R!=null))switch(y){case"value":b=R;break;case"defaultValue":k=R;break;case"multiple":p=R;default:bt(o,l,y,R,u,null)}l=b,u=k,o.multiple=!!p,l!=null?Os(o,!!p,l,!1):u!=null&&Os(o,!!p,u,!0);return;case"textarea":Ke("invalid",o),b=y=p=null;for(k in u)if(u.hasOwnProperty(k)&&(R=u[k],R!=null))switch(k){case"value":p=R;break;case"defaultValue":y=R;break;case"children":b=R;break;case"dangerouslySetInnerHTML":if(R!=null)throw Error(n(91));break;default:bt(o,l,k,R,u,null)}h_(o,p,y,b);return;case"option":for(Y in u)if(u.hasOwnProperty(Y)&&(p=u[Y],p!=null))switch(Y){case"selected":o.selected=p&&typeof p!="function"&&typeof p!="symbol";break;default:bt(o,l,Y,p,u,null)}return;case"dialog":Ke("beforetoggle",o),Ke("toggle",o),Ke("cancel",o),Ke("close",o);break;case"iframe":case"object":Ke("load",o);break;case"video":case"audio":for(p=0;p<Dh.length;p++)Ke(Dh[p],o);break;case"image":Ke("error",o),Ke("load",o);break;case"details":Ke("toggle",o);break;case"embed":case"source":case"link":Ke("error",o),Ke("load",o);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(te in u)if(u.hasOwnProperty(te)&&(p=u[te],p!=null))switch(te){case"children":case"dangerouslySetInnerHTML":throw Error(n(137,l));default:bt(o,l,te,p,u,null)}return;default:if(Ym(l)){for(oe in u)u.hasOwnProperty(oe)&&(p=u[oe],p!==void 0&&A0(o,l,oe,p,u,void 0));return}}for(R in u)u.hasOwnProperty(R)&&(p=u[R],p!=null&&bt(o,l,R,p,u,null))}function g3(o,l,u,p){switch(l){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var y=null,b=null,k=null,R=null,Y=null,te=null,oe=null;for(se in u){var he=u[se];if(u.hasOwnProperty(se)&&he!=null)switch(se){case"checked":break;case"value":break;case"defaultValue":Y=he;default:p.hasOwnProperty(se)||bt(o,l,se,null,p,he)}}for(var re in p){var se=p[re];if(he=u[re],p.hasOwnProperty(re)&&(se!=null||he!=null))switch(re){case"type":b=se;break;case"name":y=se;break;case"checked":te=se;break;case"defaultChecked":oe=se;break;case"value":k=se;break;case"defaultValue":R=se;break;case"children":case"dangerouslySetInnerHTML":if(se!=null)throw Error(n(137,l));break;default:se!==he&&bt(o,l,re,se,p,he)}}va(o,k,R,Y,te,oe,b,y);return;case"select":se=k=R=re=null;for(b in u)if(Y=u[b],u.hasOwnProperty(b)&&Y!=null)switch(b){case"value":break;case"multiple":se=Y;default:p.hasOwnProperty(b)||bt(o,l,b,null,p,Y)}for(y in p)if(b=p[y],Y=u[y],p.hasOwnProperty(y)&&(b!=null||Y!=null))switch(y){case"value":re=b;break;case"defaultValue":R=b;break;case"multiple":k=b;default:b!==Y&&bt(o,l,y,b,p,Y)}l=R,u=k,p=se,re!=null?Os(o,!!u,re,!1):!!p!=!!u&&(l!=null?Os(o,!!u,l,!0):Os(o,!!u,u?[]:"",!1));return;case"textarea":se=re=null;for(R in u)if(y=u[R],u.hasOwnProperty(R)&&y!=null&&!p.hasOwnProperty(R))switch(R){case"value":break;case"children":break;default:bt(o,l,R,null,p,y)}for(k in p)if(y=p[k],b=u[k],p.hasOwnProperty(k)&&(y!=null||b!=null))switch(k){case"value":re=y;break;case"defaultValue":se=y;break;case"children":break;case"dangerouslySetInnerHTML":if(y!=null)throw Error(n(91));break;default:y!==b&&bt(o,l,k,y,p,b)}c_(o,re,se);return;case"option":for(var ke in u)if(re=u[ke],u.hasOwnProperty(ke)&&re!=null&&!p.hasOwnProperty(ke))switch(ke){case"selected":o.selected=!1;break;default:bt(o,l,ke,null,p,re)}for(Y in p)if(re=p[Y],se=u[Y],p.hasOwnProperty(Y)&&re!==se&&(re!=null||se!=null))switch(Y){case"selected":o.selected=re&&typeof re!="function"&&typeof re!="symbol";break;default:bt(o,l,Y,re,p,se)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var De in u)re=u[De],u.hasOwnProperty(De)&&re!=null&&!p.hasOwnProperty(De)&&bt(o,l,De,null,p,re);for(te in p)if(re=p[te],se=u[te],p.hasOwnProperty(te)&&re!==se&&(re!=null||se!=null))switch(te){case"children":case"dangerouslySetInnerHTML":if(re!=null)throw Error(n(137,l));break;default:bt(o,l,te,re,p,se)}return;default:if(Ym(l)){for(var _t in u)re=u[_t],u.hasOwnProperty(_t)&&re!==void 0&&!p.hasOwnProperty(_t)&&A0(o,l,_t,void 0,p,re);for(oe in p)re=p[oe],se=u[oe],!p.hasOwnProperty(oe)||re===se||re===void 0&&se===void 0||A0(o,l,oe,re,p,se);return}}for(var K in u)re=u[K],u.hasOwnProperty(K)&&re!=null&&!p.hasOwnProperty(K)&&bt(o,l,K,null,p,re);for(he in p)re=p[he],se=u[he],!p.hasOwnProperty(he)||re===se||re==null&&se==null||bt(o,l,he,re,p,se)}function fk(o){switch(o){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function m3(){if(typeof performance.getEntriesByType=="function"){for(var o=0,l=0,u=performance.getEntriesByType("resource"),p=0;p<u.length;p++){var y=u[p],b=y.transferSize,k=y.initiatorType,R=y.duration;if(b&&R&&fk(k)){for(k=0,R=y.responseEnd,p+=1;p<u.length;p++){var Y=u[p],te=Y.startTime;if(te>R)break;var oe=Y.transferSize,he=Y.initiatorType;oe&&fk(he)&&(Y=Y.responseEnd,k+=oe*(Y<R?1:(R-te)/(Y-te)))}if(--p,l+=8*(b+k)/(y.duration/1e3),o++,10<o)break}}if(0<o)return l/o/1e6}return navigator.connection&&(o=navigator.connection.downlink,typeof o=="number")?o:5}var M0=null,z0=null;function jf(o){return o.nodeType===9?o:o.ownerDocument}function pk(o){switch(o){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function gk(o,l){if(o===0)switch(l){case"svg":return 1;case"math":return 2;default:return 0}return o===1&&l==="foreignObject"?0:o}function j0(o,l){return o==="textarea"||o==="noscript"||typeof l.children=="string"||typeof l.children=="number"||typeof l.children=="bigint"||typeof l.dangerouslySetInnerHTML=="object"&&l.dangerouslySetInnerHTML!==null&&l.dangerouslySetInnerHTML.__html!=null}var D0=null;function O3(){var o=window.event;return o&&o.type==="popstate"?o===D0?!1:(D0=o,!0):(D0=null,!1)}var mk=typeof setTimeout=="function"?setTimeout:void 0,v3=typeof clearTimeout=="function"?clearTimeout:void 0,Ok=typeof Promise=="function"?Promise:void 0,y3=typeof queueMicrotask=="function"?queueMicrotask:typeof Ok<"u"?function(o){return Ok.resolve(null).then(o).catch(S3)}:mk;function S3(o){setTimeout(function(){throw o})}function Ro(o){return o==="head"}function vk(o,l){var u=l,p=0;do{var y=u.nextSibling;if(o.removeChild(u),y&&y.nodeType===8)if(u=y.data,u==="/$"||u==="/&"){if(p===0){o.removeChild(y),Jl(l);return}p--}else if(u==="$"||u==="$?"||u==="$~"||u==="$!"||u==="&")p++;else if(u==="html")Lh(o.ownerDocument.documentElement);else if(u==="head"){u=o.ownerDocument.head,Lh(u);for(var b=u.firstChild;b;){var k=b.nextSibling,R=b.nodeName;b[ma]||R==="SCRIPT"||R==="STYLE"||R==="LINK"&&b.rel.toLowerCase()==="stylesheet"||u.removeChild(b),b=k}}else u==="body"&&Lh(o.ownerDocument.body);u=y}while(u);Jl(l)}function yk(o,l){var u=o;o=0;do{var p=u.nextSibling;if(u.nodeType===1?l?(u._stashedDisplay=u.style.display,u.style.display="none"):(u.style.display=u._stashedDisplay||"",u.getAttribute("style")===""&&u.removeAttribute("style")):u.nodeType===3&&(l?(u._stashedText=u.nodeValue,u.nodeValue=""):u.nodeValue=u._stashedText||""),p&&p.nodeType===8)if(u=p.data,u==="/$"){if(o===0)break;o--}else u!=="$"&&u!=="$?"&&u!=="$~"&&u!=="$!"||o++;u=p}while(u)}function B0(o){var l=o.firstChild;for(l&&l.nodeType===10&&(l=l.nextSibling);l;){var u=l;switch(l=l.nextSibling,u.nodeName){case"HTML":case"HEAD":case"BODY":B0(u),ih(u);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(u.rel.toLowerCase()==="stylesheet")continue}o.removeChild(u)}}function b3(o,l,u,p){for(;o.nodeType===1;){var y=u;if(o.nodeName.toLowerCase()!==l.toLowerCase()){if(!p&&(o.nodeName!=="INPUT"||o.type!=="hidden"))break}else if(p){if(!o[ma])switch(l){case"meta":if(!o.hasAttribute("itemprop"))break;return o;case"link":if(b=o.getAttribute("rel"),b==="stylesheet"&&o.hasAttribute("data-precedence"))break;if(b!==y.rel||o.getAttribute("href")!==(y.href==null||y.href===""?null:y.href)||o.getAttribute("crossorigin")!==(y.crossOrigin==null?null:y.crossOrigin)||o.getAttribute("title")!==(y.title==null?null:y.title))break;return o;case"style":if(o.hasAttribute("data-precedence"))break;return o;case"script":if(b=o.getAttribute("src"),(b!==(y.src==null?null:y.src)||o.getAttribute("type")!==(y.type==null?null:y.type)||o.getAttribute("crossorigin")!==(y.crossOrigin==null?null:y.crossOrigin))&&b&&o.hasAttribute("async")&&!o.hasAttribute("itemprop"))break;return o;default:return o}}else if(l==="input"&&o.type==="hidden"){var b=y.name==null?null:""+y.name;if(y.type==="hidden"&&o.getAttribute("name")===b)return o}else return o;if(o=nr(o.nextSibling),o===null)break}return null}function _3(o,l,u){if(l==="")return null;for(;o.nodeType!==3;)if((o.nodeType!==1||o.nodeName!=="INPUT"||o.type!=="hidden")&&!u||(o=nr(o.nextSibling),o===null))return null;return o}function Sk(o,l){for(;o.nodeType!==8;)if((o.nodeType!==1||o.nodeName!=="INPUT"||o.type!=="hidden")&&!l||(o=nr(o.nextSibling),o===null))return null;return o}function L0(o){return o.data==="$?"||o.data==="$~"}function X0(o){return o.data==="$!"||o.data==="$?"&&o.ownerDocument.readyState!=="loading"}function x3(o,l){var u=o.ownerDocument;if(o.data==="$~")o._reactRetry=l;else if(o.data!=="$?"||u.readyState!=="loading")l();else{var p=function(){l(),u.removeEventListener("DOMContentLoaded",p)};u.addEventListener("DOMContentLoaded",p),o._reactRetry=p}}function nr(o){for(;o!=null;o=o.nextSibling){var l=o.nodeType;if(l===1||l===3)break;if(l===8){if(l=o.data,l==="$"||l==="$!"||l==="$?"||l==="$~"||l==="&"||l==="F!"||l==="F")break;if(l==="/$"||l==="/&")return null}}return o}var N0=null;function bk(o){o=o.nextSibling;for(var l=0;o;){if(o.nodeType===8){var u=o.data;if(u==="/$"||u==="/&"){if(l===0)return nr(o.nextSibling);l--}else u!=="$"&&u!=="$!"&&u!=="$?"&&u!=="$~"&&u!=="&"||l++}o=o.nextSibling}return null}function _k(o){o=o.previousSibling;for(var l=0;o;){if(o.nodeType===8){var u=o.data;if(u==="$"||u==="$!"||u==="$?"||u==="$~"||u==="&"){if(l===0)return o;l--}else u!=="/$"&&u!=="/&"||l++}o=o.previousSibling}return null}function xk(o,l,u){switch(l=jf(u),o){case"html":if(o=l.documentElement,!o)throw Error(n(452));return o;case"head":if(o=l.head,!o)throw Error(n(453));return o;case"body":if(o=l.body,!o)throw Error(n(454));return o;default:throw Error(n(451))}}function Lh(o){for(var l=o.attributes;l.length;)o.removeAttributeNode(l[0]);ih(o)}var rr=new Map,wk=new Set;function Df(o){return typeof o.getRootNode=="function"?o.getRootNode():o.nodeType===9?o:o.ownerDocument}var Ms=Z.d;Z.d={f:w3,r:k3,D:C3,C:T3,L:Q3,m:$3,X:E3,S:P3,M:R3};function w3(){var o=Ms.f(),l=Qf();return o||l}function k3(o){var l=co(o);l!==null&&l.tag===5&&l.type==="form"?Nx(l):Ms.r(o)}var Gl=typeof document>"u"?null:document;function kk(o,l,u){var p=Gl;if(p&&typeof l=="string"&&l){var y=hn(l);y='link[rel="'+o+'"][href="'+y+'"]',typeof u=="string"&&(y+='[crossorigin="'+u+'"]'),wk.has(y)||(wk.add(y),o={rel:o,crossOrigin:u,href:l},p.querySelector(y)===null&&(l=p.createElement("link"),zi(l,"link",o),ei(l),p.head.appendChild(l)))}}function C3(o){Ms.D(o),kk("dns-prefetch",o,null)}function T3(o,l){Ms.C(o,l),kk("preconnect",o,l)}function Q3(o,l,u){Ms.L(o,l,u);var p=Gl;if(p&&o&&l){var y='link[rel="preload"][as="'+hn(l)+'"]';l==="image"&&u&&u.imageSrcSet?(y+='[imagesrcset="'+hn(u.imageSrcSet)+'"]',typeof u.imageSizes=="string"&&(y+='[imagesizes="'+hn(u.imageSizes)+'"]')):y+='[href="'+hn(o)+'"]';var b=y;switch(l){case"style":b=Fl(o);break;case"script":b=Kl(o)}rr.has(b)||(o=g({rel:"preload",href:l==="image"&&u&&u.imageSrcSet?void 0:o,as:l},u),rr.set(b,o),p.querySelector(y)!==null||l==="style"&&p.querySelector(Xh(b))||l==="script"&&p.querySelector(Nh(b))||(l=p.createElement("link"),zi(l,"link",o),ei(l),p.head.appendChild(l)))}}function $3(o,l){Ms.m(o,l);var u=Gl;if(u&&o){var p=l&&typeof l.as=="string"?l.as:"script",y='link[rel="modulepreload"][as="'+hn(p)+'"][href="'+hn(o)+'"]',b=y;switch(p){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":b=Kl(o)}if(!rr.has(b)&&(o=g({rel:"modulepreload",href:o},l),rr.set(b,o),u.querySelector(y)===null)){switch(p){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(u.querySelector(Nh(b)))return}p=u.createElement("link"),zi(p,"link",o),ei(p),u.head.appendChild(p)}}}function P3(o,l,u){Ms.S(o,l,u);var p=Gl;if(p&&o){var y=uo(p).hoistableStyles,b=Fl(o);l=l||"default";var k=y.get(b);if(!k){var R={loading:0,preload:null};if(k=p.querySelector(Xh(b)))R.loading=5;else{o=g({rel:"stylesheet",href:o,"data-precedence":l},u),(u=rr.get(b))&&Z0(o,u);var Y=k=p.createElement("link");ei(Y),zi(Y,"link",o),Y._p=new Promise(function(te,oe){Y.onload=te,Y.onerror=oe}),Y.addEventListener("load",function(){R.loading|=1}),Y.addEventListener("error",function(){R.loading|=2}),R.loading|=4,Bf(k,l,p)}k={type:"stylesheet",instance:k,count:1,state:R},y.set(b,k)}}}function E3(o,l){Ms.X(o,l);var u=Gl;if(u&&o){var p=uo(u).hoistableScripts,y=Kl(o),b=p.get(y);b||(b=u.querySelector(Nh(y)),b||(o=g({src:o,async:!0},l),(l=rr.get(y))&&W0(o,l),b=u.createElement("script"),ei(b),zi(b,"link",o),u.head.appendChild(b)),b={type:"script",instance:b,count:1,state:null},p.set(y,b))}}function R3(o,l){Ms.M(o,l);var u=Gl;if(u&&o){var p=uo(u).hoistableScripts,y=Kl(o),b=p.get(y);b||(b=u.querySelector(Nh(y)),b||(o=g({src:o,async:!0,type:"module"},l),(l=rr.get(y))&&W0(o,l),b=u.createElement("script"),ei(b),zi(b,"link",o),u.head.appendChild(b)),b={type:"script",instance:b,count:1,state:null},p.set(y,b))}}function Ck(o,l,u,p){var y=(y=de.current)?Df(y):null;if(!y)throw Error(n(446));switch(o){case"meta":case"title":return null;case"style":return typeof u.precedence=="string"&&typeof u.href=="string"?(l=Fl(u.href),u=uo(y).hoistableStyles,p=u.get(l),p||(p={type:"style",instance:null,count:0,state:null},u.set(l,p)),p):{type:"void",instance:null,count:0,state:null};case"link":if(u.rel==="stylesheet"&&typeof u.href=="string"&&typeof u.precedence=="string"){o=Fl(u.href);var b=uo(y).hoistableStyles,k=b.get(o);if(k||(y=y.ownerDocument||y,k={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},b.set(o,k),(b=y.querySelector(Xh(o)))&&!b._p&&(k.instance=b,k.state.loading=5),rr.has(o)||(u={rel:"preload",as:"style",href:u.href,crossOrigin:u.crossOrigin,integrity:u.integrity,media:u.media,hrefLang:u.hrefLang,referrerPolicy:u.referrerPolicy},rr.set(o,u),b||A3(y,o,u,k.state))),l&&p===null)throw Error(n(528,""));return k}if(l&&p!==null)throw Error(n(529,""));return null;case"script":return l=u.async,u=u.src,typeof u=="string"&&l&&typeof l!="function"&&typeof l!="symbol"?(l=Kl(u),u=uo(y).hoistableScripts,p=u.get(l),p||(p={type:"script",instance:null,count:0,state:null},u.set(l,p)),p):{type:"void",instance:null,count:0,state:null};default:throw Error(n(444,o))}}function Fl(o){return'href="'+hn(o)+'"'}function Xh(o){return'link[rel="stylesheet"]['+o+"]"}function Tk(o){return g({},o,{"data-precedence":o.precedence,precedence:null})}function A3(o,l,u,p){o.querySelector('link[rel="preload"][as="style"]['+l+"]")?p.loading=1:(l=o.createElement("link"),p.preload=l,l.addEventListener("load",function(){return p.loading|=1}),l.addEventListener("error",function(){return p.loading|=2}),zi(l,"link",u),ei(l),o.head.appendChild(l))}function Kl(o){return'[src="'+hn(o)+'"]'}function Nh(o){return"script[async]"+o}function Qk(o,l,u){if(l.count++,l.instance===null)switch(l.type){case"style":var p=o.querySelector('style[data-href~="'+hn(u.href)+'"]');if(p)return l.instance=p,ei(p),p;var y=g({},u,{"data-href":u.href,"data-precedence":u.precedence,href:null,precedence:null});return p=(o.ownerDocument||o).createElement("style"),ei(p),zi(p,"style",y),Bf(p,u.precedence,o),l.instance=p;case"stylesheet":y=Fl(u.href);var b=o.querySelector(Xh(y));if(b)return l.state.loading|=4,l.instance=b,ei(b),b;p=Tk(u),(y=rr.get(y))&&Z0(p,y),b=(o.ownerDocument||o).createElement("link"),ei(b);var k=b;return k._p=new Promise(function(R,Y){k.onload=R,k.onerror=Y}),zi(b,"link",p),l.state.loading|=4,Bf(b,u.precedence,o),l.instance=b;case"script":return b=Kl(u.src),(y=o.querySelector(Nh(b)))?(l.instance=y,ei(y),y):(p=u,(y=rr.get(b))&&(p=g({},u),W0(p,y)),o=o.ownerDocument||o,y=o.createElement("script"),ei(y),zi(y,"link",p),o.head.appendChild(y),l.instance=y);case"void":return null;default:throw Error(n(443,l.type))}else l.type==="stylesheet"&&(l.state.loading&4)===0&&(p=l.instance,l.state.loading|=4,Bf(p,u.precedence,o));return l.instance}function Bf(o,l,u){for(var p=u.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),y=p.length?p[p.length-1]:null,b=y,k=0;k<p.length;k++){var R=p[k];if(R.dataset.precedence===l)b=R;else if(b!==y)break}b?b.parentNode.insertBefore(o,b.nextSibling):(l=u.nodeType===9?u.head:u,l.insertBefore(o,l.firstChild))}function Z0(o,l){o.crossOrigin==null&&(o.crossOrigin=l.crossOrigin),o.referrerPolicy==null&&(o.referrerPolicy=l.referrerPolicy),o.title==null&&(o.title=l.title)}function W0(o,l){o.crossOrigin==null&&(o.crossOrigin=l.crossOrigin),o.referrerPolicy==null&&(o.referrerPolicy=l.referrerPolicy),o.integrity==null&&(o.integrity=l.integrity)}var Lf=null;function $k(o,l,u){if(Lf===null){var p=new Map,y=Lf=new Map;y.set(u,p)}else y=Lf,p=y.get(u),p||(p=new Map,y.set(u,p));if(p.has(o))return p;for(p.set(o,null),u=u.getElementsByTagName(o),y=0;y<u.length;y++){var b=u[y];if(!(b[ma]||b[di]||o==="link"&&b.getAttribute("rel")==="stylesheet")&&b.namespaceURI!=="http://www.w3.org/2000/svg"){var k=b.getAttribute(l)||"";k=o+k;var R=p.get(k);R?R.push(b):p.set(k,[b])}}return p}function Pk(o,l,u){o=o.ownerDocument||o,o.head.insertBefore(u,l==="title"?o.querySelector("head > title"):null)}function M3(o,l,u){if(u===1||l.itemProp!=null)return!1;switch(o){case"meta":case"title":return!0;case"style":if(typeof l.precedence!="string"||typeof l.href!="string"||l.href==="")break;return!0;case"link":if(typeof l.rel!="string"||typeof l.href!="string"||l.href===""||l.onLoad||l.onError)break;switch(l.rel){case"stylesheet":return o=l.disabled,typeof l.precedence=="string"&&o==null;default:return!0}case"script":if(l.async&&typeof l.async!="function"&&typeof l.async!="symbol"&&!l.onLoad&&!l.onError&&l.src&&typeof l.src=="string")return!0}return!1}function Ek(o){return!(o.type==="stylesheet"&&(o.state.loading&3)===0)}function z3(o,l,u,p){if(u.type==="stylesheet"&&(typeof p.media!="string"||matchMedia(p.media).matches!==!1)&&(u.state.loading&4)===0){if(u.instance===null){var y=Fl(p.href),b=l.querySelector(Xh(y));if(b){l=b._p,l!==null&&typeof l=="object"&&typeof l.then=="function"&&(o.count++,o=Xf.bind(o),l.then(o,o)),u.state.loading|=4,u.instance=b,ei(b);return}b=l.ownerDocument||l,p=Tk(p),(y=rr.get(y))&&Z0(p,y),b=b.createElement("link"),ei(b);var k=b;k._p=new Promise(function(R,Y){k.onload=R,k.onerror=Y}),zi(b,"link",p),u.instance=b}o.stylesheets===null&&(o.stylesheets=new Map),o.stylesheets.set(u,l),(l=u.state.preload)&&(u.state.loading&3)===0&&(o.count++,u=Xf.bind(o),l.addEventListener("load",u),l.addEventListener("error",u))}}var q0=0;function j3(o,l){return o.stylesheets&&o.count===0&&Zf(o,o.stylesheets),0<o.count||0<o.imgCount?function(u){var p=setTimeout(function(){if(o.stylesheets&&Zf(o,o.stylesheets),o.unsuspend){var b=o.unsuspend;o.unsuspend=null,b()}},6e4+l);0<o.imgBytes&&q0===0&&(q0=62500*m3());var y=setTimeout(function(){if(o.waitingForImages=!1,o.count===0&&(o.stylesheets&&Zf(o,o.stylesheets),o.unsuspend)){var b=o.unsuspend;o.unsuspend=null,b()}},(o.imgBytes>q0?50:800)+l);return o.unsuspend=u,function(){o.unsuspend=null,clearTimeout(p),clearTimeout(y)}}:null}function Xf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Zf(this,this.stylesheets);else if(this.unsuspend){var o=this.unsuspend;this.unsuspend=null,o()}}}var Nf=null;function Zf(o,l){o.stylesheets=null,o.unsuspend!==null&&(o.count++,Nf=new Map,l.forEach(D3,o),Nf=null,Xf.call(o))}function D3(o,l){if(!(l.state.loading&4)){var u=Nf.get(o);if(u)var p=u.get(null);else{u=new Map,Nf.set(o,u);for(var y=o.querySelectorAll("link[data-precedence],style[data-precedence]"),b=0;b<y.length;b++){var k=y[b];(k.nodeName==="LINK"||k.getAttribute("media")!=="not all")&&(u.set(k.dataset.precedence,k),p=k)}p&&u.set(null,p)}y=l.instance,k=y.getAttribute("data-precedence"),b=u.get(k)||p,b===p&&u.set(null,y),u.set(k,y),this.count++,p=Xf.bind(this),y.addEventListener("load",p),y.addEventListener("error",p),b?b.parentNode.insertBefore(y,b.nextSibling):(o=o.nodeType===9?o.head:o,o.insertBefore(y,o.firstChild)),l.state.loading|=4}}var Zh={$$typeof:C,Provider:null,Consumer:null,_currentValue:z,_currentValue2:z,_threadCount:0};function B3(o,l,u,p,y,b,k,R,Y){this.tag=1,this.containerInfo=o,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=ao(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ao(0),this.hiddenUpdates=ao(null),this.identifierPrefix=p,this.onUncaughtError=y,this.onCaughtError=b,this.onRecoverableError=k,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=Y,this.incompleteTransitions=new Map}function Rk(o,l,u,p,y,b,k,R,Y,te,oe,he){return o=new B3(o,l,u,k,Y,te,oe,he,R),l=1,b===!0&&(l|=24),b=En(3,null,null,l),o.current=b,b.stateNode=o,l=xO(),l.refCount++,o.pooledCache=l,l.refCount++,b.memoizedState={element:p,isDehydrated:u,cache:l},TO(b),o}function Ak(o){return o?(o=$l,o):$l}function Mk(o,l,u,p,y,b){y=Ak(y),p.context===null?p.context=y:p.pendingContext=y,p=bo(l),p.payload={element:u},b=b===void 0?null:b,b!==null&&(p.callback=b),u=_o(o,p,l),u!==null&&(mn(u,o,l),Sh(u,o,l))}function zk(o,l){if(o=o.memoizedState,o!==null&&o.dehydrated!==null){var u=o.retryLane;o.retryLane=u!==0&&u<l?u:l}}function I0(o,l){zk(o,l),(o=o.alternate)&&zk(o,l)}function jk(o){if(o.tag===13||o.tag===31){var l=_a(o,67108864);l!==null&&mn(l,o,67108864),I0(o,67108864)}}function Dk(o){if(o.tag===13||o.tag===31){var l=jn();l=ui(l);var u=_a(o,l);u!==null&&mn(u,o,l),I0(o,l)}}var Wf=!0;function L3(o,l,u,p){var y=$.T;$.T=null;var b=Z.p;try{Z.p=2,V0(o,l,u,p)}finally{Z.p=b,$.T=y}}function X3(o,l,u,p){var y=$.T;$.T=null;var b=Z.p;try{Z.p=8,V0(o,l,u,p)}finally{Z.p=b,$.T=y}}function V0(o,l,u,p){if(Wf){var y=Y0(p);if(y===null)R0(o,l,p,qf,u),Lk(o,p);else if(Z3(y,o,l,u,p))p.stopPropagation();else if(Lk(o,p),l&4&&-1<N3.indexOf(o)){for(;y!==null;){var b=co(y);if(b!==null)switch(b.tag){case 3:if(b=b.stateNode,b.current.memoizedState.isDehydrated){var k=Qn(b.pendingLanes);if(k!==0){var R=b;for(R.pendingLanes|=2,R.entangledLanes|=2;k;){var Y=1<<31-Ei(k);R.entanglements[1]|=Y,k&=~Y}qr(b),(ft&6)===0&&(Cf=hi()+500,jh(0))}}break;case 31:case 13:R=_a(b,2),R!==null&&mn(R,b,2),Qf(),I0(b,2)}if(b=Y0(p),b===null&&R0(o,l,p,qf,u),b===y)break;y=b}y!==null&&p.stopPropagation()}else R0(o,l,p,null,u)}}function Y0(o){return o=Um(o),H0(o)}var qf=null;function H0(o){if(qf=null,o=lo(o),o!==null){var l=s(o);if(l===null)o=null;else{var u=l.tag;if(u===13){if(o=a(l),o!==null)return o;o=null}else if(u===31){if(o=c(l),o!==null)return o;o=null}else if(u===3){if(l.stateNode.current.memoizedState.isDehydrated)return l.tag===3?l.stateNode.containerInfo:null;o=null}else l!==o&&(o=null)}}return qf=o,null}function Bk(o){switch(o){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Or()){case Pi:return 2;case wn:return 8;case kn:case Ol:return 32;case Cn:return 268435456;default:return 32}default:return 32}}var U0=!1,Ao=null,Mo=null,zo=null,Wh=new Map,qh=new Map,jo=[],N3="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Lk(o,l){switch(o){case"focusin":case"focusout":Ao=null;break;case"dragenter":case"dragleave":Mo=null;break;case"mouseover":case"mouseout":zo=null;break;case"pointerover":case"pointerout":Wh.delete(l.pointerId);break;case"gotpointercapture":case"lostpointercapture":qh.delete(l.pointerId)}}function Ih(o,l,u,p,y,b){return o===null||o.nativeEvent!==b?(o={blockedOn:l,domEventName:u,eventSystemFlags:p,nativeEvent:b,targetContainers:[y]},l!==null&&(l=co(l),l!==null&&jk(l)),o):(o.eventSystemFlags|=p,l=o.targetContainers,y!==null&&l.indexOf(y)===-1&&l.push(y),o)}function Z3(o,l,u,p,y){switch(l){case"focusin":return Ao=Ih(Ao,o,l,u,p,y),!0;case"dragenter":return Mo=Ih(Mo,o,l,u,p,y),!0;case"mouseover":return zo=Ih(zo,o,l,u,p,y),!0;case"pointerover":var b=y.pointerId;return Wh.set(b,Ih(Wh.get(b)||null,o,l,u,p,y)),!0;case"gotpointercapture":return b=y.pointerId,qh.set(b,Ih(qh.get(b)||null,o,l,u,p,y)),!0}return!1}function Xk(o){var l=lo(o.target);if(l!==null){var u=s(l);if(u!==null){if(l=u.tag,l===13){if(l=a(u),l!==null){o.blockedOn=l,vr(o.priority,function(){Dk(u)});return}}else if(l===31){if(l=c(u),l!==null){o.blockedOn=l,vr(o.priority,function(){Dk(u)});return}}else if(l===3&&u.stateNode.current.memoizedState.isDehydrated){o.blockedOn=u.tag===3?u.stateNode.containerInfo:null;return}}}o.blockedOn=null}function If(o){if(o.blockedOn!==null)return!1;for(var l=o.targetContainers;0<l.length;){var u=Y0(o.nativeEvent);if(u===null){u=o.nativeEvent;var p=new u.constructor(u.type,u);Hm=p,u.target.dispatchEvent(p),Hm=null}else return l=co(u),l!==null&&jk(l),o.blockedOn=u,!1;l.shift()}return!0}function Nk(o,l,u){If(o)&&u.delete(l)}function W3(){U0=!1,Ao!==null&&If(Ao)&&(Ao=null),Mo!==null&&If(Mo)&&(Mo=null),zo!==null&&If(zo)&&(zo=null),Wh.forEach(Nk),qh.forEach(Nk)}function Vf(o,l){o.blockedOn===l&&(o.blockedOn=null,U0||(U0=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,W3)))}var Yf=null;function Zk(o){Yf!==o&&(Yf=o,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){Yf===o&&(Yf=null);for(var l=0;l<o.length;l+=3){var u=o[l],p=o[l+1],y=o[l+2];if(typeof p!="function"){if(H0(p||u)===null)continue;break}var b=co(u);b!==null&&(o.splice(l,3),l-=3,YO(b,{pending:!0,data:y,method:u.method,action:p},p,y))}}))}function Jl(o){function l(Y){return Vf(Y,o)}Ao!==null&&Vf(Ao,o),Mo!==null&&Vf(Mo,o),zo!==null&&Vf(zo,o),Wh.forEach(l),qh.forEach(l);for(var u=0;u<jo.length;u++){var p=jo[u];p.blockedOn===o&&(p.blockedOn=null)}for(;0<jo.length&&(u=jo[0],u.blockedOn===null);)Xk(u),u.blockedOn===null&&jo.shift();if(u=(o.ownerDocument||o).$$reactFormReplay,u!=null)for(p=0;p<u.length;p+=3){var y=u[p],b=u[p+1],k=y[Wi]||null;if(typeof b=="function")k||Zk(u);else if(k){var R=null;if(b&&b.hasAttribute("formAction")){if(y=b,k=b[Wi]||null)R=k.formAction;else if(H0(y)!==null)continue}else R=k.action;typeof R=="function"?u[p+1]=R:(u.splice(p,3),p-=3),Zk(u)}}}function Wk(){function o(b){b.canIntercept&&b.info==="react-transition"&&b.intercept({handler:function(){return new Promise(function(k){return y=k})},focusReset:"manual",scroll:"manual"})}function l(){y!==null&&(y(),y=null),p||setTimeout(u,20)}function u(){if(!p&&!navigation.transition){var b=navigation.currentEntry;b&&b.url!=null&&navigation.navigate(b.url,{state:b.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var p=!1,y=null;return navigation.addEventListener("navigate",o),navigation.addEventListener("navigatesuccess",l),navigation.addEventListener("navigateerror",l),setTimeout(u,100),function(){p=!0,navigation.removeEventListener("navigate",o),navigation.removeEventListener("navigatesuccess",l),navigation.removeEventListener("navigateerror",l),y!==null&&(y(),y=null)}}}function G0(o){this._internalRoot=o}Hf.prototype.render=G0.prototype.render=function(o){var l=this._internalRoot;if(l===null)throw Error(n(409));var u=l.current,p=jn();Mk(u,p,o,l,null,null)},Hf.prototype.unmount=G0.prototype.unmount=function(){var o=this._internalRoot;if(o!==null){this._internalRoot=null;var l=o.containerInfo;Mk(o.current,2,null,o,null,null),Qf(),l[gs]=null}};function Hf(o){this._internalRoot=o}Hf.prototype.unstable_scheduleHydration=function(o){if(o){var l=$n();o={blockedOn:null,target:o,priority:l};for(var u=0;u<jo.length&&l!==0&&l<jo[u].priority;u++);jo.splice(u,0,o),u===0&&Xk(o)}};var qk=e.version;if(qk!=="19.2.4")throw Error(n(527,qk,"19.2.4"));Z.findDOMNode=function(o){var l=o._reactInternals;if(l===void 0)throw typeof o.render=="function"?Error(n(188)):(o=Object.keys(o).join(","),Error(n(268,o)));return o=d(l),o=o!==null?f(o):null,o=o===null?null:o.stateNode,o};var q3={bundleType:0,version:"19.2.4",rendererPackageName:"react-dom",currentDispatcherRef:$,reconcilerVersion:"19.2.4"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Uf=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Uf.isDisabled&&Uf.supportsFiber)try{Dr=Uf.inject(q3),Si=Uf}catch{}}return Yh.createRoot=function(o,l){if(!r(o))throw Error(n(299));var u=!1,p="",y=Fx,b=Kx,k=Jx;return l!=null&&(l.unstable_strictMode===!0&&(u=!0),l.identifierPrefix!==void 0&&(p=l.identifierPrefix),l.onUncaughtError!==void 0&&(y=l.onUncaughtError),l.onCaughtError!==void 0&&(b=l.onCaughtError),l.onRecoverableError!==void 0&&(k=l.onRecoverableError)),l=Rk(o,1,!1,null,null,u,p,null,y,b,k,Wk),o[gs]=l.current,E0(o),new G0(l)},Yh.hydrateRoot=function(o,l,u){if(!r(o))throw Error(n(299));var p=!1,y="",b=Fx,k=Kx,R=Jx,Y=null;return u!=null&&(u.unstable_strictMode===!0&&(p=!0),u.identifierPrefix!==void 0&&(y=u.identifierPrefix),u.onUncaughtError!==void 0&&(b=u.onUncaughtError),u.onCaughtError!==void 0&&(k=u.onCaughtError),u.onRecoverableError!==void 0&&(R=u.onRecoverableError),u.formState!==void 0&&(Y=u.formState)),l=Rk(o,1,!0,l,u??null,p,y,Y,b,k,R,Wk),l.context=Ak(null),u=l.current,p=jn(),p=ui(p),y=bo(p),y.callback=null,_o(u,y,p),u=p,l.current.lanes=u,ps(l,u),qr(l),o[gs]=l.current,E0(o),new Hf(l)},Yh.version="19.2.4",Yh}var eC;function J3(){if(eC)return J0.exports;eC=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(e){console.error(e)}}return t(),J0.exports=K3(),J0.exports}var eD=J3();const tC=t=>{let e;const i=new Set,n=(d,f)=>{const g=typeof d=="function"?d(e):d;if(!Object.is(g,e)){const m=e;e=f??(typeof g!="object"||g===null)?g:Object.assign({},e,g),i.forEach(v=>v(e,m))}},r=()=>e,c={setState:n,getState:r,getInitialState:()=>h,subscribe:d=>(i.add(d),()=>i.delete(d))},h=e=t(n,r,c);return c},tD=(t=>t?tC(t):tC),iD=t=>t;function nD(t,e=iD){const i=In.useSyncExternalStore(t.subscribe,In.useCallback(()=>e(t.getState()),[t,e]),In.useCallback(()=>e(t.getInitialState()),[t,e]));return In.useDebugValue(i),i}const iC=t=>{const e=tD(t),i=n=>nD(e,n);return Object.assign(i,e),i},rD=(t=>t?iC(t):iC),sD=`ws://${window.location.hostname}:${window.location.port||31415}`,Ki="",Ce=rD((t,e)=>({agents:[],connected:!1,ws:null,daemonHost:null,tunneled:!1,activeTab:"agents",detailPanel:null,activityLog:{},statusMessage:null,commandHistory:[],chatHistory:{},tokenTimeline:{},dashTelemetry:{},editorFiles:{},editorActiveFile:null,editorOpenTabs:[],editorTreeCache:{},editorChangedFiles:{},editorRecentSaves:{},connect(){if(e().ws)return;const i=new WebSocket(sD);i.onopen=()=>{t({connected:!0,ws:i}),fetch(`${Ki}/api/status`).then(n=>n.json()).then(n=>{const r={};n.host&&n.host!=="127.0.0.1"&&(r.daemonHost=n.host);const s=window.location.port||"80";String(n.port)!==s&&(r.tunneled=!0),Object.keys(r).length>0&&t(r)}).catch(()=>{})},i.onmessage=n=>{const r=JSON.parse(n.data);switch(r.type){case"state":{const s={...e().tokenTimeline},a=Date.now();for(const c of r.data){s[c.id]||(s[c.id]=[]);const h=s[c.id],d=h[h.length-1];(!d||c.tokensUsed!==d.v||a-d.t>5e3)&&(h.push({t:a,v:c.tokensUsed||0}),h.length>200&&(s[c.id]=h.slice(-200)))}t({agents:r.data,tokenTimeline:s});break}case"agent:output":{const{agentId:s,data:a}=r,c={...e().activityLog};c[s]||(c[s]=[]),c[s]=[...c[s].slice(-200),{timestamp:Date.now(),text:typeof a.data=="string"?a.data:JSON.stringify(a.data),type:a.type}],t({activityLog:c});break}case"agent:exit":{const s=e().agents.find(h=>h.id===r.agentId),a=(s==null?void 0:s.name)||r.agentId,c=r.status==="completed"?`${a} completed`:r.status==="killed"?`${a} killed`:`${a} crashed (exit ${r.code})`;e().showStatus(c);break}case"rotation:start":e().showStatus(`rotating ${r.agentName}...`);break;case"rotation:complete":{e().showStatus(`rotated ${r.agentName} (saved ${r.tokensSaved} tokens)`);const s=e().detailPanel;(s==null?void 0:s.type)==="agent"&&s.agentId===r.oldAgentId&&r.newAgentId&&t(a=>{const c={...a.chatHistory},h={...a.tokenTimeline},d=c[r.oldAgentId]||[],f=h[r.oldAgentId]||[];return d.length>0&&(c[r.newAgentId]=[...d]),f.length>0&&(h[r.newAgentId]=[...f]),{chatHistory:c,tokenTimeline:h,detailPanel:{type:"agent",agentId:r.newAgentId}}});break}case"rotation:failed":e().showStatus(`rotation failed: ${r.error}`);break;case"file:changed":{const s=e().editorRecentSaves[r.path];if(s&&Date.now()-s<2e3)break;t(a=>({editorChangedFiles:{...a.editorChangedFiles,[r.path]:r.timestamp}}));break}}},i.onclose=()=>{t({connected:!1,ws:null,daemonHost:null,tunneled:!1}),setTimeout(()=>e().connect(),2e3)},i.onerror=()=>i.close()},async spawnAgent(i){const n=await fetch(`${Ki}/api/agents`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!n.ok){const s=await n.json().catch(()=>({}));throw new Error(s.error||"Spawn failed")}const r=await n.json();return e().showStatus(`spawned ${r.name}`),r},async killAgent(i,n=!1){await fetch(`${Ki}/api/agents/${i}?purge=${n}`,{method:"DELETE"})},async rotateAgent(i){const n=await fetch(`${Ki}/api/agents/${i}/rotate`,{method:"POST"});if(!n.ok){const r=await n.json().catch(()=>({}));throw new Error(r.error||"Rotation failed")}return n.json()},async fetchProviders(){return(await fetch(`${Ki}/api/providers`)).json()},setActiveTab(i){t({activeTab:i})},openDetail(i){t({detailPanel:i})},closeDetail(){t({detailPanel:null})},selectAgent(i){t({detailPanel:{type:"agent",agentId:i}})},clearSelection(){t({detailPanel:null})},showStatus(i){t({statusMessage:i}),setTimeout(()=>{e().statusMessage===i&&t({statusMessage:null})},4e3)},addChatMessage(i,n,r,s=!1){t(a=>{const c={...a.chatHistory};return c[i]||(c[i]=[]),c[i]=[...c[i].slice(-100),{from:n,text:r,timestamp:Date.now(),isQuery:s}],{chatHistory:c}})},async instructAgent(i,n){const r=e().agents.find(f=>f.id===i),s=r&&(r.status==="running"||r.status==="starting");e().addChatMessage(i,"user",n,!1),e().addChatMessage(i,"system",s?"sending instruction...":"continuing conversation...");const a=await fetch(`${Ki}/api/agents/${i}/instruct`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:n})});if(!a.ok){const f=await a.json().catch(()=>({}));throw e().addChatMessage(i,"system",`failed: ${f.error||"unknown error"}`),new Error(f.error||"Instruction failed")}const c=await a.json(),h=e().chatHistory[i]||[];h.length>0&&t(f=>{const g={...f.chatHistory};return g[c.id]=[...h],{chatHistory:g}});const d=e().tokenTimeline[i]||[];return d.length>0&&t(f=>{const g={...f.tokenTimeline};return g[c.id]=[...d],{tokenTimeline:g}}),e().selectAgent(c.id),e().addChatMessage(c.id,"system","agent resumed with context"),c},async queryAgent(i,n){e().addChatMessage(i,"user",n,!0);const r=await fetch(`${Ki}/api/agents/${i}/query`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:n})});if(!r.ok){const a=await r.json().catch(()=>({}));throw e().addChatMessage(i,"system",`query failed: ${a.error||"unknown error"}`),new Error(a.error||"Query failed")}const s=await r.json();return e().addChatMessage(i,"agent",s.response),s},async openFile(i){var s;if(e().editorFiles[i]||e().editorOpenTabs.includes(i)){t(a=>({editorActiveFile:i,editorOpenTabs:a.editorOpenTabs.includes(i)?a.editorOpenTabs:[...a.editorOpenTabs,i]}));return}const n=(s=i.split(".").pop())==null?void 0:s.toLowerCase();if(["png","jpg","jpeg","gif","svg","webp","ico","bmp","avif","mp4","webm","mov","avi","mkv","ogv"].includes(n)){t(a=>({editorActiveFile:i,editorOpenTabs:[...a.editorOpenTabs,i]}));return}try{const a=await fetch(`${Ki}/api/files/read?path=${encodeURIComponent(i)}`);if(!a.ok){const d=await a.json().catch(()=>({}));e().showStatus(d.error||"Failed to read file");return}const c=await a.json();if(c.binary){e().showStatus("Binary file — cannot open");return}t(d=>({editorFiles:{...d.editorFiles,[i]:{content:c.content,originalContent:c.content,language:c.language,loadedAt:Date.now()}},editorActiveFile:i,editorOpenTabs:d.editorOpenTabs.includes(i)?d.editorOpenTabs:[...d.editorOpenTabs,i]}));const h=e().ws;(h==null?void 0:h.readyState)===1&&h.send(JSON.stringify({type:"editor:watch",path:i}))}catch{e().showStatus("Failed to open file")}},closeFile(i){t(r=>{const s=r.editorOpenTabs.filter(d=>d!==i),a={...r.editorFiles};delete a[i];const c={...r.editorChangedFiles};delete c[i];let h=r.editorActiveFile;if(h===i){const d=r.editorOpenTabs.indexOf(i);h=s[Math.min(d,s.length-1)]||null}return{editorOpenTabs:s,editorFiles:a,editorChangedFiles:c,editorActiveFile:h}});const n=e().ws;(n==null?void 0:n.readyState)===1&&n.send(JSON.stringify({type:"editor:unwatch",path:i}))},setActiveFile(i){t({editorActiveFile:i})},updateFileContent(i,n){t(r=>({editorFiles:{...r.editorFiles,[i]:{...r.editorFiles[i],content:n}}}))},async saveFile(i){const n=e().editorFiles[i];if(n)try{const r=await fetch(`${Ki}/api/files/write`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:i,content:n.content})});if(!r.ok){const s=await r.json().catch(()=>({}));e().showStatus(s.error||"Save failed");return}t(s=>({editorFiles:{...s.editorFiles,[i]:{...s.editorFiles[i],originalContent:n.content}},editorChangedFiles:(()=>{const a={...s.editorChangedFiles};return delete a[i],a})(),editorRecentSaves:{...s.editorRecentSaves,[i]:Date.now()}})),e().showStatus("Saved")}catch{e().showStatus("Save failed")}},async reloadFile(i){try{const n=await fetch(`${Ki}/api/files/read?path=${encodeURIComponent(i)}`);if(!n.ok)return;const r=await n.json();if(r.binary)return;t(s=>({editorFiles:{...s.editorFiles,[i]:{content:r.content,originalContent:r.content,language:r.language,loadedAt:Date.now()}},editorChangedFiles:(()=>{const a={...s.editorChangedFiles};return delete a[i],a})()}))}catch{}},dismissFileChange(i){t(n=>{const r={...n.editorChangedFiles};return delete r[i],{editorChangedFiles:r}})},async fetchTreeDir(i){try{const n=await fetch(`${Ki}/api/files/tree?path=${encodeURIComponent(i)}`);if(!n.ok)return;const r=await n.json();t(s=>({editorTreeCache:{...s.editorTreeCache,[i]:r.entries}}))}catch{}},async createFile(i){try{const n=await fetch(`${Ki}/api/files/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:i})});if(!n.ok){const s=await n.json().catch(()=>({}));return e().showStatus(s.error||"Create failed"),!1}const r=i.includes("/")?i.split("/").slice(0,-1).join("/"):"";return await e().fetchTreeDir(r),e().showStatus("File created"),!0}catch{return e().showStatus("Create failed"),!1}},async createDir(i){try{const n=await fetch(`${Ki}/api/files/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:i})});if(!n.ok){const s=await n.json().catch(()=>({}));return e().showStatus(s.error||"Create failed"),!1}const r=i.includes("/")?i.split("/").slice(0,-1).join("/"):"";return await e().fetchTreeDir(r),e().showStatus("Folder created"),!0}catch{return e().showStatus("Create failed"),!1}},async deleteFile(i){try{const n=await fetch(`${Ki}/api/files/delete?path=${encodeURIComponent(i)}`,{method:"DELETE"});if(!n.ok){const s=await n.json().catch(()=>({}));return e().showStatus(s.error||"Delete failed"),!1}e().editorOpenTabs.includes(i)&&e().closeFile(i);const r=i.includes("/")?i.split("/").slice(0,-1).join("/"):"";return await e().fetchTreeDir(r),t(s=>{const a={...s.editorTreeCache};return delete a[i],{editorTreeCache:a}}),e().showStatus("Deleted"),!0}catch{return e().showStatus("Delete failed"),!1}},async renameFile(i,n){try{const r=await fetch(`${Ki}/api/files/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({oldPath:i,newPath:n})});if(!r.ok){const c=await r.json().catch(()=>({}));return e().showStatus(c.error||"Rename failed"),!1}t(c=>{const h=c.editorOpenTabs.map(g=>g===i?n:g),d={...c.editorFiles};d[i]&&(d[n]=d[i],delete d[i]);const f=c.editorActiveFile===i?n:c.editorActiveFile;return{editorOpenTabs:h,editorFiles:d,editorActiveFile:f}});const s=i.includes("/")?i.split("/").slice(0,-1).join("/"):"",a=n.includes("/")?n.split("/").slice(0,-1).join("/"):"";return await e().fetchTreeDir(s),a!==s&&await e().fetchTreeDir(a),e().showStatus("Renamed"),!0}catch{return e().showStatus("Rename failed"),!1}},addCommand(i){t(n=>({commandHistory:[...n.commandHistory.slice(-49),i]}))}}));function ci(t){if(typeof t=="string"||typeof t=="number")return""+t;let e="";if(Array.isArray(t))for(let i=0,n;i<t.length;i++)(n=ci(t[i]))!==""&&(e+=(e&&" ")+n);else for(let i in t)t[i]&&(e+=(e&&" ")+i);return e}var oD={value:()=>{}};function hm(){for(var t=0,e=arguments.length,i={},n;t<e;++t){if(!(n=arguments[t]+"")||n in i||/[\s.]/.test(n))throw new Error("illegal type: "+n);i[n]=[]}return new Np(i)}function Np(t){this._=t}function aD(t,e){return t.trim().split(/^|\s+/).map(function(i){var n="",r=i.indexOf(".");if(r>=0&&(n=i.slice(r+1),i=i.slice(0,r)),i&&!e.hasOwnProperty(i))throw new Error("unknown type: "+i);return{type:i,name:n}})}Np.prototype=hm.prototype={constructor:Np,on:function(t,e){var i=this._,n=aD(t+"",i),r,s=-1,a=n.length;if(arguments.length<2){for(;++s<a;)if((r=(t=n[s]).type)&&(r=lD(i[r],t.name)))return r;return}if(e!=null&&typeof e!="function")throw new Error("invalid callback: "+e);for(;++s<a;)if(r=(t=n[s]).type)i[r]=nC(i[r],t.name,e);else if(e==null)for(r in i)i[r]=nC(i[r],t.name,null);return this},copy:function(){var t={},e=this._;for(var i in e)t[i]=e[i].slice();return new Np(t)},call:function(t,e){if((r=arguments.length-2)>0)for(var i=new Array(r),n=0,r,s;n<r;++n)i[n]=arguments[n+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(s=this._[t],n=0,r=s.length;n<r;++n)s[n].value.apply(e,i)},apply:function(t,e,i){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var n=this._[t],r=0,s=n.length;r<s;++r)n[r].value.apply(e,i)}};function lD(t,e){for(var i=0,n=t.length,r;i<n;++i)if((r=t[i]).name===e)return r.value}function nC(t,e,i){for(var n=0,r=t.length;n<r;++n)if(t[n].name===e){t[n]=oD,t=t.slice(0,n).concat(t.slice(n+1));break}return i!=null&&t.push({name:e,value:i}),t}var wy="http://www.w3.org/1999/xhtml";const rC={svg:"http://www.w3.org/2000/svg",xhtml:wy,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function um(t){var e=t+="",i=e.indexOf(":");return i>=0&&(e=t.slice(0,i))!=="xmlns"&&(t=t.slice(i+1)),rC.hasOwnProperty(e)?{space:rC[e],local:t}:t}function cD(t){return function(){var e=this.ownerDocument,i=this.namespaceURI;return i===wy&&e.documentElement.namespaceURI===wy?e.createElement(t):e.createElementNS(i,t)}}function hD(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function G$(t){var e=um(t);return(e.local?hD:cD)(e)}function uD(){}function w1(t){return t==null?uD:function(){return this.querySelector(t)}}function dD(t){typeof t!="function"&&(t=w1(t));for(var e=this._groups,i=e.length,n=new Array(i),r=0;r<i;++r)for(var s=e[r],a=s.length,c=n[r]=new Array(a),h,d,f=0;f<a;++f)(h=s[f])&&(d=t.call(h,h.__data__,f,s))&&("__data__"in h&&(d.__data__=h.__data__),c[f]=d);return new Hn(n,this._parents)}function fD(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function pD(){return[]}function F$(t){return t==null?pD:function(){return this.querySelectorAll(t)}}function gD(t){return function(){return fD(t.apply(this,arguments))}}function mD(t){typeof t=="function"?t=gD(t):t=F$(t);for(var e=this._groups,i=e.length,n=[],r=[],s=0;s<i;++s)for(var a=e[s],c=a.length,h,d=0;d<c;++d)(h=a[d])&&(n.push(t.call(h,h.__data__,d,a)),r.push(h));return new Hn(n,r)}function K$(t){return function(){return this.matches(t)}}function J$(t){return function(e){return e.matches(t)}}var OD=Array.prototype.find;function vD(t){return function(){return OD.call(this.children,t)}}function yD(){return this.firstElementChild}function SD(t){return this.select(t==null?yD:vD(typeof t=="function"?t:J$(t)))}var bD=Array.prototype.filter;function _D(){return Array.from(this.children)}function xD(t){return function(){return bD.call(this.children,t)}}function wD(t){return this.selectAll(t==null?_D:xD(typeof t=="function"?t:J$(t)))}function kD(t){typeof t!="function"&&(t=K$(t));for(var e=this._groups,i=e.length,n=new Array(i),r=0;r<i;++r)for(var s=e[r],a=s.length,c=n[r]=[],h,d=0;d<a;++d)(h=s[d])&&t.call(h,h.__data__,d,s)&&c.push(h);return new Hn(n,this._parents)}function eP(t){return new Array(t.length)}function CD(){return new Hn(this._enter||this._groups.map(eP),this._parents)}function fg(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}fg.prototype={constructor:fg,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function TD(t){return function(){return t}}function QD(t,e,i,n,r,s){for(var a=0,c,h=e.length,d=s.length;a<d;++a)(c=e[a])?(c.__data__=s[a],n[a]=c):i[a]=new fg(t,s[a]);for(;a<h;++a)(c=e[a])&&(r[a]=c)}function $D(t,e,i,n,r,s,a){var c,h,d=new Map,f=e.length,g=s.length,m=new Array(f),v;for(c=0;c<f;++c)(h=e[c])&&(m[c]=v=a.call(h,h.__data__,c,e)+"",d.has(v)?r[c]=h:d.set(v,h));for(c=0;c<g;++c)v=a.call(t,s[c],c,s)+"",(h=d.get(v))?(n[c]=h,h.__data__=s[c],d.delete(v)):i[c]=new fg(t,s[c]);for(c=0;c<f;++c)(h=e[c])&&d.get(m[c])===h&&(r[c]=h)}function PD(t){return t.__data__}function ED(t,e){if(!arguments.length)return Array.from(this,PD);var i=e?$D:QD,n=this._parents,r=this._groups;typeof t!="function"&&(t=TD(t));for(var s=r.length,a=new Array(s),c=new Array(s),h=new Array(s),d=0;d<s;++d){var f=n[d],g=r[d],m=g.length,v=RD(t.call(f,f&&f.__data__,d,n)),S=v.length,_=c[d]=new Array(S),w=a[d]=new Array(S),x=h[d]=new Array(m);i(f,g,_,w,x,v,e);for(var Q=0,C=0,T,A;Q<S;++Q)if(T=_[Q]){for(Q>=C&&(C=Q+1);!(A=w[C])&&++C<S;);T._next=A||null}}return a=new Hn(a,n),a._enter=c,a._exit=h,a}function RD(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function AD(){return new Hn(this._exit||this._groups.map(eP),this._parents)}function MD(t,e,i){var n=this.enter(),r=this,s=this.exit();return typeof t=="function"?(n=t(n),n&&(n=n.selection())):n=n.append(t+""),e!=null&&(r=e(r),r&&(r=r.selection())),i==null?s.remove():i(s),n&&r?n.merge(r).order():r}function zD(t){for(var e=t.selection?t.selection():t,i=this._groups,n=e._groups,r=i.length,s=n.length,a=Math.min(r,s),c=new Array(r),h=0;h<a;++h)for(var d=i[h],f=n[h],g=d.length,m=c[h]=new Array(g),v,S=0;S<g;++S)(v=d[S]||f[S])&&(m[S]=v);for(;h<r;++h)c[h]=i[h];return new Hn(c,this._parents)}function jD(){for(var t=this._groups,e=-1,i=t.length;++e<i;)for(var n=t[e],r=n.length-1,s=n[r],a;--r>=0;)(a=n[r])&&(s&&a.compareDocumentPosition(s)^4&&s.parentNode.insertBefore(a,s),s=a);return this}function DD(t){t||(t=BD);function e(g,m){return g&&m?t(g.__data__,m.__data__):!g-!m}for(var i=this._groups,n=i.length,r=new Array(n),s=0;s<n;++s){for(var a=i[s],c=a.length,h=r[s]=new Array(c),d,f=0;f<c;++f)(d=a[f])&&(h[f]=d);h.sort(e)}return new Hn(r,this._parents).order()}function BD(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function LD(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function XD(){return Array.from(this)}function ND(){for(var t=this._groups,e=0,i=t.length;e<i;++e)for(var n=t[e],r=0,s=n.length;r<s;++r){var a=n[r];if(a)return a}return null}function ZD(){let t=0;for(const e of this)++t;return t}function WD(){return!this.node()}function qD(t){for(var e=this._groups,i=0,n=e.length;i<n;++i)for(var r=e[i],s=0,a=r.length,c;s<a;++s)(c=r[s])&&t.call(c,c.__data__,s,r);return this}function ID(t){return function(){this.removeAttribute(t)}}function VD(t){return function(){this.removeAttributeNS(t.space,t.local)}}function YD(t,e){return function(){this.setAttribute(t,e)}}function HD(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function UD(t,e){return function(){var i=e.apply(this,arguments);i==null?this.removeAttribute(t):this.setAttribute(t,i)}}function GD(t,e){return function(){var i=e.apply(this,arguments);i==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,i)}}function FD(t,e){var i=um(t);if(arguments.length<2){var n=this.node();return i.local?n.getAttributeNS(i.space,i.local):n.getAttribute(i)}return this.each((e==null?i.local?VD:ID:typeof e=="function"?i.local?GD:UD:i.local?HD:YD)(i,e))}function tP(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function KD(t){return function(){this.style.removeProperty(t)}}function JD(t,e,i){return function(){this.style.setProperty(t,e,i)}}function eB(t,e,i){return function(){var n=e.apply(this,arguments);n==null?this.style.removeProperty(t):this.style.setProperty(t,n,i)}}function tB(t,e,i){return arguments.length>1?this.each((e==null?KD:typeof e=="function"?eB:JD)(t,e,i??"")):Cc(this.node(),t)}function Cc(t,e){return t.style.getPropertyValue(e)||tP(t).getComputedStyle(t,null).getPropertyValue(e)}function iB(t){return function(){delete this[t]}}function nB(t,e){return function(){this[t]=e}}function rB(t,e){return function(){var i=e.apply(this,arguments);i==null?delete this[t]:this[t]=i}}function sB(t,e){return arguments.length>1?this.each((e==null?iB:typeof e=="function"?rB:nB)(t,e)):this.node()[t]}function iP(t){return t.trim().split(/^|\s+/)}function k1(t){return t.classList||new nP(t)}function nP(t){this._node=t,this._names=iP(t.getAttribute("class")||"")}nP.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function rP(t,e){for(var i=k1(t),n=-1,r=e.length;++n<r;)i.add(e[n])}function sP(t,e){for(var i=k1(t),n=-1,r=e.length;++n<r;)i.remove(e[n])}function oB(t){return function(){rP(this,t)}}function aB(t){return function(){sP(this,t)}}function lB(t,e){return function(){(e.apply(this,arguments)?rP:sP)(this,t)}}function cB(t,e){var i=iP(t+"");if(arguments.length<2){for(var n=k1(this.node()),r=-1,s=i.length;++r<s;)if(!n.contains(i[r]))return!1;return!0}return this.each((typeof e=="function"?lB:e?oB:aB)(i,e))}function hB(){this.textContent=""}function uB(t){return function(){this.textContent=t}}function dB(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function fB(t){return arguments.length?this.each(t==null?hB:(typeof t=="function"?dB:uB)(t)):this.node().textContent}function pB(){this.innerHTML=""}function gB(t){return function(){this.innerHTML=t}}function mB(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function OB(t){return arguments.length?this.each(t==null?pB:(typeof t=="function"?mB:gB)(t)):this.node().innerHTML}function vB(){this.nextSibling&&this.parentNode.appendChild(this)}function yB(){return this.each(vB)}function SB(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function bB(){return this.each(SB)}function _B(t){var e=typeof t=="function"?t:G$(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function xB(){return null}function wB(t,e){var i=typeof t=="function"?t:G$(t),n=e==null?xB:typeof e=="function"?e:w1(e);return this.select(function(){return this.insertBefore(i.apply(this,arguments),n.apply(this,arguments)||null)})}function kB(){var t=this.parentNode;t&&t.removeChild(this)}function CB(){return this.each(kB)}function TB(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function QB(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function $B(t){return this.select(t?QB:TB)}function PB(t){return arguments.length?this.property("__data__",t):this.node().__data__}function EB(t){return function(e){t.call(this,e,this.__data__)}}function RB(t){return t.trim().split(/^|\s+/).map(function(e){var i="",n=e.indexOf(".");return n>=0&&(i=e.slice(n+1),e=e.slice(0,n)),{type:e,name:i}})}function AB(t){return function(){var e=this.__on;if(e){for(var i=0,n=-1,r=e.length,s;i<r;++i)s=e[i],(!t.type||s.type===t.type)&&s.name===t.name?this.removeEventListener(s.type,s.listener,s.options):e[++n]=s;++n?e.length=n:delete this.__on}}}function MB(t,e,i){return function(){var n=this.__on,r,s=EB(e);if(n){for(var a=0,c=n.length;a<c;++a)if((r=n[a]).type===t.type&&r.name===t.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=s,r.options=i),r.value=e;return}}this.addEventListener(t.type,s,i),r={type:t.type,name:t.name,value:e,listener:s,options:i},n?n.push(r):this.__on=[r]}}function zB(t,e,i){var n=RB(t+""),r,s=n.length,a;if(arguments.length<2){var c=this.node().__on;if(c){for(var h=0,d=c.length,f;h<d;++h)for(r=0,f=c[h];r<s;++r)if((a=n[r]).type===f.type&&a.name===f.name)return f.value}return}for(c=e?MB:AB,r=0;r<s;++r)this.each(c(n[r],e,i));return this}function oP(t,e,i){var n=tP(t),r=n.CustomEvent;typeof r=="function"?r=new r(e,i):(r=n.document.createEvent("Event"),i?(r.initEvent(e,i.bubbles,i.cancelable),r.detail=i.detail):r.initEvent(e,!1,!1)),t.dispatchEvent(r)}function jB(t,e){return function(){return oP(this,t,e)}}function DB(t,e){return function(){return oP(this,t,e.apply(this,arguments))}}function BB(t,e){return this.each((typeof e=="function"?DB:jB)(t,e))}function*LB(){for(var t=this._groups,e=0,i=t.length;e<i;++e)for(var n=t[e],r=0,s=n.length,a;r<s;++r)(a=n[r])&&(yield a)}var aP=[null];function Hn(t,e){this._groups=t,this._parents=e}function ud(){return new Hn([[document.documentElement]],aP)}function XB(){return this}Hn.prototype=ud.prototype={constructor:Hn,select:dD,selectAll:mD,selectChild:SD,selectChildren:wD,filter:kD,data:ED,enter:CD,exit:AD,join:MD,merge:zD,selection:XB,order:jD,sort:DD,call:LD,nodes:XD,node:ND,size:ZD,empty:WD,each:qD,attr:FD,style:tB,property:sB,classed:cB,text:fB,html:OB,raise:yB,lower:bB,append:_B,insert:wB,remove:CB,clone:$B,datum:PB,on:zB,dispatch:BB,[Symbol.iterator]:LB};function Vn(t){return typeof t=="string"?new Hn([[document.querySelector(t)]],[document.documentElement]):new Hn([[t]],aP)}function NB(t){let e;for(;e=t.sourceEvent;)t=e;return t}function Cr(t,e){if(t=NB(t),e===void 0&&(e=t.currentTarget),e){var i=e.ownerSVGElement||e;if(i.createSVGPoint){var n=i.createSVGPoint();return n.x=t.clientX,n.y=t.clientY,n=n.matrixTransform(e.getScreenCTM().inverse()),[n.x,n.y]}if(e.getBoundingClientRect){var r=e.getBoundingClientRect();return[t.clientX-r.left-e.clientLeft,t.clientY-r.top-e.clientTop]}}return[t.pageX,t.pageY]}const ZB={passive:!1},Mu={capture:!0,passive:!1};function nv(t){t.stopImmediatePropagation()}function gc(t){t.preventDefault(),t.stopImmediatePropagation()}function lP(t){var e=t.document.documentElement,i=Vn(t).on("dragstart.drag",gc,Mu);"onselectstart"in e?i.on("selectstart.drag",gc,Mu):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function cP(t,e){var i=t.document.documentElement,n=Vn(t).on("dragstart.drag",null);e&&(n.on("click.drag",gc,Mu),setTimeout(function(){n.on("click.drag",null)},0)),"onselectstart"in i?n.on("selectstart.drag",null):(i.style.MozUserSelect=i.__noselect,delete i.__noselect)}const Gf=t=>()=>t;function ky(t,{sourceEvent:e,subject:i,target:n,identifier:r,active:s,x:a,y:c,dx:h,dy:d,dispatch:f}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:i,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},identifier:{value:r,enumerable:!0,configurable:!0},active:{value:s,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:h,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:f}})}ky.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function WB(t){return!t.ctrlKey&&!t.button}function qB(){return this.parentNode}function IB(t,e){return e??{x:t.x,y:t.y}}function VB(){return navigator.maxTouchPoints||"ontouchstart"in this}function hP(){var t=WB,e=qB,i=IB,n=VB,r={},s=hm("start","drag","end"),a=0,c,h,d,f,g=0;function m(T){T.on("mousedown.drag",v).filter(n).on("touchstart.drag",w).on("touchmove.drag",x,ZB).on("touchend.drag touchcancel.drag",Q).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function v(T,A){if(!(f||!t.call(this,T,A))){var P=C(this,e.call(this,T,A),T,A,"mouse");P&&(Vn(T.view).on("mousemove.drag",S,Mu).on("mouseup.drag",_,Mu),lP(T.view),nv(T),d=!1,c=T.clientX,h=T.clientY,P("start",T))}}function S(T){if(gc(T),!d){var A=T.clientX-c,P=T.clientY-h;d=A*A+P*P>g}r.mouse("drag",T)}function _(T){Vn(T.view).on("mousemove.drag mouseup.drag",null),cP(T.view,d),gc(T),r.mouse("end",T)}function w(T,A){if(t.call(this,T,A)){var P=T.changedTouches,M=e.call(this,T,A),V=P.length,H,G;for(H=0;H<V;++H)(G=C(this,M,T,A,P[H].identifier,P[H]))&&(nv(T),G("start",T,P[H]))}}function x(T){var A=T.changedTouches,P=A.length,M,V;for(M=0;M<P;++M)(V=r[A[M].identifier])&&(gc(T),V("drag",T,A[M]))}function Q(T){var A=T.changedTouches,P=A.length,M,V;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),M=0;M<P;++M)(V=r[A[M].identifier])&&(nv(T),V("end",T,A[M]))}function C(T,A,P,M,V,H){var G=s.copy(),N=Cr(H||P,A),j,B,E;if((E=i.call(T,new ky("beforestart",{sourceEvent:P,target:m,identifier:V,active:a,x:N[0],y:N[1],dx:0,dy:0,dispatch:G}),M))!=null)return j=E.x-N[0]||0,B=E.y-N[1]||0,function W($,Z,z){var L=N,U;switch($){case"start":r[V]=W,U=a++;break;case"end":delete r[V],--a;case"drag":N=Cr(z||Z,A),U=a;break}G.call($,T,new ky($,{sourceEvent:Z,subject:E,target:m,identifier:V,active:U,x:N[0]+j,y:N[1]+B,dx:N[0]-L[0],dy:N[1]-L[1],dispatch:G}),M)}}return m.filter=function(T){return arguments.length?(t=typeof T=="function"?T:Gf(!!T),m):t},m.container=function(T){return arguments.length?(e=typeof T=="function"?T:Gf(T),m):e},m.subject=function(T){return arguments.length?(i=typeof T=="function"?T:Gf(T),m):i},m.touchable=function(T){return arguments.length?(n=typeof T=="function"?T:Gf(!!T),m):n},m.on=function(){var T=s.on.apply(s,arguments);return T===s?m:T},m.clickDistance=function(T){return arguments.length?(g=(T=+T)*T,m):Math.sqrt(g)},m}function C1(t,e,i){t.prototype=e.prototype=i,i.constructor=t}function uP(t,e){var i=Object.create(t.prototype);for(var n in e)i[n]=e[n];return i}function dd(){}var zu=.7,pg=1/zu,mc="\\s*([+-]?\\d+)\\s*",ju="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",os="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",YB=/^#([0-9a-f]{3,8})$/,HB=new RegExp(`^rgb\\(${mc},${mc},${mc}\\)$`),UB=new RegExp(`^rgb\\(${os},${os},${os}\\)$`),GB=new RegExp(`^rgba\\(${mc},${mc},${mc},${ju}\\)$`),FB=new RegExp(`^rgba\\(${os},${os},${os},${ju}\\)$`),KB=new RegExp(`^hsl\\(${ju},${os},${os}\\)$`),JB=new RegExp(`^hsla\\(${ju},${os},${os},${ju}\\)$`),sC={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};C1(dd,tl,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:oC,formatHex:oC,formatHex8:e4,formatHsl:t4,formatRgb:aC,toString:aC});function oC(){return this.rgb().formatHex()}function e4(){return this.rgb().formatHex8()}function t4(){return dP(this).formatHsl()}function aC(){return this.rgb().formatRgb()}function tl(t){var e,i;return t=(t+"").trim().toLowerCase(),(e=YB.exec(t))?(i=e[1].length,e=parseInt(e[1],16),i===6?lC(e):i===3?new bn(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):i===8?Ff(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):i===4?Ff(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=HB.exec(t))?new bn(e[1],e[2],e[3],1):(e=UB.exec(t))?new bn(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=GB.exec(t))?Ff(e[1],e[2],e[3],e[4]):(e=FB.exec(t))?Ff(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=KB.exec(t))?uC(e[1],e[2]/100,e[3]/100,1):(e=JB.exec(t))?uC(e[1],e[2]/100,e[3]/100,e[4]):sC.hasOwnProperty(t)?lC(sC[t]):t==="transparent"?new bn(NaN,NaN,NaN,0):null}function lC(t){return new bn(t>>16&255,t>>8&255,t&255,1)}function Ff(t,e,i,n){return n<=0&&(t=e=i=NaN),new bn(t,e,i,n)}function i4(t){return t instanceof dd||(t=tl(t)),t?(t=t.rgb(),new bn(t.r,t.g,t.b,t.opacity)):new bn}function Cy(t,e,i,n){return arguments.length===1?i4(t):new bn(t,e,i,n??1)}function bn(t,e,i,n){this.r=+t,this.g=+e,this.b=+i,this.opacity=+n}C1(bn,Cy,uP(dd,{brighter(t){return t=t==null?pg:Math.pow(pg,t),new bn(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?zu:Math.pow(zu,t),new bn(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new bn(Ga(this.r),Ga(this.g),Ga(this.b),gg(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:cC,formatHex:cC,formatHex8:n4,formatRgb:hC,toString:hC}));function cC(){return`#${Ia(this.r)}${Ia(this.g)}${Ia(this.b)}`}function n4(){return`#${Ia(this.r)}${Ia(this.g)}${Ia(this.b)}${Ia((isNaN(this.opacity)?1:this.opacity)*255)}`}function hC(){const t=gg(this.opacity);return`${t===1?"rgb(":"rgba("}${Ga(this.r)}, ${Ga(this.g)}, ${Ga(this.b)}${t===1?")":`, ${t})`}`}function gg(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Ga(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Ia(t){return t=Ga(t),(t<16?"0":"")+t.toString(16)}function uC(t,e,i,n){return n<=0?t=e=i=NaN:i<=0||i>=1?t=e=NaN:e<=0&&(t=NaN),new Tr(t,e,i,n)}function dP(t){if(t instanceof Tr)return new Tr(t.h,t.s,t.l,t.opacity);if(t instanceof dd||(t=tl(t)),!t)return new Tr;if(t instanceof Tr)return t;t=t.rgb();var e=t.r/255,i=t.g/255,n=t.b/255,r=Math.min(e,i,n),s=Math.max(e,i,n),a=NaN,c=s-r,h=(s+r)/2;return c?(e===s?a=(i-n)/c+(i<n)*6:i===s?a=(n-e)/c+2:a=(e-i)/c+4,c/=h<.5?s+r:2-s-r,a*=60):c=h>0&&h<1?0:a,new Tr(a,c,h,t.opacity)}function r4(t,e,i,n){return arguments.length===1?dP(t):new Tr(t,e,i,n??1)}function Tr(t,e,i,n){this.h=+t,this.s=+e,this.l=+i,this.opacity=+n}C1(Tr,r4,uP(dd,{brighter(t){return t=t==null?pg:Math.pow(pg,t),new Tr(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?zu:Math.pow(zu,t),new Tr(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,i=this.l,n=i+(i<.5?i:1-i)*e,r=2*i-n;return new bn(rv(t>=240?t-240:t+120,r,n),rv(t,r,n),rv(t<120?t+240:t-120,r,n),this.opacity)},clamp(){return new Tr(dC(this.h),Kf(this.s),Kf(this.l),gg(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=gg(this.opacity);return`${t===1?"hsl(":"hsla("}${dC(this.h)}, ${Kf(this.s)*100}%, ${Kf(this.l)*100}%${t===1?")":`, ${t})`}`}}));function dC(t){return t=(t||0)%360,t<0?t+360:t}function Kf(t){return Math.max(0,Math.min(1,t||0))}function rv(t,e,i){return(t<60?e+(i-e)*t/60:t<180?i:t<240?e+(i-e)*(240-t)/60:e)*255}const T1=t=>()=>t;function s4(t,e){return function(i){return t+i*e}}function o4(t,e,i){return t=Math.pow(t,i),e=Math.pow(e,i)-t,i=1/i,function(n){return Math.pow(t+n*e,i)}}function a4(t){return(t=+t)==1?fP:function(e,i){return i-e?o4(e,i,t):T1(isNaN(e)?i:e)}}function fP(t,e){var i=e-t;return i?s4(t,i):T1(isNaN(t)?e:t)}const mg=(function t(e){var i=a4(e);function n(r,s){var a=i((r=Cy(r)).r,(s=Cy(s)).r),c=i(r.g,s.g),h=i(r.b,s.b),d=fP(r.opacity,s.opacity);return function(f){return r.r=a(f),r.g=c(f),r.b=h(f),r.opacity=d(f),r+""}}return n.gamma=t,n})(1);function l4(t,e){e||(e=[]);var i=t?Math.min(e.length,t.length):0,n=e.slice(),r;return function(s){for(r=0;r<i;++r)n[r]=t[r]*(1-s)+e[r]*s;return n}}function c4(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function h4(t,e){var i=e?e.length:0,n=t?Math.min(i,t.length):0,r=new Array(n),s=new Array(i),a;for(a=0;a<n;++a)r[a]=xu(t[a],e[a]);for(;a<i;++a)s[a]=e[a];return function(c){for(a=0;a<n;++a)s[a]=r[a](c);return s}}function u4(t,e){var i=new Date;return t=+t,e=+e,function(n){return i.setTime(t*(1-n)+e*n),i}}function Kr(t,e){return t=+t,e=+e,function(i){return t*(1-i)+e*i}}function d4(t,e){var i={},n={},r;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(r in e)r in t?i[r]=xu(t[r],e[r]):n[r]=e[r];return function(s){for(r in i)n[r]=i[r](s);return n}}var Ty=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,sv=new RegExp(Ty.source,"g");function f4(t){return function(){return t}}function p4(t){return function(e){return t(e)+""}}function pP(t,e){var i=Ty.lastIndex=sv.lastIndex=0,n,r,s,a=-1,c=[],h=[];for(t=t+"",e=e+"";(n=Ty.exec(t))&&(r=sv.exec(e));)(s=r.index)>i&&(s=e.slice(i,s),c[a]?c[a]+=s:c[++a]=s),(n=n[0])===(r=r[0])?c[a]?c[a]+=r:c[++a]=r:(c[++a]=null,h.push({i:a,x:Kr(n,r)})),i=sv.lastIndex;return i<e.length&&(s=e.slice(i),c[a]?c[a]+=s:c[++a]=s),c.length<2?h[0]?p4(h[0].x):f4(e):(e=h.length,function(d){for(var f=0,g;f<e;++f)c[(g=h[f]).i]=g.x(d);return c.join("")})}function xu(t,e){var i=typeof e,n;return e==null||i==="boolean"?T1(e):(i==="number"?Kr:i==="string"?(n=tl(e))?(e=n,mg):pP:e instanceof tl?mg:e instanceof Date?u4:c4(e)?l4:Array.isArray(e)?h4:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?d4:Kr)(t,e)}var fC=180/Math.PI,Qy={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function gP(t,e,i,n,r,s){var a,c,h;return(a=Math.sqrt(t*t+e*e))&&(t/=a,e/=a),(h=t*i+e*n)&&(i-=t*h,n-=e*h),(c=Math.sqrt(i*i+n*n))&&(i/=c,n/=c,h/=c),t*n<e*i&&(t=-t,e=-e,h=-h,a=-a),{translateX:r,translateY:s,rotate:Math.atan2(e,t)*fC,skewX:Math.atan(h)*fC,scaleX:a,scaleY:c}}var Jf;function g4(t){const e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?Qy:gP(e.a,e.b,e.c,e.d,e.e,e.f)}function m4(t){return t==null||(Jf||(Jf=document.createElementNS("http://www.w3.org/2000/svg","g")),Jf.setAttribute("transform",t),!(t=Jf.transform.baseVal.consolidate()))?Qy:(t=t.matrix,gP(t.a,t.b,t.c,t.d,t.e,t.f))}function mP(t,e,i,n){function r(d){return d.length?d.pop()+" ":""}function s(d,f,g,m,v,S){if(d!==g||f!==m){var _=v.push("translate(",null,e,null,i);S.push({i:_-4,x:Kr(d,g)},{i:_-2,x:Kr(f,m)})}else(g||m)&&v.push("translate("+g+e+m+i)}function a(d,f,g,m){d!==f?(d-f>180?f+=360:f-d>180&&(d+=360),m.push({i:g.push(r(g)+"rotate(",null,n)-2,x:Kr(d,f)})):f&&g.push(r(g)+"rotate("+f+n)}function c(d,f,g,m){d!==f?m.push({i:g.push(r(g)+"skewX(",null,n)-2,x:Kr(d,f)}):f&&g.push(r(g)+"skewX("+f+n)}function h(d,f,g,m,v,S){if(d!==g||f!==m){var _=v.push(r(v)+"scale(",null,",",null,")");S.push({i:_-4,x:Kr(d,g)},{i:_-2,x:Kr(f,m)})}else(g!==1||m!==1)&&v.push(r(v)+"scale("+g+","+m+")")}return function(d,f){var g=[],m=[];return d=t(d),f=t(f),s(d.translateX,d.translateY,f.translateX,f.translateY,g,m),a(d.rotate,f.rotate,g,m),c(d.skewX,f.skewX,g,m),h(d.scaleX,d.scaleY,f.scaleX,f.scaleY,g,m),d=f=null,function(v){for(var S=-1,_=m.length,w;++S<_;)g[(w=m[S]).i]=w.x(v);return g.join("")}}}var O4=mP(g4,"px, ","px)","deg)"),v4=mP(m4,", ",")",")"),y4=1e-12;function pC(t){return((t=Math.exp(t))+1/t)/2}function S4(t){return((t=Math.exp(t))-1/t)/2}function b4(t){return((t=Math.exp(2*t))-1)/(t+1)}const Zp=(function t(e,i,n){function r(s,a){var c=s[0],h=s[1],d=s[2],f=a[0],g=a[1],m=a[2],v=f-c,S=g-h,_=v*v+S*S,w,x;if(_<y4)x=Math.log(m/d)/e,w=function(M){return[c+M*v,h+M*S,d*Math.exp(e*M*x)]};else{var Q=Math.sqrt(_),C=(m*m-d*d+n*_)/(2*d*i*Q),T=(m*m-d*d-n*_)/(2*m*i*Q),A=Math.log(Math.sqrt(C*C+1)-C),P=Math.log(Math.sqrt(T*T+1)-T);x=(P-A)/e,w=function(M){var V=M*x,H=pC(A),G=d/(i*Q)*(H*b4(e*V+A)-S4(A));return[c+G*v,h+G*S,d*H/pC(e*V+A)]}}return w.duration=x*1e3*e/Math.SQRT2,w}return r.rho=function(s){var a=Math.max(.001,+s),c=a*a,h=c*c;return t(a,c,h)},r})(Math.SQRT2,2,4);var Tc=0,fu=0,Hh=0,OP=1e3,Og,pu,vg=0,il=0,dm=0,Du=typeof performance=="object"&&performance.now?performance:Date,vP=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function Q1(){return il||(vP(_4),il=Du.now()+dm)}function _4(){il=0}function yg(){this._call=this._time=this._next=null}yg.prototype=yP.prototype={constructor:yg,restart:function(t,e,i){if(typeof t!="function")throw new TypeError("callback is not a function");i=(i==null?Q1():+i)+(e==null?0:+e),!this._next&&pu!==this&&(pu?pu._next=this:Og=this,pu=this),this._call=t,this._time=i,$y()},stop:function(){this._call&&(this._call=null,this._time=1/0,$y())}};function yP(t,e,i){var n=new yg;return n.restart(t,e,i),n}function x4(){Q1(),++Tc;for(var t=Og,e;t;)(e=il-t._time)>=0&&t._call.call(void 0,e),t=t._next;--Tc}function gC(){il=(vg=Du.now())+dm,Tc=fu=0;try{x4()}finally{Tc=0,k4(),il=0}}function w4(){var t=Du.now(),e=t-vg;e>OP&&(dm-=e,vg=t)}function k4(){for(var t,e=Og,i,n=1/0;e;)e._call?(n>e._time&&(n=e._time),t=e,e=e._next):(i=e._next,e._next=null,e=t?t._next=i:Og=i);pu=t,$y(n)}function $y(t){if(!Tc){fu&&(fu=clearTimeout(fu));var e=t-il;e>24?(t<1/0&&(fu=setTimeout(gC,t-Du.now()-dm)),Hh&&(Hh=clearInterval(Hh))):(Hh||(vg=Du.now(),Hh=setInterval(w4,OP)),Tc=1,vP(gC))}}function mC(t,e,i){var n=new yg;return e=e==null?0:+e,n.restart(r=>{n.stop(),t(r+e)},e,i),n}var C4=hm("start","end","cancel","interrupt"),T4=[],SP=0,OC=1,Py=2,Wp=3,vC=4,Ey=5,qp=6;function fm(t,e,i,n,r,s){var a=t.__transition;if(!a)t.__transition={};else if(i in a)return;Q4(t,i,{name:e,index:n,group:r,on:C4,tween:T4,time:s.time,delay:s.delay,duration:s.duration,ease:s.ease,timer:null,state:SP})}function $1(t,e){var i=Ar(t,e);if(i.state>SP)throw new Error("too late; already scheduled");return i}function ds(t,e){var i=Ar(t,e);if(i.state>Wp)throw new Error("too late; already running");return i}function Ar(t,e){var i=t.__transition;if(!i||!(i=i[e]))throw new Error("transition not found");return i}function Q4(t,e,i){var n=t.__transition,r;n[e]=i,i.timer=yP(s,0,i.time);function s(d){i.state=OC,i.timer.restart(a,i.delay,i.time),i.delay<=d&&a(d-i.delay)}function a(d){var f,g,m,v;if(i.state!==OC)return h();for(f in n)if(v=n[f],v.name===i.name){if(v.state===Wp)return mC(a);v.state===vC?(v.state=qp,v.timer.stop(),v.on.call("interrupt",t,t.__data__,v.index,v.group),delete n[f]):+f<e&&(v.state=qp,v.timer.stop(),v.on.call("cancel",t,t.__data__,v.index,v.group),delete n[f])}if(mC(function(){i.state===Wp&&(i.state=vC,i.timer.restart(c,i.delay,i.time),c(d))}),i.state=Py,i.on.call("start",t,t.__data__,i.index,i.group),i.state===Py){for(i.state=Wp,r=new Array(m=i.tween.length),f=0,g=-1;f<m;++f)(v=i.tween[f].value.call(t,t.__data__,i.index,i.group))&&(r[++g]=v);r.length=g+1}}function c(d){for(var f=d<i.duration?i.ease.call(null,d/i.duration):(i.timer.restart(h),i.state=Ey,1),g=-1,m=r.length;++g<m;)r[g].call(t,f);i.state===Ey&&(i.on.call("end",t,t.__data__,i.index,i.group),h())}function h(){i.state=qp,i.timer.stop(),delete n[e];for(var d in n)return;delete t.__transition}}function Ip(t,e){var i=t.__transition,n,r,s=!0,a;if(i){e=e==null?null:e+"";for(a in i){if((n=i[a]).name!==e){s=!1;continue}r=n.state>Py&&n.state<Ey,n.state=qp,n.timer.stop(),n.on.call(r?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete i[a]}s&&delete t.__transition}}function $4(t){return this.each(function(){Ip(this,t)})}function P4(t,e){var i,n;return function(){var r=ds(this,t),s=r.tween;if(s!==i){n=i=s;for(var a=0,c=n.length;a<c;++a)if(n[a].name===e){n=n.slice(),n.splice(a,1);break}}r.tween=n}}function E4(t,e,i){var n,r;if(typeof i!="function")throw new Error;return function(){var s=ds(this,t),a=s.tween;if(a!==n){r=(n=a).slice();for(var c={name:e,value:i},h=0,d=r.length;h<d;++h)if(r[h].name===e){r[h]=c;break}h===d&&r.push(c)}s.tween=r}}function R4(t,e){var i=this._id;if(t+="",arguments.length<2){for(var n=Ar(this.node(),i).tween,r=0,s=n.length,a;r<s;++r)if((a=n[r]).name===t)return a.value;return null}return this.each((e==null?P4:E4)(i,t,e))}function P1(t,e,i){var n=t._id;return t.each(function(){var r=ds(this,n);(r.value||(r.value={}))[e]=i.apply(this,arguments)}),function(r){return Ar(r,n).value[e]}}function bP(t,e){var i;return(typeof e=="number"?Kr:e instanceof tl?mg:(i=tl(e))?(e=i,mg):pP)(t,e)}function A4(t){return function(){this.removeAttribute(t)}}function M4(t){return function(){this.removeAttributeNS(t.space,t.local)}}function z4(t,e,i){var n,r=i+"",s;return function(){var a=this.getAttribute(t);return a===r?null:a===n?s:s=e(n=a,i)}}function j4(t,e,i){var n,r=i+"",s;return function(){var a=this.getAttributeNS(t.space,t.local);return a===r?null:a===n?s:s=e(n=a,i)}}function D4(t,e,i){var n,r,s;return function(){var a,c=i(this),h;return c==null?void this.removeAttribute(t):(a=this.getAttribute(t),h=c+"",a===h?null:a===n&&h===r?s:(r=h,s=e(n=a,c)))}}function B4(t,e,i){var n,r,s;return function(){var a,c=i(this),h;return c==null?void this.removeAttributeNS(t.space,t.local):(a=this.getAttributeNS(t.space,t.local),h=c+"",a===h?null:a===n&&h===r?s:(r=h,s=e(n=a,c)))}}function L4(t,e){var i=um(t),n=i==="transform"?v4:bP;return this.attrTween(t,typeof e=="function"?(i.local?B4:D4)(i,n,P1(this,"attr."+t,e)):e==null?(i.local?M4:A4)(i):(i.local?j4:z4)(i,n,e))}function X4(t,e){return function(i){this.setAttribute(t,e.call(this,i))}}function N4(t,e){return function(i){this.setAttributeNS(t.space,t.local,e.call(this,i))}}function Z4(t,e){var i,n;function r(){var s=e.apply(this,arguments);return s!==n&&(i=(n=s)&&N4(t,s)),i}return r._value=e,r}function W4(t,e){var i,n;function r(){var s=e.apply(this,arguments);return s!==n&&(i=(n=s)&&X4(t,s)),i}return r._value=e,r}function q4(t,e){var i="attr."+t;if(arguments.length<2)return(i=this.tween(i))&&i._value;if(e==null)return this.tween(i,null);if(typeof e!="function")throw new Error;var n=um(t);return this.tween(i,(n.local?Z4:W4)(n,e))}function I4(t,e){return function(){$1(this,t).delay=+e.apply(this,arguments)}}function V4(t,e){return e=+e,function(){$1(this,t).delay=e}}function Y4(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?I4:V4)(e,t)):Ar(this.node(),e).delay}function H4(t,e){return function(){ds(this,t).duration=+e.apply(this,arguments)}}function U4(t,e){return e=+e,function(){ds(this,t).duration=e}}function G4(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?H4:U4)(e,t)):Ar(this.node(),e).duration}function F4(t,e){if(typeof e!="function")throw new Error;return function(){ds(this,t).ease=e}}function K4(t){var e=this._id;return arguments.length?this.each(F4(e,t)):Ar(this.node(),e).ease}function J4(t,e){return function(){var i=e.apply(this,arguments);if(typeof i!="function")throw new Error;ds(this,t).ease=i}}function eL(t){if(typeof t!="function")throw new Error;return this.each(J4(this._id,t))}function tL(t){typeof t!="function"&&(t=K$(t));for(var e=this._groups,i=e.length,n=new Array(i),r=0;r<i;++r)for(var s=e[r],a=s.length,c=n[r]=[],h,d=0;d<a;++d)(h=s[d])&&t.call(h,h.__data__,d,s)&&c.push(h);return new Us(n,this._parents,this._name,this._id)}function iL(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,i=t._groups,n=e.length,r=i.length,s=Math.min(n,r),a=new Array(n),c=0;c<s;++c)for(var h=e[c],d=i[c],f=h.length,g=a[c]=new Array(f),m,v=0;v<f;++v)(m=h[v]||d[v])&&(g[v]=m);for(;c<n;++c)a[c]=e[c];return new Us(a,this._parents,this._name,this._id)}function nL(t){return(t+"").trim().split(/^|\s+/).every(function(e){var i=e.indexOf(".");return i>=0&&(e=e.slice(0,i)),!e||e==="start"})}function rL(t,e,i){var n,r,s=nL(e)?$1:ds;return function(){var a=s(this,t),c=a.on;c!==n&&(r=(n=c).copy()).on(e,i),a.on=r}}function sL(t,e){var i=this._id;return arguments.length<2?Ar(this.node(),i).on.on(t):this.each(rL(i,t,e))}function oL(t){return function(){var e=this.parentNode;for(var i in this.__transition)if(+i!==t)return;e&&e.removeChild(this)}}function aL(){return this.on("end.remove",oL(this._id))}function lL(t){var e=this._name,i=this._id;typeof t!="function"&&(t=w1(t));for(var n=this._groups,r=n.length,s=new Array(r),a=0;a<r;++a)for(var c=n[a],h=c.length,d=s[a]=new Array(h),f,g,m=0;m<h;++m)(f=c[m])&&(g=t.call(f,f.__data__,m,c))&&("__data__"in f&&(g.__data__=f.__data__),d[m]=g,fm(d[m],e,i,m,d,Ar(f,i)));return new Us(s,this._parents,e,i)}function cL(t){var e=this._name,i=this._id;typeof t!="function"&&(t=F$(t));for(var n=this._groups,r=n.length,s=[],a=[],c=0;c<r;++c)for(var h=n[c],d=h.length,f,g=0;g<d;++g)if(f=h[g]){for(var m=t.call(f,f.__data__,g,h),v,S=Ar(f,i),_=0,w=m.length;_<w;++_)(v=m[_])&&fm(v,e,i,_,m,S);s.push(m),a.push(f)}return new Us(s,a,e,i)}var hL=ud.prototype.constructor;function uL(){return new hL(this._groups,this._parents)}function dL(t,e){var i,n,r;return function(){var s=Cc(this,t),a=(this.style.removeProperty(t),Cc(this,t));return s===a?null:s===i&&a===n?r:r=e(i=s,n=a)}}function _P(t){return function(){this.style.removeProperty(t)}}function fL(t,e,i){var n,r=i+"",s;return function(){var a=Cc(this,t);return a===r?null:a===n?s:s=e(n=a,i)}}function pL(t,e,i){var n,r,s;return function(){var a=Cc(this,t),c=i(this),h=c+"";return c==null&&(h=c=(this.style.removeProperty(t),Cc(this,t))),a===h?null:a===n&&h===r?s:(r=h,s=e(n=a,c))}}function gL(t,e){var i,n,r,s="style."+e,a="end."+s,c;return function(){var h=ds(this,t),d=h.on,f=h.value[s]==null?c||(c=_P(e)):void 0;(d!==i||r!==f)&&(n=(i=d).copy()).on(a,r=f),h.on=n}}function mL(t,e,i){var n=(t+="")=="transform"?O4:bP;return e==null?this.styleTween(t,dL(t,n)).on("end.style."+t,_P(t)):typeof e=="function"?this.styleTween(t,pL(t,n,P1(this,"style."+t,e))).each(gL(this._id,t)):this.styleTween(t,fL(t,n,e),i).on("end.style."+t,null)}function OL(t,e,i){return function(n){this.style.setProperty(t,e.call(this,n),i)}}function vL(t,e,i){var n,r;function s(){var a=e.apply(this,arguments);return a!==r&&(n=(r=a)&&OL(t,a,i)),n}return s._value=e,s}function yL(t,e,i){var n="style."+(t+="");if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,vL(t,e,i??""))}function SL(t){return function(){this.textContent=t}}function bL(t){return function(){var e=t(this);this.textContent=e??""}}function _L(t){return this.tween("text",typeof t=="function"?bL(P1(this,"text",t)):SL(t==null?"":t+""))}function xL(t){return function(e){this.textContent=t.call(this,e)}}function wL(t){var e,i;function n(){var r=t.apply(this,arguments);return r!==i&&(e=(i=r)&&xL(r)),e}return n._value=t,n}function kL(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,wL(t))}function CL(){for(var t=this._name,e=this._id,i=xP(),n=this._groups,r=n.length,s=0;s<r;++s)for(var a=n[s],c=a.length,h,d=0;d<c;++d)if(h=a[d]){var f=Ar(h,e);fm(h,t,i,d,a,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Us(n,this._parents,t,i)}function TL(){var t,e,i=this,n=i._id,r=i.size();return new Promise(function(s,a){var c={value:a},h={value:function(){--r===0&&s()}};i.each(function(){var d=ds(this,n),f=d.on;f!==t&&(e=(t=f).copy(),e._.cancel.push(c),e._.interrupt.push(c),e._.end.push(h)),d.on=e}),r===0&&s()})}var QL=0;function Us(t,e,i,n){this._groups=t,this._parents=e,this._name=i,this._id=n}function xP(){return++QL}var zs=ud.prototype;Us.prototype={constructor:Us,select:lL,selectAll:cL,selectChild:zs.selectChild,selectChildren:zs.selectChildren,filter:tL,merge:iL,selection:uL,transition:CL,call:zs.call,nodes:zs.nodes,node:zs.node,size:zs.size,empty:zs.empty,each:zs.each,on:sL,attr:L4,attrTween:q4,style:mL,styleTween:yL,text:_L,textTween:kL,remove:aL,tween:R4,delay:Y4,duration:G4,ease:K4,easeVarying:eL,end:TL,[Symbol.iterator]:zs[Symbol.iterator]};function $L(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var PL={time:null,delay:0,duration:250,ease:$L};function EL(t,e){for(var i;!(i=t.__transition)||!(i=i[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return i}function RL(t){var e,i;t instanceof Us?(e=t._id,t=t._name):(e=xP(),(i=PL).time=Q1(),t=t==null?null:t+"");for(var n=this._groups,r=n.length,s=0;s<r;++s)for(var a=n[s],c=a.length,h,d=0;d<c;++d)(h=a[d])&&fm(h,t,e,d,a,i||EL(h,e));return new Us(n,this._parents,t,e)}ud.prototype.interrupt=$4;ud.prototype.transition=RL;const ep=t=>()=>t;function AL(t,{sourceEvent:e,target:i,transform:n,dispatch:r}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:i,enumerable:!0,configurable:!0},transform:{value:n,enumerable:!0,configurable:!0},_:{value:r}})}function Is(t,e,i){this.k=t,this.x=e,this.y=i}Is.prototype={constructor:Is,scale:function(t){return t===1?this:new Is(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Is(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var pm=new Is(1,0,0);wP.prototype=Is.prototype;function wP(t){for(;!t.__zoom;)if(!(t=t.parentNode))return pm;return t.__zoom}function ov(t){t.stopImmediatePropagation()}function Uh(t){t.preventDefault(),t.stopImmediatePropagation()}function ML(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function zL(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function yC(){return this.__zoom||pm}function jL(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function DL(){return navigator.maxTouchPoints||"ontouchstart"in this}function BL(t,e,i){var n=t.invertX(e[0][0])-i[0][0],r=t.invertX(e[1][0])-i[1][0],s=t.invertY(e[0][1])-i[0][1],a=t.invertY(e[1][1])-i[1][1];return t.translate(r>n?(n+r)/2:Math.min(0,n)||Math.max(0,r),a>s?(s+a)/2:Math.min(0,s)||Math.max(0,a))}function kP(){var t=ML,e=zL,i=BL,n=jL,r=DL,s=[0,1/0],a=[[-1/0,-1/0],[1/0,1/0]],c=250,h=Zp,d=hm("start","zoom","end"),f,g,m,v=500,S=150,_=0,w=10;function x(E){E.property("__zoom",yC).on("wheel.zoom",V,{passive:!1}).on("mousedown.zoom",H).on("dblclick.zoom",G).filter(r).on("touchstart.zoom",N).on("touchmove.zoom",j).on("touchend.zoom touchcancel.zoom",B).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}x.transform=function(E,W,$,Z){var z=E.selection?E.selection():E;z.property("__zoom",yC),E!==z?A(E,W,$,Z):z.interrupt().each(function(){P(this,arguments).event(Z).start().zoom(null,typeof W=="function"?W.apply(this,arguments):W).end()})},x.scaleBy=function(E,W,$,Z){x.scaleTo(E,function(){var z=this.__zoom.k,L=typeof W=="function"?W.apply(this,arguments):W;return z*L},$,Z)},x.scaleTo=function(E,W,$,Z){x.transform(E,function(){var z=e.apply(this,arguments),L=this.__zoom,U=$==null?T(z):typeof $=="function"?$.apply(this,arguments):$,D=L.invert(U),I=typeof W=="function"?W.apply(this,arguments):W;return i(C(Q(L,I),U,D),z,a)},$,Z)},x.translateBy=function(E,W,$,Z){x.transform(E,function(){return i(this.__zoom.translate(typeof W=="function"?W.apply(this,arguments):W,typeof $=="function"?$.apply(this,arguments):$),e.apply(this,arguments),a)},null,Z)},x.translateTo=function(E,W,$,Z,z){x.transform(E,function(){var L=e.apply(this,arguments),U=this.__zoom,D=Z==null?T(L):typeof Z=="function"?Z.apply(this,arguments):Z;return i(pm.translate(D[0],D[1]).scale(U.k).translate(typeof W=="function"?-W.apply(this,arguments):-W,typeof $=="function"?-$.apply(this,arguments):-$),L,a)},Z,z)};function Q(E,W){return W=Math.max(s[0],Math.min(s[1],W)),W===E.k?E:new Is(W,E.x,E.y)}function C(E,W,$){var Z=W[0]-$[0]*E.k,z=W[1]-$[1]*E.k;return Z===E.x&&z===E.y?E:new Is(E.k,Z,z)}function T(E){return[(+E[0][0]+ +E[1][0])/2,(+E[0][1]+ +E[1][1])/2]}function A(E,W,$,Z){E.on("start.zoom",function(){P(this,arguments).event(Z).start()}).on("interrupt.zoom end.zoom",function(){P(this,arguments).event(Z).end()}).tween("zoom",function(){var z=this,L=arguments,U=P(z,L).event(Z),D=e.apply(z,L),I=$==null?T(D):typeof $=="function"?$.apply(z,L):$,J=Math.max(D[1][0]-D[0][0],D[1][1]-D[0][1]),ne=z.__zoom,ce=typeof W=="function"?W.apply(z,L):W,de=h(ne.invert(I).concat(J/ne.k),ce.invert(I).concat(J/ce.k));return function(pe){if(pe===1)pe=ce;else{var fe=de(pe),Oe=J/fe[2];pe=new Is(Oe,I[0]-fe[0]*Oe,I[1]-fe[1]*Oe)}U.zoom(null,pe)}})}function P(E,W,$){return!$&&E.__zooming||new M(E,W)}function M(E,W){this.that=E,this.args=W,this.active=0,this.sourceEvent=null,this.extent=e.apply(E,W),this.taps=0}M.prototype={event:function(E){return E&&(this.sourceEvent=E),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(E,W){return this.mouse&&E!=="mouse"&&(this.mouse[1]=W.invert(this.mouse[0])),this.touch0&&E!=="touch"&&(this.touch0[1]=W.invert(this.touch0[0])),this.touch1&&E!=="touch"&&(this.touch1[1]=W.invert(this.touch1[0])),this.that.__zoom=W,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(E){var W=Vn(this.that).datum();d.call(E,this.that,new AL(E,{sourceEvent:this.sourceEvent,target:x,transform:this.that.__zoom,dispatch:d}),W)}};function V(E,...W){if(!t.apply(this,arguments))return;var $=P(this,W).event(E),Z=this.__zoom,z=Math.max(s[0],Math.min(s[1],Z.k*Math.pow(2,n.apply(this,arguments)))),L=Cr(E);if($.wheel)($.mouse[0][0]!==L[0]||$.mouse[0][1]!==L[1])&&($.mouse[1]=Z.invert($.mouse[0]=L)),clearTimeout($.wheel);else{if(Z.k===z)return;$.mouse=[L,Z.invert(L)],Ip(this),$.start()}Uh(E),$.wheel=setTimeout(U,S),$.zoom("mouse",i(C(Q(Z,z),$.mouse[0],$.mouse[1]),$.extent,a));function U(){$.wheel=null,$.end()}}function H(E,...W){if(m||!t.apply(this,arguments))return;var $=E.currentTarget,Z=P(this,W,!0).event(E),z=Vn(E.view).on("mousemove.zoom",I,!0).on("mouseup.zoom",J,!0),L=Cr(E,$),U=E.clientX,D=E.clientY;lP(E.view),ov(E),Z.mouse=[L,this.__zoom.invert(L)],Ip(this),Z.start();function I(ne){if(Uh(ne),!Z.moved){var ce=ne.clientX-U,de=ne.clientY-D;Z.moved=ce*ce+de*de>_}Z.event(ne).zoom("mouse",i(C(Z.that.__zoom,Z.mouse[0]=Cr(ne,$),Z.mouse[1]),Z.extent,a))}function J(ne){z.on("mousemove.zoom mouseup.zoom",null),cP(ne.view,Z.moved),Uh(ne),Z.event(ne).end()}}function G(E,...W){if(t.apply(this,arguments)){var $=this.__zoom,Z=Cr(E.changedTouches?E.changedTouches[0]:E,this),z=$.invert(Z),L=$.k*(E.shiftKey?.5:2),U=i(C(Q($,L),Z,z),e.apply(this,W),a);Uh(E),c>0?Vn(this).transition().duration(c).call(A,U,Z,E):Vn(this).call(x.transform,U,Z,E)}}function N(E,...W){if(t.apply(this,arguments)){var $=E.touches,Z=$.length,z=P(this,W,E.changedTouches.length===Z).event(E),L,U,D,I;for(ov(E),U=0;U<Z;++U)D=$[U],I=Cr(D,this),I=[I,this.__zoom.invert(I),D.identifier],z.touch0?!z.touch1&&z.touch0[2]!==I[2]&&(z.touch1=I,z.taps=0):(z.touch0=I,L=!0,z.taps=1+!!f);f&&(f=clearTimeout(f)),L&&(z.taps<2&&(g=I[0],f=setTimeout(function(){f=null},v)),Ip(this),z.start())}}function j(E,...W){if(this.__zooming){var $=P(this,W).event(E),Z=E.changedTouches,z=Z.length,L,U,D,I;for(Uh(E),L=0;L<z;++L)U=Z[L],D=Cr(U,this),$.touch0&&$.touch0[2]===U.identifier?$.touch0[0]=D:$.touch1&&$.touch1[2]===U.identifier&&($.touch1[0]=D);if(U=$.that.__zoom,$.touch1){var J=$.touch0[0],ne=$.touch0[1],ce=$.touch1[0],de=$.touch1[1],pe=(pe=ce[0]-J[0])*pe+(pe=ce[1]-J[1])*pe,fe=(fe=de[0]-ne[0])*fe+(fe=de[1]-ne[1])*fe;U=Q(U,Math.sqrt(pe/fe)),D=[(J[0]+ce[0])/2,(J[1]+ce[1])/2],I=[(ne[0]+de[0])/2,(ne[1]+de[1])/2]}else if($.touch0)D=$.touch0[0],I=$.touch0[1];else return;$.zoom("touch",i(C(U,D,I),$.extent,a))}}function B(E,...W){if(this.__zooming){var $=P(this,W).event(E),Z=E.changedTouches,z=Z.length,L,U;for(ov(E),m&&clearTimeout(m),m=setTimeout(function(){m=null},v),L=0;L<z;++L)U=Z[L],$.touch0&&$.touch0[2]===U.identifier?delete $.touch0:$.touch1&&$.touch1[2]===U.identifier&&delete $.touch1;if($.touch1&&!$.touch0&&($.touch0=$.touch1,delete $.touch1),$.touch0)$.touch0[1]=this.__zoom.invert($.touch0[0]);else if($.end(),$.taps===2&&(U=Cr(U,this),Math.hypot(g[0]-U[0],g[1]-U[1])<w)){var D=Vn(this).on("dblclick.zoom");D&&D.apply(this,arguments)}}}return x.wheelDelta=function(E){return arguments.length?(n=typeof E=="function"?E:ep(+E),x):n},x.filter=function(E){return arguments.length?(t=typeof E=="function"?E:ep(!!E),x):t},x.touchable=function(E){return arguments.length?(r=typeof E=="function"?E:ep(!!E),x):r},x.extent=function(E){return arguments.length?(e=typeof E=="function"?E:ep([[+E[0][0],+E[0][1]],[+E[1][0],+E[1][1]]]),x):e},x.scaleExtent=function(E){return arguments.length?(s[0]=+E[0],s[1]=+E[1],x):[s[0],s[1]]},x.translateExtent=function(E){return arguments.length?(a[0][0]=+E[0][0],a[1][0]=+E[1][0],a[0][1]=+E[0][1],a[1][1]=+E[1][1],x):[[a[0][0],a[0][1]],[a[1][0],a[1][1]]]},x.constrain=function(E){return arguments.length?(i=E,x):i},x.duration=function(E){return arguments.length?(c=+E,x):c},x.interpolate=function(E){return arguments.length?(h=E,x):h},x.on=function(){var E=d.on.apply(d,arguments);return E===d?x:E},x.clickDistance=function(E){return arguments.length?(_=(E=+E)*E,x):Math.sqrt(_)},x.tapDistance=function(E){return arguments.length?(w=+E,x):w},x}const hs={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,{id:e,sourceHandle:i,targetHandle:n})=>`Couldn't create edge for ${t} handle id: "${t==="source"?i:n}", edge id: ${e}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(t="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${t}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},Bu=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],CP=["Enter"," ","Escape"],TP={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:t,x:e,y:i})=>`Moved selected node ${t}. New position, x: ${e}, y: ${i}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var Qc;(function(t){t.Strict="strict",t.Loose="loose"})(Qc||(Qc={}));var Fa;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(Fa||(Fa={}));var Lu;(function(t){t.Partial="partial",t.Full="full"})(Lu||(Lu={}));const QP={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Fo;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Fo||(Fo={}));var Sg;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(Sg||(Sg={}));var Re;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(Re||(Re={}));const SC={[Re.Left]:Re.Right,[Re.Right]:Re.Left,[Re.Top]:Re.Bottom,[Re.Bottom]:Re.Top};function $P(t){return t===null?null:t?"valid":"invalid"}const PP=t=>"id"in t&&"source"in t&&"target"in t,LL=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),E1=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),fd=(t,e=[0,0])=>{const{width:i,height:n}=Js(t),r=t.origin??e,s=i*r[0],a=n*r[1];return{x:t.position.x-s,y:t.position.y-a}},XL=(t,e={nodeOrigin:[0,0]})=>{if(t.length===0)return{x:0,y:0,width:0,height:0};const i=t.reduce((n,r)=>{const s=typeof r=="string";let a=!e.nodeLookup&&!s?r:void 0;e.nodeLookup&&(a=s?e.nodeLookup.get(r):E1(r)?r:e.nodeLookup.get(r.id));const c=a?bg(a,e.nodeOrigin):{x:0,y:0,x2:0,y2:0};return gm(n,c)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return mm(i)},pd=(t,e={})=>{let i={x:1/0,y:1/0,x2:-1/0,y2:-1/0},n=!1;return t.forEach(r=>{(e.filter===void 0||e.filter(r))&&(i=gm(i,bg(r)),n=!0)}),n?mm(i):{x:0,y:0,width:0,height:0}},R1=(t,e,[i,n,r]=[0,0,1],s=!1,a=!1)=>{const c={...md(e,[i,n,r]),width:e.width/r,height:e.height/r},h=[];for(const d of t.values()){const{measured:f,selectable:g=!0,hidden:m=!1}=d;if(a&&!g||m)continue;const v=f.width??d.width??d.initialWidth??null,S=f.height??d.height??d.initialHeight??null,_=Xu(c,Pc(d)),w=(v??0)*(S??0),x=s&&_>0;(!d.internals.handleBounds||x||_>=w||d.dragging)&&h.push(d)}return h},NL=(t,e)=>{const i=new Set;return t.forEach(n=>{i.add(n.id)}),e.filter(n=>i.has(n.source)||i.has(n.target))};function ZL(t,e){const i=new Map,n=e!=null&&e.nodes?new Set(e.nodes.map(r=>r.id)):null;return t.forEach(r=>{r.measured.width&&r.measured.height&&((e==null?void 0:e.includeHiddenNodes)||!r.hidden)&&(!n||n.has(r.id))&&i.set(r.id,r)}),i}async function WL({nodes:t,width:e,height:i,panZoom:n,minZoom:r,maxZoom:s},a){if(t.size===0)return Promise.resolve(!0);const c=ZL(t,a),h=pd(c),d=A1(h,e,i,(a==null?void 0:a.minZoom)??r,(a==null?void 0:a.maxZoom)??s,(a==null?void 0:a.padding)??.1);return await n.setViewport(d,{duration:a==null?void 0:a.duration,ease:a==null?void 0:a.ease,interpolate:a==null?void 0:a.interpolate}),Promise.resolve(!0)}function EP({nodeId:t,nextPosition:e,nodeLookup:i,nodeOrigin:n=[0,0],nodeExtent:r,onError:s}){const a=i.get(t),c=a.parentId?i.get(a.parentId):void 0,{x:h,y:d}=c?c.internals.positionAbsolute:{x:0,y:0},f=a.origin??n;let g=a.extent||r;if(a.extent==="parent"&&!a.expandParent)if(!c)s==null||s("005",hs.error005());else{const v=c.measured.width,S=c.measured.height;v&&S&&(g=[[h,d],[h+v,d+S]])}else c&&Ec(a.extent)&&(g=[[a.extent[0][0]+h,a.extent[0][1]+d],[a.extent[1][0]+h,a.extent[1][1]+d]]);const m=Ec(g)?nl(e,g,a.measured):e;return(a.measured.width===void 0||a.measured.height===void 0)&&(s==null||s("015",hs.error015())),{position:{x:m.x-h+(a.measured.width??0)*f[0],y:m.y-d+(a.measured.height??0)*f[1]},positionAbsolute:m}}async function qL({nodesToRemove:t=[],edgesToRemove:e=[],nodes:i,edges:n,onBeforeDelete:r}){const s=new Set(t.map(m=>m.id)),a=[];for(const m of i){if(m.deletable===!1)continue;const v=s.has(m.id),S=!v&&m.parentId&&a.find(_=>_.id===m.parentId);(v||S)&&a.push(m)}const c=new Set(e.map(m=>m.id)),h=n.filter(m=>m.deletable!==!1),f=NL(a,h);for(const m of h)c.has(m.id)&&!f.find(S=>S.id===m.id)&&f.push(m);if(!r)return{edges:f,nodes:a};const g=await r({nodes:a,edges:f});return typeof g=="boolean"?g?{edges:f,nodes:a}:{edges:[],nodes:[]}:g}const $c=(t,e=0,i=1)=>Math.min(Math.max(t,e),i),nl=(t={x:0,y:0},e,i)=>({x:$c(t.x,e[0][0],e[1][0]-((i==null?void 0:i.width)??0)),y:$c(t.y,e[0][1],e[1][1]-((i==null?void 0:i.height)??0))});function RP(t,e,i){const{width:n,height:r}=Js(i),{x:s,y:a}=i.internals.positionAbsolute;return nl(t,[[s,a],[s+n,a+r]],e)}const bC=(t,e,i)=>t<e?$c(Math.abs(t-e),1,e)/e:t>i?-$c(Math.abs(t-i),1,e)/e:0,AP=(t,e,i=15,n=40)=>{const r=bC(t.x,n,e.width-n)*i,s=bC(t.y,n,e.height-n)*i;return[r,s]},gm=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),Ry=({x:t,y:e,width:i,height:n})=>({x:t,y:e,x2:t+i,y2:e+n}),mm=({x:t,y:e,x2:i,y2:n})=>({x:t,y:e,width:i-t,height:n-e}),Pc=(t,e=[0,0])=>{var r,s;const{x:i,y:n}=E1(t)?t.internals.positionAbsolute:fd(t,e);return{x:i,y:n,width:((r=t.measured)==null?void 0:r.width)??t.width??t.initialWidth??0,height:((s=t.measured)==null?void 0:s.height)??t.height??t.initialHeight??0}},bg=(t,e=[0,0])=>{var r,s;const{x:i,y:n}=E1(t)?t.internals.positionAbsolute:fd(t,e);return{x:i,y:n,x2:i+(((r=t.measured)==null?void 0:r.width)??t.width??t.initialWidth??0),y2:n+(((s=t.measured)==null?void 0:s.height)??t.height??t.initialHeight??0)}},MP=(t,e)=>mm(gm(Ry(t),Ry(e))),Xu=(t,e)=>{const i=Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)),n=Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y));return Math.ceil(i*n)},_C=t=>$r(t.width)&&$r(t.height)&&$r(t.x)&&$r(t.y),$r=t=>!isNaN(t)&&isFinite(t),IL=(t,e)=>{},gd=(t,e=[1,1])=>({x:e[0]*Math.round(t.x/e[0]),y:e[1]*Math.round(t.y/e[1])}),md=({x:t,y:e},[i,n,r],s=!1,a=[1,1])=>{const c={x:(t-i)/r,y:(e-n)/r};return s?gd(c,a):c},_g=({x:t,y:e},[i,n,r])=>({x:t*r+i,y:e*r+n});function ec(t,e){if(typeof t=="number")return Math.floor((e-e/(1+t))*.5);if(typeof t=="string"&&t.endsWith("px")){const i=parseFloat(t);if(!Number.isNaN(i))return Math.floor(i)}if(typeof t=="string"&&t.endsWith("%")){const i=parseFloat(t);if(!Number.isNaN(i))return Math.floor(e*i*.01)}return console.error(`[React Flow] The padding value "${t}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function VL(t,e,i){if(typeof t=="string"||typeof t=="number"){const n=ec(t,i),r=ec(t,e);return{top:n,right:r,bottom:n,left:r,x:r*2,y:n*2}}if(typeof t=="object"){const n=ec(t.top??t.y??0,i),r=ec(t.bottom??t.y??0,i),s=ec(t.left??t.x??0,e),a=ec(t.right??t.x??0,e);return{top:n,right:a,bottom:r,left:s,x:s+a,y:n+r}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function YL(t,e,i,n,r,s){const{x:a,y:c}=_g(t,[e,i,n]),{x:h,y:d}=_g({x:t.x+t.width,y:t.y+t.height},[e,i,n]),f=r-h,g=s-d;return{left:Math.floor(a),top:Math.floor(c),right:Math.floor(f),bottom:Math.floor(g)}}const A1=(t,e,i,n,r,s)=>{const a=VL(s,e,i),c=(e-a.x)/t.width,h=(i-a.y)/t.height,d=Math.min(c,h),f=$c(d,n,r),g=t.x+t.width/2,m=t.y+t.height/2,v=e/2-g*f,S=i/2-m*f,_=YL(t,v,S,f,e,i),w={left:Math.min(_.left-a.left,0),top:Math.min(_.top-a.top,0),right:Math.min(_.right-a.right,0),bottom:Math.min(_.bottom-a.bottom,0)};return{x:v-w.left+w.right,y:S-w.top+w.bottom,zoom:f}},Nu=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0};function Ec(t){return t!=null&&t!=="parent"}function Js(t){var e,i;return{width:((e=t.measured)==null?void 0:e.width)??t.width??t.initialWidth??0,height:((i=t.measured)==null?void 0:i.height)??t.height??t.initialHeight??0}}function zP(t){var e,i;return(((e=t.measured)==null?void 0:e.width)??t.width??t.initialWidth)!==void 0&&(((i=t.measured)==null?void 0:i.height)??t.height??t.initialHeight)!==void 0}function jP(t,e={width:0,height:0},i,n,r){const s={...t},a=n.get(i);if(a){const c=a.origin||r;s.x+=a.internals.positionAbsolute.x-(e.width??0)*c[0],s.y+=a.internals.positionAbsolute.y-(e.height??0)*c[1]}return s}function xC(t,e){if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0}function HL(){let t,e;return{promise:new Promise((n,r)=>{t=n,e=r}),resolve:t,reject:e}}function UL(t){return{...TP,...t||{}}}function wu(t,{snapGrid:e=[0,0],snapToGrid:i=!1,transform:n,containerBounds:r}){const{x:s,y:a}=Pr(t),c=md({x:s-((r==null?void 0:r.left)??0),y:a-((r==null?void 0:r.top)??0)},n),{x:h,y:d}=i?gd(c,e):c;return{xSnapped:h,ySnapped:d,...c}}const M1=t=>({width:t.offsetWidth,height:t.offsetHeight}),DP=t=>{var e;return((e=t==null?void 0:t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},GL=["INPUT","SELECT","TEXTAREA"];function BP(t){var n,r;const e=((r=(n=t.composedPath)==null?void 0:n.call(t))==null?void 0:r[0])||t.target;return(e==null?void 0:e.nodeType)!==1?!1:GL.includes(e.nodeName)||e.hasAttribute("contenteditable")||!!e.closest(".nokey")}const LP=t=>"clientX"in t,Pr=(t,e)=>{var s,a;const i=LP(t),n=i?t.clientX:(s=t.touches)==null?void 0:s[0].clientX,r=i?t.clientY:(a=t.touches)==null?void 0:a[0].clientY;return{x:n-((e==null?void 0:e.left)??0),y:r-((e==null?void 0:e.top)??0)}},wC=(t,e,i,n,r)=>{const s=e.querySelectorAll(`.${t}`);return!s||!s.length?null:Array.from(s).map(a=>{const c=a.getBoundingClientRect();return{id:a.getAttribute("data-handleid"),type:t,nodeId:r,position:a.getAttribute("data-handlepos"),x:(c.left-i.left)/n,y:(c.top-i.top)/n,...M1(a)}})};function XP({sourceX:t,sourceY:e,targetX:i,targetY:n,sourceControlX:r,sourceControlY:s,targetControlX:a,targetControlY:c}){const h=t*.125+r*.375+a*.375+i*.125,d=e*.125+s*.375+c*.375+n*.125,f=Math.abs(h-t),g=Math.abs(d-e);return[h,d,f,g]}function tp(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function kC({pos:t,x1:e,y1:i,x2:n,y2:r,c:s}){switch(t){case Re.Left:return[e-tp(e-n,s),i];case Re.Right:return[e+tp(n-e,s),i];case Re.Top:return[e,i-tp(i-r,s)];case Re.Bottom:return[e,i+tp(r-i,s)]}}function NP({sourceX:t,sourceY:e,sourcePosition:i=Re.Bottom,targetX:n,targetY:r,targetPosition:s=Re.Top,curvature:a=.25}){const[c,h]=kC({pos:i,x1:t,y1:e,x2:n,y2:r,c:a}),[d,f]=kC({pos:s,x1:n,y1:r,x2:t,y2:e,c:a}),[g,m,v,S]=XP({sourceX:t,sourceY:e,targetX:n,targetY:r,sourceControlX:c,sourceControlY:h,targetControlX:d,targetControlY:f});return[`M${t},${e} C${c},${h} ${d},${f} ${n},${r}`,g,m,v,S]}function ZP({sourceX:t,sourceY:e,targetX:i,targetY:n}){const r=Math.abs(i-t)/2,s=i<t?i+r:i-r,a=Math.abs(n-e)/2,c=n<e?n+a:n-a;return[s,c,r,a]}function FL({sourceNode:t,targetNode:e,selected:i=!1,zIndex:n=0,elevateOnSelect:r=!1,zIndexMode:s="basic"}){if(s==="manual")return n;const a=r&&i?n+1e3:n,c=Math.max(t.parentId||r&&t.selected?t.internals.z:0,e.parentId||r&&e.selected?e.internals.z:0);return a+c}function KL({sourceNode:t,targetNode:e,width:i,height:n,transform:r}){const s=gm(bg(t),bg(e));s.x===s.x2&&(s.x2+=1),s.y===s.y2&&(s.y2+=1);const a={x:-r[0]/r[2],y:-r[1]/r[2],width:i/r[2],height:n/r[2]};return Xu(a,mm(s))>0}const JL=({source:t,sourceHandle:e,target:i,targetHandle:n})=>`xy-edge__${t}${e||""}-${i}${n||""}`,e6=(t,e)=>e.some(i=>i.source===t.source&&i.target===t.target&&(i.sourceHandle===t.sourceHandle||!i.sourceHandle&&!t.sourceHandle)&&(i.targetHandle===t.targetHandle||!i.targetHandle&&!t.targetHandle)),t6=(t,e,i={})=>{if(!t.source||!t.target)return e;const n=i.getEdgeId||JL;let r;return PP(t)?r={...t}:r={...t,id:n(t)},e6(r,e)?e:(r.sourceHandle===null&&delete r.sourceHandle,r.targetHandle===null&&delete r.targetHandle,e.concat(r))};function WP({sourceX:t,sourceY:e,targetX:i,targetY:n}){const[r,s,a,c]=ZP({sourceX:t,sourceY:e,targetX:i,targetY:n});return[`M ${t},${e}L ${i},${n}`,r,s,a,c]}const CC={[Re.Left]:{x:-1,y:0},[Re.Right]:{x:1,y:0},[Re.Top]:{x:0,y:-1},[Re.Bottom]:{x:0,y:1}},i6=({source:t,sourcePosition:e=Re.Bottom,target:i})=>e===Re.Left||e===Re.Right?t.x<i.x?{x:1,y:0}:{x:-1,y:0}:t.y<i.y?{x:0,y:1}:{x:0,y:-1},TC=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function n6({source:t,sourcePosition:e=Re.Bottom,target:i,targetPosition:n=Re.Top,center:r,offset:s,stepPosition:a}){const c=CC[e],h=CC[n],d={x:t.x+c.x*s,y:t.y+c.y*s},f={x:i.x+h.x*s,y:i.y+h.y*s},g=i6({source:d,sourcePosition:e,target:f}),m=g.x!==0?"x":"y",v=g[m];let S=[],_,w;const x={x:0,y:0},Q={x:0,y:0},[,,C,T]=ZP({sourceX:t.x,sourceY:t.y,targetX:i.x,targetY:i.y});if(c[m]*h[m]===-1){m==="x"?(_=r.x??d.x+(f.x-d.x)*a,w=r.y??(d.y+f.y)/2):(_=r.x??(d.x+f.x)/2,w=r.y??d.y+(f.y-d.y)*a);const V=[{x:_,y:d.y},{x:_,y:f.y}],H=[{x:d.x,y:w},{x:f.x,y:w}];c[m]===v?S=m==="x"?V:H:S=m==="x"?H:V}else{const V=[{x:d.x,y:f.y}],H=[{x:f.x,y:d.y}];if(m==="x"?S=c.x===v?H:V:S=c.y===v?V:H,e===n){const E=Math.abs(t[m]-i[m]);if(E<=s){const W=Math.min(s-1,s-E);c[m]===v?x[m]=(d[m]>t[m]?-1:1)*W:Q[m]=(f[m]>i[m]?-1:1)*W}}if(e!==n){const E=m==="x"?"y":"x",W=c[m]===h[E],$=d[E]>f[E],Z=d[E]<f[E];(c[m]===1&&(!W&&$||W&&Z)||c[m]!==1&&(!W&&Z||W&&$))&&(S=m==="x"?V:H)}const G={x:d.x+x.x,y:d.y+x.y},N={x:f.x+Q.x,y:f.y+Q.y},j=Math.max(Math.abs(G.x-S[0].x),Math.abs(N.x-S[0].x)),B=Math.max(Math.abs(G.y-S[0].y),Math.abs(N.y-S[0].y));j>=B?(_=(G.x+N.x)/2,w=S[0].y):(_=S[0].x,w=(G.y+N.y)/2)}const A={x:d.x+x.x,y:d.y+x.y},P={x:f.x+Q.x,y:f.y+Q.y};return[[t,...A.x!==S[0].x||A.y!==S[0].y?[A]:[],...S,...P.x!==S[S.length-1].x||P.y!==S[S.length-1].y?[P]:[],i],_,w,C,T]}function r6(t,e,i,n){const r=Math.min(TC(t,e)/2,TC(e,i)/2,n),{x:s,y:a}=e;if(t.x===s&&s===i.x||t.y===a&&a===i.y)return`L${s} ${a}`;if(t.y===a){const d=t.x<i.x?-1:1,f=t.y<i.y?1:-1;return`L ${s+r*d},${a}Q ${s},${a} ${s},${a+r*f}`}const c=t.x<i.x?1:-1,h=t.y<i.y?-1:1;return`L ${s},${a+r*h}Q ${s},${a} ${s+r*c},${a}`}function Ay({sourceX:t,sourceY:e,sourcePosition:i=Re.Bottom,targetX:n,targetY:r,targetPosition:s=Re.Top,borderRadius:a=5,centerX:c,centerY:h,offset:d=20,stepPosition:f=.5}){const[g,m,v,S,_]=n6({source:{x:t,y:e},sourcePosition:i,target:{x:n,y:r},targetPosition:s,center:{x:c,y:h},offset:d,stepPosition:f});let w=`M${g[0].x} ${g[0].y}`;for(let x=1;x<g.length-1;x++)w+=r6(g[x-1],g[x],g[x+1],a);return w+=`L${g[g.length-1].x} ${g[g.length-1].y}`,[w,m,v,S,_]}function QC(t){var e;return t&&!!(t.internals.handleBounds||(e=t.handles)!=null&&e.length)&&!!(t.measured.width||t.width||t.initialWidth)}function s6(t){var g;const{sourceNode:e,targetNode:i}=t;if(!QC(e)||!QC(i))return null;const n=e.internals.handleBounds||$C(e.handles),r=i.internals.handleBounds||$C(i.handles),s=PC((n==null?void 0:n.source)??[],t.sourceHandle),a=PC(t.connectionMode===Qc.Strict?(r==null?void 0:r.target)??[]:((r==null?void 0:r.target)??[]).concat((r==null?void 0:r.source)??[]),t.targetHandle);if(!s||!a)return(g=t.onError)==null||g.call(t,"008",hs.error008(s?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;const c=(s==null?void 0:s.position)||Re.Bottom,h=(a==null?void 0:a.position)||Re.Top,d=rl(e,s,c),f=rl(i,a,h);return{sourceX:d.x,sourceY:d.y,targetX:f.x,targetY:f.y,sourcePosition:c,targetPosition:h}}function $C(t){if(!t)return null;const e=[],i=[];for(const n of t)n.width=n.width??1,n.height=n.height??1,n.type==="source"?e.push(n):n.type==="target"&&i.push(n);return{source:e,target:i}}function rl(t,e,i=Re.Left,n=!1){const r=((e==null?void 0:e.x)??0)+t.internals.positionAbsolute.x,s=((e==null?void 0:e.y)??0)+t.internals.positionAbsolute.y,{width:a,height:c}=e??Js(t);if(n)return{x:r+a/2,y:s+c/2};switch((e==null?void 0:e.position)??i){case Re.Top:return{x:r+a/2,y:s};case Re.Right:return{x:r+a,y:s+c/2};case Re.Bottom:return{x:r+a/2,y:s+c};case Re.Left:return{x:r,y:s+c/2}}}function PC(t,e){return t&&(e?t.find(i=>i.id===e):t[0])||null}function My(t,e){return t?typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(n=>`${n}=${t[n]}`).join("&")}`:""}function o6(t,{id:e,defaultColor:i,defaultMarkerStart:n,defaultMarkerEnd:r}){const s=new Set;return t.reduce((a,c)=>([c.markerStart||n,c.markerEnd||r].forEach(h=>{if(h&&typeof h=="object"){const d=My(h,e);s.has(d)||(a.push({id:d,color:h.color||i,...h}),s.add(d))}}),a),[]).sort((a,c)=>a.id.localeCompare(c.id))}const qP=1e3,a6=10,z1={nodeOrigin:[0,0],nodeExtent:Bu,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},l6={...z1,checkEquality:!0};function j1(t,e){const i={...t};for(const n in e)e[n]!==void 0&&(i[n]=e[n]);return i}function c6(t,e,i){const n=j1(z1,i);for(const r of t.values())if(r.parentId)B1(r,t,e,n);else{const s=fd(r,n.nodeOrigin),a=Ec(r.extent)?r.extent:n.nodeExtent,c=nl(s,a,Js(r));r.internals.positionAbsolute=c}}function h6(t,e){if(!t.handles)return t.measured?e==null?void 0:e.internals.handleBounds:void 0;const i=[],n=[];for(const r of t.handles){const s={id:r.id,width:r.width??1,height:r.height??1,nodeId:t.id,x:r.x,y:r.y,position:r.position,type:r.type};r.type==="source"?i.push(s):r.type==="target"&&n.push(s)}return{source:i,target:n}}function D1(t){return t==="manual"}function zy(t,e,i,n={}){var f,g;const r=j1(l6,n),s={i:0},a=new Map(e),c=r!=null&&r.elevateNodesOnSelect&&!D1(r.zIndexMode)?qP:0;let h=t.length>0,d=!1;e.clear(),i.clear();for(const m of t){let v=a.get(m.id);if(r.checkEquality&&m===(v==null?void 0:v.internals.userNode))e.set(m.id,v);else{const S=fd(m,r.nodeOrigin),_=Ec(m.extent)?m.extent:r.nodeExtent,w=nl(S,_,Js(m));v={...r.defaults,...m,measured:{width:(f=m.measured)==null?void 0:f.width,height:(g=m.measured)==null?void 0:g.height},internals:{positionAbsolute:w,handleBounds:h6(m,v),z:IP(m,c,r.zIndexMode),userNode:m}},e.set(m.id,v)}(v.measured===void 0||v.measured.width===void 0||v.measured.height===void 0)&&!v.hidden&&(h=!1),m.parentId&&B1(v,e,i,n,s),d||(d=m.selected??!1)}return{nodesInitialized:h,hasSelectedNodes:d}}function u6(t,e){if(!t.parentId)return;const i=e.get(t.parentId);i?i.set(t.id,t):e.set(t.parentId,new Map([[t.id,t]]))}function B1(t,e,i,n,r){const{elevateNodesOnSelect:s,nodeOrigin:a,nodeExtent:c,zIndexMode:h}=j1(z1,n),d=t.parentId,f=e.get(d);if(!f){console.warn(`Parent node ${d} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}u6(t,i),r&&!f.parentId&&f.internals.rootParentIndex===void 0&&h==="auto"&&(f.internals.rootParentIndex=++r.i,f.internals.z=f.internals.z+r.i*a6),r&&f.internals.rootParentIndex!==void 0&&(r.i=f.internals.rootParentIndex);const g=s&&!D1(h)?qP:0,{x:m,y:v,z:S}=d6(t,f,a,c,g,h),{positionAbsolute:_}=t.internals,w=m!==_.x||v!==_.y;(w||S!==t.internals.z)&&e.set(t.id,{...t,internals:{...t.internals,positionAbsolute:w?{x:m,y:v}:_,z:S}})}function IP(t,e,i){const n=$r(t.zIndex)?t.zIndex:0;return D1(i)?n:n+(t.selected?e:0)}function d6(t,e,i,n,r,s){const{x:a,y:c}=e.internals.positionAbsolute,h=Js(t),d=fd(t,i),f=Ec(t.extent)?nl(d,t.extent,h):d;let g=nl({x:a+f.x,y:c+f.y},n,h);t.extent==="parent"&&(g=RP(g,h,e));const m=IP(t,r,s),v=e.internals.z??0;return{x:g.x,y:g.y,z:v>=m?v+1:m}}function L1(t,e,i,n=[0,0]){var a;const r=[],s=new Map;for(const c of t){const h=e.get(c.parentId);if(!h)continue;const d=((a=s.get(c.parentId))==null?void 0:a.expandedRect)??Pc(h),f=MP(d,c.rect);s.set(c.parentId,{expandedRect:f,parent:h})}return s.size>0&&s.forEach(({expandedRect:c,parent:h},d)=>{var C;const f=h.internals.positionAbsolute,g=Js(h),m=h.origin??n,v=c.x<f.x?Math.round(Math.abs(f.x-c.x)):0,S=c.y<f.y?Math.round(Math.abs(f.y-c.y)):0,_=Math.max(g.width,Math.round(c.width)),w=Math.max(g.height,Math.round(c.height)),x=(_-g.width)*m[0],Q=(w-g.height)*m[1];(v>0||S>0||x||Q)&&(r.push({id:d,type:"position",position:{x:h.position.x-v+x,y:h.position.y-S+Q}}),(C=i.get(d))==null||C.forEach(T=>{t.some(A=>A.id===T.id)||r.push({id:T.id,type:"position",position:{x:T.position.x+v,y:T.position.y+S}})})),(g.width<c.width||g.height<c.height||v||S)&&r.push({id:d,type:"dimensions",setAttributes:!0,dimensions:{width:_+(v?m[0]*v-x:0),height:w+(S?m[1]*S-Q:0)}})}),r}function f6(t,e,i,n,r,s,a){const c=n==null?void 0:n.querySelector(".xyflow__viewport");let h=!1;if(!c)return{changes:[],updatedInternals:h};const d=[],f=window.getComputedStyle(c),{m22:g}=new window.DOMMatrixReadOnly(f.transform),m=[];for(const v of t.values()){const S=e.get(v.id);if(!S)continue;if(S.hidden){e.set(S.id,{...S,internals:{...S.internals,handleBounds:void 0}}),h=!0;continue}const _=M1(v.nodeElement),w=S.measured.width!==_.width||S.measured.height!==_.height;if(!!(_.width&&_.height&&(w||!S.internals.handleBounds||v.force))){const Q=v.nodeElement.getBoundingClientRect(),C=Ec(S.extent)?S.extent:s;let{positionAbsolute:T}=S.internals;S.parentId&&S.extent==="parent"?T=RP(T,_,e.get(S.parentId)):C&&(T=nl(T,C,_));const A={...S,measured:_,internals:{...S.internals,positionAbsolute:T,handleBounds:{source:wC("source",v.nodeElement,Q,g,S.id),target:wC("target",v.nodeElement,Q,g,S.id)}}};e.set(S.id,A),S.parentId&&B1(A,e,i,{nodeOrigin:r,zIndexMode:a}),h=!0,w&&(d.push({id:S.id,type:"dimensions",dimensions:_}),S.expandParent&&S.parentId&&m.push({id:S.id,parentId:S.parentId,rect:Pc(A,r)}))}}if(m.length>0){const v=L1(m,e,i,r);d.push(...v)}return{changes:d,updatedInternals:h}}async function p6({delta:t,panZoom:e,transform:i,translateExtent:n,width:r,height:s}){if(!e||!t.x&&!t.y)return Promise.resolve(!1);const a=await e.setViewportConstrained({x:i[0]+t.x,y:i[1]+t.y,zoom:i[2]},[[0,0],[r,s]],n),c=!!a&&(a.x!==i[0]||a.y!==i[1]||a.k!==i[2]);return Promise.resolve(c)}function EC(t,e,i,n,r,s){let a=r;const c=n.get(a)||new Map;n.set(a,c.set(i,e)),a=`${r}-${t}`;const h=n.get(a)||new Map;if(n.set(a,h.set(i,e)),s){a=`${r}-${t}-${s}`;const d=n.get(a)||new Map;n.set(a,d.set(i,e))}}function VP(t,e,i){t.clear(),e.clear();for(const n of i){const{source:r,target:s,sourceHandle:a=null,targetHandle:c=null}=n,h={edgeId:n.id,source:r,target:s,sourceHandle:a,targetHandle:c},d=`${r}-${a}--${s}-${c}`,f=`${s}-${c}--${r}-${a}`;EC("source",h,f,t,r,a),EC("target",h,d,t,s,c),e.set(n.id,n)}}function YP(t,e){if(!t.parentId)return!1;const i=e.get(t.parentId);return i?i.selected?!0:YP(i,e):!1}function RC(t,e,i){var r;let n=t;do{if((r=n==null?void 0:n.matches)!=null&&r.call(n,e))return!0;if(n===i)return!1;n=n==null?void 0:n.parentElement}while(n);return!1}function g6(t,e,i,n){const r=new Map;for(const[s,a]of t)if((a.selected||a.id===n)&&(!a.parentId||!YP(a,t))&&(a.draggable||e&&typeof a.draggable>"u")){const c=t.get(s);c&&r.set(s,{id:s,position:c.position||{x:0,y:0},distance:{x:i.x-c.internals.positionAbsolute.x,y:i.y-c.internals.positionAbsolute.y},extent:c.extent,parentId:c.parentId,origin:c.origin,expandParent:c.expandParent,internals:{positionAbsolute:c.internals.positionAbsolute||{x:0,y:0}},measured:{width:c.measured.width??0,height:c.measured.height??0}})}return r}function av({nodeId:t,dragItems:e,nodeLookup:i,dragging:n=!0}){var a,c,h;const r=[];for(const[d,f]of e){const g=(a=i.get(d))==null?void 0:a.internals.userNode;g&&r.push({...g,position:f.position,dragging:n})}if(!t)return[r[0],r];const s=(c=i.get(t))==null?void 0:c.internals.userNode;return[s?{...s,position:((h=e.get(t))==null?void 0:h.position)||s.position,dragging:n}:r[0],r]}function m6({dragItems:t,snapGrid:e,x:i,y:n}){const r=t.values().next().value;if(!r)return null;const s={x:i-r.distance.x,y:n-r.distance.y},a=gd(s,e);return{x:a.x-s.x,y:a.y-s.y}}function O6({onNodeMouseDown:t,getStoreItems:e,onDragStart:i,onDrag:n,onDragStop:r}){let s={x:null,y:null},a=0,c=new Map,h=!1,d={x:0,y:0},f=null,g=!1,m=null,v=!1,S=!1,_=null;function w({noDragClassName:Q,handleSelector:C,domNode:T,isSelectable:A,nodeId:P,nodeClickDistance:M=0}){m=Vn(T);function V({x:j,y:B}){const{nodeLookup:E,nodeExtent:W,snapGrid:$,snapToGrid:Z,nodeOrigin:z,onNodeDrag:L,onSelectionDrag:U,onError:D,updateNodePositions:I}=e();s={x:j,y:B};let J=!1;const ne=c.size>1,ce=ne&&W?Ry(pd(c)):null,de=ne&&Z?m6({dragItems:c,snapGrid:$,x:j,y:B}):null;for(const[pe,fe]of c){if(!E.has(pe))continue;let Oe={x:j-fe.distance.x,y:B-fe.distance.y};Z&&(Oe=de?{x:Math.round(Oe.x+de.x),y:Math.round(Oe.y+de.y)}:gd(Oe,$));let je=null;if(ne&&W&&!fe.extent&&ce){const{positionAbsolute:me}=fe.internals,Be=me.x-ce.x+W[0][0],at=me.x+fe.measured.width-ce.x2+W[1][0],He=me.y-ce.y+W[0][1],Dt=me.y+fe.measured.height-ce.y2+W[1][1];je=[[Be,He],[at,Dt]]}const{position:$e,positionAbsolute:Te}=EP({nodeId:pe,nextPosition:Oe,nodeLookup:E,nodeExtent:je||W,nodeOrigin:z,onError:D});J=J||fe.position.x!==$e.x||fe.position.y!==$e.y,fe.position=$e,fe.internals.positionAbsolute=Te}if(S=S||J,!!J&&(I(c,!0),_&&(n||L||!P&&U))){const[pe,fe]=av({nodeId:P,dragItems:c,nodeLookup:E});n==null||n(_,c,pe,fe),L==null||L(_,pe,fe),P||U==null||U(_,fe)}}async function H(){if(!f)return;const{transform:j,panBy:B,autoPanSpeed:E,autoPanOnNodeDrag:W}=e();if(!W){h=!1,cancelAnimationFrame(a);return}const[$,Z]=AP(d,f,E);($!==0||Z!==0)&&(s.x=(s.x??0)-$/j[2],s.y=(s.y??0)-Z/j[2],await B({x:$,y:Z})&&V(s)),a=requestAnimationFrame(H)}function G(j){var ne;const{nodeLookup:B,multiSelectionActive:E,nodesDraggable:W,transform:$,snapGrid:Z,snapToGrid:z,selectNodesOnDrag:L,onNodeDragStart:U,onSelectionDragStart:D,unselectNodesAndEdges:I}=e();g=!0,(!L||!A)&&!E&&P&&((ne=B.get(P))!=null&&ne.selected||I()),A&&L&&P&&(t==null||t(P));const J=wu(j.sourceEvent,{transform:$,snapGrid:Z,snapToGrid:z,containerBounds:f});if(s=J,c=g6(B,W,J,P),c.size>0&&(i||U||!P&&D)){const[ce,de]=av({nodeId:P,dragItems:c,nodeLookup:B});i==null||i(j.sourceEvent,c,ce,de),U==null||U(j.sourceEvent,ce,de),P||D==null||D(j.sourceEvent,de)}}const N=hP().clickDistance(M).on("start",j=>{const{domNode:B,nodeDragThreshold:E,transform:W,snapGrid:$,snapToGrid:Z}=e();f=(B==null?void 0:B.getBoundingClientRect())||null,v=!1,S=!1,_=j.sourceEvent,E===0&&G(j),s=wu(j.sourceEvent,{transform:W,snapGrid:$,snapToGrid:Z,containerBounds:f}),d=Pr(j.sourceEvent,f)}).on("drag",j=>{const{autoPanOnNodeDrag:B,transform:E,snapGrid:W,snapToGrid:$,nodeDragThreshold:Z,nodeLookup:z}=e(),L=wu(j.sourceEvent,{transform:E,snapGrid:W,snapToGrid:$,containerBounds:f});if(_=j.sourceEvent,(j.sourceEvent.type==="touchmove"&&j.sourceEvent.touches.length>1||P&&!z.has(P))&&(v=!0),!v){if(!h&&B&&g&&(h=!0,H()),!g){const U=Pr(j.sourceEvent,f),D=U.x-d.x,I=U.y-d.y;Math.sqrt(D*D+I*I)>Z&&G(j)}(s.x!==L.xSnapped||s.y!==L.ySnapped)&&c&&g&&(d=Pr(j.sourceEvent,f),V(L))}}).on("end",j=>{if(!(!g||v)&&(h=!1,g=!1,cancelAnimationFrame(a),c.size>0)){const{nodeLookup:B,updateNodePositions:E,onNodeDragStop:W,onSelectionDragStop:$}=e();if(S&&(E(c,!1),S=!1),r||W||!P&&$){const[Z,z]=av({nodeId:P,dragItems:c,nodeLookup:B,dragging:!1});r==null||r(j.sourceEvent,c,Z,z),W==null||W(j.sourceEvent,Z,z),P||$==null||$(j.sourceEvent,z)}}}).filter(j=>{const B=j.target;return!j.button&&(!Q||!RC(B,`.${Q}`,T))&&(!C||RC(B,C,T))});m.call(N)}function x(){m==null||m.on(".drag",null)}return{update:w,destroy:x}}function v6(t,e,i){const n=[],r={x:t.x-i,y:t.y-i,width:i*2,height:i*2};for(const s of e.values())Xu(r,Pc(s))>0&&n.push(s);return n}const y6=250;function S6(t,e,i,n){var c,h;let r=[],s=1/0;const a=v6(t,i,e+y6);for(const d of a){const f=[...((c=d.internals.handleBounds)==null?void 0:c.source)??[],...((h=d.internals.handleBounds)==null?void 0:h.target)??[]];for(const g of f){if(n.nodeId===g.nodeId&&n.type===g.type&&n.id===g.id)continue;const{x:m,y:v}=rl(d,g,g.position,!0),S=Math.sqrt(Math.pow(m-t.x,2)+Math.pow(v-t.y,2));S>e||(S<s?(r=[{...g,x:m,y:v}],s=S):S===s&&r.push({...g,x:m,y:v}))}}if(!r.length)return null;if(r.length>1){const d=n.type==="source"?"target":"source";return r.find(f=>f.type===d)??r[0]}return r[0]}function HP(t,e,i,n,r,s=!1){var d,f,g;const a=n.get(t);if(!a)return null;const c=r==="strict"?(d=a.internals.handleBounds)==null?void 0:d[e]:[...((f=a.internals.handleBounds)==null?void 0:f.source)??[],...((g=a.internals.handleBounds)==null?void 0:g.target)??[]],h=(i?c==null?void 0:c.find(m=>m.id===i):c==null?void 0:c[0])??null;return h&&s?{...h,...rl(a,h,h.position,!0)}:h}function UP(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function b6(t,e){let i=null;return e?i=!0:t&&!e&&(i=!1),i}const GP=()=>!0;function _6(t,{connectionMode:e,connectionRadius:i,handleId:n,nodeId:r,edgeUpdaterType:s,isTarget:a,domNode:c,nodeLookup:h,lib:d,autoPanOnConnect:f,flowId:g,panBy:m,cancelConnection:v,onConnectStart:S,onConnect:_,onConnectEnd:w,isValidConnection:x=GP,onReconnectEnd:Q,updateConnection:C,getTransform:T,getFromHandle:A,autoPanSpeed:P,dragThreshold:M=1,handleDomNode:V}){const H=DP(t.target);let G=0,N;const{x:j,y:B}=Pr(t),E=UP(s,V),W=c==null?void 0:c.getBoundingClientRect();let $=!1;if(!W||!E)return;const Z=HP(r,E,n,h,e);if(!Z)return;let z=Pr(t,W),L=!1,U=null,D=!1,I=null;function J(){if(!f||!W)return;const[$e,Te]=AP(z,W,P);m({x:$e,y:Te}),G=requestAnimationFrame(J)}const ne={...Z,nodeId:r,type:E,position:Z.position},ce=h.get(r);let pe={inProgress:!0,isValid:null,from:rl(ce,ne,Re.Left,!0),fromHandle:ne,fromPosition:ne.position,fromNode:ce,to:z,toHandle:null,toPosition:SC[ne.position],toNode:null,pointer:z};function fe(){$=!0,C(pe),S==null||S(t,{nodeId:r,handleId:n,handleType:E})}M===0&&fe();function Oe($e){if(!$){const{x:Dt,y:Jt}=Pr($e),Gi=Dt-j,an=Jt-B;if(!(Gi*Gi+an*an>M*M))return;fe()}if(!A()||!ne){je($e);return}const Te=T();z=Pr($e,W),N=S6(md(z,Te,!1,[1,1]),i,h,ne),L||(J(),L=!0);const me=FP($e,{handle:N,connectionMode:e,fromNodeId:r,fromHandleId:n,fromType:a?"target":"source",isValidConnection:x,doc:H,lib:d,flowId:g,nodeLookup:h});I=me.handleDomNode,U=me.connection,D=b6(!!N,me.isValid);const Be=h.get(r),at=Be?rl(Be,ne,Re.Left,!0):pe.from,He={...pe,from:at,isValid:D,to:me.toHandle&&D?_g({x:me.toHandle.x,y:me.toHandle.y},Te):z,toHandle:me.toHandle,toPosition:D&&me.toHandle?me.toHandle.position:SC[ne.position],toNode:me.toHandle?h.get(me.toHandle.nodeId):null,pointer:z};C(He),pe=He}function je($e){if(!("touches"in $e&&$e.touches.length>0)){if($){(N||I)&&U&&D&&(_==null||_(U));const{inProgress:Te,...me}=pe,Be={...me,toPosition:pe.toHandle?pe.toPosition:null};w==null||w($e,Be),s&&(Q==null||Q($e,Be))}v(),cancelAnimationFrame(G),L=!1,D=!1,U=null,I=null,H.removeEventListener("mousemove",Oe),H.removeEventListener("mouseup",je),H.removeEventListener("touchmove",Oe),H.removeEventListener("touchend",je)}}H.addEventListener("mousemove",Oe),H.addEventListener("mouseup",je),H.addEventListener("touchmove",Oe),H.addEventListener("touchend",je)}function FP(t,{handle:e,connectionMode:i,fromNodeId:n,fromHandleId:r,fromType:s,doc:a,lib:c,flowId:h,isValidConnection:d=GP,nodeLookup:f}){const g=s==="target",m=e?a.querySelector(`.${c}-flow__handle[data-id="${h}-${e==null?void 0:e.nodeId}-${e==null?void 0:e.id}-${e==null?void 0:e.type}"]`):null,{x:v,y:S}=Pr(t),_=a.elementFromPoint(v,S),w=_!=null&&_.classList.contains(`${c}-flow__handle`)?_:m,x={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const Q=UP(void 0,w),C=w.getAttribute("data-nodeid"),T=w.getAttribute("data-handleid"),A=w.classList.contains("connectable"),P=w.classList.contains("connectableend");if(!C||!Q)return x;const M={source:g?C:n,sourceHandle:g?T:r,target:g?n:C,targetHandle:g?r:T};x.connection=M;const H=A&&P&&(i===Qc.Strict?g&&Q==="source"||!g&&Q==="target":C!==n||T!==r);x.isValid=H&&d(M),x.toHandle=HP(C,Q,T,f,i,!0)}return x}const jy={onPointerDown:_6,isValid:FP};function x6({domNode:t,panZoom:e,getTransform:i,getViewScale:n}){const r=Vn(t);function s({translateExtent:c,width:h,height:d,zoomStep:f=1,pannable:g=!0,zoomable:m=!0,inversePan:v=!1}){const S=C=>{if(C.sourceEvent.type!=="wheel"||!e)return;const T=i(),A=C.sourceEvent.ctrlKey&&Nu()?10:1,P=-C.sourceEvent.deltaY*(C.sourceEvent.deltaMode===1?.05:C.sourceEvent.deltaMode?1:.002)*f,M=T[2]*Math.pow(2,P*A);e.scaleTo(M)};let _=[0,0];const w=C=>{(C.sourceEvent.type==="mousedown"||C.sourceEvent.type==="touchstart")&&(_=[C.sourceEvent.clientX??C.sourceEvent.touches[0].clientX,C.sourceEvent.clientY??C.sourceEvent.touches[0].clientY])},x=C=>{const T=i();if(C.sourceEvent.type!=="mousemove"&&C.sourceEvent.type!=="touchmove"||!e)return;const A=[C.sourceEvent.clientX??C.sourceEvent.touches[0].clientX,C.sourceEvent.clientY??C.sourceEvent.touches[0].clientY],P=[A[0]-_[0],A[1]-_[1]];_=A;const M=n()*Math.max(T[2],Math.log(T[2]))*(v?-1:1),V={x:T[0]-P[0]*M,y:T[1]-P[1]*M},H=[[0,0],[h,d]];e.setViewportConstrained({x:V.x,y:V.y,zoom:T[2]},H,c)},Q=kP().on("start",w).on("zoom",g?x:null).on("zoom.wheel",m?S:null);r.call(Q,{})}function a(){r.on("zoom",null)}return{update:s,destroy:a,pointer:Cr}}const Om=t=>({x:t.x,y:t.y,zoom:t.k}),lv=({x:t,y:e,zoom:i})=>pm.translate(t,e).scale(i),lc=(t,e)=>t.target.closest(`.${e}`),KP=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),w6=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,cv=(t,e=0,i=w6,n=()=>{})=>{const r=typeof e=="number"&&e>0;return r||n(),r?t.transition().duration(e).ease(i).on("end",n):t},JP=t=>{const e=t.ctrlKey&&Nu()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e};function k6({zoomPanValues:t,noWheelClassName:e,d3Selection:i,d3Zoom:n,panOnScrollMode:r,panOnScrollSpeed:s,zoomOnPinch:a,onPanZoomStart:c,onPanZoom:h,onPanZoomEnd:d}){return f=>{if(lc(f,e))return f.ctrlKey&&f.preventDefault(),!1;f.preventDefault(),f.stopImmediatePropagation();const g=i.property("__zoom").k||1;if(f.ctrlKey&&a){const w=Cr(f),x=JP(f),Q=g*Math.pow(2,x);n.scaleTo(i,Q,w,f);return}const m=f.deltaMode===1?20:1;let v=r===Fa.Vertical?0:f.deltaX*m,S=r===Fa.Horizontal?0:f.deltaY*m;!Nu()&&f.shiftKey&&r!==Fa.Vertical&&(v=f.deltaY*m,S=0),n.translateBy(i,-(v/g)*s,-(S/g)*s,{internal:!0});const _=Om(i.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling?(h==null||h(f,_),t.panScrollTimeout=setTimeout(()=>{d==null||d(f,_),t.isPanScrolling=!1},150)):(t.isPanScrolling=!0,c==null||c(f,_))}}function C6({noWheelClassName:t,preventScrolling:e,d3ZoomHandler:i}){return function(n,r){const s=n.type==="wheel",a=!e&&s&&!n.ctrlKey,c=lc(n,t);if(n.ctrlKey&&s&&c&&n.preventDefault(),a||c)return null;n.preventDefault(),i.call(this,n,r)}}function T6({zoomPanValues:t,onDraggingChange:e,onPanZoomStart:i}){return n=>{var s,a,c;if((s=n.sourceEvent)!=null&&s.internal)return;const r=Om(n.transform);t.mouseButton=((a=n.sourceEvent)==null?void 0:a.button)||0,t.isZoomingOrPanning=!0,t.prevViewport=r,((c=n.sourceEvent)==null?void 0:c.type)==="mousedown"&&e(!0),i&&(i==null||i(n.sourceEvent,r))}}function Q6({zoomPanValues:t,panOnDrag:e,onPaneContextMenu:i,onTransformChange:n,onPanZoom:r}){return s=>{var a,c;t.usedRightMouseButton=!!(i&&KP(e,t.mouseButton??0)),(a=s.sourceEvent)!=null&&a.sync||n([s.transform.x,s.transform.y,s.transform.k]),r&&!((c=s.sourceEvent)!=null&&c.internal)&&(r==null||r(s.sourceEvent,Om(s.transform)))}}function $6({zoomPanValues:t,panOnDrag:e,panOnScroll:i,onDraggingChange:n,onPanZoomEnd:r,onPaneContextMenu:s}){return a=>{var c;if(!((c=a.sourceEvent)!=null&&c.internal)&&(t.isZoomingOrPanning=!1,s&&KP(e,t.mouseButton??0)&&!t.usedRightMouseButton&&a.sourceEvent&&s(a.sourceEvent),t.usedRightMouseButton=!1,n(!1),r)){const h=Om(a.transform);t.prevViewport=h,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{r==null||r(a.sourceEvent,h)},i?150:0)}}}function P6({zoomActivationKeyPressed:t,zoomOnScroll:e,zoomOnPinch:i,panOnDrag:n,panOnScroll:r,zoomOnDoubleClick:s,userSelectionActive:a,noWheelClassName:c,noPanClassName:h,lib:d,connectionInProgress:f}){return g=>{var w;const m=t||e,v=i&&g.ctrlKey,S=g.type==="wheel";if(g.button===1&&g.type==="mousedown"&&(lc(g,`${d}-flow__node`)||lc(g,`${d}-flow__edge`)))return!0;if(!n&&!m&&!r&&!s&&!i||a||f&&!S||lc(g,c)&&S||lc(g,h)&&(!S||r&&S&&!t)||!i&&g.ctrlKey&&S)return!1;if(!i&&g.type==="touchstart"&&((w=g.touches)==null?void 0:w.length)>1)return g.preventDefault(),!1;if(!m&&!r&&!v&&S||!n&&(g.type==="mousedown"||g.type==="touchstart")||Array.isArray(n)&&!n.includes(g.button)&&g.type==="mousedown")return!1;const _=Array.isArray(n)&&n.includes(g.button)||!g.button||g.button<=1;return(!g.ctrlKey||S)&&_}}function E6({domNode:t,minZoom:e,maxZoom:i,translateExtent:n,viewport:r,onPanZoom:s,onPanZoomStart:a,onPanZoomEnd:c,onDraggingChange:h}){const d={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},f=t.getBoundingClientRect(),g=kP().scaleExtent([e,i]).translateExtent(n),m=Vn(t).call(g);Q({x:r.x,y:r.y,zoom:$c(r.zoom,e,i)},[[0,0],[f.width,f.height]],n);const v=m.on("wheel.zoom"),S=m.on("dblclick.zoom");g.wheelDelta(JP);function _(N,j){return m?new Promise(B=>{g==null||g.interpolate((j==null?void 0:j.interpolate)==="linear"?xu:Zp).transform(cv(m,j==null?void 0:j.duration,j==null?void 0:j.ease,()=>B(!0)),N)}):Promise.resolve(!1)}function w({noWheelClassName:N,noPanClassName:j,onPaneContextMenu:B,userSelectionActive:E,panOnScroll:W,panOnDrag:$,panOnScrollMode:Z,panOnScrollSpeed:z,preventScrolling:L,zoomOnPinch:U,zoomOnScroll:D,zoomOnDoubleClick:I,zoomActivationKeyPressed:J,lib:ne,onTransformChange:ce,connectionInProgress:de,paneClickDistance:pe,selectionOnDrag:fe}){E&&!d.isZoomingOrPanning&&x();const Oe=W&&!J&&!E;g.clickDistance(fe?1/0:!$r(pe)||pe<0?0:pe);const je=Oe?k6({zoomPanValues:d,noWheelClassName:N,d3Selection:m,d3Zoom:g,panOnScrollMode:Z,panOnScrollSpeed:z,zoomOnPinch:U,onPanZoomStart:a,onPanZoom:s,onPanZoomEnd:c}):C6({noWheelClassName:N,preventScrolling:L,d3ZoomHandler:v});if(m.on("wheel.zoom",je,{passive:!1}),!E){const Te=T6({zoomPanValues:d,onDraggingChange:h,onPanZoomStart:a});g.on("start",Te);const me=Q6({zoomPanValues:d,panOnDrag:$,onPaneContextMenu:!!B,onPanZoom:s,onTransformChange:ce});g.on("zoom",me);const Be=$6({zoomPanValues:d,panOnDrag:$,panOnScroll:W,onPaneContextMenu:B,onPanZoomEnd:c,onDraggingChange:h});g.on("end",Be)}const $e=P6({zoomActivationKeyPressed:J,panOnDrag:$,zoomOnScroll:D,panOnScroll:W,zoomOnDoubleClick:I,zoomOnPinch:U,userSelectionActive:E,noPanClassName:j,noWheelClassName:N,lib:ne,connectionInProgress:de});g.filter($e),I?m.on("dblclick.zoom",S):m.on("dblclick.zoom",null)}function x(){g.on("zoom",null)}async function Q(N,j,B){const E=lv(N),W=g==null?void 0:g.constrain()(E,j,B);return W&&await _(W),new Promise($=>$(W))}async function C(N,j){const B=lv(N);return await _(B,j),new Promise(E=>E(B))}function T(N){if(m){const j=lv(N),B=m.property("__zoom");(B.k!==N.zoom||B.x!==N.x||B.y!==N.y)&&(g==null||g.transform(m,j,null,{sync:!0}))}}function A(){const N=m?wP(m.node()):{x:0,y:0,k:1};return{x:N.x,y:N.y,zoom:N.k}}function P(N,j){return m?new Promise(B=>{g==null||g.interpolate((j==null?void 0:j.interpolate)==="linear"?xu:Zp).scaleTo(cv(m,j==null?void 0:j.duration,j==null?void 0:j.ease,()=>B(!0)),N)}):Promise.resolve(!1)}function M(N,j){return m?new Promise(B=>{g==null||g.interpolate((j==null?void 0:j.interpolate)==="linear"?xu:Zp).scaleBy(cv(m,j==null?void 0:j.duration,j==null?void 0:j.ease,()=>B(!0)),N)}):Promise.resolve(!1)}function V(N){g==null||g.scaleExtent(N)}function H(N){g==null||g.translateExtent(N)}function G(N){const j=!$r(N)||N<0?0:N;g==null||g.clickDistance(j)}return{update:w,destroy:x,setViewport:C,setViewportConstrained:Q,getViewport:A,scaleTo:P,scaleBy:M,setScaleExtent:V,setTranslateExtent:H,syncViewport:T,setClickDistance:G}}var Rc;(function(t){t.Line="line",t.Handle="handle"})(Rc||(Rc={}));function R6({width:t,prevWidth:e,height:i,prevHeight:n,affectsX:r,affectsY:s}){const a=t-e,c=i-n,h=[a>0?1:a<0?-1:0,c>0?1:c<0?-1:0];return a&&r&&(h[0]=h[0]*-1),c&&s&&(h[1]=h[1]*-1),h}function AC(t){const e=t.includes("right")||t.includes("left"),i=t.includes("bottom")||t.includes("top"),n=t.includes("left"),r=t.includes("top");return{isHorizontal:e,isVertical:i,affectsX:n,affectsY:r}}function Bo(t,e){return Math.max(0,e-t)}function Lo(t,e){return Math.max(0,t-e)}function ip(t,e,i){return Math.max(0,e-t,t-i)}function MC(t,e){return t?!e:e}function A6(t,e,i,n,r,s,a,c){let{affectsX:h,affectsY:d}=e;const{isHorizontal:f,isVertical:g}=e,m=f&&g,{xSnapped:v,ySnapped:S}=i,{minWidth:_,maxWidth:w,minHeight:x,maxHeight:Q}=n,{x:C,y:T,width:A,height:P,aspectRatio:M}=t;let V=Math.floor(f?v-t.pointerX:0),H=Math.floor(g?S-t.pointerY:0);const G=A+(h?-V:V),N=P+(d?-H:H),j=-s[0]*A,B=-s[1]*P;let E=ip(G,_,w),W=ip(N,x,Q);if(a){let z=0,L=0;h&&V<0?z=Bo(C+V+j,a[0][0]):!h&&V>0&&(z=Lo(C+G+j,a[1][0])),d&&H<0?L=Bo(T+H+B,a[0][1]):!d&&H>0&&(L=Lo(T+N+B,a[1][1])),E=Math.max(E,z),W=Math.max(W,L)}if(c){let z=0,L=0;h&&V>0?z=Lo(C+V,c[0][0]):!h&&V<0&&(z=Bo(C+G,c[1][0])),d&&H>0?L=Lo(T+H,c[0][1]):!d&&H<0&&(L=Bo(T+N,c[1][1])),E=Math.max(E,z),W=Math.max(W,L)}if(r){if(f){const z=ip(G/M,x,Q)*M;if(E=Math.max(E,z),a){let L=0;!h&&!d||h&&!d&&m?L=Lo(T+B+G/M,a[1][1])*M:L=Bo(T+B+(h?V:-V)/M,a[0][1])*M,E=Math.max(E,L)}if(c){let L=0;!h&&!d||h&&!d&&m?L=Bo(T+G/M,c[1][1])*M:L=Lo(T+(h?V:-V)/M,c[0][1])*M,E=Math.max(E,L)}}if(g){const z=ip(N*M,_,w)/M;if(W=Math.max(W,z),a){let L=0;!h&&!d||d&&!h&&m?L=Lo(C+N*M+j,a[1][0])/M:L=Bo(C+(d?H:-H)*M+j,a[0][0])/M,W=Math.max(W,L)}if(c){let L=0;!h&&!d||d&&!h&&m?L=Bo(C+N*M,c[1][0])/M:L=Lo(C+(d?H:-H)*M,c[0][0])/M,W=Math.max(W,L)}}}H=H+(H<0?W:-W),V=V+(V<0?E:-E),r&&(m?G>N*M?H=(MC(h,d)?-V:V)/M:V=(MC(h,d)?-H:H)*M:f?(H=V/M,d=h):(V=H*M,h=d));const $=h?C+V:C,Z=d?T+H:T;return{width:A+(h?-V:V),height:P+(d?-H:H),x:s[0]*V*(h?-1:1)+$,y:s[1]*H*(d?-1:1)+Z}}const eE={width:0,height:0,x:0,y:0},M6={...eE,pointerX:0,pointerY:0,aspectRatio:1};function z6(t){return[[0,0],[t.measured.width,t.measured.height]]}function j6(t,e,i){const n=e.position.x+t.position.x,r=e.position.y+t.position.y,s=t.measured.width??0,a=t.measured.height??0,c=i[0]*s,h=i[1]*a;return[[n-c,r-h],[n+s-c,r+a-h]]}function D6({domNode:t,nodeId:e,getStoreItems:i,onChange:n,onEnd:r}){const s=Vn(t);let a={controlDirection:AC("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function c({controlPosition:d,boundaries:f,keepAspectRatio:g,resizeDirection:m,onResizeStart:v,onResize:S,onResizeEnd:_,shouldResize:w}){let x={...eE},Q={...M6};a={boundaries:f,resizeDirection:m,keepAspectRatio:g,controlDirection:AC(d)};let C,T=null,A=[],P,M,V,H=!1;const G=hP().on("start",N=>{const{nodeLookup:j,transform:B,snapGrid:E,snapToGrid:W,nodeOrigin:$,paneDomNode:Z}=i();if(C=j.get(e),!C)return;T=(Z==null?void 0:Z.getBoundingClientRect())??null;const{xSnapped:z,ySnapped:L}=wu(N.sourceEvent,{transform:B,snapGrid:E,snapToGrid:W,containerBounds:T});x={width:C.measured.width??0,height:C.measured.height??0,x:C.position.x??0,y:C.position.y??0},Q={...x,pointerX:z,pointerY:L,aspectRatio:x.width/x.height},P=void 0,C.parentId&&(C.extent==="parent"||C.expandParent)&&(P=j.get(C.parentId),M=P&&C.extent==="parent"?z6(P):void 0),A=[],V=void 0;for(const[U,D]of j)if(D.parentId===e&&(A.push({id:U,position:{...D.position},extent:D.extent}),D.extent==="parent"||D.expandParent)){const I=j6(D,C,D.origin??$);V?V=[[Math.min(I[0][0],V[0][0]),Math.min(I[0][1],V[0][1])],[Math.max(I[1][0],V[1][0]),Math.max(I[1][1],V[1][1])]]:V=I}v==null||v(N,{...x})}).on("drag",N=>{const{transform:j,snapGrid:B,snapToGrid:E,nodeOrigin:W}=i(),$=wu(N.sourceEvent,{transform:j,snapGrid:B,snapToGrid:E,containerBounds:T}),Z=[];if(!C)return;const{x:z,y:L,width:U,height:D}=x,I={},J=C.origin??W,{width:ne,height:ce,x:de,y:pe}=A6(Q,a.controlDirection,$,a.boundaries,a.keepAspectRatio,J,M,V),fe=ne!==U,Oe=ce!==D,je=de!==z&&fe,$e=pe!==L&&Oe;if(!je&&!$e&&!fe&&!Oe)return;if((je||$e||J[0]===1||J[1]===1)&&(I.x=je?de:x.x,I.y=$e?pe:x.y,x.x=I.x,x.y=I.y,A.length>0)){const at=de-z,He=pe-L;for(const Dt of A)Dt.position={x:Dt.position.x-at+J[0]*(ne-U),y:Dt.position.y-He+J[1]*(ce-D)},Z.push(Dt)}if((fe||Oe)&&(I.width=fe&&(!a.resizeDirection||a.resizeDirection==="horizontal")?ne:x.width,I.height=Oe&&(!a.resizeDirection||a.resizeDirection==="vertical")?ce:x.height,x.width=I.width,x.height=I.height),P&&C.expandParent){const at=J[0]*(I.width??0);I.x&&I.x<at&&(x.x=at,Q.x=Q.x-(I.x-at));const He=J[1]*(I.height??0);I.y&&I.y<He&&(x.y=He,Q.y=Q.y-(I.y-He))}const Te=R6({width:x.width,prevWidth:U,height:x.height,prevHeight:D,affectsX:a.controlDirection.affectsX,affectsY:a.controlDirection.affectsY}),me={...x,direction:Te};(w==null?void 0:w(N,me))!==!1&&(H=!0,S==null||S(N,me),n(I,Z))}).on("end",N=>{H&&(_==null||_(N,{...x}),r==null||r({...x}),H=!1)});s.call(G)}function h(){s.on(".drag",null)}return{update:c,destroy:h}}var hv={exports:{}},uv={},dv={exports:{}},fv={};/**
50
- * @license React
51
- * use-sync-external-store-shim.production.js
52
- *
53
- * Copyright (c) Meta Platforms, Inc. and affiliates.
54
- *
55
- * This source code is licensed under the MIT license found in the
56
- * LICENSE file in the root directory of this source tree.
57
- */var zC;function B6(){if(zC)return fv;zC=1;var t=hd();function e(g,m){return g===m&&(g!==0||1/g===1/m)||g!==g&&m!==m}var i=typeof Object.is=="function"?Object.is:e,n=t.useState,r=t.useEffect,s=t.useLayoutEffect,a=t.useDebugValue;function c(g,m){var v=m(),S=n({inst:{value:v,getSnapshot:m}}),_=S[0].inst,w=S[1];return s(function(){_.value=v,_.getSnapshot=m,h(_)&&w({inst:_})},[g,v,m]),r(function(){return h(_)&&w({inst:_}),g(function(){h(_)&&w({inst:_})})},[g]),a(v),v}function h(g){var m=g.getSnapshot;g=g.value;try{var v=m();return!i(g,v)}catch{return!0}}function d(g,m){return m()}var f=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?d:c;return fv.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:f,fv}var jC;function L6(){return jC||(jC=1,dv.exports=B6()),dv.exports}/**
58
- * @license React
59
- * use-sync-external-store-shim/with-selector.production.js
60
- *
61
- * Copyright (c) Meta Platforms, Inc. and affiliates.
62
- *
63
- * This source code is licensed under the MIT license found in the
64
- * LICENSE file in the root directory of this source tree.
65
- */var DC;function X6(){if(DC)return uv;DC=1;var t=hd(),e=L6();function i(d,f){return d===f&&(d!==0||1/d===1/f)||d!==d&&f!==f}var n=typeof Object.is=="function"?Object.is:i,r=e.useSyncExternalStore,s=t.useRef,a=t.useEffect,c=t.useMemo,h=t.useDebugValue;return uv.useSyncExternalStoreWithSelector=function(d,f,g,m,v){var S=s(null);if(S.current===null){var _={hasValue:!1,value:null};S.current=_}else _=S.current;S=c(function(){function x(P){if(!Q){if(Q=!0,C=P,P=m(P),v!==void 0&&_.hasValue){var M=_.value;if(v(M,P))return T=M}return T=P}if(M=T,n(C,P))return M;var V=m(P);return v!==void 0&&v(M,V)?(C=P,M):(C=P,T=V)}var Q=!1,C,T,A=g===void 0?null:g;return[function(){return x(f())},A===null?void 0:function(){return x(A())}]},[f,g,m,v]);var w=r(d,S[0],S[1]);return a(function(){_.hasValue=!0,_.value=w},[w]),h(w),w},uv}var BC;function N6(){return BC||(BC=1,hv.exports=X6()),hv.exports}var Z6=N6();const W6=H$(Z6),q6={},LC=t=>{let e;const i=new Set,n=(f,g)=>{const m=typeof f=="function"?f(e):f;if(!Object.is(m,e)){const v=e;e=g??(typeof m!="object"||m===null)?m:Object.assign({},e,m),i.forEach(S=>S(e,v))}},r=()=>e,h={setState:n,getState:r,getInitialState:()=>d,subscribe:f=>(i.add(f),()=>i.delete(f)),destroy:()=>{(q6?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),i.clear()}},d=e=t(n,r,h);return h},I6=t=>t?LC(t):LC,{useDebugValue:V6}=In,{useSyncExternalStoreWithSelector:Y6}=W6,H6=t=>t;function tE(t,e=H6,i){const n=Y6(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,i);return V6(n),n}const XC=(t,e)=>{const i=I6(t),n=(r,s=e)=>tE(i,r,s);return Object.assign(n,i),n},U6=(t,e)=>t?XC(t,e):XC;function Mt(t,e){if(Object.is(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(const[n,r]of t)if(!Object.is(r,e.get(n)))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(const n of t)if(!e.has(n))return!1;return!0}const i=Object.keys(t);if(i.length!==Object.keys(e).length)return!1;for(const n of i)if(!Object.prototype.hasOwnProperty.call(e,n)||!Object.is(t[n],e[n]))return!1;return!0}U$();const vm=X.createContext(null),G6=vm.Provider,iE=hs.error001();function ot(t,e){const i=X.useContext(vm);if(i===null)throw new Error(iE);return tE(i,t,e)}function jt(){const t=X.useContext(vm);if(t===null)throw new Error(iE);return X.useMemo(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe}),[t])}const NC={display:"none"},F6={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},nE="react-flow__node-desc",rE="react-flow__edge-desc",K6="react-flow__aria-live",J6=t=>t.ariaLiveMessage,eX=t=>t.ariaLabelConfig;function tX({rfId:t}){const e=ot(J6);return O.jsx("div",{id:`${K6}-${t}`,"aria-live":"assertive","aria-atomic":"true",style:F6,children:e})}function iX({rfId:t,disableKeyboardA11y:e}){const i=ot(eX);return O.jsxs(O.Fragment,{children:[O.jsx("div",{id:`${nE}-${t}`,style:NC,children:e?i["node.a11yDescription.default"]:i["node.a11yDescription.keyboardDisabled"]}),O.jsx("div",{id:`${rE}-${t}`,style:NC,children:i["edge.a11yDescription.default"]}),!e&&O.jsx(tX,{rfId:t})]})}const ym=X.forwardRef(({position:t="top-left",children:e,className:i,style:n,...r},s)=>{const a=`${t}`.split("-");return O.jsx("div",{className:ci(["react-flow__panel",i,...a]),style:n,ref:s,...r,children:e})});ym.displayName="Panel";function nX({proOptions:t,position:e="bottom-right"}){return t!=null&&t.hideAttribution?null:O.jsx(ym,{position:e,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:O.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const rX=t=>{const e=[],i=[];for(const[,n]of t.nodeLookup)n.selected&&e.push(n.internals.userNode);for(const[,n]of t.edgeLookup)n.selected&&i.push(n);return{selectedNodes:e,selectedEdges:i}},np=t=>t.id;function sX(t,e){return Mt(t.selectedNodes.map(np),e.selectedNodes.map(np))&&Mt(t.selectedEdges.map(np),e.selectedEdges.map(np))}function oX({onSelectionChange:t}){const e=jt(),{selectedNodes:i,selectedEdges:n}=ot(rX,sX);return X.useEffect(()=>{const r={nodes:i,edges:n};t==null||t(r),e.getState().onSelectionChangeHandlers.forEach(s=>s(r))},[i,n,t]),null}const aX=t=>!!t.onSelectionChangeHandlers;function lX({onSelectionChange:t}){const e=ot(aX);return t||e?O.jsx(oX,{onSelectionChange:t}):null}const Dy=typeof window<"u"?X.useLayoutEffect:X.useEffect,sE=[0,0],cX={x:0,y:0,zoom:1},hX=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],ZC=[...hX,"rfId"],uX=t=>({setNodes:t.setNodes,setEdges:t.setEdges,setMinZoom:t.setMinZoom,setMaxZoom:t.setMaxZoom,setTranslateExtent:t.setTranslateExtent,setNodeExtent:t.setNodeExtent,reset:t.reset,setDefaultNodesAndEdges:t.setDefaultNodesAndEdges}),WC={translateExtent:Bu,nodeOrigin:sE,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function dX(t){const{setNodes:e,setEdges:i,setMinZoom:n,setMaxZoom:r,setTranslateExtent:s,setNodeExtent:a,reset:c,setDefaultNodesAndEdges:h}=ot(uX,Mt),d=jt();Dy(()=>(h(t.defaultNodes,t.defaultEdges),()=>{f.current=WC,c()}),[]);const f=X.useRef(WC);return Dy(()=>{for(const g of ZC){const m=t[g],v=f.current[g];m!==v&&(typeof t[g]>"u"||(g==="nodes"?e(m):g==="edges"?i(m):g==="minZoom"?n(m):g==="maxZoom"?r(m):g==="translateExtent"?s(m):g==="nodeExtent"?a(m):g==="ariaLabelConfig"?d.setState({ariaLabelConfig:UL(m)}):g==="fitView"?d.setState({fitViewQueued:m}):g==="fitViewOptions"?d.setState({fitViewOptions:m}):d.setState({[g]:m})))}f.current=t},ZC.map(g=>t[g])),null}function qC(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function fX(t){var n;const[e,i]=X.useState(t==="system"?null:t);return X.useEffect(()=>{if(t!=="system"){i(t);return}const r=qC(),s=()=>i(r!=null&&r.matches?"dark":"light");return s(),r==null||r.addEventListener("change",s),()=>{r==null||r.removeEventListener("change",s)}},[t]),e!==null?e:(n=qC())!=null&&n.matches?"dark":"light"}const IC=typeof document<"u"?document:null;function Zu(t=null,e={target:IC,actInsideInputWithModifier:!0}){const[i,n]=X.useState(!1),r=X.useRef(!1),s=X.useRef(new Set([])),[a,c]=X.useMemo(()=>{if(t!==null){const d=(Array.isArray(t)?t:[t]).filter(g=>typeof g=="string").map(g=>g.replace("+",`
66
- `).replace(`
67
-
68
- `,`
69
- +`).split(`
70
- `)),f=d.reduce((g,m)=>g.concat(...m),[]);return[d,f]}return[[],[]]},[t]);return X.useEffect(()=>{const h=(e==null?void 0:e.target)??IC,d=(e==null?void 0:e.actInsideInputWithModifier)??!0;if(t!==null){const f=v=>{var w,x;if(r.current=v.ctrlKey||v.metaKey||v.shiftKey||v.altKey,(!r.current||r.current&&!d)&&BP(v))return!1;const _=YC(v.code,c);if(s.current.add(v[_]),VC(a,s.current,!1)){const Q=((x=(w=v.composedPath)==null?void 0:w.call(v))==null?void 0:x[0])||v.target,C=(Q==null?void 0:Q.nodeName)==="BUTTON"||(Q==null?void 0:Q.nodeName)==="A";e.preventDefault!==!1&&(r.current||!C)&&v.preventDefault(),n(!0)}},g=v=>{const S=YC(v.code,c);VC(a,s.current,!0)?(n(!1),s.current.clear()):s.current.delete(v[S]),v.key==="Meta"&&s.current.clear(),r.current=!1},m=()=>{s.current.clear(),n(!1)};return h==null||h.addEventListener("keydown",f),h==null||h.addEventListener("keyup",g),window.addEventListener("blur",m),window.addEventListener("contextmenu",m),()=>{h==null||h.removeEventListener("keydown",f),h==null||h.removeEventListener("keyup",g),window.removeEventListener("blur",m),window.removeEventListener("contextmenu",m)}}},[t,n]),i}function VC(t,e,i){return t.filter(n=>i||n.length===e.size).some(n=>n.every(r=>e.has(r)))}function YC(t,e){return e.includes(t)?"code":"key"}const pX=()=>{const t=jt();return X.useMemo(()=>({zoomIn:e=>{const{panZoom:i}=t.getState();return i?i.scaleBy(1.2,e):Promise.resolve(!1)},zoomOut:e=>{const{panZoom:i}=t.getState();return i?i.scaleBy(1/1.2,e):Promise.resolve(!1)},zoomTo:(e,i)=>{const{panZoom:n}=t.getState();return n?n.scaleTo(e,i):Promise.resolve(!1)},getZoom:()=>t.getState().transform[2],setViewport:async(e,i)=>{const{transform:[n,r,s],panZoom:a}=t.getState();return a?(await a.setViewport({x:e.x??n,y:e.y??r,zoom:e.zoom??s},i),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[e,i,n]=t.getState().transform;return{x:e,y:i,zoom:n}},setCenter:async(e,i,n)=>t.getState().setCenter(e,i,n),fitBounds:async(e,i)=>{const{width:n,height:r,minZoom:s,maxZoom:a,panZoom:c}=t.getState(),h=A1(e,n,r,s,a,(i==null?void 0:i.padding)??.1);return c?(await c.setViewport(h,{duration:i==null?void 0:i.duration,ease:i==null?void 0:i.ease,interpolate:i==null?void 0:i.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(e,i={})=>{const{transform:n,snapGrid:r,snapToGrid:s,domNode:a}=t.getState();if(!a)return e;const{x:c,y:h}=a.getBoundingClientRect(),d={x:e.x-c,y:e.y-h},f=i.snapGrid??r,g=i.snapToGrid??s;return md(d,n,g,f)},flowToScreenPosition:e=>{const{transform:i,domNode:n}=t.getState();if(!n)return e;const{x:r,y:s}=n.getBoundingClientRect(),a=_g(e,i);return{x:a.x+r,y:a.y+s}}}),[])};function oE(t,e){const i=[],n=new Map,r=[];for(const s of t)if(s.type==="add"){r.push(s);continue}else if(s.type==="remove"||s.type==="replace")n.set(s.id,[s]);else{const a=n.get(s.id);a?a.push(s):n.set(s.id,[s])}for(const s of e){const a=n.get(s.id);if(!a){i.push(s);continue}if(a[0].type==="remove")continue;if(a[0].type==="replace"){i.push({...a[0].item});continue}const c={...s};for(const h of a)gX(h,c);i.push(c)}return r.length&&r.forEach(s=>{s.index!==void 0?i.splice(s.index,0,{...s.item}):i.push({...s.item})}),i}function gX(t,e){switch(t.type){case"select":{e.selected=t.selected;break}case"position":{typeof t.position<"u"&&(e.position=t.position),typeof t.dragging<"u"&&(e.dragging=t.dragging);break}case"dimensions":{typeof t.dimensions<"u"&&(e.measured={...t.dimensions},t.setAttributes&&((t.setAttributes===!0||t.setAttributes==="width")&&(e.width=t.dimensions.width),(t.setAttributes===!0||t.setAttributes==="height")&&(e.height=t.dimensions.height))),typeof t.resizing=="boolean"&&(e.resizing=t.resizing);break}}}function mX(t,e){return oE(t,e)}function OX(t,e){return oE(t,e)}function Da(t,e){return{id:t,type:"select",selected:e}}function cc(t,e=new Set,i=!1){const n=[];for(const[r,s]of t){const a=e.has(r);!(s.selected===void 0&&!a)&&s.selected!==a&&(i&&(s.selected=a),n.push(Da(s.id,a)))}return n}function HC({items:t=[],lookup:e}){var r;const i=[],n=new Map(t.map(s=>[s.id,s]));for(const[s,a]of t.entries()){const c=e.get(a.id),h=((r=c==null?void 0:c.internals)==null?void 0:r.userNode)??c;h!==void 0&&h!==a&&i.push({id:a.id,item:a,type:"replace"}),h===void 0&&i.push({item:a,type:"add",index:s})}for(const[s]of e)n.get(s)===void 0&&i.push({id:s,type:"remove"});return i}function UC(t){return{id:t.id,type:"remove"}}const GC=t=>LL(t),vX=t=>PP(t);function aE(t){return X.forwardRef(t)}function FC(t){const[e,i]=X.useState(BigInt(0)),[n]=X.useState(()=>yX(()=>i(r=>r+BigInt(1))));return Dy(()=>{const r=n.get();r.length&&(t(r),n.reset())},[e]),n}function yX(t){let e=[];return{get:()=>e,reset:()=>{e=[]},push:i=>{e.push(i),t()}}}const lE=X.createContext(null);function SX({children:t}){const e=jt(),i=X.useCallback(c=>{const{nodes:h=[],setNodes:d,hasDefaultNodes:f,onNodesChange:g,nodeLookup:m,fitViewQueued:v,onNodesChangeMiddlewareMap:S}=e.getState();let _=h;for(const x of c)_=typeof x=="function"?x(_):x;let w=HC({items:_,lookup:m});for(const x of S.values())w=x(w);f&&d(_),w.length>0?g==null||g(w):v&&window.requestAnimationFrame(()=>{const{fitViewQueued:x,nodes:Q,setNodes:C}=e.getState();x&&C(Q)})},[]),n=FC(i),r=X.useCallback(c=>{const{edges:h=[],setEdges:d,hasDefaultEdges:f,onEdgesChange:g,edgeLookup:m}=e.getState();let v=h;for(const S of c)v=typeof S=="function"?S(v):S;f?d(v):g&&g(HC({items:v,lookup:m}))},[]),s=FC(r),a=X.useMemo(()=>({nodeQueue:n,edgeQueue:s}),[]);return O.jsx(lE.Provider,{value:a,children:t})}function bX(){const t=X.useContext(lE);if(!t)throw new Error("useBatchContext must be used within a BatchProvider");return t}const _X=t=>!!t.panZoom;function Sm(){const t=pX(),e=jt(),i=bX(),n=ot(_X),r=X.useMemo(()=>{const s=g=>e.getState().nodeLookup.get(g),a=g=>{i.nodeQueue.push(g)},c=g=>{i.edgeQueue.push(g)},h=g=>{var x,Q;const{nodeLookup:m,nodeOrigin:v}=e.getState(),S=GC(g)?g:m.get(g.id),_=S.parentId?jP(S.position,S.measured,S.parentId,m,v):S.position,w={...S,position:_,width:((x=S.measured)==null?void 0:x.width)??S.width,height:((Q=S.measured)==null?void 0:Q.height)??S.height};return Pc(w)},d=(g,m,v={replace:!1})=>{a(S=>S.map(_=>{if(_.id===g){const w=typeof m=="function"?m(_):m;return v.replace&&GC(w)?w:{..._,...w}}return _}))},f=(g,m,v={replace:!1})=>{c(S=>S.map(_=>{if(_.id===g){const w=typeof m=="function"?m(_):m;return v.replace&&vX(w)?w:{..._,...w}}return _}))};return{getNodes:()=>e.getState().nodes.map(g=>({...g})),getNode:g=>{var m;return(m=s(g))==null?void 0:m.internals.userNode},getInternalNode:s,getEdges:()=>{const{edges:g=[]}=e.getState();return g.map(m=>({...m}))},getEdge:g=>e.getState().edgeLookup.get(g),setNodes:a,setEdges:c,addNodes:g=>{const m=Array.isArray(g)?g:[g];i.nodeQueue.push(v=>[...v,...m])},addEdges:g=>{const m=Array.isArray(g)?g:[g];i.edgeQueue.push(v=>[...v,...m])},toObject:()=>{const{nodes:g=[],edges:m=[],transform:v}=e.getState(),[S,_,w]=v;return{nodes:g.map(x=>({...x})),edges:m.map(x=>({...x})),viewport:{x:S,y:_,zoom:w}}},deleteElements:async({nodes:g=[],edges:m=[]})=>{const{nodes:v,edges:S,onNodesDelete:_,onEdgesDelete:w,triggerNodeChanges:x,triggerEdgeChanges:Q,onDelete:C,onBeforeDelete:T}=e.getState(),{nodes:A,edges:P}=await qL({nodesToRemove:g,edgesToRemove:m,nodes:v,edges:S,onBeforeDelete:T}),M=P.length>0,V=A.length>0;if(M){const H=P.map(UC);w==null||w(P),Q(H)}if(V){const H=A.map(UC);_==null||_(A),x(H)}return(V||M)&&(C==null||C({nodes:A,edges:P})),{deletedNodes:A,deletedEdges:P}},getIntersectingNodes:(g,m=!0,v)=>{const S=_C(g),_=S?g:h(g),w=v!==void 0;return _?(v||e.getState().nodes).filter(x=>{const Q=e.getState().nodeLookup.get(x.id);if(Q&&!S&&(x.id===g.id||!Q.internals.positionAbsolute))return!1;const C=Pc(w?x:Q),T=Xu(C,_);return m&&T>0||T>=C.width*C.height||T>=_.width*_.height}):[]},isNodeIntersecting:(g,m,v=!0)=>{const _=_C(g)?g:h(g);if(!_)return!1;const w=Xu(_,m);return v&&w>0||w>=m.width*m.height||w>=_.width*_.height},updateNode:d,updateNodeData:(g,m,v={replace:!1})=>{d(g,S=>{const _=typeof m=="function"?m(S):m;return v.replace?{...S,data:_}:{...S,data:{...S.data,..._}}},v)},updateEdge:f,updateEdgeData:(g,m,v={replace:!1})=>{f(g,S=>{const _=typeof m=="function"?m(S):m;return v.replace?{...S,data:_}:{...S,data:{...S.data,..._}}},v)},getNodesBounds:g=>{const{nodeLookup:m,nodeOrigin:v}=e.getState();return XL(g,{nodeLookup:m,nodeOrigin:v})},getHandleConnections:({type:g,id:m,nodeId:v})=>{var S;return Array.from(((S=e.getState().connectionLookup.get(`${v}-${g}${m?`-${m}`:""}`))==null?void 0:S.values())??[])},getNodeConnections:({type:g,handleId:m,nodeId:v})=>{var S;return Array.from(((S=e.getState().connectionLookup.get(`${v}${g?m?`-${g}-${m}`:`-${g}`:""}`))==null?void 0:S.values())??[])},fitView:async g=>{const m=e.getState().fitViewResolver??HL();return e.setState({fitViewQueued:!0,fitViewOptions:g,fitViewResolver:m}),i.nodeQueue.push(v=>[...v]),m.promise}}},[]);return X.useMemo(()=>({...r,...t,viewportInitialized:n}),[n])}const KC=t=>t.selected,xX=typeof window<"u"?window:void 0;function wX({deleteKeyCode:t,multiSelectionKeyCode:e}){const i=jt(),{deleteElements:n}=Sm(),r=Zu(t,{actInsideInputWithModifier:!1}),s=Zu(e,{target:xX});X.useEffect(()=>{if(r){const{edges:a,nodes:c}=i.getState();n({nodes:c.filter(KC),edges:a.filter(KC)}),i.setState({nodesSelectionActive:!1})}},[r]),X.useEffect(()=>{i.setState({multiSelectionActive:s})},[s])}function kX(t){const e=jt();X.useEffect(()=>{const i=()=>{var r,s,a,c;if(!t.current||!(((s=(r=t.current).checkVisibility)==null?void 0:s.call(r))??!0))return!1;const n=M1(t.current);(n.height===0||n.width===0)&&((c=(a=e.getState()).onError)==null||c.call(a,"004",hs.error004())),e.setState({width:n.width||500,height:n.height||500})};if(t.current){i(),window.addEventListener("resize",i);const n=new ResizeObserver(()=>i());return n.observe(t.current),()=>{window.removeEventListener("resize",i),n&&t.current&&n.unobserve(t.current)}}},[])}const bm={position:"absolute",width:"100%",height:"100%",top:0,left:0},CX=t=>({userSelectionActive:t.userSelectionActive,lib:t.lib,connectionInProgress:t.connection.inProgress});function TX({onPaneContextMenu:t,zoomOnScroll:e=!0,zoomOnPinch:i=!0,panOnScroll:n=!1,panOnScrollSpeed:r=.5,panOnScrollMode:s=Fa.Free,zoomOnDoubleClick:a=!0,panOnDrag:c=!0,defaultViewport:h,translateExtent:d,minZoom:f,maxZoom:g,zoomActivationKeyCode:m,preventScrolling:v=!0,children:S,noWheelClassName:_,noPanClassName:w,onViewportChange:x,isControlledViewport:Q,paneClickDistance:C,selectionOnDrag:T}){const A=jt(),P=X.useRef(null),{userSelectionActive:M,lib:V,connectionInProgress:H}=ot(CX,Mt),G=Zu(m),N=X.useRef();kX(P);const j=X.useCallback(B=>{x==null||x({x:B[0],y:B[1],zoom:B[2]}),Q||A.setState({transform:B})},[x,Q]);return X.useEffect(()=>{if(P.current){N.current=E6({domNode:P.current,minZoom:f,maxZoom:g,translateExtent:d,viewport:h,onDraggingChange:$=>A.setState(Z=>Z.paneDragging===$?Z:{paneDragging:$}),onPanZoomStart:($,Z)=>{const{onViewportChangeStart:z,onMoveStart:L}=A.getState();L==null||L($,Z),z==null||z(Z)},onPanZoom:($,Z)=>{const{onViewportChange:z,onMove:L}=A.getState();L==null||L($,Z),z==null||z(Z)},onPanZoomEnd:($,Z)=>{const{onViewportChangeEnd:z,onMoveEnd:L}=A.getState();L==null||L($,Z),z==null||z(Z)}});const{x:B,y:E,zoom:W}=N.current.getViewport();return A.setState({panZoom:N.current,transform:[B,E,W],domNode:P.current.closest(".react-flow")}),()=>{var $;($=N.current)==null||$.destroy()}}},[]),X.useEffect(()=>{var B;(B=N.current)==null||B.update({onPaneContextMenu:t,zoomOnScroll:e,zoomOnPinch:i,panOnScroll:n,panOnScrollSpeed:r,panOnScrollMode:s,zoomOnDoubleClick:a,panOnDrag:c,zoomActivationKeyPressed:G,preventScrolling:v,noPanClassName:w,userSelectionActive:M,noWheelClassName:_,lib:V,onTransformChange:j,connectionInProgress:H,selectionOnDrag:T,paneClickDistance:C})},[t,e,i,n,r,s,a,c,G,v,w,M,_,V,j,H,T,C]),O.jsx("div",{className:"react-flow__renderer",ref:P,style:bm,children:S})}const QX=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function $X(){const{userSelectionActive:t,userSelectionRect:e}=ot(QX,Mt);return t&&e?O.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:e.width,height:e.height,transform:`translate(${e.x}px, ${e.y}px)`}}):null}const pv=(t,e)=>i=>{i.target===e.current&&(t==null||t(i))},PX=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,connectionInProgress:t.connection.inProgress,dragging:t.paneDragging});function EX({isSelecting:t,selectionKeyPressed:e,selectionMode:i=Lu.Full,panOnDrag:n,paneClickDistance:r,selectionOnDrag:s,onSelectionStart:a,onSelectionEnd:c,onPaneClick:h,onPaneContextMenu:d,onPaneScroll:f,onPaneMouseEnter:g,onPaneMouseMove:m,onPaneMouseLeave:v,children:S}){const _=jt(),{userSelectionActive:w,elementsSelectable:x,dragging:Q,connectionInProgress:C}=ot(PX,Mt),T=x&&(t||w),A=X.useRef(null),P=X.useRef(),M=X.useRef(new Set),V=X.useRef(new Set),H=X.useRef(!1),G=z=>{if(H.current||C){H.current=!1;return}h==null||h(z),_.getState().resetSelectedElements(),_.setState({nodesSelectionActive:!1})},N=z=>{if(Array.isArray(n)&&(n!=null&&n.includes(2))){z.preventDefault();return}d==null||d(z)},j=f?z=>f(z):void 0,B=z=>{H.current&&(z.stopPropagation(),H.current=!1)},E=z=>{var ce,de;const{domNode:L}=_.getState();if(P.current=L==null?void 0:L.getBoundingClientRect(),!P.current)return;const U=z.target===A.current;if(!U&&!!z.target.closest(".nokey")||!t||!(s&&U||e)||z.button!==0||!z.isPrimary)return;(de=(ce=z.target)==null?void 0:ce.setPointerCapture)==null||de.call(ce,z.pointerId),H.current=!1;const{x:J,y:ne}=Pr(z.nativeEvent,P.current);_.setState({userSelectionRect:{width:0,height:0,startX:J,startY:ne,x:J,y:ne}}),U||(z.stopPropagation(),z.preventDefault())},W=z=>{const{userSelectionRect:L,transform:U,nodeLookup:D,edgeLookup:I,connectionLookup:J,triggerNodeChanges:ne,triggerEdgeChanges:ce,defaultEdgeOptions:de,resetSelectedElements:pe}=_.getState();if(!P.current||!L)return;const{x:fe,y:Oe}=Pr(z.nativeEvent,P.current),{startX:je,startY:$e}=L;if(!H.current){const He=e?0:r;if(Math.hypot(fe-je,Oe-$e)<=He)return;pe(),a==null||a(z)}H.current=!0;const Te={startX:je,startY:$e,x:fe<je?fe:je,y:Oe<$e?Oe:$e,width:Math.abs(fe-je),height:Math.abs(Oe-$e)},me=M.current,Be=V.current;M.current=new Set(R1(D,Te,U,i===Lu.Partial,!0).map(He=>He.id)),V.current=new Set;const at=(de==null?void 0:de.selectable)??!0;for(const He of M.current){const Dt=J.get(He);if(Dt)for(const{edgeId:Jt}of Dt.values()){const Gi=I.get(Jt);Gi&&(Gi.selectable??at)&&V.current.add(Jt)}}if(!xC(me,M.current)){const He=cc(D,M.current,!0);ne(He)}if(!xC(Be,V.current)){const He=cc(I,V.current);ce(He)}_.setState({userSelectionRect:Te,userSelectionActive:!0,nodesSelectionActive:!1})},$=z=>{var L,U;z.button===0&&((U=(L=z.target)==null?void 0:L.releasePointerCapture)==null||U.call(L,z.pointerId),!w&&z.target===A.current&&_.getState().userSelectionRect&&(G==null||G(z)),_.setState({userSelectionActive:!1,userSelectionRect:null}),H.current&&(c==null||c(z),_.setState({nodesSelectionActive:M.current.size>0})))},Z=n===!0||Array.isArray(n)&&n.includes(0);return O.jsxs("div",{className:ci(["react-flow__pane",{draggable:Z,dragging:Q,selection:t}]),onClick:T?void 0:pv(G,A),onContextMenu:pv(N,A),onWheel:pv(j,A),onPointerEnter:T?void 0:g,onPointerMove:T?W:m,onPointerUp:T?$:void 0,onPointerDownCapture:T?E:void 0,onClickCapture:T?B:void 0,onPointerLeave:v,ref:A,style:bm,children:[S,O.jsx($X,{})]})}function By({id:t,store:e,unselect:i=!1,nodeRef:n}){const{addSelectedNodes:r,unselectNodesAndEdges:s,multiSelectionActive:a,nodeLookup:c,onError:h}=e.getState(),d=c.get(t);if(!d){h==null||h("012",hs.error012(t));return}e.setState({nodesSelectionActive:!1}),d.selected?(i||d.selected&&a)&&(s({nodes:[d],edges:[]}),requestAnimationFrame(()=>{var f;return(f=n==null?void 0:n.current)==null?void 0:f.blur()})):r([t])}function cE({nodeRef:t,disabled:e=!1,noDragClassName:i,handleSelector:n,nodeId:r,isSelectable:s,nodeClickDistance:a}){const c=jt(),[h,d]=X.useState(!1),f=X.useRef();return X.useEffect(()=>{f.current=O6({getStoreItems:()=>c.getState(),onNodeMouseDown:g=>{By({id:g,store:c,nodeRef:t})},onDragStart:()=>{d(!0)},onDragStop:()=>{d(!1)}})},[]),X.useEffect(()=>{if(!(e||!t.current||!f.current))return f.current.update({noDragClassName:i,handleSelector:n,domNode:t.current,isSelectable:s,nodeId:r,nodeClickDistance:a}),()=>{var g;(g=f.current)==null||g.destroy()}},[i,n,e,s,t,r,a]),h}const RX=t=>e=>e.selected&&(e.draggable||t&&typeof e.draggable>"u");function hE(){const t=jt();return X.useCallback(i=>{const{nodeExtent:n,snapToGrid:r,snapGrid:s,nodesDraggable:a,onError:c,updateNodePositions:h,nodeLookup:d,nodeOrigin:f}=t.getState(),g=new Map,m=RX(a),v=r?s[0]:5,S=r?s[1]:5,_=i.direction.x*v*i.factor,w=i.direction.y*S*i.factor;for(const[,x]of d){if(!m(x))continue;let Q={x:x.internals.positionAbsolute.x+_,y:x.internals.positionAbsolute.y+w};r&&(Q=gd(Q,s));const{position:C,positionAbsolute:T}=EP({nodeId:x.id,nextPosition:Q,nodeLookup:d,nodeExtent:n,nodeOrigin:f,onError:c});x.position=C,x.internals.positionAbsolute=T,g.set(x.id,x)}h(g)},[])}const X1=X.createContext(null),AX=X1.Provider;X1.Consumer;const uE=()=>X.useContext(X1),MX=t=>({connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName,rfId:t.rfId}),zX=(t,e,i)=>n=>{const{connectionClickStartHandle:r,connectionMode:s,connection:a}=n,{fromHandle:c,toHandle:h,isValid:d}=a,f=(h==null?void 0:h.nodeId)===t&&(h==null?void 0:h.id)===e&&(h==null?void 0:h.type)===i;return{connectingFrom:(c==null?void 0:c.nodeId)===t&&(c==null?void 0:c.id)===e&&(c==null?void 0:c.type)===i,connectingTo:f,clickConnecting:(r==null?void 0:r.nodeId)===t&&(r==null?void 0:r.id)===e&&(r==null?void 0:r.type)===i,isPossibleEndHandle:s===Qc.Strict?(c==null?void 0:c.type)!==i:t!==(c==null?void 0:c.nodeId)||e!==(c==null?void 0:c.id),connectionInProcess:!!c,clickConnectionInProcess:!!r,valid:f&&d}};function jX({type:t="source",position:e=Re.Top,isValidConnection:i,isConnectable:n=!0,isConnectableStart:r=!0,isConnectableEnd:s=!0,id:a,onConnect:c,children:h,className:d,onMouseDown:f,onTouchStart:g,...m},v){var W,$;const S=a||null,_=t==="target",w=jt(),x=uE(),{connectOnClick:Q,noPanClassName:C,rfId:T}=ot(MX,Mt),{connectingFrom:A,connectingTo:P,clickConnecting:M,isPossibleEndHandle:V,connectionInProcess:H,clickConnectionInProcess:G,valid:N}=ot(zX(x,S,t),Mt);x||($=(W=w.getState()).onError)==null||$.call(W,"010",hs.error010());const j=Z=>{const{defaultEdgeOptions:z,onConnect:L,hasDefaultEdges:U}=w.getState(),D={...z,...Z};if(U){const{edges:I,setEdges:J}=w.getState();J(t6(D,I))}L==null||L(D),c==null||c(D)},B=Z=>{if(!x)return;const z=LP(Z.nativeEvent);if(r&&(z&&Z.button===0||!z)){const L=w.getState();jy.onPointerDown(Z.nativeEvent,{handleDomNode:Z.currentTarget,autoPanOnConnect:L.autoPanOnConnect,connectionMode:L.connectionMode,connectionRadius:L.connectionRadius,domNode:L.domNode,nodeLookup:L.nodeLookup,lib:L.lib,isTarget:_,handleId:S,nodeId:x,flowId:L.rfId,panBy:L.panBy,cancelConnection:L.cancelConnection,onConnectStart:L.onConnectStart,onConnectEnd:(...U)=>{var D,I;return(I=(D=w.getState()).onConnectEnd)==null?void 0:I.call(D,...U)},updateConnection:L.updateConnection,onConnect:j,isValidConnection:i||((...U)=>{var D,I;return((I=(D=w.getState()).isValidConnection)==null?void 0:I.call(D,...U))??!0}),getTransform:()=>w.getState().transform,getFromHandle:()=>w.getState().connection.fromHandle,autoPanSpeed:L.autoPanSpeed,dragThreshold:L.connectionDragThreshold})}z?f==null||f(Z):g==null||g(Z)},E=Z=>{const{onClickConnectStart:z,onClickConnectEnd:L,connectionClickStartHandle:U,connectionMode:D,isValidConnection:I,lib:J,rfId:ne,nodeLookup:ce,connection:de}=w.getState();if(!x||!U&&!r)return;if(!U){z==null||z(Z.nativeEvent,{nodeId:x,handleId:S,handleType:t}),w.setState({connectionClickStartHandle:{nodeId:x,type:t,id:S}});return}const pe=DP(Z.target),fe=i||I,{connection:Oe,isValid:je}=jy.isValid(Z.nativeEvent,{handle:{nodeId:x,id:S,type:t},connectionMode:D,fromNodeId:U.nodeId,fromHandleId:U.id||null,fromType:U.type,isValidConnection:fe,flowId:ne,doc:pe,lib:J,nodeLookup:ce});je&&Oe&&j(Oe);const $e=structuredClone(de);delete $e.inProgress,$e.toPosition=$e.toHandle?$e.toHandle.position:null,L==null||L(Z,$e),w.setState({connectionClickStartHandle:null})};return O.jsx("div",{"data-handleid":S,"data-nodeid":x,"data-handlepos":e,"data-id":`${T}-${x}-${S}-${t}`,className:ci(["react-flow__handle",`react-flow__handle-${e}`,"nodrag",C,d,{source:!_,target:_,connectable:n,connectablestart:r,connectableend:s,clickconnecting:M,connectingfrom:A,connectingto:P,valid:N,connectionindicator:n&&(!H||V)&&(H||G?s:r)}]),onMouseDown:B,onTouchStart:B,onClick:Q?E:void 0,ref:v,...m,children:h})}const Ac=X.memo(aE(jX));function DX({data:t,isConnectable:e,sourcePosition:i=Re.Bottom}){return O.jsxs(O.Fragment,{children:[t==null?void 0:t.label,O.jsx(Ac,{type:"source",position:i,isConnectable:e})]})}function BX({data:t,isConnectable:e,targetPosition:i=Re.Top,sourcePosition:n=Re.Bottom}){return O.jsxs(O.Fragment,{children:[O.jsx(Ac,{type:"target",position:i,isConnectable:e}),t==null?void 0:t.label,O.jsx(Ac,{type:"source",position:n,isConnectable:e})]})}function LX(){return null}function XX({data:t,isConnectable:e,targetPosition:i=Re.Top}){return O.jsxs(O.Fragment,{children:[O.jsx(Ac,{type:"target",position:i,isConnectable:e}),t==null?void 0:t.label]})}const xg={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},JC={input:DX,default:BX,output:XX,group:LX};function NX(t){var e,i,n,r;return t.internals.handleBounds===void 0?{width:t.width??t.initialWidth??((e=t.style)==null?void 0:e.width),height:t.height??t.initialHeight??((i=t.style)==null?void 0:i.height)}:{width:t.width??((n=t.style)==null?void 0:n.width),height:t.height??((r=t.style)==null?void 0:r.height)}}const ZX=t=>{const{width:e,height:i,x:n,y:r}=pd(t.nodeLookup,{filter:s=>!!s.selected});return{width:$r(e)?e:null,height:$r(i)?i:null,userSelectionActive:t.userSelectionActive,transformString:`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]}) translate(${n}px,${r}px)`}};function WX({onSelectionContextMenu:t,noPanClassName:e,disableKeyboardA11y:i}){const n=jt(),{width:r,height:s,transformString:a,userSelectionActive:c}=ot(ZX,Mt),h=hE(),d=X.useRef(null);X.useEffect(()=>{var v;i||(v=d.current)==null||v.focus({preventScroll:!0})},[i]);const f=!c&&r!==null&&s!==null;if(cE({nodeRef:d,disabled:!f}),!f)return null;const g=t?v=>{const S=n.getState().nodes.filter(_=>_.selected);t(v,S)}:void 0,m=v=>{Object.prototype.hasOwnProperty.call(xg,v.key)&&(v.preventDefault(),h({direction:xg[v.key],factor:v.shiftKey?4:1}))};return O.jsx("div",{className:ci(["react-flow__nodesselection","react-flow__container",e]),style:{transform:a},children:O.jsx("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:g,tabIndex:i?void 0:-1,onKeyDown:i?void 0:m,style:{width:r,height:s}})})}const e2=typeof window<"u"?window:void 0,qX=t=>({nodesSelectionActive:t.nodesSelectionActive,userSelectionActive:t.userSelectionActive});function dE({children:t,onPaneClick:e,onPaneMouseEnter:i,onPaneMouseMove:n,onPaneMouseLeave:r,onPaneContextMenu:s,onPaneScroll:a,paneClickDistance:c,deleteKeyCode:h,selectionKeyCode:d,selectionOnDrag:f,selectionMode:g,onSelectionStart:m,onSelectionEnd:v,multiSelectionKeyCode:S,panActivationKeyCode:_,zoomActivationKeyCode:w,elementsSelectable:x,zoomOnScroll:Q,zoomOnPinch:C,panOnScroll:T,panOnScrollSpeed:A,panOnScrollMode:P,zoomOnDoubleClick:M,panOnDrag:V,defaultViewport:H,translateExtent:G,minZoom:N,maxZoom:j,preventScrolling:B,onSelectionContextMenu:E,noWheelClassName:W,noPanClassName:$,disableKeyboardA11y:Z,onViewportChange:z,isControlledViewport:L}){const{nodesSelectionActive:U,userSelectionActive:D}=ot(qX,Mt),I=Zu(d,{target:e2}),J=Zu(_,{target:e2}),ne=J||V,ce=J||T,de=f&&ne!==!0,pe=I||D||de;return wX({deleteKeyCode:h,multiSelectionKeyCode:S}),O.jsx(TX,{onPaneContextMenu:s,elementsSelectable:x,zoomOnScroll:Q,zoomOnPinch:C,panOnScroll:ce,panOnScrollSpeed:A,panOnScrollMode:P,zoomOnDoubleClick:M,panOnDrag:!I&&ne,defaultViewport:H,translateExtent:G,minZoom:N,maxZoom:j,zoomActivationKeyCode:w,preventScrolling:B,noWheelClassName:W,noPanClassName:$,onViewportChange:z,isControlledViewport:L,paneClickDistance:c,selectionOnDrag:de,children:O.jsxs(EX,{onSelectionStart:m,onSelectionEnd:v,onPaneClick:e,onPaneMouseEnter:i,onPaneMouseMove:n,onPaneMouseLeave:r,onPaneContextMenu:s,onPaneScroll:a,panOnDrag:ne,isSelecting:!!pe,selectionMode:g,selectionKeyPressed:I,paneClickDistance:c,selectionOnDrag:de,children:[t,U&&O.jsx(WX,{onSelectionContextMenu:E,noPanClassName:$,disableKeyboardA11y:Z})]})})}dE.displayName="FlowRenderer";const IX=X.memo(dE),VX=t=>e=>t?R1(e.nodeLookup,{x:0,y:0,width:e.width,height:e.height},e.transform,!0).map(i=>i.id):Array.from(e.nodeLookup.keys());function YX(t){return ot(X.useCallback(VX(t),[t]),Mt)}const HX=t=>t.updateNodeInternals;function UX(){const t=ot(HX),[e]=X.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(i=>{const n=new Map;i.forEach(r=>{const s=r.target.getAttribute("data-id");n.set(s,{id:s,nodeElement:r.target,force:!0})}),t(n)}));return X.useEffect(()=>()=>{e==null||e.disconnect()},[e]),e}function GX({node:t,nodeType:e,hasDimensions:i,resizeObserver:n}){const r=jt(),s=X.useRef(null),a=X.useRef(null),c=X.useRef(t.sourcePosition),h=X.useRef(t.targetPosition),d=X.useRef(e),f=i&&!!t.internals.handleBounds;return X.useEffect(()=>{s.current&&!t.hidden&&(!f||a.current!==s.current)&&(a.current&&(n==null||n.unobserve(a.current)),n==null||n.observe(s.current),a.current=s.current)},[f,t.hidden]),X.useEffect(()=>()=>{a.current&&(n==null||n.unobserve(a.current),a.current=null)},[]),X.useEffect(()=>{if(s.current){const g=d.current!==e,m=c.current!==t.sourcePosition,v=h.current!==t.targetPosition;(g||m||v)&&(d.current=e,c.current=t.sourcePosition,h.current=t.targetPosition,r.getState().updateNodeInternals(new Map([[t.id,{id:t.id,nodeElement:s.current,force:!0}]])))}},[t.id,e,t.sourcePosition,t.targetPosition]),s}function FX({id:t,onClick:e,onMouseEnter:i,onMouseMove:n,onMouseLeave:r,onContextMenu:s,onDoubleClick:a,nodesDraggable:c,elementsSelectable:h,nodesConnectable:d,nodesFocusable:f,resizeObserver:g,noDragClassName:m,noPanClassName:v,disableKeyboardA11y:S,rfId:_,nodeTypes:w,nodeClickDistance:x,onError:Q}){const{node:C,internals:T,isParent:A}=ot(fe=>{const Oe=fe.nodeLookup.get(t),je=fe.parentLookup.has(t);return{node:Oe,internals:Oe.internals,isParent:je}},Mt);let P=C.type||"default",M=(w==null?void 0:w[P])||JC[P];M===void 0&&(Q==null||Q("003",hs.error003(P)),P="default",M=(w==null?void 0:w.default)||JC.default);const V=!!(C.draggable||c&&typeof C.draggable>"u"),H=!!(C.selectable||h&&typeof C.selectable>"u"),G=!!(C.connectable||d&&typeof C.connectable>"u"),N=!!(C.focusable||f&&typeof C.focusable>"u"),j=jt(),B=zP(C),E=GX({node:C,nodeType:P,hasDimensions:B,resizeObserver:g}),W=cE({nodeRef:E,disabled:C.hidden||!V,noDragClassName:m,handleSelector:C.dragHandle,nodeId:t,isSelectable:H,nodeClickDistance:x}),$=hE();if(C.hidden)return null;const Z=Js(C),z=NX(C),L=H||V||e||i||n||r,U=i?fe=>i(fe,{...T.userNode}):void 0,D=n?fe=>n(fe,{...T.userNode}):void 0,I=r?fe=>r(fe,{...T.userNode}):void 0,J=s?fe=>s(fe,{...T.userNode}):void 0,ne=a?fe=>a(fe,{...T.userNode}):void 0,ce=fe=>{const{selectNodesOnDrag:Oe,nodeDragThreshold:je}=j.getState();H&&(!Oe||!V||je>0)&&By({id:t,store:j,nodeRef:E}),e&&e(fe,{...T.userNode})},de=fe=>{if(!(BP(fe.nativeEvent)||S)){if(CP.includes(fe.key)&&H){const Oe=fe.key==="Escape";By({id:t,store:j,unselect:Oe,nodeRef:E})}else if(V&&C.selected&&Object.prototype.hasOwnProperty.call(xg,fe.key)){fe.preventDefault();const{ariaLabelConfig:Oe}=j.getState();j.setState({ariaLiveMessage:Oe["node.a11yDescription.ariaLiveMessage"]({direction:fe.key.replace("Arrow","").toLowerCase(),x:~~T.positionAbsolute.x,y:~~T.positionAbsolute.y})}),$({direction:xg[fe.key],factor:fe.shiftKey?4:1})}}},pe=()=>{var Be;if(S||!((Be=E.current)!=null&&Be.matches(":focus-visible")))return;const{transform:fe,width:Oe,height:je,autoPanOnNodeFocus:$e,setCenter:Te}=j.getState();if(!$e)return;R1(new Map([[t,C]]),{x:0,y:0,width:Oe,height:je},fe,!0).length>0||Te(C.position.x+Z.width/2,C.position.y+Z.height/2,{zoom:fe[2]})};return O.jsx("div",{className:ci(["react-flow__node",`react-flow__node-${P}`,{[v]:V},C.className,{selected:C.selected,selectable:H,parent:A,draggable:V,dragging:W}]),ref:E,style:{zIndex:T.z,transform:`translate(${T.positionAbsolute.x}px,${T.positionAbsolute.y}px)`,pointerEvents:L?"all":"none",visibility:B?"visible":"hidden",...C.style,...z},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:U,onMouseMove:D,onMouseLeave:I,onContextMenu:J,onClick:ce,onDoubleClick:ne,onKeyDown:N?de:void 0,tabIndex:N?0:void 0,onFocus:N?pe:void 0,role:C.ariaRole??(N?"group":void 0),"aria-roledescription":"node","aria-describedby":S?void 0:`${nE}-${_}`,"aria-label":C.ariaLabel,...C.domAttributes,children:O.jsx(AX,{value:t,children:O.jsx(M,{id:t,data:C.data,type:P,positionAbsoluteX:T.positionAbsolute.x,positionAbsoluteY:T.positionAbsolute.y,selected:C.selected??!1,selectable:H,draggable:V,deletable:C.deletable??!0,isConnectable:G,sourcePosition:C.sourcePosition,targetPosition:C.targetPosition,dragging:W,dragHandle:C.dragHandle,zIndex:T.z,parentId:C.parentId,...Z})})})}var KX=X.memo(FX);const JX=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,onError:t.onError});function fE(t){const{nodesDraggable:e,nodesConnectable:i,nodesFocusable:n,elementsSelectable:r,onError:s}=ot(JX,Mt),a=YX(t.onlyRenderVisibleElements),c=UX();return O.jsx("div",{className:"react-flow__nodes",style:bm,children:a.map(h=>O.jsx(KX,{id:h,nodeTypes:t.nodeTypes,nodeExtent:t.nodeExtent,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,resizeObserver:c,nodesDraggable:e,nodesConnectable:i,nodesFocusable:n,elementsSelectable:r,nodeClickDistance:t.nodeClickDistance,onError:s},h))})}fE.displayName="NodeRenderer";const eN=X.memo(fE);function tN(t){return ot(X.useCallback(i=>{if(!t)return i.edges.map(r=>r.id);const n=[];if(i.width&&i.height)for(const r of i.edges){const s=i.nodeLookup.get(r.source),a=i.nodeLookup.get(r.target);s&&a&&KL({sourceNode:s,targetNode:a,width:i.width,height:i.height,transform:i.transform})&&n.push(r.id)}return n},[t]),Mt)}const iN=({color:t="none",strokeWidth:e=1})=>{const i={strokeWidth:e,...t&&{stroke:t}};return O.jsx("polyline",{className:"arrow",style:i,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},nN=({color:t="none",strokeWidth:e=1})=>{const i={strokeWidth:e,...t&&{stroke:t,fill:t}};return O.jsx("polyline",{className:"arrowclosed",style:i,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},t2={[Sg.Arrow]:iN,[Sg.ArrowClosed]:nN};function rN(t){const e=jt();return X.useMemo(()=>{var r,s;return Object.prototype.hasOwnProperty.call(t2,t)?t2[t]:((s=(r=e.getState()).onError)==null||s.call(r,"009",hs.error009(t)),null)},[t])}const sN=({id:t,type:e,color:i,width:n=12.5,height:r=12.5,markerUnits:s="strokeWidth",strokeWidth:a,orient:c="auto-start-reverse"})=>{const h=rN(e);return h?O.jsx("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${n}`,markerHeight:`${r}`,viewBox:"-10 -10 20 20",markerUnits:s,orient:c,refX:"0",refY:"0",children:O.jsx(h,{color:i,strokeWidth:a})}):null},pE=({defaultColor:t,rfId:e})=>{const i=ot(s=>s.edges),n=ot(s=>s.defaultEdgeOptions),r=X.useMemo(()=>o6(i,{id:e,defaultColor:t,defaultMarkerStart:n==null?void 0:n.markerStart,defaultMarkerEnd:n==null?void 0:n.markerEnd}),[i,n,e,t]);return r.length?O.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:O.jsx("defs",{children:r.map(s=>O.jsx(sN,{id:s.id,type:s.type,color:s.color,width:s.width,height:s.height,markerUnits:s.markerUnits,strokeWidth:s.strokeWidth,orient:s.orient},s.id))})}):null};pE.displayName="MarkerDefinitions";var oN=X.memo(pE);function gE({x:t,y:e,label:i,labelStyle:n,labelShowBg:r=!0,labelBgStyle:s,labelBgPadding:a=[2,4],labelBgBorderRadius:c=2,children:h,className:d,...f}){const[g,m]=X.useState({x:1,y:0,width:0,height:0}),v=ci(["react-flow__edge-textwrapper",d]),S=X.useRef(null);return X.useEffect(()=>{if(S.current){const _=S.current.getBBox();m({x:_.x,y:_.y,width:_.width,height:_.height})}},[i]),i?O.jsxs("g",{transform:`translate(${t-g.width/2} ${e-g.height/2})`,className:v,visibility:g.width?"visible":"hidden",...f,children:[r&&O.jsx("rect",{width:g.width+2*a[0],x:-a[0],y:-a[1],height:g.height+2*a[1],className:"react-flow__edge-textbg",style:s,rx:c,ry:c}),O.jsx("text",{className:"react-flow__edge-text",y:g.height/2,dy:"0.3em",ref:S,style:n,children:i}),h]}):null}gE.displayName="EdgeText";const aN=X.memo(gE);function _m({path:t,labelX:e,labelY:i,label:n,labelStyle:r,labelShowBg:s,labelBgStyle:a,labelBgPadding:c,labelBgBorderRadius:h,interactionWidth:d=20,...f}){return O.jsxs(O.Fragment,{children:[O.jsx("path",{...f,d:t,fill:"none",className:ci(["react-flow__edge-path",f.className])}),d?O.jsx("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:d,className:"react-flow__edge-interaction"}):null,n&&$r(e)&&$r(i)?O.jsx(aN,{x:e,y:i,label:n,labelStyle:r,labelShowBg:s,labelBgStyle:a,labelBgPadding:c,labelBgBorderRadius:h}):null]})}function i2({pos:t,x1:e,y1:i,x2:n,y2:r}){return t===Re.Left||t===Re.Right?[.5*(e+n),i]:[e,.5*(i+r)]}function mE({sourceX:t,sourceY:e,sourcePosition:i=Re.Bottom,targetX:n,targetY:r,targetPosition:s=Re.Top}){const[a,c]=i2({pos:i,x1:t,y1:e,x2:n,y2:r}),[h,d]=i2({pos:s,x1:n,y1:r,x2:t,y2:e}),[f,g,m,v]=XP({sourceX:t,sourceY:e,targetX:n,targetY:r,sourceControlX:a,sourceControlY:c,targetControlX:h,targetControlY:d});return[`M${t},${e} C${a},${c} ${h},${d} ${n},${r}`,f,g,m,v]}function OE(t){return X.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,sourcePosition:a,targetPosition:c,label:h,labelStyle:d,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:_,markerStart:w,interactionWidth:x})=>{const[Q,C,T]=mE({sourceX:i,sourceY:n,sourcePosition:a,targetX:r,targetY:s,targetPosition:c}),A=t.isInternal?void 0:e;return O.jsx(_m,{id:A,path:Q,labelX:C,labelY:T,label:h,labelStyle:d,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:_,markerStart:w,interactionWidth:x})})}const lN=OE({isInternal:!1}),vE=OE({isInternal:!0});lN.displayName="SimpleBezierEdge";vE.displayName="SimpleBezierEdgeInternal";function yE(t){return X.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:g,style:m,sourcePosition:v=Re.Bottom,targetPosition:S=Re.Top,markerEnd:_,markerStart:w,pathOptions:x,interactionWidth:Q})=>{const[C,T,A]=Ay({sourceX:i,sourceY:n,sourcePosition:v,targetX:r,targetY:s,targetPosition:S,borderRadius:x==null?void 0:x.borderRadius,offset:x==null?void 0:x.offset,stepPosition:x==null?void 0:x.stepPosition}),P=t.isInternal?void 0:e;return O.jsx(_m,{id:P,path:C,labelX:T,labelY:A,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:g,style:m,markerEnd:_,markerStart:w,interactionWidth:Q})})}const SE=yE({isInternal:!1}),bE=yE({isInternal:!0});SE.displayName="SmoothStepEdge";bE.displayName="SmoothStepEdgeInternal";function _E(t){return X.memo(({id:e,...i})=>{var r;const n=t.isInternal?void 0:e;return O.jsx(SE,{...i,id:n,pathOptions:X.useMemo(()=>{var s;return{borderRadius:0,offset:(s=i.pathOptions)==null?void 0:s.offset}},[(r=i.pathOptions)==null?void 0:r.offset])})})}const cN=_E({isInternal:!1}),xE=_E({isInternal:!0});cN.displayName="StepEdge";xE.displayName="StepEdgeInternal";function wE(t){return X.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:g,style:m,markerEnd:v,markerStart:S,interactionWidth:_})=>{const[w,x,Q]=WP({sourceX:i,sourceY:n,targetX:r,targetY:s}),C=t.isInternal?void 0:e;return O.jsx(_m,{id:C,path:w,labelX:x,labelY:Q,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:g,style:m,markerEnd:v,markerStart:S,interactionWidth:_})})}const hN=wE({isInternal:!1}),kE=wE({isInternal:!0});hN.displayName="StraightEdge";kE.displayName="StraightEdgeInternal";function CE(t){return X.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,sourcePosition:a=Re.Bottom,targetPosition:c=Re.Top,label:h,labelStyle:d,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:_,markerStart:w,pathOptions:x,interactionWidth:Q})=>{const[C,T,A]=NP({sourceX:i,sourceY:n,sourcePosition:a,targetX:r,targetY:s,targetPosition:c,curvature:x==null?void 0:x.curvature}),P=t.isInternal?void 0:e;return O.jsx(_m,{id:P,path:C,labelX:T,labelY:A,label:h,labelStyle:d,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:_,markerStart:w,interactionWidth:Q})})}const uN=CE({isInternal:!1}),TE=CE({isInternal:!0});uN.displayName="BezierEdge";TE.displayName="BezierEdgeInternal";const n2={default:TE,straight:kE,step:xE,smoothstep:bE,simplebezier:vE},r2={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},dN=(t,e,i)=>i===Re.Left?t-e:i===Re.Right?t+e:t,fN=(t,e,i)=>i===Re.Top?t-e:i===Re.Bottom?t+e:t,s2="react-flow__edgeupdater";function o2({position:t,centerX:e,centerY:i,radius:n=10,onMouseDown:r,onMouseEnter:s,onMouseOut:a,type:c}){return O.jsx("circle",{onMouseDown:r,onMouseEnter:s,onMouseOut:a,className:ci([s2,`${s2}-${c}`]),cx:dN(e,n,t),cy:fN(i,n,t),r:n,stroke:"transparent",fill:"transparent"})}function pN({isReconnectable:t,reconnectRadius:e,edge:i,sourceX:n,sourceY:r,targetX:s,targetY:a,sourcePosition:c,targetPosition:h,onReconnect:d,onReconnectStart:f,onReconnectEnd:g,setReconnecting:m,setUpdateHover:v}){const S=jt(),_=(T,A)=>{if(T.button!==0)return;const{autoPanOnConnect:P,domNode:M,connectionMode:V,connectionRadius:H,lib:G,onConnectStart:N,cancelConnection:j,nodeLookup:B,rfId:E,panBy:W,updateConnection:$}=S.getState(),Z=A.type==="target",z=(D,I)=>{m(!1),g==null||g(D,i,A.type,I)},L=D=>d==null?void 0:d(i,D),U=(D,I)=>{m(!0),f==null||f(T,i,A.type),N==null||N(D,I)};jy.onPointerDown(T.nativeEvent,{autoPanOnConnect:P,connectionMode:V,connectionRadius:H,domNode:M,handleId:A.id,nodeId:A.nodeId,nodeLookup:B,isTarget:Z,edgeUpdaterType:A.type,lib:G,flowId:E,cancelConnection:j,panBy:W,isValidConnection:(...D)=>{var I,J;return((J=(I=S.getState()).isValidConnection)==null?void 0:J.call(I,...D))??!0},onConnect:L,onConnectStart:U,onConnectEnd:(...D)=>{var I,J;return(J=(I=S.getState()).onConnectEnd)==null?void 0:J.call(I,...D)},onReconnectEnd:z,updateConnection:$,getTransform:()=>S.getState().transform,getFromHandle:()=>S.getState().connection.fromHandle,dragThreshold:S.getState().connectionDragThreshold,handleDomNode:T.currentTarget})},w=T=>_(T,{nodeId:i.target,id:i.targetHandle??null,type:"target"}),x=T=>_(T,{nodeId:i.source,id:i.sourceHandle??null,type:"source"}),Q=()=>v(!0),C=()=>v(!1);return O.jsxs(O.Fragment,{children:[(t===!0||t==="source")&&O.jsx(o2,{position:c,centerX:n,centerY:r,radius:e,onMouseDown:w,onMouseEnter:Q,onMouseOut:C,type:"source"}),(t===!0||t==="target")&&O.jsx(o2,{position:h,centerX:s,centerY:a,radius:e,onMouseDown:x,onMouseEnter:Q,onMouseOut:C,type:"target"})]})}function gN({id:t,edgesFocusable:e,edgesReconnectable:i,elementsSelectable:n,onClick:r,onDoubleClick:s,onContextMenu:a,onMouseEnter:c,onMouseMove:h,onMouseLeave:d,reconnectRadius:f,onReconnect:g,onReconnectStart:m,onReconnectEnd:v,rfId:S,edgeTypes:_,noPanClassName:w,onError:x,disableKeyboardA11y:Q}){let C=ot(Te=>Te.edgeLookup.get(t));const T=ot(Te=>Te.defaultEdgeOptions);C=T?{...T,...C}:C;let A=C.type||"default",P=(_==null?void 0:_[A])||n2[A];P===void 0&&(x==null||x("011",hs.error011(A)),A="default",P=(_==null?void 0:_.default)||n2.default);const M=!!(C.focusable||e&&typeof C.focusable>"u"),V=typeof g<"u"&&(C.reconnectable||i&&typeof C.reconnectable>"u"),H=!!(C.selectable||n&&typeof C.selectable>"u"),G=X.useRef(null),[N,j]=X.useState(!1),[B,E]=X.useState(!1),W=jt(),{zIndex:$,sourceX:Z,sourceY:z,targetX:L,targetY:U,sourcePosition:D,targetPosition:I}=ot(X.useCallback(Te=>{const me=Te.nodeLookup.get(C.source),Be=Te.nodeLookup.get(C.target);if(!me||!Be)return{zIndex:C.zIndex,...r2};const at=s6({id:t,sourceNode:me,targetNode:Be,sourceHandle:C.sourceHandle||null,targetHandle:C.targetHandle||null,connectionMode:Te.connectionMode,onError:x});return{zIndex:FL({selected:C.selected,zIndex:C.zIndex,sourceNode:me,targetNode:Be,elevateOnSelect:Te.elevateEdgesOnSelect,zIndexMode:Te.zIndexMode}),...at||r2}},[C.source,C.target,C.sourceHandle,C.targetHandle,C.selected,C.zIndex]),Mt),J=X.useMemo(()=>C.markerStart?`url('#${My(C.markerStart,S)}')`:void 0,[C.markerStart,S]),ne=X.useMemo(()=>C.markerEnd?`url('#${My(C.markerEnd,S)}')`:void 0,[C.markerEnd,S]);if(C.hidden||Z===null||z===null||L===null||U===null)return null;const ce=Te=>{var He;const{addSelectedEdges:me,unselectNodesAndEdges:Be,multiSelectionActive:at}=W.getState();H&&(W.setState({nodesSelectionActive:!1}),C.selected&&at?(Be({nodes:[],edges:[C]}),(He=G.current)==null||He.blur()):me([t])),r&&r(Te,C)},de=s?Te=>{s(Te,{...C})}:void 0,pe=a?Te=>{a(Te,{...C})}:void 0,fe=c?Te=>{c(Te,{...C})}:void 0,Oe=h?Te=>{h(Te,{...C})}:void 0,je=d?Te=>{d(Te,{...C})}:void 0,$e=Te=>{var me;if(!Q&&CP.includes(Te.key)&&H){const{unselectNodesAndEdges:Be,addSelectedEdges:at}=W.getState();Te.key==="Escape"?((me=G.current)==null||me.blur(),Be({edges:[C]})):at([t])}};return O.jsx("svg",{style:{zIndex:$},children:O.jsxs("g",{className:ci(["react-flow__edge",`react-flow__edge-${A}`,C.className,w,{selected:C.selected,animated:C.animated,inactive:!H&&!r,updating:N,selectable:H}]),onClick:ce,onDoubleClick:de,onContextMenu:pe,onMouseEnter:fe,onMouseMove:Oe,onMouseLeave:je,onKeyDown:M?$e:void 0,tabIndex:M?0:void 0,role:C.ariaRole??(M?"group":"img"),"aria-roledescription":"edge","data-id":t,"data-testid":`rf__edge-${t}`,"aria-label":C.ariaLabel===null?void 0:C.ariaLabel||`Edge from ${C.source} to ${C.target}`,"aria-describedby":M?`${rE}-${S}`:void 0,ref:G,...C.domAttributes,children:[!B&&O.jsx(P,{id:t,source:C.source,target:C.target,type:C.type,selected:C.selected,animated:C.animated,selectable:H,deletable:C.deletable??!0,label:C.label,labelStyle:C.labelStyle,labelShowBg:C.labelShowBg,labelBgStyle:C.labelBgStyle,labelBgPadding:C.labelBgPadding,labelBgBorderRadius:C.labelBgBorderRadius,sourceX:Z,sourceY:z,targetX:L,targetY:U,sourcePosition:D,targetPosition:I,data:C.data,style:C.style,sourceHandleId:C.sourceHandle,targetHandleId:C.targetHandle,markerStart:J,markerEnd:ne,pathOptions:"pathOptions"in C?C.pathOptions:void 0,interactionWidth:C.interactionWidth}),V&&O.jsx(pN,{edge:C,isReconnectable:V,reconnectRadius:f,onReconnect:g,onReconnectStart:m,onReconnectEnd:v,sourceX:Z,sourceY:z,targetX:L,targetY:U,sourcePosition:D,targetPosition:I,setUpdateHover:j,setReconnecting:E})]})})}var mN=X.memo(gN);const ON=t=>({edgesFocusable:t.edgesFocusable,edgesReconnectable:t.edgesReconnectable,elementsSelectable:t.elementsSelectable,connectionMode:t.connectionMode,onError:t.onError});function QE({defaultMarkerColor:t,onlyRenderVisibleElements:e,rfId:i,edgeTypes:n,noPanClassName:r,onReconnect:s,onEdgeContextMenu:a,onEdgeMouseEnter:c,onEdgeMouseMove:h,onEdgeMouseLeave:d,onEdgeClick:f,reconnectRadius:g,onEdgeDoubleClick:m,onReconnectStart:v,onReconnectEnd:S,disableKeyboardA11y:_}){const{edgesFocusable:w,edgesReconnectable:x,elementsSelectable:Q,onError:C}=ot(ON,Mt),T=tN(e);return O.jsxs("div",{className:"react-flow__edges",children:[O.jsx(oN,{defaultColor:t,rfId:i}),T.map(A=>O.jsx(mN,{id:A,edgesFocusable:w,edgesReconnectable:x,elementsSelectable:Q,noPanClassName:r,onReconnect:s,onContextMenu:a,onMouseEnter:c,onMouseMove:h,onMouseLeave:d,onClick:f,reconnectRadius:g,onDoubleClick:m,onReconnectStart:v,onReconnectEnd:S,rfId:i,onError:C,edgeTypes:n,disableKeyboardA11y:_},A))]})}QE.displayName="EdgeRenderer";const vN=X.memo(QE),yN=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function SN({children:t}){const e=ot(yN);return O.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:e},children:t})}function bN(t){const e=Sm(),i=X.useRef(!1);X.useEffect(()=>{!i.current&&e.viewportInitialized&&t&&(setTimeout(()=>t(e),1),i.current=!0)},[t,e.viewportInitialized])}const _N=t=>{var e;return(e=t.panZoom)==null?void 0:e.syncViewport};function xN(t){const e=ot(_N),i=jt();return X.useEffect(()=>{t&&(e==null||e(t),i.setState({transform:[t.x,t.y,t.zoom]}))},[t,e]),null}function wN(t){return t.connection.inProgress?{...t.connection,to:md(t.connection.to,t.transform)}:{...t.connection}}function kN(t){return wN}function CN(t){const e=kN();return ot(e,Mt)}const TN=t=>({nodesConnectable:t.nodesConnectable,isValid:t.connection.isValid,inProgress:t.connection.inProgress,width:t.width,height:t.height});function QN({containerStyle:t,style:e,type:i,component:n}){const{nodesConnectable:r,width:s,height:a,isValid:c,inProgress:h}=ot(TN,Mt);return!(s&&r&&h)?null:O.jsx("svg",{style:t,width:s,height:a,className:"react-flow__connectionline react-flow__container",children:O.jsx("g",{className:ci(["react-flow__connection",$P(c)]),children:O.jsx($E,{style:e,type:i,CustomComponent:n,isValid:c})})})}const $E=({style:t,type:e=Fo.Bezier,CustomComponent:i,isValid:n})=>{const{inProgress:r,from:s,fromNode:a,fromHandle:c,fromPosition:h,to:d,toNode:f,toHandle:g,toPosition:m,pointer:v}=CN();if(!r)return;if(i)return O.jsx(i,{connectionLineType:e,connectionLineStyle:t,fromNode:a,fromHandle:c,fromX:s.x,fromY:s.y,toX:d.x,toY:d.y,fromPosition:h,toPosition:m,connectionStatus:$P(n),toNode:f,toHandle:g,pointer:v});let S="";const _={sourceX:s.x,sourceY:s.y,sourcePosition:h,targetX:d.x,targetY:d.y,targetPosition:m};switch(e){case Fo.Bezier:[S]=NP(_);break;case Fo.SimpleBezier:[S]=mE(_);break;case Fo.Step:[S]=Ay({..._,borderRadius:0});break;case Fo.SmoothStep:[S]=Ay(_);break;default:[S]=WP(_)}return O.jsx("path",{d:S,fill:"none",className:"react-flow__connection-path",style:t})};$E.displayName="ConnectionLine";const $N={};function a2(t=$N){X.useRef(t),jt(),X.useEffect(()=>{},[t])}function PN(){jt(),X.useRef(!1),X.useEffect(()=>{},[])}function PE({nodeTypes:t,edgeTypes:e,onInit:i,onNodeClick:n,onEdgeClick:r,onNodeDoubleClick:s,onEdgeDoubleClick:a,onNodeMouseEnter:c,onNodeMouseMove:h,onNodeMouseLeave:d,onNodeContextMenu:f,onSelectionContextMenu:g,onSelectionStart:m,onSelectionEnd:v,connectionLineType:S,connectionLineStyle:_,connectionLineComponent:w,connectionLineContainerStyle:x,selectionKeyCode:Q,selectionOnDrag:C,selectionMode:T,multiSelectionKeyCode:A,panActivationKeyCode:P,zoomActivationKeyCode:M,deleteKeyCode:V,onlyRenderVisibleElements:H,elementsSelectable:G,defaultViewport:N,translateExtent:j,minZoom:B,maxZoom:E,preventScrolling:W,defaultMarkerColor:$,zoomOnScroll:Z,zoomOnPinch:z,panOnScroll:L,panOnScrollSpeed:U,panOnScrollMode:D,zoomOnDoubleClick:I,panOnDrag:J,onPaneClick:ne,onPaneMouseEnter:ce,onPaneMouseMove:de,onPaneMouseLeave:pe,onPaneScroll:fe,onPaneContextMenu:Oe,paneClickDistance:je,nodeClickDistance:$e,onEdgeContextMenu:Te,onEdgeMouseEnter:me,onEdgeMouseMove:Be,onEdgeMouseLeave:at,reconnectRadius:He,onReconnect:Dt,onReconnectStart:Jt,onReconnectEnd:Gi,noDragClassName:an,noWheelClassName:mr,noPanClassName:jr,disableKeyboardA11y:fs,nodeExtent:hi,rfId:Or,viewport:Pi,onViewportChange:wn}){return a2(t),a2(e),PN(),bN(i),xN(Pi),O.jsx(IX,{onPaneClick:ne,onPaneMouseEnter:ce,onPaneMouseMove:de,onPaneMouseLeave:pe,onPaneContextMenu:Oe,onPaneScroll:fe,paneClickDistance:je,deleteKeyCode:V,selectionKeyCode:Q,selectionOnDrag:C,selectionMode:T,onSelectionStart:m,onSelectionEnd:v,multiSelectionKeyCode:A,panActivationKeyCode:P,zoomActivationKeyCode:M,elementsSelectable:G,zoomOnScroll:Z,zoomOnPinch:z,zoomOnDoubleClick:I,panOnScroll:L,panOnScrollSpeed:U,panOnScrollMode:D,panOnDrag:J,defaultViewport:N,translateExtent:j,minZoom:B,maxZoom:E,onSelectionContextMenu:g,preventScrolling:W,noDragClassName:an,noWheelClassName:mr,noPanClassName:jr,disableKeyboardA11y:fs,onViewportChange:wn,isControlledViewport:!!Pi,children:O.jsxs(SN,{children:[O.jsx(vN,{edgeTypes:e,onEdgeClick:r,onEdgeDoubleClick:a,onReconnect:Dt,onReconnectStart:Jt,onReconnectEnd:Gi,onlyRenderVisibleElements:H,onEdgeContextMenu:Te,onEdgeMouseEnter:me,onEdgeMouseMove:Be,onEdgeMouseLeave:at,reconnectRadius:He,defaultMarkerColor:$,noPanClassName:jr,disableKeyboardA11y:fs,rfId:Or}),O.jsx(QN,{style:_,type:S,component:w,containerStyle:x}),O.jsx("div",{className:"react-flow__edgelabel-renderer"}),O.jsx(eN,{nodeTypes:t,onNodeClick:n,onNodeDoubleClick:s,onNodeMouseEnter:c,onNodeMouseMove:h,onNodeMouseLeave:d,onNodeContextMenu:f,nodeClickDistance:$e,onlyRenderVisibleElements:H,noPanClassName:jr,noDragClassName:an,disableKeyboardA11y:fs,nodeExtent:hi,rfId:Or}),O.jsx("div",{className:"react-flow__viewport-portal"})]})})}PE.displayName="GraphView";const EN=X.memo(PE),l2=({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,width:r,height:s,fitView:a,fitViewOptions:c,minZoom:h=.5,maxZoom:d=2,nodeOrigin:f,nodeExtent:g,zIndexMode:m="basic"}={})=>{const v=new Map,S=new Map,_=new Map,w=new Map,x=n??e??[],Q=i??t??[],C=f??[0,0],T=g??Bu;VP(_,w,x);const{nodesInitialized:A}=zy(Q,v,S,{nodeOrigin:C,nodeExtent:T,zIndexMode:m});let P=[0,0,1];if(a&&r&&s){const M=pd(v,{filter:N=>!!((N.width||N.initialWidth)&&(N.height||N.initialHeight))}),{x:V,y:H,zoom:G}=A1(M,r,s,h,d,(c==null?void 0:c.padding)??.1);P=[V,H,G]}return{rfId:"1",width:r??0,height:s??0,transform:P,nodes:Q,nodesInitialized:A,nodeLookup:v,parentLookup:S,edges:x,edgeLookup:w,connectionLookup:_,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:i!==void 0,hasDefaultEdges:n!==void 0,panZoom:null,minZoom:h,maxZoom:d,translateExtent:Bu,nodeExtent:T,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:Qc.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:C,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:a??!1,fitViewOptions:c,fitViewResolver:null,connection:{...QP},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:IL,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:TP,zIndexMode:m,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},RN=({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,width:r,height:s,fitView:a,fitViewOptions:c,minZoom:h,maxZoom:d,nodeOrigin:f,nodeExtent:g,zIndexMode:m})=>U6((v,S)=>{async function _(){const{nodeLookup:w,panZoom:x,fitViewOptions:Q,fitViewResolver:C,width:T,height:A,minZoom:P,maxZoom:M}=S();x&&(await WL({nodes:w,width:T,height:A,panZoom:x,minZoom:P,maxZoom:M},Q),C==null||C.resolve(!0),v({fitViewResolver:null}))}return{...l2({nodes:t,edges:e,width:r,height:s,fitView:a,fitViewOptions:c,minZoom:h,maxZoom:d,nodeOrigin:f,nodeExtent:g,defaultNodes:i,defaultEdges:n,zIndexMode:m}),setNodes:w=>{const{nodeLookup:x,parentLookup:Q,nodeOrigin:C,elevateNodesOnSelect:T,fitViewQueued:A,zIndexMode:P,nodesSelectionActive:M}=S(),{nodesInitialized:V,hasSelectedNodes:H}=zy(w,x,Q,{nodeOrigin:C,nodeExtent:g,elevateNodesOnSelect:T,checkEquality:!0,zIndexMode:P}),G=M&&H;A&&V?(_(),v({nodes:w,nodesInitialized:V,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:G})):v({nodes:w,nodesInitialized:V,nodesSelectionActive:G})},setEdges:w=>{const{connectionLookup:x,edgeLookup:Q}=S();VP(x,Q,w),v({edges:w})},setDefaultNodesAndEdges:(w,x)=>{if(w){const{setNodes:Q}=S();Q(w),v({hasDefaultNodes:!0})}if(x){const{setEdges:Q}=S();Q(x),v({hasDefaultEdges:!0})}},updateNodeInternals:w=>{const{triggerNodeChanges:x,nodeLookup:Q,parentLookup:C,domNode:T,nodeOrigin:A,nodeExtent:P,debug:M,fitViewQueued:V,zIndexMode:H}=S(),{changes:G,updatedInternals:N}=f6(w,Q,C,T,A,P,H);N&&(c6(Q,C,{nodeOrigin:A,nodeExtent:P,zIndexMode:H}),V?(_(),v({fitViewQueued:!1,fitViewOptions:void 0})):v({}),(G==null?void 0:G.length)>0&&(M&&console.log("React Flow: trigger node changes",G),x==null||x(G)))},updateNodePositions:(w,x=!1)=>{const Q=[];let C=[];const{nodeLookup:T,triggerNodeChanges:A,connection:P,updateConnection:M,onNodesChangeMiddlewareMap:V}=S();for(const[H,G]of w){const N=T.get(H),j=!!(N!=null&&N.expandParent&&(N!=null&&N.parentId)&&(G!=null&&G.position)),B={id:H,type:"position",position:j?{x:Math.max(0,G.position.x),y:Math.max(0,G.position.y)}:G.position,dragging:x};if(N&&P.inProgress&&P.fromNode.id===N.id){const E=rl(N,P.fromHandle,Re.Left,!0);M({...P,from:E})}j&&N.parentId&&Q.push({id:H,parentId:N.parentId,rect:{...G.internals.positionAbsolute,width:G.measured.width??0,height:G.measured.height??0}}),C.push(B)}if(Q.length>0){const{parentLookup:H,nodeOrigin:G}=S(),N=L1(Q,T,H,G);C.push(...N)}for(const H of V.values())C=H(C);A(C)},triggerNodeChanges:w=>{const{onNodesChange:x,setNodes:Q,nodes:C,hasDefaultNodes:T,debug:A}=S();if(w!=null&&w.length){if(T){const P=mX(w,C);Q(P)}A&&console.log("React Flow: trigger node changes",w),x==null||x(w)}},triggerEdgeChanges:w=>{const{onEdgesChange:x,setEdges:Q,edges:C,hasDefaultEdges:T,debug:A}=S();if(w!=null&&w.length){if(T){const P=OX(w,C);Q(P)}A&&console.log("React Flow: trigger edge changes",w),x==null||x(w)}},addSelectedNodes:w=>{const{multiSelectionActive:x,edgeLookup:Q,nodeLookup:C,triggerNodeChanges:T,triggerEdgeChanges:A}=S();if(x){const P=w.map(M=>Da(M,!0));T(P);return}T(cc(C,new Set([...w]),!0)),A(cc(Q))},addSelectedEdges:w=>{const{multiSelectionActive:x,edgeLookup:Q,nodeLookup:C,triggerNodeChanges:T,triggerEdgeChanges:A}=S();if(x){const P=w.map(M=>Da(M,!0));A(P);return}A(cc(Q,new Set([...w]))),T(cc(C,new Set,!0))},unselectNodesAndEdges:({nodes:w,edges:x}={})=>{const{edges:Q,nodes:C,nodeLookup:T,triggerNodeChanges:A,triggerEdgeChanges:P}=S(),M=w||C,V=x||Q,H=[];for(const N of M){if(!N.selected)continue;const j=T.get(N.id);j&&(j.selected=!1),H.push(Da(N.id,!1))}const G=[];for(const N of V)N.selected&&G.push(Da(N.id,!1));A(H),P(G)},setMinZoom:w=>{const{panZoom:x,maxZoom:Q}=S();x==null||x.setScaleExtent([w,Q]),v({minZoom:w})},setMaxZoom:w=>{const{panZoom:x,minZoom:Q}=S();x==null||x.setScaleExtent([Q,w]),v({maxZoom:w})},setTranslateExtent:w=>{var x;(x=S().panZoom)==null||x.setTranslateExtent(w),v({translateExtent:w})},resetSelectedElements:()=>{const{edges:w,nodes:x,triggerNodeChanges:Q,triggerEdgeChanges:C,elementsSelectable:T}=S();if(!T)return;const A=x.reduce((M,V)=>V.selected?[...M,Da(V.id,!1)]:M,[]),P=w.reduce((M,V)=>V.selected?[...M,Da(V.id,!1)]:M,[]);Q(A),C(P)},setNodeExtent:w=>{const{nodes:x,nodeLookup:Q,parentLookup:C,nodeOrigin:T,elevateNodesOnSelect:A,nodeExtent:P,zIndexMode:M}=S();w[0][0]===P[0][0]&&w[0][1]===P[0][1]&&w[1][0]===P[1][0]&&w[1][1]===P[1][1]||(zy(x,Q,C,{nodeOrigin:T,nodeExtent:w,elevateNodesOnSelect:A,checkEquality:!1,zIndexMode:M}),v({nodeExtent:w}))},panBy:w=>{const{transform:x,width:Q,height:C,panZoom:T,translateExtent:A}=S();return p6({delta:w,panZoom:T,transform:x,translateExtent:A,width:Q,height:C})},setCenter:async(w,x,Q)=>{const{width:C,height:T,maxZoom:A,panZoom:P}=S();if(!P)return Promise.resolve(!1);const M=typeof(Q==null?void 0:Q.zoom)<"u"?Q.zoom:A;return await P.setViewport({x:C/2-w*M,y:T/2-x*M,zoom:M},{duration:Q==null?void 0:Q.duration,ease:Q==null?void 0:Q.ease,interpolate:Q==null?void 0:Q.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{v({connection:{...QP}})},updateConnection:w=>{v({connection:w})},reset:()=>v({...l2()})}},Object.is);function EE({initialNodes:t,initialEdges:e,defaultNodes:i,defaultEdges:n,initialWidth:r,initialHeight:s,initialMinZoom:a,initialMaxZoom:c,initialFitViewOptions:h,fitView:d,nodeOrigin:f,nodeExtent:g,zIndexMode:m,children:v}){const[S]=X.useState(()=>RN({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,width:r,height:s,fitView:d,minZoom:a,maxZoom:c,fitViewOptions:h,nodeOrigin:f,nodeExtent:g,zIndexMode:m}));return O.jsx(G6,{value:S,children:O.jsx(SX,{children:v})})}function AN({children:t,nodes:e,edges:i,defaultNodes:n,defaultEdges:r,width:s,height:a,fitView:c,fitViewOptions:h,minZoom:d,maxZoom:f,nodeOrigin:g,nodeExtent:m,zIndexMode:v}){return X.useContext(vm)?O.jsx(O.Fragment,{children:t}):O.jsx(EE,{initialNodes:e,initialEdges:i,defaultNodes:n,defaultEdges:r,initialWidth:s,initialHeight:a,fitView:c,initialFitViewOptions:h,initialMinZoom:d,initialMaxZoom:f,nodeOrigin:g,nodeExtent:m,zIndexMode:v,children:t})}const MN={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function zN({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,className:r,nodeTypes:s,edgeTypes:a,onNodeClick:c,onEdgeClick:h,onInit:d,onMove:f,onMoveStart:g,onMoveEnd:m,onConnect:v,onConnectStart:S,onConnectEnd:_,onClickConnectStart:w,onClickConnectEnd:x,onNodeMouseEnter:Q,onNodeMouseMove:C,onNodeMouseLeave:T,onNodeContextMenu:A,onNodeDoubleClick:P,onNodeDragStart:M,onNodeDrag:V,onNodeDragStop:H,onNodesDelete:G,onEdgesDelete:N,onDelete:j,onSelectionChange:B,onSelectionDragStart:E,onSelectionDrag:W,onSelectionDragStop:$,onSelectionContextMenu:Z,onSelectionStart:z,onSelectionEnd:L,onBeforeDelete:U,connectionMode:D,connectionLineType:I=Fo.Bezier,connectionLineStyle:J,connectionLineComponent:ne,connectionLineContainerStyle:ce,deleteKeyCode:de="Backspace",selectionKeyCode:pe="Shift",selectionOnDrag:fe=!1,selectionMode:Oe=Lu.Full,panActivationKeyCode:je="Space",multiSelectionKeyCode:$e=Nu()?"Meta":"Control",zoomActivationKeyCode:Te=Nu()?"Meta":"Control",snapToGrid:me,snapGrid:Be,onlyRenderVisibleElements:at=!1,selectNodesOnDrag:He,nodesDraggable:Dt,autoPanOnNodeFocus:Jt,nodesConnectable:Gi,nodesFocusable:an,nodeOrigin:mr=sE,edgesFocusable:jr,edgesReconnectable:fs,elementsSelectable:hi=!0,defaultViewport:Or=cX,minZoom:Pi=.5,maxZoom:wn=2,translateExtent:kn=Bu,preventScrolling:Ol=!0,nodeExtent:Cn,defaultMarkerColor:ro="#b1b1b7",zoomOnScroll:Ed=!0,zoomOnPinch:Dr=!0,panOnScroll:Si=!1,panOnScrollSpeed:Tn=.5,panOnScrollMode:Ei=Fa.Free,zoomOnDoubleClick:Fc=!0,panOnDrag:Kc=!0,onPaneClick:Jc,onPaneMouseEnter:so,onPaneMouseMove:Gn,onPaneMouseLeave:Br,onPaneScroll:Qn,onPaneContextMenu:oo,paneClickDistance:Lr=1,nodeClickDistance:eh=0,children:vl,onReconnect:ao,onReconnectStart:ps,onReconnectEnd:th,onEdgeContextMenu:ie,onEdgeDoubleClick:Ne,onEdgeMouseEnter:lt,onEdgeMouseMove:ui,onEdgeMouseLeave:ln,reconnectRadius:$n=10,onNodesChange:vr,onEdgesChange:Xr,noDragClassName:di="nodrag",noWheelClassName:Wi="nowheel",noPanClassName:gs="nopan",fitView:yl,fitViewOptions:Rd,connectOnClick:Zm,attributionPosition:Ad,proOptions:ma,defaultEdgeOptions:ih,elevateNodesOnSelect:lo=!0,elevateEdgesOnSelect:co=!1,disableKeyboardA11y:ho=!1,autoPanOnConnect:uo,autoPanOnNodeDrag:ei,autoPanSpeed:Md,connectionRadius:zd,isValidConnection:ms,onError:fo,style:Wm,id:nh,nodeDragThreshold:jd,connectionDragThreshold:qm,viewport:Sl,onViewportChange:bl,width:yr,height:cn,colorMode:Dd="light",debug:Im,onScroll:po,ariaLabelConfig:Bd,zIndexMode:Oa="basic",...Vm},hn){const va=nh||"1",Ld=fX(Dd),rh=X.useCallback(Os=>{Os.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),po==null||po(Os)},[po]);return O.jsx("div",{"data-testid":"rf__wrapper",...Vm,onScroll:rh,style:{...Wm,...MN},ref:hn,className:ci(["react-flow",r,Ld]),id:nh,role:"application",children:O.jsxs(AN,{nodes:t,edges:e,width:yr,height:cn,fitView:yl,fitViewOptions:Rd,minZoom:Pi,maxZoom:wn,nodeOrigin:mr,nodeExtent:Cn,zIndexMode:Oa,children:[O.jsx(dX,{nodes:t,edges:e,defaultNodes:i,defaultEdges:n,onConnect:v,onConnectStart:S,onConnectEnd:_,onClickConnectStart:w,onClickConnectEnd:x,nodesDraggable:Dt,autoPanOnNodeFocus:Jt,nodesConnectable:Gi,nodesFocusable:an,edgesFocusable:jr,edgesReconnectable:fs,elementsSelectable:hi,elevateNodesOnSelect:lo,elevateEdgesOnSelect:co,minZoom:Pi,maxZoom:wn,nodeExtent:Cn,onNodesChange:vr,onEdgesChange:Xr,snapToGrid:me,snapGrid:Be,connectionMode:D,translateExtent:kn,connectOnClick:Zm,defaultEdgeOptions:ih,fitView:yl,fitViewOptions:Rd,onNodesDelete:G,onEdgesDelete:N,onDelete:j,onNodeDragStart:M,onNodeDrag:V,onNodeDragStop:H,onSelectionDrag:W,onSelectionDragStart:E,onSelectionDragStop:$,onMove:f,onMoveStart:g,onMoveEnd:m,noPanClassName:gs,nodeOrigin:mr,rfId:va,autoPanOnConnect:uo,autoPanOnNodeDrag:ei,autoPanSpeed:Md,onError:fo,connectionRadius:zd,isValidConnection:ms,selectNodesOnDrag:He,nodeDragThreshold:jd,connectionDragThreshold:qm,onBeforeDelete:U,debug:Im,ariaLabelConfig:Bd,zIndexMode:Oa}),O.jsx(EN,{onInit:d,onNodeClick:c,onEdgeClick:h,onNodeMouseEnter:Q,onNodeMouseMove:C,onNodeMouseLeave:T,onNodeContextMenu:A,onNodeDoubleClick:P,nodeTypes:s,edgeTypes:a,connectionLineType:I,connectionLineStyle:J,connectionLineComponent:ne,connectionLineContainerStyle:ce,selectionKeyCode:pe,selectionOnDrag:fe,selectionMode:Oe,deleteKeyCode:de,multiSelectionKeyCode:$e,panActivationKeyCode:je,zoomActivationKeyCode:Te,onlyRenderVisibleElements:at,defaultViewport:Or,translateExtent:kn,minZoom:Pi,maxZoom:wn,preventScrolling:Ol,zoomOnScroll:Ed,zoomOnPinch:Dr,zoomOnDoubleClick:Fc,panOnScroll:Si,panOnScrollSpeed:Tn,panOnScrollMode:Ei,panOnDrag:Kc,onPaneClick:Jc,onPaneMouseEnter:so,onPaneMouseMove:Gn,onPaneMouseLeave:Br,onPaneScroll:Qn,onPaneContextMenu:oo,paneClickDistance:Lr,nodeClickDistance:eh,onSelectionContextMenu:Z,onSelectionStart:z,onSelectionEnd:L,onReconnect:ao,onReconnectStart:ps,onReconnectEnd:th,onEdgeContextMenu:ie,onEdgeDoubleClick:Ne,onEdgeMouseEnter:lt,onEdgeMouseMove:ui,onEdgeMouseLeave:ln,reconnectRadius:$n,defaultMarkerColor:ro,noDragClassName:di,noWheelClassName:Wi,noPanClassName:gs,rfId:va,disableKeyboardA11y:ho,nodeExtent:Cn,viewport:Sl,onViewportChange:bl}),O.jsx(lX,{onSelectionChange:B}),vl,O.jsx(nX,{proOptions:ma,position:Ad}),O.jsx(iX,{rfId:va,disableKeyboardA11y:ho})]})})}var jN=aE(zN);function DN({dimensions:t,lineWidth:e,variant:i,className:n}){return O.jsx("path",{strokeWidth:e,d:`M${t[0]/2} 0 V${t[1]} M0 ${t[1]/2} H${t[0]}`,className:ci(["react-flow__background-pattern",i,n])})}function BN({radius:t,className:e}){return O.jsx("circle",{cx:t,cy:t,r:t,className:ci(["react-flow__background-pattern","dots",e])})}var ta;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(ta||(ta={}));const LN={[ta.Dots]:1,[ta.Lines]:1,[ta.Cross]:6},XN=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function RE({id:t,variant:e=ta.Dots,gap:i=20,size:n,lineWidth:r=1,offset:s=0,color:a,bgColor:c,style:h,className:d,patternClassName:f}){const g=X.useRef(null),{transform:m,patternId:v}=ot(XN,Mt),S=n||LN[e],_=e===ta.Dots,w=e===ta.Cross,x=Array.isArray(i)?i:[i,i],Q=[x[0]*m[2]||1,x[1]*m[2]||1],C=S*m[2],T=Array.isArray(s)?s:[s,s],A=w?[C,C]:Q,P=[T[0]*m[2]||1+A[0]/2,T[1]*m[2]||1+A[1]/2],M=`${v}${t||""}`;return O.jsxs("svg",{className:ci(["react-flow__background",d]),style:{...h,...bm,"--xy-background-color-props":c,"--xy-background-pattern-color-props":a},ref:g,"data-testid":"rf__background",children:[O.jsx("pattern",{id:M,x:m[0]%Q[0],y:m[1]%Q[1],width:Q[0],height:Q[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${P[0]},-${P[1]})`,children:_?O.jsx(BN,{radius:C/2,className:f}):O.jsx(DN,{dimensions:A,lineWidth:r,variant:e,className:f})}),O.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${M})`})]})}RE.displayName="Background";const NN=X.memo(RE);function ZN(){return O.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:O.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function WN(){return O.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:O.jsx("path",{d:"M0 0h32v4.2H0z"})})}function qN(){return O.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:O.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function IN(){return O.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:O.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function VN(){return O.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:O.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function rp({children:t,className:e,...i}){return O.jsx("button",{type:"button",className:ci(["react-flow__controls-button",e]),...i,children:t})}const YN=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom,ariaLabelConfig:t.ariaLabelConfig});function AE({style:t,showZoom:e=!0,showFitView:i=!0,showInteractive:n=!0,fitViewOptions:r,onZoomIn:s,onZoomOut:a,onFitView:c,onInteractiveChange:h,className:d,children:f,position:g="bottom-left",orientation:m="vertical","aria-label":v}){const S=jt(),{isInteractive:_,minZoomReached:w,maxZoomReached:x,ariaLabelConfig:Q}=ot(YN,Mt),{zoomIn:C,zoomOut:T,fitView:A}=Sm(),P=()=>{C(),s==null||s()},M=()=>{T(),a==null||a()},V=()=>{A(r),c==null||c()},H=()=>{S.setState({nodesDraggable:!_,nodesConnectable:!_,elementsSelectable:!_}),h==null||h(!_)},G=m==="horizontal"?"horizontal":"vertical";return O.jsxs(ym,{className:ci(["react-flow__controls",G,d]),position:g,style:t,"data-testid":"rf__controls","aria-label":v??Q["controls.ariaLabel"],children:[e&&O.jsxs(O.Fragment,{children:[O.jsx(rp,{onClick:P,className:"react-flow__controls-zoomin",title:Q["controls.zoomIn.ariaLabel"],"aria-label":Q["controls.zoomIn.ariaLabel"],disabled:x,children:O.jsx(ZN,{})}),O.jsx(rp,{onClick:M,className:"react-flow__controls-zoomout",title:Q["controls.zoomOut.ariaLabel"],"aria-label":Q["controls.zoomOut.ariaLabel"],disabled:w,children:O.jsx(WN,{})})]}),i&&O.jsx(rp,{className:"react-flow__controls-fitview",onClick:V,title:Q["controls.fitView.ariaLabel"],"aria-label":Q["controls.fitView.ariaLabel"],children:O.jsx(qN,{})}),n&&O.jsx(rp,{className:"react-flow__controls-interactive",onClick:H,title:Q["controls.interactive.ariaLabel"],"aria-label":Q["controls.interactive.ariaLabel"],children:_?O.jsx(VN,{}):O.jsx(IN,{})}),f]})}AE.displayName="Controls";X.memo(AE);function HN({id:t,x:e,y:i,width:n,height:r,style:s,color:a,strokeColor:c,strokeWidth:h,className:d,borderRadius:f,shapeRendering:g,selected:m,onClick:v}){const{background:S,backgroundColor:_}=s||{},w=a||S||_;return O.jsx("rect",{className:ci(["react-flow__minimap-node",{selected:m},d]),x:e,y:i,rx:f,ry:f,width:n,height:r,style:{fill:w,stroke:c,strokeWidth:h},shapeRendering:g,onClick:v?x=>v(x,t):void 0})}const UN=X.memo(HN),GN=t=>t.nodes.map(e=>e.id),gv=t=>t instanceof Function?t:()=>t;function FN({nodeStrokeColor:t,nodeColor:e,nodeClassName:i="",nodeBorderRadius:n=5,nodeStrokeWidth:r,nodeComponent:s=UN,onClick:a}){const c=ot(GN,Mt),h=gv(e),d=gv(t),f=gv(i),g=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return O.jsx(O.Fragment,{children:c.map(m=>O.jsx(JN,{id:m,nodeColorFunc:h,nodeStrokeColorFunc:d,nodeClassNameFunc:f,nodeBorderRadius:n,nodeStrokeWidth:r,NodeComponent:s,onClick:a,shapeRendering:g},m))})}function KN({id:t,nodeColorFunc:e,nodeStrokeColorFunc:i,nodeClassNameFunc:n,nodeBorderRadius:r,nodeStrokeWidth:s,shapeRendering:a,NodeComponent:c,onClick:h}){const{node:d,x:f,y:g,width:m,height:v}=ot(S=>{const _=S.nodeLookup.get(t);if(!_)return{node:void 0,x:0,y:0,width:0,height:0};const w=_.internals.userNode,{x,y:Q}=_.internals.positionAbsolute,{width:C,height:T}=Js(w);return{node:w,x,y:Q,width:C,height:T}},Mt);return!d||d.hidden||!zP(d)?null:O.jsx(c,{x:f,y:g,width:m,height:v,style:d.style,selected:!!d.selected,className:n(d),color:e(d),borderRadius:r,strokeColor:i(d),strokeWidth:s,shapeRendering:a,onClick:h,id:d.id})}const JN=X.memo(KN);var e8=X.memo(FN);const t8=200,i8=150,n8=t=>!t.hidden,r8=t=>{const e={x:-t.transform[0]/t.transform[2],y:-t.transform[1]/t.transform[2],width:t.width/t.transform[2],height:t.height/t.transform[2]};return{viewBB:e,boundingRect:t.nodeLookup.size>0?MP(pd(t.nodeLookup,{filter:n8}),e):e,rfId:t.rfId,panZoom:t.panZoom,translateExtent:t.translateExtent,flowWidth:t.width,flowHeight:t.height,ariaLabelConfig:t.ariaLabelConfig}},s8="react-flow__minimap-desc";function ME({style:t,className:e,nodeStrokeColor:i,nodeColor:n,nodeClassName:r="",nodeBorderRadius:s=5,nodeStrokeWidth:a,nodeComponent:c,bgColor:h,maskColor:d,maskStrokeColor:f,maskStrokeWidth:g,position:m="bottom-right",onClick:v,onNodeClick:S,pannable:_=!1,zoomable:w=!1,ariaLabel:x,inversePan:Q,zoomStep:C=1,offsetScale:T=5}){const A=jt(),P=X.useRef(null),{boundingRect:M,viewBB:V,rfId:H,panZoom:G,translateExtent:N,flowWidth:j,flowHeight:B,ariaLabelConfig:E}=ot(r8,Mt),W=(t==null?void 0:t.width)??t8,$=(t==null?void 0:t.height)??i8,Z=M.width/W,z=M.height/$,L=Math.max(Z,z),U=L*W,D=L*$,I=T*L,J=M.x-(U-M.width)/2-I,ne=M.y-(D-M.height)/2-I,ce=U+I*2,de=D+I*2,pe=`${s8}-${H}`,fe=X.useRef(0),Oe=X.useRef();fe.current=L,X.useEffect(()=>{if(P.current&&G)return Oe.current=x6({domNode:P.current,panZoom:G,getTransform:()=>A.getState().transform,getViewScale:()=>fe.current}),()=>{var me;(me=Oe.current)==null||me.destroy()}},[G]),X.useEffect(()=>{var me;(me=Oe.current)==null||me.update({translateExtent:N,width:j,height:B,inversePan:Q,pannable:_,zoomStep:C,zoomable:w})},[_,w,Q,C,N,j,B]);const je=v?me=>{var He;const[Be,at]=((He=Oe.current)==null?void 0:He.pointer(me))||[0,0];v(me,{x:Be,y:at})}:void 0,$e=S?X.useCallback((me,Be)=>{const at=A.getState().nodeLookup.get(Be).internals.userNode;S(me,at)},[]):void 0,Te=x??E["minimap.ariaLabel"];return O.jsx(ym,{position:m,style:{...t,"--xy-minimap-background-color-props":typeof h=="string"?h:void 0,"--xy-minimap-mask-background-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-color-props":typeof f=="string"?f:void 0,"--xy-minimap-mask-stroke-width-props":typeof g=="number"?g*L:void 0,"--xy-minimap-node-background-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-color-props":typeof i=="string"?i:void 0,"--xy-minimap-node-stroke-width-props":typeof a=="number"?a:void 0},className:ci(["react-flow__minimap",e]),"data-testid":"rf__minimap",children:O.jsxs("svg",{width:W,height:$,viewBox:`${J} ${ne} ${ce} ${de}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":pe,ref:P,onClick:je,children:[Te&&O.jsx("title",{id:pe,children:Te}),O.jsx(e8,{onClick:$e,nodeColor:n,nodeStrokeColor:i,nodeBorderRadius:s,nodeClassName:r,nodeStrokeWidth:a,nodeComponent:c}),O.jsx("path",{className:"react-flow__minimap-mask",d:`M${J-I},${ne-I}h${ce+I*2}v${de+I*2}h${-ce-I*2}z
71
- M${V.x},${V.y}h${V.width}v${V.height}h${-V.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}ME.displayName="MiniMap";X.memo(ME);const o8=t=>e=>t?`${Math.max(1/e.transform[2],1)}`:void 0,a8={[Rc.Line]:"right",[Rc.Handle]:"bottom-right"};function l8({nodeId:t,position:e,variant:i=Rc.Handle,className:n,style:r=void 0,children:s,color:a,minWidth:c=10,minHeight:h=10,maxWidth:d=Number.MAX_VALUE,maxHeight:f=Number.MAX_VALUE,keepAspectRatio:g=!1,resizeDirection:m,autoScale:v=!0,shouldResize:S,onResizeStart:_,onResize:w,onResizeEnd:x}){const Q=uE(),C=typeof t=="string"?t:Q,T=jt(),A=X.useRef(null),P=i===Rc.Handle,M=ot(X.useCallback(o8(P&&v),[P,v]),Mt),V=X.useRef(null),H=e??a8[i];X.useEffect(()=>{if(!(!A.current||!C))return V.current||(V.current=D6({domNode:A.current,nodeId:C,getStoreItems:()=>{const{nodeLookup:N,transform:j,snapGrid:B,snapToGrid:E,nodeOrigin:W,domNode:$}=T.getState();return{nodeLookup:N,transform:j,snapGrid:B,snapToGrid:E,nodeOrigin:W,paneDomNode:$}},onChange:(N,j)=>{const{triggerNodeChanges:B,nodeLookup:E,parentLookup:W,nodeOrigin:$}=T.getState(),Z=[],z={x:N.x,y:N.y},L=E.get(C);if(L&&L.expandParent&&L.parentId){const U=L.origin??$,D=N.width??L.measured.width??0,I=N.height??L.measured.height??0,J={id:L.id,parentId:L.parentId,rect:{width:D,height:I,...jP({x:N.x??L.position.x,y:N.y??L.position.y},{width:D,height:I},L.parentId,E,U)}},ne=L1([J],E,W,$);Z.push(...ne),z.x=N.x?Math.max(U[0]*D,N.x):void 0,z.y=N.y?Math.max(U[1]*I,N.y):void 0}if(z.x!==void 0&&z.y!==void 0){const U={id:C,type:"position",position:{...z}};Z.push(U)}if(N.width!==void 0&&N.height!==void 0){const D={id:C,type:"dimensions",resizing:!0,setAttributes:m?m==="horizontal"?"width":"height":!0,dimensions:{width:N.width,height:N.height}};Z.push(D)}for(const U of j){const D={...U,type:"position"};Z.push(D)}B(Z)},onEnd:({width:N,height:j})=>{const B={id:C,type:"dimensions",resizing:!1,dimensions:{width:N,height:j}};T.getState().triggerNodeChanges([B])}})),V.current.update({controlPosition:H,boundaries:{minWidth:c,minHeight:h,maxWidth:d,maxHeight:f},keepAspectRatio:g,resizeDirection:m,onResizeStart:_,onResize:w,onResizeEnd:x,shouldResize:S}),()=>{var N;(N=V.current)==null||N.destroy()}},[H,c,h,d,f,g,_,w,x,S]);const G=H.split("-");return O.jsx("div",{className:ci(["react-flow__resize-control","nodrag",...G,i,n]),ref:A,style:{...r,scale:M,...a&&{[P?"backgroundColor":"borderColor"]:a}},children:s})}X.memo(l8);const c2={running:"#4ae168",starting:"#e5c07b",stopped:"#5c6370",crashed:"#e06c75",completed:"#33afbc",killed:"#5c6370"},h2={planner:{bg:"#4ae16820",color:"#4ae168"},backend:{bg:"#33afbc20",color:"#33afbc"},frontend:{bg:"#e5c07b20",color:"#e5c07b"},fullstack:{bg:"#4ae16820",color:"#4ae168"},testing:{bg:"#61afef20",color:"#61afef"},devops:{bg:"#d19a6620",color:"#d19a66"},docs:{bg:"#5c637020",color:"#8b929e"}};function c8({data:t}){var h;const e=c2[t.status]||c2.stopped,i=h2[t.role]||h2.docs,n=t.status==="running"||t.status==="starting",r=t.selected,s=Math.round((t.contextUsage||0)*100),a=t.tokensUsed>0?t.tokensUsed>999?`${(t.tokensUsed/1e3).toFixed(1)}k`:`${t.tokensUsed}`:"0",c=t.workingDir?t.workingDir.replace(/^\.\//,""):((h=t.scope)==null?void 0:h.length)>0?t.scope[0].replace(/\/\*\*$/,"").replace(/^src\//,""):t.role;return O.jsxs("div",{style:{background:"#282c34",border:r?"1px solid #33afbc":"1px solid #3e4451",borderRadius:10,width:210,padding:0,cursor:"pointer",fontFamily:"'JetBrains Mono', 'SF Mono', 'Fira Code', Consolas, monospace",fontSize:10,overflow:"hidden"},children:[O.jsx(Ac,{type:"target",position:Re.Top,style:{background:"#282c34",border:"2px solid #3e4451",width:8,height:8,borderRadius:"50%",top:-4}}),O.jsxs("div",{style:{padding:"10px 12px 8px"},children:[O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:7,marginBottom:6},children:[O.jsx("div",{style:{width:7,height:7,borderRadius:"50%",background:e,flexShrink:0,...n?{animation:"pulse 2s infinite"}:{}}}),O.jsx("span",{style:{color:"#e6e6e6",fontWeight:700,fontSize:12,flex:1},children:t.name})]}),O.jsx("div",{style:{marginBottom:10},children:O.jsx("span",{style:{fontSize:9,fontWeight:700,textTransform:"uppercase",letterSpacing:1,color:i.color,background:i.bg,padding:"3px 8px",borderRadius:4,display:"inline-block"},children:t.role})}),O.jsxs("div",{style:{display:"flex",justifyContent:"space-between",color:"#5c6370",fontSize:10,marginBottom:4},children:[O.jsxs("span",{children:[a," tok"]}),O.jsxs("span",{children:[s,"% ctx"]})]}),O.jsx("div",{style:{color:"#3e4451",fontSize:9,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c})]}),n&&O.jsx(h8,{agentId:t.id,color:e}),O.jsx(Ac,{type:"source",position:Re.Bottom,style:{background:"#282c34",border:"2px solid #3e4451",width:8,height:8,borderRadius:"50%",bottom:-4}})]})}function h8({agentId:t,color:e}){const i=X.useRef(),n=Ce(r=>r.tokenTimeline);return X.useEffect(()=>{const r=i.current;if(!r)return;const s=window.devicePixelRatio||1,a=210,c=24;r.width=a*s,r.height=c*s;const h=r.getContext("2d");h.scale(s,s),h.clearRect(0,0,a,c);const d=n[t]||[];if(d.length<2){h.strokeStyle="#2c313a",h.lineWidth=.5,h.beginPath(),h.moveTo(0,c/2),h.lineTo(a,c/2),h.stroke();return}const f=d.slice(-40),g=f.map(T=>T.v),m=Math.min(...g),S=Math.max(...g)-m||1,_=4,w=c-_*2,x=a/(f.length-1);h.beginPath(),f.forEach((T,A)=>{const P=A*x,M=_+w-(T.v-m)/S*w;A===0?h.moveTo(P,M):h.lineTo(P,M)}),h.strokeStyle=e,h.lineWidth=1,h.stroke();const Q=(f.length-1)*x,C=_+w-(f[f.length-1].v-m)/S*w;h.beginPath(),h.arc(Q,C,2,0,Math.PI*2),h.fillStyle=e,h.fill()},[n,t,e]),O.jsx("div",{style:{borderTop:"1px solid #2c313a",background:"#1e222a"},children:O.jsx("canvas",{ref:i,style:{display:"block",width:210,height:24}})})}const u8={agent:c8},tc=4,sp=250,mv=140;function d8(){const t=Ce(g=>g.agents),e=Ce(g=>g.detailPanel),i=Ce(g=>g.selectAgent),n=Ce(g=>g.clearSelection),{fitView:r}=Sm(),s=(e==null?void 0:e.type)==="agent"?e.agentId:null,a=X.useRef(0),{nodes:c,edges:h}=X.useMemo(()=>{const g=t.filter(P=>P.status==="running"||P.status==="starting"),m=t.filter(P=>P.status!=="running"&&P.status!=="starting"),v=g.map((P,M)=>({id:P.id,type:"agent",position:{x:M%tc*sp,y:80+Math.floor(M/tc)*mv},data:{...P,selected:P.id===s},draggable:!0})),_=80+(Math.ceil(g.length/tc)||1)*mv+50,w=m.map((P,M)=>({id:P.id,type:"agent",position:{x:M%tc*sp,y:_+Math.floor(M/tc)*mv},data:{...P,selected:P.id===s},draggable:!0})),x=[...v,...w],T={id:"groove-root",type:"default",position:{x:(Math.min(Math.max(g.length,m.length,1),tc)*sp-sp)/2+25,y:0},data:{label:"GROOVE"},selectable:!1,draggable:!1,style:{background:"#282c34",color:"#e6e6e6",border:"1px solid #3e4451",borderRadius:24,fontWeight:600,fontSize:11,letterSpacing:6,padding:"10px 36px 9px",fontFamily:"'JetBrains Mono', 'SF Mono', Consolas, monospace"}},A=x.map(P=>{const M=t.find(H=>H.id===P.id),V=(M==null?void 0:M.status)==="running";return{id:`groove-${P.id}`,source:"groove-root",target:P.id,type:"default",style:{stroke:V?"#5c6370":"#2c313a",strokeWidth:1},animated:V}});return{nodes:[T,...x],edges:A}},[t,s]);X.useEffect(()=>{const g=t.length;g!==a.current&&setTimeout(()=>r({padding:.3,maxZoom:1.4,duration:200}),50),a.current=g},[t.length,r]),X.useEffect(()=>{setTimeout(()=>r({padding:.3,maxZoom:1.4,duration:0}),100)},[]);const d=X.useCallback((g,m)=>{m.id!=="groove-root"&&i(m.id)},[i]),f=X.useCallback(()=>{n()},[n]);return O.jsx(jN,{nodes:c,edges:h,nodeTypes:u8,onNodeClick:d,onPaneClick:f,proOptions:{hideAttribution:!0},nodesConnectable:!1,elementsSelectable:!0,minZoom:.3,maxZoom:2,fitView:!0,fitViewOptions:{padding:.3,maxZoom:1.4},children:O.jsx(NN,{color:"#3e4451",gap:20,size:1})})}function f8(){return O.jsx(EE,{children:O.jsx(d8,{})})}function p8({agent:t}){const[e,i]=X.useState(""),[n,r]=X.useState(null),s=X.useRef(),a=Ce(x=>x.activityLog),c=Ce(x=>x.instructAgent),h=Ce(x=>x.queryAgent),d=Ce(x=>x.showStatus),f=Ce(x=>x.chatHistory),g=a[t.id]||[],m=f[t.id]||[],v=v8(m,g),S=t.status==="running"||t.status==="starting";X.useEffect(()=>{s.current&&(s.current.scrollTop=s.current.scrollHeight)},[v.length]);async function _(){const x=e.trim();if(!x||n)return;const Q=x.startsWith("?"),C=Q?x.slice(1).trim():x;if(C)if(i(""),Q&&S){r("querying...");try{await h(t.id,C)}catch{}r(null)}else{r(S?"sending...":"continuing...");try{await c(t.id,C)}catch(T){d(`failed: ${T.message}`)}r(null)}}function w(x){x.key==="Enter"&&!x.shiftKey&&(x.preventDefault(),x.stopPropagation(),_())}return O.jsxs("div",{style:At.container,children:[O.jsxs("div",{ref:s,style:At.timeline,children:[v.length===0&&O.jsx("div",{style:At.hint,children:S?"Type a message to instruct this agent. Prefix with ? to query without disrupting.":"Agent finished. Reply to continue the conversation."}),v.map((x,Q)=>O.jsxs("div",{style:At.entry,children:[x.from==="user"&&O.jsxs("div",{style:At.userMsg,children:[O.jsx("span",{style:At.userLabel,children:x.isQuery?"? you":"> you"}),O.jsx("div",{style:At.userText,children:x.text})]}),x.from==="agent"&&O.jsxs("div",{style:At.agentMsg,children:[O.jsx("span",{style:At.agentLabel,children:t.name}),O.jsx("div",{style:At.agentText,children:Q===v.length-1&&x.from==="agent"&&Date.now()-x.timestamp<5e3?O.jsx(g8,{text:x.text}):O.jsx(N1,{text:x.text})})]}),x.from==="system"&&O.jsx("div",{style:At.systemMsg,children:x.text}),O.jsx("span",{style:At.time,children:new Date(x.timestamp).toLocaleTimeString()})]},Q)),n&&O.jsx("div",{style:At.statusMsg,children:n})]}),t.role==="planner"&&t.status==="completed"&&O.jsx(m8,{showStatus:d}),O.jsxs("div",{style:At.inputRow,children:[O.jsx("input",{style:At.input,value:e,onChange:x=>i(x.target.value),onKeyDown:w,placeholder:S?"message or ?query...":"reply to continue...",disabled:!!n,spellCheck:!1}),O.jsx("button",{type:"button",onClick:_,disabled:!!n||!e.trim(),style:{...At.sendBtn,opacity:n||!e.trim()?.3:1},children:"Send"})]})]})}function g8({text:t}){const[e,i]=X.useState(0),n=X.useRef(t);X.useEffect(()=>{n.current=t,i(0)},[t]),X.useEffect(()=>{if(e>=t.length)return;const a=Math.random()>.7?4:2,c=setTimeout(()=>{i(h=>Math.min(h+a,t.length))},12);return()=>clearTimeout(c)},[e,t.length]);const r=t.slice(0,e),s=e>=t.length;return O.jsxs(O.Fragment,{children:[O.jsx(N1,{text:r}),!s&&O.jsx("span",{style:At.cursor,children:"|"})]})}function m8({showStatus:t}){const[e,i]=X.useState(null),[n,r]=X.useState(!1),[s,a]=X.useState(!1);X.useEffect(()=>{fetch("/api/recommended-team").then(h=>h.json()).then(h=>{h.exists&&h.agents.length>0&&i(h.agents)}).catch(()=>{})},[]);async function c(){r(!0);try{const d=await(await fetch("/api/recommended-team/launch",{method:"POST"})).json();d.launched?(t(`Launched ${d.launched} agents`),a(!0)):t(`Launch failed: ${d.error||"unknown"}`)}catch(h){t(`Launch failed: ${h.message}`)}r(!1)}return!e||s?null:O.jsxs("div",{style:At.launchBox,children:[O.jsxs("div",{style:At.launchHeader,children:["Recommended Team (",e.length," agents)"]}),O.jsx("div",{style:At.launchList,children:e.map((h,d)=>O.jsxs("div",{style:At.launchAgent,children:[O.jsx("span",{style:At.launchRole,children:h.role}),O.jsxs("span",{style:At.launchPrompt,children:[(h.prompt||"").slice(0,80),(h.prompt||"").length>80?"...":""]})]},d))}),O.jsx("button",{type:"button",onClick:c,disabled:n,style:{...At.launchBtn,opacity:n?.5:1},children:n?"Launching...":"Launch Team"})]})}function N1({text:t}){return t?t.split(`
72
- `).map((i,n)=>{if(/^#{1,3}\s/.test(i)){const r=i.replace(/^#{1,3}\s+/,"");return O.jsx("div",{style:{fontWeight:700,color:"var(--text-bright)",marginTop:n>0?6:0,marginBottom:2,fontSize:11},children:op(r)},n)}if(/^[-*_]{3,}\s*$/.test(i))return O.jsx("div",{style:{borderTop:"1px solid var(--border)",margin:"4px 0"}},n);if(/^\s*[-*]\s/.test(i)){const r=i.match(/^(\s*)/)[1].length,s=i.replace(/^\s*[-*]\s+/,"");return O.jsxs("div",{style:{paddingLeft:8+r*6,position:"relative"},children:[O.jsx("span",{style:{position:"absolute",left:r*6,color:"var(--text-dim)"},children:"-"}),op(s)]},n)}if(/^\s*\d+\.\s/.test(i)){const r=i.match(/^(\s*)/)[1].length,s=i.match(/(\d+)\./)[1],a=i.replace(/^\s*\d+\.\s+/,"");return O.jsxs("div",{style:{paddingLeft:12+r*6,position:"relative"},children:[O.jsxs("span",{style:{position:"absolute",left:r*6,color:"var(--text-dim)"},children:[s,"."]}),op(a)]},n)}return i.trim()?O.jsx("div",{children:op(i)},n):O.jsx("div",{style:{height:4}},n)}):null}function op(t){const e=[];let i=t,n=0;for(;i.length>0;){const r=i.match(/^(.*?)\*\*(.+?)\*\*(.*)/s);if(r){r[1]&&e.push(O.jsx("span",{children:r[1]},n++)),e.push(O.jsx("span",{style:{fontWeight:700,color:"var(--text-bright)"},children:r[2]},n++)),i=r[3];continue}const s=i.match(/^(.*?)`(.+?)`(.*)/s);if(s){s[1]&&e.push(O.jsx("span",{children:s[1]},n++)),e.push(O.jsx("span",{style:{background:"var(--bg-base)",padding:"0 3px",borderRadius:2,color:"var(--accent)",fontSize:"0.95em"},children:s[2]},n++)),i=s[3];continue}e.push(O.jsx("span",{children:i},n++));break}return e.length>0?e:t}function O8(t){if(!t)return"";try{const e=JSON.parse(t);return Array.isArray(e)?e.map(i=>i.type==="text"&&i.text?i.text:(i.type==="thinking"&&i.thinking||i.type==="tool_use",null)).filter(Boolean).join(`
73
- `)||null:e.type==="text"&&e.text?e.text:e.type==="result"&&e.result?e.result:null}catch{return t.length>5?t:null}}function v8(t,e){const i=[];for(const n of t)i.push({timestamp:n.timestamp,from:n.from,text:n.text,isQuery:n.isQuery});for(const n of e.slice(-30)){const r=O8(n.text);if(!r||r.trimStart().startsWith("[")||r.trimStart().startsWith("{"))continue;i.some(a=>Math.abs(a.timestamp-n.timestamp)<2e3&&a.from==="agent")||i.push({timestamp:n.timestamp,from:"agent",text:r.slice(0,2e3)})}return i.sort((n,r)=>n.timestamp-r.timestamp),i}const At={container:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden"},timeline:{flex:1,overflowY:"auto",padding:"10px 0"},hint:{color:"var(--text-dim)",fontSize:11,padding:"20px 4px",textAlign:"center",lineHeight:1.6},entry:{padding:"4px 0",position:"relative"},userMsg:{display:"flex",flexDirection:"column",gap:2},userLabel:{fontSize:10,fontWeight:600,color:"var(--accent)",textTransform:"uppercase",letterSpacing:.5},userText:{fontSize:12,color:"var(--text-bright)",lineHeight:1.5,padding:"4px 8px",background:"var(--bg-surface)",borderRadius:2,border:"1px solid var(--border)",whiteSpace:"pre-wrap",wordBreak:"break-word"},agentMsg:{display:"flex",flexDirection:"column",gap:2},agentLabel:{fontSize:10,fontWeight:600,color:"var(--green)",textTransform:"uppercase",letterSpacing:.5},agentText:{fontSize:12,color:"var(--text-primary)",lineHeight:1.5,padding:"4px 8px",background:"var(--bg-base)",borderRadius:2,whiteSpace:"pre-wrap",wordBreak:"break-word"},systemMsg:{fontSize:10,color:"var(--text-dim)",fontStyle:"italic",padding:"2px 0"},time:{position:"absolute",top:4,right:0,fontSize:9,color:"var(--text-muted)"},statusMsg:{fontSize:11,color:"var(--text-dim)",fontStyle:"italic",padding:"6px 0"},inputRow:{display:"flex",gap:6,padding:"8px 0 0",borderTop:"1px solid var(--border)"},input:{flex:1,background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,padding:"8px 10px",color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none"},sendBtn:{padding:"8px 14px",background:"transparent",border:"1px solid var(--accent)",borderRadius:2,color:"var(--accent)",fontSize:11,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer"},cursor:{color:"var(--accent)",fontWeight:400,animation:"pulse 1s infinite",marginLeft:1},launchBox:{padding:"8px 0",borderTop:"1px solid var(--border)",flexShrink:0},launchHeader:{fontSize:10,fontWeight:700,color:"var(--text-bright)",marginBottom:6},launchList:{display:"flex",flexDirection:"column",gap:3,marginBottom:8},launchAgent:{display:"flex",alignItems:"baseline",gap:6,fontSize:10,padding:"2px 0"},launchRole:{fontWeight:600,color:"var(--accent)",minWidth:60},launchPrompt:{color:"var(--text-dim)",fontSize:9,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},launchBtn:{width:"100%",padding:"8px",background:"rgba(51, 175, 188, 0.1)",border:"1px solid var(--accent)",color:"var(--accent)",fontSize:11,fontWeight:700,fontFamily:"var(--font)",cursor:"pointer",letterSpacing:.5}};function y8({agent:t}){var h;const e=Ce(d=>d.activityLog),i=Ce(d=>d.tokenTimeline),n=e[t.id]||[],r=i[t.id]||[],s=Math.round((t.contextUsage||0)*100),a=t.spawnedAt?_8(Date.now()-new Date(t.spawnedAt).getTime()):"-",c=t.spawnedAt&&t.tokensUsed>0?Math.round(t.tokensUsed/((Date.now()-new Date(t.spawnedAt).getTime())/6e4)):0;return O.jsxs("div",{style:si.container,children:[O.jsxs("div",{style:si.metricsGrid,children:[O.jsx(ap,{label:"Tokens",value:((h=t.tokensUsed)==null?void 0:h.toLocaleString())||"0"}),O.jsx(ap,{label:"Burn Rate",value:`${c}/min`}),O.jsx(ap,{label:"Uptime",value:a}),O.jsx(ap,{label:"Activity",value:`${n.length} events`})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:si.sectionLabel,children:"TOKEN HEARTBEAT"}),O.jsx(S8,{data:r,isAlive:t.status==="running"})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:si.sectionLabel,children:"CONTEXT USAGE"}),O.jsxs("div",{style:si.gaugeRow,children:[O.jsx("div",{style:si.gaugeTrack,children:O.jsx("div",{style:{height:"100%",width:`${s}%`,borderRadius:1,background:s>80?"var(--red)":s>60?"var(--amber)":"var(--green)",transition:"width 0.3s"}})}),O.jsxs("span",{style:si.gaugeLabel,children:[s,"%"]})]})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:si.sectionLabel,children:"ACTIVITY PULSE"}),O.jsx(b8,{activity:n})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:si.sectionLabel,children:"DETAILS"}),O.jsxs("div",{style:si.infoList,children:[O.jsx(Xo,{label:"ID",value:t.id}),O.jsx(Xo,{label:"Role",value:t.role}),O.jsx(Xo,{label:"Provider",value:t.provider}),O.jsx(Xo,{label:"Model",value:t.model||"default"}),t.workingDir&&O.jsx(Xo,{label:"Directory",value:t.workingDir}),O.jsx(Xo,{label:"Scope",value:(t.scope||[]).join(", ")||"unrestricted"}),O.jsx(Xo,{label:"Spawned",value:t.spawnedAt?new Date(t.spawnedAt).toLocaleTimeString():"-"}),O.jsx(Xo,{label:"Last Active",value:t.lastActivity?new Date(t.lastActivity).toLocaleTimeString():"-"})]})]}),t.prompt&&O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:si.sectionLabel,children:"ORIGINAL PROMPT"}),O.jsx("div",{style:si.promptBox,children:t.prompt})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsxs("div",{style:si.sectionLabel,children:["RECENT LOG (",n.length,")"]}),O.jsxs("div",{style:si.logScroll,children:[n.length===0&&O.jsx("div",{style:{color:"var(--text-dim)",fontSize:11,padding:8},children:"No activity yet..."}),n.slice(-30).reverse().map((d,f)=>{var g;return O.jsxs("div",{style:si.logEntry,children:[O.jsx("span",{style:si.logTime,children:new Date(d.timestamp).toLocaleTimeString()}),O.jsx("span",{style:si.logText,children:(g=d.text)==null?void 0:g.slice(0,200)})]},f)})]})]})]})}function S8({data:t,isAlive:e}){const i=X.useRef();return X.useEffect(()=>{const n=i.current;if(!n)return;const r=n.getContext("2d"),s=n.width,a=n.height;r.clearRect(0,0,s,a),r.strokeStyle="#3e4451",r.lineWidth=.5;for(let v=0;v<a;v+=a/4)r.beginPath(),r.moveTo(0,v),r.lineTo(s,v),r.stroke();if(t.length<2){r.strokeStyle=e?"#5c6370":"#3e4451",r.lineWidth=1,r.beginPath(),r.moveTo(0,a/2),r.lineTo(s,a/2),r.stroke(),e&&(r.fillStyle="#5c6370",r.font="10px monospace",r.fillText("waiting for data...",8,a/2-6));return}const c=t.map(v=>v.v),h=Math.min(...c),d=Math.max(...c),f=d-h||1,g=[];for(let v=1;v<c.length;v++){const S=c[v]-c[v-1];S>f*.2&&S>0&&g.push(v)}const m=r.createLinearGradient(0,0,0,a);m.addColorStop(0,e?"rgba(51, 175, 188, 0.15)":"rgba(92, 99, 112, 0.1)"),m.addColorStop(1,"transparent"),r.beginPath(),r.moveTo(0,a);for(let v=0;v<t.length;v++){const S=v/(t.length-1)*s,_=a-4-(c[v]-h)/f*(a-8);r.lineTo(S,_)}r.lineTo(s,a),r.closePath(),r.fillStyle=m,r.fill(),r.strokeStyle=e?"#33afbc":"#5c6370",r.lineWidth=1.5,r.beginPath();for(let v=0;v<t.length;v++){const S=v/(t.length-1)*s,_=a-4-(c[v]-h)/f*(a-8);v===0?r.moveTo(S,_):r.lineTo(S,_)}r.stroke();for(const v of g){const S=v/(t.length-1)*s,_=a-4-(c[v]-h)/f*(a-8);r.fillStyle="#e5c07b",r.beginPath(),r.arc(S,_,3,0,Math.PI*2),r.fill()}if(e&&t.length>0){const v=s,S=a-4-(c[c.length-1]-h)/f*(a-8);r.fillStyle="#33afbc",r.beginPath(),r.arc(v-2,S,3,0,Math.PI*2),r.fill()}r.fillStyle="#5c6370",r.font="9px monospace",r.fillText(d.toLocaleString(),4,10),r.fillText(h.toLocaleString(),4,a-2)},[t,e]),O.jsx("div",{style:si.chartContainer,children:O.jsx("canvas",{ref:i,width:400,height:60,style:{width:"100%",height:60,display:"block"}})})}function b8({activity:t}){const i=Date.now(),n=300*1e3,r=n/40,s=new Array(40).fill(0);for(const h of t){const d=i-h.timestamp;if(d>n)continue;const f=Math.min(Math.floor((n-d)/r),39);s[f]++}const a=Math.max(...s,1),c=s.map((h,d)=>{const f=d/39*300,g=28-h/a*24;return`${f},${g}`}).join(" ");return O.jsx("div",{style:si.chartContainer,children:O.jsxs("svg",{width:"100%",height:"32",viewBox:"0 0 300 32",preserveAspectRatio:"none",style:{display:"block"},children:[O.jsx("polyline",{points:c,fill:"none",stroke:"var(--green)",strokeWidth:"1",opacity:"0.6"}),O.jsx("line",{x1:"0",y1:"31",x2:"300",y2:"31",stroke:"var(--text-muted)",strokeWidth:"0.5"})]})})}function ap({label:t,value:e}){return O.jsxs("div",{style:si.metric,children:[O.jsx("div",{style:{fontSize:14,fontWeight:700,color:"var(--text-bright)"},children:e}),O.jsx("div",{style:{fontSize:10,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1},children:t})]})}function Xo({label:t,value:e}){return O.jsxs("div",{style:{display:"flex",justifyContent:"space-between",padding:"3px 0"},children:[O.jsx("span",{style:{color:"var(--text-dim)",fontSize:11},children:t}),O.jsx("span",{style:{color:"var(--text-primary)",fontSize:11,maxWidth:"65%",textAlign:"right",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e})]})}function _8(t){const e=Math.floor(t/1e3),i=Math.floor(e/60),n=Math.floor(i/60);return n>0?`${n}h ${i%60}m`:i>0?`${i}m ${e%60}s`:`${e}s`}const si={container:{flex:1,overflowY:"auto",padding:"10px 0"},metricsGrid:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:6},metric:{background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,padding:10,textAlign:"center"},sectionLabel:{fontSize:11,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.5,marginBottom:6,fontWeight:600},gaugeRow:{display:"flex",alignItems:"center",gap:8},gaugeTrack:{flex:1,height:4,background:"var(--text-muted)",borderRadius:2,overflow:"hidden"},gaugeLabel:{fontSize:12,color:"var(--text-primary)",fontWeight:600,minWidth:36,textAlign:"right"},chartContainer:{background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:2,padding:"6px 8px",overflow:"hidden"},infoList:{borderTop:"1px solid var(--border)",paddingTop:6},promptBox:{background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:2,padding:8,fontSize:12,color:"var(--text-primary)",lineHeight:1.5,whiteSpace:"pre-wrap"},logScroll:{maxHeight:160,overflowY:"auto",background:"var(--bg-base)",borderRadius:2,border:"1px solid var(--border)"},logEntry:{padding:"3px 8px",borderBottom:"1px solid var(--bg-surface)",fontSize:10,display:"flex",gap:6},logTime:{color:"var(--text-dim)",whiteSpace:"nowrap"},logText:{color:"var(--text-primary)",wordBreak:"break-word"}};function x8({agent:t}){const e=Ce(L=>L.killAgent),i=Ce(L=>L.rotateAgent),n=Ce(L=>L.spawnAgent),r=Ce(L=>L.instructAgent),s=Ce(L=>L.showStatus),a=Ce(L=>L.closeDetail),[c,h]=X.useState(!1),[d,f]=X.useState(!1),[g,m]=X.useState(""),[v,S]=X.useState(!1),[_,w]=X.useState(t.model||""),[x,Q]=X.useState([]),[C,T]=X.useState([]),[A,P]=X.useState(!1),M=t.status==="running"||t.status==="starting";X.useEffect(()=>{fetch("/api/providers").then(L=>L.json()).then(Q).catch(()=>{}),fetch("/api/skills/installed").then(L=>L.json()).then(T).catch(()=>{})},[]);const V=x.find(L=>L.id===t.provider),H=(V==null?void 0:V.models)||[];async function G(){try{await i(t.id)}catch(L){s(`rotate failed: ${L.message}`)}}async function N(){if(!c){h(!0),setTimeout(()=>h(!1),3e3);return}try{await e(t.id),s(`${t.name} killed`)}catch(L){s(`kill failed: ${L.message}`)}h(!1)}async function j(){if(!d){f(!0),setTimeout(()=>f(!1),3e3);return}try{await e(t.id,!0),a(),s(`${t.name} deleted`)}catch(L){s(`delete failed: ${L.message}`)}f(!1)}async function B(L){try{await fetch(`/api/agents/${t.id}/skills/${L}`,{method:"POST"}),s(`skill attached to ${t.name}`)}catch(U){s(`attach failed: ${U.message}`)}}async function E(L){try{await fetch(`/api/agents/${t.id}/skills/${L}`,{method:"DELETE"}),s(`skill detached from ${t.name}`)}catch(U){s(`detach failed: ${U.message}`)}}async function W(){try{const L=await n({role:t.role,scope:t.scope,prompt:t.prompt,provider:t.provider,model:t.model,skills:t.skills});s(`cloned as ${L.name}`)}catch(L){s(`clone failed: ${L.message}`)}}async function $(L){w(L);try{await fetch(`/api/agents/${t.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:L||null})}),s(`model set to ${L||"default"} (takes effect on next rotation)`)}catch(U){s(`model change failed: ${U.message}`)}}async function Z(){if(g.trim())try{await r(t.id,g.trim()),S(!1),m("")}catch(L){s(`prompt update failed: ${L.message}`)}}async function z(){try{await e(t.id,!0);const L=await n({role:t.role,scope:t.scope,prompt:t.prompt,provider:t.provider,model:t.model,skills:t.skills});s(`restarted as ${L.name}`)}catch(L){s(`restart failed: ${L.message}`)}}return O.jsxs("div",{style:pt.container,children:[O.jsx("div",{style:pt.sectionLabel,children:"LIFECYCLE"}),O.jsxs("div",{style:pt.btnGrid,children:[M&&O.jsxs(O.Fragment,{children:[O.jsx(Gh,{icon:"~",label:"Rotate",desc:"Fresh context + handoff brief",onClick:G,color:"var(--accent)"}),O.jsx(Gh,{icon:"||",label:c?"Confirm Kill":"Stop",desc:"Stop the agent process",onClick:N,color:c?"var(--red)":"var(--amber)"})]}),!M&&O.jsx(Gh,{icon:">",label:"Restart",desc:"Spawn fresh with same config",onClick:z,color:"var(--green)"}),O.jsx(Gh,{icon:"+",label:"Clone",desc:"Spawn duplicate agent",onClick:W,color:"var(--accent)"}),O.jsx(Gh,{icon:"x",label:d?"Confirm Delete":"Delete",desc:"Kill and remove permanently",onClick:j,color:d?"var(--red)":"var(--text-dim)"})]}),O.jsxs("div",{style:{...pt.sectionLabel,marginTop:20},children:["MODEL ",t.routingMode==="auto"&&O.jsx("span",{style:{color:"var(--accent)",fontWeight:400,textTransform:"none"},children:" — auto-routed"})]}),O.jsxs("select",{style:pt.select,value:_,onChange:L=>$(L.target.value),children:[O.jsx("option",{value:"",children:"Default"}),H.map(L=>O.jsxs("option",{value:L.id,children:[L.name," (",L.tier,")"]},L.id))]}),O.jsx("div",{style:pt.fieldHint,children:"Changes take effect on next rotation"}),O.jsx("div",{style:{...pt.sectionLabel,marginTop:20},children:"PROMPT"}),t.prompt&&!v&&O.jsxs("div",{style:pt.currentPrompt,children:[O.jsx("div",{style:pt.promptText,children:t.prompt}),M&&O.jsx("button",{onClick:()=>{S(!0),m("")},style:pt.editBtn,children:"Send New Instruction"})]}),!t.prompt&&!v&&O.jsx("div",{style:pt.noPrompt,children:"No prompt set"}),v&&O.jsxs("div",{children:[O.jsx("textarea",{style:pt.textarea,value:g,onChange:L=>m(L.target.value),placeholder:"New instruction for this agent...",rows:4,autoFocus:!0}),O.jsxs("div",{style:{display:"flex",gap:6,marginTop:6},children:[O.jsx("button",{onClick:Z,style:pt.saveBtn,disabled:!g.trim(),children:"Send (rotates agent)"}),O.jsx("button",{onClick:()=>S(!1),style:pt.cancelBtn,children:"Cancel"})]})]}),O.jsxs("div",{style:{...pt.sectionLabel,marginTop:20},children:["SKILLS (",(t.skills||[]).length,")"]}),(t.skills||[]).length>0?O.jsx("div",{style:pt.skillsList,children:(t.skills||[]).map(L=>{const U=C.find(D=>D.id===L);return O.jsxs("div",{style:pt.skillRow,children:[O.jsx("span",{style:pt.skillRowIcon,children:(U==null?void 0:U.icon)||L.charAt(0).toUpperCase()}),O.jsxs("div",{style:{flex:1,minWidth:0},children:[O.jsx("div",{style:{fontSize:11,color:"var(--text-primary)",fontWeight:500},children:(U==null?void 0:U.name)||L}),O.jsx("div",{style:{fontSize:9,color:"var(--text-muted)"},children:(U==null?void 0:U.author)||"unknown"})]}),O.jsx("button",{onClick:()=>E(L),style:pt.detachBtn,title:"Detach skill",children:"✕"})]},L)})}):O.jsx("div",{style:pt.noPrompt,children:"No skills attached"}),!A&&C.length>0&&O.jsx("button",{onClick:()=>P(!0),style:{...pt.editBtn,marginTop:6},children:"+ Attach Skill"}),A&&O.jsxs("div",{style:pt.skillPicker,children:[C.filter(L=>!(t.skills||[]).includes(L.id)).map(L=>O.jsxs("button",{onClick:()=>{B(L.id),P(!1)},style:pt.skillPickerItem,children:[O.jsx("span",{style:pt.skillRowIcon,children:L.icon||L.name.charAt(0)}),O.jsxs("div",{style:{flex:1},children:[O.jsx("div",{style:{fontSize:11,color:"var(--text-primary)"},children:L.name}),O.jsx("div",{style:{fontSize:9,color:"var(--text-muted)"},children:L.author})]})]},L.id)),C.filter(L=>!(t.skills||[]).includes(L.id)).length===0&&O.jsx("div",{style:{fontSize:10,color:"var(--text-dim)",padding:8},children:"All installed skills are already attached"}),O.jsx("button",{onClick:()=>P(!1),style:pt.cancelBtn,children:"cancel"})]}),O.jsx("div",{style:{...pt.sectionLabel,marginTop:20},children:"CONFIGURATION"}),O.jsx(ic,{label:"ID",value:t.id}),O.jsx(ic,{label:"Role",value:t.role}),O.jsx(ic,{label:"Provider",value:t.provider}),O.jsx(ic,{label:"Model",value:t.routingMode==="auto"?`auto (${t.model||"pending"})`:t.model||"default"}),O.jsx(ic,{label:"Scope",value:(t.scope||[]).join(", ")||"unrestricted"}),O.jsx(ic,{label:"Status",value:t.status})]})}function Gh({icon:t,label:e,desc:i,onClick:n,color:r}){return O.jsxs("button",{onClick:n,style:{...pt.actionBtn,borderColor:r},children:[O.jsx("span",{style:{...pt.actionIcon,color:r},children:t}),O.jsxs("div",{children:[O.jsx("div",{style:pt.actionTitle,children:e}),O.jsx("div",{style:pt.actionDesc,children:i})]})]})}function ic({label:t,value:e}){return O.jsxs("div",{style:pt.configRow,children:[O.jsx("span",{style:{color:"var(--text-dim)",fontSize:11,minWidth:60},children:t}),O.jsx("span",{style:{color:"var(--text-primary)",fontSize:11,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e})]})}const pt={container:{flex:1,overflowY:"auto",padding:"10px 0"},sectionLabel:{fontSize:11,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.5,marginBottom:8,fontWeight:600},btnGrid:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:4},actionBtn:{display:"flex",alignItems:"center",gap:8,padding:"8px 10px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,cursor:"pointer",textAlign:"left",fontFamily:"var(--font)"},actionIcon:{fontSize:14,fontWeight:700,width:18,textAlign:"center",flexShrink:0},actionTitle:{fontSize:11,color:"var(--text-primary)",fontWeight:600},actionDesc:{fontSize:9,color:"var(--text-dim)",marginTop:1},select:{width:"100%",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,padding:"6px 8px",color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none"},fieldHint:{fontSize:10,color:"var(--text-muted)",marginTop:4},currentPrompt:{},promptText:{background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:2,padding:8,fontSize:12,color:"var(--text-primary)",lineHeight:1.5,whiteSpace:"pre-wrap",maxHeight:100,overflowY:"auto"},noPrompt:{fontSize:12,color:"var(--text-dim)",fontStyle:"italic"},editBtn:{marginTop:6,padding:"4px 10px",background:"transparent",border:"1px solid var(--accent)",borderRadius:2,color:"var(--accent)",fontSize:11,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer"},textarea:{width:"100%",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,padding:"6px 8px",color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none",resize:"vertical"},saveBtn:{flex:1,padding:"6px",background:"transparent",border:"1px solid var(--accent)",borderRadius:2,color:"var(--accent)",fontSize:11,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer"},cancelBtn:{padding:"6px 12px",background:"transparent",border:"1px solid var(--border)",borderRadius:2,color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font)",cursor:"pointer"},configRow:{display:"flex",gap:8,padding:"3px 0",borderBottom:"1px solid var(--bg-surface)"},skillsList:{display:"flex",flexDirection:"column",gap:3},skillRow:{display:"flex",alignItems:"center",gap:8,padding:"5px 8px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2},skillRowIcon:{width:20,height:20,borderRadius:4,background:"var(--accent)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:9,fontWeight:700,color:"var(--bg-base)",flexShrink:0},detachBtn:{background:"none",border:"none",color:"var(--text-muted)",fontSize:11,cursor:"pointer",fontFamily:"var(--font)",padding:"2px 4px",flexShrink:0},skillPicker:{marginTop:6,padding:6,background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:2,display:"flex",flexDirection:"column",gap:2,maxHeight:180,overflowY:"auto"},skillPickerItem:{display:"flex",alignItems:"center",gap:8,padding:"5px 8px",width:"100%",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,cursor:"pointer",textAlign:"left",fontFamily:"var(--font)",transition:"border-color 0.1s"}},w8=[{id:"chat",label:"Chat"},{id:"stats",label:"Stats"},{id:"actions",label:"Actions"}],k8={running:"var(--green)",starting:"var(--amber)",stopped:"var(--text-dim)",crashed:"var(--red)",completed:"var(--accent)",killed:"var(--text-dim)"};function C8(){const[t,e]=X.useState("chat"),i=Ce(c=>c.detailPanel),r=Ce(c=>c.agents).find(c=>c.id===(i==null?void 0:i.agentId));if(!r)return O.jsx("div",{style:No.empty,children:"Agent not found"});const s=k8[r.status]||"var(--text-dim)",a=r.status==="running"||r.status==="starting";return O.jsxs("div",{style:No.container,children:[O.jsxs("div",{style:No.agentHeader,children:[O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[O.jsx("div",{style:{width:6,height:6,borderRadius:"50%",background:s,animation:a?"pulse 2s infinite":"none"}}),O.jsx("span",{style:No.agentName,children:r.name}),O.jsx("span",{style:{fontSize:10,fontWeight:600,textTransform:"uppercase",letterSpacing:.5,color:s,padding:"1px 6px",borderRadius:2,background:`color-mix(in srgb, ${s} 12%, transparent)`},children:r.status})]}),O.jsxs("span",{style:No.agentMeta,children:[r.role," / ",r.provider]})]}),O.jsx("div",{style:No.tabBar,children:w8.map(c=>O.jsx("button",{onClick:()=>e(c.id),style:{...No.tab,color:t===c.id?"var(--text-bright)":"var(--text-dim)",borderBottom:t===c.id?"2px solid var(--accent)":"2px solid transparent"},children:c.label},c.id))}),O.jsxs("div",{style:No.tabContent,children:[t==="chat"&&O.jsx(p8,{agent:r}),t==="stats"&&O.jsx(y8,{agent:r}),t==="actions"&&O.jsx(x8,{agent:r})]})]})}const No={container:{display:"flex",flexDirection:"column",height:"100%"},agentHeader:{padding:"12px 0 8px",display:"flex",justifyContent:"space-between",alignItems:"center",borderBottom:"1px solid var(--border)"},agentName:{fontSize:14,fontWeight:600,color:"var(--text-bright)"},agentMeta:{fontSize:11,color:"var(--text-dim)"},tabBar:{display:"flex",gap:0,borderBottom:"1px solid var(--border)"},tab:{padding:"8px 16px",background:"transparent",border:"none",borderBottom:"2px solid transparent",fontSize:11,fontWeight:600,textTransform:"uppercase",letterSpacing:1,fontFamily:"var(--font)",cursor:"pointer"},tabContent:{flex:1,overflow:"hidden",display:"flex",flexDirection:"column"},empty:{color:"var(--text-dim)",fontSize:12,padding:16}};function T8(){const t=Ce(i=>i.openDetail),e=Ce(i=>i.connected);return O.jsx("div",{style:xr.container,children:O.jsx("div",{style:xr.inner,children:e?O.jsxs(O.Fragment,{children:[O.jsx("div",{style:xr.readyIcon,children:O.jsxs("svg",{width:"40",height:"40",viewBox:"0 0 40 40",children:[O.jsx("circle",{cx:"20",cy:"20",r:"18",fill:"none",stroke:"#2c313a",strokeWidth:"1"}),O.jsx("circle",{cx:"20",cy:"20",r:"18",fill:"none",stroke:"#33afbc",strokeWidth:"1",strokeDasharray:"113",strokeDashoffset:"28",strokeLinecap:"round",children:O.jsx("animateTransform",{attributeName:"transform",type:"rotate",from:"0 20 20",to:"360 20 20",dur:"3s",repeatCount:"indefinite"})}),O.jsx("text",{x:"20",y:"24",textAnchor:"middle",fill:"#33afbc",fontSize:"14",fontWeight:"700",fontFamily:"JetBrains Mono, monospace",children:"+"})]})}),O.jsx("div",{style:xr.title,children:"Ready to orchestrate"}),O.jsx("div",{style:xr.hint,children:"Spawn your first agent to start building"}),O.jsx("button",{onClick:()=>t({type:"spawn"}),style:xr.spawnBtn,children:"Spawn Agent"})]}):O.jsxs(O.Fragment,{children:[O.jsx("div",{style:xr.pulseRing,children:O.jsx("div",{style:xr.pulseCore})}),O.jsx("div",{style:xr.title,children:"Connecting to daemon..."}),O.jsx("div",{style:xr.hint,children:"Make sure the GROOVE daemon is running"}),O.jsx("code",{style:xr.code,children:"groove start"})]})})})}const xr={container:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",background:"#1a1e25"},inner:{display:"flex",flexDirection:"column",alignItems:"center",gap:12,padding:40},pulseRing:{width:40,height:40,borderRadius:"50%",border:"1px solid #33afbc",display:"flex",alignItems:"center",justifyContent:"center",animation:"pulse 2s infinite"},pulseCore:{width:8,height:8,borderRadius:"50%",background:"#33afbc",boxShadow:"0 0 12px rgba(51, 175, 188, 0.5)"},readyIcon:{marginBottom:4},title:{fontSize:14,color:"#e6e6e6",fontWeight:600,letterSpacing:.5},hint:{fontSize:12,color:"#6b7280",textAlign:"center",lineHeight:1.6,maxWidth:360},spawnBtn:{padding:"8px 24px",background:"rgba(51, 175, 188, 0.1)",border:"1px solid #33afbc",color:"#33afbc",fontSize:12,fontWeight:600,fontFamily:"'JetBrains Mono', monospace",cursor:"pointer",marginTop:4,transition:"background 0.2s"},code:{background:"#252a33",padding:"8px 16px",fontSize:11,color:"#33afbc",border:"1px solid #2c313a"}};function Q8({onSelect:t,onClose:e,initial:i}){const[n,r]=X.useState(i||""),[s,a]=X.useState([]),[c,h]=X.useState(null),[d,f]=X.useState(0),[g,m]=X.useState(!0),[v,S]=X.useState(""),[_,w]=X.useState(null),x=X.useRef(null);X.useEffect(()=>{Q(n)},[n]),X.useEffect(()=>{x.current&&(x.current.scrollTop=0)},[s]);async function Q(T){m(!0),S("");try{const A=await fetch(`/api/browse?path=${encodeURIComponent(T)}`);if(!A.ok){const M=await A.json().catch(()=>({}));S(M.error||"Failed to browse"),a([]);return}const P=await A.json();a(P.dirs),h(P.parent),f(P.fileCount||0)}catch{S("Failed to connect")}finally{m(!1)}}const C=n?[{label:"root",path:""},...n.split("/").map((T,A,P)=>({label:T,path:P.slice(0,A+1).join("/")}))]:[{label:"root",path:""}];return O.jsx("div",{style:it.overlay,onClick:e,children:O.jsxs("div",{style:it.modal,onClick:T=>T.stopPropagation(),children:[O.jsxs("div",{style:it.header,children:[O.jsxs("div",{children:[O.jsx("div",{style:it.title,children:"SELECT DIRECTORY"}),O.jsx("div",{style:it.subtitle,children:"Choose where this agent will work"})]}),O.jsx("button",{onClick:e,style:it.closeBtn,children:"x"})]}),O.jsxs("div",{style:it.breadcrumb,children:[C.map((T,A)=>O.jsxs("span",{children:[A>0&&O.jsx("span",{style:it.breadSep,children:"/"}),O.jsx("button",{onClick:()=>r(T.path),style:{...it.breadPart,color:A===C.length-1?"var(--text-bright)":"var(--accent)"},children:T.label})]},A)),!g&&O.jsxs("span",{style:it.breadMeta,children:[s.length," folder",s.length!==1?"s":"",", ",d," file",d!==1?"s":""]})]}),O.jsxs("div",{style:it.list,ref:x,children:[c!==null&&O.jsxs("div",{onClick:()=>r(c),onMouseEnter:()=>w("__parent"),onMouseLeave:()=>w(null),style:{...it.dirRow,background:_==="__parent"?"var(--bg-hover)":"transparent"},children:[O.jsx("div",{style:it.dirIconWrap,children:O.jsx("span",{style:it.dirArrow,children:"<"})}),O.jsx("div",{style:it.dirInfo,children:O.jsx("div",{style:it.dirNameText,children:".."})})]}),g&&O.jsx("div",{style:it.emptyState,children:O.jsx("div",{style:it.emptyText,children:"Loading..."})}),v&&O.jsx("div",{style:it.emptyState,children:O.jsx("div",{style:{...it.emptyText,color:"var(--red)"},children:v})}),!g&&!v&&s.length===0&&O.jsxs("div",{style:it.emptyState,children:[O.jsx("div",{style:it.emptyText,children:"No subdirectories"}),O.jsxs("div",{style:it.emptyHint,children:["This directory has ",d," file",d!==1?"s":""]})]}),s.map(T=>O.jsxs("div",{onClick:()=>r(T.path),onMouseEnter:()=>w(T.path),onMouseLeave:()=>w(null),style:{...it.dirRow,background:_===T.path?"var(--bg-hover)":"transparent"},children:[O.jsx("div",{style:it.dirIconWrap,children:O.jsx("span",{style:it.dirArrow,children:T.hasChildren?">":""})}),O.jsxs("div",{style:it.dirInfo,children:[O.jsx("div",{style:it.dirNameText,children:T.name}),O.jsxs("div",{style:it.dirMeta,children:[T.childCount>0&&`${T.childCount} folder${T.childCount!==1?"s":""}`,T.childCount>0&&T.fileCount>0&&", ",T.fileCount>0&&`${T.fileCount} file${T.fileCount!==1?"s":""}`,T.childCount===0&&T.fileCount===0&&"empty"]})]})]},T.path))]}),O.jsxs("div",{style:it.footer,children:[O.jsxs("div",{style:it.footerLeft,children:[O.jsx("div",{style:it.selectedLabel,children:"Selected"}),O.jsxs("div",{style:it.selectedPath,children:["/",n||"(project root)"]})]}),O.jsxs("div",{style:it.footerActions,children:[O.jsx("button",{onClick:e,style:it.cancelBtn,children:"Cancel"}),O.jsx("button",{onClick:()=>{t(n),e()},style:it.selectBtn,children:"Select"})]})]})]})})}const it={overlay:{position:"fixed",inset:0,zIndex:200,background:"rgba(0, 0, 0, 0.65)",display:"flex",alignItems:"center",justifyContent:"center",backdropFilter:"blur(2px)"},modal:{width:480,maxHeight:"80vh",background:"var(--bg-chrome)",border:"1px solid var(--border)",borderRadius:6,display:"flex",flexDirection:"column",fontFamily:"var(--font)",boxShadow:"0 16px 48px rgba(0, 0, 0, 0.4)"},header:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",padding:"14px 16px 12px",borderBottom:"1px solid var(--border)"},title:{fontSize:12,fontWeight:700,color:"var(--text-bright)",letterSpacing:.5},subtitle:{fontSize:10,color:"var(--text-dim)",marginTop:2},closeBtn:{background:"none",border:"none",color:"var(--text-dim)",fontSize:14,cursor:"pointer",fontFamily:"var(--font)",padding:"0 4px",lineHeight:1},breadcrumb:{padding:"8px 16px",borderBottom:"1px solid var(--border)",fontSize:11,display:"flex",alignItems:"center",flexWrap:"wrap",gap:0,background:"var(--bg-base)"},breadSep:{color:"var(--text-muted)",margin:"0 3px"},breadPart:{background:"none",border:"none",cursor:"pointer",fontFamily:"var(--font)",fontSize:11,padding:0},breadMeta:{marginLeft:"auto",fontSize:10,color:"var(--text-muted)"},list:{flex:1,overflowY:"auto",minHeight:200,maxHeight:400},dirRow:{display:"flex",alignItems:"center",gap:0,padding:"8px 16px",cursor:"pointer",transition:"background 0.08s",borderBottom:"1px solid rgba(75, 82, 99, 0.2)"},dirIconWrap:{width:28,flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center"},dirArrow:{fontSize:10,color:"var(--text-muted)",fontWeight:600},dirInfo:{flex:1,minWidth:0},dirNameText:{fontSize:12,color:"var(--text-bright)",fontWeight:500},dirMeta:{fontSize:10,color:"var(--text-muted)",marginTop:1},emptyState:{padding:"32px 16px",textAlign:"center"},emptyText:{fontSize:12,color:"var(--text-dim)"},emptyHint:{fontSize:10,color:"var(--text-muted)",marginTop:4},footer:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 16px",borderTop:"1px solid var(--border)",background:"var(--bg-base)"},footerLeft:{flex:1,minWidth:0,marginRight:12},selectedLabel:{fontSize:9,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:1,fontWeight:600},selectedPath:{fontSize:11,color:"var(--accent)",marginTop:2,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},footerActions:{display:"flex",gap:6,flexShrink:0},cancelBtn:{padding:"6px 14px",background:"transparent",border:"1px solid var(--border)",borderRadius:3,color:"var(--text-dim)",fontSize:11,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer"},selectBtn:{padding:"6px 18px",background:"var(--accent)",border:"1px solid var(--accent)",borderRadius:3,color:"var(--bg-base)",fontSize:11,fontWeight:700,fontFamily:"var(--font)",cursor:"pointer"}},lp=[{id:"backend",label:"Backend",desc:"APIs, server logic, database",scope:["src/api/**","src/server/**","src/lib/**","src/db/**"],category:"coding"},{id:"frontend",label:"Frontend",desc:"UI components, views, styles",scope:["src/components/**","src/views/**","src/pages/**","src/styles/**"],category:"coding"},{id:"fullstack",label:"Fullstack",desc:"Full codebase access",scope:[],category:"coding"},{id:"planner",label:"Planner",desc:"Architecture, research, planning",scope:[],category:"coding"},{id:"testing",label:"Testing",desc:"Tests, specs, coverage",scope:["tests/**","test/**","**/*.test.*","**/*.spec.*"],category:"coding"},{id:"devops",label:"DevOps",desc:"Docker, CI/CD, infra",scope:["Dockerfile*","docker-compose*",".github/**","infra/**"],category:"coding"},{id:"docs",label:"Docs",desc:"Documentation, READMEs",scope:["docs/**","*.md"],category:"coding"},{id:"cmo",label:"CMO",desc:"Marketing, social media, content",scope:[],category:"business",integrations:["slack","brave-search"]},{id:"cfo",label:"CFO",desc:"Finance, billing, revenue",scope:[],category:"business",integrations:["stripe","google-drive"]},{id:"ea",label:"EA",desc:"Scheduling, email, comms",scope:[],category:"business",integrations:["gmail","google-calendar","slack"]},{id:"support",label:"Support",desc:"Customer support, triage",scope:[],category:"business",integrations:["slack","discord"]},{id:"analyst",label:"Analyst",desc:"Data analysis, reporting",scope:[],category:"business",integrations:["postgres","google-drive"]},{id:"home",label:"Home",desc:"Smart home automation",scope:[],category:"business",integrations:["home-assistant"]}],$8=[{id:"auto",label:"Auto",desc:"AI PM reviews risky operations",icon:"~"},{id:"full",label:"Full Send",desc:"No reviews, max speed",icon:">"}],P8=[{value:"*/30 * * * *",label:"Every 30 min"},{value:"0 * * * *",label:"Every hour"},{value:"0 */6 * * *",label:"Every 6 hours"},{value:"0 9 * * *",label:"Daily 9 AM"},{value:"0 9 * * 1-5",label:"Weekdays 9 AM"},{value:"0 0 * * 1",label:"Weekly Mon"},{value:"0 0 1 * *",label:"Monthly"}];function E8(){const t=Ce(ie=>ie.spawnAgent),e=Ce(ie=>ie.closeDetail),[i,n]=X.useState(""),[r,s]=X.useState(""),[a,c]=X.useState(""),[h,d]=X.useState(""),[f,g]=X.useState("auto"),[m,v]=X.useState("claude-code"),[S,_]=X.useState("auto"),[w,x]=X.useState("high"),[Q,C]=X.useState([]),[T,A]=X.useState(!1),[P,M]=X.useState(""),[V,H]=X.useState(!1),[G,N]=X.useState(""),[j,B]=X.useState([]),[E,W]=X.useState(null),[$,Z]=X.useState(""),[z,L]=X.useState(!1),[U,D]=X.useState(!1),[I,J]=X.useState([]),[ne,ce]=X.useState([]),[de,pe]=X.useState([]),[fe,Oe]=X.useState([]),[je,$e]=X.useState(!1),[Te,me]=X.useState(!1),[Be,at]=X.useState(""),[He,Dt]=X.useState(!1),[Jt,Gi]=X.useState(!1),[an,mr]=X.useState("0 9 * * *"),[jr,fs]=X.useState(""),[hi,Or]=X.useState(!1),[Pi,wn]=X.useState([]),[kn,Ol]=X.useState(""),[Cn,ro]=X.useState(!1),[Ed,Dr]=X.useState(!1),Si=X.useRef(null);X.useEffect(()=>{Tn(),Ei(),Fc(),Kc(),fetch("/api/anthropic-key/status").then(ie=>ie.json()).then(ie=>$e(ie.configured)).catch(()=>{})},[]),X.useEffect(()=>{var ie;(ie=Si.current)==null||ie.scrollIntoView({behavior:"smooth"})},[Pi,Cn]);async function Tn(){try{const ie=await fetch("/api/providers");C(await ie.json())}catch{}}async function Ei(){try{const Ne=await(await fetch("/api/indexer/workspaces")).json();B(Ne.workspaces||[])}catch{}}async function Fc(){try{const ie=await fetch("/api/skills/installed");J(await ie.json())}catch{}}async function Kc(){try{const ie=await fetch("/api/integrations/installed");pe(await ie.json())}catch{}}function Jc(ie){ce(Ne=>Ne.includes(ie)?Ne.filter(lt=>lt!==ie):[...Ne,ie])}function so(ie){Oe(Ne=>Ne.includes(ie)?Ne.filter(lt=>lt!==ie):[...Ne,ie])}X.useEffect(()=>{const ie=lp.find(Ne=>Ne.id===i);if(ie!=null&&ie.integrations&&de.length>0){const Ne=ie.integrations.filter(lt=>de.some(ui=>ui.id===lt&&ui.configured));Oe(Ne)}},[i,de]);const Gn=lp.find(ie=>ie.id===i),Br=i==="custom"?a:(Gn==null?void 0:Gn.scope.join(", "))||"",Qn=i==="planner";function oo(ie){if(ie.installed&&(ie.authType==="subscription"||ie.authType==="local"||ie.hasKey)){v(ie.id),_("auto"),W(null);return}W(ie.id),Z("")}async function Lr(){if(!(!$.trim()||!E)){L(!0);try{await fetch(`/api/credentials/${E}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:$.trim()})}),Z(""),W(null),v(E),_("auto"),await Tn()}catch{}L(!1)}}function eh(ie){return ie.installed?ie.authType==="api-key"&&!ie.hasKey?"needs key":ie.authType==="subscription"?"subscription":ie.authType==="local"?"local":"ready":"not installed"}function vl(ie){return!(!ie.installed||ie.authType==="api-key"&&!ie.hasKey)}async function ao(){if(!kn.trim()||Cn)return;const ie=kn.trim();Ol(""),wn(Ne=>[...Ne,{from:"user",text:ie}]),ro(!0),Dr(!1);try{const Ne=i==="custom"?r:i,lt=[Ne?`Agent role: ${Ne}`:null,h?`Current task prompt: ${h}`:null].filter(Boolean).join(`
74
- `),ui=Pi.map(vr=>`${vr.from==="user"?"User":"AI"}: ${vr.text}`).join(`
75
- `),$n=await(await fetch("/api/journalist/query",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:`${lt}
76
-
77
- ${ui}
78
- User: ${ie}
79
-
80
- Respond helpfully:`})})).json();$n.mode==="research"?wn(vr=>[...vr,{from:"ai",text:$n.response||"No response",mode:"research"}]):wn(vr=>[...vr,{from:"ai",text:$n.response||$n.error||"No response"}])}catch{wn(Ne=>[...Ne,{from:"ai",text:"Failed to reach AI. Write your prompt directly."}])}ro(!1),Dr(!1)}async function ps(){ro(!0);try{const ie=Pi.map(ln=>`${ln.from==="user"?"User":"AI"}: ${ln.text}`).join(`
81
-
82
- `),ui=await(await fetch("/api/journalist/query",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:`Synthesize the following planning conversation into a clean, structured prompt for a ${(i==="custom"?r:i)||"coding"} agent. Output ONLY the prompt — no preamble, no explanation, just the actual content the agent should receive.
83
-
84
- CRITICAL: The prompt MUST include the SPECIFIC TASK or feature to work on — extracted from the conversation. Don't just define the agent's role. Tell it exactly what to build/plan/do. Structure it as:
85
- 1. Brief role context (2-3 sentences max)
86
- 2. The specific task/feature (this is the main content)
87
- 3. Requirements, constraints, acceptance criteria
88
- 4. Any relevant details discussed
89
-
90
- Conversation:
91
- ${ie}`})})).json();ui.response&&(d(ui.response),Or(!1))}catch{const ie=[...Pi].reverse().find(Ne=>Ne.from==="ai");ie&&d(ie.text),Or(!1)}ro(!1)}async function th(ie){ie.preventDefault();const Ne=i==="custom"?r:i;if(!Ne){M("Select a role");return}A(!0),M("");try{const lt=Br?Br.split(",").map(ln=>ln.trim()).filter(Boolean):[],ui={role:Ne,scope:lt,prompt:h||null,model:S||"auto",provider:m,permission:f,effort:w,...G.trim()?{workingDir:G.trim()}:{},...ne.length>0?{skills:ne}:{},...fe.length>0?{integrations:fe}:{}};Jt&&await fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:jr.trim()||`${Ne}-schedule`,cron:an,agentConfig:{role:Ne,prompt:h||null}})}),await t(ui),e()}catch(lt){M(lt.message)}finally{A(!1)}}return O.jsx("div",{style:Se.overlay,children:O.jsxs("div",{style:Se.container,children:[O.jsxs("div",{style:Se.header,children:[O.jsx("div",{style:Se.headerTitle,children:"Spawn Agent"}),O.jsxs("div",{style:Se.headerRight,children:[P&&O.jsx("span",{style:Se.headerError,children:P}),O.jsx("button",{onClick:th,disabled:T||!i,style:{...Se.spawnBtn,opacity:T||!i?.4:1},children:T?"Spawning...":Jt?"Spawn + Schedule":Qn?"Start Planning":"Spawn Agent"}),O.jsx("button",{onClick:e,style:Se.closeBtn,children:"×"})]})]}),O.jsxs("div",{style:Se.body,children:[O.jsx("div",{style:Se.left,children:O.jsxs("div",{style:Se.leftScroll,children:[O.jsxs(wr,{label:"Role",children:[O.jsx("div",{style:Se.roleGrid,children:lp.filter(ie=>ie.category==="coding").map(ie=>O.jsx(d2,{preset:ie,active:i===ie.id,onClick:()=>n(ie.id)},ie.id))}),O.jsx("div",{style:{...Se.sectionSub,marginTop:8},children:"Business"}),O.jsxs("div",{style:Se.roleGrid,children:[lp.filter(ie=>ie.category==="business").map(ie=>O.jsx(d2,{preset:ie,active:i===ie.id,onClick:()=>n(ie.id)},ie.id)),O.jsx("button",{type:"button",onClick:()=>n("custom"),style:{...Se.roleBtn,...i==="custom"?Se.roleBtnActive:{}},children:"Custom"})]}),i==="custom"&&O.jsx("input",{style:{...Se.input,marginTop:6},placeholder:"Custom role name...",value:r,onChange:ie=>s(ie.target.value),autoFocus:!0}),Gn&&O.jsx("div",{style:Se.hint,children:Gn.desc})]}),O.jsxs(wr,{label:"Directory",children:[O.jsxs("div",{style:Se.chipRow,children:[O.jsx(Ov,{label:"project root",active:!G,onClick:()=>N("")}),j.map(ie=>O.jsx(Ov,{label:ie.path,active:G===ie.path,onClick:()=>N(ie.path)},ie.path)),O.jsx("button",{type:"button",onClick:()=>D(!0),style:Se.browseBtn,children:"Browse..."})]}),U&&O.jsx(Q8,{initial:G,onSelect:ie=>N(ie),onClose:()=>D(!1)})]}),O.jsx(wr,{label:"Permissions",children:O.jsx("div",{style:{display:"flex",gap:6},children:$8.map(ie=>O.jsxs("button",{type:"button",onClick:()=>g(ie.id),style:{...Se.permBtn,...f===ie.id?Se.permBtnActive:{}},children:[O.jsx("span",{style:Se.permIcon,children:ie.icon}),O.jsxs("div",{children:[O.jsx("div",{style:{fontSize:11,fontWeight:600,color:f===ie.id?"var(--text-bright)":"var(--text-primary)"},children:ie.label}),O.jsx("div",{style:{fontSize:9,color:"var(--text-dim)"},children:ie.desc})]})]},ie.id))})}),O.jsx(wr,{label:"Effort",children:O.jsx("div",{style:Se.chipRow,children:[{id:"low",label:"Low",desc:"Quick tasks"},{id:"medium",label:"Medium",desc:"Standard"},{id:"high",label:"High",desc:"Comprehensive"},{id:"max",label:"Max",desc:"Deep reasoning"}].map(ie=>O.jsx("button",{type:"button",onClick:()=>x(ie.id),title:ie.desc,style:{...Se.chip,flex:1,textAlign:"center",padding:"5px 4px",...w===ie.id?{borderColor:"var(--accent)",color:"var(--text-bright)",background:"rgba(51, 175, 188, 0.08)"}:{}},children:ie.label},ie.id))})}),de.length>0&&O.jsx(wr,{label:`Integrations (${fe.length})`,children:O.jsx("div",{style:Se.itemList,children:de.map(ie=>{const Ne=fe.includes(ie.id),lt=ie.configured;return O.jsx(f2,{name:ie.name,active:Ne,sub:lt?"connected":"needs setup",subColor:lt?"var(--green)":"var(--amber)",disabled:!lt,onClick:()=>lt&&so(ie.id)},ie.id)})})}),I.length>0&&O.jsx(wr,{label:`Skills (${ne.length})`,children:O.jsx("div",{style:Se.itemList,children:I.map(ie=>{const Ne=ne.includes(ie.id);return O.jsx(f2,{name:ie.name,active:Ne,sub:ie.author||"local",onClick:()=>Jc(ie.id)},ie.id)})})}),O.jsxs(wr,{label:"Schedule",children:[O.jsxs("button",{type:"button",onClick:()=>Gi(!Jt),style:{...Se.toggleBtn,borderColor:Jt?"var(--accent)":"var(--border)"},children:[O.jsx("span",{style:{...Se.checkbox,background:Jt?"var(--accent)":"transparent",borderColor:Jt?"var(--accent)":"var(--border)"},children:Jt?"✓":""}),O.jsx("span",{style:{fontSize:11,color:"var(--text-primary)"},children:"Recurring schedule"})]}),Jt&&O.jsxs("div",{style:{marginTop:8,display:"flex",flexDirection:"column",gap:6},children:[O.jsx("input",{style:Se.input,placeholder:`${i||"agent"}-daily`,value:jr,onChange:ie=>fs(ie.target.value)}),O.jsx("div",{style:Se.chipRow,children:P8.map(ie=>O.jsx(Ov,{label:ie.label,active:an===ie.value,onClick:()=>mr(ie.value)},ie.value))})]})]}),O.jsx(wr,{label:"Anthropic API Key",children:je?O.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[O.jsx("span",{style:{fontSize:11,color:"var(--green)"},children:"Connected — fast plan chat enabled"}),O.jsx("button",{type:"button",onClick:async()=>{await fetch("/api/credentials/anthropic-api",{method:"DELETE"}),$e(!1)},style:{...Se.cancelBtn,fontSize:9},children:"remove"})]}):Te?O.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[O.jsx("div",{style:{fontSize:10,color:"var(--text-dim)",lineHeight:1.5},children:"Enables instant plan chat responses. Get a key from console.anthropic.com"}),O.jsxs("div",{style:{display:"flex",gap:4},children:[O.jsx("input",{type:"text",autoComplete:"off","data-lpignore":"true","data-1p-ignore":!0,style:{...Se.input,flex:1,WebkitTextSecurity:"disc"},placeholder:"sk-ant-...",value:Be,onChange:ie=>at(ie.target.value),onKeyDown:ie=>ie.key==="Enter"&&Be&&(async()=>{Dt(!0),await fetch("/api/credentials/anthropic-api",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:Be})}),$e(!0),me(!1),at(""),Dt(!1)})()}),O.jsx("button",{type:"button",disabled:!Be||He,onClick:async()=>{Dt(!0),await fetch("/api/credentials/anthropic-api",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:Be})}),$e(!0),me(!1),at(""),Dt(!1)},style:{...Se.saveKeyBtn,opacity:Be?1:.4},children:He?"...":"Save"})]}),O.jsx("button",{type:"button",onClick:()=>me(!1),style:Se.cancelBtn,children:"cancel"})]}):O.jsx("button",{type:"button",onClick:()=>me(!0),style:{...Se.chip,width:"100%",textAlign:"center",padding:"6px",color:"var(--accent)",borderColor:"var(--accent)"},children:"Add API key for instant responses"})}),O.jsx("button",{type:"button",onClick:()=>H(!V),style:Se.advToggle,children:V?"- hide advanced":"+ advanced"}),V&&O.jsxs(O.Fragment,{children:[O.jsx(wr,{label:"Provider",children:Q.map(ie=>{const Ne=vl(ie),lt=eh(ie),ui=m===ie.id,ln=E===ie.id;return O.jsxs("div",{style:{marginBottom:3},children:[O.jsxs("button",{type:"button",onClick:()=>oo(ie),style:{...Se.providerBtn,borderColor:ui?"var(--accent)":"var(--border)",opacity:Ne||ln?1:.5},children:[O.jsx("span",{style:{fontSize:11,fontWeight:600,color:ui?"var(--text-bright)":"var(--text-primary)"},children:ie.name}),O.jsx("span",{style:{fontSize:10,color:Ne?"var(--green)":"var(--text-dim)",marginLeft:"auto"},children:Ne?ui?"active":"ready":lt})]}),ln&&O.jsxs("div",{style:Se.connectBox,children:[!ie.installed&&O.jsx("div",{children:O.jsx("code",{style:Se.code,children:ie.installCommand})}),ie.installed&&ie.authType==="api-key"&&!ie.hasKey&&O.jsxs("div",{style:{display:"flex",gap:4},children:[O.jsx("input",{type:"password",style:{...Se.input,flex:1},placeholder:`${ie.envKey||"API key"}...`,value:$,onChange:$n=>Z($n.target.value),onKeyDown:$n=>$n.key==="Enter"&&Lr()}),O.jsx("button",{type:"button",onClick:Lr,style:Se.saveKeyBtn,children:z?"...":"Save"})]}),O.jsx("button",{type:"button",onClick:()=>W(null),style:Se.cancelBtn,children:"cancel"})]})]},ie.id)})}),O.jsx(wr,{label:"Model",children:(()=>{var Ne;const ie=((Ne=Q.find(lt=>lt.id===m))==null?void 0:Ne.models)||[];return ie.length?O.jsxs("select",{style:Se.input,value:S,onChange:lt=>_(lt.target.value),children:[O.jsx("option",{value:"auto",children:"Auto (recommended)"}),ie.map(lt=>O.jsxs("option",{value:lt.id,children:[lt.name," (",lt.tier,")"]},lt.id))]}):O.jsx("div",{style:Se.hint,children:"Select a provider first"})})()}),O.jsxs(wr,{label:"File Scope",children:[O.jsx("input",{style:Se.input,placeholder:"e.g. src/api/**, src/lib/**",value:i==="custom"?a:Br,onChange:ie=>{i==="custom"&&c(ie.target.value)},readOnly:i!=="custom"}),O.jsx("div",{style:Se.hint,children:i==="custom"?"Comma-separated glob patterns":"Auto-set by role"})]})]})]})}),O.jsx("div",{style:Se.right,children:hi?O.jsxs("div",{style:Se.chatPanel,children:[O.jsxs("div",{style:Se.chatHeader,children:[O.jsx("span",{style:Se.chatTitle,children:"Plan with AI"}),O.jsxs("div",{style:{display:"flex",gap:8},children:[Pi.length>0&&!Cn&&O.jsx("button",{type:"button",onClick:ps,style:Se.usePlanBtn,children:"Generate Prompt"}),O.jsx("button",{type:"button",onClick:()=>Or(!1),style:Se.closePlanBtn,children:"Back to Prompt"})]})]}),O.jsxs("div",{style:Se.chatMessages,children:[Pi.length===0&&O.jsxs("div",{style:Se.chatEmpty,children:[O.jsx("div",{style:{fontSize:14,marginBottom:8},children:"Discuss your idea before spawning"}),O.jsxs("div",{style:{fontSize:12,color:"var(--text-dim)",lineHeight:1.6},children:["Describe what you want this agent to accomplish. AI will help you refine the plan, identify edge cases, and craft a solid prompt.",i&&O.jsxs(O.Fragment,{children:[O.jsx("br",{}),"Role: ",O.jsx("strong",{children:i==="custom"?r:i})]})]})]}),Pi.map((ie,Ne)=>O.jsxs("div",{style:{...Se.chatBubble,...ie.from==="user"?Se.chatUser:Se.chatAI},children:[O.jsx("div",{style:Se.chatFrom,children:ie.from==="user"?"You":"AI"}),O.jsx("div",{style:Se.chatText,children:ie.from==="ai"?O.jsx(N1,{text:ie.text}):ie.text})]},Ne)),Cn&&(je?O.jsx("div",{style:{alignSelf:"flex-start",padding:"10px 16px",borderRadius:10,background:"var(--bg-surface)",border:"1px solid var(--border)",borderBottomLeftRadius:2,fontSize:11,color:"var(--text-dim)"},children:"Responding..."}):O.jsx(R8,{})),O.jsx("div",{ref:Si})]}),O.jsxs("div",{style:Se.chatInputBar,children:[O.jsx("input",{style:Se.chatInput,placeholder:"Describe your idea, ask questions, refine the plan...",value:kn,onChange:ie=>Ol(ie.target.value),onKeyDown:ie=>{ie.key==="Enter"&&!ie.shiftKey&&(ie.preventDefault(),ao())},autoFocus:!0}),O.jsx("button",{type:"button",onClick:ao,disabled:Cn||!kn.trim(),style:{...Se.sendBtn,opacity:Cn||!kn.trim()?.3:1},children:"Send"})]})]}):O.jsxs("div",{style:Se.promptPanel,children:[O.jsxs("div",{style:Se.promptHeader,children:[O.jsx("span",{style:Se.promptLabel,children:Qn?"WHAT TO PLAN":"TASK PROMPT"}),O.jsx("button",{type:"button",onClick:()=>Or(!0),style:Se.planBtn,children:"Plan with AI"})]}),O.jsx("textarea",{style:Se.promptArea,placeholder:Qn?`What should this agent research or plan?
92
-
93
- Be specific about scope, constraints, and expected output...`:`Describe the task in detail.
94
-
95
- The more context you provide here, the fewer iterations the agent will need. Include:
96
- - What to build or change
97
- - Key requirements and constraints
98
- - Expected behavior or output
99
- - Any files or areas to focus on`,value:h,onChange:ie=>d(ie.target.value)})]})})]})]})})}const u2=["Analyzing request","Evaluating approach","Considering scope","Identifying constraints","Crafting plan"];function R8(){const[t,e]=X.useState(0),[i,n]=X.useState(1);return X.useEffect(()=>{const r=setInterval(()=>e(a=>(a+1)%u2.length),3e3),s=setInterval(()=>n(a=>a%3+1),500);return()=>{clearInterval(r),clearInterval(s)}},[]),O.jsxs("div",{style:{alignSelf:"flex-start",padding:"14px 20px",borderRadius:10,background:"var(--bg-surface)",border:"1px solid var(--border)",borderBottomLeftRadius:2,maxWidth:"80%"},children:[O.jsx("div",{style:{fontSize:9,fontWeight:700,textTransform:"uppercase",letterSpacing:1.2,color:"var(--accent)",marginBottom:10},children:"Planning"}),O.jsx("div",{style:{display:"flex",flexDirection:"column",gap:6},children:u2.map((r,s)=>{const a=s===t,c=s<t;return O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontSize:11,color:a?"var(--text-bright)":c?"var(--text-dim)":"var(--text-muted)",transition:"color 0.3s"},children:[O.jsx("span",{style:{width:6,height:6,borderRadius:"50%",flexShrink:0,background:a?"var(--accent)":c?"var(--text-dim)":"var(--border)",transition:"background 0.3s",...a?{boxShadow:"0 0 6px var(--accent)"}:{}}}),r,a?".".repeat(i):""]},s)})})]})}function wr({label:t,children:e}){return O.jsxs("div",{style:{marginBottom:14},children:[O.jsx("div",{style:Se.sectionLabel,children:t}),e]})}function d2({preset:t,active:e,onClick:i}){return O.jsx("button",{type:"button",onClick:i,title:t.desc,style:{...Se.roleBtn,...e?Se.roleBtnActive:{}},children:t.label})}function Ov({label:t,active:e,onClick:i}){return O.jsx("button",{type:"button",onClick:i,style:{...Se.chip,...e?{borderColor:"var(--accent)",color:"var(--text-bright)"}:{}},children:t})}function f2({name:t,active:e,sub:i,subColor:n,disabled:r,onClick:s}){return O.jsxs("button",{type:"button",onClick:s,style:{...Se.itemBtn,borderColor:e?"var(--accent)":"var(--border)",background:e?"rgba(51, 175, 188, 0.08)":"var(--bg-surface)",opacity:r?.5:1,cursor:r?"not-allowed":"pointer"},children:[O.jsx("span",{style:{...Se.itemIcon,background:e?"var(--accent)":"var(--bg-active)",color:e?"var(--bg-base)":"var(--text-dim)"},children:t.charAt(0)}),O.jsxs("div",{style:{flex:1,minWidth:0},children:[O.jsx("div",{style:{fontSize:11,fontWeight:600,color:e?"var(--text-bright)":"var(--text-primary)"},children:t}),i&&O.jsx("div",{style:{fontSize:9,color:n||"var(--text-dim)"},children:i})]}),e&&O.jsx("span",{style:{fontSize:10,color:"var(--accent)"},children:"✓"})]})}const Se={overlay:{position:"fixed",inset:0,zIndex:900,background:"rgba(0, 0, 0, 0.7)",display:"flex",alignItems:"center",justifyContent:"center",backdropFilter:"blur(4px)"},container:{width:"92vw",height:"88vh",maxWidth:1200,background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:10,display:"flex",flexDirection:"column",overflow:"hidden"},header:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 20px",borderBottom:"1px solid var(--border)",background:"var(--bg-chrome)",flexShrink:0},headerTitle:{fontSize:15,fontWeight:700,color:"var(--text-bright)",letterSpacing:.3},headerRight:{display:"flex",alignItems:"center",gap:12},headerError:{fontSize:11,color:"var(--red)",maxWidth:300,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},spawnBtn:{padding:"8px 24px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:6,fontSize:13,fontWeight:700,cursor:"pointer",fontFamily:"var(--font)",letterSpacing:.3},closeBtn:{background:"none",border:"none",color:"var(--text-muted)",fontSize:22,cursor:"pointer",padding:"0 4px",fontFamily:"var(--font)"},body:{flex:1,display:"flex",overflow:"hidden",minHeight:0},left:{width:340,flexShrink:0,borderRight:"1px solid var(--border)",background:"var(--bg-chrome)",display:"flex",flexDirection:"column"},leftScroll:{flex:1,overflowY:"auto",padding:"16px 18px"},right:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden",minHeight:0},promptPanel:{flex:1,display:"flex",flexDirection:"column",padding:20},promptHeader:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:12},promptLabel:{fontSize:11,fontWeight:700,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.5},planBtn:{padding:"6px 16px",background:"transparent",border:"1px solid var(--accent)",borderRadius:4,color:"var(--accent)",fontSize:12,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},promptArea:{flex:1,width:"100%",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6,padding:"14px 16px",color:"var(--text-primary)",fontSize:13,lineHeight:1.7,outline:"none",fontFamily:"var(--font)",resize:"none"},chatPanel:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden",minHeight:0},chatHeader:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 20px",borderBottom:"1px solid var(--border)",background:"var(--bg-chrome)",flexShrink:0},chatTitle:{fontSize:12,fontWeight:700,color:"var(--accent)",textTransform:"uppercase",letterSpacing:1},usePlanBtn:{padding:"4px 12px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:4,fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},closePlanBtn:{padding:"4px 12px",background:"transparent",color:"var(--text-muted)",border:"1px solid var(--border)",borderRadius:4,fontSize:11,cursor:"pointer",fontFamily:"var(--font)"},chatMessages:{flex:1,overflowY:"auto",padding:"20px 24px",display:"flex",flexDirection:"column",gap:16},chatEmpty:{textAlign:"center",padding:"60px 40px",color:"var(--text-muted)",fontFamily:"var(--font)"},chatBubble:{maxWidth:"80%",padding:"10px 16px",borderRadius:10,fontSize:13,lineHeight:1.6},chatUser:{alignSelf:"flex-end",background:"var(--accent)",color:"var(--bg-base)",borderBottomRightRadius:2},chatAI:{alignSelf:"flex-start",background:"var(--bg-surface)",border:"1px solid var(--border)",color:"var(--text-primary)",borderBottomLeftRadius:2},chatFrom:{fontSize:9,fontWeight:700,textTransform:"uppercase",letterSpacing:.8,marginBottom:4,opacity:.6},chatText:{whiteSpace:"pre-wrap",wordBreak:"break-word"},chatInputBar:{display:"flex",gap:8,padding:"12px 20px",borderTop:"1px solid var(--border)",background:"var(--bg-chrome)",flexShrink:0},chatInput:{flex:1,background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6,padding:"10px 14px",color:"var(--text-primary)",fontSize:13,outline:"none",fontFamily:"var(--font)"},sendBtn:{padding:"10px 20px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:6,fontSize:13,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},sectionLabel:{fontSize:10,fontWeight:700,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.2,marginBottom:6},sectionSub:{fontSize:9,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:1,marginBottom:4},roleGrid:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:4},roleBtn:{background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:4,padding:"6px 4px",color:"var(--text-primary)",fontSize:11,cursor:"pointer",fontFamily:"var(--font)",transition:"all 0.1s"},roleBtnActive:{borderColor:"var(--accent)",color:"var(--text-bright)",background:"rgba(51, 175, 188, 0.08)"},chipRow:{display:"flex",flexWrap:"wrap",gap:4},chip:{background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:3,padding:"3px 8px",color:"var(--text-dim)",fontSize:10,cursor:"pointer",fontFamily:"var(--font)"},browseBtn:{background:"var(--bg-surface)",border:"1px solid var(--accent)",borderRadius:3,padding:"3px 10px",color:"var(--accent)",fontSize:10,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},permBtn:{flex:1,display:"flex",alignItems:"center",gap:8,padding:"8px 10px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:4,cursor:"pointer",textAlign:"left",fontFamily:"var(--font)"},permBtnActive:{borderColor:"var(--accent)"},permIcon:{fontSize:14,fontWeight:700,color:"var(--accent)",width:18,textAlign:"center",flexShrink:0},itemList:{display:"flex",flexDirection:"column",gap:3},itemBtn:{display:"flex",alignItems:"center",gap:8,padding:"5px 8px",width:"100%",border:"1px solid var(--border)",borderRadius:3,cursor:"pointer",textAlign:"left",fontFamily:"var(--font)",transition:"border-color 0.1s"},itemIcon:{width:20,height:20,borderRadius:4,display:"flex",alignItems:"center",justifyContent:"center",fontSize:9,fontWeight:700,flexShrink:0},toggleBtn:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"6px 8px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:3,cursor:"pointer",fontFamily:"var(--font)"},checkbox:{width:14,height:14,borderRadius:3,flexShrink:0,border:"2px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--bg-base)",fontSize:9,fontWeight:700},advToggle:{background:"none",border:"none",color:"var(--text-dim)",fontSize:10,cursor:"pointer",fontFamily:"var(--font)",padding:"6px 0",marginBottom:4},providerBtn:{width:"100%",display:"flex",alignItems:"center",gap:8,padding:"6px 10px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:3,cursor:"pointer",fontFamily:"var(--font)"},connectBox:{padding:"6px 10px",margin:"2px 0 4px",background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:3},code:{display:"block",padding:"4px 8px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,fontSize:11,color:"var(--accent)",wordBreak:"break-all"},saveKeyBtn:{padding:"6px 12px",background:"transparent",border:"1px solid var(--accent)",borderRadius:3,color:"var(--accent)",fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},cancelBtn:{background:"none",border:"none",color:"var(--text-dim)",fontSize:10,cursor:"pointer",fontFamily:"var(--font)",padding:"4px 0",marginTop:4},input:{width:"100%",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:3,padding:"6px 8px",color:"var(--text-primary)",fontSize:12,outline:"none",fontFamily:"var(--font)"},hint:{fontSize:10,color:"var(--text-dim)",marginTop:3}};function A8(){var a;const[t,e]=X.useState(null),[i,n]=X.useState(!0);X.useEffect(()=>{r();const c=setInterval(r,1e4);return()=>clearInterval(c)},[]);async function r(){try{const c=await fetch("/api/journalist");e(await c.json())}catch{}n(!1)}async function s(){n(!0);try{await fetch("/api/journalist/cycle",{method:"POST"}),await r()}catch{}n(!1)}return O.jsxs("div",{style:{paddingTop:4},children:[O.jsxs("div",{style:Ii.header,children:[O.jsx("span",{style:Ii.title,children:"THE JOURNALIST"}),O.jsx("button",{onClick:s,disabled:i,style:Ii.btn,children:i?"synthesizing...":"Run Cycle"})]}),O.jsxs("div",{style:Ii.statusRow,children:[O.jsxs("span",{children:["Status: ",t!=null&&t.running?"active":"stopped"]}),O.jsxs("span",{children:["Cycles: ",(t==null?void 0:t.cycleCount)||0]}),(t==null?void 0:t.lastCycleAt)&&O.jsxs("span",{children:["Last: ",new Date(t.lastCycleAt).toLocaleTimeString()]})]}),t!=null&&t.lastSynthesis?O.jsxs("div",{children:[O.jsx("div",{style:Ii.sectionLabel,children:"SUMMARY"}),O.jsx("div",{style:Ii.textBox,children:t.lastSynthesis.summary}),t.lastSynthesis.projectMap&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Ii.sectionLabel,children:"PROJECT MAP"}),O.jsx("pre",{style:Ii.codeBox,children:t.lastSynthesis.projectMap})]}),t.lastSynthesis.decisions&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Ii.sectionLabel,children:"DECISIONS"}),O.jsx("pre",{style:Ii.codeBox,children:t.lastSynthesis.decisions})]})]}):O.jsx("div",{style:Ii.empty,children:"No synthesis yet. The Journalist runs every 2 minutes when agents are active."}),((a=t==null?void 0:t.history)==null?void 0:a.length)>0&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Ii.sectionLabel,children:"HISTORY"}),O.jsx("div",{style:Ii.historyList,children:t.history.slice().reverse().map((c,h)=>{var d;return O.jsxs("div",{style:Ii.historyEntry,children:[O.jsx("span",{style:Ii.historyTime,children:new Date(c.timestamp).toLocaleTimeString()}),O.jsxs("span",{style:Ii.historyText,children:["Cycle ",c.cycle,": ",c.agentCount," agent",c.agentCount!==1?"s":""," — ",(d=c.summary)==null?void 0:d.slice(0,80)]})]},h)})})]})]})}const Ii={header:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:10},title:{fontSize:11,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.5},btn:{padding:"3px 10px",background:"transparent",border:"1px solid var(--purple)",borderRadius:2,color:"var(--purple)",fontSize:11,cursor:"pointer",fontFamily:"var(--font)"},statusRow:{display:"flex",gap:12,fontSize:11,color:"var(--text-dim)",marginBottom:12,padding:"6px 0",borderBottom:"1px solid var(--border)",flexWrap:"wrap"},sectionLabel:{fontSize:11,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.5,marginBottom:4,marginTop:12,fontWeight:600},textBox:{background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:2,padding:8,fontSize:12,color:"var(--text-primary)",lineHeight:1.5},codeBox:{background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:2,padding:8,fontSize:11,color:"var(--text-dim)",lineHeight:1.5,whiteSpace:"pre-wrap",maxHeight:200,overflowY:"auto",margin:0},empty:{color:"var(--text-dim)",fontSize:12,padding:16,textAlign:"center"},historyList:{maxHeight:160,overflowY:"auto",background:"var(--bg-base)",borderRadius:2,border:"1px solid var(--border)"},historyEntry:{padding:"4px 8px",borderBottom:"1px solid var(--bg-surface)",fontSize:10,display:"flex",gap:6},historyTime:{color:"var(--text-dim)",whiteSpace:"nowrap"},historyText:{color:"var(--text-primary)"}};function M8(){const[t,e]=X.useState([]),[i,n]=X.useState(null),[r,s]=X.useState(!1),[a,c]=X.useState(""),h=Ce(v=>v.showStatus);X.useEffect(()=>{d();const v=setInterval(d,5e3);return()=>clearInterval(v)},[]);async function d(){try{const S=await(await fetch("/api/teams")).json();e(S.teams),n(S.activeTeam)}catch{}}async function f(v){try{await fetch(`/api/teams/${encodeURIComponent(v)}/load`,{method:"POST"}),h(`loaded team "${v}"`),d()}catch{h("failed to load team")}}async function g(){if(a.trim())try{await fetch("/api/teams",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:a.trim()})}),h(`saved team "${a}"`),c(""),s(!1),d()}catch{h("failed to save team")}}async function m(v){await fetch(`/api/teams/${encodeURIComponent(v)}`,{method:"DELETE"}),h(`deleted "${v}"`),d()}return O.jsxs("div",{style:On.container,children:[O.jsx("div",{style:On.title,children:"SAVED TEAMS"}),t.length===0?O.jsx("div",{style:On.empty,children:"No saved teams"}):t.map(v=>O.jsxs("div",{style:{...On.item,background:v.name===i?"var(--bg-hover)":"transparent"},children:[O.jsxs("div",{style:{flex:1},children:[O.jsxs("div",{style:On.teamName,children:[">"," ",v.name]}),O.jsxs("div",{style:On.teamMeta,children:[v.agents," agents"]})]}),O.jsxs("div",{style:{display:"flex",gap:8},children:[O.jsx("button",{onClick:()=>f(v.name),style:On.loadBtn,children:"Load"}),O.jsx("button",{onClick:()=>m(v.name),style:On.deleteBtn,children:"x"})]})]},v.name)),O.jsx("div",{style:On.divider}),r?O.jsxs("div",{style:On.saveRow,children:[O.jsx("input",{style:On.saveInput,placeholder:"Team name...",value:a,onChange:v=>c(v.target.value),onKeyDown:v=>v.key==="Enter"&&g(),autoFocus:!0}),O.jsx("button",{onClick:g,style:On.saveBtn,children:"Save"}),O.jsx("button",{onClick:()=>s(!1),style:On.cancelBtn,children:"x"})]}):O.jsx("button",{onClick:()=>s(!0),style:On.saveTeamBtn,children:"Save Current as Team"})]})}const On={container:{padding:24,maxWidth:600,margin:"0 auto"},title:{fontSize:11,fontWeight:600,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.5,marginBottom:16},item:{padding:"10px 12px",display:"flex",justifyContent:"space-between",alignItems:"center",borderBottom:"1px solid var(--border)"},teamName:{fontSize:12,color:"var(--text-bright)",fontWeight:600},teamMeta:{fontSize:11,color:"var(--text-dim)",marginTop:2},loadBtn:{background:"transparent",border:"none",color:"var(--accent)",fontSize:11,cursor:"pointer",fontFamily:"var(--font)",fontWeight:600},deleteBtn:{background:"none",border:"none",color:"var(--text-dim)",fontSize:12,cursor:"pointer",fontFamily:"var(--font)"},empty:{padding:20,color:"var(--text-dim)",fontSize:12,textAlign:"center"},divider:{borderTop:"1px solid var(--border)",margin:"12px 0"},saveTeamBtn:{background:"transparent",border:"1px solid var(--accent)",borderRadius:2,padding:"6px 14px",color:"var(--accent)",fontSize:12,cursor:"pointer",fontFamily:"var(--font)",fontWeight:600},saveRow:{display:"flex",gap:6,alignItems:"center"},saveInput:{flex:1,background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:2,padding:"6px 8px",color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none"},saveBtn:{padding:"6px 12px",background:"transparent",border:"1px solid var(--accent)",borderRadius:2,color:"var(--accent)",fontSize:12,cursor:"pointer",fontFamily:"var(--font)"},cancelBtn:{background:"none",border:"none",color:"var(--text-dim)",fontSize:12,cursor:"pointer",fontFamily:"var(--font)"}},Na="#4ae168",Z1="#33afbc",W1="#e5c07b",q1="#e06c75",z8="#c678dd",j8="#61afef",hc=[Z1,W1,Na,z8,q1,j8,"#d19a66"],D8={medium:.009};function B8(){const[t,e]=X.useState(null),i=Ce(v=>v.agents),n=Ce(v=>v.dashTelemetry);X.useEffect(()=>{r();const v=setInterval(r,4e3);return()=>clearInterval(v)},[]);async function r(){try{const S=await(await fetch("/api/dashboard")).json();e(S),Ce.setState(_=>{const w={..._.dashTelemetry},x=Date.now();for(const Q of S.agents.breakdown){w[Q.id]||(w[Q.id]=[]);const C=w[Q.id],T=C[C.length-1];(!T||Q.tokens!==T.v||x-T.t>1e4)&&(C.push({t:x,v:Q.tokens||0,name:Q.name}),C.length>200&&(w[Q.id]=C.slice(-200)))}return{dashTelemetry:w}})}catch{}}if(!t)return O.jsxs("div",{style:Ot.loadingRoot,children:[O.jsx("div",{style:Ot.loadingText,children:"COMMAND CENTER"}),O.jsx("div",{style:Ot.loadingBar,children:O.jsx("div",{style:Ot.loadingFill})})]});const{tokens:s,routing:a,rotation:c,adaptive:h,journalist:d,uptime:f}=t,g=t.agents.breakdown,m=s.savings.total/1e3*D8.medium;return O.jsxs("div",{style:Ot.root,children:[O.jsxs("div",{style:Ot.statBar,children:[O.jsx(Fh,{label:"Total Tokens",value:Vo(s.totalTokens),sub:`${t.agents.total} agent${t.agents.total!==1?"s":""}`}),O.jsx(Fh,{label:"Tokens Saved",value:Vo(s.savings.total),sub:`${s.savings.percentage||0}% efficiency`,color:Na}),O.jsx(Fh,{label:"Est. Savings",value:m>0?`$${m.toFixed(2)}`:"$0.00",sub:"based on token costs",color:Na}),O.jsx(Fh,{label:"Rotations",value:c.totalRotations,sub:`${Vo(c.totalTokensSaved)} tok recovered`}),O.jsx(Fh,{label:"Uptime",value:N8(f),sub:`${t.agents.running} running`})]}),O.jsxs("div",{style:Ot.midRow,children:[O.jsxs("div",{style:Ot.chartPanel,children:[O.jsxs("div",{style:Ot.panelHead,children:[O.jsx("span",{children:"Token Usage"}),O.jsx("span",{style:Ot.panelHeadRight,children:g.filter(v=>v.tokens>0).map((v,S)=>O.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:4,marginLeft:12},children:[O.jsx("span",{style:{width:6,height:2,background:hc[S%hc.length],display:"inline-block",borderRadius:1}}),O.jsx("span",{style:{fontSize:9},children:v.name})]},v.id))})]}),O.jsx(X8,{tokenTimeline:n,agents:i})]}),O.jsxs("div",{style:Ot.donutPanel,children:[O.jsx("div",{style:Ot.panelHead,children:"Model Routing"}),O.jsx(L8,{routing:a})]})]}),O.jsxs("div",{style:Ot.bottomRow,children:[O.jsxs("div",{style:Ot.panel,children:[O.jsx("div",{style:Ot.panelHead,children:"Savings Breakdown"}),O.jsxs("div",{style:Ot.scrollInner,children:[O.jsx(cp,{label:"Rotation",value:s.savings.fromRotation,max:s.savings.total||1,color:Z1}),O.jsx(cp,{label:"Conflict Prevention",value:s.savings.fromConflictPrevention,max:s.savings.total||1,color:W1}),O.jsx(cp,{label:"Cold-Start Skip",value:s.savings.fromColdStartSkip,max:s.savings.total||1,color:Na}),O.jsx("div",{style:Ot.divider}),O.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#8b929e",padding:"4px 0"},children:[O.jsx("span",{children:"Without Groove"}),O.jsx("span",{style:{color:q1,fontWeight:600},children:Vo(s.savings.estimatedWithoutGroove)})]}),O.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#8b929e",padding:"4px 0"},children:[O.jsx("span",{children:"With Groove"}),O.jsx("span",{style:{color:Na,fontWeight:600},children:Vo(s.totalTokens)})]}),O.jsx("div",{style:{fontSize:8,color:"#5c6370",marginTop:4,lineHeight:1.4},children:"Calculated from: rotation recovery (30% of degraded context), cold-start prevention (2K tokens/skip), conflict avoidance (500 tokens/conflict)."}),d.lastSummary&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Ot.divider}),O.jsx("div",{style:Ot.panelHead,children:"Journalist"}),O.jsx("div",{style:Ot.journSummary,children:d.lastSummary})]})]})]}),O.jsxs("div",{style:Ot.panel,children:[O.jsx("div",{style:Ot.panelHead,children:"Agent Fleet"}),O.jsxs("div",{style:Ot.scrollInner,children:[g.length===0?O.jsx("div",{style:Ot.empty,children:"No agents spawned"}):g.map((v,S)=>O.jsx(cp,{label:v.name,value:v.tokens,max:Math.max(...g.map(_=>_.tokens),1),color:hc[S%hc.length],sub:`${v.role} · ${v.model||"auto"}`},v.id)),c.history.length>0&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Ot.divider}),O.jsx("div",{style:Ot.panelHead,children:"Rotation History"}),c.history.slice().reverse().slice(0,8).map((v,S)=>O.jsxs("div",{style:Ot.rotEntry,children:[O.jsx("span",{style:Ot.rotName,children:v.agentName}),O.jsxs("span",{style:{color:Na,fontSize:9},children:[Vo(v.oldTokens)," saved"]}),O.jsx("span",{style:Ot.rotTime,children:Z8(v.timestamp)})]},S))]})]})]})]})]})}function Fh({label:t,value:e,sub:i,color:n}){return O.jsxs("div",{style:Ot.statCard,children:[O.jsx("div",{style:{fontSize:10,color:"#8b929e",textTransform:"uppercase",letterSpacing:1,marginBottom:6},children:t}),O.jsx("div",{style:{fontSize:20,fontWeight:700,color:n||"#e6e6e6",lineHeight:1},children:e}),i&&O.jsx("div",{style:{fontSize:9,color:"#6b7280",marginTop:4},children:i})]})}function cp({label:t,value:e,max:i,color:n,sub:r}){const s=i>0?e/i*100:0;return O.jsxs("div",{style:{padding:"6px 0"},children:[O.jsxs("div",{style:{display:"flex",justifyContent:"space-between",marginBottom:4},children:[O.jsx("span",{style:{fontSize:11,color:"#abb2bf"},children:t}),O.jsx("span",{style:{fontSize:11,color:"#e6e6e6",fontWeight:600},children:Vo(e)})]}),O.jsx("div",{style:{height:4,background:"#1e222a",borderRadius:2},children:O.jsx("div",{style:{width:`${Math.max(s,e>0?1:0)}%`,height:"100%",background:n,borderRadius:2,transition:"width 0.3s"}})}),r&&O.jsx("div",{style:{fontSize:8,color:"#3e4451",marginTop:2},children:r})]})}function L8({routing:t}){const e=[{label:"Heavy",color:q1,count:t.byTier.heavy,cost:"$0.045/1k"},{label:"Medium",color:W1,count:t.byTier.medium,cost:"$0.009/1k"},{label:"Light",color:Na,count:t.byTier.light,cost:"$0.002/1k"}],i=e.reduce((h,d)=>h+d.count,0)||1,n=50,r=60,s=60,a=2*Math.PI*n;let c=0;return O.jsxs("div",{style:{display:"flex",flexDirection:"column",flex:1,alignItems:"center",justifyContent:"center",gap:12,minHeight:0},children:[O.jsxs("svg",{width:"120",height:"120",viewBox:"0 0 120 120",children:[O.jsx("circle",{cx:r,cy:s,r:n,fill:"none",stroke:"#1e222a",strokeWidth:"10"}),e.map(h=>{if(h.count===0)return null;const f=h.count/i*a,g=O.jsx("circle",{cx:r,cy:s,r:n,fill:"none",stroke:h.color,strokeWidth:"10",strokeDasharray:`${f} ${a-f}`,strokeDashoffset:-c,strokeLinecap:"butt",transform:`rotate(-90 ${r} ${s})`,style:{transition:"stroke-dasharray 0.5s"}},h.label);return c+=f,g}),O.jsx("text",{x:r,y:s-4,textAnchor:"middle",fill:"#e6e6e6",fontSize:"16",fontWeight:"700",fontFamily:"JetBrains Mono, monospace",children:i>1?i:t.totalDecisions}),O.jsx("text",{x:r,y:s+10,textAnchor:"middle",fill:"#5c6370",fontSize:"8",fontFamily:"JetBrains Mono, monospace",children:"decisions"})]}),O.jsx("div",{style:{display:"flex",flexDirection:"column",gap:6,width:"100%",padding:"0 8px"},children:e.map(h=>O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontSize:10},children:[O.jsx("span",{style:{width:8,height:8,borderRadius:2,background:h.color,flexShrink:0}}),O.jsx("span",{style:{color:"#abb2bf",flex:1},children:h.label}),O.jsx("span",{style:{color:"#5c6370",fontSize:9},children:h.cost}),O.jsx("span",{style:{color:"#e6e6e6",fontWeight:600,minWidth:20,textAlign:"right"},children:h.count})]},h.label))}),O.jsxs("div",{style:{fontSize:9,color:"#3e4451"},children:[t.autoRoutedCount," auto-routed"]})]})}function X8({tokenTimeline:t,agents:e}){const i=X.useRef(),n=X.useRef(),r=X.useCallback(()=>{const s=i.current,a=n.current;if(!s||!a)return;const c=window.devicePixelRatio||1,h=s.clientWidth,d=s.clientHeight;if(h===0||d===0)return;a.width=h*c,a.height=d*c,a.style.width=h+"px",a.style.height=d+"px";const f=a.getContext("2d");f.scale(c,c),f.clearRect(0,0,h,d);const g=40,m=10,v=10,S=20,_=h-g-m,w=d-v-S;f.strokeStyle="#1e222a",f.lineWidth=.5;for(let P=0;P<=4;P++){const M=v+P/4*w;f.beginPath(),f.moveTo(g,M),f.lineTo(h-m,M),f.stroke()}const x=Object.keys(t);if(x.length===0){f.fillStyle="#3e4451",f.font="10px monospace",f.textAlign="center",f.fillText("Waiting for agent telemetry...",h/2,d/2);return}let Q=1/0,C=0,T=0;for(const P of x)for(const M of t[P]||[])M.t<Q&&(Q=M.t),M.t>C&&(C=M.t),M.v>T&&(T=M.v);C===Q&&(C=Q+6e4),T===0&&(T=100);const A=C-Q;f.fillStyle="#3e4451",f.font="8px monospace",f.textAlign="right";for(let P=0;P<=4;P++){const M=T*(1-P/4);f.fillText(Vo(Math.round(M)),g-4,v+P/4*w+3)}f.textAlign="center";for(let P=0;P<=4;P++){const M=Q+P/4*A,V=new Date(M);f.fillText(`${V.getHours()}:${String(V.getMinutes()).padStart(2,"0")}`,g+P/4*_,d-4)}x.forEach((P,M)=>{const V=t[P]||[];if(V.length<2)return;const H=hc[M%hc.length],G=V.map(B=>({x:g+(B.t-Q)/A*_,y:v+(1-B.v/T)*w}));f.beginPath(),f.moveTo(G[0].x,v+w);for(const B of G)f.lineTo(B.x,B.y);f.lineTo(G[G.length-1].x,v+w),f.closePath();const N=f.createLinearGradient(0,v,0,v+w);N.addColorStop(0,H+"20"),N.addColorStop(1,H+"03"),f.fillStyle=N,f.fill(),f.beginPath();for(let B=0;B<G.length;B++)B===0?f.moveTo(G[B].x,G[B].y):f.lineTo(G[B].x,G[B].y);f.strokeStyle=H,f.lineWidth=1,f.stroke();const j=G[G.length-1];f.beginPath(),f.arc(j.x,j.y,2,0,Math.PI*2),f.fillStyle=H,f.fill()})},[t,e]);return X.useEffect(()=>{r()},[r]),X.useEffect(()=>{const s=new ResizeObserver(r);return i.current&&s.observe(i.current),()=>s.disconnect()},[r]),O.jsx("div",{ref:i,style:{flex:1,minHeight:0,position:"relative"},children:O.jsx("canvas",{ref:n,style:{display:"block",position:"absolute",top:0,left:0}})})}function Vo(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t||0)}function N8(t){const e=Math.floor(t/3600),i=Math.floor(t%3600/60);return e>0?`${e}h ${i}m`:`${i}m ${Math.floor(t%60)}s`}function Z8(t){const e=Math.floor((Date.now()-new Date(t).getTime())/6e4);return e>=60?`${Math.floor(e/60)}h ago`:e>0?`${e}m ago`:"now"}const Ot={root:{width:"100%",height:"100%",display:"flex",flexDirection:"column",overflow:"hidden",padding:14,gap:12,background:"var(--bg-base)"},loadingRoot:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",gap:12},loadingText:{fontSize:11,fontWeight:700,color:"var(--text-dim)",letterSpacing:3,textTransform:"uppercase"},loadingBar:{width:120,height:2,background:"#282c34",borderRadius:1,overflow:"hidden"},loadingFill:{width:"40%",height:"100%",background:Z1,animation:"pulse 1.5s infinite"},statBar:{display:"flex",flexShrink:0,background:"#282c34",borderRadius:12,overflow:"hidden"},statCard:{flex:1,padding:"14px 16px",borderRight:"1px solid #1e222a",display:"flex",flexDirection:"column"},midRow:{display:"grid",gridTemplateColumns:"2fr 1fr",gap:12,flex:2,minHeight:0},chartPanel:{background:"#282c34",borderRadius:12,padding:"12px 14px",display:"flex",flexDirection:"column",minHeight:0},donutPanel:{background:"#282c34",borderRadius:12,padding:"12px 14px",display:"flex",flexDirection:"column",minHeight:0},bottomRow:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12,flex:3,minHeight:0},panel:{background:"#282c34",borderRadius:12,padding:"12px 14px",display:"flex",flexDirection:"column",minHeight:0,overflow:"hidden"},panelHead:{fontSize:10,fontWeight:600,color:"#5c6370",textTransform:"uppercase",letterSpacing:1,marginBottom:8,flexShrink:0,display:"flex",justifyContent:"space-between",alignItems:"center"},panelHeadRight:{display:"flex",alignItems:"center",color:"#3e4451"},scrollInner:{flex:1,minHeight:0,overflowY:"auto"},empty:{color:"#3e4451",fontSize:10,textAlign:"center",padding:20},divider:{height:1,background:"#1e222a",margin:"8px 0",flexShrink:0},journSummary:{fontSize:10,color:"#8b929e",lineHeight:1.5,padding:"4px 0",whiteSpace:"pre-wrap",maxHeight:80,overflowY:"auto"},rotEntry:{display:"flex",alignItems:"center",gap:8,padding:"4px 0",fontSize:10},rotName:{color:"#abb2bf",flex:1},rotTime:{color:"#3e4451",fontSize:9}};function W8(){const[t,e]=X.useState(null);X.useEffect(()=>{i();const s=setInterval(i,4e3);return()=>clearInterval(s)},[]);async function i(){try{const s=await fetch("/api/pm/history");e(await s.json())}catch{}}const n=(t==null?void 0:t.history)||[],r=(t==null?void 0:t.stats)||{};return O.jsxs("div",{style:mi.container,children:[O.jsxs("div",{style:mi.header,children:[O.jsx("div",{style:mi.title,children:"PM REVIEW LOG"}),O.jsx("div",{style:mi.subtitle,children:"AI Project Manager reviews risky agent operations in Auto mode"})]}),O.jsxs("div",{style:mi.statsBar,children:[O.jsx(hp,{label:"REVIEWS",value:r.totalReviews||0}),O.jsx(hp,{label:"APPROVED",value:r.approved||0,color:"var(--green)"}),O.jsx(hp,{label:"REJECTED",value:r.rejected||0,color:"var(--red)"}),O.jsx(hp,{label:"AVG TIME",value:r.avgDurationMs?`${(r.avgDurationMs/1e3).toFixed(1)}s`:"-"})]}),n.length===0?O.jsxs("div",{style:mi.empty,children:[O.jsx("div",{style:mi.emptyTitle,children:"No reviews yet"}),O.jsx("div",{style:mi.emptyDesc,children:"Spawn agents with Auto permission mode. The AI PM will review risky operations (new files, deletions, config changes) before they happen."})]}):O.jsx("div",{style:mi.list,children:n.slice().reverse().map((s,a)=>O.jsxs("div",{style:mi.entry,children:[O.jsxs("div",{style:mi.entryTop,children:[O.jsx("span",{style:{...mi.verdict,color:s.approved?"var(--green)":"var(--red)",borderColor:s.approved?"rgba(74,225,104,0.3)":"rgba(224,108,117,0.3)",background:s.approved?"rgba(74,225,104,0.08)":"rgba(224,108,117,0.08)"},children:s.approved?"APPROVED":"REJECTED"}),O.jsx("span",{style:mi.entryAgent,children:s.agent}),O.jsx("span",{style:mi.entryAction,children:s.action}),O.jsx("span",{style:mi.entryTime,children:q8(s.timestamp)})]}),O.jsx("div",{style:mi.entryFile,children:s.file}),s.description&&O.jsx("div",{style:mi.entryDesc,children:s.description}),O.jsx("div",{style:mi.entryReason,children:s.reason})]},a))})]})}function hp({label:t,value:e,color:i}){return O.jsxs("div",{style:mi.stat,children:[O.jsx("div",{style:{fontSize:16,fontWeight:700,color:i||"var(--text-bright)"},children:e}),O.jsx("div",{style:{fontSize:7,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1},children:t})]})}function q8(t){const e=Math.floor((Date.now()-new Date(t).getTime())/6e4);return e>=60?`${Math.floor(e/60)}h ago`:e>0?`${e}m ago`:"just now"}const mi={container:{padding:24,maxWidth:700,margin:"0 auto"},header:{marginBottom:16},title:{fontSize:11,fontWeight:700,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1.5},subtitle:{fontSize:10,color:"var(--text-dim)",marginTop:4},statsBar:{display:"flex",gap:8,marginBottom:16},stat:{flex:1,background:"var(--bg-surface)",border:"1px solid var(--border)",padding:"8px 10px",textAlign:"center"},empty:{textAlign:"center",padding:"40px 20px",background:"var(--bg-surface)",border:"1px solid var(--border)"},emptyTitle:{fontSize:12,color:"var(--text-primary)",fontWeight:600,marginBottom:8},emptyDesc:{fontSize:10,color:"var(--text-dim)",lineHeight:1.6,maxWidth:400,margin:"0 auto"},list:{display:"flex",flexDirection:"column",gap:4},entry:{background:"var(--bg-surface)",border:"1px solid var(--border)",padding:"8px 10px"},entryTop:{display:"flex",alignItems:"center",gap:8,marginBottom:4},verdict:{fontSize:8,fontWeight:700,letterSpacing:.5,padding:"1px 5px",border:"1px solid"},entryAgent:{fontSize:11,fontWeight:600,color:"var(--text-bright)"},entryAction:{fontSize:10,color:"var(--text-dim)"},entryTime:{fontSize:9,color:"var(--text-dim)",marginLeft:"auto"},entryFile:{fontSize:10,color:"var(--accent)",fontFamily:"var(--font)"},entryDesc:{fontSize:10,color:"var(--text-primary)",marginTop:2},entryReason:{fontSize:10,color:"var(--text-dim)",marginTop:3,fontStyle:"italic"}},I1={all:"All Skills",design:"Design",quality:"Quality",devtools:"Dev Tools",workflow:"Workflow",security:"Security",specialized:"Specialized"},V1={design:"✨",quality:"✔",devtools:"⚙",workflow:"↻",security:"⛨",specialized:"☆"},I8=[{id:"popular",label:"Popular"},{id:"rating",label:"Top Rated"},{id:"newest",label:"Newest"},{id:"name",label:"A–Z"}];function V8(t){return t.source==="claude-official"?{label:"Anthropic",color:"#d4a574",bg:"rgba(212, 165, 116, 0.12)"}:t.source==="groove-official"?{label:"Groove",color:"var(--accent)",bg:"rgba(51, 175, 188, 0.12)"}:t.verified?{label:"Verified",color:"var(--green)",bg:"rgba(74, 225, 104, 0.10)"}:null}function Y1({skill:t,size:e="small"}){const i=V8(t);if(!i)return null;const n=e==="small";return O.jsxs("span",{title:`${i.label} — Verified publisher`,style:{display:"inline-flex",alignItems:"center",gap:3,fontSize:n?9:10,fontWeight:600,color:i.color,background:i.bg,padding:n?"1px 6px":"2px 8px",borderRadius:3,letterSpacing:.3,flexShrink:0,cursor:"default"},children:[O.jsx("span",{style:{fontSize:n?8:10,lineHeight:1},children:"✓"}),i.label]})}function H1(t){return t?t>=1e3?(t/1e3).toFixed(1).replace(/\.0$/,"")+"k":String(t):"0"}function Ly(t){if(!t)return null;const e=Math.floor(t),i=t-e>=.3,n=[];for(let r=0;r<5;r++)r<e?n.push("★"):n.push("☆");return n.join("")}function p2(t,e){const i=[...t];switch(e){case"popular":return i.sort((n,r)=>(r.downloads||0)-(n.downloads||0));case"rating":return i.sort((n,r)=>(r.rating||0)-(n.rating||0));case"name":return i.sort((n,r)=>n.name.localeCompare(r.name));case"newest":return i.reverse();default:return i}}function Y8({current:t,onRate:e,disabled:i}){const[n,r]=X.useState(0);return O.jsx("div",{style:{display:"flex",gap:2,alignItems:"center"},children:[1,2,3,4,5].map(s=>{const a=n>0?s<=n:s<=(t||0);return O.jsx("span",{onClick:()=>!i&&e(s),onMouseEnter:()=>!i&&r(s),onMouseLeave:()=>r(0),style:{fontSize:18,cursor:i?"default":"pointer",color:a?"var(--amber)":"var(--bg-active)",transition:"color 0.1s, transform 0.1s",transform:n===s?"scale(1.2)":"none",userSelect:"none"},children:"★"},s)})})}function H8({skill:t,content:e,installing:i,onInstall:n,onUninstall:r,onRate:s,onClose:a}){const[c,h]=X.useState(0),[d,f]=X.useState(!1),[g,m]=X.useState(!1);if(!t)return null;async function v(S){m(!0);try{await s(t.id,S),h(S),f(!0)}catch{}m(!1)}return O.jsx("div",{style:Le.overlay,onClick:a,children:O.jsxs("div",{style:Le.container,onClick:S=>S.stopPropagation(),children:[O.jsxs("div",{style:Le.topBar,children:[O.jsx(Y1,{skill:t,size:"large"}),O.jsx("button",{onClick:a,style:Le.closeBtn,children:"×"})]}),O.jsxs("div",{style:Le.header,children:[O.jsx("div",{style:{...Le.icon,background:t.installed?"var(--green)":t.price>0?"var(--purple)":"var(--accent)"},children:t.icon||t.name.charAt(0)}),O.jsxs("div",{style:Le.headerInfo,children:[O.jsx("div",{style:Le.name,children:t.name}),O.jsxs("div",{style:Le.author,children:["by ",t.author]}),O.jsxs("div",{style:Le.meta,children:[t.rating>0&&O.jsxs("span",{style:Le.metaItem,children:[O.jsx("span",{style:{color:"var(--amber)"},children:Ly(t.rating)})," ",t.rating," (",t.ratingCount||0,")"]}),t.downloads>0&&O.jsxs("span",{style:Le.metaItem,children:["⤓"," ",H1(t.downloads)]}),O.jsxs("span",{style:Le.metaItem,children:[V1[t.category]||""," ",I1[t.category]||t.category]})]})]})]}),O.jsxs("div",{style:Le.actionBar,children:[t.installed?O.jsx("button",{onClick:()=>r(t.id),disabled:i===t.id,style:Le.uninstallBtn,children:i===t.id?"Removing...":"Uninstall"}):O.jsx("button",{onClick:()=>n(t.id),disabled:i===t.id,style:t.price>0?Le.buyBtn:Le.installBtn,children:i===t.id?"Installing...":t.price>0?`$${t.price.toFixed(2)}`:"Install"}),t.price===0&&!t.installed&&O.jsx("span",{style:Le.freeLabel,children:"Free"})]}),O.jsxs("div",{style:Le.section,children:[O.jsx("div",{style:Le.sectionTitle,children:"Rating"}),O.jsxs("div",{style:Le.ratingRow,children:[O.jsxs("div",{style:Le.ratingLeft,children:[O.jsx("div",{style:Le.ratingBig,children:t.rating||"-"}),O.jsx("div",{style:{color:"var(--amber)",fontSize:13},children:Ly(t.rating)}),O.jsxs("div",{style:Le.ratingCount,children:[t.ratingCount||0," ratings"]})]}),O.jsxs("div",{style:Le.ratingRight,children:[O.jsx("div",{style:Le.rateLabel,children:d?"Thanks for rating!":"Rate this skill"}),O.jsx(Y8,{current:c,onRate:v,disabled:g||d}),g&&O.jsx("div",{style:{fontSize:10,color:"var(--text-muted)",marginTop:4},children:"Submitting..."})]})]})]}),O.jsxs("div",{style:Le.section,children:[O.jsx("div",{style:Le.sectionTitle,children:"About"}),O.jsx("div",{style:Le.description,children:t.description})]}),O.jsxs("div",{style:Le.section,children:[O.jsx("div",{style:Le.sectionTitle,children:"Tags"}),O.jsxs("div",{style:Le.tagRow,children:[(t.tags||[]).map(S=>O.jsx("span",{style:Le.tag,children:S},S)),(t.roles||[]).map(S=>O.jsx("span",{style:Le.roleTag,children:S},S))]})]}),t.authorProfile&&O.jsxs("div",{style:Le.section,children:[O.jsx("div",{style:Le.sectionTitle,children:"Developer"}),O.jsxs("div",{style:Le.authorCard,children:[O.jsx("div",{style:Le.authorAvatar,children:t.authorProfile.avatar?O.jsx("img",{src:t.authorProfile.avatar,alt:"",style:{width:"100%",height:"100%",borderRadius:6}}):t.author.charAt(0)}),O.jsxs("div",{style:Le.authorDetails,children:[O.jsx("div",{style:Le.authorName,children:t.author}),O.jsxs("div",{style:Le.authorLinks,children:[t.authorProfile.website&&O.jsx("a",{href:t.authorProfile.website,target:"_blank",rel:"noopener noreferrer",style:Le.authorLink,children:"Website"}),t.authorProfile.github&&O.jsx("a",{href:`https://github.com/${t.authorProfile.github}`,target:"_blank",rel:"noopener noreferrer",style:Le.authorLink,children:"GitHub"}),t.authorProfile.twitter&&O.jsxs("a",{href:`https://x.com/${t.authorProfile.twitter}`,target:"_blank",rel:"noopener noreferrer",style:Le.authorLink,children:["@",t.authorProfile.twitter]})]})]})]})]}),e&&O.jsxs("div",{style:Le.section,children:[O.jsx("div",{style:Le.sectionTitle,children:"Skill Instructions"}),O.jsxs("pre",{style:Le.contentPre,children:[e.replace(/^---[\s\S]*?---\n/,"").trim().slice(0,2e3),e.length>2e3?`
100
- ...`:""]})]})]})})}function U8({skills:t,onSelect:e}){const i=t.filter(n=>n.featured).slice(0,3);return i.length===0?null:O.jsxs("div",{style:Me.featuredSection,children:[O.jsx("div",{style:Me.featuredLabel,children:"Featured"}),O.jsx("div",{style:Me.featuredRow,children:i.map(n=>O.jsxs("div",{onClick:()=>e(n),style:Me.featuredCard,onMouseEnter:r=>{r.currentTarget.style.borderColor="var(--accent)",r.currentTarget.style.transform="translateY(-1px)"},onMouseLeave:r=>{r.currentTarget.style.borderColor="var(--border)",r.currentTarget.style.transform="none"},children:[O.jsx("div",{style:Me.featuredGradient,children:O.jsx("div",{style:{...Me.featuredIcon,background:n.installed?"var(--green)":"var(--accent)"},children:n.icon||n.name.charAt(0)})}),O.jsxs("div",{style:Me.featuredInfo,children:[O.jsx("div",{style:Me.featuredName,children:n.name}),O.jsxs("div",{style:Me.featuredAuthorRow,children:[O.jsx("span",{style:Me.featuredAuthor,children:n.author}),O.jsx(Y1,{skill:n})]}),O.jsx("div",{style:Me.featuredDesc,children:n.description}),O.jsxs("div",{style:Me.featuredMeta,children:[n.rating>0&&O.jsxs("span",{style:{color:"var(--amber)",fontSize:10},children:[Ly(n.rating)," ",n.rating]}),O.jsxs("span",{style:{color:"var(--text-muted)",fontSize:10},children:["⤓"," ",H1(n.downloads)]})]})]}),n.installed&&O.jsx("div",{style:Me.featuredBadge,children:"installed"})]},n.id))})]})}function G8({skill:t,onSelect:e,hovered:i,onHover:n}){return O.jsxs("div",{onClick:()=>e(t),onMouseEnter:()=>n(t.id),onMouseLeave:()=>n(null),style:{...Me.card,borderColor:t.installed?"var(--green)":i?"var(--accent)":"var(--border)",background:i?"var(--bg-hover)":"var(--bg-surface)",transform:i?"translateY(-1px)":"none"},children:[O.jsxs("div",{style:Me.cardTop,children:[O.jsx("div",{style:{...Me.cardIcon,background:t.installed?"var(--green)":t.price>0?"var(--purple)":"var(--accent)"},children:t.icon||t.name.charAt(0)}),O.jsxs("div",{style:Me.cardInfo,children:[O.jsx("div",{style:Me.cardName,children:t.name}),O.jsxs("div",{style:Me.cardAuthorRow,children:[O.jsx("span",{style:Me.cardAuthor,children:t.author}),O.jsx(Y1,{skill:t})]})]}),t.installed&&O.jsx("div",{style:Me.installedBadge,children:"installed"}),t.price>0&&!t.installed&&O.jsxs("div",{style:Me.priceBadge,children:["$",t.price.toFixed(2)]}),t.price===0&&!t.installed&&O.jsx("div",{style:Me.freeBadge,children:"Free"})]}),O.jsx("div",{style:Me.cardDesc,children:t.description}),O.jsxs("div",{style:Me.cardBottom,children:[O.jsxs("div",{style:Me.cardStats,children:[t.rating>0&&O.jsxs("span",{style:Me.cardRating,children:[O.jsx("span",{style:{color:"var(--amber)"},children:"★"})," ",t.rating]}),t.downloads>0&&O.jsxs("span",{style:Me.cardDownloads,children:["⤓"," ",H1(t.downloads)]})]}),O.jsxs("span",{style:Me.catTag,children:[V1[t.category]||""," ",I1[t.category]||t.category]})]})]})}function F8(){const[t,e]=X.useState([]),[i,n]=X.useState([]),[r,s]=X.useState(""),[a,c]=X.useState("all"),[h,d]=X.useState("popular"),[f,g]=X.useState("browse"),[m,v]=X.useState(!0),[S,_]=X.useState(null),[w,x]=X.useState(null),[Q,C]=X.useState(null),[T,A]=X.useState(null),P=X.useCallback(async()=>{v(!0);try{const B=new URLSearchParams;r&&B.set("search",r),a!=="all"&&B.set("category",a);const W=await(await fetch(`/api/skills/registry?${B}`)).json();e(W.skills||[]),n(W.categories||[])}catch{}v(!1)},[r,a]);X.useEffect(()=>{P()},[P]);async function M(B){_(B);try{await fetch(`/api/skills/${B}/install`,{method:"POST"}),await P(),e(E=>{const W=E.find($=>$.id===B);return W&&(w==null?void 0:w.id)===B&&x({...W,installed:!0}),E})}catch{}_(null)}async function V(B){_(B);try{await fetch(`/api/skills/${B}`,{method:"DELETE"}),await P(),(w==null?void 0:w.id)===B&&(x(E=>E?{...E,installed:!1}:null),C(null))}catch{}_(null)}async function H(B,E){const W=await fetch(`/api/skills/${B}/rate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rating:E})});if(!W.ok)throw new Error("Rating failed");const $=await W.json();e(Z=>Z.map(z=>z.id===B?{...z,rating:$.rating,ratingCount:$.rating_count??$.ratingCount}:z)),(w==null?void 0:w.id)===B&&x(Z=>Z?{...Z,rating:$.rating,ratingCount:$.rating_count??$.ratingCount}:null)}async function G(B){if(x(B),C(null),B.installed)try{const W=await(await fetch(`/api/skills/${B.id}/content`)).json();C(W.content)}catch{}}const N=t.filter(B=>B.installed),j=p2(f==="installed"?N:t,h);return O.jsxs("div",{style:Me.root,children:[O.jsxs("div",{style:Me.headerBar,children:[O.jsxs("div",{style:Me.headerLeft,children:[O.jsx("div",{style:Me.title,children:"Skills Store"}),O.jsxs("div",{style:Me.headerTabs,children:[O.jsx("button",{onClick:()=>g("browse"),style:{...Me.headerTab,color:f==="browse"?"var(--text-bright)":"var(--text-dim)",borderBottom:f==="browse"?"2px solid var(--accent)":"2px solid transparent"},children:"Browse"}),O.jsxs("button",{onClick:()=>g("installed"),style:{...Me.headerTab,color:f==="installed"?"var(--text-bright)":"var(--text-dim)",borderBottom:f==="installed"?"2px solid var(--green)":"2px solid transparent"},children:["My Skills (",N.length,")"]})]})]}),O.jsx("div",{style:Me.headerRight,children:O.jsxs("span",{style:Me.headerCount,children:[t.length," skills"]})})]}),O.jsxs("div",{style:Me.toolbar,children:[O.jsxs("div",{style:Me.searchRow,children:[O.jsxs("div",{style:Me.searchWrap,children:[O.jsx("span",{style:Me.searchIcon,children:"⌕"}),O.jsx("input",{style:Me.search,placeholder:"Search skills...",value:r,onChange:B=>s(B.target.value)})]}),O.jsx("div",{style:Me.sortWrap,children:I8.map(B=>O.jsx("button",{onClick:()=>d(B.id),style:{...Me.sortBtn,color:h===B.id?"var(--text-bright)":"var(--text-muted)",background:h===B.id?"var(--bg-active)":"transparent"},children:B.label},B.id))})]}),f==="browse"&&O.jsxs("div",{style:Me.catRow,children:[O.jsx("button",{onClick:()=>c("all"),style:{...Me.catBtn,...a==="all"?Me.catBtnActive:{}},children:"All"}),i.map(B=>O.jsxs("button",{onClick:()=>c(B.id),style:{...Me.catBtn,...a===B.id?Me.catBtnActive:{}},children:[V1[B.id]||""," ",I1[B.id]||B.id," (",B.count,")"]},B.id))]})]}),O.jsxs("div",{style:Me.scrollArea,children:[f==="browse"&&!r&&a==="all"&&O.jsx(U8,{skills:t,onSelect:G}),m&&t.length===0&&O.jsx("div",{style:Me.empty,children:"Loading skills..."}),!m&&j.length===0&&O.jsx("div",{style:Me.empty,children:f==="installed"?"No skills installed yet. Browse the store to find skills.":"No skills match your search."}),O.jsx("div",{style:Me.grid,children:j.map(B=>O.jsx(G8,{skill:B,onSelect:G,hovered:T===B.id,onHover:A},B.id))})]}),O.jsx(H8,{skill:w,content:Q,installing:S,onInstall:M,onUninstall:V,onRate:H,onClose:()=>{x(null),C(null)}})]})}const Me={root:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},headerBar:{padding:"12px 20px 0",display:"flex",alignItems:"center",justifyContent:"space-between",flexShrink:0},headerLeft:{display:"flex",alignItems:"center",gap:20},title:{fontSize:15,fontWeight:700,color:"var(--text-bright)",letterSpacing:.3},headerTabs:{display:"flex",gap:0},headerTab:{padding:"6px 14px",background:"none",border:"none",fontSize:12,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer",transition:"color 0.1s"},headerRight:{display:"flex",alignItems:"center",gap:10},headerCount:{fontSize:11,color:"var(--text-muted)"},toolbar:{padding:"10px 20px",flexShrink:0},searchRow:{display:"flex",gap:10,alignItems:"center"},searchWrap:{flex:1,position:"relative"},searchIcon:{position:"absolute",left:10,top:"50%",transform:"translateY(-50%)",color:"var(--text-muted)",fontSize:13,pointerEvents:"none"},search:{width:"100%",padding:"7px 12px 7px 30px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6,color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none"},sortWrap:{display:"flex",gap:2},sortBtn:{padding:"5px 10px",background:"transparent",border:"1px solid transparent",borderRadius:4,fontSize:10,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer",transition:"all 0.1s"},catRow:{display:"flex",gap:4,marginTop:8,flexWrap:"wrap"},catBtn:{padding:"4px 12px",background:"transparent",border:"1px solid var(--border)",borderRadius:14,color:"var(--text-dim)",fontSize:10,fontFamily:"var(--font)",cursor:"pointer",transition:"all 0.1s"},catBtnActive:{borderColor:"var(--accent)",color:"var(--accent)",background:"rgba(51, 175, 188, 0.08)"},scrollArea:{flex:1,overflowY:"auto",padding:"4px 20px 20px"},featuredSection:{marginBottom:16},featuredLabel:{fontSize:11,fontWeight:700,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1,marginBottom:8},featuredRow:{display:"grid",gridTemplateColumns:"repeat(3, 1fr)",gap:8},featuredCard:{padding:"14px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:8,cursor:"pointer",transition:"border-color 0.15s, transform 0.15s",position:"relative",overflow:"hidden"},featuredGradient:{display:"flex",alignItems:"center",marginBottom:10},featuredIcon:{width:40,height:40,borderRadius:10,display:"flex",alignItems:"center",justifyContent:"center",fontSize:16,fontWeight:700,color:"var(--bg-base)"},featuredInfo:{flex:1},featuredName:{fontSize:13,fontWeight:700,color:"var(--text-bright)"},featuredAuthorRow:{display:"flex",alignItems:"center",gap:6,marginTop:2},featuredAuthor:{fontSize:10,color:"var(--text-muted)"},featuredDesc:{fontSize:10,color:"var(--text-dim)",marginTop:6,lineHeight:1.45,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},featuredMeta:{display:"flex",gap:10,marginTop:8},featuredBadge:{position:"absolute",top:8,right:8,fontSize:8,fontWeight:600,color:"var(--green)",border:"1px solid var(--green)",borderRadius:3,padding:"1px 5px",textTransform:"uppercase",letterSpacing:.5},grid:{display:"grid",gridTemplateColumns:"repeat(3, 1fr)",gap:8},empty:{padding:"60px 0",textAlign:"center",color:"var(--text-dim)",fontSize:12,gridColumn:"1 / -1"},card:{padding:"14px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:8,cursor:"pointer",transition:"border-color 0.12s, background 0.12s, transform 0.12s",display:"flex",flexDirection:"column"},cardTop:{display:"flex",alignItems:"center",gap:10},cardIcon:{width:36,height:36,borderRadius:8,display:"flex",alignItems:"center",justifyContent:"center",fontSize:14,fontWeight:700,color:"var(--bg-base)",flexShrink:0},cardInfo:{flex:1,minWidth:0},cardName:{fontSize:12,fontWeight:600,color:"var(--text-bright)"},cardAuthorRow:{display:"flex",alignItems:"center",gap:6,marginTop:2},cardAuthor:{fontSize:10,color:"var(--text-muted)"},installedBadge:{fontSize:8,fontWeight:600,color:"var(--green)",border:"1px solid var(--green)",borderRadius:3,padding:"1px 6px",textTransform:"uppercase",letterSpacing:.5,flexShrink:0},priceBadge:{fontSize:10,fontWeight:700,color:"var(--purple)",border:"1px solid var(--purple)",borderRadius:4,padding:"2px 8px",flexShrink:0},freeBadge:{fontSize:9,fontWeight:500,color:"var(--text-muted)",flexShrink:0},cardDesc:{fontSize:11,color:"var(--text-dim)",marginTop:10,lineHeight:1.5,flex:1,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},cardBottom:{display:"flex",alignItems:"center",justifyContent:"space-between",marginTop:10,paddingTop:8,borderTop:"1px solid var(--border)"},cardStats:{display:"flex",gap:10},cardRating:{fontSize:10,color:"var(--text-dim)"},cardDownloads:{fontSize:10,color:"var(--text-muted)"},catTag:{fontSize:9,padding:"2px 8px",borderRadius:4,background:"var(--bg-active)",color:"var(--text-dim)",fontWeight:500}},Le={overlay:{position:"fixed",inset:0,background:"rgba(0, 0, 0, 0.6)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e3,backdropFilter:"blur(2px)"},container:{width:"90%",maxWidth:560,maxHeight:"85vh",background:"var(--bg-chrome)",border:"1px solid var(--border)",borderRadius:10,overflowY:"auto",padding:"0 24px 24px",position:"relative"},topBar:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 0 10px",position:"sticky",top:0,zIndex:1,background:"var(--bg-chrome)"},closeBtn:{background:"none",border:"1px solid var(--border)",borderRadius:4,color:"var(--text-dim)",fontSize:16,cursor:"pointer",fontFamily:"var(--font)",lineHeight:1,padding:"2px 8px",transition:"border-color 0.1s"},header:{display:"flex",gap:14,alignItems:"flex-start",marginBottom:14},actionBar:{display:"flex",alignItems:"center",gap:10,marginBottom:18,paddingBottom:16,borderBottom:"1px solid var(--border)"},icon:{width:52,height:52,borderRadius:12,display:"flex",alignItems:"center",justifyContent:"center",fontSize:20,fontWeight:700,color:"var(--bg-base)",flexShrink:0},headerInfo:{flex:1,minWidth:0},name:{fontSize:16,fontWeight:700,color:"var(--text-bright)"},author:{fontSize:11,color:"var(--text-dim)",marginTop:2},meta:{display:"flex",gap:12,marginTop:6,fontSize:11,color:"var(--text-dim)"},metaItem:{display:"flex",alignItems:"center",gap:3},installBtn:{padding:"8px 28px",background:"var(--accent)",border:"none",borderRadius:6,color:"var(--bg-base)",fontSize:12,fontWeight:700,fontFamily:"var(--font)",cursor:"pointer",transition:"opacity 0.1s"},buyBtn:{padding:"8px 28px",background:"var(--purple)",border:"none",borderRadius:6,color:"#fff",fontSize:12,fontWeight:700,fontFamily:"var(--font)",cursor:"pointer",transition:"opacity 0.1s"},uninstallBtn:{padding:"8px 20px",background:"transparent",border:"1px solid var(--red)",borderRadius:6,color:"var(--red)",fontSize:12,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer"},freeLabel:{fontSize:9,color:"var(--text-muted)",fontWeight:500},section:{marginBottom:16},ratingRow:{display:"flex",gap:20,alignItems:"center",padding:"12px 14px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6},ratingLeft:{display:"flex",flexDirection:"column",alignItems:"center",gap:2,minWidth:70},ratingBig:{fontSize:24,fontWeight:700,color:"var(--text-bright)",lineHeight:1},ratingCount:{fontSize:9,color:"var(--text-muted)",marginTop:2},ratingRight:{flex:1},rateLabel:{fontSize:11,color:"var(--text-dim)",marginBottom:6},sectionTitle:{fontSize:10,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:.8,marginBottom:8},description:{fontSize:12,color:"var(--text-primary)",lineHeight:1.6},tagRow:{display:"flex",gap:5,flexWrap:"wrap"},tag:{fontSize:10,padding:"2px 8px",borderRadius:4,background:"var(--bg-active)",color:"var(--text-dim)"},roleTag:{fontSize:10,padding:"2px 8px",borderRadius:4,background:"rgba(51, 175, 188, 0.1)",color:"var(--accent)"},authorCard:{display:"flex",gap:12,alignItems:"center",padding:"10px 12px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6},authorAvatar:{width:36,height:36,borderRadius:6,background:"var(--accent)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:14,fontWeight:700,color:"var(--bg-base)",flexShrink:0},authorDetails:{flex:1},authorName:{fontSize:12,fontWeight:600,color:"var(--text-bright)"},authorLinks:{display:"flex",gap:10,marginTop:4},authorLink:{fontSize:10,color:"var(--accent)",textDecoration:"none"},contentPre:{fontSize:10,color:"var(--text-dim)",lineHeight:1.6,fontFamily:"var(--font)",whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:300,overflowY:"auto",padding:"10px 12px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6}},U1={all:"All",communication:"Communication",productivity:"Productivity",finance:"Finance",developer:"Developer",database:"Database","smart-home":"Smart Home",analytics:"Analytics"},G1={communication:"✉",productivity:"⚙",finance:"⚖",developer:"⌘",database:"≡","smart-home":"⌂",analytics:"⌕"},F1={slack:"S",github:"G",stripe:"$",calendar:"C",email:"@",gmail:"@",database:"D",search:"?",drive:"D",linear:"L",notion:"N",discord:"D",home:"H",folder:"F",map:"M"},K8=[{id:"popular",label:"Popular"},{id:"name",label:"A–Z"},{id:"category",label:"Category"}];function J8(t){return t.verified==="mcp-official"?{label:"Official",color:"var(--accent)",bg:"rgba(51, 175, 188, 0.12)"}:t.verified==="verified"?{label:"Verified",color:"var(--green)",bg:"rgba(74, 225, 104, 0.10)"}:null}function K1({item:t,size:e="small"}){const i=J8(t);if(!i)return null;const n=e==="small";return O.jsxs("span",{title:`${i.label} MCP server`,style:{display:"inline-flex",alignItems:"center",gap:3,fontSize:n?9:10,fontWeight:600,color:i.color,background:i.bg,padding:n?"1px 6px":"2px 8px",borderRadius:3,letterSpacing:.3,flexShrink:0,cursor:"default"},children:[O.jsx("span",{style:{fontSize:n?8:10,lineHeight:1},children:"✓"}),i.label]})}function g2(t,e){const i=[...t];switch(e){case"popular":return i.sort((n,r)=>(r.featured?1:0)-(n.featured?1:0)||n.name.localeCompare(r.name));case"name":return i.sort((n,r)=>n.name.localeCompare(r.name));case"category":return i.sort((n,r)=>(n.category||"").localeCompare(r.category||"")||n.name.localeCompare(r.name));default:return i}}function eZ({integration:t,onClose:e}){const[i,n]=X.useState({}),[r,s]=X.useState(!1),[a,c]=X.useState({}),[h,d]=X.useState(null),[f,g]=X.useState(""),[m,v]=X.useState(""),[S,_]=X.useState(!1),[w,x]=X.useState("");if(X.useEffect(()=>{((t==null?void 0:t.authType)==="oauth-google"||(t==null?void 0:t.authType)==="google-autoauth"||t!=null&&t._googleSetupNeeded)&&(d("checking"),_((t==null?void 0:t._googleSetupNeeded)||!1),fetch("/api/integrations/google-oauth/status").then(G=>G.json()).then(G=>d(G.configured?"ready":"not-configured")).catch(()=>d("not-configured")))},[t]),!t)return null;const Q=t.authType==="oauth-google",C=t.authType==="google-autoauth"||t._googleSetupNeeded,T=(t.envKeys||[]).filter(G=>!G.hidden),A=t.setupSteps||[];async function P(G){if(i[G]){s(!0),x("");try{const N=await fetch(`/api/integrations/${t.id}/credentials`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:G,value:i[G]})});if(N.ok)c(j=>({...j,[G]:!0})),n(j=>({...j,[G]:""}));else{const j=await N.json();x(j.error||`Failed to save ${G}`)}}catch{x("Could not reach the server")}s(!1)}}async function M(){if(!(!f||!m)){s(!0),x("");try{const G=await fetch("/api/integrations/google-oauth/setup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({clientId:f,clientSecret:m})});if(G.ok)d("ready"),_(!1);else{const N=await G.json();x(N.error||"Failed to save credentials")}}catch{x("Could not reach the server")}s(!1)}}async function V(){d("connecting"),x("");try{const N=await(await fetch(`/api/integrations/${t.id}/authenticate`,{method:"POST"})).json();N.ok?setTimeout(()=>e(),3e3):(x(N.error||"Authentication failed"),d("ready"))}catch{x("Could not reach the server"),d("ready")}}async function H(){d("connecting"),x("");try{const N=await(await fetch(`/api/integrations/${t.id}/oauth/start`,{method:"POST"})).json();if(N.url){window.open(N.url,"_blank","width=600,height=700");const j=setInterval(async()=>{try{(await(await fetch(`/api/integrations/${t.id}/status`)).json()).configured&&(clearInterval(j),d("ready"),e())}catch{}},2e3);setTimeout(()=>clearInterval(j),3e5)}else x(N.error||"Failed to start OAuth flow"),d("ready")}catch{x("Could not reach the server"),d("ready")}}return O.jsx("div",{style:Ye.overlay,onClick:e,children:O.jsxs("div",{style:Ye.container,onClick:G=>G.stopPropagation(),children:[O.jsxs("div",{style:Ye.topBar,children:[O.jsxs("span",{style:{fontSize:13,fontWeight:600,color:"var(--text-bright)"},children:["Connect ",t.name]}),O.jsx("button",{onClick:e,style:Ye.closeBtn,children:"×"})]}),O.jsxs("div",{style:{padding:"16px 0"},children:[A.length>0&&O.jsxs("div",{style:{marginBottom:20},children:[O.jsx("div",{style:{fontSize:10,fontWeight:700,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:.5,marginBottom:10},children:"Setup Guide"}),A.map((G,N)=>O.jsxs("div",{style:{display:"flex",gap:10,marginBottom:8,fontSize:11,color:"var(--text-primary)",lineHeight:1.5},children:[O.jsx("span",{style:{width:20,height:20,borderRadius:"50%",flexShrink:0,background:"var(--bg-active)",color:"var(--accent)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:10,fontWeight:700},children:N+1}),O.jsx("span",{children:G})]},N))]}),t.setupUrl&&!Q&&O.jsxs("a",{href:t.setupUrl,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,padding:"10px 16px",marginBottom:16,background:"var(--bg-active)",color:"var(--accent)",border:"1px solid var(--accent)",borderRadius:6,fontSize:12,fontWeight:600,textDecoration:"none",cursor:"pointer"},children:["Open ",t.name," Settings ","↗"]}),w&&O.jsx("div",{style:{padding:"10px 14px",marginBottom:14,borderRadius:6,background:"rgba(224, 108, 117, 0.08)",border:"1px solid var(--red)",fontSize:11,color:"var(--red)",lineHeight:1.5},children:w}),(Q||C)&&O.jsxs("div",{style:{marginBottom:16},children:[h==="ready"&&O.jsx("button",{onClick:C?V:H,disabled:h==="connecting",style:{display:"flex",alignItems:"center",justifyContent:"center",gap:8,width:"100%",padding:"12px 16px",marginBottom:12,background:"#4285f4",color:"#fff",border:"none",borderRadius:6,fontSize:13,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},children:"Connect with Google"}),h==="checking"&&O.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"12px 16px",marginBottom:12,color:"var(--text-muted)",fontSize:12},children:"Checking Google credentials..."}),h==="connecting"&&O.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"12px 16px",marginBottom:12,background:"var(--bg-active)",borderRadius:6,color:"var(--text-primary)",fontSize:12,fontWeight:600},children:"Waiting for authorization — check your browser..."}),h==="not-configured"&&O.jsxs("div",{style:{padding:14,borderRadius:8,background:"var(--bg-surface)",border:"1px solid var(--border)"},children:[O.jsx("div",{style:{fontSize:11,fontWeight:600,color:"var(--text-bright)",marginBottom:8},children:"First-time setup (one time for all Google services)"}),O.jsx("div",{style:{fontSize:10,color:"var(--text-dim)",lineHeight:1.6,marginBottom:10},children:"Create a free Google Cloud OAuth app to let Groove connect on your behalf:"}),O.jsxs("a",{href:"https://console.cloud.google.com/apis/credentials/oauthclient",target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",justifyContent:"center",gap:6,padding:"8px 14px",marginBottom:10,background:"var(--bg-active)",color:"var(--accent)",border:"1px solid var(--accent)",borderRadius:6,fontSize:11,fontWeight:600,textDecoration:"none"},children:["Open Google Cloud Console ","↗"]}),O.jsxs("div",{style:{fontSize:10,color:"var(--text-muted)",lineHeight:1.7,marginBottom:12},children:["1. Create a project if you don't have one",`
101
- `,"2. Set up OAuth consent screen (External, add your email as test user)",`
102
- `,"3. Create credentials ","→"," OAuth client ID ","→"," Desktop app",`
103
- `,"4. Paste the Client ID and Secret below:"]}),O.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[O.jsx("input",{value:f,onChange:G=>g(G.target.value),placeholder:"Client ID (e.g. 123456.apps.googleusercontent.com)",style:Ye.input}),O.jsx("input",{type:"password",value:m,onChange:G=>v(G.target.value),placeholder:"Client Secret (e.g. GOCSPX-...)",style:Ye.input}),O.jsx("button",{onClick:async()=>{await M(),f&&m&&setTimeout(()=>{C?V():H()},500)},disabled:r||!f||!m,style:{...Ye.saveBtn,width:"100%",opacity:r||!f||!m?.4:1},children:r?"Saving...":"Save & Connect"})]}),O.jsx("div",{style:{fontSize:9,color:"var(--text-muted)",textAlign:"center",marginTop:6},children:"One-time setup. Works for Gmail, Calendar, and Drive. Encrypted on this machine only."})]})]}),T.length>0&&O.jsxs("div",{children:[O.jsx("div",{style:{fontSize:11,color:"var(--text-dim)",marginBottom:12,lineHeight:1.5},children:"Paste your credentials below. Values are encrypted and stored locally on this machine only."}),T.map(G=>O.jsxs("div",{style:{marginBottom:14},children:[O.jsxs("label",{style:Ye.label,children:[G.label||G.key,G.required&&O.jsx("span",{style:{color:"var(--red)",marginLeft:4},children:"*"}),a[G.key]&&O.jsxs("span",{style:{color:"var(--green)",marginLeft:8,fontSize:10,fontWeight:500},children:["✓"," saved"]})]}),O.jsxs("div",{style:{display:"flex",gap:6},children:[O.jsx("input",{type:"password",value:i[G.key]||"",placeholder:G.placeholder||G.key,onChange:N=>n(j=>({...j,[G.key]:N.target.value})),onKeyDown:N=>N.key==="Enter"&&P(G.key),style:Ye.input}),O.jsx("button",{onClick:()=>P(G.key),disabled:r||!i[G.key],style:{...Ye.saveBtn,opacity:r||!i[G.key]?.4:1},children:"Save"})]})]},G.key))]})]})]})})}function tZ({integration:t,installing:e,onInstall:i,onUninstall:n,onConfigure:r,onAuthenticate:s,onClose:a}){if(!t)return null;const c=(t.authType==="none"||t.authType==="google-autoauth")&&(t.envKeys||[]).length===0,h=(t.envKeys||[]).filter(d=>!d.hidden).length>0||t.authType==="oauth-google";return O.jsx("div",{style:Ye.overlay,onClick:a,children:O.jsxs("div",{style:Ye.container,onClick:d=>d.stopPropagation(),children:[O.jsxs("div",{style:Ye.topBar,children:[O.jsx(K1,{item:t,size:"large"}),O.jsx("button",{onClick:a,style:Ye.closeBtn,children:"×"})]}),O.jsxs("div",{style:Ye.header,children:[O.jsx("div",{style:{...Ye.icon,background:t.installed&&t.configured?"var(--green)":t.installed?"var(--amber)":"var(--accent)"},children:F1[t.icon]||t.name.charAt(0)}),O.jsxs("div",{style:Ye.headerInfo,children:[O.jsx("div",{style:Ye.name,children:t.name}),O.jsxs("div",{style:Ye.meta,children:[O.jsxs("span",{style:Ye.metaItem,children:[G1[t.category]||""," ",U1[t.category]||t.category]}),O.jsx("span",{style:Ye.metaItem,children:"MCP Server"})]})]})]}),O.jsx("div",{style:Ye.actionBar,children:t.installed?O.jsxs("div",{style:{display:"flex",gap:8,flex:1},children:[c&&O.jsxs("button",{onClick:()=>s(t),style:Ye.installBtn,children:["Sign in with ",t.name.includes("Google")||t.id.includes("google")||t.id==="gmail"?"Google":t.name]}),h&&O.jsx("button",{onClick:()=>r(t),style:Ye.configureBtn,children:t.configured?"Reconfigure":"Configure"}),O.jsx("button",{onClick:()=>n(t.id),disabled:e===t.id,style:Ye.uninstallBtn,children:e===t.id?"Removing...":"Uninstall"})]}):O.jsx("button",{onClick:()=>i(t.id),disabled:e===t.id,style:Ye.installBtn,children:e===t.id?"Installing...":"Install"})}),t.installed&&O.jsxs("div",{style:Ye.section,children:[O.jsx("div",{style:Ye.sectionTitle,children:"Status"}),O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"8px 12px",borderRadius:6,background:c?"rgba(97, 175, 239, 0.06)":t.configured?"rgba(74, 225, 104, 0.06)":"rgba(229, 192, 123, 0.06)",border:`1px solid ${c?"var(--blue)":t.configured?"var(--green)":"var(--amber)"}`},children:[O.jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:c?"var(--blue)":t.configured?"var(--green)":"var(--amber)"}}),O.jsx("span",{style:{fontSize:11,color:c?"var(--blue)":t.configured?"var(--green)":"var(--amber)"},children:c?"Installed — will sign in automatically on first use":t.configured?"Connected and ready":"Credentials needed"})]})]}),O.jsxs("div",{style:Ye.section,children:[O.jsx("div",{style:Ye.sectionTitle,children:"About"}),O.jsx("div",{style:Ye.description,children:t.description})]}),(t.envKeys||[]).length>0&&O.jsxs("div",{style:Ye.section,children:[O.jsx("div",{style:Ye.sectionTitle,children:"Required Credentials"}),O.jsx("div",{style:{display:"flex",flexDirection:"column",gap:4},children:t.envKeys.map(d=>O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontSize:11,color:"var(--text-dim)"},children:[O.jsx("code",{style:{fontSize:10,padding:"1px 6px",borderRadius:3,background:"var(--bg-active)",color:"var(--text-primary)",fontFamily:"var(--font)"},children:d.key}),O.jsx("span",{children:d.label}),d.required&&O.jsx("span",{style:{color:"var(--amber)",fontSize:9},children:"required"})]},d.key))})]}),O.jsxs("div",{style:Ye.section,children:[O.jsx("div",{style:Ye.sectionTitle,children:"Tags"}),O.jsxs("div",{style:Ye.tagRow,children:[(t.tags||[]).map(d=>O.jsx("span",{style:Ye.tag,children:d},d)),(t.roles||[]).map(d=>O.jsx("span",{style:Ye.roleTag,children:d},d))]})]}),t.npmPackage&&O.jsxs("div",{style:Ye.section,children:[O.jsx("div",{style:Ye.sectionTitle,children:"Package"}),O.jsx("code",{style:{fontSize:11,padding:"6px 10px",borderRadius:4,background:"var(--bg-active)",color:"var(--text-primary)",display:"block",fontFamily:"var(--font)"},children:t.npmPackage})]})]})})}function iZ({integrations:t,onSelect:e}){const i=t.filter(n=>n.featured).slice(0,3);return i.length===0?null:O.jsxs("div",{style:ze.featuredSection,children:[O.jsx("div",{style:ze.featuredLabel,children:"Featured Integrations"}),O.jsx("div",{style:ze.featuredRow,children:i.map(n=>O.jsxs("div",{onClick:()=>e(n),style:ze.featuredCard,onMouseEnter:r=>{r.currentTarget.style.borderColor="var(--accent)",r.currentTarget.style.transform="translateY(-1px)"},onMouseLeave:r=>{r.currentTarget.style.borderColor="var(--border)",r.currentTarget.style.transform="none"},children:[O.jsx("div",{style:ze.featuredGradient,children:O.jsx("div",{style:{...ze.featuredIcon,background:n.installed&&n.configured?"var(--green)":n.installed?"var(--amber)":"var(--accent)"},children:F1[n.icon]||n.name.charAt(0)})}),O.jsxs("div",{style:ze.featuredInfo,children:[O.jsx("div",{style:ze.featuredName,children:n.name}),O.jsx("div",{style:ze.featuredAuthorRow,children:O.jsx(K1,{item:n})}),O.jsx("div",{style:ze.featuredDesc,children:n.description})]}),n.installed&&n.authType!=="none"&&n.configured&&O.jsx("div",{style:ze.connectedBadge,children:"connected"}),n.installed&&n.authType==="none"&&O.jsx("div",{style:ze.installedBadge,children:"installed"}),n.installed&&!n.configured&&n.authType!=="none"&&O.jsx("div",{style:ze.setupBadge,children:"needs setup"})]},n.id))})]})}function nZ({item:t,onSelect:e,hovered:i,onHover:n}){return O.jsxs("div",{onClick:()=>e(t),onMouseEnter:()=>n(t.id),onMouseLeave:()=>n(null),style:{...ze.card,borderColor:t.installed&&t.authType==="none"?"var(--blue)":t.installed&&t.configured?"var(--green)":t.installed?"var(--amber)":i?"var(--accent)":"var(--border)",background:i?"var(--bg-hover)":"var(--bg-surface)",transform:i?"translateY(-1px)":"none"},children:[O.jsxs("div",{style:ze.cardTop,children:[O.jsx("div",{style:{...ze.cardIcon,background:t.installed&&t.authType==="none"?"var(--blue)":t.installed&&t.configured?"var(--green)":t.installed?"var(--amber)":"var(--accent)"},children:F1[t.icon]||t.name.charAt(0)}),O.jsxs("div",{style:ze.cardInfo,children:[O.jsx("div",{style:ze.cardName,children:t.name}),O.jsx("div",{style:ze.cardAuthorRow,children:O.jsx(K1,{item:t})})]}),t.installed&&t.configured&&t.authType!=="none"&&O.jsx("div",{style:ze.connectedBadgeSm,children:"connected"}),t.installed&&t.authType==="none"&&O.jsx("div",{style:ze.installedBadgeSm,children:"installed"}),t.installed&&!t.configured&&t.authType!=="none"&&O.jsx("div",{style:ze.setupBadgeSm,children:"setup"}),!t.installed&&O.jsx("div",{style:ze.freeBadge,children:"MCP"})]}),O.jsx("div",{style:ze.cardDesc,children:t.description}),O.jsxs("div",{style:ze.cardBottom,children:[O.jsx("div",{style:ze.cardStats,children:(t.envKeys||[]).length>0&&O.jsxs("span",{style:ze.cardCredCount,children:[t.envKeys.length," credential",t.envKeys.length>1?"s":""]})}),O.jsxs("span",{style:ze.catTag,children:[G1[t.category]||""," ",U1[t.category]||t.category]})]})]})}function rZ(){const[t,e]=X.useState([]),[i,n]=X.useState([]),[r,s]=X.useState(""),[a,c]=X.useState("all"),[h,d]=X.useState("popular"),[f,g]=X.useState("browse"),[m,v]=X.useState(!0),[S,_]=X.useState(null),[w,x]=X.useState(null),[Q,C]=X.useState(null),[T,A]=X.useState(null),[P,M]=X.useState(""),V=X.useCallback(async()=>{v(!0);try{const z=new URLSearchParams;r&&z.set("search",r),a!=="all"&&z.set("category",a);const U=await(await fetch(`/api/integrations/registry?${z}`)).json();e(U.integrations||[]),n(U.categories||[])}catch{}v(!1)},[r,a]);X.useEffect(()=>{V()},[V]);async function H(z){_(z);try{const L=await fetch(`/api/integrations/${z}/install`,{method:"POST"}),U=await L.json();if(!L.ok){E(U.error||"Install failed","error"),_(null);return}if(await V(),(w==null?void 0:w.id)===z){const D=t.find(I=>I.id===z);D&&x({...D,installed:!0})}}catch{E("Install failed — check daemon logs","error")}_(null)}async function G(z){_(z);try{const L=await fetch(`/api/integrations/${z}`,{method:"DELETE"});if(!L.ok){const U=await L.json();E(U.error||"Uninstall failed","error"),_(null);return}await V(),(w==null?void 0:w.id)===z&&x(U=>U?{...U,installed:!1,configured:!1}:null)}catch{E("Uninstall failed","error")}_(null)}function N(z){x(z)}function j(z){x(null),C(z)}async function B(z){if(z.authType==="google-autoauth")try{if(!(await(await fetch("/api/integrations/google-oauth/status")).json()).configured){x(null),C({...z,_googleSetupNeeded:!0});return}}catch{x(null),C({...z,_googleSetupNeeded:!0});return}x(null),C({...z});try{const U=await(await fetch(`/api/integrations/${z.id}/authenticate`,{method:"POST"})).json();U.ok?E("Sign-in window opened — check your browser"):E(U.error||"Authentication failed","error")}catch{E("Authentication failed — check daemon logs","error")}}function E(z,L="info"){M({text:z,type:L}),setTimeout(()=>M(""),6e3)}function W(){C(null),V()}const $=t.filter(z=>z.installed),Z=g2(f==="installed"?$:t,h);return O.jsxs("div",{style:ze.root,children:[O.jsxs("div",{style:ze.headerBar,children:[O.jsxs("div",{style:ze.headerLeft,children:[O.jsx("div",{style:ze.title,children:"Integrations"}),O.jsxs("div",{style:ze.headerTabs,children:[O.jsx("button",{onClick:()=>g("browse"),style:{...ze.headerTab,color:f==="browse"?"var(--text-bright)":"var(--text-dim)",borderBottom:f==="browse"?"2px solid var(--accent)":"2px solid transparent"},children:"Browse"}),O.jsxs("button",{onClick:()=>g("installed"),style:{...ze.headerTab,color:f==="installed"?"var(--text-bright)":"var(--text-dim)",borderBottom:f==="installed"?"2px solid var(--green)":"2px solid transparent"},children:["Installed (",$.length,")"]})]})]}),O.jsx("div",{style:ze.headerRight,children:O.jsxs("span",{style:ze.headerCount,children:[t.length," integrations"]})})]}),P&&O.jsx("div",{style:{padding:"8px 20px",fontSize:12,fontWeight:500,flexShrink:0,color:P.type==="error"?"var(--red)":"var(--accent)",background:P.type==="error"?"rgba(224, 108, 117, 0.06)":"transparent"},children:P.text||P}),O.jsxs("div",{style:ze.toolbar,children:[O.jsxs("div",{style:ze.searchRow,children:[O.jsxs("div",{style:ze.searchWrap,children:[O.jsx("span",{style:ze.searchIcon,children:"⌕"}),O.jsx("input",{style:ze.search,placeholder:"Search integrations...",value:r,onChange:z=>s(z.target.value)})]}),O.jsx("div",{style:ze.sortWrap,children:K8.map(z=>O.jsx("button",{onClick:()=>d(z.id),style:{...ze.sortBtn,color:h===z.id?"var(--text-bright)":"var(--text-muted)",background:h===z.id?"var(--bg-active)":"transparent"},children:z.label},z.id))})]}),f==="browse"&&O.jsxs("div",{style:ze.catRow,children:[O.jsx("button",{onClick:()=>c("all"),style:{...ze.catBtn,...a==="all"?ze.catBtnActive:{}},children:"All"}),i.map(z=>O.jsxs("button",{onClick:()=>c(z.id),style:{...ze.catBtn,...a===z.id?ze.catBtnActive:{}},children:[G1[z.id]||""," ",U1[z.id]||z.id," (",z.count,")"]},z.id))]})]}),O.jsxs("div",{style:ze.scrollArea,children:[f==="browse"&&!r&&a==="all"&&O.jsx(iZ,{integrations:t,onSelect:N}),m&&t.length===0&&O.jsx("div",{style:ze.empty,children:"Loading integrations..."}),!m&&Z.length===0&&O.jsx("div",{style:ze.empty,children:f==="installed"?"No integrations installed yet. Browse to connect your tools.":"No integrations match your search."}),O.jsx("div",{style:ze.grid,children:Z.map(z=>O.jsx(nZ,{item:z,onSelect:N,hovered:T===z.id,onHover:A},z.id))})]}),O.jsx(tZ,{integration:w,installing:S,onInstall:H,onUninstall:G,onConfigure:j,onAuthenticate:B,onClose:()=>x(null)}),O.jsx(eZ,{integration:Q,onClose:W})]})}const ze={root:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},headerBar:{padding:"12px 20px 0",display:"flex",alignItems:"center",justifyContent:"space-between",flexShrink:0},headerLeft:{display:"flex",alignItems:"center",gap:20},title:{fontSize:15,fontWeight:700,color:"var(--text-bright)",letterSpacing:.3},headerTabs:{display:"flex",gap:0},headerTab:{padding:"6px 14px",background:"none",border:"none",fontSize:12,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer",transition:"color 0.1s"},headerRight:{display:"flex",alignItems:"center",gap:10},headerCount:{fontSize:11,color:"var(--text-muted)"},toolbar:{padding:"10px 20px",flexShrink:0},searchRow:{display:"flex",gap:10,alignItems:"center"},searchWrap:{flex:1,position:"relative"},searchIcon:{position:"absolute",left:10,top:"50%",transform:"translateY(-50%)",color:"var(--text-muted)",fontSize:13,pointerEvents:"none"},search:{width:"100%",padding:"7px 12px 7px 30px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6,color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none"},sortWrap:{display:"flex",gap:2},sortBtn:{padding:"5px 10px",background:"transparent",border:"1px solid transparent",borderRadius:4,fontSize:10,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer",transition:"all 0.1s"},catRow:{display:"flex",gap:4,marginTop:8,flexWrap:"wrap"},catBtn:{padding:"4px 12px",background:"transparent",border:"1px solid var(--border)",borderRadius:14,color:"var(--text-dim)",fontSize:10,fontFamily:"var(--font)",cursor:"pointer",transition:"all 0.1s"},catBtnActive:{borderColor:"var(--accent)",color:"var(--accent)",background:"rgba(51, 175, 188, 0.08)"},scrollArea:{flex:1,overflowY:"auto",padding:"4px 20px 20px"},featuredSection:{marginBottom:16},featuredLabel:{fontSize:11,fontWeight:700,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:1,marginBottom:8},featuredRow:{display:"grid",gridTemplateColumns:"repeat(3, 1fr)",gap:8},featuredCard:{padding:"14px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:8,cursor:"pointer",transition:"border-color 0.15s, transform 0.15s",position:"relative",overflow:"hidden"},featuredGradient:{display:"flex",alignItems:"center",marginBottom:10},featuredIcon:{width:40,height:40,borderRadius:10,display:"flex",alignItems:"center",justifyContent:"center",fontSize:16,fontWeight:700,color:"var(--bg-base)"},featuredInfo:{flex:1},featuredName:{fontSize:13,fontWeight:700,color:"var(--text-bright)"},featuredAuthorRow:{display:"flex",alignItems:"center",gap:6,marginTop:2},featuredDesc:{fontSize:10,color:"var(--text-dim)",marginTop:6,lineHeight:1.45,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},connectedBadge:{position:"absolute",top:8,right:8,fontSize:8,fontWeight:600,color:"var(--green)",border:"1px solid var(--green)",borderRadius:3,padding:"1px 5px",textTransform:"uppercase",letterSpacing:.5},installedBadge:{position:"absolute",top:8,right:8,fontSize:8,fontWeight:600,color:"var(--blue)",border:"1px solid var(--blue)",borderRadius:3,padding:"1px 5px",textTransform:"uppercase",letterSpacing:.5},setupBadge:{position:"absolute",top:8,right:8,fontSize:8,fontWeight:600,color:"var(--amber)",border:"1px solid var(--amber)",borderRadius:3,padding:"1px 5px",textTransform:"uppercase",letterSpacing:.5},grid:{display:"grid",gridTemplateColumns:"repeat(3, 1fr)",gap:8},empty:{padding:"60px 0",textAlign:"center",color:"var(--text-dim)",fontSize:12,gridColumn:"1 / -1"},card:{padding:"14px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:8,cursor:"pointer",transition:"border-color 0.12s, background 0.12s, transform 0.12s",display:"flex",flexDirection:"column"},cardTop:{display:"flex",alignItems:"center",gap:10},cardIcon:{width:36,height:36,borderRadius:8,display:"flex",alignItems:"center",justifyContent:"center",fontSize:14,fontWeight:700,color:"var(--bg-base)",flexShrink:0},cardInfo:{flex:1,minWidth:0},cardName:{fontSize:12,fontWeight:600,color:"var(--text-bright)"},cardAuthorRow:{display:"flex",alignItems:"center",gap:6,marginTop:2},connectedBadgeSm:{fontSize:8,fontWeight:600,color:"var(--green)",border:"1px solid var(--green)",borderRadius:3,padding:"1px 6px",textTransform:"uppercase",letterSpacing:.5,flexShrink:0},installedBadgeSm:{fontSize:8,fontWeight:600,color:"var(--blue)",border:"1px solid var(--blue)",borderRadius:3,padding:"1px 6px",textTransform:"uppercase",letterSpacing:.5,flexShrink:0},setupBadgeSm:{fontSize:8,fontWeight:600,color:"var(--amber)",border:"1px solid var(--amber)",borderRadius:3,padding:"1px 6px",textTransform:"uppercase",letterSpacing:.5,flexShrink:0},freeBadge:{fontSize:9,fontWeight:500,color:"var(--text-muted)",flexShrink:0},cardDesc:{fontSize:11,color:"var(--text-dim)",marginTop:10,lineHeight:1.5,flex:1,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},cardBottom:{display:"flex",alignItems:"center",justifyContent:"space-between",marginTop:10,paddingTop:8,borderTop:"1px solid var(--border)"},cardStats:{display:"flex",gap:10},cardCredCount:{fontSize:10,color:"var(--text-muted)"},catTag:{fontSize:9,padding:"2px 8px",borderRadius:4,background:"var(--bg-active)",color:"var(--text-dim)",fontWeight:500}},Ye={overlay:{position:"fixed",inset:0,background:"rgba(0, 0, 0, 0.6)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e3,backdropFilter:"blur(2px)"},container:{width:"90%",maxWidth:520,maxHeight:"85vh",background:"var(--bg-chrome)",border:"1px solid var(--border)",borderRadius:10,overflowY:"auto",padding:"0 24px 24px",position:"relative"},topBar:{position:"sticky",top:0,background:"var(--bg-chrome)",padding:"16px 0 8px",display:"flex",alignItems:"center",justifyContent:"space-between",zIndex:1},closeBtn:{background:"none",border:"none",color:"var(--text-muted)",fontSize:20,cursor:"pointer",padding:"2px 6px",fontFamily:"var(--font)"},header:{display:"flex",gap:14,alignItems:"flex-start",marginBottom:16},icon:{width:52,height:52,borderRadius:12,display:"flex",alignItems:"center",justifyContent:"center",fontSize:20,fontWeight:700,color:"var(--bg-base)",flexShrink:0},headerInfo:{flex:1},name:{fontSize:17,fontWeight:700,color:"var(--text-bright)"},meta:{display:"flex",gap:10,marginTop:6,flexWrap:"wrap"},metaItem:{fontSize:11,color:"var(--text-dim)"},actionBar:{display:"flex",alignItems:"center",gap:8,padding:"12px 0",borderTop:"1px solid var(--border)",borderBottom:"1px solid var(--border)",marginBottom:16},installBtn:{flex:1,padding:"8px 16px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:6,fontSize:12,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},configureBtn:{flex:1,padding:"8px 16px",background:"var(--bg-active)",color:"var(--text-bright)",border:"1px solid var(--border)",borderRadius:6,fontSize:12,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},uninstallBtn:{padding:"8px 16px",background:"transparent",color:"var(--red)",border:"1px solid var(--red)",borderRadius:6,fontSize:12,fontWeight:500,cursor:"pointer",fontFamily:"var(--font)"},section:{marginBottom:16},sectionTitle:{fontSize:11,fontWeight:700,color:"var(--text-dim)",textTransform:"uppercase",letterSpacing:.5,marginBottom:8},description:{fontSize:12,color:"var(--text-primary)",lineHeight:1.6},tagRow:{display:"flex",gap:4,flexWrap:"wrap"},tag:{fontSize:10,padding:"2px 8px",borderRadius:4,background:"var(--bg-active)",color:"var(--text-dim)"},roleTag:{fontSize:10,padding:"2px 8px",borderRadius:4,background:"rgba(51, 175, 188, 0.08)",color:"var(--accent)",border:"1px solid rgba(51, 175, 188, 0.2)"},label:{display:"block",fontSize:11,fontWeight:600,color:"var(--text-primary)",marginBottom:4},input:{flex:1,padding:"7px 10px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:5,color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none"},saveBtn:{padding:"7px 14px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:5,fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"}},sZ=[{label:"Every 5 min",cron:"*/5 * * * *"},{label:"Every 15 min",cron:"*/15 * * * *"},{label:"Every hour",cron:"0 * * * *"},{label:"Every 6 hours",cron:"0 */6 * * *"},{label:"Daily 9 AM",cron:"0 9 * * *"},{label:"Weekdays 9 AM",cron:"0 9 * * 1-5"},{label:"Weekly (Mon)",cron:"0 0 * * 1"},{label:"Monthly",cron:"0 0 1 * *"}],oZ=[{id:"backend",label:"Backend"},{id:"frontend",label:"Frontend"},{id:"fullstack",label:"Fullstack"},{id:"testing",label:"Testing"},{id:"devops",label:"DevOps"},{id:"docs",label:"Docs"},{id:"cmo",label:"CMO"},{id:"cfo",label:"CFO"},{id:"ea",label:"EA"},{id:"support",label:"Support"},{id:"analyst",label:"Analyst"}];function zE(t){if(!t)return"never";const e=Date.now()-new Date(t).getTime();return e<6e4?"just now":e<36e5?`${Math.floor(e/6e4)}m ago`:e<864e5?`${Math.floor(e/36e5)}h ago`:`${Math.floor(e/864e5)}d ago`}function jE({status:t}){const e={spawned:"var(--green)",skipped:"var(--amber)",error:"var(--red)"};return O.jsx("span",{style:{width:6,height:6,borderRadius:"50%",background:e[t]||"var(--text-muted)",display:"inline-block",marginRight:6}})}function aZ({onSubmit:t,onCancel:e}){const[i,n]=X.useState(""),[r,s]=X.useState("0 9 * * *"),[a,c]=X.useState("fullstack"),[h,d]=X.useState(""),[f,g]=X.useState(!1),[m,v]=X.useState("");async function S(_){if(_.preventDefault(),!i.trim()){v("Name is required");return}if(!h.trim()){v("Task prompt is required");return}g(!0),v("");try{await t({name:i.trim(),cron:r,agentConfig:{role:a,prompt:h.trim()}})}catch(w){v(w.message)}g(!1)}return O.jsxs("form",{onSubmit:S,style:Ee.form,children:[O.jsx("div",{style:Ee.formTitle,children:"New Schedule"}),O.jsx("label",{style:Ee.label,children:"NAME"}),O.jsx("input",{value:i,onChange:_=>n(_.target.value),placeholder:"e.g., Daily standup summary",style:Ee.input}),O.jsx("label",{style:Ee.label,children:"FREQUENCY"}),O.jsx("div",{style:Ee.presetRow,children:sZ.map(_=>O.jsx("button",{type:"button",onClick:()=>s(_.cron),style:{...Ee.presetBtn,borderColor:r===_.cron?"var(--accent)":"var(--border)",color:r===_.cron?"var(--accent)":"var(--text-dim)",background:r===_.cron?"rgba(51, 175, 188, 0.08)":"transparent"},children:_.label},_.cron))}),O.jsx("input",{value:r,onChange:_=>s(_.target.value),placeholder:"* * * * * (min hr day mon wkday)",style:{...Ee.input,fontFamily:"var(--font)",fontSize:11}}),O.jsx("label",{style:Ee.label,children:"AGENT ROLE"}),O.jsx("div",{style:Ee.presetRow,children:oZ.map(_=>O.jsx("button",{type:"button",onClick:()=>c(_.id),style:{...Ee.presetBtn,borderColor:a===_.id?"var(--accent)":"var(--border)",color:a===_.id?"var(--accent)":"var(--text-dim)",background:a===_.id?"rgba(51, 175, 188, 0.08)":"transparent"},children:_.label},_.id))}),O.jsx("label",{style:Ee.label,children:"TASK"}),O.jsx("textarea",{value:h,onChange:_=>d(_.target.value),placeholder:"What should this agent do each time it runs?",rows:3,style:Ee.textarea}),m&&O.jsx("div",{style:Ee.error,children:m}),O.jsxs("div",{style:Ee.formActions,children:[O.jsx("button",{type:"button",onClick:e,style:Ee.cancelBtn,children:"Cancel"}),O.jsx("button",{type:"submit",disabled:f,style:Ee.submitBtn,children:f?"Creating...":"Create Schedule"})]})]})}function lZ({schedule:t,onToggle:e,onRun:i,onDelete:n,onSelect:r}){var c;const[s,a]=X.useState(!1);return O.jsxs("div",{style:Ee.scheduleRow,onMouseEnter:h=>{h.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:h=>{h.currentTarget.style.background="var(--bg-surface)"},children:[O.jsxs("div",{style:Ee.scheduleMain,onClick:()=>r(t),children:[O.jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:t.enabled?t.isRunning?"var(--green)":"var(--accent)":"var(--text-muted)",flexShrink:0,animation:t.isRunning?"pulse 2s infinite":"none"}}),O.jsxs("div",{style:{flex:1,minWidth:0},children:[O.jsx("div",{style:Ee.scheduleName,children:t.name}),O.jsxs("div",{style:Ee.scheduleMeta,children:[O.jsx("span",{children:t.cronDescription||t.cron}),O.jsx("span",{style:{color:"var(--text-muted)"},children:(c=t.agentConfig)==null?void 0:c.role}),t.lastRun&&O.jsxs("span",{style:{color:"var(--text-muted)"},children:[O.jsx(jE,{status:t.lastRun.status}),zE(t.lastRun.timestamp)]})]})]})]}),O.jsxs("div",{style:Ee.scheduleActions,children:[O.jsx("button",{onClick:()=>e(t.id,!t.enabled),title:t.enabled?"Disable":"Enable",style:{...Ee.actionBtn,color:t.enabled?"var(--green)":"var(--text-muted)"},children:t.enabled?"ON":"OFF"}),O.jsx("button",{onClick:()=>i(t.id),title:"Run now",style:{...Ee.actionBtn,color:"var(--accent)"},children:"▶"}),s?O.jsx("button",{onClick:()=>{n(t.id),a(!1)},style:{...Ee.actionBtn,color:"var(--red)"},children:"confirm"}):O.jsx("button",{onClick:()=>a(!0),style:{...Ee.actionBtn,color:"var(--text-muted)"},children:"✕"})]})]})}function cZ({schedule:t,onClose:e}){var i,n;return t?O.jsxs("div",{style:Ee.detailPanel,children:[O.jsxs("div",{style:Ee.detailHeader,children:[O.jsx("div",{style:Ee.detailTitle,children:t.name}),O.jsx("button",{onClick:e,style:Ee.detailClose,children:"×"})]}),O.jsxs("div",{style:Ee.detailGrid,children:[O.jsx("div",{style:Ee.detailLabel,children:"Cron"}),O.jsx("div",{style:Ee.detailValue,children:t.cron}),O.jsx("div",{style:Ee.detailLabel,children:"Description"}),O.jsx("div",{style:Ee.detailValue,children:t.cronDescription}),O.jsx("div",{style:Ee.detailLabel,children:"Role"}),O.jsx("div",{style:Ee.detailValue,children:(i=t.agentConfig)==null?void 0:i.role}),O.jsx("div",{style:Ee.detailLabel,children:"Status"}),O.jsx("div",{style:Ee.detailValue,children:O.jsx("span",{style:{color:t.enabled?"var(--green)":"var(--text-muted)"},children:t.enabled?"Enabled":"Disabled"})}),O.jsx("div",{style:Ee.detailLabel,children:"Created"}),O.jsx("div",{style:Ee.detailValue,children:new Date(t.createdAt).toLocaleString()})]}),((n=t.agentConfig)==null?void 0:n.prompt)&&O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:Ee.detailLabel,children:"Task Prompt"}),O.jsx("pre",{style:Ee.promptPre,children:t.agentConfig.prompt})]}),(t.history||[]).length>0&&O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:{...Ee.detailLabel,marginBottom:8},children:"Execution History"}),O.jsx("div",{style:Ee.historyList,children:t.history.slice(0,20).map((r,s)=>O.jsxs("div",{style:Ee.historyEntry,children:[O.jsx(jE,{status:r.status}),O.jsxs("span",{style:{fontSize:10,color:"var(--text-dim)",flex:1},children:[r.status,r.agentId&&O.jsxs("span",{style:{color:"var(--text-muted)"},children:[" (",r.agentId,")"]})]}),O.jsx("span",{style:{fontSize:9,color:"var(--text-muted)"},children:zE(r.timestamp)})]},s))})]})]}):null}function hZ(){const[t,e]=X.useState([]),[i,n]=X.useState(!0),[r,s]=X.useState(!1),[a,c]=X.useState(null),[h,d]=X.useState(""),f=X.useCallback(async()=>{try{const x=await fetch("/api/schedules");e(await x.json())}catch{}n(!1)},[]);X.useEffect(()=>{f();const x=setInterval(f,1e4);return()=>clearInterval(x)},[f]);async function g(x){const Q=await fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(x)});if(!Q.ok){const C=await Q.json();throw new Error(C.error||"Failed to create schedule")}s(!1),await f(),w("Schedule created")}async function m(x,Q){await fetch(`/api/schedules/${x}/${Q?"enable":"disable"}`,{method:"POST"}),await f()}async function v(x){try{await fetch(`/api/schedules/${x}/run`,{method:"POST"}),w("Agent spawned"),await f()}catch{w("Failed to run")}}async function S(x){await fetch(`/api/schedules/${x}`,{method:"DELETE"}),(a==null?void 0:a.id)===x&&c(null),await f(),w("Schedule deleted")}async function _(x){try{const Q=await fetch(`/api/schedules/${x.id}`);c(await Q.json())}catch{c(x)}}function w(x){d(x),setTimeout(()=>d(""),3e3)}return O.jsxs("div",{style:Ee.root,children:[O.jsxs("div",{style:Ee.headerBar,children:[O.jsxs("div",{style:Ee.headerLeft,children:[O.jsx("div",{style:Ee.title,children:"Schedules"}),O.jsxs("span",{style:Ee.headerCount,children:[t.length," schedule",t.length!==1?"s":""," • ",t.filter(x=>x.enabled).length," active"]})]}),O.jsx("button",{onClick:()=>{s(!0),c(null)},style:Ee.createBtn,children:"+ New Schedule"})]}),h&&O.jsx("div",{style:Ee.statusMsg,children:h}),O.jsxs("div",{style:Ee.mainRow,children:[O.jsxs("div",{style:Ee.listArea,children:[r&&O.jsx(aZ,{onSubmit:g,onCancel:()=>s(!1)}),i&&t.length===0&&O.jsx("div",{style:Ee.empty,children:"Loading schedules..."}),!i&&t.length===0&&!r&&O.jsxs("div",{style:Ee.empty,children:[O.jsx("div",{style:{fontSize:13,marginBottom:8},children:"No schedules yet"}),O.jsx("div",{style:{fontSize:11,color:"var(--text-muted)"},children:"Create a schedule to run agents on a recurring basis — daily standups, weekly reports, monitoring checks."})]}),t.map(x=>O.jsx(lZ,{schedule:x,onToggle:m,onRun:v,onDelete:S,onSelect:_},x.id))]}),a&&O.jsx(cZ,{schedule:a,onClose:()=>c(null)})]})]})}const Ee={root:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},headerBar:{padding:"12px 20px",display:"flex",alignItems:"center",justifyContent:"space-between",flexShrink:0},headerLeft:{display:"flex",alignItems:"center",gap:12},title:{fontSize:15,fontWeight:700,color:"var(--text-bright)",letterSpacing:.3},headerCount:{fontSize:11,color:"var(--text-muted)"},createBtn:{padding:"6px 14px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:6,fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},statusMsg:{padding:"4px 20px",fontSize:10,color:"var(--green)",flexShrink:0},mainRow:{flex:1,display:"flex",overflow:"hidden"},listArea:{flex:1,overflowY:"auto",padding:"0 20px 20px"},empty:{padding:"60px 20px",textAlign:"center",color:"var(--text-dim)",fontSize:12},scheduleRow:{display:"flex",alignItems:"center",padding:"10px 12px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:6,marginBottom:4,cursor:"pointer",transition:"background 0.1s"},scheduleMain:{display:"flex",alignItems:"center",gap:10,flex:1,minWidth:0},scheduleName:{fontSize:12,fontWeight:600,color:"var(--text-bright)"},scheduleMeta:{display:"flex",gap:10,fontSize:10,color:"var(--text-dim)",marginTop:2},scheduleActions:{display:"flex",gap:4,flexShrink:0},actionBtn:{padding:"3px 8px",background:"transparent",border:"1px solid var(--border)",borderRadius:4,fontSize:9,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer"},form:{padding:"16px",background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:8,marginBottom:12},formTitle:{fontSize:13,fontWeight:700,color:"var(--text-bright)",marginBottom:12},label:{display:"block",fontSize:9,fontWeight:700,color:"var(--text-muted)",letterSpacing:.5,textTransform:"uppercase",marginTop:10,marginBottom:4},input:{width:"100%",padding:"7px 10px",background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:5,color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none",boxSizing:"border-box"},textarea:{width:"100%",padding:"7px 10px",background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:5,color:"var(--text-primary)",fontSize:12,fontFamily:"var(--font)",outline:"none",resize:"vertical",boxSizing:"border-box"},presetRow:{display:"flex",gap:4,flexWrap:"wrap",marginBottom:6},presetBtn:{padding:"3px 10px",background:"transparent",border:"1px solid var(--border)",borderRadius:10,fontSize:10,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer",transition:"all 0.1s"},error:{fontSize:11,color:"var(--red)",marginTop:8},formActions:{display:"flex",gap:8,justifyContent:"flex-end",marginTop:14},cancelBtn:{padding:"6px 14px",background:"transparent",color:"var(--text-dim)",border:"1px solid var(--border)",borderRadius:5,fontSize:11,fontWeight:500,cursor:"pointer",fontFamily:"var(--font)"},submitBtn:{padding:"6px 14px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:5,fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},detailPanel:{width:320,flexShrink:0,borderLeft:"1px solid var(--border)",padding:"16px",overflowY:"auto"},detailHeader:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:16},detailTitle:{fontSize:14,fontWeight:700,color:"var(--text-bright)"},detailClose:{background:"none",border:"none",color:"var(--text-muted)",fontSize:18,cursor:"pointer",fontFamily:"var(--font)"},detailGrid:{display:"grid",gridTemplateColumns:"80px 1fr",gap:"6px 10px"},detailLabel:{fontSize:10,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase"},detailValue:{fontSize:11,color:"var(--text-primary)"},promptPre:{fontSize:11,color:"var(--text-primary)",lineHeight:1.5,padding:"8px 10px",background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:4,whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:"var(--font)",maxHeight:200,overflowY:"auto",marginTop:4},historyList:{display:"flex",flexDirection:"column",gap:4},historyEntry:{display:"flex",alignItems:"center",gap:4,padding:"4px 8px",borderRadius:4,background:"var(--bg-base)"}},m2={javascript:"#e5c07b",typescript:"#61afef",css:"#c678dd",html:"#e06c75",json:"#4ae168",markdown:"#c678dd",python:"#61afef",rust:"#e06c75",go:"#33afbc",shell:"#4ae168",text:"#abb2bf"};function DE({entry:t,depth:e,activeFile:i,expandedDirs:n,onToggleDir:r,onFileClick:s,onContextMenu:a,renamingPath:c,renameValue:h,onRenameChange:d,onRenameSubmit:f,onRenameCancel:g}){const m=t.type==="dir",v=n.has(t.path),S=!m&&t.path===i,_=c===t.path,x=Ce(Q=>Q.editorTreeCache)[t.path]||[];return O.jsxs(O.Fragment,{children:[O.jsxs("div",{onClick:()=>m?r(t.path,t.hasChildren):s(t.path),onContextMenu:Q=>a(Q,t),style:{...Gt.row,paddingLeft:12+e*16,background:S?"var(--bg-active)":"transparent",borderLeft:S?"2px solid var(--accent)":"2px solid transparent"},children:[m?O.jsx("span",{style:Gt.arrow,children:v?"▾":"▸"}):O.jsx("span",{style:{...Gt.fileDot,background:m2[t.language]||m2.text}}),_?O.jsx("input",{autoFocus:!0,value:h,onChange:Q=>d(Q.target.value),onKeyDown:Q=>{Q.key==="Enter"&&f(),Q.key==="Escape"&&g()},onBlur:g,onClick:Q=>Q.stopPropagation(),style:Gt.renameInput}):O.jsx("span",{style:{...Gt.name,color:m?"var(--text-primary)":S?"var(--text-bright)":"var(--text-primary)",fontWeight:m?600:400},children:t.name}),!m&&!_&&t.size>0&&O.jsx("span",{style:Gt.size,children:uZ(t.size)})]}),m&&v&&x.map(Q=>O.jsx(DE,{entry:Q,depth:e+1,activeFile:i,expandedDirs:n,onToggleDir:r,onFileClick:s,onContextMenu:a,renamingPath:c,renameValue:h,onRenameChange:d,onRenameSubmit:f,onRenameCancel:g},Q.path))]})}function uZ(t){return t<1024?`${t}B`:t<1024*1024?`${(t/1024).toFixed(0)}K`:`${(t/(1024*1024)).toFixed(1)}M`}function dZ({x:t,y:e,entry:i,onClose:n,onAction:r}){const s=X.useRef(null);X.useEffect(()=>{const h=d=>{s.current&&!s.current.contains(d.target)&&n()};return document.addEventListener("mousedown",h),()=>document.removeEventListener("mousedown",h)},[n]);const a=(i==null?void 0:i.type)==="dir",c=[{label:"New File",action:a?"newFileIn":"newFileSibling"},{label:"New Folder",action:a?"newDirIn":"newDirSibling"},{sep:!0},{label:"Rename",action:"rename"},{label:"Delete",action:"delete",danger:!0}];return O.jsx("div",{ref:s,style:{...Gt.contextMenu,left:t,top:e},children:c.map((h,d)=>h.sep?O.jsx("div",{style:Gt.contextSep},d):O.jsx("div",{onClick:()=>{r(h.action,i),n()},style:{...Gt.contextItem,color:h.danger?"var(--red)":"var(--text-primary)"},children:h.label},h.action))})}function O2({placeholder:t,onSubmit:e,onCancel:i,depth:n}){const[r,s]=X.useState("");return O.jsx("div",{style:{...Gt.row,paddingLeft:12+(n||0)*16},children:O.jsx("input",{autoFocus:!0,placeholder:t,value:r,onChange:a=>s(a.target.value),onKeyDown:a=>{a.key==="Enter"&&r.trim()&&e(r.trim()),a.key==="Escape"&&i()},onBlur:i,style:Gt.renameInput})})}function fZ(){const t=Ce(j=>j.editorTreeCache),e=Ce(j=>j.editorActiveFile),i=Ce(j=>j.fetchTreeDir),n=Ce(j=>j.openFile),r=Ce(j=>j.createFile),s=Ce(j=>j.createDir),a=Ce(j=>j.deleteFile),c=Ce(j=>j.renameFile),[h,d]=X.useState(new Set([""])),[f,g]=X.useState(""),[m,v]=X.useState(null),[S,_]=X.useState(null),[w,x]=X.useState(null),[Q,C]=X.useState("");X.useEffect(()=>{i("")},[i]);const T=X.useCallback((j,B)=>{d(E=>{const W=new Set(E);return W.has(j)?W.delete(j):(W.add(j),(B||!t[j])&&i(j)),W})},[i,t]),A=X.useCallback((j,B)=>{j.preventDefault(),j.stopPropagation(),v({x:j.clientX,y:j.clientY,entry:B})},[]),P=X.useCallback(async(j,B)=>{const E=B.path.includes("/")?B.path.split("/").slice(0,-1).join("/"):"";switch(j){case"newFileIn":_({type:"file",parentPath:B.path}),d(W=>{const $=new Set(W);return $.add(B.path),t[B.path]||i(B.path),$});break;case"newDirIn":_({type:"dir",parentPath:B.path}),d(W=>{const $=new Set(W);return $.add(B.path),t[B.path]||i(B.path),$});break;case"newFileSibling":_({type:"file",parentPath:E});break;case"newDirSibling":_({type:"dir",parentPath:E});break;case"rename":x(B.path),C(B.name);break;case"delete":confirm(`Delete "${B.name}"?`)&&await a(B.path);break}},[a,i,t]),M=X.useCallback(async j=>{if(!S)return;const B=S.parentPath?`${S.parentPath}/${j}`:j,E=S.type==="file"?await r(B):await s(B);_(null),E&&S.type==="file"&&n(B)},[S,r,s,n]),V=X.useCallback(async()=>{if(!w||!Q.trim()){x(null);return}const j=w.includes("/")?w.split("/").slice(0,-1).join("/"):"",B=j?`${j}/${Q.trim()}`:Q.trim();B!==w&&await c(w,B),x(null)},[w,Q,c]),H=X.useCallback(j=>{j.target===j.currentTarget&&(j.preventDefault(),v({x:j.clientX,y:j.clientY,entry:{type:"dir",path:"",name:"root"}}))},[]),G=t[""]||[],N=f?G.filter(j=>j.name.toLowerCase().includes(f.toLowerCase())):G;return S&&(S.parentPath===""||S.parentPath.split("/").length),O.jsxs("div",{style:Gt.container,children:[O.jsxs("div",{style:Gt.toolbar,children:[O.jsx("span",{style:Gt.toolbarTitle,children:"FILES"}),O.jsxs("div",{style:Gt.toolbarActions,children:[O.jsx("button",{onClick:()=>_({type:"file",parentPath:""}),title:"New File",style:Gt.toolbarBtn,children:O.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.3",children:[O.jsx("path",{d:"M3 1.5h6l4 4V14a.5.5 0 01-.5.5h-9A.5.5 0 013 14V2a.5.5 0 01.5-.5z"}),O.jsx("path",{d:"M9 1.5V5.5h4"}),O.jsx("path",{d:"M8 8.5v4M6 10.5h4",strokeLinecap:"round"})]})}),O.jsx("button",{onClick:()=>_({type:"dir",parentPath:""}),title:"New Folder",style:Gt.toolbarBtn,children:O.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.3",children:[O.jsx("path",{d:"M1.5 3.5h4l1.5 1.5H14a.5.5 0 01.5.5v8a.5.5 0 01-.5.5H2a.5.5 0 01-.5-.5V4z"}),O.jsx("path",{d:"M8 8v3M6.5 9.5h3",strokeLinecap:"round"})]})})]})]}),O.jsx("div",{style:Gt.searchWrap,children:O.jsx("input",{type:"text",placeholder:"Filter...",value:f,onChange:j=>g(j.target.value),style:Gt.searchInput})}),O.jsxs("div",{style:Gt.tree,onContextMenu:H,children:[N.length===0&&!S&&O.jsx("div",{style:Gt.empty,children:G.length===0?"Loading...":"No matches"}),S&&S.parentPath===""&&O.jsx(O2,{placeholder:S.type==="file"?"filename.ext":"folder-name",onSubmit:M,onCancel:()=>_(null),depth:0}),N.map(j=>O.jsxs(In.Fragment,{children:[O.jsx(DE,{entry:j,depth:0,activeFile:e,expandedDirs:h,onToggleDir:T,onFileClick:n,onContextMenu:A,renamingPath:w,renameValue:Q,onRenameChange:C,onRenameSubmit:V,onRenameCancel:()=>x(null)}),S&&S.parentPath===j.path&&h.has(j.path)&&O.jsx(O2,{placeholder:S.type==="file"?"filename.ext":"folder-name",onSubmit:M,onCancel:()=>_(null),depth:1})]},j.path))]}),m&&O.jsx(dZ,{x:m.x,y:m.y,entry:m.entry,onClose:()=>v(null),onAction:P})]})}const Gt={container:{display:"flex",flexDirection:"column",height:"100%",background:"var(--bg-chrome)",position:"relative"},toolbar:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"6px 10px",borderBottom:"1px solid var(--border)"},toolbarTitle:{fontSize:10,fontWeight:700,letterSpacing:1,color:"var(--text-dim)",textTransform:"uppercase"},toolbarActions:{display:"flex",gap:2},toolbarBtn:{background:"none",border:"none",color:"var(--text-dim)",fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)",padding:"2px 5px",borderRadius:3,lineHeight:1},searchWrap:{padding:"6px 8px",borderBottom:"1px solid var(--border)"},searchInput:{width:"100%",padding:"5px 8px",background:"var(--bg-base)",border:"1px solid var(--border)",borderRadius:3,color:"var(--text-primary)",fontSize:11,fontFamily:"var(--font)",outline:"none"},tree:{flex:1,overflowY:"auto",overflowX:"hidden"},row:{display:"flex",alignItems:"center",gap:6,padding:"4px 12px",cursor:"pointer",transition:"background 0.08s",whiteSpace:"nowrap"},arrow:{fontSize:10,color:"var(--text-muted)",width:10,flexShrink:0,textAlign:"center"},fileDot:{width:6,height:6,borderRadius:"50%",flexShrink:0},name:{fontSize:12,overflow:"hidden",textOverflow:"ellipsis",flex:1,minWidth:0},size:{fontSize:9,color:"var(--text-muted)",flexShrink:0},empty:{padding:16,textAlign:"center",fontSize:11,color:"var(--text-dim)"},renameInput:{flex:1,padding:"2px 6px",background:"var(--bg-base)",border:"1px solid var(--accent)",borderRadius:2,color:"var(--text-bright)",fontSize:12,fontFamily:"var(--font)",outline:"none",minWidth:0},contextMenu:{position:"fixed",zIndex:300,background:"var(--bg-surface)",border:"1px solid var(--border)",borderRadius:4,padding:"4px 0",minWidth:160,boxShadow:"0 8px 24px rgba(0,0,0,0.4)",fontFamily:"var(--font)"},contextItem:{padding:"6px 14px",fontSize:11,cursor:"pointer",transition:"background 0.08s"},contextSep:{height:1,background:"var(--border)",margin:"4px 0"}};function pZ(){const t=Ce(s=>s.editorOpenTabs),e=Ce(s=>s.editorActiveFile),i=Ce(s=>s.editorFiles),n=Ce(s=>s.setActiveFile),r=Ce(s=>s.closeFile);return t.length===0?null:O.jsx("div",{style:Kh.container,children:t.map(s=>{const a=i[s],c=s===e,h=a&&a.content!==a.originalContent,d=s.split("/").pop();return O.jsxs("div",{onClick:()=>n(s),title:s,style:{...Kh.tab,color:c?"var(--text-bright)":"var(--text-primary)",borderBottom:c?"1px solid var(--accent)":"1px solid transparent",background:c?"var(--bg-base)":"transparent"},children:[h&&O.jsx("span",{style:Kh.dirtyDot}),O.jsx("span",{style:Kh.tabName,children:d}),O.jsx("button",{onClick:f=>{f.stopPropagation(),r(s)},style:Kh.closeBtn,children:"x"})]},s)})})}const Kh={container:{display:"flex",alignItems:"center",height:32,flexShrink:0,background:"var(--bg-chrome)",borderBottom:"1px solid var(--border)",overflowX:"auto",overflowY:"hidden"},tab:{display:"flex",alignItems:"center",gap:5,padding:"0 12px",height:"100%",cursor:"pointer",whiteSpace:"nowrap",fontSize:11,fontFamily:"var(--font)",transition:"background 0.08s",borderRight:"1px solid rgba(75, 82, 99, 0.4)",flexShrink:0},tabName:{overflow:"hidden",textOverflow:"ellipsis",maxWidth:140},dirtyDot:{width:6,height:6,borderRadius:"50%",background:"var(--amber)",flexShrink:0},closeBtn:{background:"none",border:"none",color:"var(--text-muted)",fontSize:10,cursor:"pointer",fontFamily:"var(--font)",padding:"0 2px",lineHeight:1,opacity:.6}};let Xy=[],BE=[];(()=>{let t="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,i=0;e<t.length;e++)(e%2?BE:Xy).push(i=i+t[e])})();function gZ(t){if(t<768)return!1;for(let e=0,i=Xy.length;;){let n=e+i>>1;if(t<Xy[n])i=n;else if(t>=BE[n])e=n+1;else return!0;if(e==i)return!1}}function v2(t){return t>=127462&&t<=127487}const y2=8205;function mZ(t,e,i=!0,n=!0){return(i?LE:OZ)(t,e,n)}function LE(t,e,i){if(e==t.length)return e;e&&XE(t.charCodeAt(e))&&NE(t.charCodeAt(e-1))&&e--;let n=vv(t,e);for(e+=S2(n);e<t.length;){let r=vv(t,e);if(n==y2||r==y2||i&&gZ(r))e+=S2(r),n=r;else if(v2(r)){let s=0,a=e-2;for(;a>=0&&v2(vv(t,a));)s++,a-=2;if(s%2==0)break;e+=2}else break}return e}function OZ(t,e,i){for(;e>0;){let n=LE(t,e-2,i);if(n<e)return n;e--}return 0}function vv(t,e){let i=t.charCodeAt(e);if(!NE(i)||e+1==t.length)return i;let n=t.charCodeAt(e+1);return XE(n)?(i-55296<<10)+(n-56320)+65536:i}function XE(t){return t>=56320&&t<57344}function NE(t){return t>=55296&&t<56320}function S2(t){return t<65536?1:2}let dt=class ZE{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,i,n){[e,i]=Mc(this,e,i);let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(i,this.length,r,1),Jr.from(r,this.length-(i-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,i=this.length){[e,i]=Mc(this,e,i);let n=[];return this.decompose(e,i,n,0),Jr.from(n,i-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let i=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),r=new ku(this),s=new ku(e);for(let a=i,c=i;;){if(r.next(a),s.next(a),a=0,r.lineBreak!=s.lineBreak||r.done!=s.done||r.value!=s.value)return!1;if(c+=r.value.length,r.done||c>=n)return!0}}iter(e=1){return new ku(this,e)}iterRange(e,i=this.length){return new WE(this,e,i)}iterLines(e,i){let n;if(e==null)n=this.iter();else{i==null&&(i=this.lines+1);let r=this.line(e).from;n=this.iterRange(r,Math.max(r,i==this.lines+1?this.length:i<=1?0:this.line(i-1).to))}return new qE(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?ZE.empty:e.length<=32?new Ft(e):Jr.from(Ft.split(e,[]))}};class Ft extends dt{constructor(e,i=vZ(e)){super(),this.text=e,this.length=i}get lines(){return this.text.length}get children(){return null}lineInner(e,i,n,r){for(let s=0;;s++){let a=this.text[s],c=r+a.length;if((i?n:c)>=e)return new yZ(r,c,n,a);r=c+1,n++}}decompose(e,i,n,r){let s=e<=0&&i>=this.length?this:new Ft(b2(this.text,e,i),Math.min(i,this.length)-Math.max(0,e));if(r&1){let a=n.pop(),c=Vp(s.text,a.text.slice(),0,s.length);if(c.length<=32)n.push(new Ft(c,a.length+s.length));else{let h=c.length>>1;n.push(new Ft(c.slice(0,h)),new Ft(c.slice(h)))}}else n.push(s)}replace(e,i,n){if(!(n instanceof Ft))return super.replace(e,i,n);[e,i]=Mc(this,e,i);let r=Vp(this.text,Vp(n.text,b2(this.text,0,e)),i),s=this.length+n.length-(i-e);return r.length<=32?new Ft(r,s):Jr.from(Ft.split(r,[]),s)}sliceString(e,i=this.length,n=`
104
- `){[e,i]=Mc(this,e,i);let r="";for(let s=0,a=0;s<=i&&a<this.text.length;a++){let c=this.text[a],h=s+c.length;s>e&&a&&(r+=n),e<h&&i>s&&(r+=c.slice(Math.max(0,e-s),i-s)),s=h+1}return r}flatten(e){for(let i of this.text)e.push(i)}scanIdentical(){return 0}static split(e,i){let n=[],r=-1;for(let s of e)n.push(s),r+=s.length+1,n.length==32&&(i.push(new Ft(n,r)),n=[],r=-1);return r>-1&&i.push(new Ft(n,r)),i}}class Jr extends dt{constructor(e,i){super(),this.children=e,this.length=i,this.lines=0;for(let n of e)this.lines+=n.lines}lineInner(e,i,n,r){for(let s=0;;s++){let a=this.children[s],c=r+a.length,h=n+a.lines-1;if((i?h:c)>=e)return a.lineInner(e,i,n,r);r=c+1,n=h+1}}decompose(e,i,n,r){for(let s=0,a=0;a<=i&&s<this.children.length;s++){let c=this.children[s],h=a+c.length;if(e<=h&&i>=a){let d=r&((a<=e?1:0)|(h>=i?2:0));a>=e&&h<=i&&!d?n.push(c):c.decompose(e-a,i-a,n,d)}a=h+1}}replace(e,i,n){if([e,i]=Mc(this,e,i),n.lines<this.lines)for(let r=0,s=0;r<this.children.length;r++){let a=this.children[r],c=s+a.length;if(e>=s&&i<=c){let h=a.replace(e-s,i-s,n),d=this.lines-a.lines+h.lines;if(h.lines<d>>4&&h.lines>d>>6){let f=this.children.slice();return f[r]=h,new Jr(f,this.length-(i-e)+n.length)}return super.replace(s,c,h)}s=c+1}return super.replace(e,i,n)}sliceString(e,i=this.length,n=`
105
- `){[e,i]=Mc(this,e,i);let r="";for(let s=0,a=0;s<this.children.length&&a<=i;s++){let c=this.children[s],h=a+c.length;a>e&&s&&(r+=n),e<h&&i>a&&(r+=c.sliceString(e-a,i-a,n)),a=h+1}return r}flatten(e){for(let i of this.children)i.flatten(e)}scanIdentical(e,i){if(!(e instanceof Jr))return 0;let n=0,[r,s,a,c]=i>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=i,s+=i){if(r==a||s==c)return n;let h=this.children[r],d=e.children[s];if(h!=d)return n+h.scanIdentical(d,i);n+=h.length+1}}static from(e,i=e.reduce((n,r)=>n+r.length+1,-1)){let n=0;for(let v of e)n+=v.lines;if(n<32){let v=[];for(let S of e)S.flatten(v);return new Ft(v,i)}let r=Math.max(32,n>>5),s=r<<1,a=r>>1,c=[],h=0,d=-1,f=[];function g(v){let S;if(v.lines>s&&v instanceof Jr)for(let _ of v.children)g(_);else v.lines>a&&(h>a||!h)?(m(),c.push(v)):v instanceof Ft&&h&&(S=f[f.length-1])instanceof Ft&&v.lines+S.lines<=32?(h+=v.lines,d+=v.length+1,f[f.length-1]=new Ft(S.text.concat(v.text),S.length+1+v.length)):(h+v.lines>r&&m(),h+=v.lines,d+=v.length+1,f.push(v))}function m(){h!=0&&(c.push(f.length==1?f[0]:Jr.from(f,d)),d=-1,h=f.length=0)}for(let v of e)g(v);return m(),c.length==1?c[0]:new Jr(c,i)}}dt.empty=new Ft([""],0);function vZ(t){let e=-1;for(let i of t)e+=i.length+1;return e}function Vp(t,e,i=0,n=1e9){for(let r=0,s=0,a=!0;s<t.length&&r<=n;s++){let c=t[s],h=r+c.length;h>=i&&(h>n&&(c=c.slice(0,n-r)),r<i&&(c=c.slice(i-r)),a?(e[e.length-1]+=c,a=!1):e.push(c)),r=h+1}return e}function b2(t,e,i){return Vp(t,[""],e,i)}class ku{constructor(e,i=1){this.dir=i,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[i>0?1:(e instanceof Ft?e.text.length:e.children.length)<<1]}nextInner(e,i){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],s=this.offsets[n],a=s>>1,c=r instanceof Ft?r.text.length:r.children.length;if(a==(i>0?c:0)){if(n==0)return this.done=!0,this.value="",this;i>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((s&1)==(i>0?0:1)){if(this.offsets[n]+=i,e==0)return this.lineBreak=!0,this.value=`
106
- `,this;e--}else if(r instanceof Ft){let h=r.text[a+(i<0?-1:0)];if(this.offsets[n]+=i,h.length>Math.max(0,e))return this.value=e==0?h:i>0?h.slice(e):h.slice(0,h.length-e),this;e-=h.length}else{let h=r.children[a+(i<0?-1:0)];e>h.length?(e-=h.length,this.offsets[n]+=i):(i<0&&this.offsets[n]--,this.nodes.push(h),this.offsets.push(i>0?1:(h instanceof Ft?h.text.length:h.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class WE{constructor(e,i,n){this.value="",this.done=!1,this.cursor=new ku(e,i>n?-1:1),this.pos=i>n?e.length:0,this.from=Math.min(i,n),this.to=Math.max(i,n)}nextInner(e,i){if(i<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,i<0?this.pos-this.to:this.from-this.pos);let n=i<0?this.pos-this.from:this.to-this.pos;e>n&&(e=n),n-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*i,this.value=r.length<=n?r:i<0?r.slice(r.length-n):r.slice(0,n),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class qE{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:i,lineBreak:n,value:r}=this.inner.next(e);return i&&this.afterBreak?(this.value="",this.afterBreak=!1):i?(this.done=!0,this.value=""):n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(dt.prototype[Symbol.iterator]=function(){return this.iter()},ku.prototype[Symbol.iterator]=WE.prototype[Symbol.iterator]=qE.prototype[Symbol.iterator]=function(){return this});let yZ=class{constructor(e,i,n,r){this.from=e,this.to=i,this.number=n,this.text=r}get length(){return this.to-this.from}};function Mc(t,e,i){return e=Math.max(0,Math.min(t.length,e)),[e,Math.max(e,Math.min(t.length,i))]}function Qi(t,e,i=!0,n=!0){return mZ(t,e,i,n)}function SZ(t){return t>=56320&&t<57344}function bZ(t){return t>=55296&&t<56320}function Yo(t,e){let i=t.charCodeAt(e);if(!bZ(i)||e+1==t.length)return i;let n=t.charCodeAt(e+1);return SZ(n)?(i-55296<<10)+(n-56320)+65536:i}function IE(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode((t>>10)+55296,(t&1023)+56320))}function Za(t){return t<65536?1:2}const Ny=/\r\n?|\n/;var nn=(function(t){return t[t.Simple=0]="Simple",t[t.TrackDel=1]="TrackDel",t[t.TrackBefore=2]="TrackBefore",t[t.TrackAfter=3]="TrackAfter",t})(nn||(nn={}));class as{constructor(e){this.sections=e}get length(){let e=0;for(let i=0;i<this.sections.length;i+=2)e+=this.sections[i];return e}get newLength(){let e=0;for(let i=0;i<this.sections.length;i+=2){let n=this.sections[i+1];e+=n<0?this.sections[i]:n}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let i=0,n=0,r=0;i<this.sections.length;){let s=this.sections[i++],a=this.sections[i++];a<0?(e(n,r,s),r+=s):r+=a,n+=s}}iterChangedRanges(e,i=!1){Zy(this,e,i)}get invertedDesc(){let e=[];for(let i=0;i<this.sections.length;){let n=this.sections[i++],r=this.sections[i++];r<0?e.push(n,r):e.push(r,n)}return new as(e)}composeDesc(e){return this.empty?e:e.empty?this:VE(this,e)}mapDesc(e,i=!1){return e.empty?this:Wy(this,e,i)}mapPos(e,i=-1,n=nn.Simple){let r=0,s=0;for(let a=0;a<this.sections.length;){let c=this.sections[a++],h=this.sections[a++],d=r+c;if(h<0){if(d>e)return s+(e-r);s+=c}else{if(n!=nn.Simple&&d>=e&&(n==nn.TrackDel&&r<e&&d>e||n==nn.TrackBefore&&r<e||n==nn.TrackAfter&&d>e))return null;if(d>e||d==e&&i<0&&!c)return e==r||i<0?s:s+h;s+=h}r=d}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return s}touchesRange(e,i=e){for(let n=0,r=0;n<this.sections.length&&r<=i;){let s=this.sections[n++],a=this.sections[n++],c=r+s;if(a>=0&&r<=i&&c>=e)return r<e&&c>i?"cover":!0;r=c}return!1}toString(){let e="";for(let i=0;i<this.sections.length;){let n=this.sections[i++],r=this.sections[i++];e+=(e?" ":"")+n+(r>=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(i=>typeof i!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new as(e)}static create(e){return new as(e)}}class Oi extends as{constructor(e,i){super(e),this.inserted=i}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return Zy(this,(i,n,r,s,a)=>e=e.replace(r,r+(n-i),a),!1),e}mapDesc(e,i=!1){return Wy(this,e,i,!0)}invert(e){let i=this.sections.slice(),n=[];for(let r=0,s=0;r<i.length;r+=2){let a=i[r],c=i[r+1];if(c>=0){i[r]=c,i[r+1]=a;let h=r>>1;for(;n.length<h;)n.push(dt.empty);n.push(a?e.slice(s,s+a):dt.empty)}s+=a}return new Oi(i,n)}compose(e){return this.empty?e:e.empty?this:VE(this,e,!0)}map(e,i=!1){return e.empty?this:Wy(this,e,i,!0)}iterChanges(e,i=!1){Zy(this,e,i)}get desc(){return as.create(this.sections)}filter(e){let i=[],n=[],r=[],s=new Wu(this);e:for(let a=0,c=0;;){let h=a==e.length?1e9:e[a++];for(;c<h||c==h&&s.len==0;){if(s.done)break e;let f=Math.min(s.len,h-c);Yi(r,f,-1);let g=s.ins==-1?-1:s.off==0?s.ins:0;Yi(i,f,g),g>0&&Jo(n,i,s.text),s.forward(f),c+=f}let d=e[a++];for(;c<d;){if(s.done)break e;let f=Math.min(s.len,d-c);Yi(i,f,-1),Yi(r,f,s.ins==-1?-1:s.off==0?s.ins:0),s.forward(f),c+=f}}return{changes:new Oi(i,n),filtered:as.create(r)}}toJSON(){let e=[];for(let i=0;i<this.sections.length;i+=2){let n=this.sections[i],r=this.sections[i+1];r<0?e.push(n):r==0?e.push([n]):e.push([n].concat(this.inserted[i>>1].toJSON()))}return e}static of(e,i,n){let r=[],s=[],a=0,c=null;function h(f=!1){if(!f&&!r.length)return;a<i&&Yi(r,i-a,-1);let g=new Oi(r,s);c=c?c.compose(g.map(c)):g,r=[],s=[],a=0}function d(f){if(Array.isArray(f))for(let g of f)d(g);else if(f instanceof Oi){if(f.length!=i)throw new RangeError(`Mismatched change set length (got ${f.length}, expected ${i})`);h(),c=c?c.compose(f.map(c)):f}else{let{from:g,to:m=g,insert:v}=f;if(g>m||g<0||m>i)throw new RangeError(`Invalid change range ${g} to ${m} (in doc of length ${i})`);let S=v?typeof v=="string"?dt.of(v.split(n||Ny)):v:dt.empty,_=S.length;if(g==m&&_==0)return;g<a&&h(),g>a&&Yi(r,g-a,-1),Yi(r,m-g,_),Jo(s,r,S),a=m}}return d(e),h(!c),c}static empty(e){return new Oi(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let i=[],n=[];for(let r=0;r<e.length;r++){let s=e[r];if(typeof s=="number")i.push(s,-1);else{if(!Array.isArray(s)||typeof s[0]!="number"||s.some((a,c)=>c&&typeof a!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(s.length==1)i.push(s[0],0);else{for(;n.length<r;)n.push(dt.empty);n[r]=dt.of(s.slice(1)),i.push(s[0],n[r].length)}}}return new Oi(i,n)}static createSet(e,i){return new Oi(e,i)}}function Yi(t,e,i,n=!1){if(e==0&&i<=0)return;let r=t.length-2;r>=0&&i<=0&&i==t[r+1]?t[r]+=e:r>=0&&e==0&&t[r]==0?t[r+1]+=i:n?(t[r]+=e,t[r+1]+=i):t.push(e,i)}function Jo(t,e,i){if(i.length==0)return;let n=e.length-2>>1;if(n<t.length)t[t.length-1]=t[t.length-1].append(i);else{for(;t.length<n;)t.push(dt.empty);t.push(i)}}function Zy(t,e,i){let n=t.inserted;for(let r=0,s=0,a=0;a<t.sections.length;){let c=t.sections[a++],h=t.sections[a++];if(h<0)r+=c,s+=c;else{let d=r,f=s,g=dt.empty;for(;d+=c,f+=h,h&&n&&(g=g.append(n[a-2>>1])),!(i||a==t.sections.length||t.sections[a+1]<0);)c=t.sections[a++],h=t.sections[a++];e(r,d,s,f,g),r=d,s=f}}}function Wy(t,e,i,n=!1){let r=[],s=n?[]:null,a=new Wu(t),c=new Wu(e);for(let h=-1;;){if(a.done&&c.len||c.done&&a.len)throw new Error("Mismatched change set lengths");if(a.ins==-1&&c.ins==-1){let d=Math.min(a.len,c.len);Yi(r,d,-1),a.forward(d),c.forward(d)}else if(c.ins>=0&&(a.ins<0||h==a.i||a.off==0&&(c.len<a.len||c.len==a.len&&!i))){let d=c.len;for(Yi(r,c.ins,-1);d;){let f=Math.min(a.len,d);a.ins>=0&&h<a.i&&a.len<=f&&(Yi(r,0,a.ins),s&&Jo(s,r,a.text),h=a.i),a.forward(f),d-=f}c.next()}else if(a.ins>=0){let d=0,f=a.len;for(;f;)if(c.ins==-1){let g=Math.min(f,c.len);d+=g,f-=g,c.forward(g)}else if(c.ins==0&&c.len<f)f-=c.len,c.next();else break;Yi(r,d,h<a.i?a.ins:0),s&&h<a.i&&Jo(s,r,a.text),h=a.i,a.forward(a.len-f)}else{if(a.done&&c.done)return s?Oi.createSet(r,s):as.create(r);throw new Error("Mismatched change set lengths")}}}function VE(t,e,i=!1){let n=[],r=i?[]:null,s=new Wu(t),a=new Wu(e);for(let c=!1;;){if(s.done&&a.done)return r?Oi.createSet(n,r):as.create(n);if(s.ins==0)Yi(n,s.len,0,c),s.next();else if(a.len==0&&!a.done)Yi(n,0,a.ins,c),r&&Jo(r,n,a.text),a.next();else{if(s.done||a.done)throw new Error("Mismatched change set lengths");{let h=Math.min(s.len2,a.len),d=n.length;if(s.ins==-1){let f=a.ins==-1?-1:a.off?0:a.ins;Yi(n,h,f,c),r&&f&&Jo(r,n,a.text)}else a.ins==-1?(Yi(n,s.off?0:s.len,h,c),r&&Jo(r,n,s.textBit(h))):(Yi(n,s.off?0:s.len,a.off?0:a.ins,c),r&&!a.off&&Jo(r,n,a.text));c=(s.ins>h||a.ins>=0&&a.len>h)&&(c||n.length>d),s.forward2(h),a.forward(h)}}}}class Wu{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,i=this.i-2>>1;return i>=e.length?dt.empty:e[i]}textBit(e){let{inserted:i}=this.set,n=this.i-2>>1;return n>=i.length&&!e?dt.empty:i[n].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class Va{constructor(e,i,n){this.from=e,this.to=i,this.flags=n}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,i=-1){let n,r;return this.empty?n=r=e.mapPos(this.from,i):(n=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),n==this.from&&r==this.to?this:new Va(n,r,this.flags)}extend(e,i=e,n=0){if(e<=this.anchor&&i>=this.anchor)return le.range(e,i,void 0,void 0,n);let r=Math.abs(e-this.anchor)>Math.abs(i-this.anchor)?e:i;return le.range(this.anchor,r,void 0,void 0,n)}eq(e,i=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!i||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return le.range(e.anchor,e.head)}static create(e,i,n){return new Va(e,i,n)}}class le{constructor(e,i){this.ranges=e,this.mainIndex=i}map(e,i=-1){return e.empty?this:le.create(this.ranges.map(n=>n.map(e,i)),this.mainIndex)}eq(e,i=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let n=0;n<this.ranges.length;n++)if(!this.ranges[n].eq(e.ranges[n],i))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new le([this.main],0)}addRange(e,i=!0){return le.create([e].concat(this.ranges),i?0:this.mainIndex+1)}replaceRange(e,i=this.mainIndex){let n=this.ranges.slice();return n[i]=e,le.create(n,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new le(e.ranges.map(i=>Va.fromJSON(i)),e.main)}static single(e,i=e){return new le([le.range(e,i)],0)}static create(e,i=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let n=0,r=0;r<e.length;r++){let s=e[r];if(s.empty?s.from<=n:s.from<n)return le.normalized(e.slice(),i);n=s.to}return new le(e,i)}static cursor(e,i=0,n,r){return Va.create(e,e,(i==0?0:i<0?8:16)|(n==null?7:Math.min(6,n))|(r??16777215)<<6)}static range(e,i,n,r,s){let a=(n??16777215)<<6|(r==null?7:Math.min(6,r));return!s&&e!=i&&(s=i<e?1:-1),i<e?Va.create(i,e,48|a):Va.create(e,i,(s?s<0?8:16:0)|a)}static normalized(e,i=0){let n=e[i];e.sort((r,s)=>r.from-s.from),i=e.indexOf(n);for(let r=1;r<e.length;r++){let s=e[r],a=e[r-1];if(s.empty?s.from<=a.to:s.from<a.to){let c=a.from,h=Math.max(s.to,a.to);r<=i&&i--,e.splice(--r,2,s.anchor>s.head?le.range(h,c):le.range(c,h))}}return new le(e,i)}}function YE(t,e){for(let i of t.ranges)if(i.to>e)throw new RangeError("Selection points outside of document")}let J1=0;class we{constructor(e,i,n,r,s){this.combine=e,this.compareInput=i,this.compare=n,this.isStatic=r,this.id=J1++,this.default=e([]),this.extensions=typeof s=="function"?s(this):s}get reader(){return this}static define(e={}){return new we(e.combine||(i=>i),e.compareInput||((i,n)=>i===n),e.compare||(e.combine?(i,n)=>i===n:eb),!!e.static,e.enables)}of(e){return new Yp([],this,0,e)}compute(e,i){if(this.isStatic)throw new Error("Can't compute a static facet");return new Yp(e,this,1,i)}computeN(e,i){if(this.isStatic)throw new Error("Can't compute a static facet");return new Yp(e,this,2,i)}from(e,i){return i||(i=n=>n),this.compute([e],n=>i(n.field(e)))}}function eb(t,e){return t==e||t.length==e.length&&t.every((i,n)=>i===e[n])}class Yp{constructor(e,i,n,r){this.dependencies=e,this.facet=i,this.type=n,this.value=r,this.id=J1++}dynamicSlot(e){var i;let n=this.value,r=this.facet.compareInput,s=this.id,a=e[s]>>1,c=this.type==2,h=!1,d=!1,f=[];for(let g of this.dependencies)g=="doc"?h=!0:g=="selection"?d=!0:(((i=e[g.id])!==null&&i!==void 0?i:1)&1)==0&&f.push(e[g.id]);return{create(g){return g.values[a]=n(g),1},update(g,m){if(h&&m.docChanged||d&&(m.docChanged||m.selection)||qy(g,f)){let v=n(g);if(c?!_2(v,g.values[a],r):!r(v,g.values[a]))return g.values[a]=v,1}return 0},reconfigure:(g,m)=>{let v,S=m.config.address[s];if(S!=null){let _=kg(m,S);if(this.dependencies.every(w=>w instanceof we?m.facet(w)===g.facet(w):w instanceof Un?m.field(w,!1)==g.field(w,!1):!0)||(c?_2(v=n(g),_,r):r(v=n(g),_)))return g.values[a]=_,0}else v=n(g);return g.values[a]=v,1}}}}function _2(t,e,i){if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++)if(!i(t[n],e[n]))return!1;return!0}function qy(t,e){let i=!1;for(let n of e)Cu(t,n)&1&&(i=!0);return i}function _Z(t,e,i){let n=i.map(h=>t[h.id]),r=i.map(h=>h.type),s=n.filter(h=>!(h&1)),a=t[e.id]>>1;function c(h){let d=[];for(let f=0;f<n.length;f++){let g=kg(h,n[f]);if(r[f]==2)for(let m of g)d.push(m);else d.push(g)}return e.combine(d)}return{create(h){for(let d of n)Cu(h,d);return h.values[a]=c(h),1},update(h,d){if(!qy(h,s))return 0;let f=c(h);return e.compare(f,h.values[a])?0:(h.values[a]=f,1)},reconfigure(h,d){let f=qy(h,n),g=d.config.facets[e.id],m=d.facet(e);if(g&&!f&&eb(i,g))return h.values[a]=m,0;let v=c(h);return e.compare(v,m)?(h.values[a]=m,0):(h.values[a]=v,1)}}}const up=we.define({static:!0});class Un{constructor(e,i,n,r,s){this.id=e,this.createF=i,this.updateF=n,this.compareF=r,this.spec=s,this.provides=void 0}static define(e){let i=new Un(J1++,e.create,e.update,e.compare||((n,r)=>n===r),e);return e.provide&&(i.provides=e.provide(i)),i}create(e){let i=e.facet(up).find(n=>n.field==this);return((i==null?void 0:i.create)||this.createF)(e)}slot(e){let i=e[this.id]>>1;return{create:n=>(n.values[i]=this.create(n),1),update:(n,r)=>{let s=n.values[i],a=this.updateF(s,r);return this.compareF(s,a)?0:(n.values[i]=a,1)},reconfigure:(n,r)=>{let s=n.facet(up),a=r.facet(up),c;return(c=s.find(h=>h.field==this))&&c!=a.find(h=>h.field==this)?(n.values[i]=c.create(n),1):r.config.address[this.id]!=null?(n.values[i]=r.field(this),0):(n.values[i]=this.create(n),1)}}}init(e){return[this,up.of({field:this,create:e})]}get extension(){return this}}const Wa={lowest:4,low:3,default:2,high:1,highest:0};function Jh(t){return e=>new HE(e,t)}const eo={highest:Jh(Wa.highest),high:Jh(Wa.high),default:Jh(Wa.default),low:Jh(Wa.low),lowest:Jh(Wa.lowest)};class HE{constructor(e,i){this.inner=e,this.prec=i}}class Od{of(e){return new Iy(this,e)}reconfigure(e){return Od.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Iy{constructor(e,i){this.compartment=e,this.inner=i}}class wg{constructor(e,i,n,r,s,a){for(this.base=e,this.compartments=i,this.dynamicSlots=n,this.address=r,this.staticValues=s,this.facets=a,this.statusTemplate=[];this.statusTemplate.length<n.length;)this.statusTemplate.push(0)}staticFacet(e){let i=this.address[e.id];return i==null?e.default:this.staticValues[i>>1]}static resolve(e,i,n){let r=[],s=Object.create(null),a=new Map;for(let m of xZ(e,i,a))m instanceof Un?r.push(m):(s[m.facet.id]||(s[m.facet.id]=[])).push(m);let c=Object.create(null),h=[],d=[];for(let m of r)c[m.id]=d.length<<1,d.push(v=>m.slot(v));let f=n==null?void 0:n.config.facets;for(let m in s){let v=s[m],S=v[0].facet,_=f&&f[m]||[];if(v.every(w=>w.type==0))if(c[S.id]=h.length<<1|1,eb(_,v))h.push(n.facet(S));else{let w=S.combine(v.map(x=>x.value));h.push(n&&S.compare(w,n.facet(S))?n.facet(S):w)}else{for(let w of v)w.type==0?(c[w.id]=h.length<<1|1,h.push(w.value)):(c[w.id]=d.length<<1,d.push(x=>w.dynamicSlot(x)));c[S.id]=d.length<<1,d.push(w=>_Z(w,S,v))}}let g=d.map(m=>m(c));return new wg(e,a,g,c,h,s)}}function xZ(t,e,i){let n=[[],[],[],[],[]],r=new Map;function s(a,c){let h=r.get(a);if(h!=null){if(h<=c)return;let d=n[h].indexOf(a);d>-1&&n[h].splice(d,1),a instanceof Iy&&i.delete(a.compartment)}if(r.set(a,c),Array.isArray(a))for(let d of a)s(d,c);else if(a instanceof Iy){if(i.has(a.compartment))throw new RangeError("Duplicate use of compartment in extensions");let d=e.get(a.compartment)||a.inner;i.set(a.compartment,d),s(d,c)}else if(a instanceof HE)s(a.inner,a.prec);else if(a instanceof Un)n[c].push(a),a.provides&&s(a.provides,c);else if(a instanceof Yp)n[c].push(a),a.facet.extensions&&s(a.facet.extensions,Wa.default);else{let d=a.extension;if(!d)throw new Error(`Unrecognized extension value in extension set (${a}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);s(d,c)}}return s(t,Wa.default),n.reduce((a,c)=>a.concat(c))}function Cu(t,e){if(e&1)return 2;let i=e>>1,n=t.status[i];if(n==4)throw new Error("Cyclic dependency between fields and/or facets");if(n&2)return n;t.status[i]=4;let r=t.computeSlot(t,t.config.dynamicSlots[i]);return t.status[i]=2|r}function kg(t,e){return e&1?t.config.staticValues[e>>1]:t.values[e>>1]}const UE=we.define(),Vy=we.define({combine:t=>t.some(e=>e),static:!0}),GE=we.define({combine:t=>t.length?t[0]:void 0,static:!0}),FE=we.define(),KE=we.define(),JE=we.define(),eR=we.define({combine:t=>t.length?t[0]:!1});class to{constructor(e,i){this.type=e,this.value=i}static define(){return new wZ}}class wZ{of(e){return new to(this,e)}}class kZ{constructor(e){this.map=e}of(e){return new Je(this,e)}}class Je{constructor(e,i){this.type=e,this.value=i}map(e){let i=this.type.map(this.value,e);return i===void 0?void 0:i==this.value?this:new Je(this.type,i)}is(e){return this.type==e}static define(e={}){return new kZ(e.map||(i=>i))}static mapEffects(e,i){if(!e.length)return e;let n=[];for(let r of e){let s=r.map(i);s&&n.push(s)}return n}}Je.reconfigure=Je.define();Je.appendConfig=Je.define();class li{constructor(e,i,n,r,s,a){this.startState=e,this.changes=i,this.selection=n,this.effects=r,this.annotations=s,this.scrollIntoView=a,this._doc=null,this._state=null,n&&YE(n,i.newLength),s.some(c=>c.type==li.time)||(this.annotations=s.concat(li.time.of(Date.now())))}static create(e,i,n,r,s,a){return new li(e,i,n,r,s,a)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let i of this.annotations)if(i.type==e)return i.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let i=this.annotation(li.userEvent);return!!(i&&(i==e||i.length>e.length&&i.slice(0,e.length)==e&&i[e.length]=="."))}}li.time=to.define();li.userEvent=to.define();li.addToHistory=to.define();li.remote=to.define();function CZ(t,e){let i=[];for(let n=0,r=0;;){let s,a;if(n<t.length&&(r==e.length||e[r]>=t[n]))s=t[n++],a=t[n++];else if(r<e.length)s=e[r++],a=e[r++];else return i;!i.length||i[i.length-1]<s?i.push(s,a):i[i.length-1]<a&&(i[i.length-1]=a)}}function tR(t,e,i){var n;let r,s,a;return i?(r=e.changes,s=Oi.empty(e.changes.length),a=t.changes.compose(e.changes)):(r=e.changes.map(t.changes),s=t.changes.mapDesc(e.changes,!0),a=t.changes.compose(r)),{changes:a,selection:e.selection?e.selection.map(s):(n=t.selection)===null||n===void 0?void 0:n.map(r),effects:Je.mapEffects(t.effects,r).concat(Je.mapEffects(e.effects,s)),annotations:t.annotations.length?t.annotations.concat(e.annotations):e.annotations,scrollIntoView:t.scrollIntoView||e.scrollIntoView}}function Yy(t,e,i){let n=e.selection,r=Oc(e.annotations);return e.userEvent&&(r=r.concat(li.userEvent.of(e.userEvent))),{changes:e.changes instanceof Oi?e.changes:Oi.of(e.changes||[],i,t.facet(GE)),selection:n&&(n instanceof le?n:le.single(n.anchor,n.head)),effects:Oc(e.effects),annotations:r,scrollIntoView:!!e.scrollIntoView}}function iR(t,e,i){let n=Yy(t,e.length?e[0]:{},t.doc.length);e.length&&e[0].filter===!1&&(i=!1);for(let s=1;s<e.length;s++){e[s].filter===!1&&(i=!1);let a=!!e[s].sequential;n=tR(n,Yy(t,e[s],a?n.changes.newLength:t.doc.length),a)}let r=li.create(t,n.changes,n.selection,n.effects,n.annotations,n.scrollIntoView);return QZ(i?TZ(r):r)}function TZ(t){let e=t.startState,i=!0;for(let r of e.facet(FE)){let s=r(t);if(s===!1){i=!1;break}Array.isArray(s)&&(i=i===!0?s:CZ(i,s))}if(i!==!0){let r,s;if(i===!1)s=t.changes.invertedDesc,r=Oi.empty(e.doc.length);else{let a=t.changes.filter(i);r=a.changes,s=a.filtered.mapDesc(a.changes).invertedDesc}t=li.create(e,r,t.selection&&t.selection.map(s),Je.mapEffects(t.effects,s),t.annotations,t.scrollIntoView)}let n=e.facet(KE);for(let r=n.length-1;r>=0;r--){let s=n[r](t);s instanceof li?t=s:Array.isArray(s)&&s.length==1&&s[0]instanceof li?t=s[0]:t=iR(e,Oc(s),!1)}return t}function QZ(t){let e=t.startState,i=e.facet(JE),n=t;for(let r=i.length-1;r>=0;r--){let s=i[r](t);s&&Object.keys(s).length&&(n=tR(n,Yy(e,s,t.changes.newLength),!0))}return n==t?t:li.create(e,t.changes,t.selection,n.effects,n.annotations,n.scrollIntoView)}const $Z=[];function Oc(t){return t==null?$Z:Array.isArray(t)?t:[t]}var Kt=(function(t){return t[t.Word=0]="Word",t[t.Space=1]="Space",t[t.Other=2]="Other",t})(Kt||(Kt={}));const PZ=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let Hy;try{Hy=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function EZ(t){if(Hy)return Hy.test(t);for(let e=0;e<t.length;e++){let i=t[e];if(/\w/.test(i)||i>"€"&&(i.toUpperCase()!=i.toLowerCase()||PZ.test(i)))return!0}return!1}function RZ(t){return e=>{if(!/\S/.test(e))return Kt.Space;if(EZ(e))return Kt.Word;for(let i=0;i<t.length;i++)if(e.indexOf(t[i])>-1)return Kt.Word;return Kt.Other}}class ct{constructor(e,i,n,r,s,a){this.config=e,this.doc=i,this.selection=n,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=s,a&&(a._state=this);for(let c=0;c<this.config.dynamicSlots.length;c++)Cu(this,c<<1);this.computeSlot=null}field(e,i=!0){let n=this.config.address[e.id];if(n==null){if(i)throw new RangeError("Field is not present in this state");return}return Cu(this,n),kg(this,n)}update(...e){return iR(this,e,!0)}applyTransaction(e){let i=this.config,{base:n,compartments:r}=i;for(let c of e.effects)c.is(Od.reconfigure)?(i&&(r=new Map,i.compartments.forEach((h,d)=>r.set(d,h)),i=null),r.set(c.value.compartment,c.value.extension)):c.is(Je.reconfigure)?(i=null,n=c.value):c.is(Je.appendConfig)&&(i=null,n=Oc(n).concat(c.value));let s;i?s=e.startState.values.slice():(i=wg.resolve(n,r,this),s=new ct(i,this.doc,this.selection,i.dynamicSlots.map(()=>null),(h,d)=>d.reconfigure(h,this),null).values);let a=e.startState.facet(Vy)?e.newSelection:e.newSelection.asSingle();new ct(i,e.newDoc,a,s,(c,h)=>h.update(c,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:e},range:le.cursor(i.from+e.length)}))}changeByRange(e){let i=this.selection,n=e(i.ranges[0]),r=this.changes(n.changes),s=[n.range],a=Oc(n.effects);for(let c=1;c<i.ranges.length;c++){let h=e(i.ranges[c]),d=this.changes(h.changes),f=d.map(r);for(let m=0;m<c;m++)s[m]=s[m].map(f);let g=r.mapDesc(d,!0);s.push(h.range.map(g)),r=r.compose(f),a=Je.mapEffects(a,f).concat(Je.mapEffects(Oc(h.effects),g))}return{changes:r,selection:le.create(s,i.mainIndex),effects:a}}changes(e=[]){return e instanceof Oi?e:Oi.of(e,this.doc.length,this.facet(ct.lineSeparator))}toText(e){return dt.of(e.split(this.facet(ct.lineSeparator)||Ny))}sliceDoc(e=0,i=this.doc.length){return this.doc.sliceString(e,i,this.lineBreak)}facet(e){let i=this.config.address[e.id];return i==null?e.default:(Cu(this,i),kg(this,i))}toJSON(e){let i={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let n in e){let r=e[n];r instanceof Un&&this.config.address[r.id]!=null&&(i[n]=r.spec.toJSON(this.field(e[n]),this))}return i}static fromJSON(e,i={},n){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let r=[];if(n){for(let s in n)if(Object.prototype.hasOwnProperty.call(e,s)){let a=n[s],c=e[s];r.push(a.init(h=>a.spec.fromJSON(c,h)))}}return ct.create({doc:e.doc,selection:le.fromJSON(e.selection),extensions:i.extensions?r.concat([i.extensions]):r})}static create(e={}){let i=wg.resolve(e.extensions||[],new Map),n=e.doc instanceof dt?e.doc:dt.of((e.doc||"").split(i.staticFacet(ct.lineSeparator)||Ny)),r=e.selection?e.selection instanceof le?e.selection:le.single(e.selection.anchor,e.selection.head):le.single(0);return YE(r,n.length),i.staticFacet(Vy)||(r=r.asSingle()),new ct(i,n,r,i.dynamicSlots.map(()=>null),(s,a)=>a.create(s),null)}get tabSize(){return this.facet(ct.tabSize)}get lineBreak(){return this.facet(ct.lineSeparator)||`
107
- `}get readOnly(){return this.facet(eR)}phrase(e,...i){for(let n of this.facet(ct.phrases))if(Object.prototype.hasOwnProperty.call(n,e)){e=n[e];break}return i.length&&(e=e.replace(/\$(\$|\d*)/g,(n,r)=>{if(r=="$")return"$";let s=+(r||1);return!s||s>i.length?n:i[s-1]})),e}languageDataAt(e,i,n=-1){let r=[];for(let s of this.facet(UE))for(let a of s(this,i,n))Object.prototype.hasOwnProperty.call(a,e)&&r.push(a[e]);return r}charCategorizer(e){let i=this.languageDataAt("wordChars",e);return RZ(i.length?i[0]:"")}wordAt(e){let{text:i,from:n,length:r}=this.doc.lineAt(e),s=this.charCategorizer(e),a=e-n,c=e-n;for(;a>0;){let h=Qi(i,a,!1);if(s(i.slice(h,a))!=Kt.Word)break;a=h}for(;c<r;){let h=Qi(i,c);if(s(i.slice(c,h))!=Kt.Word)break;c=h}return a==c?null:le.range(a+n,c+n)}}ct.allowMultipleSelections=Vy;ct.tabSize=we.define({combine:t=>t.length?t[0]:4});ct.lineSeparator=GE;ct.readOnly=eR;ct.phrases=we.define({compare(t,e){let i=Object.keys(t),n=Object.keys(e);return i.length==n.length&&i.every(r=>t[r]==e[r])}});ct.languageData=UE;ct.changeFilter=FE;ct.transactionFilter=KE;ct.transactionExtender=JE;Od.reconfigure=Je.define();function da(t,e,i={}){let n={};for(let r of t)for(let s of Object.keys(r)){let a=r[s],c=n[s];if(c===void 0)n[s]=a;else if(!(c===a||a===void 0))if(Object.hasOwnProperty.call(i,s))n[s]=i[s](c,a);else throw new Error("Config merge conflict for field "+s)}for(let r in e)n[r]===void 0&&(n[r]=e[r]);return n}class ra{eq(e){return this==e}range(e,i=e){return Uy.create(e,i,this)}}ra.prototype.startSide=ra.prototype.endSide=0;ra.prototype.point=!1;ra.prototype.mapMode=nn.TrackDel;function tb(t,e){return t==e||t.constructor==e.constructor&&t.eq(e)}let Uy=class nR{constructor(e,i,n){this.from=e,this.to=i,this.value=n}static create(e,i,n){return new nR(e,i,n)}};function Gy(t,e){return t.from-e.from||t.value.startSide-e.value.startSide}class ib{constructor(e,i,n,r){this.from=e,this.to=i,this.value=n,this.maxPoint=r}get length(){return this.to[this.to.length-1]}findIndex(e,i,n,r=0){let s=n?this.to:this.from;for(let a=r,c=s.length;;){if(a==c)return a;let h=a+c>>1,d=s[h]-e||(n?this.value[h].endSide:this.value[h].startSide)-i;if(h==a)return d>=0?a:c;d>=0?c=h:a=h+1}}between(e,i,n,r){for(let s=this.findIndex(i,-1e9,!0),a=this.findIndex(n,1e9,!1,s);s<a;s++)if(r(this.from[s]+e,this.to[s]+e,this.value[s])===!1)return!1}map(e,i){let n=[],r=[],s=[],a=-1,c=-1;for(let h=0;h<this.value.length;h++){let d=this.value[h],f=this.from[h]+e,g=this.to[h]+e,m,v;if(f==g){let S=i.mapPos(f,d.startSide,d.mapMode);if(S==null||(m=v=S,d.startSide!=d.endSide&&(v=i.mapPos(f,d.endSide),v<m)))continue}else if(m=i.mapPos(f,d.startSide),v=i.mapPos(g,d.endSide),m>v||m==v&&d.startSide>0&&d.endSide<=0)continue;(v-m||d.endSide-d.startSide)<0||(a<0&&(a=m),d.point&&(c=Math.max(c,v-m)),n.push(d),r.push(m-a),s.push(v-a))}return{mapped:n.length?new ib(r,s,n,c):null,pos:a}}}class nt{constructor(e,i,n,r){this.chunkPos=e,this.chunk=i,this.nextLayer=n,this.maxPoint=r}static create(e,i,n,r){return new nt(e,i,n,r)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let i of this.chunk)e+=i.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:i=[],sort:n=!1,filterFrom:r=0,filterTo:s=this.length}=e,a=e.filter;if(i.length==0&&!a)return this;if(n&&(i=i.slice().sort(Gy)),this.isEmpty)return i.length?nt.of(i):this;let c=new rR(this,null,-1).goto(0),h=0,d=[],f=new sl;for(;c.value||h<i.length;)if(h<i.length&&(c.from-i[h].from||c.startSide-i[h].value.startSide)>=0){let g=i[h++];f.addInner(g.from,g.to,g.value)||d.push(g)}else c.rangeIndex==1&&c.chunkIndex<this.chunk.length&&(h==i.length||this.chunkEnd(c.chunkIndex)<i[h].from)&&(!a||r>this.chunkEnd(c.chunkIndex)||s<this.chunkPos[c.chunkIndex])&&f.addChunk(this.chunkPos[c.chunkIndex],this.chunk[c.chunkIndex])?c.nextChunk():((!a||r>c.to||s<c.from||a(c.from,c.to,c.value))&&(f.addInner(c.from,c.to,c.value)||d.push(Uy.create(c.from,c.to,c.value))),c.next());return f.finishInner(this.nextLayer.isEmpty&&!d.length?nt.empty:this.nextLayer.update({add:d,filter:a,filterFrom:r,filterTo:s}))}map(e){if(e.empty||this.isEmpty)return this;let i=[],n=[],r=-1;for(let a=0;a<this.chunk.length;a++){let c=this.chunkPos[a],h=this.chunk[a],d=e.touchesRange(c,c+h.length);if(d===!1)r=Math.max(r,h.maxPoint),i.push(h),n.push(e.mapPos(c));else if(d===!0){let{mapped:f,pos:g}=h.map(c,e);f&&(r=Math.max(r,f.maxPoint),i.push(f),n.push(g))}}let s=this.nextLayer.map(e);return i.length==0?s:new nt(n,i,s||nt.empty,r)}between(e,i,n){if(!this.isEmpty){for(let r=0;r<this.chunk.length;r++){let s=this.chunkPos[r],a=this.chunk[r];if(i>=s&&e<=s+a.length&&a.between(s,e-s,i-s,n)===!1)return}this.nextLayer.between(e,i,n)}}iter(e=0){return qu.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,i=0){return qu.from(e).goto(i)}static compare(e,i,n,r,s=-1){let a=e.filter(g=>g.maxPoint>0||!g.isEmpty&&g.maxPoint>=s),c=i.filter(g=>g.maxPoint>0||!g.isEmpty&&g.maxPoint>=s),h=x2(a,c,n),d=new eu(a,h,s),f=new eu(c,h,s);n.iterGaps((g,m,v)=>w2(d,g,f,m,v,r)),n.empty&&n.length==0&&w2(d,0,f,0,0,r)}static eq(e,i,n=0,r){r==null&&(r=999999999);let s=e.filter(f=>!f.isEmpty&&i.indexOf(f)<0),a=i.filter(f=>!f.isEmpty&&e.indexOf(f)<0);if(s.length!=a.length)return!1;if(!s.length)return!0;let c=x2(s,a),h=new eu(s,c,0).goto(n),d=new eu(a,c,0).goto(n);for(;;){if(h.to!=d.to||!Fy(h.active,d.active)||h.point&&(!d.point||!tb(h.point,d.point)))return!1;if(h.to>r)return!0;h.next(),d.next()}}static spans(e,i,n,r,s=-1){let a=new eu(e,null,s).goto(i),c=i,h=a.openStart;for(;;){let d=Math.min(a.to,n);if(a.point){let f=a.activeForPoint(a.to),g=a.pointFrom<i?f.length+1:a.point.startSide<0?f.length:Math.min(f.length,h);r.point(c,d,a.point,f,g,a.pointRank),h=Math.min(a.openEnd(d),f.length)}else d>c&&(r.span(c,d,a.active,h),h=a.openEnd(d));if(a.to>n)return h+(a.point&&a.to>n?1:0);c=a.to,a.next()}}static of(e,i=!1){let n=new sl;for(let r of e instanceof Uy?[e]:i?AZ(e):e)n.add(r.from,r.to,r.value);return n.finish()}static join(e){if(!e.length)return nt.empty;let i=e[e.length-1];for(let n=e.length-2;n>=0;n--)for(let r=e[n];r!=nt.empty;r=r.nextLayer)i=new nt(r.chunkPos,r.chunk,i,Math.max(r.maxPoint,i.maxPoint));return i}}nt.empty=new nt([],[],null,-1);function AZ(t){if(t.length>1)for(let e=t[0],i=1;i<t.length;i++){let n=t[i];if(Gy(e,n)>0)return t.slice().sort(Gy);e=n}return t}nt.empty.nextLayer=nt.empty;class sl{finishChunk(e){this.chunks.push(new ib(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(e,i,n){this.addInner(e,i,n)||(this.nextLayer||(this.nextLayer=new sl)).add(e,i,n)}addInner(e,i,n){let r=e-this.lastTo||n.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||n.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return r<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(i-this.chunkStart),this.last=n,this.lastFrom=e,this.lastTo=i,this.value.push(n),n.point&&(this.maxPoint=Math.max(this.maxPoint,i-e)),!0)}addChunk(e,i){if((e-this.lastTo||i.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,i.maxPoint),this.chunks.push(i),this.chunkPos.push(e);let n=i.value.length-1;return this.last=i.value[n],this.lastFrom=i.from[n]+e,this.lastTo=i.to[n]+e,!0}finish(){return this.finishInner(nt.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let i=nt.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,i}}function x2(t,e,i){let n=new Map;for(let s of t)for(let a=0;a<s.chunk.length;a++)s.chunk[a].maxPoint<=0&&n.set(s.chunk[a],s.chunkPos[a]);let r=new Set;for(let s of e)for(let a=0;a<s.chunk.length;a++){let c=n.get(s.chunk[a]);c!=null&&(i?i.mapPos(c):c)==s.chunkPos[a]&&!(i!=null&&i.touchesRange(c,c+s.chunk[a].length))&&r.add(s.chunk[a])}return r}class rR{constructor(e,i,n,r=0){this.layer=e,this.skip=i,this.minPoint=n,this.rank=r}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,i=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,i,!1),this}gotoInner(e,i,n){for(;this.chunkIndex<this.layer.chunk.length;){let r=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(r)||this.layer.chunkEnd(this.chunkIndex)<e||r.maxPoint<this.minPoint))break;this.chunkIndex++,n=!1}if(this.chunkIndex<this.layer.chunk.length){let r=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],i,!0);(!n||this.rangeIndex<r)&&this.setRangeIndex(r)}this.next()}forward(e,i){(this.to-e||this.endSide-i)<0&&this.gotoInner(e,i,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let e=this.layer.chunkPos[this.chunkIndex],i=this.layer.chunk[this.chunkIndex],n=e+i.from[this.rangeIndex];if(this.from=n,this.to=e+i.to[this.rangeIndex],this.value=i.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=e}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(e){return this.from-e.from||this.startSide-e.startSide||this.rank-e.rank||this.to-e.to||this.endSide-e.endSide}}class qu{constructor(e){this.heap=e}static from(e,i=null,n=-1){let r=[];for(let s=0;s<e.length;s++)for(let a=e[s];!a.isEmpty;a=a.nextLayer)a.maxPoint>=n&&r.push(new rR(a,i,n,s));return r.length==1?r[0]:new qu(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,i=-1e9){for(let n of this.heap)n.goto(e,i);for(let n=this.heap.length>>1;n>=0;n--)yv(this.heap,n);return this.next(),this}forward(e,i){for(let n of this.heap)n.forward(e,i);for(let n=this.heap.length>>1;n>=0;n--)yv(this.heap,n);(this.to-e||this.value.endSide-i)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),yv(this.heap,0)}}}function yv(t,e){for(let i=t[e];;){let n=(e<<1)+1;if(n>=t.length)break;let r=t[n];if(n+1<t.length&&r.compare(t[n+1])>=0&&(r=t[n+1],n++),i.compare(r)<0)break;t[n]=i,t[e]=r,e=n}}class eu{constructor(e,i,n){this.minPoint=n,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=qu.from(e,i,n)}goto(e,i=-1e9){return this.cursor.goto(e,i),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=i,this.openStart=-1,this.next(),this}forward(e,i){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-i)<0;)this.removeActive(this.minActive);this.cursor.forward(e,i)}removeActive(e){dp(this.active,e),dp(this.activeTo,e),dp(this.activeRank,e),this.minActive=k2(this.active,this.activeTo)}addActive(e){let i=0,{value:n,to:r,rank:s}=this.cursor;for(;i<this.activeRank.length&&(s-this.activeRank[i]||r-this.activeTo[i])>0;)i++;fp(this.active,i,n),fp(this.activeTo,i,r),fp(this.activeRank,i,s),e&&fp(e,i,this.cursor.from),this.minActive=k2(this.active,this.activeTo)}next(){let e=this.to,i=this.point;this.point=null;let n=this.openStart<0?[]:null;for(;;){let r=this.minActive;if(r>-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),n&&dp(n,r)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let s=this.cursor.value;if(!s.point)this.addActive(n),this.cursor.next();else if(i&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=s,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=s.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}}else{this.to=this.endSide=1e9;break}}if(n){this.openStart=0;for(let r=n.length-1;r>=0&&n[r]<e;r--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let i=[];for(let n=this.active.length-1;n>=0&&!(this.activeRank[n]<this.pointRank);n--)(this.activeTo[n]>e||this.activeTo[n]==e&&this.active[n].endSide>=this.point.endSide)&&i.push(this.active[n]);return i.reverse()}openEnd(e){let i=0;for(let n=this.activeTo.length-1;n>=0&&this.activeTo[n]>e;n--)i++;return i}}function w2(t,e,i,n,r,s){t.goto(e),i.goto(n);let a=n+r,c=n,h=n-e,d=!!s.boundChange;for(let f=!1;;){let g=t.to+h-i.to,m=g||t.endSide-i.endSide,v=m<0?t.to+h:i.to,S=Math.min(v,a);if(t.point||i.point?(t.point&&i.point&&tb(t.point,i.point)&&Fy(t.activeForPoint(t.to),i.activeForPoint(i.to))||s.comparePoint(c,S,t.point,i.point),f=!1):(f&&s.boundChange(c),S>c&&!Fy(t.active,i.active)&&s.compareRange(c,S,t.active,i.active),d&&S<a&&(g||t.openEnd(v)!=i.openEnd(v))&&(f=!0)),v>a)break;c=v,m<=0&&t.next(),m>=0&&i.next()}}function Fy(t,e){if(t.length!=e.length)return!1;for(let i=0;i<t.length;i++)if(t[i]!=e[i]&&!tb(t[i],e[i]))return!1;return!0}function dp(t,e){for(let i=e,n=t.length-1;i<n;i++)t[i]=t[i+1];t.pop()}function fp(t,e,i){for(let n=t.length-1;n>=e;n--)t[n+1]=t[n];t[e]=i}function k2(t,e){let i=-1,n=1e9;for(let r=0;r<e.length;r++)(e[r]-n||t[r].endSide-t[i].endSide)<0&&(i=r,n=e[r]);return i}function Gs(t,e,i=t.length){let n=0;for(let r=0;r<i&&r<t.length;)t.charCodeAt(r)==9?(n+=e-n%e,r++):(n++,r=Qi(t,r));return n}function MZ(t,e,i,n){for(let r=0,s=0;;){if(s>=e)return r;if(r==t.length)break;s+=t.charCodeAt(r)==9?i-s%i:1,r=Qi(t,r)}return t.length}const Ky="ͼ",C2=typeof Symbol>"u"?"__"+Ky:Symbol.for(Ky),Jy=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),T2=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class sa{constructor(e,i){this.rules=[];let{finish:n}=i||{};function r(a){return/^@/.test(a)?[a]:a.split(/,\s*/)}function s(a,c,h,d){let f=[],g=/^@(\w+)\b/.exec(a[0]),m=g&&g[1]=="keyframes";if(g&&c==null)return h.push(a[0]+";");for(let v in c){let S=c[v];if(/&/.test(v))s(v.split(/,\s*/).map(_=>a.map(w=>_.replace(/&/,w))).reduce((_,w)=>_.concat(w)),S,h);else if(S&&typeof S=="object"){if(!g)throw new RangeError("The value of a property ("+v+") should be a primitive value.");s(r(v),S,f,m)}else S!=null&&f.push(v.replace(/_.*/,"").replace(/[A-Z]/g,_=>"-"+_.toLowerCase())+": "+S+";")}(f.length||m)&&h.push((n&&!g&&!d?a.map(n):a).join(", ")+" {"+f.join(" ")+"}")}for(let a in e)s(r(a),e[a],this.rules)}getRules(){return this.rules.join(`
108
- `)}static newName(){let e=T2[C2]||1;return T2[C2]=e+1,Ky+e.toString(36)}static mount(e,i,n){let r=e[Jy],s=n&&n.nonce;r?s&&r.setNonce(s):r=new zZ(e,s),r.mount(Array.isArray(i)?i:[i],e)}}let Q2=new Map;class zZ{constructor(e,i){let n=e.ownerDocument||e,r=n.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let s=Q2.get(n);if(s)return e[Jy]=s;this.sheet=new r.CSSStyleSheet,Q2.set(n,this)}else this.styleTag=n.createElement("style"),i&&this.styleTag.setAttribute("nonce",i);this.modules=[],e[Jy]=this}mount(e,i){let n=this.sheet,r=0,s=0;for(let a=0;a<e.length;a++){let c=e[a],h=this.modules.indexOf(c);if(h<s&&h>-1&&(this.modules.splice(h,1),s--,h=-1),h==-1){if(this.modules.splice(s++,0,c),n)for(let d=0;d<c.rules.length;d++)n.insertRule(c.rules[d],r++)}else{for(;s<h;)r+=this.modules[s++].rules.length;r+=c.rules.length,s++}}if(n)i.adoptedStyleSheets.indexOf(this.sheet)<0&&(i.adoptedStyleSheets=[this.sheet,...i.adoptedStyleSheets]);else{let a="";for(let h=0;h<this.modules.length;h++)a+=this.modules[h].getRules()+`
109
- `;this.styleTag.textContent=a;let c=i.head||i;this.styleTag.parentNode!=c&&c.insertBefore(this.styleTag,c.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}}var oa={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Iu={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},jZ=typeof navigator<"u"&&/Mac/.test(navigator.platform),DZ=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Bi=0;Bi<10;Bi++)oa[48+Bi]=oa[96+Bi]=String(Bi);for(var Bi=1;Bi<=24;Bi++)oa[Bi+111]="F"+Bi;for(var Bi=65;Bi<=90;Bi++)oa[Bi]=String.fromCharCode(Bi+32),Iu[Bi]=String.fromCharCode(Bi);for(var Sv in oa)Iu.hasOwnProperty(Sv)||(Iu[Sv]=oa[Sv]);function BZ(t){var e=jZ&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||DZ&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified",i=!e&&t.key||(t.shiftKey?Iu:oa)[t.keyCode]||t.key||"Unidentified";return i=="Esc"&&(i="Escape"),i=="Del"&&(i="Delete"),i=="Left"&&(i="ArrowLeft"),i=="Up"&&(i="ArrowUp"),i=="Right"&&(i="ArrowRight"),i=="Down"&&(i="ArrowDown"),i}function _i(){var t=arguments[0];typeof t=="string"&&(t=document.createElement(t));var e=1,i=arguments[1];if(i&&typeof i=="object"&&i.nodeType==null&&!Array.isArray(i)){for(var n in i)if(Object.prototype.hasOwnProperty.call(i,n)){var r=i[n];typeof r=="string"?t.setAttribute(n,r):r!=null&&(t[n]=r)}e++}for(;e<arguments.length;e++)sR(t,arguments[e]);return t}function sR(t,e){if(typeof e=="string")t.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)t.appendChild(e);else if(Array.isArray(e))for(var i=0;i<e.length;i++)sR(t,e[i]);else throw new RangeError("Unsupported child node: "+e)}let tn=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},eS=typeof document<"u"?document:{documentElement:{style:{}}};const tS=/Edge\/(\d+)/.exec(tn.userAgent),oR=/MSIE \d/.test(tn.userAgent),iS=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(tn.userAgent),xm=!!(oR||iS||tS),$2=!xm&&/gecko\/(\d+)/i.test(tn.userAgent),bv=!xm&&/Chrome\/(\d+)/.exec(tn.userAgent),P2="webkitFontSmoothing"in eS.documentElement.style,nS=!xm&&/Apple Computer/.test(tn.vendor),E2=nS&&(/Mobile\/\w+/.test(tn.userAgent)||tn.maxTouchPoints>2);var be={mac:E2||/Mac/.test(tn.platform),windows:/Win/.test(tn.platform),linux:/Linux|X11/.test(tn.platform),ie:xm,ie_version:oR?eS.documentMode||6:iS?+iS[1]:tS?+tS[1]:0,gecko:$2,gecko_version:$2?+(/Firefox\/(\d+)/.exec(tn.userAgent)||[0,0])[1]:0,chrome:!!bv,chrome_version:bv?+bv[1]:0,ios:E2,android:/Android\b/.test(tn.userAgent),webkit:P2,webkit_version:P2?+(/\bAppleWebKit\/(\d+)/.exec(tn.userAgent)||[0,0])[1]:0,safari:nS,safari_version:nS?+(/\bVersion\/(\d+(\.\d+)?)/.exec(tn.userAgent)||[0,0])[1]:0,tabSize:eS.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function nb(t,e){for(let i in t)i=="class"&&e.class?e.class+=" "+t.class:i=="style"&&e.style?e.style+=";"+t.style:e[i]=t[i];return e}const Cg=Object.create(null);function rb(t,e,i){if(t==e)return!0;t||(t=Cg),e||(e=Cg);let n=Object.keys(t),r=Object.keys(e);if(n.length-0!=r.length-0)return!1;for(let s of n)if(s!=i&&(r.indexOf(s)==-1||t[s]!==e[s]))return!1;return!0}function LZ(t,e){for(let i=t.attributes.length-1;i>=0;i--){let n=t.attributes[i].name;e[n]==null&&t.removeAttribute(n)}for(let i in e){let n=e[i];i=="style"?t.style.cssText=n:t.getAttribute(i)!=n&&t.setAttribute(i,n)}}function R2(t,e,i){let n=!1;if(e)for(let r in e)i&&r in i||(n=!0,r=="style"?t.style.cssText="":t.removeAttribute(r));if(i)for(let r in i)e&&e[r]==i[r]||(n=!0,r=="style"?t.style.cssText=i[r]:t.setAttribute(r,i[r]));return n}function XZ(t){let e=Object.create(null);for(let i=0;i<t.attributes.length;i++){let n=t.attributes[i];e[n.name]=n.value}return e}class pl{eq(e){return!1}updateDOM(e,i,n){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,i,n){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}}var Xi=(function(t){return t[t.Text=0]="Text",t[t.WidgetBefore=1]="WidgetBefore",t[t.WidgetAfter=2]="WidgetAfter",t[t.WidgetRange=3]="WidgetRange",t})(Xi||(Xi={}));class qe extends ra{constructor(e,i,n,r){super(),this.startSide=e,this.endSide=i,this.widget=n,this.spec=r}get heightRelevant(){return!1}static mark(e){return new vd(e)}static widget(e){let i=Math.max(-1e4,Math.min(1e4,e.side||0)),n=!!e.block;return i+=n&&!e.inlineOrder?i>0?3e8:-4e8:i>0?1e8:-1e8,new ol(e,i,i,n,e.widget||null,!1)}static replace(e){let i=!!e.block,n,r;if(e.isBlockGap)n=-5e8,r=4e8;else{let{start:s,end:a}=aR(e,i);n=(s?i?-3e8:-1:5e8)-1,r=(a?i?2e8:1:-6e8)+1}return new ol(e,n,r,i,e.widget||null,!0)}static line(e){return new yd(e)}static set(e,i=!1){return nt.of(e,i)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}qe.none=nt.empty;class vd extends qe{constructor(e){let{start:i,end:n}=aR(e);super(i?-1:5e8,n?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?nb(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||Cg}eq(e){return this==e||e instanceof vd&&this.tagName==e.tagName&&rb(this.attrs,e.attrs)}range(e,i=e){if(e>=i)throw new RangeError("Mark decorations may not be empty");return super.range(e,i)}}vd.prototype.point=!1;class yd extends qe{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof yd&&this.spec.class==e.spec.class&&rb(this.spec.attributes,e.spec.attributes)}range(e,i=e){if(i!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,i)}}yd.prototype.mapMode=nn.TrackBefore;yd.prototype.point=!0;class ol extends qe{constructor(e,i,n,r,s,a){super(i,n,s,e),this.block=r,this.isReplace=a,this.mapMode=r?i<=0?nn.TrackBefore:nn.TrackAfter:nn.TrackDel}get type(){return this.startSide!=this.endSide?Xi.WidgetRange:this.startSide<=0?Xi.WidgetBefore:Xi.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof ol&&NZ(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,i=e){if(this.isReplace&&(e>i||e==i&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&i!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,i)}}ol.prototype.point=!0;function aR(t,e=!1){let{inclusiveStart:i,inclusiveEnd:n}=t;return i==null&&(i=t.inclusive),n==null&&(n=t.inclusive),{start:i??e,end:n??e}}function NZ(t,e){return t==e||!!(t&&e&&t.compare(e))}function vc(t,e,i,n=0){let r=i.length-1;r>=0&&i[r]+n>=t?i[r]=Math.max(i[r],e):i.push(t,e)}class Vu extends ra{constructor(e,i){super(),this.tagName=e,this.attributes=i}eq(e){return e==this||e instanceof Vu&&this.tagName==e.tagName&&rb(this.attributes,e.attributes)}static create(e){return new Vu(e.tagName,e.attributes||Cg)}static set(e,i=!1){return nt.of(e,i)}}Vu.prototype.startSide=Vu.prototype.endSide=-1;function Yu(t){let e;return t.nodeType==11?e=t.getSelection?t:t.ownerDocument:e=t,e.getSelection()}function rS(t,e){return e?t==e||t.contains(e.nodeType!=1?e.parentNode:e):!1}function Tu(t,e){if(!e.anchorNode)return!1;try{return rS(t,e.anchorNode)}catch{return!1}}function Hp(t){return t.nodeType==3?Hu(t,0,t.nodeValue.length).getClientRects():t.nodeType==1?t.getClientRects():[]}function Qu(t,e,i,n){return i?A2(t,e,i,n,-1)||A2(t,e,i,n,1):!1}function aa(t){for(var e=0;;e++)if(t=t.previousSibling,!t)return e}function Tg(t){return t.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(t.nodeName)}function A2(t,e,i,n,r){for(;;){if(t==i&&e==n)return!0;if(e==(r<0?0:Fs(t))){if(t.nodeName=="DIV")return!1;let s=t.parentNode;if(!s||s.nodeType!=1)return!1;e=aa(t)+(r<0?0:1),t=s}else if(t.nodeType==1){if(t=t.childNodes[e+(r<0?-1:0)],t.nodeType==1&&t.contentEditable=="false")return!1;e=r<0?Fs(t):0}else return!1}}function Fs(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Qg(t,e){let i=e?t.left:t.right;return{left:i,right:i,top:t.top,bottom:t.bottom}}function ZZ(t){let e=t.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:t.innerWidth,top:0,bottom:t.innerHeight}}function lR(t,e){let i=e.width/t.offsetWidth,n=e.height/t.offsetHeight;return(i>.995&&i<1.005||!isFinite(i)||Math.abs(e.width-t.offsetWidth)<1)&&(i=1),(n>.995&&n<1.005||!isFinite(n)||Math.abs(e.height-t.offsetHeight)<1)&&(n=1),{scaleX:i,scaleY:n}}function WZ(t,e,i,n,r,s,a,c){let h=t.ownerDocument,d=h.defaultView||window;for(let f=t,g=!1;f&&!g;)if(f.nodeType==1){let m,v=f==h.body,S=1,_=1;if(v)m=ZZ(d);else{if(/^(fixed|sticky)$/.test(getComputedStyle(f).position)&&(g=!0),f.scrollHeight<=f.clientHeight&&f.scrollWidth<=f.clientWidth){f=f.assignedSlot||f.parentNode;continue}let Q=f.getBoundingClientRect();({scaleX:S,scaleY:_}=lR(f,Q)),m={left:Q.left,right:Q.left+f.clientWidth*S,top:Q.top,bottom:Q.top+f.clientHeight*_}}let w=0,x=0;if(r=="nearest")e.top<m.top+a?(x=e.top-(m.top+a),i>0&&e.bottom>m.bottom+x&&(x=e.bottom-m.bottom+a)):e.bottom>m.bottom-a&&(x=e.bottom-m.bottom+a,i<0&&e.top-x<m.top&&(x=e.top-(m.top+a)));else{let Q=e.bottom-e.top,C=m.bottom-m.top;x=(r=="center"&&Q<=C?e.top+Q/2-C/2:r=="start"||r=="center"&&i<0?e.top-a:e.bottom-C+a)-m.top}if(n=="nearest"?e.left<m.left+s?(w=e.left-(m.left+s),i>0&&e.right>m.right+w&&(w=e.right-m.right+s)):e.right>m.right-s&&(w=e.right-m.right+s,i<0&&e.left<m.left+w&&(w=e.left-(m.left+s))):w=(n=="center"?e.left+(e.right-e.left)/2-(m.right-m.left)/2:n=="start"==c?e.left-s:e.right-(m.right-m.left)+s)-m.left,w||x)if(v)d.scrollBy(w,x);else{let Q=0,C=0;if(x){let T=f.scrollTop;f.scrollTop+=x/_,C=(f.scrollTop-T)*_}if(w){let T=f.scrollLeft;f.scrollLeft+=w/S,Q=(f.scrollLeft-T)*S}e={left:e.left-Q,top:e.top-C,right:e.right-Q,bottom:e.bottom-C},Q&&Math.abs(Q-w)<1&&(n="nearest"),C&&Math.abs(C-x)<1&&(r="nearest")}if(v)break;(e.top<m.top||e.bottom>m.bottom||e.left<m.left||e.right>m.right)&&(e={left:Math.max(e.left,m.left),right:Math.min(e.right,m.right),top:Math.max(e.top,m.top),bottom:Math.min(e.bottom,m.bottom)}),f=f.assignedSlot||f.parentNode}else if(f.nodeType==11)f=f.host;else break}function cR(t,e=!0){let i=t.ownerDocument,n=null,r=null;for(let s=t.parentNode;s&&!(s==i.body||(!e||n)&&r);)if(s.nodeType==1)!r&&s.scrollHeight>s.clientHeight&&(r=s),e&&!n&&s.scrollWidth>s.clientWidth&&(n=s),s=s.assignedSlot||s.parentNode;else if(s.nodeType==11)s=s.host;else break;return{x:n,y:r}}class qZ{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:i,focusNode:n}=e;this.set(i,Math.min(e.anchorOffset,i?Fs(i):0),n,Math.min(e.focusOffset,n?Fs(n):0))}set(e,i,n,r){this.anchorNode=e,this.anchorOffset=i,this.focusNode=n,this.focusOffset=r}}let Ba=null;be.safari&&be.safari_version>=26&&(Ba=!1);function hR(t){if(t.setActive)return t.setActive();if(Ba)return t.focus(Ba);let e=[];for(let i=t;i&&(e.push(i,i.scrollTop,i.scrollLeft),i!=i.ownerDocument);i=i.parentNode);if(t.focus(Ba==null?{get preventScroll(){return Ba={preventScroll:!0},!0}}:void 0),!Ba){Ba=!1;for(let i=0;i<e.length;){let n=e[i++],r=e[i++],s=e[i++];n.scrollTop!=r&&(n.scrollTop=r),n.scrollLeft!=s&&(n.scrollLeft=s)}}}let M2;function Hu(t,e,i=e){let n=M2||(M2=document.createRange());return n.setEnd(t,i),n.setStart(t,e),n}function yc(t,e,i,n){let r={key:e,code:e,keyCode:i,which:i,cancelable:!0};n&&({altKey:r.altKey,ctrlKey:r.ctrlKey,shiftKey:r.shiftKey,metaKey:r.metaKey}=n);let s=new KeyboardEvent("keydown",r);s.synthetic=!0,t.dispatchEvent(s);let a=new KeyboardEvent("keyup",r);return a.synthetic=!0,t.dispatchEvent(a),s.defaultPrevented||a.defaultPrevented}function IZ(t){for(;t;){if(t&&(t.nodeType==9||t.nodeType==11&&t.host))return t;t=t.assignedSlot||t.parentNode}return null}function VZ(t,e){let i=e.focusNode,n=e.focusOffset;if(!i||e.anchorNode!=i||e.anchorOffset!=n)return!1;for(n=Math.min(n,Fs(i));;)if(n){if(i.nodeType!=1)return!1;let r=i.childNodes[n-1];r.contentEditable=="false"?n--:(i=r,n=Fs(i))}else{if(i==t)return!0;n=aa(i),i=i.parentNode}}function uR(t){return t instanceof Window?t.pageYOffset>Math.max(0,t.document.documentElement.scrollHeight-t.innerHeight-4):t.scrollTop>Math.max(1,t.scrollHeight-t.clientHeight-4)}function dR(t,e){for(let i=t,n=e;;){if(i.nodeType==3&&n>0)return{node:i,offset:n};if(i.nodeType==1&&n>0){if(i.contentEditable=="false")return null;i=i.childNodes[n-1],n=Fs(i)}else if(i.parentNode&&!Tg(i))n=aa(i),i=i.parentNode;else return null}}function fR(t,e){for(let i=t,n=e;;){if(i.nodeType==3&&n<i.nodeValue.length)return{node:i,offset:n};if(i.nodeType==1&&n<i.childNodes.length){if(i.contentEditable=="false")return null;i=i.childNodes[n],n=0}else if(i.parentNode&&!Tg(i))n=aa(i)+1,i=i.parentNode;else return null}}class Er{constructor(e,i,n=!0){this.node=e,this.offset=i,this.precise=n}static before(e,i){return new Er(e.parentNode,aa(e),i)}static after(e,i){return new Er(e.parentNode,aa(e)+1,i)}}var Tt=(function(t){return t[t.LTR=0]="LTR",t[t.RTL=1]="RTL",t})(Tt||(Tt={}));const al=Tt.LTR,sb=Tt.RTL;function pR(t){let e=[];for(let i=0;i<t.length;i++)e.push(1<<+t[i]);return e}const YZ=pR("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),HZ=pR("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),sS=Object.create(null),Ir=[];for(let t of["()","[]","{}"]){let e=t.charCodeAt(0),i=t.charCodeAt(1);sS[e]=i,sS[i]=-e}function gR(t){return t<=247?YZ[t]:1424<=t&&t<=1524?2:1536<=t&&t<=1785?HZ[t-1536]:1774<=t&&t<=2220?4:8192<=t&&t<=8204?256:64336<=t&&t<=65023?4:1}const UZ=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class ts{get dir(){return this.level%2?sb:al}constructor(e,i,n){this.from=e,this.to=i,this.level=n}side(e,i){return this.dir==i==e?this.to:this.from}forward(e,i){return e==(this.dir==i)}static find(e,i,n,r){let s=-1;for(let a=0;a<e.length;a++){let c=e[a];if(c.from<=i&&c.to>=i){if(c.level==n)return a;(s<0||(r!=0?r<0?c.from<i:c.to>i:e[s].level>c.level))&&(s=a)}}if(s<0)throw new RangeError("Index out of range");return s}}function mR(t,e){if(t.length!=e.length)return!1;for(let i=0;i<t.length;i++){let n=t[i],r=e[i];if(n.from!=r.from||n.to!=r.to||n.direction!=r.direction||!mR(n.inner,r.inner))return!1}return!0}const kt=[];function GZ(t,e,i,n,r){for(let s=0;s<=n.length;s++){let a=s?n[s-1].to:e,c=s<n.length?n[s].from:i,h=s?256:r;for(let d=a,f=h,g=h;d<c;d++){let m=gR(t.charCodeAt(d));m==512?m=f:m==8&&g==4&&(m=16),kt[d]=m==4?2:m,m&7&&(g=m),f=m}for(let d=a,f=h,g=h;d<c;d++){let m=kt[d];if(m==128)d<c-1&&f==kt[d+1]&&f&24?m=kt[d]=f:kt[d]=256;else if(m==64){let v=d+1;for(;v<c&&kt[v]==64;)v++;let S=d&&f==8||v<i&&kt[v]==8?g==1?1:8:256;for(let _=d;_<v;_++)kt[_]=S;d=v-1}else m==8&&g==1&&(kt[d]=1);f=m,m&7&&(g=m)}}}function FZ(t,e,i,n,r){let s=r==1?2:1;for(let a=0,c=0,h=0;a<=n.length;a++){let d=a?n[a-1].to:e,f=a<n.length?n[a].from:i;for(let g=d,m,v,S;g<f;g++)if(v=sS[m=t.charCodeAt(g)])if(v<0){for(let _=c-3;_>=0;_-=3)if(Ir[_+1]==-v){let w=Ir[_+2],x=w&2?r:w&4?w&1?s:r:0;x&&(kt[g]=kt[Ir[_]]=x),c=_;break}}else{if(Ir.length==189)break;Ir[c++]=g,Ir[c++]=m,Ir[c++]=h}else if((S=kt[g])==2||S==1){let _=S==r;h=_?0:1;for(let w=c-3;w>=0;w-=3){let x=Ir[w+2];if(x&2)break;if(_)Ir[w+2]|=2;else{if(x&4)break;Ir[w+2]|=4}}}}}function KZ(t,e,i,n){for(let r=0,s=n;r<=i.length;r++){let a=r?i[r-1].to:t,c=r<i.length?i[r].from:e;for(let h=a;h<c;){let d=kt[h];if(d==256){let f=h+1;for(;;)if(f==c){if(r==i.length)break;f=i[r++].to,c=r<i.length?i[r].from:e}else if(kt[f]==256)f++;else break;let g=s==1,m=(f<e?kt[f]:n)==1,v=g==m?g?1:2:n;for(let S=f,_=r,w=_?i[_-1].to:t;S>h;)S==w&&(S=i[--_].from,w=_?i[_-1].to:t),kt[--S]=v;h=f}else s=d,h++}}}function oS(t,e,i,n,r,s,a){let c=n%2?2:1;if(n%2==r%2)for(let h=e,d=0;h<i;){let f=!0,g=!1;if(d==s.length||h<s[d].from){let _=kt[h];_!=c&&(f=!1,g=_==16)}let m=!f&&c==1?[]:null,v=f?n:n+1,S=h;e:for(;;)if(d<s.length&&S==s[d].from){if(g)break e;let _=s[d];if(!f)for(let w=_.to,x=d+1;;){if(w==i)break e;if(x<s.length&&s[x].from==w)w=s[x++].to;else{if(kt[w]==c)break e;break}}if(d++,m)m.push(_);else{_.from>h&&a.push(new ts(h,_.from,v));let w=_.direction==al!=!(v%2);aS(t,w?n+1:n,r,_.inner,_.from,_.to,a),h=_.to}S=_.to}else{if(S==i||(f?kt[S]!=c:kt[S]==c))break;S++}m?oS(t,h,S,n+1,r,m,a):h<S&&a.push(new ts(h,S,v)),h=S}else for(let h=i,d=s.length;h>e;){let f=!0,g=!1;if(!d||h>s[d-1].to){let _=kt[h-1];_!=c&&(f=!1,g=_==16)}let m=!f&&c==1?[]:null,v=f?n:n+1,S=h;e:for(;;)if(d&&S==s[d-1].to){if(g)break e;let _=s[--d];if(!f)for(let w=_.from,x=d;;){if(w==e)break e;if(x&&s[x-1].to==w)w=s[--x].from;else{if(kt[w-1]==c)break e;break}}if(m)m.push(_);else{_.to<h&&a.push(new ts(_.to,h,v));let w=_.direction==al!=!(v%2);aS(t,w?n+1:n,r,_.inner,_.from,_.to,a),h=_.from}S=_.from}else{if(S==e||(f?kt[S-1]!=c:kt[S-1]==c))break;S--}m?oS(t,S,h,n+1,r,m,a):S<h&&a.push(new ts(S,h,v)),h=S}}function aS(t,e,i,n,r,s,a){let c=e%2?2:1;GZ(t,r,s,n,c),FZ(t,r,s,n,c),KZ(r,s,n,c),oS(t,r,s,e,i,n,a)}function JZ(t,e,i){if(!t)return[new ts(0,0,e==sb?1:0)];if(e==al&&!i.length&&!UZ.test(t))return OR(t.length);if(i.length)for(;t.length>kt.length;)kt[kt.length]=256;let n=[],r=e==al?0:1;return aS(t,r,r,i,0,t.length,n),n}function OR(t){return[new ts(0,t,0)]}let vR="";function eW(t,e,i,n,r){var s;let a=n.head-t.from,c=ts.find(e,a,(s=n.bidiLevel)!==null&&s!==void 0?s:-1,n.assoc),h=e[c],d=h.side(r,i);if(a==d){let m=c+=r?1:-1;if(m<0||m>=e.length)return null;h=e[c=m],a=h.side(!r,i),d=h.side(r,i)}let f=Qi(t.text,a,h.forward(r,i));(f<h.from||f>h.to)&&(f=d),vR=t.text.slice(Math.min(a,f),Math.max(a,f));let g=c==(r?e.length-1:0)?null:e[c+(r?1:-1)];return g&&f==d&&g.level+(r?0:1)<h.level?le.cursor(g.side(!r,i)+t.from,g.forward(r,i)?1:-1,g.level):le.cursor(f+t.from,h.forward(r,i)?-1:1,h.level)}function tW(t,e,i){for(let n=e;n<i;n++){let r=gR(t.charCodeAt(n));if(r==1)return al;if(r==2||r==4)return sb}return al}const yR=we.define(),SR=we.define(),bR=we.define(),_R=we.define(),lS=we.define(),xR=we.define(),wR=we.define(),ob=we.define(),ab=we.define(),kR=we.define({combine:t=>t.some(e=>e)}),CR=we.define({combine:t=>t.some(e=>e)}),TR=we.define();class Sc{constructor(e,i,n,r,s,a=!1){this.range=e,this.y=i,this.x=n,this.yMargin=r,this.xMargin=s,this.isSnapshot=a}map(e){return e.empty?this:new Sc(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new Sc(le.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const pp=Je.define({map:(t,e)=>t.map(e)}),QR=Je.define();function Yn(t,e,i){let n=t.facet(_R);n.length?n[0](e):window.onerror&&window.onerror(String(e),i,void 0,void 0,e)||(i?console.error(i+":",e):console.error(e))}const qs=we.define({combine:t=>t.length?t[0]:!0});let iW=0;const uc=we.define({combine(t){return t.filter((e,i)=>{for(let n=0;n<i;n++)if(t[n].plugin==e.plugin)return!1;return!0})}});class Ni{constructor(e,i,n,r,s){this.id=e,this.create=i,this.domEventHandlers=n,this.domEventObservers=r,this.baseExtensions=s(this),this.extension=this.baseExtensions.concat(uc.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(uc.of({plugin:this,arg:e}))}static define(e,i){const{eventHandlers:n,eventObservers:r,provide:s,decorations:a}=i||{};return new Ni(iW++,e,n,r,c=>{let h=[];return a&&h.push(wm.of(d=>{let f=d.plugin(c);return f?a(f):qe.none})),s&&h.push(s(c)),h})}static fromClass(e,i){return Ni.define((n,r)=>new e(n,r),i)}}class _v{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let i=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(i)}catch(n){if(Yn(i.state,n,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(i){Yn(e.state,i,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var i;if(!((i=this.value)===null||i===void 0)&&i.destroy)try{this.value.destroy()}catch(n){Yn(e.state,n,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const $R=we.define(),lb=we.define(),wm=we.define(),PR=we.define(),cb=we.define(),Sd=we.define(),ER=we.define();function z2(t,e){let i=t.state.facet(ER);if(!i.length)return i;let n=i.map(s=>s instanceof Function?s(t):s),r=[];return nt.spans(n,e.from,e.to,{point(){},span(s,a,c,h){let d=s-e.from,f=a-e.from,g=r;for(let m=c.length-1;m>=0;m--,h--){let v=c[m].spec.bidiIsolate,S;if(v==null&&(v=tW(e.text,d,f)),h>0&&g.length&&(S=g[g.length-1]).to==d&&S.direction==v)S.to=f,g=S.inner;else{let _={from:d,to:f,direction:v,inner:[]};g.push(_),g=_.inner}}}}),r}const RR=we.define();function hb(t){let e=0,i=0,n=0,r=0;for(let s of t.state.facet(RR)){let a=s(t);a&&(a.left!=null&&(e=Math.max(e,a.left)),a.right!=null&&(i=Math.max(i,a.right)),a.top!=null&&(n=Math.max(n,a.top)),a.bottom!=null&&(r=Math.max(r,a.bottom)))}return{left:e,right:i,top:n,bottom:r}}const gu=we.define();class lr{constructor(e,i,n,r){this.fromA=e,this.toA=i,this.fromB=n,this.toB=r}join(e){return new lr(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let i=e.length,n=this;for(;i>0;i--){let r=e[i-1];if(!(r.fromA>n.toA)){if(r.toA<n.fromA)break;n=n.join(r),e.splice(i-1,1)}}return e.splice(i,0,n),e}static extendWithRanges(e,i){if(i.length==0)return e;let n=[];for(let r=0,s=0,a=0;;){let c=r<e.length?e[r].fromB:1e9,h=s<i.length?i[s]:1e9,d=Math.min(c,h);if(d==1e9)break;let f=d+a,g=d,m=f;for(;;)if(s<i.length&&i[s]<=g){let v=i[s+1];s+=2,g=Math.max(g,v);for(let S=r;S<e.length&&e[S].fromB<=g;S++)a=e[S].toA-e[S].toB;m=Math.max(m,v+a)}else if(r<e.length&&e[r].fromB<=g){let v=e[r++];g=Math.max(g,v.toB),m=Math.max(m,v.toA),a=v.toA-v.toB}else break;n.push(new lr(f,m,d,g))}return n}}class $g{constructor(e,i,n){this.view=e,this.state=i,this.transactions=n,this.flags=0,this.startState=e.state,this.changes=Oi.empty(this.startState.doc.length);for(let s of n)this.changes=this.changes.compose(s.changes);let r=[];this.changes.iterChangedRanges((s,a,c,h)=>r.push(new lr(s,a,c,h))),this.changedRanges=r}static create(e,i,n){return new $g(e,i,n)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}}const nW=[];class It{constructor(e,i,n=0){this.dom=e,this.length=i,this.flags=n,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return nW}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let i=this.domAttrs;i&&LZ(this.dom,i)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,i=this.posAtStart){let n=i;for(let r of this.children){if(r==e)return n;n+=r.length+r.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,i){return null}domPosFor(e,i){let n=aa(this.dom),r=this.length?e>0:i>0;return new Er(this.parent.dom,n+(r?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof Cm)return e;return null}static get(e){return e.cmTile}}class km extends It{constructor(e){super(e,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let i=this.dom,n=null,r,s=(e==null?void 0:e.node)==i?e:null,a=0;for(let c of this.children){if(c.sync(e),a+=c.length+c.breakAfter,r=n?n.nextSibling:i.firstChild,s&&r!=c.dom&&(s.written=!0),c.dom.parentNode==i)for(;r&&r!=c.dom;)r=j2(r);else i.insertBefore(c.dom,r);n=c.dom}for(r=n?n.nextSibling:i.firstChild,s&&r&&(s.written=!0);r;)r=j2(r);this.length=a}}function j2(t){let e=t.nextSibling;return t.parentNode.removeChild(t),e}class Cm extends km{constructor(e,i){super(i),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let i=It.get(e);if(i&&this.owns(i))return i;e=e.parentNode}}blockTiles(e){for(let i=[],n=this,r=0,s=0;;)if(r==n.children.length){if(!i.length)return;n=n.parent,n.breakAfter&&s++,r=i.pop()}else{let a=n.children[r++];if(a instanceof Ys)i.push(r),n=a,r=0;else{let c=s+a.length,h=e(a,s);if(h!==void 0)return h;s=c+a.breakAfter}}}resolveBlock(e,i){let n,r=-1,s,a=-1;if(this.blockTiles((c,h)=>{let d=h+c.length;if(e>=h&&e<=d){if(c.isWidget()&&i>=-1&&i<=1){if(c.flags&32)return!0;c.flags&16&&(n=void 0)}(h<e||e==d&&(i<-1?c.length:c.covers(1)))&&(!n||!c.isWidget()&&n.isWidget())&&(n=c,r=e-h),(d>e||e==h&&(i>1?c.length:c.covers(-1)))&&(!s||!c.isWidget()&&s.isWidget())&&(s=c,a=e-h)}}),!n&&!s)throw new Error("No tile at position "+e);return n&&i<0||!s?{tile:n,offset:r}:{tile:s,offset:a}}}class Ys extends km{constructor(e,i){super(e),this.wrapper=i}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,i){let n=new Ys(i||document.createElement(e.tagName),e);return i||(n.flags|=4),n}}class zc extends km{constructor(e,i){super(e),this.attrs=i}isLine(){return!0}static start(e,i,n){let r=new zc(i||document.createElement("div"),e);return(!i||!n)&&(r.flags|=4),r}get domAttrs(){return this.attrs}resolveInline(e,i,n){let r=null,s=-1,a=null,c=-1;function h(f,g){for(let m=0,v=0;m<f.children.length&&v<=g;m++){let S=f.children[m],_=v+S.length;_>=g&&(S.isComposite()?h(S,g-v):(!a||a.isHidden&&(i>0||n&&sW(a,S)))&&(_>g||S.flags&32)?(a=S,c=g-v):(v<g||S.flags&16&&!S.isHidden)&&(r=S,s=g-v)),v=_}}h(this,e);let d=(i<0?r:a)||r||a;return d?{tile:d,offset:d==r?s:c}:null}coordsIn(e,i){let n=this.resolveInline(e,i,!0);return n?n.tile.coordsIn(Math.max(0,n.offset),i):rW(this)}domIn(e,i){let n=this.resolveInline(e,i);if(n){let{tile:r,offset:s}=n;if(this.dom.contains(r.dom))return r.isText()?new Er(r.dom,Math.min(r.dom.nodeValue.length,s)):r.domPosFor(s,r.flags&16?1:r.flags&32?-1:i);let a=n.tile.parent,c=!1;for(let h of a.children){if(c)return new Er(h.dom,0);h==n.tile&&(c=!0)}}return new Er(this.dom,0)}}function rW(t){let e=t.dom.lastChild;if(!e)return t.dom.getBoundingClientRect();let i=Hp(e);return i[i.length-1]||null}function sW(t,e){let i=t.coordsIn(0,1),n=e.coordsIn(0,1);return i&&n&&n.top<i.bottom}class Sn extends km{constructor(e,i){super(e),this.mark=i}get domAttrs(){return this.mark.attrs}static of(e,i){let n=new Sn(i||document.createElement(e.tagName),e);return i||(n.flags|=4),n}}class Ya extends It{constructor(e,i){super(e,i.length),this.text=i}sync(e){this.flags&2||(super.sync(e),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(e,i){let n=this.dom.nodeValue.length;e>n&&(e=n);let r=e,s=e,a=0;e==0&&i<0||e==n&&i>=0?be.chrome||be.gecko||(e?(r--,a=1):s<n&&(s++,a=-1)):i<0?r--:s<n&&s++;let c=Hu(this.dom,r,s).getClientRects();if(!c.length)return null;let h=c[(a?a<0:i>=0)?0:c.length-1];return be.safari&&!a&&h.width==0&&(h=Array.prototype.find.call(c,d=>d.width)||h),a?Qg(h,a<0):h||null}static of(e,i){let n=new Ya(i||document.createTextNode(e),e);return i||(n.flags|=2),n}}class ll extends It{constructor(e,i,n,r){super(e,i,r),this.widget=n}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,i){return this.coordsInWidget(e,i,!1)}coordsInWidget(e,i,n){let r=this.widget.coordsAt(this.dom,e,i);if(r)return r;if(n)return Qg(this.dom.getBoundingClientRect(),this.length?e==0:i<=0);{let s=this.dom.getClientRects(),a=null;if(!s.length)return null;let c=this.flags&16?!0:this.flags&32?!1:e>0;for(let h=c?s.length-1:0;a=s[h],!(e>0?h==0:h==s.length-1||a.top<a.bottom);h+=c?-1:1);return Qg(a,!c)}}get overrideDOMText(){if(!this.length)return dt.empty;let{root:e}=this;if(!e)return dt.empty;let i=this.posAtStart;return e.view.state.doc.slice(i,i+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(e,i,n,r,s){return s||(s=e.toDOM(i),e.editable||(s.contentEditable="false")),new ll(s,n,e,r)}}class Pg extends It{constructor(e){let i=document.createElement("img");i.className="cm-widgetBuffer",i.setAttribute("aria-hidden","true"),super(i,0,e)}get isHidden(){return!0}get overrideDOMText(){return dt.empty}coordsIn(e){return this.dom.getBoundingClientRect()}}class oW{constructor(e){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=e}advance(e,i,n){let{tile:r,index:s,beforeBreak:a,parents:c}=this;for(;e||i>0;)if(r.isComposite())if(a){if(!e)break;n&&n.break(),e--,a=!1}else if(s==r.children.length){if(!e&&!c.length)break;n&&n.leave(r),a=!!r.breakAfter,{tile:r,index:s}=c.pop(),s++}else{let h=r.children[s],d=h.breakAfter;(i>0?h.length<=e:h.length<e)&&(!n||n.skip(h,0,h.length)!==!1||!h.isComposite)?(a=!!d,s++,e-=h.length):(c.push({tile:r,index:s}),r=h,s=0,n&&h.isComposite()&&n.enter(h))}else if(s==r.length)a=!!r.breakAfter,{tile:r,index:s}=c.pop(),s++;else if(e){let h=Math.min(e,r.length-s);n&&n.skip(r,s,s+h),e-=h,s+=h}else break;return this.tile=r,this.index=s,this.beforeBreak=a,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}}class aW{constructor(e,i,n,r){this.from=e,this.to=i,this.wrapper=n,this.rank=r}}class lW{constructor(e,i,n){this.cache=e,this.root=i,this.blockWrappers=n,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(e,i,n,r){var s;this.flushBuffer();let a=this.ensureMarks(i,n),c=a.lastChild;if(c&&c.isText()&&!(c.flags&8)&&c.length+e.length<512){this.cache.reused.set(c,2);let h=a.children[a.children.length-1]=new Ya(c.dom,c.text+e);h.parent=a}else a.append(r||Ya.of(e,(s=this.cache.find(Ya))===null||s===void 0?void 0:s.dom));this.pos+=e.length,this.afterWidget=null}addComposition(e,i){let n=this.curLine;n.dom!=i.line.dom&&(n.setDOM(this.cache.reused.has(i.line)?xv(i.line.dom):i.line.dom),this.cache.reused.set(i.line,2));let r=n;for(let c=i.marks.length-1;c>=0;c--){let h=i.marks[c],d=r.lastChild;if(d instanceof Sn&&d.mark.eq(h.mark))d.dom!=h.dom&&d.setDOM(xv(h.dom)),r=d;else{if(this.cache.reused.get(h)){let g=It.get(h.dom);g&&g.setDOM(xv(h.dom))}let f=Sn.of(h.mark,h.dom);r.append(f),r=f}this.cache.reused.set(h,2)}let s=It.get(e.text);s&&this.cache.reused.set(s,2);let a=new Ya(e.text,e.text.nodeValue);a.flags|=8,r.append(a)}addInlineWidget(e,i,n){let r=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);r||this.flushBuffer();let s=this.ensureMarks(i,n);!r&&!(e.flags&16)&&s.append(this.getBuffer(1)),s.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,i,n){this.flushBuffer(),this.ensureMarks(i,n).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let i=this.afterWidget||this.lastBlock;i.length+=e,this.pos+=e}addLineStart(e,i){var n;e||(e=AR);let r=zc.start(e,i||((n=this.cache.find(zc))===null||n===void 0?void 0:n.dom),!!i);this.getBlockPos().append(this.lastBlock=this.curLine=r)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,i){var n;let r=this.curLine;for(let s=e.length-1;s>=0;s--){let a=e[s],c;if(i>0&&(c=r.lastChild)&&c instanceof Sn&&c.mark.eq(a))r=c,i--;else{let h=Sn.of(a,(n=this.cache.find(Sn,d=>d.mark.eq(a)))===null||n===void 0?void 0:n.dom);r.append(h),r=h,i=0}}return r}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!D2(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(be.ios&&D2(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(wv,0,32)||new ll(wv.toDOM(),0,wv,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to<this.pos&&this.wrappers.splice(e,1);for(let e=this.blockWrappers;e.value&&e.from<=this.pos;e.next())if(e.to>=this.pos){let i=new aW(e.from,e.to,e.value,e.rank),n=this.wrappers.length;for(;n>0&&(this.wrappers[n-1].rank-i.rank||this.wrappers[n-1].to-i.to)<0;)n--;this.wrappers.splice(n,0,i)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let i=this.root;for(let n of this.wrappers){let r=i.lastChild;if(n.from<this.pos&&r instanceof Ys&&r.wrapper.eq(n.wrapper))i=r;else{let s=Ys.of(n.wrapper,(e=this.cache.find(Ys,a=>a.wrapper.eq(n.wrapper)))===null||e===void 0?void 0:e.dom);i.append(s),i=s}}return i}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let i=2|(e<0?16:32),n=this.cache.find(Pg,void 0,1);return n&&(n.flags=i),n||new Pg(i)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}}class cW{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:r,lineBreak:s,done:a}=this.cursor.next(this.skipCount);if(this.skipCount=0,a)throw new Error("Ran out of text content when drawing inline views");this.text=r;let c=this.textOff=Math.min(e,r.length);return s?null:r.slice(0,c)}let i=Math.min(this.text.length,this.textOff+e),n=this.text.slice(this.textOff,i);return this.textOff=i,n}}const Eg=[ll,zc,Ya,Sn,Pg,Ys,Cm];for(let t=0;t<Eg.length;t++)Eg[t].bucket=t;class hW{constructor(e){this.view=e,this.buckets=Eg.map(()=>[]),this.index=Eg.map(()=>0),this.reused=new Map}add(e){let i=e.constructor.bucket,n=this.buckets[i];n.length<6?n.push(e):n[this.index[i]=(this.index[i]+1)%6]=e}find(e,i,n=2){let r=e.bucket,s=this.buckets[r],a=this.index[r];for(let c=s.length-1;c>=0;c--){let h=(c+a)%s.length,d=s[h];if((!i||i(d))&&!this.reused.has(d))return s.splice(h,1),h<a&&this.index[r]--,this.reused.set(d,n),d}return null}findWidget(e,i,n){let r=this.buckets[0];if(r.length)for(let s=0,a=0;;s++){if(s==r.length){if(a)return null;a=1,s=0}let c=r[s];if(!this.reused.has(c)&&(a==0?c.widget.compare(e):c.widget.constructor==e.constructor&&e.updateDOM(c.dom,this.view,c.widget)))return r.splice(s,1),s<this.index[0]&&this.index[0]--,c.widget==e&&c.length==i&&(c.flags&497)==n?(this.reused.set(c,1),c):(this.reused.set(c,2),new ll(c.dom,i,e,c.flags&-498|n))}}reuse(e){return this.reused.set(e,1),e}maybeReuse(e,i=2){if(!this.reused.has(e))return this.reused.set(e,i),e.dom}clear(){for(let e=0;e<this.buckets.length;e++)this.buckets[e].length=this.index[e]=0}}class uW{constructor(e,i,n,r,s){this.view=e,this.decorations=r,this.disallowBlockEffectsFor=s,this.openWidget=!1,this.openMarks=0,this.cache=new hW(e),this.text=new cW(e.state.doc),this.builder=new lW(this.cache,new Cm(e,e.contentDOM),nt.iter(n)),this.cache.reused.set(i,2),this.old=new oW(i),this.reuseWalker={skip:(a,c,h)=>{if(this.cache.add(a),a.isComposite())return!1},enter:a=>this.cache.add(a),leave:()=>{},break:()=>{}}}run(e,i){let n=i&&this.getCompositionContext(i.text);for(let r=0,s=0,a=0;;){let c=a<e.length?e[a++]:null,h=c?c.fromA:this.old.root.length;if(h>r){let d=h-r;this.preserve(d,!a,!c),r=h,s+=d}if(!c)break;i&&c.fromA<=i.range.fromA&&c.toA>=i.range.toA?(this.forward(c.fromA,i.range.fromA,i.range.fromA<i.range.toA?1:-1),this.emit(s,i.range.fromB),this.cache.clear(),this.builder.addComposition(i,n),this.text.skip(i.range.toB-i.range.fromB),this.forward(i.range.fromA,c.toA),this.emit(i.range.toB,c.toB)):(this.forward(c.fromA,c.toA),this.emit(s,c.toB)),s=c.toB,r=c.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(e,i,n){let r=pW(this.old),s=this.openMarks;this.old.advance(e,n?1:-1,{skip:(a,c,h)=>{if(a.isWidget())if(this.openWidget)this.builder.continueWidget(h-c);else{let d=h>0||c<a.length?ll.of(a.widget,this.view,h-c,a.flags&496,this.cache.maybeReuse(a)):this.cache.reuse(a);d.flags&256?(d.flags&=-2,this.builder.addBlockWidget(d)):(this.builder.ensureLine(null),this.builder.addInlineWidget(d,r,s),s=r.length)}else if(a.isText())this.builder.ensureLine(null),!c&&h==a.length&&!this.cache.reused.has(a)?this.builder.addText(a.text,r,s,this.cache.reuse(a)):(this.cache.add(a),this.builder.addText(a.text.slice(c,h),r,s)),s=r.length;else if(a.isLine())a.flags&=-2,this.cache.reused.set(a,1),this.builder.addLine(a);else if(a instanceof Pg)this.cache.add(a);else if(a instanceof Sn)this.builder.ensureLine(null),this.builder.addMark(a,r,s),this.cache.reused.set(a,1),s=r.length;else return!1;this.openWidget=!1},enter:a=>{a.isLine()?this.builder.addLineStart(a.attrs,this.cache.maybeReuse(a)):(this.cache.add(a),a instanceof Sn&&r.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?r.length&&(r.length=s=0):a instanceof Sn&&(r.shift(),s=Math.min(s,r.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,i){let n=null,r=this.builder,s=0,a=nt.spans(this.decorations,e,i,{point:(c,h,d,f,g,m)=>{if(d instanceof ol){if(this.disallowBlockEffectsFor[m]){if(d.block)throw new RangeError("Block decorations may not be specified via plugins");if(h>this.view.state.doc.lineAt(c).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(s=f.length,g>f.length)r.continueWidget(h-c);else{let v=d.widget||(d.block?jc.block:jc.inline),S=dW(d),_=this.cache.findWidget(v,h-c,S)||ll.of(v,this.view,h-c,S);d.block?(d.startSide>0&&r.addLineStartIfNotCovered(n),r.addBlockWidget(_)):(r.ensureLine(n),r.addInlineWidget(_,f,g))}n=null}else n=fW(n,d);h>c&&this.text.skip(h-c)},span:(c,h,d,f)=>{for(let g=c;g<h;){let m=this.text.next(Math.min(512,h-g));m==null?(r.addLineStartIfNotCovered(n),r.addBreak(),g++):(r.ensureLine(n),r.addText(m,d,g==c?f:d.length),g+=m.length),n=null}}});r.addLineStartIfNotCovered(n),this.openWidget=a>s,this.openMarks=a}forward(e,i,n=1){i-e<=10?this.old.advance(i-e,n,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(i-e-10,-1),this.old.advance(5,n,this.reuseWalker))}getCompositionContext(e){let i=[],n=null;for(let r=e.parentNode;;r=r.parentNode){let s=It.get(r);if(r==this.view.contentDOM)break;s instanceof Sn?i.push(s):s!=null&&s.isLine()?n=s:s instanceof Ys||(r.nodeName=="DIV"&&!n&&r!=this.view.contentDOM?n=new zc(r,AR):n||i.push(Sn.of(new vd({tagName:r.nodeName.toLowerCase(),attributes:XZ(r)}),r)))}return{line:n,marks:i}}}function D2(t,e){let i=n=>{for(let r of n.children)if((e?r.isText():r.length)||i(r))return!0;return!1};return i(t)}function dW(t){let e=t.isReplace?(t.startSide<0?64:0)|(t.endSide>0?128:0):t.startSide>0?32:16;return t.block&&(e|=256),e}const AR={class:"cm-line"};function fW(t,e){let i=e.spec.attributes,n=e.spec.class;return!i&&!n||(t||(t={class:"cm-line"}),i&&nb(i,t),n&&(t.class+=" "+n)),t}function pW(t){let e=[];for(let i=t.parents.length;i>1;i--){let n=i==t.parents.length?t.tile:t.parents[i].tile;n instanceof Sn&&e.push(n.mark)}return e}function xv(t){let e=It.get(t);return e&&e.setDOM(t.cloneNode()),t}class jc extends pl{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}jc.inline=new jc("span");jc.block=new jc("div");const wv=new class extends pl{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}};class B2{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=qe.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new Cm(e,e.contentDOM),this.updateInner([new lr(0,0,0,e.state.doc.length)],null)}update(e){var i;let n=e.changedRanges;this.minWidth>0&&n.length&&(n.every(({fromA:f,toA:g})=>g<this.minWidthFrom||f>this.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let r=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((i=this.domChanged)===null||i===void 0)&&i.newSel?r=this.domChanged.newSel.head:!xW(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let s=r>-1?mW(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){let{from:f,to:g}=this.hasComposition;n=new lr(f,g,e.changes.mapPos(f,-1),e.changes.mapPos(g,1)).addToSet(n.slice())}this.hasComposition=s?{from:s.range.fromB,to:s.range.toB}:null,(be.ie||be.chrome)&&!s&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let a=this.decorations,c=this.blockWrappers;this.updateDeco();let h=yW(a,this.decorations,e.changes);h.length&&(n=lr.extendWithRanges(n,h));let d=bW(c,this.blockWrappers,e.changes);return d.length&&(n=lr.extendWithRanges(n,d)),s&&!n.some(f=>f.fromA<=s.range.fromA&&f.toA>=s.range.toA)&&(n=s.range.addToSet(n.slice())),this.tile.flags&2&&n.length==0?!1:(this.updateInner(n,s),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,i){this.view.viewState.mustMeasureContent=!0;let{observer:n}=this.view;n.ignore(()=>{if(i||e.length){let a=this.tile,c=new uW(this.view,a,this.blockWrappers,this.decorations,this.dynamicDecorationMap);i&&It.get(i.text)&&c.cache.reused.set(It.get(i.text),2),this.tile=c.run(e,i),cS(a,c.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let s=be.chrome||be.ios?{node:n.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(s),s&&(s.written||n.selectionRange.focusNode!=s.node||!this.tile.dom.contains(s.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let r=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let s of this.tile.children)s.isWidget()&&s.widget instanceof kv&&r.push(s.dom);n.updateGaps(r)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let i of e.transactions)for(let n of i.effects)n.is(QR)&&(this.editContextFormatting=n.value)}updateSelection(e=!1,i=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:n}=this.tile,r=this.view.root.activeElement,s=r==n,a=!s&&!(this.view.state.facet(qs)||n.tabIndex>-1)&&Tu(n,this.view.observer.selectionRange)&&!(r&&n.contains(r));if(!(s||i||a))return;let c=this.forceSelection;this.forceSelection=!1;let h=this.view.state.selection.main,d,f;if(h.empty?f=d=this.inlineDOMNearPos(h.anchor,h.assoc||1):(f=this.inlineDOMNearPos(h.head,h.head==h.from?1:-1),d=this.inlineDOMNearPos(h.anchor,h.anchor==h.from?1:-1)),be.gecko&&h.empty&&!this.hasComposition&&gW(d)){let m=document.createTextNode("");this.view.observer.ignore(()=>d.node.insertBefore(m,d.node.childNodes[d.offset]||null)),d=f=new Er(m,0),c=!0}let g=this.view.observer.selectionRange;(c||!g.focusNode||(!Qu(d.node,d.offset,g.anchorNode,g.anchorOffset)||!Qu(f.node,f.offset,g.focusNode,g.focusOffset))&&!this.suppressWidgetCursorChange(g,h))&&(this.view.observer.ignore(()=>{be.android&&be.chrome&&n.contains(g.focusNode)&&_W(g.focusNode,n)&&(n.blur(),n.focus({preventScroll:!0}));let m=Yu(this.view.root);if(m)if(h.empty){if(be.gecko){let v=OW(d.node,d.offset);if(v&&v!=3){let S=(v==1?dR:fR)(d.node,d.offset);S&&(d=new Er(S.node,S.offset))}}m.collapse(d.node,d.offset),h.bidiLevel!=null&&m.caretBidiLevel!==void 0&&(m.caretBidiLevel=h.bidiLevel)}else if(m.extend){m.collapse(d.node,d.offset);try{m.extend(f.node,f.offset)}catch{}}else{let v=document.createRange();h.anchor>h.head&&([d,f]=[f,d]),v.setEnd(f.node,f.offset),v.setStart(d.node,d.offset),m.removeAllRanges(),m.addRange(v)}a&&this.view.root.activeElement==n&&(n.blur(),r&&r.focus())}),this.view.observer.setSelectionRange(d,f)),this.impreciseAnchor=d.precise?null:new Er(g.anchorNode,g.anchorOffset),this.impreciseHead=f.precise?null:new Er(g.focusNode,g.focusOffset)}suppressWidgetCursorChange(e,i){return this.hasComposition&&i.empty&&Qu(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==i.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,i=e.state.selection.main,n=Yu(e.root),{anchorNode:r,anchorOffset:s}=e.observer.selectionRange;if(!n||!i.empty||!i.assoc||!n.modify)return;let a=this.lineAt(i.head,i.assoc);if(!a)return;let c=a.posAtStart;if(i.head==c||i.head==c+a.length)return;let h=this.coordsAt(i.head,-1),d=this.coordsAt(i.head,1);if(!h||!d||h.bottom>d.top)return;let f=this.domAtPos(i.head+i.assoc,i.assoc);n.collapse(f.node,f.offset),n.modify("move",i.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let g=e.observer.selectionRange;e.docView.posFromDOM(g.anchorNode,g.anchorOffset)!=i.from&&n.collapse(r,s)}posFromDOM(e,i){let n=this.tile.nearest(e);if(!n)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let r=n.posAtStart;if(n.isComposite()){let s;if(e==n.dom)s=n.dom.childNodes[i];else{let a=Fs(e)==0?0:i==0?-1:1;for(;;){let c=e.parentNode;if(c==n.dom)break;a==0&&c.firstChild!=c.lastChild&&(e==c.firstChild?a=-1:a=1),e=c}a<0?s=e:s=e.nextSibling}if(s==n.dom.firstChild)return r;for(;s&&!It.get(s);)s=s.nextSibling;if(!s)return r+n.length;for(let a=0,c=r;;a++){let h=n.children[a];if(h.dom==s)return c;c+=h.length+h.breakAfter}}else return n.isText()?e==n.dom?r+i:r+(i?n.length:0):r}domAtPos(e,i){let{tile:n,offset:r}=this.tile.resolveBlock(e,i);return n.isWidget()?n.domPosFor(e,i):n.domIn(r,i)}inlineDOMNearPos(e,i){let n,r=-1,s=!1,a,c=-1,h=!1;return this.tile.blockTiles((d,f)=>{if(d.isWidget()){if(d.flags&32&&f>=e)return!0;d.flags&16&&(s=!0)}else{let g=f+d.length;if(f<=e&&(n=d,r=e-f,s=g<e),g>=e&&!a&&(a=d,c=e-f,h=f>e),f>e&&a)return!0}}),!n&&!a?this.domAtPos(e,i):(s&&a?n=null:h&&n&&(a=null),n&&i<0||!a?n.domIn(r,i):a.domIn(c,i))}coordsAt(e,i){let{tile:n,offset:r}=this.tile.resolveBlock(e,i);return n.isWidget()?n.widget instanceof kv?null:n.coordsInWidget(r,i,!0):n.coordsIn(r,i)}lineAt(e,i){let{tile:n}=this.tile.resolveBlock(e,i);return n.isLine()?n:null}coordsForChar(e){let{tile:i,offset:n}=this.tile.resolveBlock(e,1);if(!i.isLine())return null;function r(s,a){if(s.isComposite())for(let c of s.children){if(c.length>=a){let h=r(c,a);if(h)return h}if(a-=c.length,a<0)break}else if(s.isText()&&a<s.length){let c=Qi(s.text,a);if(c==a)return null;let h=Hu(s.dom,a,c).getClientRects();for(let d=0;d<h.length;d++){let f=h[d];if(d==h.length-1||f.top<f.bottom&&f.left<f.right)return f}}return null}return r(i,n)}measureVisibleLineHeights(e){let i=[],{from:n,to:r}=e,s=this.view.contentDOM.clientWidth,a=s>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,c=-1,h=this.view.textDirection==Tt.LTR,d=0,f=(g,m,v)=>{for(let S=0;S<g.children.length&&!(m>r);S++){let _=g.children[S],w=m+_.length,x=_.dom.getBoundingClientRect(),{height:Q}=x;if(v&&!S&&(d+=x.top-v.top),_ instanceof Ys)w>n&&f(_,m,x);else if(m>=n&&(d>0&&i.push(-d),i.push(Q+d),d=0,a)){let C=_.dom.lastChild,T=C?Hp(C):[];if(T.length){let A=T[T.length-1],P=h?A.right-x.left:x.right-A.left;P>c&&(c=P,this.minWidth=s,this.minWidthFrom=m,this.minWidthTo=w)}}v&&S==g.children.length-1&&(d+=v.bottom-x.bottom),m=w+_.breakAfter}};return f(this.tile,0,null),i}textDirectionAt(e){let{tile:i}=this.tile.resolveBlock(e,1);return getComputedStyle(i.dom).direction=="rtl"?Tt.RTL:Tt.LTR}measureTextSize(){let e=this.tile.blockTiles(a=>{if(a.isLine()&&a.children.length&&a.length<=20){let c=0,h;for(let d of a.children){if(!d.isText()||/[^ -~]/.test(d.text))return;let f=Hp(d.dom);if(f.length!=1)return;c+=f[0].width,h=f[0].height}if(c)return{lineHeight:a.dom.getBoundingClientRect().height,charWidth:c/a.length,textHeight:h}}});if(e)return e;let i=document.createElement("div"),n,r,s;return i.className="cm-line",i.style.width="99999px",i.style.position="absolute",i.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(i);let a=Hp(i.firstChild)[0];n=i.getBoundingClientRect().height,r=a&&a.width?a.width/27:7,s=a&&a.height?a.height:n,i.remove()}),{lineHeight:n,charWidth:r,textHeight:s}}computeBlockGapDeco(){let e=[],i=this.view.viewState;for(let n=0,r=0;;r++){let s=r==i.viewports.length?null:i.viewports[r],a=s?s.from-1:this.view.state.doc.length;if(a>n){let c=(i.lineBlockAt(a).bottom-i.lineBlockAt(n).top)/this.view.scaleY;e.push(qe.replace({widget:new kv(c),block:!0,inclusive:!0,isBlockGap:!0}).range(n,a))}if(!s)break;n=s.to+1}return qe.set(e)}updateDeco(){let e=1,i=this.view.state.facet(wm).map(s=>(this.dynamicDecorationMap[e++]=typeof s=="function")?s(this.view):s),n=!1,r=this.view.state.facet(cb).map((s,a)=>{let c=typeof s=="function";return c&&(n=!0),c?s(this.view):s});for(r.length&&(this.dynamicDecorationMap[e++]=n,i.push(nt.join(r))),this.decorations=[this.editContextFormatting,...i,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e<this.decorations.length;)this.dynamicDecorationMap[e++]=!1;this.blockWrappers=this.view.state.facet(PR).map(s=>typeof s=="function"?s(this.view):s)}scrollIntoView(e){var i;if(e.isSnapshot){let f=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=f.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let f of this.view.state.facet(TR))try{if(f(this.view,e.range,e))return!0}catch(g){Yn(this.view.state,g,"scroll handler")}let{range:n}=e,r=this.coordsAt(n.head,(i=n.assoc)!==null&&i!==void 0?i:n.empty?0:n.head>n.anchor?-1:1),s;if(!r)return;!n.empty&&(s=this.coordsAt(n.anchor,n.anchor>n.head?-1:1))&&(r={left:Math.min(r.left,s.left),top:Math.min(r.top,s.top),right:Math.max(r.right,s.right),bottom:Math.max(r.bottom,s.bottom)});let a=hb(this.view),c={left:r.left-a.left,top:r.top-a.top,right:r.right+a.right,bottom:r.bottom+a.bottom},{offsetWidth:h,offsetHeight:d}=this.view.scrollDOM;if(WZ(this.view.scrollDOM,c,n.head<n.anchor?-1:1,e.x,e.y,Math.max(Math.min(e.xMargin,h),-h),Math.max(Math.min(e.yMargin,d),-d),this.view.textDirection==Tt.LTR),window.visualViewport&&window.innerHeight-window.visualViewport.height>1&&(r.top>window.pageYOffset+window.visualViewport.offsetTop+window.visualViewport.height||r.bottom<window.pageYOffset+window.visualViewport.offsetTop)){let f=this.view.docView.lineAt(n.head,1);f&&f.dom.scrollIntoView({block:"nearest"})}}lineHasWidget(e){let i=n=>n.isWidget()||n.children.some(i);return i(this.tile.resolveBlock(e,1).tile)}destroy(){cS(this.tile)}}function cS(t,e){let i=e==null?void 0:e.get(t);if(i!=1){i==null&&t.destroy();for(let n of t.children)cS(n,e)}}function gW(t){return t.node.nodeType==1&&t.node.firstChild&&(t.offset==0||t.node.childNodes[t.offset-1].contentEditable=="false")&&(t.offset==t.node.childNodes.length||t.node.childNodes[t.offset].contentEditable=="false")}function MR(t,e){let i=t.observer.selectionRange;if(!i.focusNode)return null;let n=dR(i.focusNode,i.focusOffset),r=fR(i.focusNode,i.focusOffset),s=n||r;if(r&&n&&r.node!=n.node){let c=It.get(r.node);if(!c||c.isText()&&c.text!=r.node.nodeValue)s=r;else if(t.docView.lastCompositionAfterCursor){let h=It.get(n.node);!h||h.isText()&&h.text!=n.node.nodeValue||(s=r)}}if(t.docView.lastCompositionAfterCursor=s!=n,!s)return null;let a=e-s.offset;return{from:a,to:a+s.node.nodeValue.length,node:s.node}}function mW(t,e,i){let n=MR(t,i);if(!n)return null;let{node:r,from:s,to:a}=n,c=r.nodeValue;if(/[\n\r]/.test(c)||t.state.doc.sliceString(n.from,n.to)!=c)return null;let h=e.invertedDesc;return{range:new lr(h.mapPos(s),h.mapPos(a),s,a),text:r}}function OW(t,e){return t.nodeType!=1?0:(e&&t.childNodes[e-1].contentEditable=="false"?1:0)|(e<t.childNodes.length&&t.childNodes[e].contentEditable=="false"?2:0)}let vW=class{constructor(){this.changes=[]}compareRange(e,i){vc(e,i,this.changes)}comparePoint(e,i){vc(e,i,this.changes)}boundChange(e){vc(e,e,this.changes)}};function yW(t,e,i){let n=new vW;return nt.compare(t,e,i,n),n.changes}class SW{constructor(){this.changes=[]}compareRange(e,i){vc(e,i,this.changes)}comparePoint(){}boundChange(e){vc(e,e,this.changes)}}function bW(t,e,i){let n=new SW;return nt.compare(t,e,i,n),n.changes}function _W(t,e){for(let i=t;i&&i!=e;i=i.assignedSlot||i.parentNode)if(i.nodeType==1&&i.contentEditable=="false")return!0;return!1}function xW(t,e){let i=!1;return e&&t.iterChangedRanges((n,r)=>{n<e.to&&r>e.from&&(i=!0)}),i}class kv extends pl{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}function wW(t,e,i=1){let n=t.charCategorizer(e),r=t.doc.lineAt(e),s=e-r.from;if(r.length==0)return le.cursor(e);s==0?i=1:s==r.length&&(i=-1);let a=s,c=s;i<0?a=Qi(r.text,s,!1):c=Qi(r.text,s);let h=n(r.text.slice(a,c));for(;a>0;){let d=Qi(r.text,a,!1);if(n(r.text.slice(d,a))!=h)break;a=d}for(;c<r.length;){let d=Qi(r.text,c);if(n(r.text.slice(c,d))!=h)break;c=d}return le.range(a+r.from,c+r.from)}function kW(t,e,i,n,r){let s=Math.round((n-e.left)*t.defaultCharacterWidth);if(t.lineWrapping&&i.height>t.defaultLineHeight*1.5){let c=t.viewState.heightOracle.textHeight,h=Math.floor((r-i.top-(t.defaultLineHeight-c)*.5)/c);s+=h*t.viewState.heightOracle.lineLength}let a=t.state.sliceDoc(i.from,i.to);return i.from+MZ(a,s,t.state.tabSize)}function hS(t,e,i){let n=t.lineBlockAt(e);if(Array.isArray(n.type)){let r;for(let s of n.type){if(s.from>e)break;if(!(s.to<e)){if(s.from<e&&s.to>e)return s;(!r||s.type==Xi.Text&&(r.type!=s.type||(i<0?s.from<e:s.to>e)))&&(r=s)}}return r||n}return n}function CW(t,e,i,n){let r=hS(t,e.head,e.assoc||-1),s=!n||r.type!=Xi.Text||!(t.lineWrapping||r.widgetLineBreaks)?null:t.coordsAtPos(e.assoc<0&&e.head>r.from?e.head-1:e.head);if(s){let a=t.dom.getBoundingClientRect(),c=t.textDirectionAt(r.from),h=t.posAtCoords({x:i==(c==Tt.LTR)?a.right-1:a.left+1,y:(s.top+s.bottom)/2});if(h!=null)return le.cursor(h,i?-1:1)}return le.cursor(i?r.to:r.from,i?-1:1)}function L2(t,e,i,n){let r=t.state.doc.lineAt(e.head),s=t.bidiSpans(r),a=t.textDirectionAt(r.from);for(let c=e,h=null;;){let d=eW(r,s,a,c,i),f=vR;if(!d){if(r.number==(i?t.state.doc.lines:1))return c;f=`
110
- `,r=t.state.doc.line(r.number+(i?1:-1)),s=t.bidiSpans(r),d=t.visualLineSide(r,!i)}if(h){if(!h(f))return c}else{if(!n)return d;h=n(f)}c=d}}function TW(t,e,i){let n=t.state.charCategorizer(e),r=n(i);return s=>{let a=n(s);return r==Kt.Space&&(r=a),r==a}}function QW(t,e,i,n){let r=e.head,s=i?1:-1;if(r==(i?t.state.doc.length:0))return le.cursor(r,e.assoc);let a=e.goalColumn,c,h=t.contentDOM.getBoundingClientRect(),d=t.coordsAtPos(r,e.assoc||((e.empty?i:e.head==e.from)?1:-1)),f=t.documentTop;if(d)a==null&&(a=d.left-h.left),c=s<0?d.top:d.bottom;else{let S=t.viewState.lineBlockAt(r);a==null&&(a=Math.min(h.right-h.left,t.defaultCharacterWidth*(r-S.from))),c=(s<0?S.top:S.bottom)+f}let g=h.left+a,m=t.viewState.heightOracle.textHeight>>1,v=n??m;for(let S=0;;S+=m){let _=c+(v+S)*s,w=uS(t,{x:g,y:_},!1,s);if(i?_>h.bottom:_<h.top)return le.cursor(w.pos,w.assoc);let x=t.coordsAtPos(w.pos,w.assoc),Q=x?(x.top+x.bottom)/2:0;if(!x||(i?Q>c:Q<c))return le.cursor(w.pos,w.assoc,void 0,a)}}function $u(t,e,i){for(;;){let n=0;for(let r of t)r.between(e-1,e+1,(s,a,c)=>{if(e>s&&e<a){let h=n||i||(e-s<a-e?-1:1);e=h<0?s:a,n=h}});if(!n)return e}}function zR(t,e){let i=null;for(let n=0;n<e.ranges.length;n++){let r=e.ranges[n],s=null;if(r.empty){let a=$u(t,r.from,0);a!=r.from&&(s=le.cursor(a,-1))}else{let a=$u(t,r.from,-1),c=$u(t,r.to,1);(a!=r.from||c!=r.to)&&(s=le.range(r.from==r.anchor?a:c,r.from==r.head?a:c))}s&&(i||(i=e.ranges.slice()),i[n]=s)}return i?le.create(i,e.mainIndex):e}function Cv(t,e,i){let n=$u(t.state.facet(Sd).map(r=>r(t)),i.from,e.head>i.from?-1:1);return n==i.from?i:le.cursor(n,n<i.from?1:-1)}class es{constructor(e,i){this.pos=e,this.assoc=i}}function uS(t,e,i,n){let r=t.contentDOM.getBoundingClientRect(),s=r.top+t.viewState.paddingTop,{x:a,y:c}=e,h=c-s,d;for(;;){if(h<0)return new es(0,1);if(h>t.viewState.docHeight)return new es(t.state.doc.length,-1);if(d=t.elementAtHeight(h),n==null)break;if(d.type==Xi.Text){if(n<0?d.to<t.viewport.from:d.from>t.viewport.to)break;let m=t.docView.coordsAt(n<0?d.from:d.to,n>0?-1:1);if(m&&(n<0?m.top<=h+s:m.bottom>=h+s))break}let g=t.viewState.heightOracle.textHeight/2;h=n>0?d.bottom+g:d.top-g}if(t.viewport.from>=d.to||t.viewport.to<=d.from){if(i)return null;if(d.type==Xi.Text){let g=kW(t,r,d,a,c);return new es(g,g==d.from?1:-1)}}if(d.type!=Xi.Text)return h<(d.top+d.bottom)/2?new es(d.from,1):new es(d.to,-1);let f=t.docView.lineAt(d.from,2);return(!f||f.length!=d.length)&&(f=t.docView.lineAt(d.from,-2)),new $W(t,a,c,t.textDirectionAt(d.from)).scanTile(f,d.from)}class $W{constructor(e,i,n,r){this.view=e,this.x=i,this.y=n,this.baseDir=r,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to<e)&&(this.line=this.view.state.doc.lineAt(e),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(e,i){let{line:n,spans:r}=this.bidiSpansAt(e);return r[ts.find(r,e-n.from,-1,i)].level==this.baseDir}dirAt(e,i){let{line:n,spans:r}=this.bidiSpansAt(e);return r[ts.find(r,e-n.from,-1,i)].dir}bidiIn(e,i){let{spans:n,line:r}=this.bidiSpansAt(e);return n.length>1||n.length&&(n[0].level!=this.baseDir||n[0].to+r.from<i)}scan(e,i){let n=0,r=e.length-1,s=new Set,a=this.bidiIn(e[0],e[r]),c,h,d=-1,f=1e9,g;e:for(;n<r;){let v=r-n,S=n+r>>1;t:if(s.has(S)){let w=n+Math.floor(Math.random()*v);for(let x=0;x<v;x++){if(!s.has(w)){S=w;break t}w++,w==r&&(w=n)}break e}s.add(S);let _=i(S);if(_)for(let w=0;w<_.length;w++){let x=_[w],Q=0;if(!(x.width==0&&_.length>1)){if(x.bottom<this.y)(!c||c.bottom<x.bottom)&&(c=x),Q=1;else if(x.top>this.y)(!h||h.top>x.top)&&(h=x),Q=-1;else{let C=x.left>this.x?this.x-x.left:x.right<this.x?this.x-x.right:0,T=Math.abs(C);T<f&&(d=S,f=T,g=x),C&&(Q=C<0==(this.baseDir==Tt.LTR)?-1:1)}Q==-1&&(!a||this.baseDirAt(e[S],1))?r=S:Q==1&&(!a||this.baseDirAt(e[S+1],-1))&&(n=S+1)}}}if(!g){let v=c&&(!h||this.y-c.bottom<h.top-this.y)?c:h;return this.y=(v.top+v.bottom)/2,this.scan(e,i)}if(f){if(c&&c.bottom>g.top)return this.y=c.bottom-1,this.scan(e,i);if(h&&h.top<g.bottom)return this.y=h.top+1,this.scan(e,i)}let m=(a?this.dirAt(e[d],1):this.baseDir)==Tt.LTR;return{i:d,after:this.x>(g.left+g.right)/2==m}}scanText(e,i){let n=[];for(let s=0;s<e.length;s=Qi(e.text,s))n.push(i+s);n.push(i+e.length);let r=this.scan(n,s=>{let a=n[s]-i,c=n[s+1]-i;return Hu(e.dom,a,c).getClientRects()});return r.after?new es(n[r.i+1],-1):new es(n[r.i],1)}scanTile(e,i){if(!e.length)return new es(i,1);if(e.children.length==1){let c=e.children[0];if(c.isText())return this.scanText(c,i);if(c.isComposite())return this.scanTile(c,i)}let n=[i];for(let c=0,h=i;c<e.children.length;c++)n.push(h+=e.children[c].length);let r=this.scan(n,c=>{let h=e.children[c];return h.flags&48?null:(h.dom.nodeType==1?h.dom:Hu(h.dom,0,h.length)).getClientRects()}),s=e.children[r.i],a=n[r.i];return s.isText()?this.scanText(s,a):s.isComposite()?this.scanTile(s,a):r.after?new es(n[r.i+1],-1):new es(a,1)}}const sc="￿";class PW{constructor(e,i){this.points=e,this.view=i,this.text="",this.lineSeparator=i.state.facet(ct.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=sc}readRange(e,i){if(!e)return this;let n=e.parentNode;for(let r=e;;){this.findPointBefore(n,r);let s=this.text.length;this.readNode(r);let a=It.get(r),c=r.nextSibling;if(c==i){a!=null&&a.breakAfter&&!c&&n!=this.view.contentDOM&&this.lineBreak();break}let h=It.get(c);(a&&h?a.breakAfter:(a?a.breakAfter:Tg(r))||Tg(c)&&(r.nodeName!="BR"||a!=null&&a.isWidget())&&this.text.length>s)&&!RW(c,i)&&this.lineBreak(),r=c}return this.findPointBefore(n,i),this}readTextNode(e){let i=e.nodeValue;for(let n of this.points)n.node==e&&(n.pos=this.text.length+Math.min(n.offset,i.length));for(let n=0,r=this.lineSeparator?null:/\r\n?|\n/g;;){let s=-1,a=1,c;if(this.lineSeparator?(s=i.indexOf(this.lineSeparator,n),a=this.lineSeparator.length):(c=r.exec(i))&&(s=c.index,a=c[0].length),this.append(i.slice(n,s<0?i.length:s)),s<0)break;if(this.lineBreak(),a>1)for(let h of this.points)h.node==e&&h.pos>this.text.length&&(h.pos-=a-1);n=s+a}}readNode(e){let i=It.get(e),n=i&&i.overrideDOMText;if(n!=null){this.findPointInside(e,n.length);for(let r=n.iter();!r.next().done;)r.lineBreak?this.lineBreak():this.append(r.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,i){for(let n of this.points)n.node==e&&e.childNodes[n.offset]==i&&(n.pos=this.text.length)}findPointInside(e,i){for(let n of this.points)(e.nodeType==3?n.node==e:e.contains(n.node))&&(n.pos=this.text.length+(EW(e,n.node,n.offset)?i:0))}}function EW(t,e,i){for(;;){if(!e||i<Fs(e))return!1;if(e==t)return!0;i=aa(e)+1,e=e.parentNode}}function RW(t,e){let i;for(;!(t==e||!t);t=t.nextSibling){let n=It.get(t);if(!(n!=null&&n.isWidget()))return!1;n&&(i||(i=[])).push(n)}if(i)for(let n of i){let r=n.overrideDOMText;if(r!=null&&r.length)return!1}return!0}class X2{constructor(e,i){this.node=e,this.offset=i,this.pos=-1}}class AW{constructor(e,i,n,r){this.typeOver=r,this.bounds=null,this.text="",this.domChanged=i>-1;let{impreciseHead:s,impreciseAnchor:a}=e.docView,c=e.state.selection;if(e.state.readOnly&&i>-1)this.newSel=null;else if(i>-1&&(this.bounds=jR(e.docView.tile,i,n,0))){let h=s||a?[]:zW(e),d=new PW(h,e);d.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=d.text,this.newSel=jW(h,this.bounds.from)}else{let h=e.observer.selectionRange,d=s&&s.node==h.focusNode&&s.offset==h.focusOffset||!rS(e.contentDOM,h.focusNode)?c.main.head:e.docView.posFromDOM(h.focusNode,h.focusOffset),f=a&&a.node==h.anchorNode&&a.offset==h.anchorOffset||!rS(e.contentDOM,h.anchorNode)?c.main.anchor:e.docView.posFromDOM(h.anchorNode,h.anchorOffset),g=e.viewport;if((be.ios||be.chrome)&&c.main.empty&&d!=f&&(g.from>0||g.to<e.state.doc.length)){let m=Math.min(d,f),v=Math.max(d,f),S=g.from-m,_=g.to-v;(S==0||S==1||m==0)&&(_==0||_==-1||v==e.state.doc.length)&&(d=0,f=e.state.doc.length)}if(e.inputState.composing>-1&&c.ranges.length>1)this.newSel=c.replaceRange(le.range(f,d));else if(e.lineWrapping&&f==d&&!(c.main.empty&&c.main.head==d)&&e.inputState.lastTouchTime>Date.now()-100){let m=e.coordsAtPos(d,-1),v=0;m&&(v=e.inputState.lastTouchY<=m.bottom?-1:1),this.newSel=le.create([le.cursor(d,v)])}else this.newSel=le.single(f,d)}}}function jR(t,e,i,n){if(t.isComposite()){let r=-1,s=-1,a=-1,c=-1;for(let h=0,d=n,f=n;h<t.children.length;h++){let g=t.children[h],m=d+g.length;if(d<e&&m>i)return jR(g,e,i,d);if(m>=e&&r==-1&&(r=h,s=d),d>i&&g.dom.parentNode==t.dom){a=h,c=f;break}f=m,d=m+g.breakAfter}return{from:s,to:c<0?n+t.length:c,startDOM:(r?t.children[r-1].dom.nextSibling:null)||t.dom.firstChild,endDOM:a<t.children.length&&a>=0?t.children[a].dom:null}}else return t.isText()?{from:n,to:n+t.length,startDOM:t.dom,endDOM:t.dom.nextSibling}:null}function DR(t,e){let i,{newSel:n}=e,{state:r}=t,s=r.selection.main,a=t.inputState.lastKeyTime>Date.now()-100?t.inputState.lastKeyCode:-1;if(e.bounds){let{from:c,to:h}=e.bounds,d=s.from,f=null;(a===8||be.android&&e.text.length<h-c)&&(d=s.to,f="end");let g=r.doc.sliceString(c,h,sc),m,v;!s.empty&&s.from>=c&&s.to<=h&&(e.typeOver||g!=e.text)&&g.slice(0,s.from-c)==e.text.slice(0,s.from-c)&&g.slice(s.to-c)==e.text.slice(m=e.text.length-(g.length-(s.to-c)))?i={from:s.from,to:s.to,insert:dt.of(e.text.slice(s.from-c,m).split(sc))}:(v=BR(g,e.text,d-c,f))&&(be.chrome&&a==13&&v.toB==v.from+2&&e.text.slice(v.from,v.toB)==sc+sc&&v.toB--,i={from:c+v.from,to:c+v.toA,insert:dt.of(e.text.slice(v.from,v.toB).split(sc))})}else n&&(!t.hasFocus&&r.facet(qs)||Rg(n,s))&&(n=null);if(!i&&!n)return!1;if((be.mac||be.android)&&i&&i.from==i.to&&i.from==s.head-1&&/^\. ?$/.test(i.insert.toString())&&t.contentDOM.getAttribute("autocorrect")=="off"?(n&&i.insert.length==2&&(n=le.single(n.main.anchor-1,n.main.head-1)),i={from:i.from,to:i.to,insert:dt.of([i.insert.toString().replace("."," ")])}):r.doc.lineAt(s.from).to<s.to&&t.docView.lineHasWidget(s.to)&&t.inputState.insertingTextAt>Date.now()-50?i={from:s.from,to:s.to,insert:r.toText(t.inputState.insertingText)}:be.chrome&&i&&i.from==i.to&&i.from==s.head&&i.insert.toString()==`
111
- `&&t.lineWrapping&&(n&&(n=le.single(n.main.anchor-1,n.main.head-1)),i={from:s.from,to:s.to,insert:dt.of([" "])}),i)return ub(t,i,n,a);if(n&&!Rg(n,s)){let c=!1,h="select";return t.inputState.lastSelectionTime>Date.now()-50&&(t.inputState.lastSelectionOrigin=="select"&&(c=!0),h=t.inputState.lastSelectionOrigin,h=="select.pointer"&&(n=zR(r.facet(Sd).map(d=>d(t)),n))),t.dispatch({selection:n,scrollIntoView:c,userEvent:h}),!0}else return!1}function ub(t,e,i,n=-1){if(be.ios&&t.inputState.flushIOSKey(e))return!0;let r=t.state.selection.main;if(be.android&&(e.to==r.to&&(e.from==r.from||e.from==r.from-1&&t.state.sliceDoc(e.from,r.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&yc(t.contentDOM,"Enter",13)||(e.from==r.from-1&&e.to==r.to&&e.insert.length==0||n==8&&e.insert.length<e.to-e.from&&e.to>r.head)&&yc(t.contentDOM,"Backspace",8)||e.from==r.from&&e.to==r.to+1&&e.insert.length==0&&yc(t.contentDOM,"Delete",46)))return!0;let s=e.insert.toString();t.inputState.composing>=0&&t.inputState.composing++;let a,c=()=>a||(a=MW(t,e,i));return t.state.facet(xR).some(h=>h(t,e.from,e.to,s,c))||t.dispatch(c()),!0}function MW(t,e,i){let n,r=t.state,s=r.selection.main,a=-1;if(e.from==e.to&&e.from<s.from||e.from>s.to){let h=e.from<s.from?-1:1,d=h<0?s.from:s.to,f=$u(r.facet(Sd).map(g=>g(t)),d,h);e.from==f&&(a=f)}if(a>-1)n={changes:e,selection:le.cursor(e.from+e.insert.length,-1)};else if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!i||i.main.empty&&i.main.from==e.from+e.insert.length)&&t.inputState.composing<0){let h=s.from<e.from?r.sliceDoc(s.from,e.from):"",d=s.to>e.to?r.sliceDoc(e.to,s.to):"";n=r.replaceSelection(t.state.toText(h+e.insert.sliceString(0,void 0,t.state.lineBreak)+d))}else{let h=r.changes(e),d=i&&i.main.to<=h.newLength?i.main:void 0;if(r.selection.ranges.length>1&&(t.inputState.composing>=0||t.inputState.compositionPendingChange)&&e.to<=s.to+10&&e.to>=s.to-10){let f=t.state.sliceDoc(e.from,e.to),g,m=i&&MR(t,i.main.head);if(m){let S=e.insert.length-(e.to-e.from);g={from:m.from,to:m.to-S}}else g=t.state.doc.lineAt(s.head);let v=s.to-e.to;n=r.changeByRange(S=>{if(S.from==s.from&&S.to==s.to)return{changes:h,range:d||S.map(h)};let _=S.to-v,w=_-f.length;if(t.state.sliceDoc(w,_)!=f||_>=g.from&&w<=g.to)return{range:S};let x=r.changes({from:w,to:_,insert:e.insert}),Q=S.to-s.to;return{changes:x,range:d?le.range(Math.max(0,d.anchor+Q),Math.max(0,d.head+Q)):S.map(x)}})}else n={changes:h,selection:d&&r.selection.replaceRange(d)}}let c="input.type";return(t.composing||t.inputState.compositionPendingChange&&t.inputState.compositionEndedAt>Date.now()-50)&&(t.inputState.compositionPendingChange=!1,c+=".compose",t.inputState.compositionFirstChange&&(c+=".start",t.inputState.compositionFirstChange=!1)),r.update(n,{userEvent:c,scrollIntoView:!0})}function BR(t,e,i,n){let r=Math.min(t.length,e.length),s=0;for(;s<r&&t.charCodeAt(s)==e.charCodeAt(s);)s++;if(s==r&&t.length==e.length)return null;let a=t.length,c=e.length;for(;a>0&&c>0&&t.charCodeAt(a-1)==e.charCodeAt(c-1);)a--,c--;if(n=="end"){let h=Math.max(0,s-Math.min(a,c));i-=a+h-s}if(a<s&&t.length<e.length){let h=i<=s&&i>=a?s-i:0;s-=h,c=s+(c-a),a=s}else if(c<s){let h=i<=s&&i>=c?s-i:0;s-=h,a=s+(a-c),c=s}return{from:s,toA:a,toB:c}}function zW(t){let e=[];if(t.root.activeElement!=t.contentDOM)return e;let{anchorNode:i,anchorOffset:n,focusNode:r,focusOffset:s}=t.observer.selectionRange;return i&&(e.push(new X2(i,n)),(r!=i||s!=n)&&e.push(new X2(r,s))),e}function jW(t,e){if(t.length==0)return null;let i=t[0].pos,n=t.length==2?t[1].pos:i;return i>-1&&n>-1?le.single(i+e,n+e):null}function Rg(t,e){return e.head==t.main.head&&e.anchor==t.main.anchor}class DW{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,be.safari&&e.contentDOM.addEventListener("input",()=>null),be.gecko&&KW(e.contentDOM.ownerDocument)}handleEvent(e){!IW(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,i){let n=this.handlers[e];if(n){for(let r of n.observers)r(this.view,i);for(let r of n.handlers){if(i.defaultPrevented)break;if(r(this.view,i)){i.preventDefault();break}}}}ensureHandlers(e){let i=BW(e),n=this.handlers,r=this.view.contentDOM;for(let s in i)if(s!="scroll"){let a=!i[s].handlers.length,c=n[s];c&&a!=!c.handlers.length&&(r.removeEventListener(s,this.handleEvent),c=null),c||r.addEventListener(s,this.handleEvent,{passive:a})}for(let s in n)s!="scroll"&&!i[s]&&r.removeEventListener(s,this.handleEvent);this.handlers=i}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&XR.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),be.android&&be.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let i;return be.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&!e.shiftKey&&((i=LR.find(n=>n.keyCode==e.keyCode))&&!e.ctrlKey||LW.indexOf(e.key)>-1&&e.ctrlKey)?(this.pendingIOSKey=i||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(e){let i=this.pendingIOSKey;return!i||i.key=="Enter"&&e&&e.from<e.to&&/^\S+$/.test(e.insert.toString())?!1:(this.pendingIOSKey=void 0,yc(this.view.contentDOM,i.key,i.keyCode,i instanceof KeyboardEvent?i:void 0))}ignoreDuringComposition(e){return!/^key/.test(e.type)||e.synthetic?!1:this.composing>0?!0:be.safari&&!be.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function N2(t,e){return(i,n)=>{try{return e.call(t,n,i)}catch(r){Yn(i.state,r)}}}function BW(t){let e=Object.create(null);function i(n){return e[n]||(e[n]={observers:[],handlers:[]})}for(let n of t){let r=n.spec,s=r&&r.plugin.domEventHandlers,a=r&&r.plugin.domEventObservers;if(s)for(let c in s){let h=s[c];h&&i(c).handlers.push(N2(n.value,h))}if(a)for(let c in a){let h=a[c];h&&i(c).observers.push(N2(n.value,h))}}for(let n in Rr)i(n).handlers.push(Rr[n]);for(let n in xn)i(n).observers.push(xn[n]);return e}const LR=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],LW="dthko",XR=[16,17,18,20,91,92,224,225],gp=6;function mp(t){return Math.max(0,t)*.7+8}function XW(t,e){return Math.max(Math.abs(t.clientX-e.clientX),Math.abs(t.clientY-e.clientY))}class NW{constructor(e,i,n,r){this.view=e,this.startEvent=i,this.style=n,this.mustSelect=r,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=i,this.scrollParents=cR(e.contentDOM),this.atoms=e.state.facet(Sd).map(a=>a(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=i.shiftKey,this.multiple=e.state.facet(ct.allowMultipleSelections)&&ZW(e,i),this.dragging=qW(e,i)&&WR(i)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&XW(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let i=0,n=0,r=0,s=0,a=this.view.win.innerWidth,c=this.view.win.innerHeight;this.scrollParents.x&&({left:r,right:a}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:s,bottom:c}=this.scrollParents.y.getBoundingClientRect());let h=hb(this.view);e.clientX-h.left<=r+gp?i=-mp(r-e.clientX):e.clientX+h.right>=a-gp&&(i=mp(e.clientX-a)),e.clientY-h.top<=s+gp?n=-mp(s-e.clientY):e.clientY+h.bottom>=c-gp&&(n=mp(e.clientY-c)),this.setScrollSpeed(i,n)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,i){this.scrollSpeed={x:e,y:i},e||i?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:i}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),i&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=i,i=0),(e||i)&&this.view.win.scrollBy(e,i),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:i}=this,n=zR(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!n.eq(i.state.selection,this.dragging===!1))&&this.view.dispatch({selection:n,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(i=>i.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function ZW(t,e){let i=t.state.facet(yR);return i.length?i[0](e):be.mac?e.metaKey:e.ctrlKey}function WW(t,e){let i=t.state.facet(SR);return i.length?i[0](e):be.mac?!e.altKey:!e.ctrlKey}function qW(t,e){let{main:i}=t.state.selection;if(i.empty)return!1;let n=Yu(t.root);if(!n||n.rangeCount==0)return!0;let r=n.getRangeAt(0).getClientRects();for(let s=0;s<r.length;s++){let a=r[s];if(a.left<=e.clientX&&a.right>=e.clientX&&a.top<=e.clientY&&a.bottom>=e.clientY)return!0}return!1}function IW(t,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let i=e.target,n;i!=t.contentDOM;i=i.parentNode)if(!i||i.nodeType==11||(n=It.get(i))&&n.isWidget()&&!n.isHidden&&n.widget.ignoreEvent(e))return!1;return!0}const Rr=Object.create(null),xn=Object.create(null),NR=be.ie&&be.ie_version<15||be.ios&&be.webkit_version<604;function VW(t){let e=t.dom.parentNode;if(!e)return;let i=e.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.focus(),setTimeout(()=>{t.focus(),i.remove(),ZR(t,i.value)},50)}function Tm(t,e,i){for(let n of t.facet(e))i=n(i,t);return i}function ZR(t,e){e=Tm(t.state,ob,e);let{state:i}=t,n,r=1,s=i.toText(e),a=s.lines==i.selection.ranges.length;if(dS!=null&&i.selection.ranges.every(h=>h.empty)&&dS==s.toString()){let h=-1;n=i.changeByRange(d=>{let f=i.doc.lineAt(d.from);if(f.from==h)return{range:d};h=f.from;let g=i.toText((a?s.line(r++).text:e)+i.lineBreak);return{changes:{from:f.from,insert:g},range:le.cursor(d.from+g.length)}})}else a?n=i.changeByRange(h=>{let d=s.line(r++);return{changes:{from:h.from,to:h.to,insert:d.text},range:le.cursor(h.from+d.length)}}):n=i.replaceSelection(s);t.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}xn.scroll=t=>{t.inputState.lastScrollTop=t.scrollDOM.scrollTop,t.inputState.lastScrollLeft=t.scrollDOM.scrollLeft};xn.wheel=xn.mousewheel=t=>{t.inputState.lastWheelEvent=Date.now()};Rr.keydown=(t,e)=>(t.inputState.setSelectionOrigin("select"),e.keyCode==27&&t.inputState.tabFocusMode!=0&&(t.inputState.tabFocusMode=Date.now()+2e3),!1);xn.touchstart=(t,e)=>{let i=t.inputState,n=e.targetTouches[0];i.lastTouchTime=Date.now(),n&&(i.lastTouchX=n.clientX,i.lastTouchY=n.clientY),i.setSelectionOrigin("select.pointer")};xn.touchmove=t=>{t.inputState.setSelectionOrigin("select.pointer")};Rr.mousedown=(t,e)=>{if(t.observer.flush(),t.inputState.lastTouchTime>Date.now()-2e3)return!1;let i=null;for(let n of t.state.facet(bR))if(i=n(t,e),i)break;if(!i&&e.button==0&&(i=HW(t,e)),i){let n=!t.hasFocus;t.inputState.startMouseSelection(new NW(t,e,i,n)),n&&t.observer.ignore(()=>{hR(t.contentDOM);let s=t.root.activeElement;s&&!s.contains(t.contentDOM)&&s.blur()});let r=t.inputState.mouseSelection;if(r)return r.start(e),r.dragging===!1}else t.inputState.setSelectionOrigin("select.pointer");return!1};function Z2(t,e,i,n){if(n==1)return le.cursor(e,i);if(n==2)return wW(t.state,e,i);{let r=t.docView.lineAt(e,i),s=t.state.doc.lineAt(r?r.posAtEnd:e),a=r?r.posAtStart:s.from,c=r?r.posAtEnd:s.to;return c<t.state.doc.length&&c==s.to&&c++,le.range(a,c)}}const YW=be.ie&&be.ie_version<=11;let W2=null,q2=0,I2=0;function WR(t){if(!YW)return t.detail;let e=W2,i=I2;return W2=t,I2=Date.now(),q2=!e||i>Date.now()-400&&Math.abs(e.clientX-t.clientX)<2&&Math.abs(e.clientY-t.clientY)<2?(q2+1)%3:1}function HW(t,e){let i=t.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),n=WR(e),r=t.state.selection;return{update(s){s.docChanged&&(i.pos=s.changes.mapPos(i.pos),r=r.map(s.changes))},get(s,a,c){let h=t.posAndSideAtCoords({x:s.clientX,y:s.clientY},!1),d,f=Z2(t,h.pos,h.assoc,n);if(i.pos!=h.pos&&!a){let g=Z2(t,i.pos,i.assoc,n),m=Math.min(g.from,f.from),v=Math.max(g.to,f.to);f=m<f.from?le.range(m,v,f.assoc):le.range(v,m,f.assoc)}return a?r.replaceRange(r.main.extend(f.from,f.to,f.assoc)):c&&n==1&&r.ranges.length>1&&(d=UW(r,h.pos))?d:c?r.addRange(f):le.create([f])}}}function UW(t,e){for(let i=0;i<t.ranges.length;i++){let{from:n,to:r}=t.ranges[i];if(n<=e&&r>=e)return le.create(t.ranges.slice(0,i).concat(t.ranges.slice(i+1)),t.mainIndex==i?0:t.mainIndex-(t.mainIndex>i?1:0))}return null}Rr.dragstart=(t,e)=>{let{selection:{main:i}}=t.state;if(e.target.draggable){let r=t.docView.tile.nearest(e.target);if(r&&r.isWidget()){let s=r.posAtStart,a=s+r.length;(s>=i.to||a<=i.from)&&(i=le.range(s,a))}}let{inputState:n}=t;return n.mouseSelection&&(n.mouseSelection.dragging=!0),n.draggedContent=i,e.dataTransfer&&(e.dataTransfer.setData("Text",Tm(t.state,ab,t.state.sliceDoc(i.from,i.to))),e.dataTransfer.effectAllowed="copyMove"),!1};Rr.dragend=t=>(t.inputState.draggedContent=null,!1);function V2(t,e,i,n){if(i=Tm(t.state,ob,i),!i)return;let r=t.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:s}=t.inputState,a=n&&s&&WW(t,e)?{from:s.from,to:s.to}:null,c={from:r,insert:i},h=t.state.changes(a?[a,c]:c);t.focus(),t.dispatch({changes:h,selection:{anchor:h.mapPos(r,-1),head:h.mapPos(r,1)},userEvent:a?"move.drop":"input.drop"}),t.inputState.draggedContent=null}Rr.drop=(t,e)=>{if(!e.dataTransfer)return!1;if(t.state.readOnly)return!0;let i=e.dataTransfer.files;if(i&&i.length){let n=Array(i.length),r=0,s=()=>{++r==i.length&&V2(t,e,n.filter(a=>a!=null).join(t.state.lineBreak),!1)};for(let a=0;a<i.length;a++){let c=new FileReader;c.onerror=s,c.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(c.result)||(n[a]=c.result),s()},c.readAsText(i[a])}return!0}else{let n=e.dataTransfer.getData("Text");if(n)return V2(t,e,n,!0),!0}return!1};Rr.paste=(t,e)=>{if(t.state.readOnly)return!0;t.observer.flush();let i=NR?null:e.clipboardData;return i?(ZR(t,i.getData("text/plain")||i.getData("text/uri-list")),!0):(VW(t),!1)};function GW(t,e){let i=t.dom.parentNode;if(!i)return;let n=i.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.value=e,n.focus(),n.selectionEnd=e.length,n.selectionStart=0,setTimeout(()=>{n.remove(),t.focus()},50)}function FW(t){let e=[],i=[],n=!1;for(let r of t.selection.ranges)r.empty||(e.push(t.sliceDoc(r.from,r.to)),i.push(r));if(!e.length){let r=-1;for(let{from:s}of t.selection.ranges){let a=t.doc.lineAt(s);a.number>r&&(e.push(a.text),i.push({from:a.from,to:Math.min(t.doc.length,a.to+1)})),r=a.number}n=!0}return{text:Tm(t,ab,e.join(t.lineBreak)),ranges:i,linewise:n}}let dS=null;Rr.copy=Rr.cut=(t,e)=>{if(!Tu(t.contentDOM,t.observer.selectionRange))return!1;let{text:i,ranges:n,linewise:r}=FW(t.state);if(!i&&!r)return!1;dS=r?i:null,e.type=="cut"&&!t.state.readOnly&&t.dispatch({changes:n,scrollIntoView:!0,userEvent:"delete.cut"});let s=NR?null:e.clipboardData;return s?(s.clearData(),s.setData("text/plain",i),!0):(GW(t,i),!1)};const qR=to.define();function IR(t,e){let i=[];for(let n of t.facet(wR)){let r=n(t,e);r&&i.push(r)}return i.length?t.update({effects:i,annotations:qR.of(!0)}):null}function VR(t){setTimeout(()=>{let e=t.hasFocus;if(e!=t.inputState.notifiedFocused){let i=IR(t.state,e);i?t.dispatch(i):t.update([])}},10)}xn.focus=t=>{t.inputState.lastFocusTime=Date.now(),!t.scrollDOM.scrollTop&&(t.inputState.lastScrollTop||t.inputState.lastScrollLeft)&&(t.scrollDOM.scrollTop=t.inputState.lastScrollTop,t.scrollDOM.scrollLeft=t.inputState.lastScrollLeft),VR(t)};xn.blur=t=>{t.observer.clearSelectionRange(),VR(t)};xn.compositionstart=xn.compositionupdate=t=>{t.observer.editContext||(t.inputState.compositionFirstChange==null&&(t.inputState.compositionFirstChange=!0),t.inputState.composing<0&&(t.inputState.composing=0))};xn.compositionend=t=>{t.observer.editContext||(t.inputState.composing=-1,t.inputState.compositionEndedAt=Date.now(),t.inputState.compositionPendingKey=!0,t.inputState.compositionPendingChange=t.observer.pendingRecords().length>0,t.inputState.compositionFirstChange=null,be.chrome&&be.android?t.observer.flushSoon():t.inputState.compositionPendingChange?Promise.resolve().then(()=>t.observer.flush()):setTimeout(()=>{t.inputState.composing<0&&t.docView.hasComposition&&t.update([])},50))};xn.contextmenu=t=>{t.inputState.lastContextMenu=Date.now()};Rr.beforeinput=(t,e)=>{var i,n;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(t.inputState.insertingText=e.data,t.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&t.observer.editContext){let s=(i=e.dataTransfer)===null||i===void 0?void 0:i.getData("text/plain"),a=e.getTargetRanges();if(s&&a.length){let c=a[0],h=t.posAtDOM(c.startContainer,c.startOffset),d=t.posAtDOM(c.endContainer,c.endOffset);return ub(t,{from:h,to:d,insert:t.state.toText(s)},null),!0}}let r;if(be.chrome&&be.android&&(r=LR.find(s=>s.inputType==e.inputType))&&(t.observer.delayAndroidKey(r.key,r.keyCode),r.key=="Backspace"||r.key=="Delete")){let s=((n=window.visualViewport)===null||n===void 0?void 0:n.height)||0;setTimeout(()=>{var a;(((a=window.visualViewport)===null||a===void 0?void 0:a.height)||0)>s+10&&t.hasFocus&&(t.contentDOM.blur(),t.focus())},100)}return be.ios&&e.inputType=="deleteContentForward"&&t.observer.flushSoon(),be.safari&&e.inputType=="insertText"&&t.inputState.composing>=0&&setTimeout(()=>xn.compositionend(t,e),20),!1};const Y2=new Set;function KW(t){Y2.has(t)||(Y2.add(t),t.addEventListener("copy",()=>{}),t.addEventListener("cut",()=>{}))}const H2=["pre-wrap","normal","pre-line","break-spaces"];let Dc=!1;function U2(){Dc=!1}class JW{constructor(e){this.lineWrapping=e,this.doc=dt.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,i){let n=this.doc.lineAt(i).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(n+=Math.max(0,Math.ceil((i-e-n*this.lineLength*.5)/this.lineLength))),this.lineHeight*n}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return H2.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let i=!1;for(let n=0;n<e.length;n++){let r=e[n];r<0?n++:this.heightSamples[Math.floor(r*10)]||(i=!0,this.heightSamples[Math.floor(r*10)]=!0)}return i}refresh(e,i,n,r,s,a){let c=H2.indexOf(e)>-1,h=Math.abs(i-this.lineHeight)>.3||this.lineWrapping!=c||Math.abs(n-this.charWidth)>.1;if(this.lineWrapping=c,this.lineHeight=i,this.charWidth=n,this.textHeight=r,this.lineLength=s,h){this.heightSamples={};for(let d=0;d<a.length;d++){let f=a[d];f<0?d++:this.heightSamples[Math.floor(f*10)]=!0}}return h}}class e7{constructor(e,i){this.from=e,this.heights=i,this.index=0}get more(){return this.index<this.heights.length}}class Qr{constructor(e,i,n,r,s){this.from=e,this.length=i,this.top=n,this.height=r,this._content=s}get type(){return typeof this._content=="number"?Xi.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof ol?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let i=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new Qr(this.from,this.length+e.length,this.top,this.height+e.height,i)}}var Ct=(function(t){return t[t.ByPos=0]="ByPos",t[t.ByHeight=1]="ByHeight",t[t.ByPosNoHeight=2]="ByPosNoHeight",t})(Ct||(Ct={}));const Up=.001;class rn{constructor(e,i,n=2){this.length=e,this.height=i,this.flags=n}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>Up&&(Dc=!0),this.height=e)}replace(e,i,n){return rn.of(n)}decomposeLeft(e,i){i.push(this)}decomposeRight(e,i){i.push(this)}applyChanges(e,i,n,r){let s=this,a=n.doc;for(let c=r.length-1;c>=0;c--){let{fromA:h,toA:d,fromB:f,toB:g}=r[c],m=s.lineAt(h,Ct.ByPosNoHeight,n.setDoc(i),0,0),v=m.to>=d?m:s.lineAt(d,Ct.ByPosNoHeight,n,0,0);for(g+=v.to-d,d=v.to;c>0&&m.from<=r[c-1].toA;)h=r[c-1].fromA,f=r[c-1].fromB,c--,h<m.from&&(m=s.lineAt(h,Ct.ByPosNoHeight,n,0,0));f+=m.from-h,h=m.from;let S=db.build(n.setDoc(a),e,f,g);s=Ag(s,s.replace(h,d,S))}return s.updateHeight(n,0)}static empty(){return new Zn(0,0,0)}static of(e){if(e.length==1)return e[0];let i=0,n=e.length,r=0,s=0;for(;;)if(i==n)if(r>s*2){let c=e[i-1];c.break?e.splice(--i,1,c.left,null,c.right):e.splice(--i,1,c.left,c.right),n+=1+c.break,r-=c.size}else if(s>r*2){let c=e[n];c.break?e.splice(n,1,c.left,null,c.right):e.splice(n,1,c.left,c.right),n+=2+c.break,s-=c.size}else break;else if(r<s){let c=e[i++];c&&(r+=c.size)}else{let c=e[--n];c&&(s+=c.size)}let a=0;return e[i-1]==null?(a=1,i--):e[i]==null&&(a=1,n++),new i7(rn.of(e.slice(0,i)),a,rn.of(e.slice(n)))}}function Ag(t,e){return t==e?t:(t.constructor!=e.constructor&&(Dc=!0),e)}rn.prototype.size=1;const t7=qe.replace({});class YR extends rn{constructor(e,i,n){super(e,i),this.deco=n,this.spaceAbove=0}mainBlock(e,i){return new Qr(i,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(e,i,n,r){return this.spaceAbove&&e<n+this.spaceAbove?new Qr(r,0,n,this.spaceAbove,t7):this.mainBlock(n,r)}lineAt(e,i,n,r,s){let a=this.mainBlock(r,s);return this.spaceAbove?this.blockAt(0,n,r,s).join(a):a}forEachLine(e,i,n,r,s,a){e<=s+this.length&&i>=s&&a(this.lineAt(0,Ct.ByPos,n,r,s))}setMeasuredHeight(e){let i=e.heights[e.index++];i<0?(this.spaceAbove=-i,i=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(i)}updateHeight(e,i=0,n=!1,r){return r&&r.from<=i&&r.more&&this.setMeasuredHeight(r),this.outdated=!1,this}toString(){return`block(${this.length})`}}class Zn extends YR{constructor(e,i,n){super(e,i,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=n}mainBlock(e,i){return new Qr(i,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,i,n){let r=n[0];return n.length==1&&(r instanceof Zn||r instanceof ji&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof ji?r=new Zn(r.length,this.height,this.spaceAbove):r.height=this.height,this.outdated||(r.outdated=!1),r):rn.of(n)}updateHeight(e,i=0,n=!1,r){return r&&r.from<=i&&r.more?this.setMeasuredHeight(r):(n||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class ji extends rn{constructor(e){super(e,0)}heightMetrics(e,i){let n=e.doc.lineAt(i).number,r=e.doc.lineAt(i+this.length).number,s=r-n+1,a,c=0;if(e.lineWrapping){let h=Math.min(this.height,e.lineHeight*s);a=h/s,this.length>s+1&&(c=(this.height-h)/(this.length-s-1))}else a=this.height/s;return{firstLine:n,lastLine:r,perLine:a,perChar:c}}blockAt(e,i,n,r){let{firstLine:s,lastLine:a,perLine:c,perChar:h}=this.heightMetrics(i,r);if(i.lineWrapping){let d=r+(e<i.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-n)/this.height))*this.length)),f=i.doc.lineAt(d),g=c+f.length*h,m=Math.max(n,e-g/2);return new Qr(f.from,f.length,m,g,0)}else{let d=Math.max(0,Math.min(a-s,Math.floor((e-n)/c))),{from:f,length:g}=i.doc.line(s+d);return new Qr(f,g,n+c*d,c,0)}}lineAt(e,i,n,r,s){if(i==Ct.ByHeight)return this.blockAt(e,n,r,s);if(i==Ct.ByPosNoHeight){let{from:v,to:S}=n.doc.lineAt(e);return new Qr(v,S-v,0,0,0)}let{firstLine:a,perLine:c,perChar:h}=this.heightMetrics(n,s),d=n.doc.lineAt(e),f=c+d.length*h,g=d.number-a,m=r+c*g+h*(d.from-s-g);return new Qr(d.from,d.length,Math.max(r,Math.min(m,r+this.height-f)),f,0)}forEachLine(e,i,n,r,s,a){e=Math.max(e,s),i=Math.min(i,s+this.length);let{firstLine:c,perLine:h,perChar:d}=this.heightMetrics(n,s);for(let f=e,g=r;f<=i;){let m=n.doc.lineAt(f);if(f==e){let S=m.number-c;g+=h*S+d*(e-s-S)}let v=h+d*m.length;a(new Qr(m.from,m.length,g,v,0)),g+=v,f=m.to+1}}replace(e,i,n){let r=this.length-i;if(r>0){let s=n[n.length-1];s instanceof ji?n[n.length-1]=new ji(s.length+r):n.push(null,new ji(r-1))}if(e>0){let s=n[0];s instanceof ji?n[0]=new ji(e+s.length):n.unshift(new ji(e-1),null)}return rn.of(n)}decomposeLeft(e,i){i.push(new ji(e-1),null)}decomposeRight(e,i){i.push(null,new ji(this.length-e-1))}updateHeight(e,i=0,n=!1,r){let s=i+this.length;if(r&&r.from<=i+this.length&&r.more){let a=[],c=Math.max(i,r.from),h=-1;for(r.from>i&&a.push(new ji(r.from-i-1).updateHeight(e,i));c<=s&&r.more;){let f=e.doc.lineAt(c).length;a.length&&a.push(null);let g=r.heights[r.index++],m=0;g<0&&(m=-g,g=r.heights[r.index++]),h==-1?h=g:Math.abs(g-h)>=Up&&(h=-2);let v=new Zn(f,g,m);v.outdated=!1,a.push(v),c+=f+1}c<=s&&a.push(null,new ji(s-c).updateHeight(e,c));let d=rn.of(a);return(h<0||Math.abs(d.height-this.height)>=Up||Math.abs(h-this.heightMetrics(e,i).perLine)>=Up)&&(Dc=!0),Ag(this,d)}else(n||this.outdated)&&(this.setHeight(e.heightForGap(i,i+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class i7 extends rn{constructor(e,i,n){super(e.length+i+n.length,e.height+n.height,i|(e.outdated||n.outdated?2:0)),this.left=e,this.right=n,this.size=e.size+n.size}get break(){return this.flags&1}blockAt(e,i,n,r){let s=n+this.left.height;return e<s?this.left.blockAt(e,i,n,r):this.right.blockAt(e,i,s,r+this.left.length+this.break)}lineAt(e,i,n,r,s){let a=r+this.left.height,c=s+this.left.length+this.break,h=i==Ct.ByHeight?e<a:e<c,d=h?this.left.lineAt(e,i,n,r,s):this.right.lineAt(e,i,n,a,c);if(this.break||(h?d.to<c:d.from>c))return d;let f=i==Ct.ByPosNoHeight?Ct.ByPosNoHeight:Ct.ByPos;return h?d.join(this.right.lineAt(c,f,n,a,c)):this.left.lineAt(c,f,n,r,s).join(d)}forEachLine(e,i,n,r,s,a){let c=r+this.left.height,h=s+this.left.length+this.break;if(this.break)e<h&&this.left.forEachLine(e,i,n,r,s,a),i>=h&&this.right.forEachLine(e,i,n,c,h,a);else{let d=this.lineAt(h,Ct.ByPos,n,r,s);e<d.from&&this.left.forEachLine(e,d.from-1,n,r,s,a),d.to>=e&&d.from<=i&&a(d),i>d.to&&this.right.forEachLine(d.to+1,i,n,c,h,a)}}replace(e,i,n){let r=this.left.length+this.break;if(i<r)return this.balanced(this.left.replace(e,i,n),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-r,i-r,n));let s=[];e>0&&this.decomposeLeft(e,s);let a=s.length;for(let c of n)s.push(c);if(e>0&&G2(s,a-1),i<this.length){let c=s.length;this.decomposeRight(i,s),G2(s,c)}return rn.of(s)}decomposeLeft(e,i){let n=this.left.length;if(e<=n)return this.left.decomposeLeft(e,i);i.push(this.left),this.break&&(n++,e>=n&&i.push(null)),e>n&&this.right.decomposeLeft(e-n,i)}decomposeRight(e,i){let n=this.left.length,r=n+this.break;if(e>=r)return this.right.decomposeRight(e-r,i);e<n&&this.left.decomposeRight(e,i),this.break&&e<r&&i.push(null),i.push(this.right)}balanced(e,i){return e.size>2*i.size||i.size>2*e.size?rn.of(this.break?[e,null,i]:[e,i]):(this.left=Ag(this.left,e),this.right=Ag(this.right,i),this.setHeight(e.height+i.height),this.outdated=e.outdated||i.outdated,this.size=e.size+i.size,this.length=e.length+this.break+i.length,this)}updateHeight(e,i=0,n=!1,r){let{left:s,right:a}=this,c=i+s.length+this.break,h=null;return r&&r.from<=i+s.length&&r.more?h=s=s.updateHeight(e,i,n,r):s.updateHeight(e,i,n),r&&r.from<=c+a.length&&r.more?h=a=a.updateHeight(e,c,n,r):a.updateHeight(e,c,n),h?this.balanced(s,a):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function G2(t,e){let i,n;t[e]==null&&(i=t[e-1])instanceof ji&&(n=t[e+1])instanceof ji&&t.splice(e-1,3,new ji(i.length+1+n.length))}const n7=5;class db{constructor(e,i){this.pos=e,this.oracle=i,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,i){if(this.lineStart>-1){let n=Math.min(i,this.lineEnd),r=this.nodes[this.nodes.length-1];r instanceof Zn?r.length+=n-this.pos:(n>this.pos||!this.isCovered)&&this.nodes.push(new Zn(n-this.pos,-1,0)),this.writtenTo=n,i>n&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=i}point(e,i,n){if(e<i||n.heightRelevant){let r=n.widget?n.widget.estimatedHeight:0,s=n.widget?n.widget.lineBreaks:0;r<0&&(r=this.oracle.lineHeight);let a=i-e;n.block?this.addBlock(new YR(a,r,n)):(a||s||r>=n7)&&this.addLineDeco(r,s,a)}else i>e&&this.span(e,i);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:i}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=i,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new Zn(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,i){let n=new ji(i-e);return this.oracle.doc.lineAt(e).to==i&&(n.flags|=4),n}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Zn)return e;let i=new Zn(0,-1,0);return this.nodes.push(i),i}addBlock(e){this.enterLine();let i=e.deco;i&&i.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,i&&i.endSide>0&&(this.covering=e)}addLineDeco(e,i,n){let r=this.ensureLine();r.length+=n,r.collapsed+=n,r.widgetHeight=Math.max(r.widgetHeight,e),r.breaks+=i,this.writtenTo=this.pos=this.pos+n}finish(e){let i=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(i instanceof Zn)&&!this.isCovered?this.nodes.push(new Zn(0,-1,0)):(this.writtenTo<this.pos||i==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let n=e;for(let r of this.nodes)r instanceof Zn&&r.updateHeight(this.oracle,n),n+=r?r.length:1;return this.nodes}static build(e,i,n,r){let s=new db(n,e);return nt.spans(i,n,r,s,0),s.finish(n)}}function r7(t,e,i){let n=new s7;return nt.compare(t,e,i,n,0),n.changes}class s7{constructor(){this.changes=[]}compareRange(){}comparePoint(e,i,n,r){(e<i||n&&n.heightRelevant||r&&r.heightRelevant)&&vc(e,i,this.changes,5)}}function o7(t,e){let i=t.getBoundingClientRect(),n=t.ownerDocument,r=n.defaultView||window,s=Math.max(0,i.left),a=Math.min(r.innerWidth,i.right),c=Math.max(0,i.top),h=Math.min(r.innerHeight,i.bottom);for(let d=t.parentNode;d&&d!=n.body;)if(d.nodeType==1){let f=d,g=window.getComputedStyle(f);if((f.scrollHeight>f.clientHeight||f.scrollWidth>f.clientWidth)&&g.overflow!="visible"){let m=f.getBoundingClientRect();s=Math.max(s,m.left),a=Math.min(a,m.right),c=Math.max(c,m.top),h=Math.min(d==t.parentNode?r.innerHeight:h,m.bottom)}d=g.position=="absolute"||g.position=="fixed"?f.offsetParent:f.parentNode}else if(d.nodeType==11)d=d.host;else break;return{left:s-i.left,right:Math.max(s,a)-i.left,top:c-(i.top+e),bottom:Math.max(c,h)-(i.top+e)}}function a7(t){let e=t.getBoundingClientRect(),i=t.ownerDocument.defaultView||window;return e.left<i.innerWidth&&e.right>0&&e.top<i.innerHeight&&e.bottom>0}function l7(t,e){let i=t.getBoundingClientRect();return{left:0,right:i.right-i.left,top:e,bottom:i.bottom-(i.top+e)}}class Tv{constructor(e,i,n,r){this.from=e,this.to=i,this.size=n,this.displaySize=r}static same(e,i){if(e.length!=i.length)return!1;for(let n=0;n<e.length;n++){let r=e[n],s=i[n];if(r.from!=s.from||r.to!=s.to||r.size!=s.size)return!1}return!0}draw(e,i){return qe.replace({widget:new c7(this.displaySize*(i?e.scaleY:e.scaleX),i)}).range(this.from,this.to)}}class c7 extends pl{constructor(e,i){super(),this.size=e,this.vertical=i}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}}class F2{constructor(e,i){this.view=e,this.state=i,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scaleX=1,this.scaleY=1,this.scrollOffset=0,this.scrolledToBottom=!1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=K2,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=Tt.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let n=i.facet(lb).some(r=>typeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new JW(n),this.stateDeco=J2(i),this.heightMap=rn.empty().applyChanges(this.stateDeco,dt.empty,this.heightOracle.setDoc(i.doc),[new lr(0,0,0,i.doc.length)]);for(let r=0;r<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());r++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=qe.set(this.lineGaps.map(r=>r.draw(this,!1))),this.scrollParent=e.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:i}=this.state.selection;for(let n=0;n<=1;n++){let r=n?i.head:i.anchor;if(!e.some(({from:s,to:a})=>r>=s&&r<=a)){let{from:s,to:a}=this.lineBlockAt(r);e.push(new Op(s,a))}}return this.viewports=e.sort((n,r)=>n.from-r.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?K2:new fb(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(mu(e,this.scaler))})}update(e,i=null){this.state=e.state;let n=this.stateDeco;this.stateDeco=J2(this.state);let r=e.changedRanges,s=lr.extendWithRanges(r,r7(n,this.stateDeco,e?e.changes:Oi.empty(this.state.doc.length))),a=this.heightMap.height,c=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);U2(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),(this.heightMap.height!=a||Dc)&&(e.flags|=2),c?(this.scrollAnchorPos=e.changes.mapPos(c.from,-1),this.scrollAnchorHeight=c.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=a);let h=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(i&&(i.range.head<h.from||i.range.head>h.to)||!this.viewportIsAppropriate(h))&&(h=this.getViewport(0,i));let d=h.from!=this.viewport.from||h.to!=this.viewport.to;this.viewport=h,e.flags|=this.updateForViewport(),(d||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),i&&(this.scrollTarget=i),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(CR)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:e}=this,i=e.contentDOM,n=window.getComputedStyle(i),r=this.heightOracle,s=n.whiteSpace;this.defaultTextDirection=n.direction=="rtl"?Tt.RTL:Tt.LTR;let a=this.heightOracle.mustRefreshForWrapping(s)||this.mustMeasureContent==="refresh",c=i.getBoundingClientRect(),h=a||this.mustMeasureContent||this.contentDOMHeight!=c.height;this.contentDOMHeight=c.height,this.mustMeasureContent=!1;let d=0,f=0;if(c.width&&c.height){let{scaleX:A,scaleY:P}=lR(i,c);(A>.005&&Math.abs(this.scaleX-A)>.005||P>.005&&Math.abs(this.scaleY-P)>.005)&&(this.scaleX=A,this.scaleY=P,d|=16,a=h=!0)}let g=(parseInt(n.paddingTop)||0)*this.scaleY,m=(parseInt(n.paddingBottom)||0)*this.scaleY;(this.paddingTop!=g||this.paddingBottom!=m)&&(this.paddingTop=g,this.paddingBottom=m,d|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(h=!0),this.editorWidth=e.scrollDOM.clientWidth,d|=16);let v=cR(this.view.contentDOM,!1).y;v!=this.scrollParent&&(this.scrollParent=v,this.scrollAnchorHeight=-1,this.scrollOffset=0);let S=this.getScrollOffset();this.scrollOffset!=S&&(this.scrollAnchorHeight=-1,this.scrollOffset=S),this.scrolledToBottom=uR(this.scrollParent||e.win);let _=(this.printing?l7:o7)(i,this.paddingTop),w=_.top-this.pixelViewport.top,x=_.bottom-this.pixelViewport.bottom;this.pixelViewport=_;let Q=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(Q!=this.inView&&(this.inView=Q,Q&&(h=!0)),!this.inView&&!this.scrollTarget&&!a7(e.dom))return 0;let C=c.width;if((this.contentDOMWidth!=C||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=c.width,this.editorHeight=e.scrollDOM.clientHeight,d|=16),h){let A=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(A)&&(a=!0),a||r.lineWrapping&&Math.abs(C-this.contentDOMWidth)>r.charWidth){let{lineHeight:P,charWidth:M,textHeight:V}=e.docView.measureTextSize();a=P>0&&r.refresh(s,P,M,V,Math.max(5,C/M),A),a&&(e.docView.minWidth=0,d|=16)}w>0&&x>0?f=Math.max(w,x):w<0&&x<0&&(f=Math.min(w,x)),U2();for(let P of this.viewports){let M=P.from==this.viewport.from?A:e.docView.measureVisibleLineHeights(P);this.heightMap=(a?rn.empty().applyChanges(this.stateDeco,dt.empty,this.heightOracle,[new lr(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,a,new e7(P.from,M))}Dc&&(d|=2)}let T=!this.viewportIsAppropriate(this.viewport,f)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return T&&(d&2&&(d|=this.updateScaler()),this.viewport=this.getViewport(f,this.scrollTarget),d|=this.updateForViewport()),(d&2||T)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(a?[]:this.lineGaps,e)),d|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),d}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,i){let n=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,s=this.heightOracle,{visibleTop:a,visibleBottom:c}=this,h=new Op(r.lineAt(a-n*1e3,Ct.ByHeight,s,0,0).from,r.lineAt(c+(1-n)*1e3,Ct.ByHeight,s,0,0).to);if(i){let{head:d}=i.range;if(d<h.from||d>h.to){let f=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),g=r.lineAt(d,Ct.ByPos,s,0,0),m;i.y=="center"?m=(g.top+g.bottom)/2-f/2:i.y=="start"||i.y=="nearest"&&d<h.from?m=g.top:m=g.bottom-f,h=new Op(r.lineAt(m-1e3/2,Ct.ByHeight,s,0,0).from,r.lineAt(m+f+1e3/2,Ct.ByHeight,s,0,0).to)}}return h}mapViewport(e,i){let n=i.mapPos(e.from,-1),r=i.mapPos(e.to,1);return new Op(this.heightMap.lineAt(n,Ct.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(r,Ct.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:i},n=0){if(!this.inView)return!0;let{top:r}=this.heightMap.lineAt(e,Ct.ByPos,this.heightOracle,0,0),{bottom:s}=this.heightMap.lineAt(i,Ct.ByPos,this.heightOracle,0,0),{visibleTop:a,visibleBottom:c}=this;return(e==0||r<=a-Math.max(10,Math.min(-n,250)))&&(i==this.state.doc.length||s>=c+Math.max(10,Math.min(n,250)))&&r>a-2*1e3&&s<c+2*1e3}mapLineGaps(e,i){if(!e.length||i.empty)return e;let n=[];for(let r of e)i.touchesRange(r.from,r.to)||n.push(new Tv(i.mapPos(r.from),i.mapPos(r.to),r.size,r.displaySize));return n}ensureLineGaps(e,i){let n=this.heightOracle.lineWrapping,r=n?1e4:2e3,s=r>>1,a=r<<1;if(this.defaultTextDirection!=Tt.LTR&&!n)return[];let c=[],h=(f,g,m,v)=>{if(g-f<s)return;let S=this.state.selection.main,_=[S.from];S.empty||_.push(S.to);for(let x of _)if(x>f&&x<g){h(f,x-10,m,v),h(x+10,g,m,v);return}let w=u7(e,x=>x.from>=m.from&&x.to<=m.to&&Math.abs(x.from-f)<s&&Math.abs(x.to-g)<s&&!_.some(Q=>x.from<Q&&x.to>Q));if(!w){if(g<m.to&&i&&n&&i.visibleRanges.some(C=>C.from<=g&&C.to>=g)){let C=i.moveToLineBoundary(le.cursor(g),!1,!0).head;C>f&&(g=C)}let x=this.gapSize(m,f,g,v),Q=n||x<2e6?x:2e6;w=new Tv(f,g,x,Q)}c.push(w)},d=f=>{if(f.length<a||f.type!=Xi.Text)return;let g=h7(f.from,f.to,this.stateDeco);if(g.total<a)return;let m=this.scrollTarget?this.scrollTarget.range.head:null,v,S;if(n){let _=r/this.heightOracle.lineLength*this.heightOracle.lineHeight,w,x;if(m!=null){let Q=yp(g,m),C=((this.visibleBottom-this.visibleTop)/2+_)/f.height;w=Q-C,x=Q+C}else w=(this.visibleTop-f.top-_)/f.height,x=(this.visibleBottom-f.top+_)/f.height;v=vp(g,w),S=vp(g,x)}else{let _=g.total*this.heightOracle.charWidth,w=r*this.heightOracle.charWidth,x=0;if(_>2e6)for(let P of e)P.from>=f.from&&P.from<f.to&&P.size!=P.displaySize&&P.from*this.heightOracle.charWidth+x<this.pixelViewport.left&&(x=P.size-P.displaySize);let Q=this.pixelViewport.left+x,C=this.pixelViewport.right+x,T,A;if(m!=null){let P=yp(g,m),M=((C-Q)/2+w)/_;T=P-M,A=P+M}else T=(Q-w)/_,A=(C+w)/_;v=vp(g,T),S=vp(g,A)}v>f.from&&h(f.from,v,f,g),S<f.to&&h(S,f.to,f,g)};for(let f of this.viewportLines)Array.isArray(f.type)?f.type.forEach(d):d(f);return c}gapSize(e,i,n,r){let s=yp(r,n)-yp(r,i);return this.heightOracle.lineWrapping?e.height*s:r.total*this.heightOracle.charWidth*s}updateLineGaps(e){Tv.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=qe.set(e.map(i=>i.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let i=this.stateDeco;this.lineGaps.length&&(i=i.concat(this.lineGapDeco));let n=[];nt.spans(i,this.viewport.from,this.viewport.to,{span(s,a){n.push({from:s,to:a})},point(){}},20);let r=0;if(n.length!=this.visibleRanges.length)r=12;else for(let s=0;s<n.length&&!(r&8);s++){let a=this.visibleRanges[s],c=n[s];(a.from!=c.from||a.to!=c.to)&&(r|=4,e&&e.mapPos(a.from,-1)==c.from&&e.mapPos(a.to,1)==c.to||(r|=8))}return this.visibleRanges=n,r}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(i=>i.from<=e&&i.to>=e)||mu(this.heightMap.lineAt(e,Ct.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(i=>i.top<=e&&i.bottom>=e)||mu(this.heightMap.lineAt(this.scaler.fromDOM(e),Ct.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return(this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top)*this.scaleY}scrollAnchorAt(e){let i=this.lineBlockAtHeight(e+8);return i.from>=this.viewport.from||this.viewportLines[0].top-e>200?i:this.viewportLines[0]}elementAtHeight(e){return mu(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class Op{constructor(e,i){this.from=e,this.to=i}}function h7(t,e,i){let n=[],r=t,s=0;return nt.spans(i,t,e,{span(){},point(a,c){a>r&&(n.push({from:r,to:a}),s+=a-r),r=c}},20),r<e&&(n.push({from:r,to:e}),s+=e-r),{total:s,ranges:n}}function vp({total:t,ranges:e},i){if(i<=0)return e[0].from;if(i>=1)return e[e.length-1].to;let n=Math.floor(t*i);for(let r=0;;r++){let{from:s,to:a}=e[r],c=a-s;if(n<=c)return s+n;n-=c}}function yp(t,e){let i=0;for(let{from:n,to:r}of t.ranges){if(e<=r){i+=e-n;break}i+=r-n}return i/t.total}function u7(t,e){for(let i of t)if(e(i))return i}const K2={toDOM(t){return t},fromDOM(t){return t},scale:1,eq(t){return t==this}};function J2(t){let e=t.facet(wm).filter(n=>typeof n!="function"),i=t.facet(cb).filter(n=>typeof n!="function");return i.length&&e.push(nt.join(i)),e}class fb{constructor(e,i,n){let r=0,s=0,a=0;this.viewports=n.map(({from:c,to:h})=>{let d=i.lineAt(c,Ct.ByPos,e,0,0).top,f=i.lineAt(h,Ct.ByPos,e,0,0).bottom;return r+=f-d,{from:c,to:h,top:d,bottom:f,domTop:0,domBottom:0}}),this.scale=(7e6-r)/(i.height-r);for(let c of this.viewports)c.domTop=a+(c.top-s)*this.scale,a=c.domBottom=c.domTop+(c.bottom-c.top),s=c.bottom}toDOM(e){for(let i=0,n=0,r=0;;i++){let s=i<this.viewports.length?this.viewports[i]:null;if(!s||e<s.top)return r+(e-n)*this.scale;if(e<=s.bottom)return s.domTop+(e-s.top);n=s.bottom,r=s.domBottom}}fromDOM(e){for(let i=0,n=0,r=0;;i++){let s=i<this.viewports.length?this.viewports[i]:null;if(!s||e<s.domTop)return n+(e-r)/this.scale;if(e<=s.domBottom)return s.top+(e-s.domTop);n=s.bottom,r=s.domBottom}}eq(e){return e instanceof fb?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((i,n)=>i.from==e.viewports[n].from&&i.to==e.viewports[n].to):!1}}function mu(t,e){if(e.scale==1)return t;let i=e.toDOM(t.top),n=e.toDOM(t.bottom);return new Qr(t.from,t.length,i,n-i,Array.isArray(t._content)?t._content.map(r=>mu(r,e)):t._content)}const Sp=we.define({combine:t=>t.join(" ")}),fS=we.define({combine:t=>t.indexOf(!0)>-1}),pS=sa.newName(),HR=sa.newName(),UR=sa.newName(),GR={"&light":"."+HR,"&dark":"."+UR};function gS(t,e,i){return new sa(e,{finish(n){return/&/.test(n)?n.replace(/&\w*/,r=>{if(r=="&")return t;if(!i||!i[r])throw new RangeError(`Unsupported selector: ${r}`);return i[r]}):t+" "+n}})}const d7=gS("."+pS,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},GR),f7={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Qv=be.ie&&be.ie_version<=11;class p7{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new qZ,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(i=>{for(let n of i)this.queue.push(n);(be.ie&&be.ie_version<=11||be.ios&&e.composing)&&i.some(n=>n.type=="childList"&&n.removedNodes.length||n.type=="characterData"&&n.oldValue.length>n.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&be.android&&e.constructor.EDIT_CONTEXT!==!1&&!(be.chrome&&be.chrome_version<126)&&(this.editContext=new m7(e),e.state.facet(qs)&&(e.contentDOM.editContext=this.editContext.editContext)),Qv&&(this.onCharData=i=>{this.queue.push({target:i.target,type:"characterData",oldValue:i.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var i;((i=this.view.docView)===null||i===void 0?void 0:i.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(i=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),i.length>0&&i[i.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(i=>{i.length>0&&i[i.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((i,n)=>i!=e[n]))){this.gapIntersection.disconnect();for(let i of e)this.gapIntersection.observe(i);this.gaps=e}}onSelectionChange(e){let i=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:n}=this,r=this.selectionRange;if(n.state.facet(qs)?n.root.activeElement!=this.dom:!Tu(this.dom,r))return;let s=r.anchorNode&&n.docView.tile.nearest(r.anchorNode);if(s&&s.isWidget()&&s.widget.ignoreEvent(e)){i||(this.selectionChanged=!1);return}(be.ie&&be.ie_version<=11||be.android&&be.chrome)&&!n.state.selection.main.empty&&r.focusNode&&Qu(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,i=Yu(e.root);if(!i)return!1;let n=be.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&g7(this.view,i)||i;if(!n||this.selectionRange.eq(n))return!1;let r=Tu(this.dom,n);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&VZ(this.dom,n)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(n),r&&(this.selectionChanged=!0),!0)}setSelectionRange(e,i){this.selectionRange.set(e.node,e.offset,i.node,i.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,i=null;for(let n=this.dom;n;)if(n.nodeType==1)!i&&e<this.scrollTargets.length&&this.scrollTargets[e]==n?e++:i||(i=this.scrollTargets.slice(0,e)),i&&i.push(n),n=n.assignedSlot||n.parentNode;else if(n.nodeType==11)n=n.host;else break;if(e<this.scrollTargets.length&&!i&&(i=this.scrollTargets.slice(0,e)),i){for(let n of this.scrollTargets)n.removeEventListener("scroll",this.onScroll);for(let n of this.scrollTargets=i)n.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,f7),Qv&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),Qv&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,i){var n;if(!this.delayedAndroidKey){let r=()=>{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&yc(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(r)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:i,force:this.lastChange<Date.now()-50||!!(!((n=this.delayedAndroidKey)===null||n===void 0)&&n.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let i=-1,n=-1,r=!1;for(let s of e){let a=this.readMutation(s);a&&(a.typeOver&&(r=!0),i==-1?{from:i,to:n}=a:(i=Math.min(a.from,i),n=Math.max(a.to,n)))}return{from:i,to:n,typeOver:r}}readChange(){let{from:e,to:i,typeOver:n}=this.processRecords(),r=this.selectionChanged&&Tu(this.dom,this.selectionRange);if(e<0&&!r)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let s=new AW(this.view,e,i,n);return this.view.docView.domChanged={newSel:s.newSel?s.newSel.main:null},s}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let i=this.readChange();if(!i)return this.view.requestMeasure(),!1;let n=this.view.state,r=DR(this.view,i);return this.view.state==n&&(i.domChanged||i.newSel&&!Rg(this.view.state.selection,i.newSel.main))&&this.view.update([]),r}readMutation(e){let i=this.view.docView.tile.nearest(e.target);if(!i||i.isWidget())return null;if(i.markDirty(e.type=="attributes"),e.type=="childList"){let n=eT(i,e.previousSibling||e.target.previousSibling,-1),r=eT(i,e.nextSibling||e.target.nextSibling,1);return{from:n?i.posAfter(n):i.posAtStart,to:r?i.posBefore(r):i.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:i.posAtStart,to:i.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(qs)!=e.state.facet(qs)&&(e.view.contentDOM.editContext=e.state.facet(qs)?this.editContext.editContext:null))}destroy(){var e,i,n;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(i=this.gapIntersection)===null||i===void 0||i.disconnect(),(n=this.resizeScroll)===null||n===void 0||n.disconnect();for(let r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function eT(t,e,i){for(;e;){let n=It.get(e);if(n&&n.parent==t)return n;let r=e.parentNode;e=r!=t.dom?r:i>0?e.nextSibling:e.previousSibling}return null}function tT(t,e){let i=e.startContainer,n=e.startOffset,r=e.endContainer,s=e.endOffset,a=t.docView.domAtPos(t.state.selection.main.anchor,1);return Qu(a.node,a.offset,r,s)&&([i,n,r,s]=[r,s,i,n]),{anchorNode:i,anchorOffset:n,focusNode:r,focusOffset:s}}function g7(t,e){if(e.getComposedRanges){let r=e.getComposedRanges(t.root)[0];if(r)return tT(t,r)}let i=null;function n(r){r.preventDefault(),r.stopImmediatePropagation(),i=r.getTargetRanges()[0]}return t.contentDOM.addEventListener("beforeinput",n,!0),t.dom.ownerDocument.execCommand("indent"),t.contentDOM.removeEventListener("beforeinput",n,!0),i?tT(t,i):null}class m7{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let i=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=n=>{let r=e.state.selection.main,{anchor:s,head:a}=r,c=this.toEditorPos(n.updateRangeStart),h=this.toEditorPos(n.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:n.updateRangeStart,editorBase:c,drifted:!1});let d=h-c>n.text.length;c==this.from&&s<this.from?c=s:h==this.to&&s>this.to&&(h=s);let f=BR(e.state.sliceDoc(c,h),n.text,(d?r.from:r.to)-c,d?"end":null);if(!f){let m=le.single(this.toEditorPos(n.selectionStart),this.toEditorPos(n.selectionEnd));Rg(m,r)||e.dispatch({selection:m,userEvent:"select"});return}let g={from:f.from+c,to:f.toA+c,insert:dt.of(n.text.slice(f.from,f.toB).split(`
112
- `))};if((be.mac||be.android)&&g.from==a-1&&/^\. ?$/.test(n.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(g={from:c,to:h,insert:dt.of([n.text.replace("."," ")])}),this.pendingContextChange=g,!e.state.readOnly){let m=this.to-this.from+(g.to-g.from+g.insert.length);ub(e,g,le.single(this.toEditorPos(n.selectionStart,m),this.toEditorPos(n.selectionEnd,m)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),g.from<g.to&&!g.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(i.text.slice(Math.max(0,n.updateRangeStart-1),Math.min(i.text.length,n.updateRangeStart+1)))&&this.handlers.compositionend(n)},this.handlers.characterboundsupdate=n=>{let r=[],s=null;for(let a=this.toEditorPos(n.rangeStart),c=this.toEditorPos(n.rangeEnd);a<c;a++){let h=e.coordsForChar(a);s=h&&new DOMRect(h.left,h.top,h.right-h.left,h.bottom-h.top)||s||new DOMRect,r.push(s)}i.updateCharacterBounds(n.rangeStart,r)},this.handlers.textformatupdate=n=>{let r=[];for(let s of n.getTextFormats()){let a=s.underlineStyle,c=s.underlineThickness;if(!/none/i.test(a)&&!/none/i.test(c)){let h=this.toEditorPos(s.rangeStart),d=this.toEditorPos(s.rangeEnd);if(h<d){let f=`text-decoration: underline ${/^[a-z]/.test(a)?a+" ":a=="Dashed"?"dashed ":a=="Squiggle"?"wavy ":""}${/thin/i.test(c)?1:2}px`;r.push(qe.mark({attributes:{style:f}}).range(h,d))}}}e.dispatch({effects:QR.of(qe.set(r))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:n}=this.composing;this.composing=null,n&&this.reset(e.state)}};for(let n in this.handlers)i.addEventListener(n,this.handlers[n]);this.measureReq={read:n=>{this.editContext.updateControlBounds(n.contentDOM.getBoundingClientRect());let r=Yu(n.root);r&&r.rangeCount&&this.editContext.updateSelectionBounds(r.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let i=0,n=!1,r=this.pendingContextChange;return e.changes.iterChanges((s,a,c,h,d)=>{if(n)return;let f=d.length-(a-s);if(r&&a>=r.to)if(r.from==s&&r.to==a&&r.insert.eq(d)){r=this.pendingContextChange=null,i+=f,this.to+=f;return}else r=null,this.revertPending(e.state);if(s+=i,a+=i,a<=this.from)this.from+=f,this.to+=f;else if(s<this.to){if(s<this.from||a>this.to||this.to-this.from+d.length>3e4){n=!0;return}this.editContext.updateText(this.toContextPos(s),this.toContextPos(a),d.toString()),this.to+=f}i+=f}),r&&!n&&this.revertPending(e.state),!n}update(e){let i=this.pendingContextChange,n=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(n.from,n.to)&&e.transactions.some(r=>!r.isUserEvent("input.type")&&r.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||i)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:i}=e.selection.main;this.from=Math.max(0,i-1e4),this.to=Math.min(e.doc.length,i+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let i=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(i.from),this.toContextPos(i.from+i.insert.length),e.doc.sliceString(i.from,i.to))}setSelection(e){let{main:i}=e.selection,n=this.toContextPos(Math.max(this.from,Math.min(this.to,i.anchor))),r=this.toContextPos(i.head);(this.editContext.selectionStart!=n||this.editContext.selectionEnd!=r)&&this.editContext.updateSelection(n,r)}rangeIsValid(e){let{head:i}=e.selection.main;return!(this.from>0&&i-this.from<500||this.to<e.doc.length&&this.to-i<500||this.to-this.from>1e4*3)}toEditorPos(e,i=this.to-this.from){e=Math.min(e,i);let n=this.composing;return n&&n.drifted?n.editorBase+(e-n.contextBase):e+this.from}toContextPos(e){let i=this.composing;return i&&i.drifted?i.contextBase+(e-i.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}}class xe{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var i;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),e.parent&&e.parent.appendChild(this.dom);let{dispatch:n}=e;this.dispatchTransactions=e.dispatchTransactions||n&&(r=>r.forEach(s=>n(s,this)))||(r=>this.update(r)),this.dispatch=this.dispatch.bind(this),this._root=e.root||IZ(e.parent)||document,this.viewState=new F2(this,e.state||ct.create(e)),e.scrollTo&&e.scrollTo.is(pp)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(uc).map(r=>new _v(r));for(let r of this.plugins)r.update(this);this.observer=new p7(this),this.inputState=new DW(this),this.inputState.ensureHandlers(this.plugins),this.docView=new B2(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((i=document.fonts)===null||i===void 0)&&i.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...e){let i=e.length==1&&e[0]instanceof li?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(i,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let i=!1,n=!1,r,s=this.state;for(let m of e){if(m.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=m.state}if(this.destroyed){this.viewState.state=s;return}let a=this.hasFocus,c=0,h=null;e.some(m=>m.annotation(qR))?(this.inputState.notifiedFocused=a,c=1):a!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=a,h=IR(s,a),h||(c=1));let d=this.observer.delayedAndroidKey,f=null;if(d?(this.observer.clearDelayedAndroidKey(),f=this.observer.readChange(),(f&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(f=null)):this.observer.clear(),s.facet(ct.phrases)!=this.state.facet(ct.phrases))return this.setState(s);r=$g.create(this,s,e),r.flags|=c;let g=this.viewState.scrollTarget;try{this.updateState=2;for(let m of e){if(g&&(g=g.map(m.changes)),m.scrollIntoView){let{main:v}=m.state.selection,{x:S,y:_}=this.state.facet(xe.cursorScrollMargin);g=new Sc(v.empty?v:le.cursor(v.head,v.head>v.anchor?-1:1),"nearest","nearest",_,S)}for(let v of m.effects)v.is(pp)&&(g=v.value.clip(this.state))}this.viewState.update(r,g),this.bidiCache=Mg.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),i=this.docView.update(r),this.state.facet(gu)!=this.styleModules&&this.mountStyles(),n=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(i,e.some(m=>m.isUserEvent("select.pointer")))}finally{this.updateState=0}if(r.startState.facet(Sp)!=r.state.facet(Sp)&&(this.viewState.mustMeasureContent=!0),(i||n||g||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),i&&this.docViewUpdate(),!r.empty)for(let m of this.state.facet(lS))try{m(r)}catch(v){Yn(this.state,v,"update listener")}(h||f)&&Promise.resolve().then(()=>{h&&this.state==h.startState&&this.dispatch(h),f&&!DR(this,f)&&d.force&&yc(this.contentDOM,d.key,d.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let i=this.hasFocus;try{for(let n of this.plugins)n.destroy(this);this.viewState=new F2(this,e),this.plugins=e.facet(uc).map(n=>new _v(n)),this.pluginMap.clear();for(let n of this.plugins)n.update(this);this.docView.destroy(),this.docView=new B2(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}i&&this.focus(),this.requestMeasure()}updatePlugins(e){let i=e.startState.facet(uc),n=e.state.facet(uc);if(i!=n){let r=[];for(let s of n){let a=i.indexOf(s);if(a<0)r.push(new _v(s));else{let c=this.plugins[a];c.mustUpdate=e,r.push(c)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=r,this.pluginMap.clear()}else for(let r of this.plugins)r.mustUpdate=e;for(let r=0;r<this.plugins.length;r++)this.plugins[r].update(this);i!=n&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let e of this.plugins){let i=e.value;if(i&&i.docViewUpdate)try{i.docViewUpdate(this)}catch(n){Yn(this.state,n,"doc view update listener")}}}measure(e=!0){if(this.destroyed)return;if(this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,e&&this.observer.forceFlush();let i=null,n=this.viewState.scrollParent,r=this.viewState.getScrollOffset(),{scrollAnchorPos:s,scrollAnchorHeight:a}=this.viewState;Math.abs(r-this.viewState.scrollOffset)>1&&(a=-1),this.viewState.scrollAnchorHeight=-1;try{for(let c=0;;c++){if(a<0)if(uR(n||this.win))s=-1,a=this.viewState.heightMap.height;else{let v=this.viewState.scrollAnchorAt(r);s=v.from,a=v.top}this.updateState=1;let h=this.viewState.measure();if(!h&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(c>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let d=[];h&4||([this.measureRequests,d]=[d,this.measureRequests]);let f=d.map(v=>{try{return v.read(this)}catch(S){return Yn(this.state,S),iT}}),g=$g.create(this,this.state,[]),m=!1;g.flags|=h,i?i.flags|=h:i=g,this.updateState=2,g.empty||(this.updatePlugins(g),this.inputState.update(g),this.updateAttrs(),m=this.docView.update(g),m&&this.docViewUpdate());for(let v=0;v<d.length;v++)if(f[v]!=iT)try{let S=d[v];S.write&&S.write(f[v],this)}catch(S){Yn(this.state,S)}if(m&&this.docView.updateSelection(!0),!g.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,a=-1;continue}else{let S=((s<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(s).top)-a)/this.scaleY;if((S>1||S<-1)&&(n==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){r=r+S,n?n.scrollTop+=S:this.win.scrollBy(0,S),a=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(i&&!i.empty)for(let c of this.state.facet(lS))c(i)}get themeClasses(){return pS+" "+(this.state.facet(fS)?UR:HR)+" "+this.state.facet(Sp)}updateAttrs(){let e=nT(this,$R,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),i={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(qs)?"true":"false",class:"cm-content",style:`${be.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(i["aria-readonly"]="true"),nT(this,lb,i);let n=this.observer.ignore(()=>{let r=R2(this.contentDOM,this.contentAttrs,i),s=R2(this.dom,this.editorAttrs,e);return r||s});return this.editorAttrs=e,this.contentAttrs=i,n}showAnnouncements(e){let i=!0;for(let n of e)for(let r of n.effects)if(r.is(xe.announce)){i&&(this.announceDOM.textContent=""),i=!1;let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=r.value}}mountStyles(){this.styleModules=this.state.facet(gu);let e=this.state.facet(xe.cspNonce);sa.mount(this.root,this.styleModules.concat(d7).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let i=0;i<this.measureRequests.length;i++)if(this.measureRequests[i].key===e.key){this.measureRequests[i]=e;return}}this.measureRequests.push(e)}}plugin(e){let i=this.pluginMap.get(e);return(i===void 0||i&&i.plugin!=e)&&this.pluginMap.set(e,i=this.plugins.find(n=>n.plugin==e)||null),i&&i.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,i,n){return Cv(this,e,L2(this,e,i,n))}moveByGroup(e,i){return Cv(this,e,L2(this,e,i,n=>TW(this,e.head,n)))}visualLineSide(e,i){let n=this.bidiSpans(e),r=this.textDirectionAt(e.from),s=n[i?n.length-1:0];return le.cursor(s.side(i,r)+e.from,s.forward(!i,r)?1:-1)}moveToLineBoundary(e,i,n=!0){return CW(this,e,i,n)}moveVertically(e,i,n){return Cv(this,e,QW(this,e,i,n))}domAtPos(e,i=1){return this.docView.domAtPos(e,i)}posAtDOM(e,i=0){return this.docView.posFromDOM(e,i)}posAtCoords(e,i=!0){this.readMeasured();let n=uS(this,e,i);return n&&n.pos}posAndSideAtCoords(e,i=!0){return this.readMeasured(),uS(this,e,i)}coordsAtPos(e,i=1){this.readMeasured();let n=this.docView.coordsAt(e,i);if(!n||n.left==n.right)return n;let r=this.state.doc.lineAt(e),s=this.bidiSpans(r),a=s[ts.find(s,e-r.from,-1,i)];return Qg(n,a.dir==Tt.LTR==i>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(kR)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>O7)return OR(e.length);let i=this.textDirectionAt(e.from),n;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==i&&(s.fresh||mR(s.isolates,n=z2(this,e))))return s.order;n||(n=z2(this,e));let r=JZ(e.text,i,n);return this.bidiCache.push(new Mg(e.from,e.to,i,n,!0,r)),r}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||be.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{hR(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,i={}){var n,r,s,a;return pp.of(new Sc(typeof e=="number"?le.cursor(e):e,(n=i.y)!==null&&n!==void 0?n:"nearest",(r=i.x)!==null&&r!==void 0?r:"nearest",(s=i.yMargin)!==null&&s!==void 0?s:5,(a=i.xMargin)!==null&&a!==void 0?a:5))}scrollSnapshot(){let{scrollTop:e,scrollLeft:i}=this.scrollDOM,n=this.viewState.scrollAnchorAt(e);return pp.of(new Sc(le.cursor(n.from),"start","start",n.top-e,i,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return Ni.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return Ni.define(()=>({}),{eventObservers:e})}static theme(e,i){let n=sa.newName(),r=[Sp.of(n),gu.of(gS(`.${n}`,e))];return i&&i.dark&&r.push(fS.of(!0)),r}static baseTheme(e){return eo.lowest(gu.of(gS("."+pS,e,GR)))}static findFromDOM(e){var i;let n=e.querySelector(".cm-content"),r=n&&It.get(n)||It.get(e);return((i=r==null?void 0:r.root)===null||i===void 0?void 0:i.view)||null}}xe.styleModule=gu;xe.inputHandler=xR;xe.clipboardInputFilter=ob;xe.clipboardOutputFilter=ab;xe.scrollHandler=TR;xe.focusChangeEffect=wR;xe.perLineTextDirection=kR;xe.exceptionSink=_R;xe.updateListener=lS;xe.editable=qs;xe.mouseSelectionStyle=bR;xe.dragMovesSelection=SR;xe.clickAddsSelectionRange=yR;xe.decorations=wm;xe.blockWrappers=PR;xe.outerDecorations=cb;xe.atomicRanges=Sd;xe.bidiIsolatedRanges=ER;xe.cursorScrollMargin=we.define({combine:t=>{let e=5,i=5;for(let n of t)typeof n=="number"?e=i=n:{x:e,y:i}=n;return{x:e,y:i}}});xe.scrollMargins=RR;xe.darkTheme=fS;xe.cspNonce=we.define({combine:t=>t.length?t[0]:""});xe.contentAttributes=lb;xe.editorAttributes=$R;xe.lineWrapping=xe.contentAttributes.of({class:"cm-lineWrapping"});xe.announce=Je.define();const O7=4096,iT={};class Mg{constructor(e,i,n,r,s,a){this.from=e,this.to=i,this.dir=n,this.isolates=r,this.fresh=s,this.order=a}static update(e,i){if(i.empty&&!e.some(s=>s.fresh))return e;let n=[],r=e.length?e[e.length-1].dir:Tt.LTR;for(let s=Math.max(0,e.length-10);s<e.length;s++){let a=e[s];a.dir==r&&!i.touchesRange(a.from,a.to)&&n.push(new Mg(i.mapPos(a.from,1),i.mapPos(a.to,-1),a.dir,a.isolates,!1,a.order))}return n}}function nT(t,e,i){for(let n=t.state.facet(e),r=n.length-1;r>=0;r--){let s=n[r],a=typeof s=="function"?s(t):s;a&&nb(a,i)}return i}const v7=be.mac?"mac":be.windows?"win":be.linux?"linux":"key";function y7(t,e){const i=t.split(/-(?!$)/);let n=i[i.length-1];n=="Space"&&(n=" ");let r,s,a,c;for(let h=0;h<i.length-1;++h){const d=i[h];if(/^(cmd|meta|m)$/i.test(d))c=!0;else if(/^a(lt)?$/i.test(d))r=!0;else if(/^(c|ctrl|control)$/i.test(d))s=!0;else if(/^s(hift)?$/i.test(d))a=!0;else if(/^mod$/i.test(d))e=="mac"?c=!0:s=!0;else throw new Error("Unrecognized modifier name: "+d)}return r&&(n="Alt-"+n),s&&(n="Ctrl-"+n),c&&(n="Meta-"+n),a&&(n="Shift-"+n),n}function bp(t,e,i){return e.altKey&&(t="Alt-"+t),e.ctrlKey&&(t="Ctrl-"+t),e.metaKey&&(t="Meta-"+t),i!==!1&&e.shiftKey&&(t="Shift-"+t),t}const S7=eo.default(xe.domEventHandlers({keydown(t,e){return KR(FR(e.state),t,e,"editor")}})),Bc=we.define({enables:S7}),rT=new WeakMap;function FR(t){let e=t.facet(Bc),i=rT.get(e);return i||rT.set(e,i=x7(e.reduce((n,r)=>n.concat(r),[]))),i}function b7(t,e,i){return KR(FR(t.state),e,t,i)}let Ko=null;const _7=4e3;function x7(t,e=v7){let i=Object.create(null),n=Object.create(null),r=(a,c)=>{let h=n[a];if(h==null)n[a]=c;else if(h!=c)throw new Error("Key binding "+a+" is used both as a regular binding and as a multi-stroke prefix")},s=(a,c,h,d,f)=>{var g,m;let v=i[a]||(i[a]=Object.create(null)),S=c.split(/ (?!$)/).map(x=>y7(x,e));for(let x=1;x<S.length;x++){let Q=S.slice(0,x).join(" ");r(Q,!0),v[Q]||(v[Q]={preventDefault:!0,stopPropagation:!1,run:[C=>{let T=Ko={view:C,prefix:Q,scope:a};return setTimeout(()=>{Ko==T&&(Ko=null)},_7),!0}]})}let _=S.join(" ");r(_,!1);let w=v[_]||(v[_]={preventDefault:!1,stopPropagation:!1,run:((m=(g=v._any)===null||g===void 0?void 0:g.run)===null||m===void 0?void 0:m.slice())||[]});h&&w.run.push(h),d&&(w.preventDefault=!0),f&&(w.stopPropagation=!0)};for(let a of t){let c=a.scope?a.scope.split(" "):["editor"];if(a.any)for(let d of c){let f=i[d]||(i[d]=Object.create(null));f._any||(f._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:g}=a;for(let m in f)f[m].run.push(v=>g(v,mS))}let h=a[e]||a.key;if(h)for(let d of c)s(d,h,a.run,a.preventDefault,a.stopPropagation),a.shift&&s(d,"Shift-"+h,a.shift,a.preventDefault,a.stopPropagation)}return i}let mS=null;function KR(t,e,i,n){mS=e;let r=BZ(e),s=Yo(r,0),a=Za(s)==r.length&&r!=" ",c="",h=!1,d=!1,f=!1;Ko&&Ko.view==i&&Ko.scope==n&&(c=Ko.prefix+" ",XR.indexOf(e.keyCode)<0&&(d=!0,Ko=null));let g=new Set,m=w=>{if(w){for(let x of w.run)if(!g.has(x)&&(g.add(x),x(i)))return w.stopPropagation&&(f=!0),!0;w.preventDefault&&(w.stopPropagation&&(f=!0),d=!0)}return!1},v=t[n],S,_;return v&&(m(v[c+bp(r,e,!a)])?h=!0:a&&(e.altKey||e.metaKey||e.ctrlKey)&&!(be.windows&&e.ctrlKey&&e.altKey)&&!(be.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(S=oa[e.keyCode])&&S!=r?(m(v[c+bp(S,e,!0)])||e.shiftKey&&(_=Iu[e.keyCode])!=r&&_!=S&&m(v[c+bp(_,e,!1)]))&&(h=!0):a&&e.shiftKey&&m(v[c+bp(r,e,!0)])&&(h=!0),!h&&m(v._any)&&(h=!0)),d&&(h=!0),h&&f&&e.stopPropagation(),mS=null,h}class Ka{constructor(e,i,n,r,s){this.className=e,this.left=i,this.top=n,this.width=r,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,i){return i.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,i,n){if(n.empty){let r=e.coordsAtPos(n.head,n.assoc||1);if(!r)return[];let s=JR(e);return[new Ka(i,r.left-s.left,r.top-s.top,null,r.bottom-r.top)]}else return w7(e,i,n)}}function JR(t){let e=t.scrollDOM.getBoundingClientRect();return{left:(t.textDirection==Tt.LTR?e.left:e.right-t.scrollDOM.clientWidth*t.scaleX)-t.scrollDOM.scrollLeft*t.scaleX,top:e.top-t.scrollDOM.scrollTop*t.scaleY}}function sT(t,e,i,n){let r=t.coordsAtPos(e,i*2);if(!r)return n;let s=t.dom.getBoundingClientRect(),a=(r.top+r.bottom)/2,c=t.posAtCoords({x:s.left+1,y:a}),h=t.posAtCoords({x:s.right-1,y:a});return c==null||h==null?n:{from:Math.max(n.from,Math.min(c,h)),to:Math.min(n.to,Math.max(c,h))}}function w7(t,e,i){if(i.to<=t.viewport.from||i.from>=t.viewport.to)return[];let n=Math.max(i.from,t.viewport.from),r=Math.min(i.to,t.viewport.to),s=t.textDirection==Tt.LTR,a=t.contentDOM,c=a.getBoundingClientRect(),h=JR(t),d=a.querySelector(".cm-line"),f=d&&window.getComputedStyle(d),g=c.left+(f?parseInt(f.paddingLeft)+Math.min(0,parseInt(f.textIndent)):0),m=c.right-(f?parseInt(f.paddingRight):0),v=hS(t,n,1),S=hS(t,r,-1),_=v.type==Xi.Text?v:null,w=S.type==Xi.Text?S:null;if(_&&(t.lineWrapping||v.widgetLineBreaks)&&(_=sT(t,n,1,_)),w&&(t.lineWrapping||S.widgetLineBreaks)&&(w=sT(t,r,-1,w)),_&&w&&_.from==w.from&&_.to==w.to)return Q(C(i.from,i.to,_));{let A=_?C(i.from,null,_):T(v,!1),P=w?C(null,i.to,w):T(S,!0),M=[];return(_||v).to<(w||S).from-(_&&w?1:0)||v.widgetLineBreaks>1&&A.bottom+t.defaultLineHeight/2<P.top?M.push(x(g,A.bottom,m,P.top)):A.bottom<P.top&&t.elementAtHeight((A.bottom+P.top)/2).type==Xi.Text&&(A.bottom=P.top=(A.bottom+P.top)/2),Q(A).concat(M).concat(Q(P))}function x(A,P,M,V){return new Ka(e,A-h.left,P-h.top,Math.max(0,M-A),V-P)}function Q({top:A,bottom:P,horizontal:M}){let V=[];for(let H=0;H<M.length;H+=2)V.push(x(M[H],A,M[H+1],P));return V}function C(A,P,M){let V=1e9,H=-1e9,G=[];function N(E,W,$,Z,z){let L=t.coordsAtPos(E,E==M.to?-2:2),U=t.coordsAtPos($,$==M.from?2:-2);!L||!U||(V=Math.min(L.top,U.top,V),H=Math.max(L.bottom,U.bottom,H),z==Tt.LTR?G.push(s&&W?g:L.left,s&&Z?m:U.right):G.push(!s&&Z?g:U.left,!s&&W?m:L.right))}let j=A??M.from,B=P??M.to;for(let E of t.visibleRanges)if(E.to>j&&E.from<B)for(let W=Math.max(E.from,j),$=Math.min(E.to,B);;){let Z=t.state.doc.lineAt(W);for(let z of t.bidiSpans(Z)){let L=z.from+Z.from,U=z.to+Z.from;if(L>=$)break;U>W&&N(Math.max(L,W),A==null&&L<=j,Math.min(U,$),P==null&&U>=B,z.dir)}if(W=Z.to+1,W>=$)break}return G.length==0&&N(j,A==null,B,P==null,t.textDirection),{top:V,bottom:H,horizontal:G}}function T(A,P){let M=c.top+(P?A.top:A.bottom);return{top:M,bottom:M,horizontal:[]}}}function k7(t,e){return t.constructor==e.constructor&&t.eq(e)}class C7{constructor(e,i){this.view=e,this.layer=i,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),i.above&&this.dom.classList.add("cm-layer-above"),i.class&&this.dom.classList.add(i.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),i.mount&&i.mount(this.dom,e)}update(e){e.startState.facet(Gp)!=e.state.facet(Gp)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}docViewUpdate(e){this.layer.updateOnDocViewUpdate!==!1&&e.requestMeasure(this.measureReq)}setOrder(e){let i=0,n=e.facet(Gp);for(;i<n.length&&n[i]!=this.layer;)i++;this.dom.style.zIndex=String((this.layer.above?150:-1)-i)}measure(){return this.layer.markers(this.view)}scale(){let{scaleX:e,scaleY:i}=this.view;(e!=this.scaleX||i!=this.scaleY)&&(this.scaleX=e,this.scaleY=i,this.dom.style.transform=`scale(${1/e}, ${1/i})`)}draw(e){if(e.length!=this.drawn.length||e.some((i,n)=>!k7(i,this.drawn[n]))){let i=this.dom.firstChild,n=0;for(let r of e)r.update&&i&&r.constructor&&this.drawn[n].constructor&&r.update(i,this.drawn[n])?(i=i.nextSibling,n++):this.dom.insertBefore(r.draw(),i);for(;i;){let r=i.nextSibling;i.remove(),i=r}this.drawn=e,be.webkit&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const Gp=we.define();function e5(t){return[Ni.define(e=>new C7(e,t)),Gp.of(t)]}const Lc=we.define({combine(t){return da(t,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(e,i)=>Math.min(e,i),drawRangeCursor:(e,i)=>e||i})}});function T7(t={}){return[Lc.of(t),Q7,$7,P7,CR.of(!0)]}function t5(t){return t.startState.facet(Lc)!=t.state.facet(Lc)}const Q7=e5({above:!0,markers(t){let{state:e}=t,i=e.facet(Lc),n=[];for(let r of e.selection.ranges){let s=r==e.selection.main;if(r.empty||i.drawRangeCursor&&!(s&&be.ios&&i.iosSelectionHandles)){let a=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",c=r.empty?r:le.cursor(r.head,r.assoc);for(let h of Ka.forRange(t,a,c))n.push(h)}}return n},update(t,e){t.transactions.some(n=>n.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let i=t5(t);return i&&oT(t.state,e),t.docChanged||t.selectionSet||i},mount(t,e){oT(e.state,t)},class:"cm-cursorLayer"});function oT(t,e){e.style.animationDuration=t.facet(Lc).cursorBlinkRate+"ms"}const $7=e5({above:!1,markers(t){let e=[],{main:i,ranges:n}=t.state.selection;for(let r of n)if(!r.empty)for(let s of Ka.forRange(t,"cm-selectionBackground",r))e.push(s);if(be.ios&&!i.empty&&t.state.facet(Lc).iosSelectionHandles){for(let r of Ka.forRange(t,"cm-selectionHandle cm-selectionHandle-start",le.cursor(i.from,1)))e.push(r);for(let r of Ka.forRange(t,"cm-selectionHandle cm-selectionHandle-end",le.cursor(i.to,1)))e.push(r)}return e},update(t,e){return t.docChanged||t.selectionSet||t.viewportChanged||t5(t)},class:"cm-selectionLayer"}),P7=eo.highest(xe.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}}));function E7(){return A7}const R7=qe.line({class:"cm-activeLine"}),A7=Ni.fromClass(class{constructor(t){this.decorations=this.getDeco(t)}update(t){(t.docChanged||t.selectionSet)&&(this.decorations=this.getDeco(t.view))}getDeco(t){let e=-1,i=[];for(let n of t.state.selection.ranges){let r=t.lineBlockAt(n.head);r.from>e&&(i.push(R7.range(r.from)),e=r.from)}return qe.set(i)}},{decorations:t=>t.decorations}),_p="-10000px";class M7{constructor(e,i,n,r){this.facet=i,this.createTooltipView=n,this.removeTooltipView=r,this.input=e.state.facet(i),this.tooltips=this.input.filter(a=>a);let s=null;this.tooltipViews=this.tooltips.map(a=>s=n(a,s))}update(e,i){var n;let r=e.state.facet(this.facet),s=r.filter(h=>h);if(r===this.input){for(let h of this.tooltipViews)h.update&&h.update(e);return!1}let a=[],c=i?[]:null;for(let h=0;h<s.length;h++){let d=s[h],f=-1;if(d){for(let g=0;g<this.tooltips.length;g++){let m=this.tooltips[g];m&&m.create==d.create&&(f=g)}if(f<0)a[h]=this.createTooltipView(d,h?a[h-1]:null),c&&(c[h]=!!d.above);else{let g=a[h]=this.tooltipViews[f];c&&(c[h]=i[f]),g.update&&g.update(e)}}}for(let h of this.tooltipViews)a.indexOf(h)<0&&(this.removeTooltipView(h),(n=h.destroy)===null||n===void 0||n.call(h));return i&&(c.forEach((h,d)=>i[d]=h),i.length=c.length),this.input=r,this.tooltips=s,this.tooltipViews=a,!0}}function z7(t){let e=t.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}const $v=we.define({combine:t=>{var e,i,n;return{position:be.ios?"absolute":((e=t.find(r=>r.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((i=t.find(r=>r.parent))===null||i===void 0?void 0:i.parent)||null,tooltipSpace:((n=t.find(r=>r.tooltipSpace))===null||n===void 0?void 0:n.tooltipSpace)||z7}}}),aT=new WeakMap,i5=Ni.fromClass(class{constructor(t){this.view=t,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let e=t.state.facet($v);this.position=e.position,this.parent=e.parent,this.classes=t.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new M7(t,n5,(i,n)=>this.createTooltip(i,n),i=>{this.resizeObserver&&this.resizeObserver.unobserve(i.dom),i.dom.remove()}),this.above=this.manager.tooltips.map(i=>!!i.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(i=>{Date.now()>this.lastTransaction-50&&i.length>0&&i[i.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),t.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let t of this.manager.tooltipViews)this.intersectionObserver.observe(t.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(t){t.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(t,this.above);e&&this.observeIntersection();let i=e||t.geometryChanged,n=t.state.facet($v);if(n.position!=this.position&&!this.madeAbsolute){this.position=n.position;for(let r of this.manager.tooltipViews)r.dom.style.position=this.position;i=!0}if(n.parent!=this.parent){this.parent&&this.container.remove(),this.parent=n.parent,this.createContainer();for(let r of this.manager.tooltipViews)this.container.appendChild(r.dom);i=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);i&&this.maybeMeasure()}createTooltip(t,e){let i=t.create(this.view),n=e?e.dom:null;if(i.dom.classList.add("cm-tooltip"),t.arrow&&!i.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let r=document.createElement("div");r.className="cm-tooltip-arrow",i.dom.appendChild(r)}return i.dom.style.position=this.position,i.dom.style.top=_p,i.dom.style.left="0px",this.container.insertBefore(i.dom,n),i.mount&&i.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(i.dom),i}destroy(){var t,e,i;this.view.win.removeEventListener("resize",this.measureSoon);for(let n of this.manager.tooltipViews)n.dom.remove(),(t=n.destroy)===null||t===void 0||t.call(n);this.parent&&this.container.remove(),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),(i=this.intersectionObserver)===null||i===void 0||i.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let t=1,e=1,i=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:s}=this.manager.tooltipViews[0];if(be.safari){let a=s.getBoundingClientRect();i=Math.abs(a.top+1e4)>1||Math.abs(a.left)>1}else i=!!s.offsetParent&&s.offsetParent!=this.container.ownerDocument.body}if(i||this.position=="absolute")if(this.parent){let s=this.parent.getBoundingClientRect();s.width&&s.height&&(t=s.width/this.parent.offsetWidth,e=s.height/this.parent.offsetHeight)}else({scaleX:t,scaleY:e}=this.view.viewState);let n=this.view.scrollDOM.getBoundingClientRect(),r=hb(this.view);return{visible:{left:n.left+r.left,top:n.top+r.top,right:n.right-r.right,bottom:n.bottom-r.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((s,a)=>{let c=this.manager.tooltipViews[a];return c.getCoords?c.getCoords(s.pos):this.view.coordsAtPos(s.pos)}),size:this.manager.tooltipViews.map(({dom:s})=>s.getBoundingClientRect()),space:this.view.state.facet($v).tooltipSpace(this.view),scaleX:t,scaleY:e,makeAbsolute:i}}writeMeasure(t){var e;if(t.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let c of this.manager.tooltipViews)c.dom.style.position="absolute"}let{visible:i,space:n,scaleX:r,scaleY:s}=t,a=[];for(let c=0;c<this.manager.tooltips.length;c++){let h=this.manager.tooltips[c],d=this.manager.tooltipViews[c],{dom:f}=d,g=t.pos[c],m=t.size[c];if(!g||h.clip!==!1&&(g.bottom<=Math.max(i.top,n.top)||g.top>=Math.min(i.bottom,n.bottom)||g.right<Math.max(i.left,n.left)-.1||g.left>Math.min(i.right,n.right)+.1)){f.style.top=_p;continue}let v=h.arrow?d.dom.querySelector(".cm-tooltip-arrow"):null,S=v?7:0,_=m.right-m.left,w=(e=aT.get(d))!==null&&e!==void 0?e:m.bottom-m.top,x=d.offset||D7,Q=this.view.textDirection==Tt.LTR,C=m.width>n.right-n.left?Q?n.left:n.right-m.width:Q?Math.max(n.left,Math.min(g.left-(v?14:0)+x.x,n.right-_)):Math.min(Math.max(n.left,g.left-_+(v?14:0)-x.x),n.right-_),T=this.above[c];!h.strictSide&&(T?g.top-w-S-x.y<n.top:g.bottom+w+S+x.y>n.bottom)&&T==n.bottom-g.bottom>g.top-n.top&&(T=this.above[c]=!T);let A=(T?g.top-n.top:n.bottom-g.bottom)-S;if(A<w&&d.resize!==!1){if(A<this.view.defaultLineHeight){f.style.top=_p;continue}aT.set(d,w),f.style.height=(w=A)/s+"px"}else f.style.height&&(f.style.height="");let P=T?g.top-w-S-x.y:g.bottom+S+x.y,M=C+_;if(d.overlap!==!0)for(let V of a)V.left<M&&V.right>C&&V.top<P+w&&V.bottom>P&&(P=T?V.top-w-2-S:V.bottom+S+2);if(this.position=="absolute"?(f.style.top=(P-t.parent.top)/s+"px",lT(f,(C-t.parent.left)/r)):(f.style.top=P/s+"px",lT(f,C/r)),v){let V=g.left+(Q?x.x:-x.x)-(C+14-7);v.style.left=V/r+"px"}d.overlap!==!0&&a.push({left:C,top:P,right:M,bottom:P+w}),f.classList.toggle("cm-tooltip-above",T),f.classList.toggle("cm-tooltip-below",!T),d.positioned&&d.positioned(t.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let t of this.manager.tooltipViews)t.dom.style.top=_p}},{eventObservers:{scroll(){this.maybeMeasure()}}});function lT(t,e){let i=parseInt(t.style.left,10);(isNaN(i)||Math.abs(e-i)>1)&&(t.style.left=e+"px")}const j7=xe.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),D7={x:0,y:0},n5=we.define({enables:[i5,j7]});function r5(t,e){let i=t.plugin(i5);if(!i)return null;let n=i.manager.tooltips.indexOf(e);return n<0?null:i.manager.tooltipViews[n]}const cT=we.define({combine(t){let e,i;for(let n of t)e=e||n.topContainer,i=i||n.bottomContainer;return{topContainer:e,bottomContainer:i}}});function s5(t,e){let i=t.plugin(o5),n=i?i.specs.indexOf(e):-1;return n>-1?i.panels[n]:null}const o5=Ni.fromClass(class{constructor(t){this.input=t.state.facet(zg),this.specs=this.input.filter(i=>i),this.panels=this.specs.map(i=>i(t));let e=t.state.facet(cT);this.top=new xp(t,!0,e.topContainer),this.bottom=new xp(t,!1,e.bottomContainer),this.top.sync(this.panels.filter(i=>i.top)),this.bottom.sync(this.panels.filter(i=>!i.top));for(let i of this.panels)i.dom.classList.add("cm-panel"),i.mount&&i.mount()}update(t){let e=t.state.facet(cT);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new xp(t.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new xp(t.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let i=t.state.facet(zg);if(i!=this.input){let n=i.filter(h=>h),r=[],s=[],a=[],c=[];for(let h of n){let d=this.specs.indexOf(h),f;d<0?(f=h(t.view),c.push(f)):(f=this.panels[d],f.update&&f.update(t)),r.push(f),(f.top?s:a).push(f)}this.specs=n,this.panels=r,this.top.sync(s),this.bottom.sync(a);for(let h of c)h.dom.classList.add("cm-panel"),h.mount&&h.mount()}else for(let n of this.panels)n.update&&n.update(t)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:t=>xe.scrollMargins.of(e=>{let i=e.plugin(t);return i&&{top:i.top.scrollMargin(),bottom:i.bottom.scrollMargin()}})});class xp{constructor(e,i,n){this.view=e,this.top=i,this.container=n,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let i of this.panels)i.destroy&&e.indexOf(i)<0&&i.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let i=this.container||this.view.dom;i.insertBefore(this.dom,this.top?i.firstChild:null)}let e=this.dom.firstChild;for(let i of this.panels)if(i.dom.parentNode==this.dom){for(;e!=i.dom;)e=hT(e);e=e.nextSibling}else this.dom.insertBefore(i.dom,e);for(;e;)e=hT(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}}function hT(t){let e=t.nextSibling;return t.remove(),e}const zg=we.define({enables:o5});function B7(t,e){let i,n=new Promise(a=>i=a),r=a=>L7(a,e,i);t.state.field(Pv,!1)?t.dispatch({effects:a5.of(r)}):t.dispatch({effects:Je.appendConfig.of(Pv.init(()=>[r]))});let s=l5.of(r);return{close:s,result:n.then(a=>((t.win.queueMicrotask||(h=>t.win.setTimeout(h,10)))(()=>{t.state.field(Pv).indexOf(r)>-1&&t.dispatch({effects:s})}),a))}}const Pv=Un.define({create(){return[]},update(t,e){for(let i of e.effects)i.is(a5)?t=[i.value].concat(t):i.is(l5)&&(t=t.filter(n=>n!=i.value));return t},provide:t=>zg.computeN([t],e=>e.field(t))}),a5=Je.define(),l5=Je.define();function L7(t,e,i){let n=e.content?e.content(t,()=>a(null)):null;if(!n){if(n=_i("form"),e.input){let c=_i("input",e.input);/^(text|password|number|email|tel|url)$/.test(c.type)&&c.classList.add("cm-textfield"),c.name||(c.name="input"),n.appendChild(_i("label",(e.label||"")+": ",c))}else n.appendChild(document.createTextNode(e.label||""));n.appendChild(document.createTextNode(" ")),n.appendChild(_i("button",{class:"cm-button",type:"submit"},e.submitLabel||"OK"))}let r=n.nodeName=="FORM"?[n]:n.querySelectorAll("form");for(let c=0;c<r.length;c++){let h=r[c];h.addEventListener("keydown",d=>{d.keyCode==27?(d.preventDefault(),a(null)):d.keyCode==13&&(d.preventDefault(),a(h))}),h.addEventListener("submit",d=>{d.preventDefault(),a(h)})}let s=_i("div",n,_i("button",{onclick:()=>a(null),"aria-label":t.state.phrase("close"),class:"cm-dialog-close",type:"button"},["×"]));e.class&&(s.className=e.class),s.classList.add("cm-dialog");function a(c){s.contains(s.ownerDocument.activeElement)&&t.focus(),i(c)}return{dom:s,top:e.top,mount:()=>{if(e.focus){let c;typeof e.focus=="string"?c=n.querySelector(e.focus):c=n.querySelector("input")||n.querySelector("button"),c&&"select"in c?c.select():c&&"focus"in c&&c.focus()}}}}class Ks extends ra{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}Ks.prototype.elementClass="";Ks.prototype.toDOM=void 0;Ks.prototype.mapMode=nn.TrackBefore;Ks.prototype.startSide=Ks.prototype.endSide=-1;Ks.prototype.point=!0;const Fp=we.define(),X7=we.define(),N7={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>nt.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},Pu=we.define();function Z7(t){return[c5(),Pu.of({...N7,...t})]}const uT=we.define({combine:t=>t.some(e=>e)});function c5(t){return[W7]}const W7=Ni.fromClass(class{constructor(t){this.view=t,this.domAfter=null,this.prevViewport=t.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=t.state.facet(Pu).map(e=>new fT(t,e)),this.fixed=!t.state.facet(uT);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),t.scrollDOM.insertBefore(this.dom,t.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(t){if(this.updateGutters(t)){let e=this.prevViewport,i=t.view.viewport,n=Math.min(e.to,i.to)-Math.max(e.from,i.from);this.syncGutters(n<(i.to-i.from)*.8)}if(t.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(uT)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=t.view.viewport}syncGutters(t){let e=this.dom.nextSibling;t&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let i=nt.iter(this.view.state.facet(Fp),this.view.viewport.from),n=[],r=this.gutters.map(s=>new q7(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(n.length&&(n=[]),Array.isArray(s.type)){let a=!0;for(let c of s.type)if(c.type==Xi.Text&&a){OS(i,n,c.from);for(let h of r)h.line(this.view,c,n);a=!1}else if(c.widget)for(let h of r)h.widget(this.view,c)}else if(s.type==Xi.Text){OS(i,n,s.from);for(let a of r)a.line(this.view,s,n)}else if(s.widget)for(let a of r)a.widget(this.view,s);for(let s of r)s.finish();t&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(t){let e=t.startState.facet(Pu),i=t.state.facet(Pu),n=t.docChanged||t.heightChanged||t.viewportChanged||!nt.eq(t.startState.facet(Fp),t.state.facet(Fp),t.view.viewport.from,t.view.viewport.to);if(e==i)for(let r of this.gutters)r.update(t)&&(n=!0);else{n=!0;let r=[];for(let s of i){let a=e.indexOf(s);a<0?r.push(new fT(this.view,s)):(this.gutters[a].update(t),r.push(this.gutters[a]))}for(let s of this.gutters)s.dom.remove(),r.indexOf(s)<0&&s.destroy();for(let s of r)s.config.side=="after"?this.getDOMAfter().appendChild(s.dom):this.dom.appendChild(s.dom);this.gutters=r}return n}destroy(){for(let t of this.gutters)t.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:t=>xe.scrollMargins.of(e=>{let i=e.plugin(t);if(!i||i.gutters.length==0||!i.fixed)return null;let n=i.dom.offsetWidth*e.scaleX,r=i.domAfter?i.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==Tt.LTR?{left:n,right:r}:{right:n,left:r}})});function dT(t){return Array.isArray(t)?t:[t]}function OS(t,e,i){for(;t.value&&t.from<=i;)t.from==i&&e.push(t.value),t.next()}class q7{constructor(e,i,n){this.gutter=e,this.height=n,this.i=0,this.cursor=nt.iter(e.markers,i.from)}addElement(e,i,n){let{gutter:r}=this,s=(i.top-this.height)/e.scaleY,a=i.height/e.scaleY;if(this.i==r.elements.length){let c=new h5(e,a,s,n);r.elements.push(c),r.dom.appendChild(c.dom)}else r.elements[this.i].update(e,a,s,n);this.height=i.bottom,this.i++}line(e,i,n){let r=[];OS(this.cursor,r,i.from),n.length&&(r=r.concat(n));let s=this.gutter.config.lineMarker(e,i,r);s&&r.unshift(s);let a=this.gutter;r.length==0&&!a.config.renderEmptyElements||this.addElement(e,i,r)}widget(e,i){let n=this.gutter.config.widgetMarker(e,i.widget,i),r=n?[n]:null;for(let s of e.state.facet(X7)){let a=s(e,i.widget,i);a&&(r||(r=[])).push(a)}r&&this.addElement(e,i,r)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let i=e.elements.pop();e.dom.removeChild(i.dom),i.destroy()}}}class fT{constructor(e,i){this.view=e,this.config=i,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let n in i.domEventHandlers)this.dom.addEventListener(n,r=>{let s=r.target,a;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let h=s.getBoundingClientRect();a=(h.top+h.bottom)/2}else a=r.clientY;let c=e.lineBlockAtHeight(a-e.documentTop);i.domEventHandlers[n](e,c,r)&&r.preventDefault()});this.markers=dT(i.markers(e)),i.initialSpacer&&(this.spacer=new h5(e,0,0,[i.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let i=this.markers;if(this.markers=dT(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let r=this.config.updateSpacer(this.spacer.markers[0],e);r!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[r])}let n=e.view.viewport;return!nt.eq(this.markers,i,n.from,n.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class h5{constructor(e,i,n,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,i,n,r)}update(e,i,n,r){this.height!=i&&(this.height=i,this.dom.style.height=i+"px"),this.above!=n&&(this.dom.style.marginTop=(this.above=n)?n+"px":""),I7(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,i){let n="cm-gutterElement",r=this.dom.firstChild;for(let s=0,a=0;;){let c=a,h=s<i.length?i[s++]:null,d=!1;if(h){let f=h.elementClass;f&&(n+=" "+f);for(let g=a;g<this.markers.length;g++)if(this.markers[g].compare(h)){c=g,d=!0;break}}else c=this.markers.length;for(;a<c;){let f=this.markers[a++];if(f.toDOM){f.destroy(r);let g=r.nextSibling;r.remove(),r=g}}if(!h)break;h.toDOM&&(d?r=r.nextSibling:this.dom.insertBefore(h.toDOM(e),r)),d&&a++}this.dom.className=n,this.markers=i}destroy(){this.setMarkers(null,[])}}function I7(t,e){if(t.length!=e.length)return!1;for(let i=0;i<t.length;i++)if(!t[i].compare(e[i]))return!1;return!0}const V7=we.define(),Y7=we.define(),dc=we.define({combine(t){return da(t,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,i){let n=Object.assign({},e);for(let r in i){let s=n[r],a=i[r];n[r]=s?(c,h,d)=>s(c,h,d)||a(c,h,d):a}return n}})}});class Ev extends Ks{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function Rv(t,e){return t.state.facet(dc).formatNumber(e,t.state)}const H7=Pu.compute([dc],t=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(V7)},lineMarker(e,i,n){return n.some(r=>r.toDOM)?null:new Ev(Rv(e,e.state.doc.lineAt(i.from).number))},widgetMarker:(e,i,n)=>{for(let r of e.state.facet(Y7)){let s=r(e,i,n);if(s)return s}return null},lineMarkerChange:e=>e.startState.facet(dc)!=e.state.facet(dc),initialSpacer(e){return new Ev(Rv(e,pT(e.state.doc.lines)))},updateSpacer(e,i){let n=Rv(i.view,pT(i.view.state.doc.lines));return n==e.number?e:new Ev(n)},domEventHandlers:t.facet(dc).domEventHandlers,side:"before"}));function U7(t={}){return[dc.of(t),c5(),H7]}function pT(t){let e=9;for(;e<t;)e=e*10+9;return e}const G7=new class extends Ks{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},F7=Fp.compute(["selection"],t=>{let e=[],i=-1;for(let n of t.selection.ranges){let r=t.doc.lineAt(n.head).from;r>i&&(i=r,e.push(G7.range(r)))}return nt.of(e)});function K7(){return F7}const u5=1024;let J7=0;class cr{constructor(e,i){this.from=e,this.to=i}}class Ze{constructor(e={}){this.id=J7++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=vi.match(e)),i=>{let n=e(i);return n===void 0?null:[this,n]}}}Ze.closedBy=new Ze({deserialize:t=>t.split(" ")});Ze.openedBy=new Ze({deserialize:t=>t.split(" ")});Ze.group=new Ze({deserialize:t=>t.split(" ")});Ze.isolate=new Ze({deserialize:t=>{if(t&&t!="rtl"&&t!="ltr"&&t!="auto")throw new RangeError("Invalid value for isolate: "+t);return t||"auto"}});Ze.contextHash=new Ze({perNode:!0});Ze.lookAhead=new Ze({perNode:!0});Ze.mounted=new Ze({perNode:!0});class bc{constructor(e,i,n,r=!1){this.tree=e,this.overlay=i,this.parser=n,this.bracketed=r}static get(e){return e&&e.props&&e.props[Ze.mounted.id]}}const eq=Object.create(null);class vi{constructor(e,i,n,r=0){this.name=e,this.props=i,this.id=n,this.flags=r}static define(e){let i=e.props&&e.props.length?Object.create(null):eq,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),r=new vi(e.name||"",i,e.id,n);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(r)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");i[s[0].id]=s[1]}}return r}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let i=this.prop(Ze.group);return i?i.indexOf(e)>-1:!1}return this.id==e}static match(e){let i=Object.create(null);for(let n in e)for(let r of n.split(" "))i[r]=e[n];return n=>{for(let r=n.prop(Ze.group),s=-1;s<(r?r.length:0);s++){let a=i[s<0?n.name:r[s]];if(a)return a}}}}vi.none=new vi("",Object.create(null),0,8);class bd{constructor(e){this.types=e;for(let i=0;i<e.length;i++)if(e[i].id!=i)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...e){let i=[];for(let n of this.types){let r=null;for(let s of e){let a=s(n);if(a){r||(r=Object.assign({},n.props));let c=a[1],h=a[0];h.combine&&h.id in r&&(c=h.combine(r[h.id],c)),r[h.id]=c}}i.push(r?new vi(n.name,r,n.id,n.flags):n)}return new bd(i)}}const wp=new WeakMap,gT=new WeakMap;var gt;(function(t){t[t.ExcludeBuffers=1]="ExcludeBuffers",t[t.IncludeAnonymous=2]="IncludeAnonymous",t[t.IgnoreMounts=4]="IgnoreMounts",t[t.IgnoreOverlays=8]="IgnoreOverlays",t[t.EnterBracketed=16]="EnterBracketed"})(gt||(gt={}));class mt{constructor(e,i,n,r,s){if(this.type=e,this.children=i,this.positions=n,this.length=r,this.props=null,s&&s.length){this.props=Object.create(null);for(let[a,c]of s)this.props[typeof a=="number"?a:a.id]=c}}toString(){let e=bc.get(this);if(e&&!e.overlay)return e.tree.toString();let i="";for(let n of this.children){let r=n.toString();r&&(i&&(i+=","),i+=r)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(i.length?"("+i+")":""):i}cursor(e=0){return new jg(this.topNode,e)}cursorAt(e,i=0,n=0){let r=wp.get(this)||this.topNode,s=new jg(r);return s.moveTo(e,i),wp.set(this,s._tree),s}get topNode(){return new Hi(this,0,0,null)}resolve(e,i=0){let n=Uu(wp.get(this)||this.topNode,e,i,!1);return wp.set(this,n),n}resolveInner(e,i=0){let n=Uu(gT.get(this)||this.topNode,e,i,!0);return gT.set(this,n),n}resolveStack(e,i=0){return nq(this,e,i)}iterate(e){let{enter:i,leave:n,from:r=0,to:s=this.length}=e,a=e.mode||0,c=(a&gt.IncludeAnonymous)>0;for(let h=this.cursor(a|gt.IncludeAnonymous);;){let d=!1;if(h.from<=s&&h.to>=r&&(!c&&h.type.isAnonymous||i(h)!==!1)){if(h.firstChild())continue;d=!0}for(;d&&n&&(c||!h.type.isAnonymous)&&n(h),!h.nextSibling();){if(!h.parent())return;d=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let i in this.props)e.push([+i,this.props[i]]);return e}balance(e={}){return this.children.length<=8?this:mb(vi.none,this.children,this.positions,0,this.children.length,0,this.length,(i,n,r)=>new mt(this.type,i,n,r,this.propValues),e.makeTree||((i,n,r)=>new mt(vi.none,i,n,r)))}static build(e){return rq(e)}}mt.empty=new mt(vi.none,[],[],0);class pb{constructor(e,i){this.buffer=e,this.index=i}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new pb(this.buffer,this.index)}}class la{constructor(e,i,n){this.buffer=e,this.length=i,this.set=n}get type(){return vi.none}toString(){let e=[];for(let i=0;i<this.buffer.length;)e.push(this.childString(i)),i=this.buffer[i+3];return e.join(",")}childString(e){let i=this.buffer[e],n=this.buffer[e+3],r=this.set.types[i],s=r.name;if(/\W/.test(s)&&!r.isError&&(s=JSON.stringify(s)),e+=4,n==e)return s;let a=[];for(;e<n;)a.push(this.childString(e)),e=this.buffer[e+3];return s+"("+a.join(",")+")"}findChild(e,i,n,r,s){let{buffer:a}=this,c=-1;for(let h=e;h!=i&&!(d5(s,r,a[h+1],a[h+2])&&(c=h,n>0));h=a[h+3]);return c}slice(e,i,n){let r=this.buffer,s=new Uint16Array(i-e),a=0;for(let c=e,h=0;c<i;){s[h++]=r[c++],s[h++]=r[c++]-n;let d=s[h++]=r[c++]-n;s[h++]=r[c++]-e,a=Math.max(a,d)}return new la(s,a,this.set)}}function d5(t,e,i,n){switch(t){case-2:return i<e;case-1:return n>=e&&i<e;case 0:return i<e&&n>e;case 1:return i<=e&&n>e;case 2:return n>e;case 4:return!0}}function Uu(t,e,i,n){for(var r;t.from==t.to||(i<1?t.from>=e:t.from>e)||(i>-1?t.to<=e:t.to<e);){let a=!n&&t instanceof Hi&&t.index<0?null:t.parent;if(!a)return t;t=a}let s=n?0:gt.IgnoreOverlays;if(n)for(let a=t,c=a.parent;c;a=c,c=a.parent)a instanceof Hi&&a.index<0&&((r=c.enter(e,i,s))===null||r===void 0?void 0:r.from)!=a.from&&(t=c);for(;;){let a=t.enter(e,i,s);if(!a)return t;t=a}}class f5{cursor(e=0){return new jg(this,e)}getChild(e,i=null,n=null){let r=mT(this,e,i,n);return r.length?r[0]:null}getChildren(e,i=null,n=null){return mT(this,e,i,n)}resolve(e,i=0){return Uu(this,e,i,!1)}resolveInner(e,i=0){return Uu(this,e,i,!0)}matchContext(e){return vS(this.parent,e)}enterUnfinishedNodesBefore(e){let i=this.childBefore(e),n=this;for(;i;){let r=i.lastChild;if(!r||r.to!=i.to)break;r.type.isError&&r.from==r.to?(n=i,i=r.prevSibling):i=r}return n}get node(){return this}get next(){return this.parent}}class Hi extends f5{constructor(e,i,n,r){super(),this._tree=e,this.from=i,this.index=n,this._parent=r}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,i,n,r,s=0){for(let a=this;;){for(let{children:c,positions:h}=a._tree,d=i>0?c.length:-1;e!=d;e+=i){let f=c[e],g=h[e]+a.from,m;if(!(!(s&gt.EnterBracketed&&f instanceof mt&&(m=bc.get(f))&&!m.overlay&&m.bracketed&&n>=g&&n<=g+f.length)&&!d5(r,n,g,g+f.length))){if(f instanceof la){if(s&gt.ExcludeBuffers)continue;let v=f.findChild(0,f.buffer.length,i,n-g,r);if(v>-1)return new is(new tq(a,f,e,g),null,v)}else if(s&gt.IncludeAnonymous||!f.type.isAnonymous||gb(f)){let v;if(!(s&gt.IgnoreMounts)&&(v=bc.get(f))&&!v.overlay)return new Hi(v.tree,g,e,a);let S=new Hi(f,g,e,a);return s&gt.IncludeAnonymous||!S.type.isAnonymous?S:S.nextChild(i<0?f.children.length-1:0,i,n,r,s)}}}if(s&gt.IncludeAnonymous||!a.type.isAnonymous||(a.index>=0?e=a.index+i:e=i<0?-1:a._parent._tree.children.length,a=a._parent,!a))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,i,n=0){let r;if(!(n&gt.IgnoreOverlays)&&(r=bc.get(this._tree))&&r.overlay){let s=e-this.from,a=n&gt.EnterBracketed&&r.bracketed;for(let{from:c,to:h}of r.overlay)if((i>0||a?c<=s:c<s)&&(i<0||a?h>=s:h>s))return new Hi(r.tree,r.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,i,n)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function mT(t,e,i,n){let r=t.cursor(),s=[];if(!r.firstChild())return s;if(i!=null){for(let a=!1;!a;)if(a=r.type.is(i),!r.nextSibling())return s}for(;;){if(n!=null&&r.type.is(n))return s;if(r.type.is(e)&&s.push(r.node),!r.nextSibling())return n==null?s:[]}}function vS(t,e,i=e.length-1){for(let n=t;i>=0;n=n.parent){if(!n)return!1;if(!n.type.isAnonymous){if(e[i]&&e[i]!=n.name)return!1;i--}}return!0}class tq{constructor(e,i,n,r){this.parent=e,this.buffer=i,this.index=n,this.start=r}}class is extends f5{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,i,n){super(),this.context=e,this._parent=i,this.index=n,this.type=e.buffer.set.types[e.buffer.buffer[n]]}child(e,i,n){let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],e,i-this.context.start,n);return s<0?null:new is(this.context,this,s)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,i,n=0){if(n&gt.ExcludeBuffers)return null;let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],i>0?1:-1,e-this.context.start,i);return s<0?null:new is(this.context,this,s)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,i=e.buffer[this.index+3];return i<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new is(this.context,this._parent,i):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,i=this._parent?this._parent.index+4:0;return this.index==i?this.externalSibling(-1):new is(this.context,this._parent,e.findChild(i,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],i=[],{buffer:n}=this.context,r=this.index+4,s=n.buffer[this.index+3];if(s>r){let a=n.buffer[this.index+1];e.push(n.slice(r,s,a)),i.push(0)}return new mt(this.type,e,i,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function p5(t){if(!t.length)return null;let e=0,i=t[0];for(let s=1;s<t.length;s++){let a=t[s];(a.from>i.from||a.to<i.to)&&(i=a,e=s)}let n=i instanceof Hi&&i.index<0?null:i.parent,r=t.slice();return n?r[e]=n:r.splice(e,1),new iq(r,i)}class iq{constructor(e,i){this.heads=e,this.node=i}get next(){return p5(this.heads)}}function nq(t,e,i){let n=t.resolveInner(e,i),r=null;for(let s=n instanceof Hi?n:n.context.parent;s;s=s.parent)if(s.index<0){let a=s.parent;(r||(r=[n])).push(a.resolve(e,i)),s=a}else{let a=bc.get(s.tree);if(a&&a.overlay&&a.overlay[0].from<=e&&a.overlay[a.overlay.length-1].to>=e){let c=new Hi(a.tree,a.overlay[0].from+s.from,-1,s);(r||(r=[n])).push(Uu(c,e,i,!1))}}return r?p5(r):n}class jg{get name(){return this.type.name}constructor(e,i=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=i&~gt.EnterBracketed,e instanceof Hi)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let n=e._parent;n;n=n._parent)this.stack.unshift(n.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,i){this.index=e;let{start:n,buffer:r}=this.buffer;return this.type=i||r.set.types[r.buffer[e]],this.from=n+r.buffer[e+1],this.to=n+r.buffer[e+2],!0}yield(e){return e?e instanceof Hi?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,i,n){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,i,n,this.mode));let{buffer:r}=this.buffer,s=r.findChild(this.index+4,r.buffer[this.index+3],e,i-this.buffer.start,n);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,i,n=this.mode){return this.buffer?n&gt.ExcludeBuffers?!1:this.enterChild(1,e,i):this.yield(this._tree.enter(e,i,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&gt.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&gt.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:i}=this.buffer,n=this.stack.length-1;if(e<0){let r=n<0?0:this.stack[n]+4;if(this.index!=r)return this.yieldBuf(i.findChild(r,this.index,-1,0,4))}else{let r=i.buffer[this.index+3];if(r<(n<0?i.buffer.length:i.buffer[this.stack[n]+3]))return this.yieldBuf(r)}return n<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let i,n,{buffer:r}=this;if(r){if(e>0){if(this.index<r.buffer.buffer.length)return!1}else for(let s=0;s<this.index;s++)if(r.buffer.buffer[s+3]<this.index)return!1;({index:i,parent:n}=r)}else({index:i,_parent:n}=this._tree);for(;n;{index:i,_parent:n}=n)if(i>-1)for(let s=i+e,a=e<0?-1:n._tree.children.length;s!=a;s+=e){let c=n._tree.children[s];if(this.mode&gt.IncludeAnonymous||c instanceof la||!c.type.isAnonymous||gb(c))return!1}return!0}move(e,i){if(i&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,i=0){for(;(this.from==this.to||(i<1?this.from>=e:this.from>e)||(i>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,i););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,i=null,n=0;if(e&&e.context==this.buffer)e:for(let r=this.index,s=this.stack.length;s>=0;){for(let a=e;a;a=a._parent)if(a.index==r){if(r==this.index)return a;i=a,n=s+1;break e}r=this.stack[--s]}for(let r=n;r<this.stack.length;r++)i=new is(this.buffer,i,this.stack[r]);return this.bufferNode=new is(this.buffer,i,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,i){for(let n=0;;){let r=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){n++;continue}this.type.isAnonymous||(r=!0)}for(;;){if(r&&i&&i(this),r=this.type.isAnonymous,!n)return;if(this.nextSibling())break;this.parent(),n--,r=!0}}}matchContext(e){if(!this.buffer)return vS(this.node.parent,e);let{buffer:i}=this.buffer,{types:n}=i.set;for(let r=e.length-1,s=this.stack.length-1;r>=0;s--){if(s<0)return vS(this._tree,e,r);let a=n[i.buffer[this.stack[s]]];if(!a.isAnonymous){if(e[r]&&e[r]!=a.name)return!1;r--}}return!0}}function gb(t){return t.children.some(e=>e instanceof la||!e.type.isAnonymous||gb(e))}function rq(t){var e;let{buffer:i,nodeSet:n,maxBufferLength:r=u5,reused:s=[],minRepeatType:a=n.types.length}=t,c=Array.isArray(i)?new pb(i,i.length):i,h=n.types,d=0,f=0;function g(A,P,M,V,H,G){let{id:N,start:j,end:B,size:E}=c,W=f,$=d;if(E<0)if(c.next(),E==-1){let D=s[N];M.push(D),V.push(j-A);return}else if(E==-3){d=N;return}else if(E==-4){f=N;return}else throw new RangeError(`Unrecognized record size: ${E}`);let Z=h[N],z,L,U=j-A;if(B-j<=r&&(L=w(c.pos-P,H))){let D=new Uint16Array(L.size-L.skip),I=c.pos-L.size,J=D.length;for(;c.pos>I;)J=x(L.start,D,J);z=new la(D,B-L.start,n),U=L.start-A}else{let D=c.pos-E;c.next();let I=[],J=[],ne=N>=a?N:-1,ce=0,de=B;for(;c.pos>D;)ne>=0&&c.id==ne&&c.size>=0?(c.end<=de-r&&(S(I,J,j,ce,c.end,de,ne,W,$),ce=I.length,de=c.end),c.next()):G>2500?m(j,D,I,J):g(j,D,I,J,ne,G+1);if(ne>=0&&ce>0&&ce<I.length&&S(I,J,j,ce,j,de,ne,W,$),I.reverse(),J.reverse(),ne>-1&&ce>0){let pe=v(Z,$);z=mb(Z,I,J,0,I.length,0,B-j,pe,pe)}else z=_(Z,I,J,B-j,W-B,$)}M.push(z),V.push(U)}function m(A,P,M,V){let H=[],G=0,N=-1;for(;c.pos>P;){let{id:j,start:B,end:E,size:W}=c;if(W>4)c.next();else{if(N>-1&&B<N)break;N<0&&(N=E-r),H.push(j,B,E),G++,c.next()}}if(G){let j=new Uint16Array(G*4),B=H[H.length-2];for(let E=H.length-3,W=0;E>=0;E-=3)j[W++]=H[E],j[W++]=H[E+1]-B,j[W++]=H[E+2]-B,j[W++]=W;M.push(new la(j,H[2]-B,n)),V.push(B-A)}}function v(A,P){return(M,V,H)=>{let G=0,N=M.length-1,j,B;if(N>=0&&(j=M[N])instanceof mt){if(!N&&j.type==A&&j.length==H)return j;(B=j.prop(Ze.lookAhead))&&(G=V[N]+j.length+B)}return _(A,M,V,H,G,P)}}function S(A,P,M,V,H,G,N,j,B){let E=[],W=[];for(;A.length>V;)E.push(A.pop()),W.push(P.pop()+M-H);A.push(_(n.types[N],E,W,G-H,j-G,B)),P.push(H-M)}function _(A,P,M,V,H,G,N){if(G){let j=[Ze.contextHash,G];N=N?[j].concat(N):[j]}if(H>25){let j=[Ze.lookAhead,H];N=N?[j].concat(N):[j]}return new mt(A,P,M,V,N)}function w(A,P){let M=c.fork(),V=0,H=0,G=0,N=M.end-r,j={size:0,start:0,skip:0};e:for(let B=M.pos-A;M.pos>B;){let E=M.size;if(M.id==P&&E>=0){j.size=V,j.start=H,j.skip=G,G+=4,V+=4,M.next();continue}let W=M.pos-E;if(E<0||W<B||M.start<N)break;let $=M.id>=a?4:0,Z=M.start;for(M.next();M.pos>W;){if(M.size<0)if(M.size==-3||M.size==-4)$+=4;else break e;else M.id>=a&&($+=4);M.next()}H=Z,V+=E,G+=$}return(P<0||V==A)&&(j.size=V,j.start=H,j.skip=G),j.size>4?j:void 0}function x(A,P,M){let{id:V,start:H,end:G,size:N}=c;if(c.next(),N>=0&&V<a){let j=M;if(N>4){let B=c.pos-(N-4);for(;c.pos>B;)M=x(A,P,M)}P[--M]=j,P[--M]=G-A,P[--M]=H-A,P[--M]=V}else N==-3?d=V:N==-4&&(f=V);return M}let Q=[],C=[];for(;c.pos>0;)g(t.start||0,t.bufferStart||0,Q,C,-1,0);let T=(e=t.length)!==null&&e!==void 0?e:Q.length?C[0]+Q[0].length:0;return new mt(h[t.topID],Q.reverse(),C.reverse(),T)}const OT=new WeakMap;function Kp(t,e){if(!t.isAnonymous||e instanceof la||e.type!=t)return 1;let i=OT.get(e);if(i==null){i=1;for(let n of e.children){if(n.type!=t||!(n instanceof mt)){i=1;break}i+=Kp(t,n)}OT.set(e,i)}return i}function mb(t,e,i,n,r,s,a,c,h){let d=0;for(let S=n;S<r;S++)d+=Kp(t,e[S]);let f=Math.ceil(d*1.5/8),g=[],m=[];function v(S,_,w,x,Q){for(let C=w;C<x;){let T=C,A=_[C],P=Kp(t,S[C]);for(C++;C<x;C++){let M=Kp(t,S[C]);if(P+M>=f)break;P+=M}if(C==T+1){if(P>f){let M=S[T];v(M.children,M.positions,0,M.children.length,_[T]+Q);continue}g.push(S[T])}else{let M=_[C-1]+S[C-1].length-A;g.push(mb(t,S,_,T,C,A,M,null,h))}m.push(A+Q-s)}}return v(e,i,n,r,0),(c||h)(g,m,a)}class Ob{constructor(){this.map=new WeakMap}setBuffer(e,i,n){let r=this.map.get(e);r||this.map.set(e,r=new Map),r.set(i,n)}getBuffer(e,i){let n=this.map.get(e);return n&&n.get(i)}set(e,i){e instanceof is?this.setBuffer(e.context.buffer,e.index,i):e instanceof Hi&&this.map.set(e.tree,i)}get(e){return e instanceof is?this.getBuffer(e.context.buffer,e.index):e instanceof Hi?this.map.get(e.tree):void 0}cursorSet(e,i){e.buffer?this.setBuffer(e.buffer.buffer,e.index,i):this.map.set(e.tree,i)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class Hs{constructor(e,i,n,r,s=!1,a=!1){this.from=e,this.to=i,this.tree=n,this.offset=r,this.open=(s?1:0)|(a?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,i=[],n=!1){let r=[new Hs(0,e.length,e,0,!1,n)];for(let s of i)s.to>e.length&&r.push(s);return r}static applyChanges(e,i,n=128){if(!i.length)return e;let r=[],s=1,a=e.length?e[0]:null;for(let c=0,h=0,d=0;;c++){let f=c<i.length?i[c]:null,g=f?f.fromA:1e9;if(g-h>=n)for(;a&&a.from<g;){let m=a;if(h>=m.from||g<=m.to||d){let v=Math.max(m.from,h)-d,S=Math.min(m.to,g)-d;m=v>=S?null:new Hs(v,S,m.tree,m.offset+d,c>0,!!f)}if(m&&r.push(m),a.to>g)break;a=s<e.length?e[s++]:null}if(!f)break;h=f.toA,d=f.toA-f.toB}return r}}class vb{startParse(e,i,n){return typeof e=="string"&&(e=new sq(e)),n=n?n.length?n.map(r=>new cr(r.from,r.to)):[new cr(0,0)]:[new cr(0,e.length)],this.createParse(e,i||[],n)}parse(e,i,n){let r=this.startParse(e,i,n);for(;;){let s=r.advance();if(s)return s}}}class sq{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,i){return this.string.slice(e,i)}}function g5(t){return(e,i,n,r)=>new aq(e,t,i,n,r)}class vT{constructor(e,i,n,r,s,a){this.parser=e,this.parse=i,this.overlay=n,this.bracketed=r,this.target=s,this.from=a}}function yT(t){if(!t.length||t.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(t))}class oq{constructor(e,i,n,r,s,a,c,h){this.parser=e,this.predicate=i,this.mounts=n,this.index=r,this.start=s,this.bracketed=a,this.target=c,this.prev=h,this.depth=0,this.ranges=[]}}const yS=new Ze({perNode:!0});class aq{constructor(e,i,n,r,s){this.nest=i,this.input=n,this.fragments=r,this.ranges=s,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let n=this.baseParse.advance();if(!n)return null;if(this.baseParse=null,this.baseTree=n,this.startInner(),this.stoppedAt!=null)for(let r of this.inner)r.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let n=this.baseTree;return this.stoppedAt!=null&&(n=new mt(n.type,n.children,n.positions,n.length,n.propValues.concat([[yS,this.stoppedAt]]))),n}let e=this.inner[this.innerDone],i=e.parse.advance();if(i){this.innerDone++;let n=Object.assign(Object.create(null),e.target.props);n[Ze.mounted.id]=new bc(i,e.overlay,e.parser,e.bracketed),e.target.props=n}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let i=this.innerDone;i<this.inner.length;i++)this.inner[i].from<e&&(e=Math.min(e,this.inner[i].parse.parsedPos));return e}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let i=this.innerDone;i<this.inner.length;i++)this.inner[i].parse.stopAt(e)}startInner(){let e=new hq(this.fragments),i=null,n=null,r=new jg(new Hi(this.baseTree,this.ranges[0].from,0,null),gt.IncludeAnonymous|gt.IgnoreMounts);e:for(let s,a;;){let c=!0,h;if(this.stoppedAt!=null&&r.from>=this.stoppedAt)c=!1;else if(e.hasNode(r)){if(i){let d=i.mounts.find(f=>f.frag.from<=r.from&&f.frag.to>=r.to&&f.mount.overlay);if(d)for(let f of d.mount.overlay){let g=f.from+d.pos,m=f.to+d.pos;g>=r.from&&m<=r.to&&!i.ranges.some(v=>v.from<m&&v.to>g)&&i.ranges.push({from:g,to:m})}}c=!1}else if(n&&(a=lq(n.ranges,r.from,r.to)))c=a!=2;else if(!r.type.isAnonymous&&(s=this.nest(r,this.input))&&(r.from<r.to||!s.overlay)){r.tree||(cq(r),i&&i.depth++,n&&n.depth++);let d=e.findMounts(r.from,s.parser);if(typeof s.overlay=="function")i=new oq(s.parser,s.overlay,d,this.inner.length,r.from,!!s.bracketed,r.tree,i);else{let f=_T(this.ranges,s.overlay||(r.from<r.to?[new cr(r.from,r.to)]:[]));f.length&&yT(f),(f.length||!s.overlay)&&this.inner.push(new vT(s.parser,f.length?s.parser.startParse(this.input,xT(d,f),f):s.parser.startParse(""),s.overlay?s.overlay.map(g=>new cr(g.from-r.from,g.to-r.from)):null,!!s.bracketed,r.tree,f.length?f[0].from:r.from)),s.overlay?f.length&&(n={ranges:f,depth:0,prev:n}):c=!1}}else if(i&&(h=i.predicate(r))&&(h===!0&&(h=new cr(r.from,r.to)),h.from<h.to)){let d=i.ranges.length-1;d>=0&&i.ranges[d].to==h.from?i.ranges[d]={from:i.ranges[d].from,to:h.to}:i.ranges.push(h)}if(c&&r.firstChild())i&&i.depth++,n&&n.depth++;else for(;!r.nextSibling();){if(!r.parent())break e;if(i&&!--i.depth){let d=_T(this.ranges,i.ranges);d.length&&(yT(d),this.inner.splice(i.index,0,new vT(i.parser,i.parser.startParse(this.input,xT(i.mounts,d),d),i.ranges.map(f=>new cr(f.from-i.start,f.to-i.start)),i.bracketed,i.target,d[0].from))),i=i.prev}n&&!--n.depth&&(n=n.prev)}}}}function lq(t,e,i){for(let n of t){if(n.from>=i)break;if(n.to>e)return n.from<=e&&n.to>=i?2:1}return 0}function ST(t,e,i,n,r,s){if(e<i){let a=t.buffer[e+1];n.push(t.slice(e,i,a)),r.push(a-s)}}function cq(t){let{node:e}=t,i=[],n=e.context.buffer;do i.push(t.index),t.parent();while(!t.tree);let r=t.tree,s=r.children.indexOf(n),a=r.children[s],c=a.buffer,h=[s];function d(f,g,m,v,S,_){let w=i[_],x=[],Q=[];ST(a,f,w,x,Q,v);let C=c[w+1],T=c[w+2];h.push(x.length);let A=_?d(w+4,c[w+3],a.set.types[c[w]],C,T-C,_-1):e.toTree();return x.push(A),Q.push(C-v),ST(a,c[w+3],g,x,Q,v),new mt(m,x,Q,S)}r.children[s]=d(0,c.length,vi.none,0,a.length,i.length-1);for(let f of h){let g=t.tree.children[f],m=t.tree.positions[f];t.yield(new Hi(g,m+t.from,f,t._tree))}}class bT{constructor(e,i){this.offset=i,this.done=!1,this.cursor=e.cursor(gt.IncludeAnonymous|gt.IgnoreMounts)}moveTo(e){let{cursor:i}=this,n=e-this.offset;for(;!this.done&&i.from<n;)i.to>=e&&i.enter(n,1,gt.IgnoreOverlays|gt.ExcludeBuffers)||i.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let i=this.cursor.tree;;){if(i==e.tree)return!0;if(i.children.length&&i.positions[0]==0&&i.children[0]instanceof mt)i=i.children[0];else break}return!1}}let hq=class{constructor(e){var i;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let n=this.curFrag=e[0];this.curTo=(i=n.tree.prop(yS))!==null&&i!==void 0?i:n.to,this.inner=new bT(n.tree,-n.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let i=this.curFrag=this.fragments[this.fragI];this.curTo=(e=i.tree.prop(yS))!==null&&e!==void 0?e:i.to,this.inner=new bT(i.tree,-i.offset)}}findMounts(e,i){var n;let r=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let s=this.inner.cursor.node;s;s=s.parent){let a=(n=s.tree)===null||n===void 0?void 0:n.prop(Ze.mounted);if(a&&a.parser==i)for(let c=this.fragI;c<this.fragments.length;c++){let h=this.fragments[c];if(h.from>=s.to)break;h.tree==this.curFrag.tree&&r.push({frag:h,pos:s.from-h.offset,mount:a})}}}return r}};function _T(t,e){let i=null,n=e;for(let r=1,s=0;r<t.length;r++){let a=t[r-1].to,c=t[r].from;for(;s<n.length;s++){let h=n[s];if(h.from>=c)break;h.to<=a||(i||(n=i=e.slice()),h.from<a?(i[s]=new cr(h.from,a),h.to>c&&i.splice(s+1,0,new cr(c,h.to))):h.to>c?i[s--]=new cr(c,h.to):i.splice(s--,1))}}return n}function uq(t,e,i,n){let r=0,s=0,a=!1,c=!1,h=-1e9,d=[];for(;;){let f=r==t.length?1e9:a?t[r].to:t[r].from,g=s==e.length?1e9:c?e[s].to:e[s].from;if(a!=c){let m=Math.max(h,i),v=Math.min(f,g,n);m<v&&d.push(new cr(m,v))}if(h=Math.min(f,g),h==1e9)break;f==h&&(a?(a=!1,r++):a=!0),g==h&&(c?(c=!1,s++):c=!0)}return d}function xT(t,e){let i=[];for(let{pos:n,mount:r,frag:s}of t){let a=n+(r.overlay?r.overlay[0].from:0),c=a+r.tree.length,h=Math.max(s.from,a),d=Math.min(s.to,c);if(r.overlay){let f=r.overlay.map(m=>new cr(m.from+n,m.to+n)),g=uq(e,f,h,d);for(let m=0,v=h;;m++){let S=m==g.length,_=S?d:g[m].from;if(_>v&&i.push(new Hs(v,_,r.tree,-a,s.from>=v||s.openStart,s.to<=_||s.openEnd)),S)break;v=g[m].to}}else i.push(new Hs(h,d,r.tree,-a,s.from>=a||s.openStart,s.to<=c||s.openEnd))}return i}let dq=0;class qn{constructor(e,i,n,r){this.name=e,this.set=i,this.base=n,this.modified=r,this.id=dq++}toString(){let{name:e}=this;for(let i of this.modified)i.name&&(e=`${i.name}(${e})`);return e}static define(e,i){let n=typeof e=="string"?e:"?";if(e instanceof qn&&(i=e),i!=null&&i.base)throw new Error("Can not derive from a modified tag");let r=new qn(n,[],null,[]);if(r.set.push(r),i)for(let s of i.set)r.set.push(s);return r}static defineModifier(e){let i=new Dg(e);return n=>n.modified.indexOf(i)>-1?n:Dg.get(n.base||n,n.modified.concat(i).sort((r,s)=>r.id-s.id))}}let fq=0;class Dg{constructor(e){this.name=e,this.instances=[],this.id=fq++}static get(e,i){if(!i.length)return e;let n=i[0].instances.find(c=>c.base==e&&pq(i,c.modified));if(n)return n;let r=[],s=new qn(e.name,r,e,i);for(let c of i)c.instances.push(s);let a=gq(i);for(let c of e.set)if(!c.modified.length)for(let h of a)r.push(Dg.get(c,h));return s}}function pq(t,e){return t.length==e.length&&t.every((i,n)=>i==e[n])}function gq(t){let e=[[]];for(let i=0;i<t.length;i++)for(let n=0,r=e.length;n<r;n++)e.push(e[n].concat(t[i]));return e.sort((i,n)=>n.length-i.length)}function fa(t){let e=Object.create(null);for(let i in t){let n=t[i];Array.isArray(n)||(n=[n]);for(let r of i.split(" "))if(r){let s=[],a=2,c=r;for(let g=0;;){if(c=="..."&&g>0&&g+3==r.length){a=1;break}let m=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(c);if(!m)throw new RangeError("Invalid path: "+r);if(s.push(m[0]=="*"?"":m[0][0]=='"'?JSON.parse(m[0]):m[0]),g+=m[0].length,g==r.length)break;let v=r[g++];if(g==r.length&&v=="!"){a=0;break}if(v!="/")throw new RangeError("Invalid path: "+r);c=r.slice(g)}let h=s.length-1,d=s[h];if(!d)throw new RangeError("Invalid path: "+r);let f=new Gu(n,a,h>0?s.slice(0,h):null);e[d]=f.sort(e[d])}}return m5.add(e)}const m5=new Ze({combine(t,e){let i,n,r;for(;t||e;){if(!t||e&&t.depth>=e.depth?(r=e,e=e.next):(r=t,t=t.next),i&&i.mode==r.mode&&!r.context&&!i.context)continue;let s=new Gu(r.tags,r.mode,r.context);i?i.next=s:n=s,i=s}return n}});class Gu{constructor(e,i,n,r){this.tags=e,this.mode=i,this.context=n,this.next=r}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}}Gu.empty=new Gu([],2,null);function O5(t,e){let i=Object.create(null);for(let s of t)if(!Array.isArray(s.tag))i[s.tag.id]=s.class;else for(let a of s.tag)i[a.id]=s.class;let{scope:n,all:r=null}=e||{};return{style:s=>{let a=r;for(let c of s)for(let h of c.set){let d=i[h.id];if(d){a=a?a+" "+d:d;break}}return a},scope:n}}function mq(t,e){let i=null;for(let n of t){let r=n.style(e);r&&(i=i?i+" "+r:r)}return i}function Oq(t,e,i,n=0,r=t.length){let s=new vq(n,Array.isArray(e)?e:[e],i);s.highlightRange(t.cursor(),n,r,"",s.highlighters),s.flush(r)}class vq{constructor(e,i,n){this.at=e,this.highlighters=i,this.span=n,this.class=""}startSpan(e,i){i!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=i)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,i,n,r,s){let{type:a,from:c,to:h}=e;if(c>=n||h<=i)return;a.isTop&&(s=this.highlighters.filter(v=>!v.scope||v.scope(a)));let d=r,f=yq(e)||Gu.empty,g=mq(s,f.tags);if(g&&(d&&(d+=" "),d+=g,f.mode==1&&(r+=(r?" ":"")+g)),this.startSpan(Math.max(i,c),d),f.opaque)return;let m=e.tree&&e.tree.prop(Ze.mounted);if(m&&m.overlay){let v=e.node.enter(m.overlay[0].from+c,1),S=this.highlighters.filter(w=>!w.scope||w.scope(m.tree.type)),_=e.firstChild();for(let w=0,x=c;;w++){let Q=w<m.overlay.length?m.overlay[w]:null,C=Q?Q.from+c:h,T=Math.max(i,x),A=Math.min(n,C);if(T<A&&_)for(;e.from<A&&(this.highlightRange(e,T,A,r,s),this.startSpan(Math.min(A,e.to),d),!(e.to>=C||!e.nextSibling())););if(!Q||C>n)break;x=Q.to+c,x>i&&(this.highlightRange(v.cursor(),Math.max(i,Q.from+c),Math.min(n,x),"",S),this.startSpan(Math.min(n,x),d))}_&&e.parent()}else if(e.firstChild()){m&&(r="");do if(!(e.to<=i)){if(e.from>=n)break;this.highlightRange(e,i,n,r,s),this.startSpan(Math.min(n,e.to),d)}while(e.nextSibling());e.parent()}}}function yq(t){let e=t.type.prop(m5);for(;e&&e.context&&!t.matchContext(e.context);)e=e.next;return e||null}const ye=qn.define,kp=ye(),Ho=ye(),wT=ye(Ho),kT=ye(Ho),Uo=ye(),Cp=ye(Uo),Av=ye(Uo),Gr=ye(),za=ye(Gr),Vr=ye(),Yr=ye(),SS=ye(),tu=ye(SS),Tp=ye(),q={comment:kp,lineComment:ye(kp),blockComment:ye(kp),docComment:ye(kp),name:Ho,variableName:ye(Ho),typeName:wT,tagName:ye(wT),propertyName:kT,attributeName:ye(kT),className:ye(Ho),labelName:ye(Ho),namespace:ye(Ho),macroName:ye(Ho),literal:Uo,string:Cp,docString:ye(Cp),character:ye(Cp),attributeValue:ye(Cp),number:Av,integer:ye(Av),float:ye(Av),bool:ye(Uo),regexp:ye(Uo),escape:ye(Uo),color:ye(Uo),url:ye(Uo),keyword:Vr,self:ye(Vr),null:ye(Vr),atom:ye(Vr),unit:ye(Vr),modifier:ye(Vr),operatorKeyword:ye(Vr),controlKeyword:ye(Vr),definitionKeyword:ye(Vr),moduleKeyword:ye(Vr),operator:Yr,derefOperator:ye(Yr),arithmeticOperator:ye(Yr),logicOperator:ye(Yr),bitwiseOperator:ye(Yr),compareOperator:ye(Yr),updateOperator:ye(Yr),definitionOperator:ye(Yr),typeOperator:ye(Yr),controlOperator:ye(Yr),punctuation:SS,separator:ye(SS),bracket:tu,angleBracket:ye(tu),squareBracket:ye(tu),paren:ye(tu),brace:ye(tu),content:Gr,heading:za,heading1:ye(za),heading2:ye(za),heading3:ye(za),heading4:ye(za),heading5:ye(za),heading6:ye(za),contentSeparator:ye(Gr),list:ye(Gr),quote:ye(Gr),emphasis:ye(Gr),strong:ye(Gr),link:ye(Gr),monospace:ye(Gr),strikethrough:ye(Gr),inserted:ye(),deleted:ye(),changed:ye(),invalid:ye(),meta:Tp,documentMeta:ye(Tp),annotation:ye(Tp),processingInstruction:ye(Tp),definition:qn.defineModifier("definition"),constant:qn.defineModifier("constant"),function:qn.defineModifier("function"),standard:qn.defineModifier("standard"),local:qn.defineModifier("local"),special:qn.defineModifier("special")};for(let t in q){let e=q[t];e instanceof qn&&(e.name=t)}O5([{tag:q.link,class:"tok-link"},{tag:q.heading,class:"tok-heading"},{tag:q.emphasis,class:"tok-emphasis"},{tag:q.strong,class:"tok-strong"},{tag:q.keyword,class:"tok-keyword"},{tag:q.atom,class:"tok-atom"},{tag:q.bool,class:"tok-bool"},{tag:q.url,class:"tok-url"},{tag:q.labelName,class:"tok-labelName"},{tag:q.inserted,class:"tok-inserted"},{tag:q.deleted,class:"tok-deleted"},{tag:q.literal,class:"tok-literal"},{tag:q.string,class:"tok-string"},{tag:q.number,class:"tok-number"},{tag:[q.regexp,q.escape,q.special(q.string)],class:"tok-string2"},{tag:q.variableName,class:"tok-variableName"},{tag:q.local(q.variableName),class:"tok-variableName tok-local"},{tag:q.definition(q.variableName),class:"tok-variableName tok-definition"},{tag:q.special(q.variableName),class:"tok-variableName2"},{tag:q.definition(q.propertyName),class:"tok-propertyName tok-definition"},{tag:q.typeName,class:"tok-typeName"},{tag:q.namespace,class:"tok-namespace"},{tag:q.className,class:"tok-className"},{tag:q.macroName,class:"tok-macroName"},{tag:q.propertyName,class:"tok-propertyName"},{tag:q.operator,class:"tok-operator"},{tag:q.comment,class:"tok-comment"},{tag:q.meta,class:"tok-meta"},{tag:q.invalid,class:"tok-invalid"},{tag:q.punctuation,class:"tok-punctuation"}]);var Mv;const Ha=new Ze;function yb(t){return we.define({combine:t?e=>e.concat(t):void 0})}const Sb=new Ze;class hr{constructor(e,i,n=[],r=""){this.data=e,this.name=r,ct.prototype.hasOwnProperty("tree")||Object.defineProperty(ct.prototype,"tree",{get(){return Qt(this)}}),this.parser=i,this.extension=[ha.of(this),ct.languageData.of((s,a,c)=>{let h=CT(s,a,c),d=h.type.prop(Ha);if(!d)return[];let f=s.facet(d),g=h.type.prop(Sb);if(g){let m=h.resolve(a-h.from,c);for(let v of g)if(v.test(m,s)){let S=s.facet(v.facet);return v.type=="replace"?S:S.concat(f)}}return f})].concat(n)}isActiveAt(e,i,n=-1){return CT(e,i,n).type.prop(Ha)==this.data}findRegions(e){let i=e.facet(ha);if((i==null?void 0:i.data)==this.data)return[{from:0,to:e.doc.length}];if(!i||!i.allowsNesting)return[];let n=[],r=(s,a)=>{if(s.prop(Ha)==this.data){n.push({from:a,to:a+s.length});return}let c=s.prop(Ze.mounted);if(c){if(c.tree.prop(Ha)==this.data){if(c.overlay)for(let h of c.overlay)n.push({from:h.from+a,to:h.to+a});else n.push({from:a,to:a+s.length});return}else if(c.overlay){let h=n.length;if(r(c.tree,c.overlay[0].from+a),n.length>h)return}}for(let h=0;h<s.children.length;h++){let d=s.children[h];d instanceof mt&&r(d,s.positions[h]+a)}};return r(Qt(e),0),n}get allowsNesting(){return!0}}hr.setState=Je.define();function CT(t,e,i){let n=t.facet(ha),r=Qt(t).topNode;if(!n||n.allowsNesting)for(let s=r;s;s=s.enter(e,i,gt.ExcludeBuffers|gt.EnterBracketed))s.type.isTop&&(r=s);return r}class ca extends hr{constructor(e,i,n){super(e,i,[],n),this.parser=i}static define(e){let i=yb(e.languageData);return new ca(i,e.parser.configure({props:[Ha.add(n=>n.isTop?i:void 0)]}),e.name)}configure(e,i){return new ca(this.data,this.parser.configure(e),i||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function Qt(t){let e=t.field(hr.state,!1);return e?e.tree:mt.empty}class Sq{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,i){let n=this.cursorPos-this.string.length;return e<n||i>=this.cursorPos?this.doc.sliceString(e,i):this.string.slice(e-n,i-n)}}let iu=null;class Fu{constructor(e,i,n=[],r,s,a,c,h){this.parser=e,this.state=i,this.fragments=n,this.tree=r,this.treeLen=s,this.viewport=a,this.skipped=c,this.scheduleOn=h,this.parse=null,this.tempSkipped=[]}static create(e,i,n){return new Fu(e,i,[],mt.empty,0,n,[],null)}startParse(){return this.parser.startParse(new Sq(this.state.doc),this.fragments)}work(e,i){return i!=null&&i>=this.state.doc.length&&(i=void 0),this.tree!=mt.empty&&this.isDone(i??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var n;if(typeof e=="number"){let r=Date.now()+e;e=()=>Date.now()>r}for(this.parse||(this.parse=this.startParse()),i!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>i)&&i<this.state.doc.length&&this.parse.stopAt(i);;){let r=this.parse.advance();if(r)if(this.fragments=this.withoutTempSkipped(Hs.addTree(r,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(n=this.parse.stoppedAt)!==null&&n!==void 0?n:this.state.doc.length,this.tree=r,this.parse=null,this.treeLen<(i??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,i;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(i=this.parse.advance()););}),this.treeLen=e,this.tree=i,this.fragments=this.withoutTempSkipped(Hs.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let i=iu;iu=this;try{return e()}finally{iu=i}}withoutTempSkipped(e){for(let i;i=this.tempSkipped.pop();)e=TT(e,i.from,i.to);return e}changes(e,i){let{fragments:n,tree:r,treeLen:s,viewport:a,skipped:c}=this;if(this.takeTree(),!e.empty){let h=[];if(e.iterChangedRanges((d,f,g,m)=>h.push({fromA:d,toA:f,fromB:g,toB:m})),n=Hs.applyChanges(n,h),r=mt.empty,s=0,a={from:e.mapPos(a.from,-1),to:e.mapPos(a.to,1)},this.skipped.length){c=[];for(let d of this.skipped){let f=e.mapPos(d.from,1),g=e.mapPos(d.to,-1);f<g&&c.push({from:f,to:g})}}}return new Fu(this.parser,i,n,r,s,a,c,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let i=this.skipped.length;for(let n=0;n<this.skipped.length;n++){let{from:r,to:s}=this.skipped[n];r<e.to&&s>e.from&&(this.fragments=TT(this.fragments,r,s),this.skipped.splice(n--,1))}return this.skipped.length>=i?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,i){this.skipped.push({from:e,to:i})}static getSkippingParser(e){return new class extends vb{createParse(i,n,r){let s=r[0].from,a=r[r.length-1].to;return{parsedPos:s,advance(){let h=iu;if(h){for(let d of r)h.tempSkipped.push(d);e&&(h.scheduleOn=h.scheduleOn?Promise.all([h.scheduleOn,e]):e)}return this.parsedPos=a,new mt(vi.none,[],[],a-s)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let i=this.fragments;return this.treeLen>=e&&i.length&&i[0].from==0&&i[0].to>=e}static get(){return iu}}function TT(t,e,i){return Hs.applyChanges(t,[{fromA:e,toA:i,fromB:e,toB:i}])}class Xc{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let i=this.context.changes(e.changes,e.state),n=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),i.viewport.to);return i.work(20,n)||i.takeTree(),new Xc(i)}static init(e){let i=Math.min(3e3,e.doc.length),n=Fu.create(e.facet(ha).parser,e,{from:0,to:i});return n.work(20,i)||n.takeTree(),new Xc(n)}}hr.state=Un.define({create:Xc.init,update(t,e){for(let i of e.effects)if(i.is(hr.setState))return i.value;return e.startState.facet(ha)!=e.state.facet(ha)?Xc.init(e.state):t.apply(e)}});let v5=t=>{let e=setTimeout(()=>t(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(v5=t=>{let e=-1,i=setTimeout(()=>{e=requestIdleCallback(t,{timeout:400})},100);return()=>e<0?clearTimeout(i):cancelIdleCallback(e)});const zv=typeof navigator<"u"&&(!((Mv=navigator.scheduling)===null||Mv===void 0)&&Mv.isInputPending)?()=>navigator.scheduling.isInputPending():null,bq=Ni.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let i=this.view.state.field(hr.state).context;(i.updateViewport(e.view.viewport)||this.view.viewport.to>i.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(i)}scheduleWork(){if(this.working)return;let{state:e}=this.view,i=e.field(hr.state);(i.tree!=i.context.tree||!i.context.isDone(e.doc.length))&&(this.working=v5(this.work))}work(e){this.working=null;let i=Date.now();if(this.chunkEnd<i&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=i+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:n,viewport:{to:r}}=this.view,s=n.field(hr.state);if(s.tree==s.context.tree&&s.context.isDone(r+1e5))return;let a=Date.now()+Math.min(this.chunkBudget,100,e&&!zv?Math.max(25,e.timeRemaining()-5):1e9),c=s.context.treeLen<r&&n.doc.length>r+1e3,h=s.context.work(()=>zv&&zv()||Date.now()>a,r+(c?0:1e5));this.chunkBudget-=Date.now()-i,(h||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:hr.setState.of(new Xc(s.context))})),this.chunkBudget>0&&!(h&&!c)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(i=>Yn(this.view.state,i)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),ha=we.define({combine(t){return t.length?t[0]:null},enables:t=>[hr.state,bq,xe.contentAttributes.compute([t],e=>{let i=e.facet(t);return i&&i.name?{"data-language":i.name}:{}})]});class cl{constructor(e,i=[]){this.language=e,this.support=i,this.extension=[e,i]}}class Bg{constructor(e,i,n,r,s,a=void 0){this.name=e,this.alias=i,this.extensions=n,this.filename=r,this.loadFunc=s,this.support=a,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(e=>this.support=e,e=>{throw this.loading=null,e}))}static of(e){let{load:i,support:n}=e;if(!i){if(!n)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");i=()=>Promise.resolve(n)}return new Bg(e.name,(e.alias||[]).concat(e.name).map(r=>r.toLowerCase()),e.extensions||[],e.filename,i,n)}static matchFilename(e,i){for(let r of e)if(r.filename&&r.filename.test(i))return r;let n=/\.([^.]+)$/.exec(i);if(n){for(let r of e)if(r.extensions.indexOf(n[1])>-1)return r}return null}static matchLanguageName(e,i,n=!0){i=i.toLowerCase();for(let r of e)if(r.alias.some(s=>s==i))return r;if(n)for(let r of e)for(let s of r.alias){let a=i.indexOf(s);if(a>-1&&(s.length>2||!/\w/.test(i[a-1])&&!/\w/.test(i[a+s.length])))return r}return null}}const _q=we.define(),_d=we.define({combine:t=>{if(!t.length)return" ";let e=t[0];if(!e||/\S/.test(e)||Array.from(e).some(i=>i!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(t[0]));return e}});function Lg(t){let e=t.facet(_d);return e.charCodeAt(0)==9?t.tabSize*e.length:e.length}function Ku(t,e){let i="",n=t.tabSize,r=t.facet(_d)[0];if(r==" "){for(;e>=n;)i+=" ",e-=n;r=" "}for(let s=0;s<e;s++)i+=r;return i}function bb(t,e){t instanceof ct&&(t=new Qm(t));for(let n of t.state.facet(_q)){let r=n(t,e);if(r!==void 0)return r}let i=Qt(t.state);return i.length>=e?xq(t,i,e):null}class Qm{constructor(e,i={}){this.state=e,this.options=i,this.unit=Lg(e)}lineAt(e,i=1){let n=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:s}=this.options;return r!=null&&r>=n.from&&r<=n.to?s&&r==e?{text:"",from:e}:(i<0?r<e:r<=e)?{text:n.text.slice(r-n.from),from:r}:{text:n.text.slice(0,r-n.from),from:n.from}:n}textAfterPos(e,i=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:n,from:r}=this.lineAt(e,i);return n.slice(e-r,Math.min(n.length,e+100-r))}column(e,i=1){let{text:n,from:r}=this.lineAt(e,i),s=this.countColumn(n,e-r),a=this.options.overrideIndentation?this.options.overrideIndentation(r):-1;return a>-1&&(s+=a-this.countColumn(n,n.search(/\S|$/))),s}countColumn(e,i=e.length){return Gs(e,this.state.tabSize,i)}lineIndent(e,i=1){let{text:n,from:r}=this.lineAt(e,i),s=this.options.overrideIndentation;if(s){let a=s(r);if(a>-1)return a}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const gl=new Ze;function xq(t,e,i){let n=e.resolveStack(i),r=e.resolveInner(i,-1).resolve(i,0).enterUnfinishedNodesBefore(i);if(r!=n.node){let s=[];for(let a=r;a&&!(a.from<n.node.from||a.to>n.node.to||a.from==n.node.from&&a.type==n.node.type);a=a.parent)s.push(a);for(let a=s.length-1;a>=0;a--)n={node:s[a],next:n}}return y5(n,t,i)}function y5(t,e,i){for(let n=t;n;n=n.next){let r=kq(n.node);if(r)return r(_b.create(e,i,n))}return 0}function wq(t){return t.pos==t.options.simulateBreak&&t.options.simulateDoubleBreak}function kq(t){let e=t.type.prop(gl);if(e)return e;let i=t.firstChild,n;if(i&&(n=i.type.prop(Ze.closedBy))){let r=t.lastChild,s=r&&n.indexOf(r.name)>-1;return a=>S5(a,!0,1,void 0,s&&!wq(a)?r.from:void 0)}return t.parent==null?Cq:null}function Cq(){return 0}class _b extends Qm{constructor(e,i,n){super(e.state,e.options),this.base=e,this.pos=i,this.context=n}get node(){return this.context.node}static create(e,i,n){return new _b(e,i,n)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let i=this.state.doc.lineAt(e.from);for(;;){let n=e.resolve(i.from);for(;n.parent&&n.parent.from==n.from;)n=n.parent;if(Tq(n,e))break;i=this.state.doc.lineAt(n.from)}return this.lineIndent(i.from)}continue(){return y5(this.context.next,this.base,this.pos)}}function Tq(t,e){for(let i=e;i;i=i.parent)if(t==i)return!0;return!1}function Qq(t){let e=t.node,i=e.childAfter(e.from),n=e.lastChild;if(!i)return null;let r=t.options.simulateBreak,s=t.state.doc.lineAt(i.from),a=r==null||r<=s.from?s.to:Math.min(s.to,r);for(let c=i.to;;){let h=e.childAfter(c);if(!h||h==n)return null;if(!h.type.isSkipped){if(h.from>=a)return null;let d=/^ */.exec(s.text.slice(i.to-s.from))[0].length;return{from:i.from,to:i.to+d}}c=h.to}}function Jp({closing:t,align:e=!0,units:i=1}){return n=>S5(n,e,i,t)}function S5(t,e,i,n,r){let s=t.textAfter,a=s.match(/^\s*/)[0].length,c=n&&s.slice(a,a+n.length)==n||r==t.pos+a,h=e?Qq(t):null;return h?c?t.column(h.from):t.column(h.to):t.baseIndent+(c?0:t.unit*i)}const $q=t=>t.baseIndent;function _c({except:t,units:e=1}={}){return i=>{let n=t&&t.test(i.textAfter);return i.baseIndent+(n?0:e*i.unit)}}const Pq=200;function Eq(){return ct.transactionFilter.of(t=>{if(!t.docChanged||!t.isUserEvent("input.type")&&!t.isUserEvent("input.complete"))return t;let e=t.startState.languageDataAt("indentOnInput",t.startState.selection.main.head);if(!e.length)return t;let i=t.newDoc,{head:n}=t.newSelection.main,r=i.lineAt(n);if(n>r.from+Pq)return t;let s=i.sliceString(r.from,n);if(!e.some(d=>d.test(s)))return t;let{state:a}=t,c=-1,h=[];for(let{head:d}of a.selection.ranges){let f=a.doc.lineAt(d);if(f.from==c)continue;c=f.from;let g=bb(a,f.from);if(g==null)continue;let m=/^\s*/.exec(f.text)[0],v=Ku(a,g);m!=v&&h.push({from:f.from,to:f.from+m.length,insert:v})}return h.length?[t,{changes:h,sequential:!0}]:t})}const b5=we.define(),pa=new Ze;function $m(t){let e=t.firstChild,i=t.lastChild;return e&&e.to<i.from?{from:e.to,to:i.type.isError?t.to:i.from}:null}function Rq(t,e,i){let n=Qt(t);if(n.length<i)return null;let r=n.resolveStack(i,1),s=null;for(let a=r;a;a=a.next){let c=a.node;if(c.to<=i||c.from>i)continue;if(s&&c.from<e)break;let h=c.type.prop(pa);if(h&&(c.to<n.length-50||n.length==t.doc.length||!Aq(c))){let d=h(c,t);d&&d.from<=i&&d.from>=e&&d.to>i&&(s=d)}}return s}function Aq(t){let e=t.lastChild;return e&&e.to==t.to&&e.type.isError}function Xg(t,e,i){for(let n of t.facet(b5)){let r=n(t,e,i);if(r)return r}return Rq(t,e,i)}function _5(t,e){let i=e.mapPos(t.from,1),n=e.mapPos(t.to,-1);return i>=n?void 0:{from:i,to:n}}const Pm=Je.define({map:_5}),xd=Je.define({map:_5});function x5(t){let e=[];for(let{head:i}of t.state.selection.ranges)e.some(n=>n.from<=i&&n.to>=i)||e.push(t.lineBlockAt(i));return e}const hl=Un.define({create(){return qe.none},update(t,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((i,n)=>t=QT(t,i,n)),t=t.map(e.changes);for(let i of e.effects)if(i.is(Pm)&&!Mq(t,i.value.from,i.value.to)){let{preparePlaceholder:n}=e.state.facet(C5),r=n?qe.replace({widget:new Nq(n(e.state,i.value))}):$T;t=t.update({add:[r.range(i.value.from,i.value.to)]})}else i.is(xd)&&(t=t.update({filter:(n,r)=>i.value.from!=n||i.value.to!=r,filterFrom:i.value.from,filterTo:i.value.to}));return e.selection&&(t=QT(t,e.selection.main.head)),t},provide:t=>xe.decorations.from(t),toJSON(t,e){let i=[];return t.between(0,e.doc.length,(n,r)=>{i.push(n,r)}),i},fromJSON(t){if(!Array.isArray(t)||t.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let i=0;i<t.length;){let n=t[i++],r=t[i++];if(typeof n!="number"||typeof r!="number")throw new RangeError("Invalid JSON for fold state");e.push($T.range(n,r))}return qe.set(e,!0)}});function QT(t,e,i=e){let n=!1;return t.between(e,i,(r,s)=>{r<i&&s>e&&(n=!0)}),n?t.update({filterFrom:e,filterTo:i,filter:(r,s)=>r>=i||s<=e}):t}function Ng(t,e,i){var n;let r=null;return(n=t.field(hl,!1))===null||n===void 0||n.between(e,i,(s,a)=>{(!r||r.from>s)&&(r={from:s,to:a})}),r}function Mq(t,e,i){let n=!1;return t.between(e,e,(r,s)=>{r==e&&s==i&&(n=!0)}),n}function w5(t,e){return t.field(hl,!1)?e:e.concat(Je.appendConfig.of(T5()))}const zq=t=>{for(let e of x5(t)){let i=Xg(t.state,e.from,e.to);if(i)return t.dispatch({effects:w5(t.state,[Pm.of(i),k5(t,i)])}),!0}return!1},jq=t=>{if(!t.state.field(hl,!1))return!1;let e=[];for(let i of x5(t)){let n=Ng(t.state,i.from,i.to);n&&e.push(xd.of(n),k5(t,n,!1))}return e.length&&t.dispatch({effects:e}),e.length>0};function k5(t,e,i=!0){let n=t.state.doc.lineAt(e.from).number,r=t.state.doc.lineAt(e.to).number;return xe.announce.of(`${t.state.phrase(i?"Folded lines":"Unfolded lines")} ${n} ${t.state.phrase("to")} ${r}.`)}const Dq=t=>{let{state:e}=t,i=[];for(let n=0;n<e.doc.length;){let r=t.lineBlockAt(n),s=Xg(e,r.from,r.to);s&&i.push(Pm.of(s)),n=(s?t.lineBlockAt(s.to):r).to+1}return i.length&&t.dispatch({effects:w5(t.state,i)}),!!i.length},Bq=t=>{let e=t.state.field(hl,!1);if(!e||!e.size)return!1;let i=[];return e.between(0,t.state.doc.length,(n,r)=>{i.push(xd.of({from:n,to:r}))}),t.dispatch({effects:i}),!0},Lq=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:zq},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:jq},{key:"Ctrl-Alt-[",run:Dq},{key:"Ctrl-Alt-]",run:Bq}],Xq={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},C5=we.define({combine(t){return da(t,Xq)}});function T5(t){return[hl,qq]}function Q5(t,e){let{state:i}=t,n=i.facet(C5),r=a=>{let c=t.lineBlockAt(t.posAtDOM(a.target)),h=Ng(t.state,c.from,c.to);h&&t.dispatch({effects:xd.of(h)}),a.preventDefault()};if(n.placeholderDOM)return n.placeholderDOM(t,r,e);let s=document.createElement("span");return s.textContent=n.placeholderText,s.setAttribute("aria-label",i.phrase("folded code")),s.title=i.phrase("unfold"),s.className="cm-foldPlaceholder",s.onclick=r,s}const $T=qe.replace({widget:new class extends pl{toDOM(t){return Q5(t,null)}}});class Nq extends pl{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return Q5(e,this.value)}}const Zq={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class jv extends Ks{constructor(e,i){super(),this.config=e,this.open=i}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let i=document.createElement("span");return i.textContent=this.open?this.config.openText:this.config.closedText,i.title=e.state.phrase(this.open?"Fold line":"Unfold line"),i}}function Wq(t={}){let e={...Zq,...t},i=new jv(e,!0),n=new jv(e,!1),r=Ni.fromClass(class{constructor(a){this.from=a.viewport.from,this.markers=this.buildMarkers(a)}update(a){(a.docChanged||a.viewportChanged||a.startState.facet(ha)!=a.state.facet(ha)||a.startState.field(hl,!1)!=a.state.field(hl,!1)||Qt(a.startState)!=Qt(a.state)||e.foldingChanged(a))&&(this.markers=this.buildMarkers(a.view))}buildMarkers(a){let c=new sl;for(let h of a.viewportLineBlocks){let d=Ng(a.state,h.from,h.to)?n:Xg(a.state,h.from,h.to)?i:null;d&&c.add(h.from,h.from,d)}return c.finish()}}),{domEventHandlers:s}=e;return[r,Z7({class:"cm-foldGutter",markers(a){var c;return((c=a.plugin(r))===null||c===void 0?void 0:c.markers)||nt.empty},initialSpacer(){return new jv(e,!1)},domEventHandlers:{...s,click:(a,c,h)=>{if(s.click&&s.click(a,c,h))return!0;let d=Ng(a.state,c.from,c.to);if(d)return a.dispatch({effects:xd.of(d)}),!0;let f=Xg(a.state,c.from,c.to);return f?(a.dispatch({effects:Pm.of(f)}),!0):!1}}}),T5()]}const qq=xe.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class Em{constructor(e,i){this.specs=e;let n;function r(c){let h=sa.newName();return(n||(n=Object.create(null)))["."+h]=c,h}const s=typeof i.all=="string"?i.all:i.all?r(i.all):void 0,a=i.scope;this.scope=a instanceof hr?c=>c.prop(Ha)==a.data:a?c=>c==a:void 0,this.style=O5(e.map(c=>({tag:c.tag,class:c.class||r(Object.assign({},c,{tag:null}))})),{all:s}).style,this.module=n?new sa(n):null,this.themeType=i.themeType}static define(e,i){return new Em(e,i||{})}}const bS=we.define(),Iq=we.define({combine(t){return t.length?[t[0]]:null}});function Dv(t){let e=t.facet(bS);return e.length?e:t.facet(Iq)}function Vq(t,e){let i=[Hq],n;return t instanceof Em&&(t.module&&i.push(xe.styleModule.of(t.module)),n=t.themeType),n?i.push(bS.computeN([xe.darkTheme],r=>r.facet(xe.darkTheme)==(n=="dark")?[t]:[])):i.push(bS.of(t)),i}class Yq{constructor(e){this.markCache=Object.create(null),this.tree=Qt(e.state),this.decorations=this.buildDeco(e,Dv(e.state)),this.decoratedTo=e.viewport.to}update(e){let i=Qt(e.state),n=Dv(e.state),r=n!=Dv(e.startState),{viewport:s}=e.view,a=e.changes.mapPos(this.decoratedTo,1);i.length<s.to&&!r&&i.type==this.tree.type&&a>=s.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=a):(i!=this.tree||e.viewportChanged||r)&&(this.tree=i,this.decorations=this.buildDeco(e.view,n),this.decoratedTo=s.to)}buildDeco(e,i){if(!i||!this.tree.length)return qe.none;let n=new sl;for(let{from:r,to:s}of e.visibleRanges)Oq(this.tree,i,(a,c,h)=>{n.add(a,c,this.markCache[h]||(this.markCache[h]=qe.mark({class:h})))},r,s);return n.finish()}}const Hq=eo.high(Ni.fromClass(Yq,{decorations:t=>t.decorations})),Uq=xe.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),$5=1e4,P5="()[]{}",E5=we.define({combine(t){return da(t,{afterCursor:!0,brackets:P5,maxScanDistance:$5,renderMatch:Kq})}}),Gq=qe.mark({class:"cm-matchingBracket"}),Fq=qe.mark({class:"cm-nonmatchingBracket"});function Kq(t){let e=[],i=t.matched?Gq:Fq;return e.push(i.range(t.start.from,t.start.to)),t.end&&e.push(i.range(t.end.from,t.end.to)),e}function PT(t){let e=[],i=t.facet(E5);for(let n of t.selection.ranges){if(!n.empty)continue;let r=ns(t,n.head,-1,i)||n.head>0&&ns(t,n.head-1,1,i)||i.afterCursor&&(ns(t,n.head,1,i)||n.head<t.doc.length&&ns(t,n.head+1,-1,i));r&&(e=e.concat(i.renderMatch(r,t)))}return qe.set(e,!0)}const Jq=Ni.fromClass(class{constructor(t){this.paused=!1,this.decorations=PT(t.state)}update(t){(t.docChanged||t.selectionSet||this.paused)&&(t.view.composing?(this.decorations=this.decorations.map(t.changes),this.paused=!0):(this.decorations=PT(t.state),this.paused=!1))}},{decorations:t=>t.decorations}),e9=[Jq,Uq];function t9(t={}){return[E5.of(t),e9]}const R5=new Ze;function _S(t,e,i){let n=t.prop(e<0?Ze.openedBy:Ze.closedBy);if(n)return n;if(t.name.length==1){let r=i.indexOf(t.name);if(r>-1&&r%2==(e<0?1:0))return[i[r+e]]}return null}function xS(t){let e=t.type.prop(R5);return e?e(t.node):t}function ns(t,e,i,n={}){let r=n.maxScanDistance||$5,s=n.brackets||P5,a=Qt(t),c=a.resolveInner(e,i);for(let h=c;h;h=h.parent){let d=_S(h.type,i,s);if(d&&h.from<h.to){let f=xS(h);if(f&&(i>0?e>=f.from&&e<f.to:e>f.from&&e<=f.to))return i9(t,e,i,h,f,d,s)}}return n9(t,e,i,a,c.type,r,s)}function i9(t,e,i,n,r,s,a){let c=n.parent,h={from:r.from,to:r.to},d=0,f=c==null?void 0:c.cursor();if(f&&(i<0?f.childBefore(n.from):f.childAfter(n.to)))do if(i<0?f.to<=n.from:f.from>=n.to){if(d==0&&s.indexOf(f.type.name)>-1&&f.from<f.to){let g=xS(f);return{start:h,end:g?{from:g.from,to:g.to}:void 0,matched:!0}}else if(_S(f.type,i,a))d++;else if(_S(f.type,-i,a)){if(d==0){let g=xS(f);return{start:h,end:g&&g.from<g.to?{from:g.from,to:g.to}:void 0,matched:!1}}d--}}while(i<0?f.prevSibling():f.nextSibling());return{start:h,matched:!1}}function n9(t,e,i,n,r,s,a){if(i<0?!e:e==t.doc.length)return null;let c=i<0?t.sliceDoc(e-1,e):t.sliceDoc(e,e+1),h=a.indexOf(c);if(h<0||h%2==0!=i>0)return null;let d={from:i<0?e-1:e,to:i>0?e+1:e},f=t.doc.iterRange(e,i>0?t.doc.length:0),g=0;for(let m=0;!f.next().done&&m<=s;){let v=f.value;i<0&&(m+=v.length);let S=e+m*i;for(let _=i>0?0:v.length-1,w=i>0?v.length:-1;_!=w;_+=i){let x=a.indexOf(v[_]);if(!(x<0||n.resolveInner(S+_,1).type!=r))if(x%2==0==i>0)g++;else{if(g==1)return{start:d,end:{from:S+_,to:S+_+1},matched:x>>1==h>>1};g--}}i>0&&(m+=v.length)}return f.done?{start:d,matched:!1}:null}const r9=Object.create(null),ET=[vi.none],RT=[],AT=Object.create(null),s9=Object.create(null);for(let[t,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])s9[t]=o9(r9,e);function Bv(t,e){RT.indexOf(t)>-1||(RT.push(t),console.warn(e))}function o9(t,e){let i=[];for(let c of e.split(" ")){let h=[];for(let d of c.split(".")){let f=t[d]||q[d];f?typeof f=="function"?h.length?h=h.map(f):Bv(d,`Modifier ${d} used at start of tag`):h.length?Bv(d,`Tag ${d} used as modifier`):h=Array.isArray(f)?f:[f]:Bv(d,`Unknown highlighting tag ${d}`)}for(let d of h)i.push(d)}if(!i.length)return 0;let n=e.replace(/ /g,"_"),r=n+" "+i.map(c=>c.id),s=AT[r];if(s)return s.id;let a=AT[r]=vi.define({id:ET.length,name:n,props:[fa({[n]:i})]});return ET.push(a),a.id}Tt.RTL,Tt.LTR;const a9=t=>{let{state:e}=t,i=e.doc.lineAt(e.selection.main.from),n=wb(t.state,i.from);return n.line?l9(t):n.block?h9(t):!1};function xb(t,e){return({state:i,dispatch:n})=>{if(i.readOnly)return!1;let r=t(e,i);return r?(n(i.update(r)),!0):!1}}const l9=xb(f9,0),c9=xb(A5,0),h9=xb((t,e)=>A5(t,e,d9(e)),0);function wb(t,e){let i=t.languageDataAt("commentTokens",e,1);return i.length?i[0]:{}}const nu=50;function u9(t,{open:e,close:i},n,r){let s=t.sliceDoc(n-nu,n),a=t.sliceDoc(r,r+nu),c=/\s*$/.exec(s)[0].length,h=/^\s*/.exec(a)[0].length,d=s.length-c;if(s.slice(d-e.length,d)==e&&a.slice(h,h+i.length)==i)return{open:{pos:n-c,margin:c&&1},close:{pos:r+h,margin:h&&1}};let f,g;r-n<=2*nu?f=g=t.sliceDoc(n,r):(f=t.sliceDoc(n,n+nu),g=t.sliceDoc(r-nu,r));let m=/^\s*/.exec(f)[0].length,v=/\s*$/.exec(g)[0].length,S=g.length-v-i.length;return f.slice(m,m+e.length)==e&&g.slice(S,S+i.length)==i?{open:{pos:n+m+e.length,margin:/\s/.test(f.charAt(m+e.length))?1:0},close:{pos:r-v-i.length,margin:/\s/.test(g.charAt(S-1))?1:0}}:null}function d9(t){let e=[];for(let i of t.selection.ranges){let n=t.doc.lineAt(i.from),r=i.to<=n.to?n:t.doc.lineAt(i.to);r.from>n.from&&r.from==i.to&&(r=i.to==n.to+1?n:t.doc.lineAt(i.to-1));let s=e.length-1;s>=0&&e[s].to>n.from?e[s].to=r.to:e.push({from:n.from+/^\s*/.exec(n.text)[0].length,to:r.to})}return e}function A5(t,e,i=e.selection.ranges){let n=i.map(s=>wb(e,s.from).block);if(!n.every(s=>s))return null;let r=i.map((s,a)=>u9(e,n[a],s.from,s.to));if(t!=2&&!r.every(s=>s))return{changes:e.changes(i.map((s,a)=>r[a]?[]:[{from:s.from,insert:n[a].open+" "},{from:s.to,insert:" "+n[a].close}]))};if(t!=1&&r.some(s=>s)){let s=[];for(let a=0,c;a<r.length;a++)if(c=r[a]){let h=n[a],{open:d,close:f}=c;s.push({from:d.pos-h.open.length,to:d.pos+d.margin},{from:f.pos-f.margin,to:f.pos+h.close.length})}return{changes:s}}return null}function f9(t,e,i=e.selection.ranges){let n=[],r=-1;e:for(let{from:s,to:a}of i){let c=n.length,h=1e9,d;for(let f=s;f<=a;){let g=e.doc.lineAt(f);if(d==null&&(d=wb(e,g.from).line,!d))continue e;if(g.from>r&&(s==a||a>g.from)){r=g.from;let m=/^\s*/.exec(g.text)[0].length,v=m==g.length,S=g.text.slice(m,m+d.length)==d?m:-1;m<g.text.length&&m<h&&(h=m),n.push({line:g,comment:S,token:d,indent:m,empty:v,single:!1})}f=g.to+1}if(h<1e9)for(let f=c;f<n.length;f++)n[f].indent<n[f].line.text.length&&(n[f].indent=h);n.length==c+1&&(n[c].single=!0)}if(t!=2&&n.some(s=>s.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:c,token:h,indent:d,empty:f,single:g}of n)(g||!f)&&s.push({from:c.from+d,insert:h+" "});let a=e.changes(s);return{changes:a,selection:e.selection.map(a,1)}}else if(t!=1&&n.some(s=>s.comment>=0)){let s=[];for(let{line:a,comment:c,token:h}of n)if(c>=0){let d=a.from+c,f=d+h.length;a.text[f-a.from]==" "&&f++,s.push({from:d,to:f})}return{changes:s}}return null}const wS=to.define(),p9=to.define(),g9=we.define(),M5=we.define({combine(t){return da(t,{minDepth:100,newGroupDelay:500,joinToEvent:(e,i)=>i},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,i)=>(n,r)=>e(n,r)||i(n,r)})}}),z5=Un.define({create(){return rs.empty},update(t,e){let i=e.state.facet(M5),n=e.annotation(wS);if(n){let h=_n.fromTransaction(e,n.selection),d=n.side,f=d==0?t.undone:t.done;return h?f=Zg(f,f.length,i.minDepth,h):f=B5(f,e.startState.selection),new rs(d==0?n.rest:f,d==0?f:n.rest)}let r=e.annotation(p9);if((r=="full"||r=="before")&&(t=t.isolate()),e.annotation(li.addToHistory)===!1)return e.changes.empty?t:t.addMapping(e.changes.desc);let s=_n.fromTransaction(e),a=e.annotation(li.time),c=e.annotation(li.userEvent);return s?t=t.addChanges(s,a,c,i,e):e.selection&&(t=t.addSelection(e.startState.selection,a,c,i.newGroupDelay)),(r=="full"||r=="after")&&(t=t.isolate()),t},toJSON(t){return{done:t.done.map(e=>e.toJSON()),undone:t.undone.map(e=>e.toJSON())}},fromJSON(t){return new rs(t.done.map(_n.fromJSON),t.undone.map(_n.fromJSON))}});function m9(t={}){return[z5,M5.of(t),xe.domEventHandlers({beforeinput(e,i){let n=e.inputType=="historyUndo"?j5:e.inputType=="historyRedo"?kS:null;return n?(e.preventDefault(),n(i)):!1}})]}function Rm(t,e){return function({state:i,dispatch:n}){if(!e&&i.readOnly)return!1;let r=i.field(z5,!1);if(!r)return!1;let s=r.pop(t,i,e);return s?(n(s),!0):!1}}const j5=Rm(0,!1),kS=Rm(1,!1),O9=Rm(0,!0),v9=Rm(1,!0);class _n{constructor(e,i,n,r,s){this.changes=e,this.effects=i,this.mapped=n,this.startSelection=r,this.selectionsAfter=s}setSelAfter(e){return new _n(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,i,n;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(i=this.mapped)===null||i===void 0?void 0:i.toJSON(),startSelection:(n=this.startSelection)===null||n===void 0?void 0:n.toJSON(),selectionsAfter:this.selectionsAfter.map(r=>r.toJSON())}}static fromJSON(e){return new _n(e.changes&&Oi.fromJSON(e.changes),[],e.mapped&&as.fromJSON(e.mapped),e.startSelection&&le.fromJSON(e.startSelection),e.selectionsAfter.map(le.fromJSON))}static fromTransaction(e,i){let n=ur;for(let r of e.startState.facet(g9)){let s=r(e);s.length&&(n=n.concat(s))}return!n.length&&e.changes.empty?null:new _n(e.changes.invert(e.startState.doc),n,void 0,i||e.startState.selection,ur)}static selection(e){return new _n(void 0,ur,void 0,void 0,e)}}function Zg(t,e,i,n){let r=e+1>i+20?e-i-1:0,s=t.slice(r,e);return s.push(n),s}function y9(t,e){let i=[],n=!1;return t.iterChangedRanges((r,s)=>i.push(r,s)),e.iterChangedRanges((r,s,a,c)=>{for(let h=0;h<i.length;){let d=i[h++],f=i[h++];c>=d&&a<=f&&(n=!0)}}),n}function S9(t,e){return t.ranges.length==e.ranges.length&&t.ranges.filter((i,n)=>i.empty!=e.ranges[n].empty).length===0}function D5(t,e){return t.length?e.length?t.concat(e):t:e}const ur=[],b9=200;function B5(t,e){if(t.length){let i=t[t.length-1],n=i.selectionsAfter.slice(Math.max(0,i.selectionsAfter.length-b9));return n.length&&n[n.length-1].eq(e)?t:(n.push(e),Zg(t,t.length-1,1e9,i.setSelAfter(n)))}else return[_n.selection([e])]}function _9(t){let e=t[t.length-1],i=t.slice();return i[t.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),i}function Lv(t,e){if(!t.length)return t;let i=t.length,n=ur;for(;i;){let r=x9(t[i-1],e,n);if(r.changes&&!r.changes.empty||r.effects.length){let s=t.slice(0,i);return s[i-1]=r,s}else e=r.mapped,i--,n=r.selectionsAfter}return n.length?[_n.selection(n)]:ur}function x9(t,e,i){let n=D5(t.selectionsAfter.length?t.selectionsAfter.map(c=>c.map(e)):ur,i);if(!t.changes)return _n.selection(n);let r=t.changes.map(e),s=e.mapDesc(t.changes,!0),a=t.mapped?t.mapped.composeDesc(s):s;return new _n(r,Je.mapEffects(t.effects,e),a,t.startSelection.map(s),n)}const w9=/^(input\.type|delete)($|\.)/;class rs{constructor(e,i,n=0,r=void 0){this.done=e,this.undone=i,this.prevTime=n,this.prevUserEvent=r}isolate(){return this.prevTime?new rs(this.done,this.undone):this}addChanges(e,i,n,r,s){let a=this.done,c=a[a.length-1];return c&&c.changes&&!c.changes.empty&&e.changes&&(!n||w9.test(n))&&(!c.selectionsAfter.length&&i-this.prevTime<r.newGroupDelay&&r.joinToEvent(s,y9(c.changes,e.changes))||n=="input.type.compose")?a=Zg(a,a.length-1,r.minDepth,new _n(e.changes.compose(c.changes),D5(Je.mapEffects(e.effects,c.changes),c.effects),c.mapped,c.startSelection,ur)):a=Zg(a,a.length,r.minDepth,e),new rs(a,ur,i,n)}addSelection(e,i,n,r){let s=this.done.length?this.done[this.done.length-1].selectionsAfter:ur;return s.length>0&&i-this.prevTime<r&&n==this.prevUserEvent&&n&&/^select($|\.)/.test(n)&&S9(s[s.length-1],e)?this:new rs(B5(this.done,e),this.undone,i,n)}addMapping(e){return new rs(Lv(this.done,e),Lv(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,i,n){let r=e==0?this.done:this.undone;if(r.length==0)return null;let s=r[r.length-1],a=s.selectionsAfter[0]||(s.startSelection?s.startSelection.map(s.changes.invertedDesc,1):i.selection);if(n&&s.selectionsAfter.length)return i.update({selection:s.selectionsAfter[s.selectionsAfter.length-1],annotations:wS.of({side:e,rest:_9(r),selection:a}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(s.changes){let c=r.length==1?ur:r.slice(0,r.length-1);return s.mapped&&(c=Lv(c,s.mapped)),i.update({changes:s.changes,selection:s.startSelection,effects:s.effects,annotations:wS.of({side:e,rest:c,selection:a}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}rs.empty=new rs(ur,ur);const k9=[{key:"Mod-z",run:j5,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:kS,preventDefault:!0},{linux:"Ctrl-Shift-z",run:kS,preventDefault:!0},{key:"Mod-u",run:O9,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:v9,preventDefault:!0}];function Vc(t,e){return le.create(t.ranges.map(e),t.mainIndex)}function Mr(t,e){return t.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function zr({state:t,dispatch:e},i){let n=Vc(t.selection,i);return n.eq(t.selection,!0)?!1:(e(Mr(t,n)),!0)}function Am(t,e){return le.cursor(e?t.to:t.from)}function L5(t,e){return zr(t,i=>i.empty?t.moveByChar(i,e):Am(i,e))}function Ui(t){return t.textDirectionAt(t.state.selection.main.head)==Tt.LTR}const X5=t=>L5(t,!Ui(t)),N5=t=>L5(t,Ui(t));function Z5(t,e){return zr(t,i=>i.empty?t.moveByGroup(i,e):Am(i,e))}const C9=t=>Z5(t,!Ui(t)),T9=t=>Z5(t,Ui(t));function Q9(t,e,i){if(e.type.prop(i))return!0;let n=e.to-e.from;return n&&(n>2||/[^\s,.;:]/.test(t.sliceDoc(e.from,e.to)))||e.firstChild}function Mm(t,e,i){let n=Qt(t).resolveInner(e.head),r=i?Ze.closedBy:Ze.openedBy;for(let h=e.head;;){let d=i?n.childAfter(h):n.childBefore(h);if(!d)break;Q9(t,d,r)?n=d:h=i?d.to:d.from}let s=n.type.prop(r),a,c;return s&&(a=i?ns(t,n.from,1):ns(t,n.to,-1))&&a.matched?c=i?a.end.to:a.end.from:c=i?n.to:n.from,le.cursor(c,i?-1:1)}const $9=t=>zr(t,e=>Mm(t.state,e,!Ui(t))),P9=t=>zr(t,e=>Mm(t.state,e,Ui(t)));function W5(t,e){return zr(t,i=>{if(!i.empty)return Am(i,e);let n=t.moveVertically(i,e);return n.head!=i.head?n:t.moveToLineBoundary(i,e)})}const q5=t=>W5(t,!1),I5=t=>W5(t,!0);function V5(t){let e=t.scrollDOM.clientHeight<t.scrollDOM.scrollHeight-2,i=0,n=0,r;if(e){for(let s of t.state.facet(xe.scrollMargins)){let a=s(t);a!=null&&a.top&&(i=Math.max(a==null?void 0:a.top,i)),a!=null&&a.bottom&&(n=Math.max(a==null?void 0:a.bottom,n))}r=t.scrollDOM.clientHeight-i-n}else r=(t.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:i,marginBottom:n,selfScroll:e,height:Math.max(t.defaultLineHeight,r-5)}}function Y5(t,e){let i=V5(t),{state:n}=t,r=Vc(n.selection,a=>a.empty?t.moveVertically(a,e,i.height):Am(a,e));if(r.eq(n.selection))return!1;let s;if(i.selfScroll){let a=t.coordsAtPos(n.selection.main.head),c=t.scrollDOM.getBoundingClientRect(),h=c.top+i.marginTop,d=c.bottom-i.marginBottom;a&&a.top>h&&a.bottom<d&&(s=xe.scrollIntoView(r.main.head,{y:"start",yMargin:a.top-h}))}return t.dispatch(Mr(n,r),{effects:s}),!0}const MT=t=>Y5(t,!1),CS=t=>Y5(t,!0);function ga(t,e,i){let n=t.lineBlockAt(e.head),r=t.moveToLineBoundary(e,i);if(r.head==e.head&&r.head!=(i?n.to:n.from)&&(r=t.moveToLineBoundary(e,i,!1)),!i&&r.head==n.from&&n.length){let s=/^\s*/.exec(t.state.sliceDoc(n.from,Math.min(n.from+100,n.to)))[0].length;s&&e.head!=n.from+s&&(r=le.cursor(n.from+s))}return r}const E9=t=>zr(t,e=>ga(t,e,!0)),R9=t=>zr(t,e=>ga(t,e,!1)),A9=t=>zr(t,e=>ga(t,e,!Ui(t))),M9=t=>zr(t,e=>ga(t,e,Ui(t))),z9=t=>zr(t,e=>le.cursor(t.lineBlockAt(e.head).from,1)),j9=t=>zr(t,e=>le.cursor(t.lineBlockAt(e.head).to,-1));function D9(t,e,i){let n=!1,r=Vc(t.selection,s=>{let a=ns(t,s.head,-1)||ns(t,s.head,1)||s.head>0&&ns(t,s.head-1,1)||s.head<t.doc.length&&ns(t,s.head+1,-1);if(!a||!a.end)return s;n=!0;let c=a.start.from==s.head?a.end.to:a.end.from;return le.cursor(c)});return n?(e(Mr(t,r)),!0):!1}const B9=({state:t,dispatch:e})=>D9(t,e);function pr(t,e){let i=Vc(t.state.selection,n=>{let r=e(n);return le.range(n.anchor,r.head,r.goalColumn,r.bidiLevel||void 0,r.assoc)});return i.eq(t.state.selection)?!1:(t.dispatch(Mr(t.state,i)),!0)}function H5(t,e){return pr(t,i=>t.moveByChar(i,e))}const U5=t=>H5(t,!Ui(t)),G5=t=>H5(t,Ui(t));function F5(t,e){return pr(t,i=>t.moveByGroup(i,e))}const L9=t=>F5(t,!Ui(t)),X9=t=>F5(t,Ui(t)),N9=t=>pr(t,e=>Mm(t.state,e,!Ui(t))),Z9=t=>pr(t,e=>Mm(t.state,e,Ui(t)));function K5(t,e){return pr(t,i=>t.moveVertically(i,e))}const J5=t=>K5(t,!1),eA=t=>K5(t,!0);function tA(t,e){return pr(t,i=>t.moveVertically(i,e,V5(t).height))}const zT=t=>tA(t,!1),jT=t=>tA(t,!0),W9=t=>pr(t,e=>ga(t,e,!0)),q9=t=>pr(t,e=>ga(t,e,!1)),I9=t=>pr(t,e=>ga(t,e,!Ui(t))),V9=t=>pr(t,e=>ga(t,e,Ui(t))),Y9=t=>pr(t,e=>le.cursor(t.lineBlockAt(e.head).from)),H9=t=>pr(t,e=>le.cursor(t.lineBlockAt(e.head).to)),DT=({state:t,dispatch:e})=>(e(Mr(t,{anchor:0})),!0),BT=({state:t,dispatch:e})=>(e(Mr(t,{anchor:t.doc.length})),!0),LT=({state:t,dispatch:e})=>(e(Mr(t,{anchor:t.selection.main.anchor,head:0})),!0),XT=({state:t,dispatch:e})=>(e(Mr(t,{anchor:t.selection.main.anchor,head:t.doc.length})),!0),U9=({state:t,dispatch:e})=>(e(t.update({selection:{anchor:0,head:t.doc.length},userEvent:"select"})),!0),G9=({state:t,dispatch:e})=>{let i=zm(t).map(({from:n,to:r})=>le.range(n,Math.min(r+1,t.doc.length)));return e(t.update({selection:le.create(i),userEvent:"select"})),!0},F9=({state:t,dispatch:e})=>{let i=Vc(t.selection,n=>{let r=Qt(t),s=r.resolveStack(n.from,1);if(n.empty){let a=r.resolveStack(n.from,-1);a.node.from>=s.node.from&&a.node.to<=s.node.to&&(s=a)}for(let a=s;a;a=a.next){let{node:c}=a;if((c.from<n.from&&c.to>=n.to||c.to>n.to&&c.from<=n.from)&&a.next)return le.range(c.to,c.from)}return n});return i.eq(t.selection)?!1:(e(Mr(t,i)),!0)};function iA(t,e){let{state:i}=t,n=i.selection,r=i.selection.ranges.slice();for(let s of i.selection.ranges){let a=i.doc.lineAt(s.head);if(e?a.to<t.state.doc.length:a.from>0)for(let c=s;;){let h=t.moveVertically(c,e);if(h.head<a.from||h.head>a.to){r.some(d=>d.head==h.head)||r.push(h);break}else{if(h.head==c.head)break;c=h}}}return r.length==n.ranges.length?!1:(t.dispatch(Mr(i,le.create(r,r.length-1))),!0)}const K9=t=>iA(t,!1),J9=t=>iA(t,!0),eI=({state:t,dispatch:e})=>{let i=t.selection,n=null;return i.ranges.length>1?n=le.create([i.main]):i.main.empty||(n=le.create([le.cursor(i.main.head)])),n?(e(Mr(t,n)),!0):!1};function wd(t,e){if(t.state.readOnly)return!1;let i="delete.selection",{state:n}=t,r=n.changeByRange(s=>{let{from:a,to:c}=s;if(a==c){let h=e(s);h<a?(i="delete.backward",h=Qp(t,h,!1)):h>a&&(i="delete.forward",h=Qp(t,h,!0)),a=Math.min(a,h),c=Math.max(c,h)}else a=Qp(t,a,!1),c=Qp(t,c,!0);return a==c?{range:s}:{changes:{from:a,to:c},range:le.cursor(a,a<s.head?-1:1)}});return r.changes.empty?!1:(t.dispatch(n.update(r,{scrollIntoView:!0,userEvent:i,effects:i=="delete.selection"?xe.announce.of(n.phrase("Selection deleted")):void 0})),!0)}function Qp(t,e,i){if(t instanceof xe)for(let n of t.state.facet(xe.atomicRanges).map(r=>r(t)))n.between(e,e,(r,s)=>{r<e&&s>e&&(e=i?s:r)});return e}const nA=(t,e,i)=>wd(t,n=>{let r=n.from,{state:s}=t,a=s.doc.lineAt(r),c,h;if(i&&!e&&r>a.from&&r<a.from+200&&!/[^ \t]/.test(c=a.text.slice(0,r-a.from))){if(c[c.length-1]==" ")return r-1;let d=Gs(c,s.tabSize),f=d%Lg(s)||Lg(s);for(let g=0;g<f&&c[c.length-1-g]==" ";g++)r--;h=r}else h=Qi(a.text,r-a.from,e,e)+a.from,h==r&&a.number!=(e?s.doc.lines:1)?h+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(a.text.slice(h-a.from,r-a.from))&&(h=Qi(a.text,h-a.from,!1,!1)+a.from);return h}),TS=t=>nA(t,!1,!0),rA=t=>nA(t,!0,!1),sA=(t,e)=>wd(t,i=>{let n=i.head,{state:r}=t,s=r.doc.lineAt(n),a=r.charCategorizer(n);for(let c=null;;){if(n==(e?s.to:s.from)){n==i.head&&s.number!=(e?r.doc.lines:1)&&(n+=e?1:-1);break}let h=Qi(s.text,n-s.from,e)+s.from,d=s.text.slice(Math.min(n,h)-s.from,Math.max(n,h)-s.from),f=a(d);if(c!=null&&f!=c)break;(d!=" "||n!=i.head)&&(c=f),n=h}return n}),oA=t=>sA(t,!1),tI=t=>sA(t,!0),iI=t=>wd(t,e=>{let i=t.lineBlockAt(e.head).to;return e.head<i?i:Math.min(t.state.doc.length,e.head+1)}),nI=t=>wd(t,e=>{let i=t.moveToLineBoundary(e,!1).head;return e.head>i?i:Math.max(0,e.head-1)}),rI=t=>wd(t,e=>{let i=t.moveToLineBoundary(e,!0).head;return e.head<i?i:Math.min(t.state.doc.length,e.head+1)}),sI=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let i=t.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:dt.of(["",""])},range:le.cursor(n.from)}));return e(t.update(i,{scrollIntoView:!0,userEvent:"input"})),!0},oI=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let i=t.changeByRange(n=>{if(!n.empty||n.from==0||n.from==t.doc.length)return{range:n};let r=n.from,s=t.doc.lineAt(r),a=r==s.from?r-1:Qi(s.text,r-s.from,!1)+s.from,c=r==s.to?r+1:Qi(s.text,r-s.from,!0)+s.from;return{changes:{from:a,to:c,insert:t.doc.slice(r,c).append(t.doc.slice(a,r))},range:le.cursor(c)}});return i.changes.empty?!1:(e(t.update(i,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function zm(t){let e=[],i=-1;for(let n of t.selection.ranges){let r=t.doc.lineAt(n.from),s=t.doc.lineAt(n.to);if(!n.empty&&n.to==s.from&&(s=t.doc.lineAt(n.to-1)),i>=r.number){let a=e[e.length-1];a.to=s.to,a.ranges.push(n)}else e.push({from:r.from,to:s.to,ranges:[n]});i=s.number+1}return e}function aA(t,e,i){if(t.readOnly)return!1;let n=[],r=[];for(let s of zm(t)){if(i?s.to==t.doc.length:s.from==0)continue;let a=t.doc.lineAt(i?s.to+1:s.from-1),c=a.length+1;if(i){n.push({from:s.to,to:a.to},{from:s.from,insert:a.text+t.lineBreak});for(let h of s.ranges)r.push(le.range(Math.min(t.doc.length,h.anchor+c),Math.min(t.doc.length,h.head+c)))}else{n.push({from:a.from,to:s.from},{from:s.to,insert:t.lineBreak+a.text});for(let h of s.ranges)r.push(le.range(h.anchor-c,h.head-c))}}return n.length?(e(t.update({changes:n,scrollIntoView:!0,selection:le.create(r,t.selection.mainIndex),userEvent:"move.line"})),!0):!1}const aI=({state:t,dispatch:e})=>aA(t,e,!1),lI=({state:t,dispatch:e})=>aA(t,e,!0);function lA(t,e,i){if(t.readOnly)return!1;let n=[];for(let s of zm(t))i?n.push({from:s.from,insert:t.doc.slice(s.from,s.to)+t.lineBreak}):n.push({from:s.to,insert:t.lineBreak+t.doc.slice(s.from,s.to)});let r=t.changes(n);return e(t.update({changes:r,selection:t.selection.map(r,i?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}const cI=({state:t,dispatch:e})=>lA(t,e,!1),hI=({state:t,dispatch:e})=>lA(t,e,!0),uI=t=>{if(t.state.readOnly)return!1;let{state:e}=t,i=e.changes(zm(e).map(({from:r,to:s})=>(r>0?r--:s<e.doc.length&&s++,{from:r,to:s}))),n=Vc(e.selection,r=>{let s;if(t.lineWrapping){let a=t.lineBlockAt(r.head),c=t.coordsAtPos(r.head,r.assoc||1);c&&(s=a.bottom+t.documentTop-c.bottom+t.defaultLineHeight/2)}return t.moveVertically(r,!0,s)}).map(i);return t.dispatch({changes:i,selection:n,scrollIntoView:!0,userEvent:"delete.line"}),!0};function dI(t,e){if(/\(\)|\[\]|\{\}/.test(t.sliceDoc(e-1,e+1)))return{from:e,to:e};let i=Qt(t).resolveInner(e),n=i.childBefore(e),r=i.childAfter(e),s;return n&&r&&n.to<=e&&r.from>=e&&(s=n.type.prop(Ze.closedBy))&&s.indexOf(r.name)>-1&&t.doc.lineAt(n.to).from==t.doc.lineAt(r.from).from&&!/\S/.test(t.sliceDoc(n.to,r.from))?{from:n.to,to:r.from}:null}const NT=cA(!1),fI=cA(!0);function cA(t){return({state:e,dispatch:i})=>{if(e.readOnly)return!1;let n=e.changeByRange(r=>{let{from:s,to:a}=r,c=e.doc.lineAt(s),h=!t&&s==a&&dI(e,s);t&&(s=a=(a<=c.to?c:e.doc.lineAt(a)).to);let d=new Qm(e,{simulateBreak:s,simulateDoubleBreak:!!h}),f=bb(d,s);for(f==null&&(f=Gs(/^\s*/.exec(e.doc.lineAt(s).text)[0],e.tabSize));a<c.to&&/\s/.test(c.text[a-c.from]);)a++;h?{from:s,to:a}=h:s>c.from&&s<c.from+100&&!/\S/.test(c.text.slice(0,s))&&(s=c.from);let g=["",Ku(e,f)];return h&&g.push(Ku(e,d.lineIndent(c.from,-1))),{changes:{from:s,to:a,insert:dt.of(g)},range:le.cursor(s+1+g[1].length)}});return i(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}}function kb(t,e){let i=-1;return t.changeByRange(n=>{let r=[];for(let a=n.from;a<=n.to;){let c=t.doc.lineAt(a);c.number>i&&(n.empty||n.to>c.from)&&(e(c,r,n),i=c.number),a=c.to+1}let s=t.changes(r);return{changes:r,range:le.range(s.mapPos(n.anchor,1),s.mapPos(n.head,1))}})}const pI=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let i=Object.create(null),n=new Qm(t,{overrideIndentation:s=>{let a=i[s];return a??-1}}),r=kb(t,(s,a,c)=>{let h=bb(n,s.from);if(h==null)return;/\S/.test(s.text)||(h=0);let d=/^\s*/.exec(s.text)[0],f=Ku(t,h);(d!=f||c.from<s.from+d.length)&&(i[s.from]=h,a.push({from:s.from,to:s.from+d.length,insert:f}))});return r.changes.empty||e(t.update(r,{userEvent:"indent"})),!0},hA=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(kb(t,(i,n)=>{n.push({from:i.from,insert:t.facet(_d)})}),{userEvent:"input.indent"})),!0),uA=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(kb(t,(i,n)=>{let r=/^\s*/.exec(i.text)[0];if(!r)return;let s=Gs(r,t.tabSize),a=0,c=Ku(t,Math.max(0,s-Lg(t)));for(;a<r.length&&a<c.length&&r.charCodeAt(a)==c.charCodeAt(a);)a++;n.push({from:i.from+a,to:i.from+r.length,insert:c.slice(a)})}),{userEvent:"delete.dedent"})),!0),gI=t=>(t.setTabFocusMode(),!0),mI=[{key:"Ctrl-b",run:X5,shift:U5,preventDefault:!0},{key:"Ctrl-f",run:N5,shift:G5},{key:"Ctrl-p",run:q5,shift:J5},{key:"Ctrl-n",run:I5,shift:eA},{key:"Ctrl-a",run:z9,shift:Y9},{key:"Ctrl-e",run:j9,shift:H9},{key:"Ctrl-d",run:rA},{key:"Ctrl-h",run:TS},{key:"Ctrl-k",run:iI},{key:"Ctrl-Alt-h",run:oA},{key:"Ctrl-o",run:sI},{key:"Ctrl-t",run:oI},{key:"Ctrl-v",run:CS}],OI=[{key:"ArrowLeft",run:X5,shift:U5,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:C9,shift:L9,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:A9,shift:I9,preventDefault:!0},{key:"ArrowRight",run:N5,shift:G5,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:T9,shift:X9,preventDefault:!0},{mac:"Cmd-ArrowRight",run:M9,shift:V9,preventDefault:!0},{key:"ArrowUp",run:q5,shift:J5,preventDefault:!0},{mac:"Cmd-ArrowUp",run:DT,shift:LT},{mac:"Ctrl-ArrowUp",run:MT,shift:zT},{key:"ArrowDown",run:I5,shift:eA,preventDefault:!0},{mac:"Cmd-ArrowDown",run:BT,shift:XT},{mac:"Ctrl-ArrowDown",run:CS,shift:jT},{key:"PageUp",run:MT,shift:zT},{key:"PageDown",run:CS,shift:jT},{key:"Home",run:R9,shift:q9,preventDefault:!0},{key:"Mod-Home",run:DT,shift:LT},{key:"End",run:E9,shift:W9,preventDefault:!0},{key:"Mod-End",run:BT,shift:XT},{key:"Enter",run:NT,shift:NT},{key:"Mod-a",run:U9},{key:"Backspace",run:TS,shift:TS,preventDefault:!0},{key:"Delete",run:rA,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:oA,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:tI,preventDefault:!0},{mac:"Mod-Backspace",run:nI,preventDefault:!0},{mac:"Mod-Delete",run:rI,preventDefault:!0}].concat(mI.map(t=>({mac:t.key,run:t.run,shift:t.shift}))),vI=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:$9,shift:N9},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:P9,shift:Z9},{key:"Alt-ArrowUp",run:aI},{key:"Shift-Alt-ArrowUp",run:cI},{key:"Alt-ArrowDown",run:lI},{key:"Shift-Alt-ArrowDown",run:hI},{key:"Mod-Alt-ArrowUp",run:K9},{key:"Mod-Alt-ArrowDown",run:J9},{key:"Escape",run:eI},{key:"Mod-Enter",run:fI},{key:"Alt-l",mac:"Ctrl-l",run:G9},{key:"Mod-i",run:F9,preventDefault:!0},{key:"Mod-[",run:uA},{key:"Mod-]",run:hA},{key:"Mod-Alt-\\",run:pI},{key:"Shift-Mod-k",run:uI},{key:"Shift-Mod-\\",run:B9},{key:"Mod-/",run:a9},{key:"Alt-A",run:c9},{key:"Ctrl-m",mac:"Shift-Alt-m",run:gI}].concat(OI),yI={key:"Tab",run:hA,shift:uA},ZT=typeof String.prototype.normalize=="function"?t=>t.normalize("NFKD"):t=>t;class Nc{constructor(e,i,n=0,r=e.length,s,a){this.test=a,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=s?c=>s(ZT(c)):ZT,this.query=this.normalize(i)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return Yo(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let i=IE(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=Za(e);let r=this.normalize(i);if(r.length)for(let s=0,a=n;;s++){let c=r.charCodeAt(s),h=this.match(c,a,this.bufferPos+this.bufferStart);if(s==r.length-1){if(h)return this.value=h,this;break}a==n&&s<i.length&&i.charCodeAt(s)==c&&a++}}}match(e,i,n){let r=null;for(let s=0;s<this.matches.length;s+=2){let a=this.matches[s],c=!1;this.query.charCodeAt(a)==e&&(a==this.query.length-1?r={from:this.matches[s+1],to:n}:(this.matches[s]++,c=!0)),c||(this.matches.splice(s,2),s-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?r={from:i,to:n}:this.matches.push(1,i)),r&&this.test&&!this.test(r.from,r.to,this.buffer,this.bufferStart)&&(r=null),r}}typeof Symbol<"u"&&(Nc.prototype[Symbol.iterator]=function(){return this});const dA={from:-1,to:-1,match:/.*/.exec("")},Cb="gm"+(/x/.unicode==null?"":"u");class fA{constructor(e,i,n,r=0,s=e.length){if(this.text=e,this.to=s,this.curLine="",this.done=!1,this.value=dA,/\\[sWDnr]|\n|\r|\[\^/.test(i))return new pA(e,i,n,r,s);this.re=new RegExp(i,Cb+(n!=null&&n.ignoreCase?"i":"")),this.test=n==null?void 0:n.test,this.iter=e.iter();let a=e.lineAt(r);this.curLineStart=a.from,this.matchPos=Wg(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let i=this.matchPos<=this.to&&this.re.exec(this.curLine);if(i){let n=this.curLineStart+i.index,r=n+i[0].length;if(this.matchPos=Wg(this.text,r+(n==r?1:0)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<r||n>this.value.to)&&(!this.test||this.test(n,r,i)))return this.value={from:n,to:r,match:i},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}}const Xv=new WeakMap;class xc{constructor(e,i){this.from=e,this.text=i}get to(){return this.from+this.text.length}static get(e,i,n){let r=Xv.get(e);if(!r||r.from>=n||r.to<=i){let c=new xc(i,e.sliceString(i,n));return Xv.set(e,c),c}if(r.from==i&&r.to==n)return r;let{text:s,from:a}=r;return a>i&&(s=e.sliceString(i,a)+s,a=i),r.to<n&&(s+=e.sliceString(r.to,n)),Xv.set(e,new xc(a,s)),new xc(i,s.slice(i-a,n-a))}}class pA{constructor(e,i,n,r,s){this.text=e,this.to=s,this.done=!1,this.value=dA,this.matchPos=Wg(e,r),this.re=new RegExp(i,Cb+(n!=null&&n.ignoreCase?"i":"")),this.test=n==null?void 0:n.test,this.flat=xc.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,i=this.re.exec(this.flat.text);if(i&&!i[0]&&i.index==e&&(this.re.lastIndex=e+1,i=this.re.exec(this.flat.text)),i){let n=this.flat.from+i.index,r=n+i[0].length;if((this.flat.to>=this.to||i.index+i[0].length<=this.flat.text.length-10)&&(!this.test||this.test(n,r,i)))return this.value={from:n,to:r,match:i},this.matchPos=Wg(this.text,r+(n==r?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=xc.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(fA.prototype[Symbol.iterator]=pA.prototype[Symbol.iterator]=function(){return this});function SI(t){try{return new RegExp(t,Cb),!0}catch{return!1}}function Wg(t,e){if(e>=t.length)return e;let i=t.lineAt(e),n;for(;e<i.to&&(n=i.text.charCodeAt(e-i.from))>=56320&&n<57344;)e++;return e}const bI=t=>{let{state:e}=t,i=String(e.doc.lineAt(t.state.selection.main.head).number),{close:n,result:r}=B7(t,{label:e.phrase("Go to line"),input:{type:"text",name:"line",value:i},focus:!0,submitLabel:e.phrase("go")});return r.then(s=>{let a=s&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(s.elements.line.value);if(!a){t.dispatch({effects:n});return}let c=e.doc.lineAt(e.selection.main.head),[,h,d,f,g]=a,m=f?+f.slice(1):0,v=d?+d:c.number;if(d&&g){let w=v/100;h&&(w=w*(h=="-"?-1:1)+c.number/e.doc.lines),v=Math.round(e.doc.lines*w)}else d&&h&&(v=v*(h=="-"?-1:1)+c.number);let S=e.doc.line(Math.max(1,Math.min(e.doc.lines,v))),_=le.cursor(S.from+Math.max(0,Math.min(m,S.length)));t.dispatch({effects:[n,xe.scrollIntoView(_.from,{y:"center"})],selection:_})}),!0},_I={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},xI=we.define({combine(t){return da(t,_I,{highlightWordAroundCursor:(e,i)=>e||i,minSelectionLength:Math.min,maxMatches:Math.min})}});function wI(t){return[$I,QI]}const kI=qe.mark({class:"cm-selectionMatch"}),CI=qe.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function WT(t,e,i,n){return(i==0||t(e.sliceDoc(i-1,i))!=Kt.Word)&&(n==e.doc.length||t(e.sliceDoc(n,n+1))!=Kt.Word)}function TI(t,e,i,n){return t(e.sliceDoc(i,i+1))==Kt.Word&&t(e.sliceDoc(n-1,n))==Kt.Word}const QI=Ni.fromClass(class{constructor(t){this.decorations=this.getDeco(t)}update(t){(t.selectionSet||t.docChanged||t.viewportChanged)&&(this.decorations=this.getDeco(t.view))}getDeco(t){let e=t.state.facet(xI),{state:i}=t,n=i.selection;if(n.ranges.length>1)return qe.none;let r=n.main,s,a=null;if(r.empty){if(!e.highlightWordAroundCursor)return qe.none;let h=i.wordAt(r.head);if(!h)return qe.none;a=i.charCategorizer(r.head),s=i.sliceDoc(h.from,h.to)}else{let h=r.to-r.from;if(h<e.minSelectionLength||h>200)return qe.none;if(e.wholeWords){if(s=i.sliceDoc(r.from,r.to),a=i.charCategorizer(r.head),!(WT(a,i,r.from,r.to)&&TI(a,i,r.from,r.to)))return qe.none}else if(s=i.sliceDoc(r.from,r.to),!s)return qe.none}let c=[];for(let h of t.visibleRanges){let d=new Nc(i.doc,s,h.from,h.to);for(;!d.next().done;){let{from:f,to:g}=d.value;if((!a||WT(a,i,f,g))&&(r.empty&&f<=r.from&&g>=r.to?c.push(CI.range(f,g)):(f>=r.to||g<=r.from)&&c.push(kI.range(f,g)),c.length>e.maxMatches))return qe.none}}return qe.set(c)}},{decorations:t=>t.decorations}),$I=xe.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),PI=({state:t,dispatch:e})=>{let{selection:i}=t,n=le.create(i.ranges.map(r=>t.wordAt(r.head)||le.cursor(r.head)),i.mainIndex);return n.eq(i)?!1:(e(t.update({selection:n})),!0)};function EI(t,e){let{main:i,ranges:n}=t.selection,r=t.wordAt(i.head),s=r&&r.from==i.from&&r.to==i.to;for(let a=!1,c=new Nc(t.doc,e,n[n.length-1].to);;)if(c.next(),c.done){if(a)return null;c=new Nc(t.doc,e,0,Math.max(0,n[n.length-1].from-1)),a=!0}else{if(a&&n.some(h=>h.from==c.value.from))continue;if(s){let h=t.wordAt(c.value.from);if(!h||h.from!=c.value.from||h.to!=c.value.to)continue}return c.value}}const RI=({state:t,dispatch:e})=>{let{ranges:i}=t.selection;if(i.some(s=>s.from===s.to))return PI({state:t,dispatch:e});let n=t.sliceDoc(i[0].from,i[0].to);if(t.selection.ranges.some(s=>t.sliceDoc(s.from,s.to)!=n))return!1;let r=EI(t,n);return r?(e(t.update({selection:t.selection.addRange(le.range(r.from,r.to),!1),effects:xe.scrollIntoView(r.to)})),!0):!1},Yc=we.define({combine(t){return da(t,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new VI(e),scrollToMatch:e=>xe.scrollIntoView(e)})}});class gA{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||SI(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(i,n)=>n=="n"?`
113
- `:n=="r"?"\r":n=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new BI(this):new zI(this)}getCursor(e,i=0,n){let r=e.doc?e:ct.create({doc:e});return n==null&&(n=r.doc.length),this.regexp?ac(this,r,i,n):oc(this,r,i,n)}}class mA{constructor(e){this.spec=e}}function AI(t,e,i){return(n,r,s,a)=>{if(i&&!i(n,r,s,a))return!1;let c=n>=a&&r<=a+s.length?s.slice(n-a,r-a):e.doc.sliceString(n,r);return t(c,e,n,r)}}function oc(t,e,i,n){let r;return t.wholeWord&&(r=MI(e.doc,e.charCategorizer(e.selection.main.head))),t.test&&(r=AI(t.test,e,r)),new Nc(e.doc,t.unquoted,i,n,t.caseSensitive?void 0:s=>s.toLowerCase(),r)}function MI(t,e){return(i,n,r,s)=>((s>i||s+r.length<n)&&(s=Math.max(0,i-2),r=t.sliceString(s,Math.min(t.length,n+2))),(e(qg(r,i-s))!=Kt.Word||e(Ig(r,i-s))!=Kt.Word)&&(e(Ig(r,n-s))!=Kt.Word||e(qg(r,n-s))!=Kt.Word))}class zI extends mA{constructor(e){super(e)}nextMatch(e,i,n){let r=oc(this.spec,e,n,e.doc.length).nextOverlapping();if(r.done){let s=Math.min(e.doc.length,i+this.spec.unquoted.length);r=oc(this.spec,e,0,s).nextOverlapping()}return r.done||r.value.from==i&&r.value.to==n?null:r.value}prevMatchInRange(e,i,n){for(let r=n;;){let s=Math.max(i,r-1e4-this.spec.unquoted.length),a=oc(this.spec,e,s,r),c=null;for(;!a.nextOverlapping().done;)c=a.value;if(c)return c;if(s==i)return null;r-=1e4}}prevMatch(e,i,n){let r=this.prevMatchInRange(e,0,i);return r||(r=this.prevMatchInRange(e,Math.max(0,n-this.spec.unquoted.length),e.doc.length)),r&&(r.from!=i||r.to!=n)?r:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,i){let n=oc(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=i)return null;r.push(n.value)}return r}highlight(e,i,n,r){let s=oc(this.spec,e,Math.max(0,i-this.spec.unquoted.length),Math.min(n+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)r(s.value.from,s.value.to)}}function jI(t,e,i){return(n,r,s)=>(!i||i(n,r,s))&&t(s[0],e,n,r)}function ac(t,e,i,n){let r;return t.wholeWord&&(r=DI(e.charCategorizer(e.selection.main.head))),t.test&&(r=jI(t.test,e,r)),new fA(e.doc,t.search,{ignoreCase:!t.caseSensitive,test:r},i,n)}function qg(t,e){return t.slice(Qi(t,e,!1),e)}function Ig(t,e){return t.slice(e,Qi(t,e))}function DI(t){return(e,i,n)=>!n[0].length||(t(qg(n.input,n.index))!=Kt.Word||t(Ig(n.input,n.index))!=Kt.Word)&&(t(Ig(n.input,n.index+n[0].length))!=Kt.Word||t(qg(n.input,n.index+n[0].length))!=Kt.Word)}class BI extends mA{nextMatch(e,i,n){let r=ac(this.spec,e,n,e.doc.length).next();return r.done&&(r=ac(this.spec,e,0,i).next()),r.done?null:r.value}prevMatchInRange(e,i,n){for(let r=1;;r++){let s=Math.max(i,n-r*1e4),a=ac(this.spec,e,s,n),c=null;for(;!a.next().done;)c=a.value;if(c&&(s==i||c.from>s+10))return c;if(s==i)return null}}prevMatch(e,i,n){return this.prevMatchInRange(e,0,i)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(i,n)=>{if(n=="&")return e.match[0];if(n=="$")return"$";for(let r=n.length;r>0;r--){let s=+n.slice(0,r);if(s>0&&s<e.match.length)return e.match[s]+n.slice(r)}return i})}matchAll(e,i){let n=ac(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=i)return null;r.push(n.value)}return r}highlight(e,i,n,r){let s=ac(this.spec,e,Math.max(0,i-250),Math.min(n+250,e.doc.length));for(;!s.next().done;)r(s.value.from,s.value.to)}}const Ju=Je.define(),Tb=Je.define(),ia=Un.define({create(t){return new Nv(QS(t).create(),null)},update(t,e){for(let i of e.effects)i.is(Ju)?t=new Nv(i.value.create(),t.panel):i.is(Tb)&&(t=new Nv(t.query,i.value?Qb:null));return t},provide:t=>zg.from(t,e=>e.panel)});class Nv{constructor(e,i){this.query=e,this.panel=i}}const LI=qe.mark({class:"cm-searchMatch"}),XI=qe.mark({class:"cm-searchMatch cm-searchMatch-selected"}),NI=Ni.fromClass(class{constructor(t){this.view=t,this.decorations=this.highlight(t.state.field(ia))}update(t){let e=t.state.field(ia);(e!=t.startState.field(ia)||t.docChanged||t.selectionSet||t.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:t,panel:e}){if(!e||!t.spec.valid)return qe.none;let{view:i}=this,n=new sl;for(let r=0,s=i.visibleRanges,a=s.length;r<a;r++){let{from:c,to:h}=s[r];for(;r<a-1&&h>s[r+1].from-500;)h=s[++r].to;t.highlight(i.state,c,h,(d,f)=>{let g=i.state.selection.ranges.some(m=>m.from==d&&m.to==f);n.add(d,f,g?XI:LI)})}return n.finish()}},{decorations:t=>t.decorations});function kd(t){return e=>{let i=e.state.field(ia,!1);return i&&i.query.spec.valid?t(e,i):yA(e)}}const Vg=kd((t,{query:e})=>{let{to:i}=t.state.selection.main,n=e.nextMatch(t.state,i,i);if(!n)return!1;let r=le.single(n.from,n.to),s=t.state.facet(Yc);return t.dispatch({selection:r,effects:[$b(t,n),s.scrollToMatch(r.main,t)],userEvent:"select.search"}),vA(t),!0}),Yg=kd((t,{query:e})=>{let{state:i}=t,{from:n}=i.selection.main,r=e.prevMatch(i,n,n);if(!r)return!1;let s=le.single(r.from,r.to),a=t.state.facet(Yc);return t.dispatch({selection:s,effects:[$b(t,r),a.scrollToMatch(s.main,t)],userEvent:"select.search"}),vA(t),!0}),ZI=kd((t,{query:e})=>{let i=e.matchAll(t.state,1e3);return!i||!i.length?!1:(t.dispatch({selection:le.create(i.map(n=>le.range(n.from,n.to))),userEvent:"select.search.matches"}),!0)}),WI=({state:t,dispatch:e})=>{let i=t.selection;if(i.ranges.length>1||i.main.empty)return!1;let{from:n,to:r}=i.main,s=[],a=0;for(let c=new Nc(t.doc,t.sliceDoc(n,r));!c.next().done;){if(s.length>1e3)return!1;c.value.from==n&&(a=s.length),s.push(le.range(c.value.from,c.value.to))}return e(t.update({selection:le.create(s,a),userEvent:"select.search.matches"})),!0},qT=kd((t,{query:e})=>{let{state:i}=t,{from:n,to:r}=i.selection.main;if(i.readOnly)return!1;let s=e.nextMatch(i,n,n);if(!s)return!1;let a=s,c=[],h,d,f=[];a.from==n&&a.to==r&&(d=i.toText(e.getReplacement(a)),c.push({from:a.from,to:a.to,insert:d}),a=e.nextMatch(i,a.from,a.to),f.push(xe.announce.of(i.phrase("replaced match on line $",i.doc.lineAt(n).number)+".")));let g=t.state.changes(c);return a&&(h=le.single(a.from,a.to).map(g),f.push($b(t,a)),f.push(i.facet(Yc).scrollToMatch(h.main,t))),t.dispatch({changes:g,selection:h,effects:f,userEvent:"input.replace"}),!0}),qI=kd((t,{query:e})=>{if(t.state.readOnly)return!1;let i=e.matchAll(t.state,1e9).map(r=>{let{from:s,to:a}=r;return{from:s,to:a,insert:e.getReplacement(r)}});if(!i.length)return!1;let n=t.state.phrase("replaced $ matches",i.length)+".";return t.dispatch({changes:i,effects:xe.announce.of(n),userEvent:"input.replace.all"}),!0});function Qb(t){return t.state.facet(Yc).createPanel(t)}function QS(t,e){var i,n,r,s,a;let c=t.selection.main,h=c.empty||c.to>c.from+100?"":t.sliceDoc(c.from,c.to);if(e&&!h)return e;let d=t.facet(Yc);return new gA({search:((i=e==null?void 0:e.literal)!==null&&i!==void 0?i:d.literal)?h:h.replace(/\n/g,"\\n"),caseSensitive:(n=e==null?void 0:e.caseSensitive)!==null&&n!==void 0?n:d.caseSensitive,literal:(r=e==null?void 0:e.literal)!==null&&r!==void 0?r:d.literal,regexp:(s=e==null?void 0:e.regexp)!==null&&s!==void 0?s:d.regexp,wholeWord:(a=e==null?void 0:e.wholeWord)!==null&&a!==void 0?a:d.wholeWord})}function OA(t){let e=s5(t,Qb);return e&&e.dom.querySelector("[main-field]")}function vA(t){let e=OA(t);e&&e==t.root.activeElement&&e.select()}const yA=t=>{let e=t.state.field(ia,!1);if(e&&e.panel){let i=OA(t);if(i&&i!=t.root.activeElement){let n=QS(t.state,e.query.spec);n.valid&&t.dispatch({effects:Ju.of(n)}),i.focus(),i.select()}}else t.dispatch({effects:[Tb.of(!0),e?Ju.of(QS(t.state,e.query.spec)):Je.appendConfig.of(HI)]});return!0},SA=t=>{let e=t.state.field(ia,!1);if(!e||!e.panel)return!1;let i=s5(t,Qb);return i&&i.dom.contains(t.root.activeElement)&&t.focus(),t.dispatch({effects:Tb.of(!1)}),!0},II=[{key:"Mod-f",run:yA,scope:"editor search-panel"},{key:"F3",run:Vg,shift:Yg,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:Vg,shift:Yg,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:SA,scope:"editor search-panel"},{key:"Mod-Shift-l",run:WI},{key:"Mod-Alt-g",run:bI},{key:"Mod-d",run:RI,preventDefault:!0}];class VI{constructor(e){this.view=e;let i=this.query=e.state.field(ia).query.spec;this.commit=this.commit.bind(this),this.searchField=_i("input",{value:i.search,placeholder:Dn(e,"Find"),"aria-label":Dn(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=_i("input",{value:i.replace,placeholder:Dn(e,"Replace"),"aria-label":Dn(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=_i("input",{type:"checkbox",name:"case",form:"",checked:i.caseSensitive,onchange:this.commit}),this.reField=_i("input",{type:"checkbox",name:"re",form:"",checked:i.regexp,onchange:this.commit}),this.wordField=_i("input",{type:"checkbox",name:"word",form:"",checked:i.wholeWord,onchange:this.commit});function n(r,s,a){return _i("button",{class:"cm-button",name:r,onclick:s,type:"button"},a)}this.dom=_i("div",{onkeydown:r=>this.keydown(r),class:"cm-search"},[this.searchField,n("next",()=>Vg(e),[Dn(e,"next")]),n("prev",()=>Yg(e),[Dn(e,"previous")]),n("select",()=>ZI(e),[Dn(e,"all")]),_i("label",null,[this.caseField,Dn(e,"match case")]),_i("label",null,[this.reField,Dn(e,"regexp")]),_i("label",null,[this.wordField,Dn(e,"by word")]),...e.state.readOnly?[]:[_i("br"),this.replaceField,n("replace",()=>qT(e),[Dn(e,"replace")]),n("replaceAll",()=>qI(e),[Dn(e,"replace all")])],_i("button",{name:"close",onclick:()=>SA(e),"aria-label":Dn(e,"close"),type:"button"},["×"])])}commit(){let e=new gA({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:Ju.of(e)}))}keydown(e){b7(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?Yg:Vg)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),qT(this.view))}update(e){for(let i of e.transactions)for(let n of i.effects)n.is(Ju)&&!n.value.eq(this.query)&&this.setQuery(n.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(Yc).top}}function Dn(t,e){return t.state.phrase(e)}const $p=30,Pp=/[\s\.,:;?!]/;function $b(t,{from:e,to:i}){let n=t.state.doc.lineAt(e),r=t.state.doc.lineAt(i).to,s=Math.max(n.from,e-$p),a=Math.min(r,i+$p),c=t.state.sliceDoc(s,a);if(s!=n.from){for(let h=0;h<$p;h++)if(!Pp.test(c[h+1])&&Pp.test(c[h])){c=c.slice(h);break}}if(a!=r){for(let h=c.length-1;h>c.length-$p;h--)if(!Pp.test(c[h-1])&&Pp.test(c[h])){c=c.slice(0,h);break}}return xe.announce.of(`${t.state.phrase("current match")}. ${c} ${t.state.phrase("on line")} ${n.number}.`)}const YI=xe.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),HI=[ia,eo.low(NI),YI];class Pb{constructor(e,i,n,r){this.state=e,this.pos=i,this.explicit=n,this.view=r,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let i=Qt(this.state).resolveInner(this.pos,-1);for(;i&&e.indexOf(i.name)<0;)i=i.parent;return i?{from:i.from,to:this.pos,text:this.state.sliceDoc(i.from,this.pos),type:i.type}:null}matchBefore(e){let i=this.state.doc.lineAt(this.pos),n=Math.max(i.from,this.pos-250),r=i.text.slice(n-i.from,this.pos-i.from),s=r.search(_A(e,!1));return s<0?null:{from:n+s,to:this.pos,text:r.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,i,n){e=="abort"&&this.abortListeners&&(this.abortListeners.push(i),n&&n.onDocChange&&(this.abortOnDocChange=!0))}}function IT(t){let e=Object.keys(t).join(""),i=/\w/.test(e);return i&&(e=e.replace(/\w/g,"")),`[${i?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function UI(t){let e=Object.create(null),i=Object.create(null);for(let{label:r}of t){e[r[0]]=!0;for(let s=1;s<r.length;s++)i[r[s]]=!0}let n=IT(e)+IT(i)+"*$";return[new RegExp("^"+n),new RegExp(n)]}function Eb(t){let e=t.map(r=>typeof r=="string"?{label:r}:r),[i,n]=e.every(r=>/^\w+$/.test(r.label))?[/\w*$/,/\w+$/]:UI(e);return r=>{let s=r.matchBefore(n);return s||r.explicit?{from:s?s.from:r.pos,options:e,validFor:i}:null}}function bA(t,e){return i=>{for(let n=Qt(i.state).resolveInner(i.pos,-1);n;n=n.parent){if(t.indexOf(n.name)>-1)return null;if(n.type.isTop)break}return e(i)}}class VT{constructor(e,i,n,r){this.completion=e,this.source=i,this.match=n,this.score=r}}function Ja(t){return t.selection.main.from}function _A(t,e){var i;let{source:n}=t,r=e&&n[0]!="^",s=n[n.length-1]!="$";return!r&&!s?t:new RegExp(`${r?"^":""}(?:${n})${s?"$":""}`,(i=t.flags)!==null&&i!==void 0?i:t.ignoreCase?"i":"")}const Rb=to.define();function GI(t,e,i,n){let{main:r}=t.selection,s=i-r.from,a=n-r.from;return{...t.changeByRange(c=>{if(c!=r&&i!=n&&t.sliceDoc(c.from+s,c.from+a)!=t.sliceDoc(i,n))return{range:c};let h=t.toText(e);return{changes:{from:c.from+s,to:n==r.from?c.to:c.from+a,insert:h},range:le.cursor(c.from+s+h.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const YT=new WeakMap;function FI(t){if(!Array.isArray(t))return t;let e=YT.get(t);return e||YT.set(t,e=Eb(t)),e}const Hg=Je.define(),ed=Je.define();class KI{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let i=0;i<e.length;){let n=Yo(e,i),r=Za(n);this.chars.push(n);let s=e.slice(i,i+r),a=s.toUpperCase();this.folded.push(Yo(a==s?s.toLowerCase():a,0)),i+=r}this.astral=e.length!=this.chars.length}ret(e,i){return this.score=e,this.matched=i,this}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return null;let{chars:i,folded:n,any:r,precise:s,byWord:a}=this;if(i.length==1){let Q=Yo(e,0),C=Za(Q),T=C==e.length?0:-100;if(Q!=i[0])if(Q==n[0])T+=-200;else return null;return this.ret(T,[0,C])}let c=e.indexOf(this.pattern);if(c==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let h=i.length,d=0;if(c<0){for(let Q=0,C=Math.min(e.length,200);Q<C&&d<h;){let T=Yo(e,Q);(T==i[d]||T==n[d])&&(r[d++]=Q),Q+=Za(T)}if(d<h)return null}let f=0,g=0,m=!1,v=0,S=-1,_=-1,w=/[a-z]/.test(e),x=!0;for(let Q=0,C=Math.min(e.length,200),T=0;Q<C&&g<h;){let A=Yo(e,Q);c<0&&(f<h&&A==i[f]&&(s[f++]=Q),v<h&&(A==i[v]||A==n[v]?(v==0&&(S=Q),_=Q+1,v++):v=0));let P,M=A<255?A>=48&&A<=57||A>=97&&A<=122?2:A>=65&&A<=90?1:0:(P=IE(A))!=P.toLowerCase()?1:P!=P.toUpperCase()?2:0;(!Q||M==1&&w||T==0&&M!=0)&&(i[g]==A||n[g]==A&&(m=!0)?a[g++]=Q:a.length&&(x=!1)),T=M,Q+=Za(A)}return g==h&&a[0]==0&&x?this.result(-100+(m?-200:0),a,e):v==h&&S==0?this.ret(-200-e.length+(_==e.length?0:-100),[0,_]):c>-1?this.ret(-700-e.length,[c,c+this.pattern.length]):v==h?this.ret(-900-e.length,[S,_]):g==h?this.result(-100+(m?-200:0)+-700+(x?0:-1100),a,e):i.length==2?null:this.result((r[0]?-700:0)+-200+-1100,r,e)}result(e,i,n){let r=[],s=0;for(let a of i){let c=a+(this.astral?Za(Yo(n,a)):1);s&&r[s-1]==a?r[s-1]=c:(r[s++]=a,r[s++]=c)}return this.ret(e-n.length,r)}}class JI{constructor(e){this.pattern=e,this.matched=[],this.score=0,this.folded=e.toLowerCase()}match(e){if(e.length<this.pattern.length)return null;let i=e.slice(0,this.pattern.length),n=i==this.pattern?0:i.toLowerCase()==this.folded?-200:null;return n==null?null:(this.matched=[0,i.length],this.score=n+(e.length==this.pattern.length?0:-100),this)}}const Ti=we.define({combine(t){return da(t,{activateOnTyping:!0,activateOnCompletion:()=>!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:eV,filterStrict:!1,compareCompletions:(e,i)=>(e.sortText||e.label).localeCompare(i.sortText||i.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(e,i)=>e&&i,closeOnBlur:(e,i)=>e&&i,icons:(e,i)=>e&&i,tooltipClass:(e,i)=>n=>HT(e(n),i(n)),optionClass:(e,i)=>n=>HT(e(n),i(n)),addToOptions:(e,i)=>e.concat(i),filterStrict:(e,i)=>e||i})}});function HT(t,e){return t?e?t+" "+e:t:e}function eV(t,e,i,n,r,s){let a=t.textDirection==Tt.RTL,c=a,h=!1,d="top",f,g,m=e.left-r.left,v=r.right-e.right,S=n.right-n.left,_=n.bottom-n.top;if(c&&m<Math.min(S,v)?c=!1:!c&&v<Math.min(S,m)&&(c=!0),S<=(c?m:v))f=Math.max(r.top,Math.min(i.top,r.bottom-_))-e.top,g=Math.min(400,c?m:v);else{h=!0,g=Math.min(400,(a?e.right:r.right-e.left)-30);let Q=r.bottom-e.bottom;Q>=_||Q>e.top?f=i.bottom-e.top:(d="bottom",f=e.bottom-i.top)}let w=(e.bottom-e.top)/s.offsetHeight,x=(e.right-e.left)/s.offsetWidth;return{style:`${d}: ${f/w}px; max-width: ${g/x}px`,class:"cm-completionInfo-"+(h?a?"left-narrow":"right-narrow":c?"left":"right")}}const Ab=Je.define();function tV(t){let e=t.addToOptions.slice();return t.icons&&e.push({render(i){let n=document.createElement("div");return n.classList.add("cm-completionIcon"),i.type&&n.classList.add(...i.type.split(/\s+/g).map(r=>"cm-completionIcon-"+r)),n.setAttribute("aria-hidden","true"),n},position:20}),e.push({render(i,n,r,s){let a=document.createElement("span");a.className="cm-completionLabel";let c=i.displayLabel||i.label,h=0;for(let d=0;d<s.length;){let f=s[d++],g=s[d++];f>h&&a.appendChild(document.createTextNode(c.slice(h,f)));let m=a.appendChild(document.createElement("span"));m.appendChild(document.createTextNode(c.slice(f,g))),m.className="cm-completionMatchedText",h=g}return h<c.length&&a.appendChild(document.createTextNode(c.slice(h))),a},position:50},{render(i){if(!i.detail)return null;let n=document.createElement("span");return n.className="cm-completionDetail",n.textContent=i.detail,n},position:80}),e.sort((i,n)=>i.position-n.position).map(i=>i.render)}function Zv(t,e,i){if(t<=i)return{from:0,to:t};if(e<0&&(e=0),e<=t>>1){let r=Math.floor(e/i);return{from:r*i,to:(r+1)*i}}let n=Math.floor((t-e)/i);return{from:t-(n+1)*i,to:t-n*i}}class iV{constructor(e,i,n){this.view=e,this.stateField=i,this.applyCompletion=n,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:h=>this.placeInfo(h),key:this},this.space=null,this.currentClass="";let r=e.state.field(i),{options:s,selected:a}=r.open,c=e.state.facet(Ti);this.optionContent=tV(c),this.optionClass=c.optionClass,this.tooltipClass=c.tooltipClass,this.range=Zv(s.length,a,c.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",h=>{let{options:d}=e.state.field(i).open;for(let f=h.target,g;f&&f!=this.dom;f=f.parentNode)if(f.nodeName=="LI"&&(g=/-(\d+)$/.exec(f.id))&&+g[1]<d.length){this.applyCompletion(e,d[+g[1]]),h.preventDefault();return}if(h.target==this.list){let f=this.list.classList.contains("cm-completionListIncompleteTop")&&h.clientY<this.list.firstChild.getBoundingClientRect().top?this.range.from-1:this.list.classList.contains("cm-completionListIncompleteBottom")&&h.clientY>this.list.lastChild.getBoundingClientRect().bottom?this.range.to:null;f!=null&&(e.dispatch({effects:Ab.of(f)}),h.preventDefault())}}),this.dom.addEventListener("focusout",h=>{let d=e.state.field(this.stateField,!1);d&&d.tooltip&&e.state.facet(Ti).closeOnBlur&&h.relatedTarget!=e.contentDOM&&e.dispatch({effects:ed.of(null)})}),this.showOptions(s,r.id)}mount(){this.updateSel()}showOptions(e,i){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(e,i,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(e){var i;let n=e.state.field(this.stateField),r=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),n!=r){let{options:s,selected:a,disabled:c}=n.open;(!r.open||r.open.options!=s)&&(this.range=Zv(s.length,a,e.state.facet(Ti).maxRenderedOptions),this.showOptions(s,n.id)),this.updateSel(),c!=((i=r.open)===null||i===void 0?void 0:i.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!c)}}updateTooltipClass(e){let i=this.tooltipClass(e);if(i!=this.currentClass){for(let n of this.currentClass.split(" "))n&&this.dom.classList.remove(n);for(let n of i.split(" "))n&&this.dom.classList.add(n);this.currentClass=i}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),i=e.open;(i.selected>-1&&i.selected<this.range.from||i.selected>=this.range.to)&&(this.range=Zv(i.options.length,i.selected,this.view.state.facet(Ti).maxRenderedOptions),this.showOptions(i.options,e.id));let n=this.updateSelectedOption(i.selected);if(n){this.destroyInfo();let{completion:r}=i.options[i.selected],{info:s}=r;if(!s)return;let a=typeof s=="string"?document.createTextNode(s):s(r);if(!a)return;"then"in a?a.then(c=>{c&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(c,r)}).catch(c=>Yn(this.view.state,c,"completion info")):(this.addInfoPane(a,r),n.setAttribute("aria-describedby",this.info.id))}}addInfoPane(e,i){this.destroyInfo();let n=this.info=document.createElement("div");if(n.className="cm-tooltip cm-completionInfo",n.id="cm-completionInfo-"+Math.floor(Math.random()*65535).toString(16),e.nodeType!=null)n.appendChild(e),this.infoDestroy=null;else{let{dom:r,destroy:s}=e;n.appendChild(r),this.infoDestroy=s||null}this.dom.appendChild(n),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let i=null;for(let n=this.list.firstChild,r=this.range.from;n;n=n.nextSibling,r++)n.nodeName!="LI"||!n.id?r--:r==e?n.hasAttribute("aria-selected")||(n.setAttribute("aria-selected","true"),i=n):n.hasAttribute("aria-selected")&&(n.removeAttribute("aria-selected"),n.removeAttribute("aria-describedby"));return i&&rV(this.list,i),i}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let i=this.dom.getBoundingClientRect(),n=this.info.getBoundingClientRect(),r=e.getBoundingClientRect(),s=this.space;if(!s){let a=this.dom.ownerDocument.documentElement;s={left:0,top:0,right:a.clientWidth,bottom:a.clientHeight}}return r.top>Math.min(s.bottom,i.bottom)-10||r.bottom<Math.max(s.top,i.top)+10?null:this.view.state.facet(Ti).positionInfo(this.view,i,r,n,s,this.dom)}placeInfo(e){this.info&&(e?(e.style&&(this.info.style.cssText=e.style),this.info.className="cm-tooltip cm-completionInfo "+(e.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(e,i,n){const r=document.createElement("ul");r.id=i,r.setAttribute("role","listbox"),r.setAttribute("aria-expanded","true"),r.setAttribute("aria-label",this.view.state.phrase("Completions")),r.addEventListener("mousedown",a=>{a.target==r&&a.preventDefault()});let s=null;for(let a=n.from;a<n.to;a++){let{completion:c,match:h}=e[a],{section:d}=c;if(d){let m=typeof d=="string"?d:d.name;if(m!=s&&(a>n.from||n.from==0))if(s=m,typeof d!="string"&&d.header)r.appendChild(d.header(d));else{let v=r.appendChild(document.createElement("completion-section"));v.textContent=m}}const f=r.appendChild(document.createElement("li"));f.id=i+"-"+a,f.setAttribute("role","option");let g=this.optionClass(c);g&&(f.className=g);for(let m of this.optionContent){let v=m(c,this.view.state,this.view,h);v&&f.appendChild(v)}}return n.from&&r.classList.add("cm-completionListIncompleteTop"),n.to<e.length&&r.classList.add("cm-completionListIncompleteBottom"),r}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function nV(t,e){return i=>new iV(i,t,e)}function rV(t,e){let i=t.getBoundingClientRect(),n=e.getBoundingClientRect(),r=i.height/t.offsetHeight;n.top<i.top?t.scrollTop-=(i.top-n.top)/r:n.bottom>i.bottom&&(t.scrollTop+=(n.bottom-i.bottom)/r)}function UT(t){return(t.boost||0)*100+(t.apply?10:0)+(t.info?5:0)+(t.type?1:0)}function sV(t,e){let i=[],n=null,r=null,s=f=>{i.push(f);let{section:g}=f.completion;if(g){n||(n=[]);let m=typeof g=="string"?g:g.name;n.some(v=>v.name==m)||n.push(typeof g=="string"?{name:m}:g)}},a=e.facet(Ti);for(let f of t)if(f.hasResult()){let g=f.result.getMatch;if(f.result.filter===!1)for(let m of f.result.options)s(new VT(m,f.source,g?g(m):[],1e9-i.length));else{let m=e.sliceDoc(f.from,f.to),v,S=a.filterStrict?new JI(m):new KI(m);for(let _ of f.result.options)if(v=S.match(_.label)){let w=_.displayLabel?g?g(_,v.matched):[]:v.matched,x=v.score+(_.boost||0);if(s(new VT(_,f.source,w,x)),typeof _.section=="object"&&_.section.rank==="dynamic"){let{name:Q}=_.section;r||(r=Object.create(null)),r[Q]=Math.max(x,r[Q]||-1e9)}}}}if(n){let f=Object.create(null),g=0,m=(v,S)=>(v.rank==="dynamic"&&S.rank==="dynamic"?r[S.name]-r[v.name]:0)||(typeof v.rank=="number"?v.rank:1e9)-(typeof S.rank=="number"?S.rank:1e9)||(v.name<S.name?-1:1);for(let v of n.sort(m))g-=1e5,f[v.name]=g;for(let v of i){let{section:S}=v.completion;S&&(v.score+=f[typeof S=="string"?S:S.name])}}let c=[],h=null,d=a.compareCompletions;for(let f of i.sort((g,m)=>m.score-g.score||d(g.completion,m.completion))){let g=f.completion;!h||h.label!=g.label||h.detail!=g.detail||h.type!=null&&g.type!=null&&h.type!=g.type||h.apply!=g.apply||h.boost!=g.boost?c.push(f):UT(f.completion)>UT(h)&&(c[c.length-1]=f),h=f.completion}return c}class fc{constructor(e,i,n,r,s,a){this.options=e,this.attrs=i,this.tooltip=n,this.timestamp=r,this.selected=s,this.disabled=a}setSelected(e,i){return e==this.selected||e>=this.options.length?this:new fc(this.options,GT(i,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,i,n,r,s,a){if(r&&!a&&e.some(d=>d.isPending))return r.setDisabled();let c=sV(e,i);if(!c.length)return r&&e.some(d=>d.isPending)?r.setDisabled():null;let h=i.facet(Ti).selectOnOpen?0:-1;if(r&&r.selected!=h&&r.selected!=-1){let d=r.options[r.selected].completion;for(let f=0;f<c.length;f++)if(c[f].completion==d){h=f;break}}return new fc(c,GT(n,h),{pos:e.reduce((d,f)=>f.hasResult()?Math.min(d,f.from):d,1e8),create:uV,above:s.aboveCursor},r?r.timestamp:Date.now(),h,!1)}map(e){return new fc(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new fc(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class Ug{constructor(e,i,n){this.active=e,this.id=i,this.open=n}static start(){return new Ug(cV,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:i}=e,n=i.facet(Ti),s=(n.override||i.languageDataAt("autocomplete",Ja(i)).map(FI)).map(h=>(this.active.find(f=>f.source==h)||new dr(h,this.active.some(f=>f.state!=0)?1:0)).update(e,n));s.length==this.active.length&&s.every((h,d)=>h==this.active[d])&&(s=this.active);let a=this.open,c=e.effects.some(h=>h.is(Mb));a&&e.docChanged&&(a=a.map(e.changes)),e.selection||s.some(h=>h.hasResult()&&e.changes.touchesRange(h.from,h.to))||!oV(s,this.active)||c?a=fc.build(s,i,this.id,a,n,c):a&&a.disabled&&!s.some(h=>h.isPending)&&(a=null),!a&&s.every(h=>!h.isPending)&&s.some(h=>h.hasResult())&&(s=s.map(h=>h.hasResult()?new dr(h.source,0):h));for(let h of e.effects)h.is(Ab)&&(a=a&&a.setSelected(h.value,this.id));return s==this.active&&a==this.open?this:new Ug(s,this.id,a)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?aV:lV}}function oV(t,e){if(t==e)return!0;for(let i=0,n=0;;){for(;i<t.length&&!t[i].hasResult();)i++;for(;n<e.length&&!e[n].hasResult();)n++;let r=i==t.length,s=n==e.length;if(r||s)return r==s;if(t[i++].result!=e[n++].result)return!1}}const aV={"aria-autocomplete":"list"},lV={};function GT(t,e){let i={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":t};return e>-1&&(i["aria-activedescendant"]=t+"-"+e),i}const cV=[];function xA(t,e){if(t.isUserEvent("input.complete")){let n=t.annotation(Rb);if(n&&e.activateOnCompletion(n))return 12}let i=t.isUserEvent("input.type");return i&&e.activateOnTyping?5:i?1:t.isUserEvent("delete.backward")?2:t.selection?8:t.docChanged?16:0}class dr{constructor(e,i,n=!1){this.source=e,this.state=i,this.explicit=n}hasResult(){return!1}get isPending(){return this.state==1}update(e,i){let n=xA(e,i),r=this;(n&8||n&16&&this.touches(e))&&(r=new dr(r.source,0)),n&4&&r.state==0&&(r=new dr(this.source,1)),r=r.updateFor(e,n);for(let s of e.effects)if(s.is(Hg))r=new dr(r.source,1,s.value);else if(s.is(ed))r=new dr(r.source,0);else if(s.is(Mb))for(let a of s.value)a.source==r.source&&(r=a);return r}updateFor(e,i){return this.map(e.changes)}map(e){return this}touches(e){return e.changes.touchesRange(Ja(e.state))}}class wc extends dr{constructor(e,i,n,r,s,a){super(e,3,i),this.limit=n,this.result=r,this.from=s,this.to=a}hasResult(){return!0}updateFor(e,i){var n;if(!(i&3))return this.map(e.changes);let r=this.result;r.map&&!e.changes.empty&&(r=r.map(r,e.changes));let s=e.changes.mapPos(this.from),a=e.changes.mapPos(this.to,1),c=Ja(e.state);if(c>a||!r||i&2&&(Ja(e.startState)==this.from||c<this.limit))return new dr(this.source,i&4?1:0);let h=e.changes.mapPos(this.limit);return hV(r.validFor,e.state,s,a)?new wc(this.source,this.explicit,h,r,s,a):r.update&&(r=r.update(r,s,a,new Pb(e.state,c,!1)))?new wc(this.source,this.explicit,h,r,r.from,(n=r.to)!==null&&n!==void 0?n:Ja(e.state)):new dr(this.source,1,this.explicit)}map(e){return e.empty?this:(this.result.map?this.result.map(this.result,e):this.result)?new wc(this.source,this.explicit,e.mapPos(this.limit),this.result,e.mapPos(this.from),e.mapPos(this.to,1)):new dr(this.source,0)}touches(e){return e.changes.touchesRange(this.from,this.to)}}function hV(t,e,i,n){if(!t)return!1;let r=e.sliceDoc(i,n);return typeof t=="function"?t(r,i,n,e):_A(t,!0).test(r)}const Mb=Je.define({map(t,e){return t.map(i=>i.map(e))}}),yn=Un.define({create(){return Ug.start()},update(t,e){return t.update(e)},provide:t=>[n5.from(t,e=>e.tooltip),xe.contentAttributes.from(t,e=>e.attrs)]});function zb(t,e){const i=e.completion.apply||e.completion.label;let n=t.state.field(yn).active.find(r=>r.source==e.source);return n instanceof wc?(typeof i=="string"?t.dispatch({...GI(t.state,i,n.from,n.to),annotations:Rb.of(e.completion)}):i(t,e.completion,n.from,n.to),!0):!1}const uV=nV(yn,zb);function Ep(t,e="option"){return i=>{let n=i.state.field(yn,!1);if(!n||!n.open||n.open.disabled||Date.now()-n.open.timestamp<i.state.facet(Ti).interactionDelay)return!1;let r=1,s;e=="page"&&(s=r5(i,n.open.tooltip))&&(r=Math.max(2,Math.floor(s.dom.offsetHeight/s.dom.querySelector("li").offsetHeight)-1));let{length:a}=n.open.options,c=n.open.selected>-1?n.open.selected+r*(t?1:-1):t?0:a-1;return c<0?c=e=="page"?0:a-1:c>=a&&(c=e=="page"?a-1:0),i.dispatch({effects:Ab.of(c)}),!0}}const dV=t=>{let e=t.state.field(yn,!1);return t.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<t.state.facet(Ti).interactionDelay?!1:zb(t,e.open.options[e.open.selected])},Wv=t=>t.state.field(yn,!1)?(t.dispatch({effects:Hg.of(!0)}),!0):!1,fV=t=>{let e=t.state.field(yn,!1);return!e||!e.active.some(i=>i.state!=0)?!1:(t.dispatch({effects:ed.of(null)}),!0)};class pV{constructor(e,i){this.active=e,this.context=i,this.time=Date.now(),this.updates=[],this.done=void 0}}const gV=50,mV=1e3,OV=Ni.fromClass(class{constructor(t){this.view=t,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let e of t.state.field(yn).active)e.isPending&&this.startQuery(e)}update(t){let e=t.state.field(yn),i=t.state.facet(Ti);if(!t.selectionSet&&!t.docChanged&&t.startState.field(yn)==e)return;let n=t.transactions.some(s=>{let a=xA(s,i);return a&8||(s.selection||s.docChanged)&&!(a&3)});for(let s=0;s<this.running.length;s++){let a=this.running[s];if(n||a.context.abortOnDocChange&&t.docChanged||a.updates.length+t.transactions.length>gV&&Date.now()-a.time>mV){for(let c of a.context.abortListeners)try{c()}catch(h){Yn(this.view.state,h)}a.context.abortListeners=null,this.running.splice(s--,1)}else a.updates.push(...t.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),t.transactions.some(s=>s.effects.some(a=>a.is(Hg)))&&(this.pendingStart=!0);let r=this.pendingStart?50:i.activateOnTypingDelay;if(this.debounceUpdate=e.active.some(s=>s.isPending&&!this.running.some(a=>a.active.source==s.source))?setTimeout(()=>this.startUpdate(),r):-1,this.composing!=0)for(let s of t.transactions)s.isUserEvent("input.type")?this.composing=2:this.composing==2&&s.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:t}=this.view,e=t.field(yn);for(let i of e.active)i.isPending&&!this.running.some(n=>n.active.source==i.source)&&this.startQuery(i);this.running.length&&e.open&&e.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Ti).updateSyncTime))}startQuery(t){let{state:e}=this.view,i=Ja(e),n=new Pb(e,i,t.explicit,this.view),r=new pV(t,n);this.running.push(r),Promise.resolve(t.source(n)).then(s=>{r.context.aborted||(r.done=s||null,this.scheduleAccept())},s=>{this.view.dispatch({effects:ed.of(null)}),Yn(this.view.state,s)})}scheduleAccept(){this.running.every(t=>t.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Ti).updateSyncTime))}accept(){var t;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],i=this.view.state.facet(Ti),n=this.view.state.field(yn);for(let r=0;r<this.running.length;r++){let s=this.running[r];if(s.done===void 0)continue;if(this.running.splice(r--,1),s.done){let c=Ja(s.updates.length?s.updates[0].startState:this.view.state),h=Math.min(c,s.done.from+(s.active.explicit?0:1)),d=new wc(s.active.source,s.active.explicit,h,s.done,s.done.from,(t=s.done.to)!==null&&t!==void 0?t:c);for(let f of s.updates)d=d.update(f,i);if(d.hasResult()){e.push(d);continue}}let a=n.active.find(c=>c.source==s.active.source);if(a&&a.isPending)if(s.done==null){let c=new dr(s.active.source,0);for(let h of s.updates)c=c.update(h,i);c.isPending||e.push(c)}else this.startQuery(a)}(e.length||n.open&&n.open.disabled)&&this.view.dispatch({effects:Mb.of(e)})}},{eventHandlers:{blur(t){let e=this.view.state.field(yn,!1);if(e&&e.tooltip&&this.view.state.facet(Ti).closeOnBlur){let i=e.open&&r5(this.view,e.open.tooltip);(!i||!i.dom.contains(t.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:ed.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Hg.of(!1)}),20),this.composing=0}}}),vV=typeof navigator=="object"&&/Win/.test(navigator.platform),yV=eo.highest(xe.domEventHandlers({keydown(t,e){let i=e.state.field(yn,!1);if(!i||!i.open||i.open.disabled||i.open.selected<0||t.key.length>1||t.ctrlKey&&!(vV&&t.altKey)||t.metaKey)return!1;let n=i.open.options[i.open.selected],r=i.active.find(a=>a.source==n.source),s=n.completion.commitCharacters||r.result.commitCharacters;return s&&s.indexOf(t.key)>-1&&zb(e,n),!1}})),wA=xe.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class SV{constructor(e,i,n,r){this.field=e,this.line=i,this.from=n,this.to=r}}class jb{constructor(e,i,n){this.field=e,this.from=i,this.to=n}map(e){let i=e.mapPos(this.from,-1,nn.TrackDel),n=e.mapPos(this.to,1,nn.TrackDel);return i==null||n==null?null:new jb(this.field,i,n)}}class Db{constructor(e,i){this.lines=e,this.fieldPositions=i}instantiate(e,i){let n=[],r=[i],s=e.doc.lineAt(i),a=/^\s*/.exec(s.text)[0];for(let h of this.lines){if(n.length){let d=a,f=/^\t*/.exec(h)[0].length;for(let g=0;g<f;g++)d+=e.facet(_d);r.push(i+d.length-f),h=d+h.slice(f)}n.push(h),i+=h.length+1}let c=this.fieldPositions.map(h=>new jb(h.field,r[h.line]+h.from,r[h.line]+h.to));return{text:n,ranges:c}}static parse(e){let i=[],n=[],r=[],s;for(let a of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^{}]*))?|((?:\\[{}]|[^{}])*))\}/.exec(a);){let c=s[1]?+s[1]:null,h=s[2]||s[3]||"",d=-1,f=h.replace(/\\[{}]/g,g=>g[1]);for(let g=0;g<i.length;g++)(c!=null?i[g].seq==c:f&&i[g].name==f)&&(d=g);if(d<0){let g=0;for(;g<i.length&&(c==null||i[g].seq!=null&&i[g].seq<c);)g++;i.splice(g,0,{seq:c,name:f}),d=g;for(let m of r)m.field>=d&&m.field++}for(let g of r)if(g.line==n.length&&g.from>s.index){let m=s[2]?3+(s[1]||"").length:2;g.from-=m,g.to-=m}r.push(new SV(d,n.length,s.index,s.index+f.length)),a=a.slice(0,s.index)+h+a.slice(s.index+s[0].length)}a=a.replace(/\\([{}])/g,(c,h,d)=>{for(let f of r)f.line==n.length&&f.from>d&&(f.from--,f.to--);return h}),n.push(a)}return new Db(n,r)}}let bV=qe.widget({widget:new class extends pl{toDOM(){let t=document.createElement("span");return t.className="cm-snippetFieldPosition",t}ignoreEvent(){return!1}}}),_V=qe.mark({class:"cm-snippetField"});class Hc{constructor(e,i){this.ranges=e,this.active=i,this.deco=qe.set(e.map(n=>(n.from==n.to?bV:_V).range(n.from,n.to)),!0)}map(e){let i=[];for(let n of this.ranges){let r=n.map(e);if(!r)return null;i.push(r)}return new Hc(i,this.active)}selectionInsideField(e){return e.ranges.every(i=>this.ranges.some(n=>n.field==this.active&&n.from<=i.from&&n.to>=i.to))}}const Cd=Je.define({map(t,e){return t&&t.map(e)}}),xV=Je.define(),td=Un.define({create(){return null},update(t,e){for(let i of e.effects){if(i.is(Cd))return i.value;if(i.is(xV)&&t)return new Hc(t.ranges,i.value)}return t&&e.docChanged&&(t=t.map(e.changes)),t&&e.selection&&!t.selectionInsideField(e.selection)&&(t=null),t},provide:t=>xe.decorations.from(t,e=>e?e.deco:qe.none)});function Bb(t,e){return le.create(t.filter(i=>i.field==e).map(i=>le.range(i.from,i.to)))}function wV(t){let e=Db.parse(t);return(i,n,r,s)=>{let{text:a,ranges:c}=e.instantiate(i.state,r),{main:h}=i.state.selection,d={changes:{from:r,to:s==h.from?h.to:s,insert:dt.of(a)},scrollIntoView:!0,annotations:n?[Rb.of(n),li.userEvent.of("input.complete")]:void 0};if(c.length&&(d.selection=Bb(c,0)),c.some(f=>f.field>0)){let f=new Hc(c,0),g=d.effects=[Cd.of(f)];i.state.field(td,!1)===void 0&&g.push(Je.appendConfig.of([td,$V,PV,wA]))}i.dispatch(i.state.update(d))}}function kA(t){return({state:e,dispatch:i})=>{let n=e.field(td,!1);if(!n||t<0&&n.active==0)return!1;let r=n.active+t,s=t>0&&!n.ranges.some(a=>a.field==r+t);return i(e.update({selection:Bb(n.ranges,r),effects:Cd.of(s?null:new Hc(n.ranges,r)),scrollIntoView:!0})),!0}}const kV=({state:t,dispatch:e})=>t.field(td,!1)?(e(t.update({effects:Cd.of(null)})),!0):!1,CV=kA(1),TV=kA(-1),QV=[{key:"Tab",run:CV,shift:TV},{key:"Escape",run:kV}],FT=we.define({combine(t){return t.length?t[0]:QV}}),$V=eo.highest(Bc.compute([FT],t=>t.facet(FT)));function Nt(t,e){return{...e,apply:wV(t)}}const PV=xe.domEventHandlers({mousedown(t,e){let i=e.state.field(td,!1),n;if(!i||(n=e.posAtCoords({x:t.clientX,y:t.clientY}))==null)return!1;let r=i.ranges.find(s=>s.from<=n&&s.to>=n);return!r||r.field==i.active?!1:(e.dispatch({selection:Bb(i.ranges,r.field),effects:Cd.of(i.ranges.some(s=>s.field>r.field)?new Hc(i.ranges,r.field):null),scrollIntoView:!0}),!0)}}),CA=new class extends ra{};CA.startSide=1;CA.endSide=-1;function EV(t={}){return[yV,yn,Ti.of(t),OV,RV,wA]}const TA=[{key:"Ctrl-Space",run:Wv},{mac:"Alt-`",run:Wv},{mac:"Alt-i",run:Wv},{key:"Escape",run:fV},{key:"ArrowDown",run:Ep(!0)},{key:"ArrowUp",run:Ep(!1)},{key:"PageDown",run:Ep(!0,"page")},{key:"PageUp",run:Ep(!1,"page")},{key:"Enter",run:dV}],RV=eo.highest(Bc.computeN([Ti],t=>t.facet(Ti).defaultKeymap?[TA]:[])),AV="#e5c07b",KT="#e06c75",MV="#56b6c2",zV="#ffffff",eg="#abb2bf",$S="#7d8799",jV="#61afef",DV="#98c379",JT="#d19a66",BV="#c678dd",LV="#21252b",eQ="#2c313a",tQ="#282c34",qv="#353a42",XV="#3E4451",iQ="#528bff",NV=xe.theme({"&":{color:eg,backgroundColor:tQ},".cm-content":{caretColor:iQ},".cm-cursor, .cm-dropCursor":{borderLeftColor:iQ},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:XV},".cm-panels":{backgroundColor:LV,color:eg},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:tQ,color:$S,border:"none"},".cm-activeLineGutter":{backgroundColor:eQ},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:qv},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:qv,borderBottomColor:qv},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:eQ,color:eg}}},{dark:!0}),ZV=Em.define([{tag:q.keyword,color:BV},{tag:[q.name,q.deleted,q.character,q.propertyName,q.macroName],color:KT},{tag:[q.function(q.variableName),q.labelName],color:jV},{tag:[q.color,q.constant(q.name),q.standard(q.name)],color:JT},{tag:[q.definition(q.name),q.separator],color:eg},{tag:[q.typeName,q.className,q.number,q.changed,q.annotation,q.modifier,q.self,q.namespace],color:AV},{tag:[q.operator,q.operatorKeyword,q.url,q.escape,q.regexp,q.link,q.special(q.string)],color:MV},{tag:[q.meta,q.comment],color:$S},{tag:q.strong,fontWeight:"bold"},{tag:q.emphasis,fontStyle:"italic"},{tag:q.strikethrough,textDecoration:"line-through"},{tag:q.link,color:$S,textDecoration:"underline"},{tag:q.heading,fontWeight:"bold",color:KT},{tag:[q.atom,q.bool,q.special(q.variableName)],color:JT},{tag:[q.processingInstruction,q.string,q.inserted],color:DV},{tag:q.invalid,color:zV}]),WV=[NV,Vq(ZV)];var nQ={};class Gg{constructor(e,i,n,r,s,a,c,h,d,f=0,g){this.p=e,this.stack=i,this.state=n,this.reducePos=r,this.pos=s,this.score=a,this.buffer=c,this.bufferBase=h,this.curContext=d,this.lookAhead=f,this.parent=g}toString(){return`[${this.stack.filter((e,i)=>i%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,i,n=0){let r=e.parser.context;return new Gg(e,[],i,n,n,0,[],0,r?new rQ(r,r.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,i){this.stack.push(this.state,i,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var i;let n=e>>19,r=e&65535,{parser:s}=this.p,a=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),c=s.dynamicPrecedence(r);if(c&&(this.score+=c),n==0){this.pushState(s.getGoto(this.state,r,!0),this.reducePos),r<s.minRepeatTerm&&this.storeNode(r,this.reducePos,this.reducePos,a?8:4,!0),this.reduceContext(r,this.reducePos);return}let h=this.stack.length-(n-1)*3-(e&262144?6:0),d=h?this.stack[h-2]:this.p.ranges[0].from,f=this.reducePos-d;f>=2e3&&!(!((i=this.p.parser.nodeSet.types[r])===null||i===void 0)&&i.isAnonymous)&&(d==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=f):this.p.lastBigReductionSize<f&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=d,this.p.lastBigReductionSize=f));let g=h?this.stack[h-1]:0,m=this.bufferBase+this.buffer.length-g;if(r<s.minRepeatTerm||e&131072){let v=s.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(r,d,v,m+4,!0)}if(e&262144)this.state=this.stack[h];else{let v=this.stack[h-3];this.state=s.getGoto(v,r,!0)}for(;this.stack.length>h;)this.stack.pop();this.reduceContext(r,d)}storeNode(e,i,n,r=4,s=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let a=this,c=this.buffer.length;if(c==0&&a.parent&&(c=a.bufferBase-a.parent.bufferBase,a=a.parent),c>0&&a.buffer[c-4]==0&&a.buffer[c-1]>-1){if(i==n)return;if(a.buffer[c-2]>=i){a.buffer[c-2]=n;return}}}if(!s||this.pos==n)this.buffer.push(e,i,n,r);else{let a=this.buffer.length;if(a>0&&(this.buffer[a-4]!=0||this.buffer[a-1]<0)){let c=!1;for(let h=a;h>0&&this.buffer[h-2]>n;h-=4)if(this.buffer[h-1]>=0){c=!0;break}if(c)for(;a>0&&this.buffer[a-2]>n;)this.buffer[a]=this.buffer[a-4],this.buffer[a+1]=this.buffer[a-3],this.buffer[a+2]=this.buffer[a-2],this.buffer[a+3]=this.buffer[a-1],a-=4,r>4&&(r-=4)}this.buffer[a]=e,this.buffer[a+1]=i,this.buffer[a+2]=n,this.buffer[a+3]=r}}shift(e,i,n,r){if(e&131072)this.pushState(e&65535,this.pos);else if((e&262144)==0){let s=e,{parser:a}=this.p;this.pos=r;let c=a.stateFlag(s,1);!c&&(r>n||i<=a.maxNode)&&(this.reducePos=r),this.pushState(s,c?n:Math.min(n,this.reducePos)),this.shiftContext(i,n),i<=a.maxNode&&this.buffer.push(i,n,r,4)}else this.pos=r,this.shiftContext(i,n),i<=this.p.parser.maxNode&&this.buffer.push(i,n,r,4)}apply(e,i,n,r){e&65536?this.reduce(e):this.shift(e,i,n,r)}useNode(e,i){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let r=this.pos;this.reducePos=this.pos=r+e.length,this.pushState(i,r),this.buffer.push(n,r,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,i=e.buffer.length;for(;i>0&&e.buffer[i-2]>e.reducePos;)i-=4;let n=e.buffer.slice(i),r=e.bufferBase+i;for(;e&&r==e.bufferBase;)e=e.parent;return new Gg(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,r,this.curContext,this.lookAhead,e)}recoverByDelete(e,i){let n=e<=this.p.parser.maxNode;n&&this.storeNode(e,this.pos,i,4),this.storeNode(0,this.pos,i,n?8:4),this.pos=this.reducePos=i,this.score-=190}canShift(e){for(let i=new qV(this);;){let n=this.p.parser.stateSlot(i.state,4)||this.p.parser.hasAction(i.state,e);if(n==0)return!1;if((n&65536)==0)return!0;i.reduce(n)}}recoverByInsert(e){if(this.stack.length>=300)return[];let i=this.p.parser.nextStates(this.state);if(i.length>8||this.stack.length>=120){let r=[];for(let s=0,a;s<i.length;s+=2)(a=i[s+1])!=this.state&&this.p.parser.hasAction(a,e)&&r.push(i[s],a);if(this.stack.length<120)for(let s=0;r.length<8&&s<i.length;s+=2){let a=i[s+1];r.some((c,h)=>h&1&&c==a)||r.push(i[s],a)}i=r}let n=[];for(let r=0;r<i.length&&n.length<4;r+=2){let s=i[r+1];if(s==this.state)continue;let a=this.split();a.pushState(s,this.pos),a.storeNode(0,a.pos,a.pos,4,!0),a.shiftContext(i[r],this.pos),a.reducePos=this.pos,a.score-=200,n.push(a)}return n}forceReduce(){let{parser:e}=this.p,i=e.stateSlot(this.state,5);if((i&65536)==0)return!1;if(!e.validAction(this.state,i)){let n=i>>19,r=i&65535,s=this.stack.length-n*3;if(s<0||e.getGoto(this.stack[s],r,!1)<0){let a=this.findForcedReduction();if(a==null)return!1;i=a}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(i),!0}findForcedReduction(){let{parser:e}=this.p,i=[],n=(r,s)=>{if(!i.includes(r))return i.push(r),e.allActions(r,a=>{if(!(a&393216))if(a&65536){let c=(a>>19)-s;if(c>1){let h=a&65535,d=this.stack.length-c*3;if(d>=0&&e.getGoto(this.stack[d],h,!1)>=0)return c<<19|65536|h}}else{let c=n(a,s+1);if(c!=null)return c}})};return n(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let i=0;i<this.stack.length;i+=3)if(this.stack[i]!=e.stack[i])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(e){return this.p.parser.dialect.flags[e]}shiftContext(e,i){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,e,this,this.p.stream.reset(i)))}reduceContext(e,i){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,e,this,this.p.stream.reset(i)))}emitContext(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-3)&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(e){if(e!=this.curContext.context){let i=new rQ(this.curContext.tracker,e);i.hash!=this.curContext.hash&&this.emitContext(),this.curContext=i}}setLookAhead(e){return e<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=e,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class rQ{constructor(e,i){this.tracker=e,this.context=i,this.hash=e.strict?e.hash(i):0}}class qV{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let i=e&65535,n=e>>19;n==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(n-1)*3;let r=this.start.p.parser.getGoto(this.stack[this.base-3],i,!0);this.state=r}}class Fg{constructor(e,i,n){this.stack=e,this.pos=i,this.index=n,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,i=e.bufferBase+e.buffer.length){return new Fg(e,i,i-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new Fg(this.stack,this.pos,this.index)}}function Ou(t,e=Uint16Array){if(typeof t!="string")return t;let i=null;for(let n=0,r=0;n<t.length;){let s=0;for(;;){let a=t.charCodeAt(n++),c=!1;if(a==126){s=65535;break}a>=92&&a--,a>=34&&a--;let h=a-32;if(h>=46&&(h-=46,c=!0),s+=h,c)break;s*=46}i?i[r++]=s:i=new e(s)}return i}class tg{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const sQ=new tg;class IV{constructor(e,i){this.input=e,this.ranges=i,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=sQ,this.rangeIndex=0,this.pos=this.chunkPos=i[0].from,this.range=i[0],this.end=i[i.length-1].to,this.readNext()}resolveOffset(e,i){let n=this.range,r=this.rangeIndex,s=this.pos+e;for(;s<n.from;){if(!r)return null;let a=this.ranges[--r];s-=n.from-a.to,n=a}for(;i<0?s>n.to:s>=n.to;){if(r==this.ranges.length-1)return null;let a=this.ranges[++r];s+=a.from-n.to,n=a}return s}clipPos(e){if(e>=this.range.from&&e<this.range.to)return e;for(let i of this.ranges)if(i.to>e)return Math.max(e,i.from);return this.end}peek(e){let i=this.chunkOff+e,n,r;if(i>=0&&i<this.chunk.length)n=this.pos+e,r=this.chunk.charCodeAt(i);else{let s=this.resolveOffset(e,1);if(s==null)return-1;if(n=s,n>=this.chunk2Pos&&n<this.chunk2Pos+this.chunk2.length)r=this.chunk2.charCodeAt(n-this.chunk2Pos);else{let a=this.rangeIndex,c=this.range;for(;c.to<=n;)c=this.ranges[++a];this.chunk2=this.input.chunk(this.chunk2Pos=n),n+this.chunk2.length>c.to&&(this.chunk2=this.chunk2.slice(0,c.to-n)),r=this.chunk2.charCodeAt(0)}}return n>=this.token.lookAhead&&(this.token.lookAhead=n+1),r}acceptToken(e,i=0){let n=i?this.resolveOffset(i,-1):this.pos;if(n==null||n<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=e,this.token.end=n}acceptTokenTo(e,i){this.token.value=e,this.token.end=i}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:e,chunkPos:i}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=e,this.chunk2Pos=i,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let e=this.input.chunk(this.pos),i=this.pos+e.length;this.chunk=i>this.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,i){if(i?(this.token=i,i.start=e,i.lookAhead=e+1,i.value=i.extended=-1):this.token=sQ,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;e>=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e<this.chunkPos+this.chunk.length?this.chunkOff=e-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(e,i){if(e>=this.chunkPos&&i<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,i-this.chunkPos);if(e>=this.chunk2Pos&&i<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,i-this.chunk2Pos);if(e>=this.range.from&&i<=this.range.to)return this.input.read(e,i);let n="";for(let r of this.ranges){if(r.from>=i)break;r.to>e&&(n+=this.input.read(Math.max(r.from,e),Math.min(r.to,i)))}return n}}class kc{constructor(e,i){this.data=e,this.id=i}token(e,i){let{parser:n}=i.p;QA(this.data,e,i,this.id,n.data,n.tokenPrecTable)}}kc.prototype.contextual=kc.prototype.fallback=kc.prototype.extend=!1;class Kg{constructor(e,i,n){this.precTable=i,this.elseToken=n,this.data=typeof e=="string"?Ou(e):e}token(e,i){let n=e.pos,r=0;for(;;){let s=e.next<0,a=e.resolveOffset(1,1);if(QA(this.data,e,i,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(s||r++,a==null)break;e.reset(a,e.token)}r&&(e.reset(n,e.token),e.acceptToken(this.elseToken,r))}}Kg.prototype.contextual=kc.prototype.fallback=kc.prototype.extend=!1;class Zi{constructor(e,i={}){this.token=e,this.contextual=!!i.contextual,this.fallback=!!i.fallback,this.extend=!!i.extend}}function QA(t,e,i,n,r,s){let a=0,c=1<<n,{dialect:h}=i.p.parser;e:for(;(c&t[a])!=0;){let d=t[a+1];for(let v=a+3;v<d;v+=2)if((t[v+1]&c)>0){let S=t[v];if(h.allows(S)&&(e.token.value==-1||e.token.value==S||VV(S,e.token.value,r,s))){e.acceptToken(S);break}}let f=e.next,g=0,m=t[a+2];if(e.next<0&&m>g&&t[d+m*3-3]==65535){a=t[d+m*3-1];continue e}for(;g<m;){let v=g+m>>1,S=d+v+(v<<1),_=t[S],w=t[S+1]||65536;if(f<_)m=v;else if(f>=w)g=v+1;else{a=t[S+2],e.advance();continue e}}break}}function oQ(t,e,i){for(let n=e,r;(r=t[n])!=65535;n++)if(r==i)return n-e;return-1}function VV(t,e,i,n){let r=oQ(i,n,e);return r<0||oQ(i,n,t)<r}const Bn=typeof process<"u"&&nQ&&/\bparse\b/.test(nQ.LOG);let Iv=null;function aQ(t,e,i){let n=t.cursor(gt.IncludeAnonymous);for(n.moveTo(e);;)if(!(i<0?n.childBefore(e):n.childAfter(e)))for(;;){if((i<0?n.to<e:n.from>e)&&!n.type.isError)return i<0?Math.max(0,Math.min(n.to-1,e-25)):Math.min(t.length,Math.max(n.from+1,e+25));if(i<0?n.prevSibling():n.nextSibling())break;if(!n.parent())return i<0?0:t.length}}let YV=class{constructor(e,i){this.fragments=e,this.nodeSet=i,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?aQ(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?aQ(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(e<this.nextStart)return null;for(;this.fragment&&this.safeTo<=e;)this.nextFragment();if(!this.fragment)return null;for(;;){let i=this.trees.length-1;if(i<0)return this.nextFragment(),null;let n=this.trees[i],r=this.index[i];if(r==n.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let s=n.children[r],a=this.start[i]+n.positions[r];if(a>e)return this.nextStart=a,null;if(s instanceof mt){if(a==e){if(a<this.safeFrom)return null;let c=a+s.length;if(c<=this.safeTo){let h=s.prop(Ze.lookAhead);if(!h||c+h<this.fragment.to)return s}}this.index[i]++,a+s.length>=Math.max(this.safeFrom,e)&&(this.trees.push(s),this.start.push(a),this.index.push(0))}else this.index[i]++,this.nextStart=a+s.length}}};class HV{constructor(e,i){this.stream=i,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(n=>new tg)}getActions(e){let i=0,n=null,{parser:r}=e.p,{tokenizers:s}=r,a=r.stateSlot(e.state,3),c=e.curContext?e.curContext.hash:0,h=0;for(let d=0;d<s.length;d++){if((1<<d&a)==0)continue;let f=s[d],g=this.tokens[d];if(!(n&&!f.fallback)&&((f.contextual||g.start!=e.pos||g.mask!=a||g.context!=c)&&(this.updateCachedToken(g,f,e),g.mask=a,g.context=c),g.lookAhead>g.end+25&&(h=Math.max(g.lookAhead,h)),g.value!=0)){let m=i;if(g.extended>-1&&(i=this.addActions(e,g.extended,g.end,i)),i=this.addActions(e,g.value,g.end,i),!f.extend&&(n=g,i>m))break}}for(;this.actions.length>i;)this.actions.pop();return h&&e.setLookAhead(h),!n&&e.pos==this.stream.end&&(n=new tg,n.value=e.p.parser.eofTerm,n.start=n.end=e.pos,i=this.addActions(e,n.value,n.end,i)),this.mainToken=n,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let i=new tg,{pos:n,p:r}=e;return i.start=n,i.end=Math.min(n+1,r.stream.end),i.value=n==r.stream.end?r.parser.eofTerm:0,i}updateCachedToken(e,i,n){let r=this.stream.clipPos(n.pos);if(i.token(this.stream.reset(r,e),n),e.value>-1){let{parser:s}=n.p;for(let a=0;a<s.specialized.length;a++)if(s.specialized[a]==e.value){let c=s.specializers[a](this.stream.read(e.start,e.end),n);if(c>=0&&n.p.parser.dialect.allows(c>>1)){(c&1)==0?e.value=c>>1:e.extended=c>>1;break}}}else e.value=0,e.end=this.stream.clipPos(r+1)}putAction(e,i,n,r){for(let s=0;s<r;s+=3)if(this.actions[s]==e)return r;return this.actions[r++]=e,this.actions[r++]=i,this.actions[r++]=n,r}addActions(e,i,n,r){let{state:s}=e,{parser:a}=e.p,{data:c}=a;for(let h=0;h<2;h++)for(let d=a.stateSlot(s,h?2:1);;d+=3){if(c[d]==65535)if(c[d+1]==1)d=Ws(c,d+2);else{r==0&&c[d+1]==2&&(r=this.putAction(Ws(c,d+2),i,n,r));break}c[d]==i&&(r=this.putAction(Ws(c,d+1),i,n,r))}return r}}class UV{constructor(e,i,n,r){this.parser=e,this.input=i,this.ranges=r,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new IV(i,r),this.tokens=new HV(e,this.stream),this.topTerm=e.top[1];let{from:s}=r[0];this.stacks=[Gg.start(this,e.top[0],s)],this.fragments=n.length&&this.stream.end-s>e.bufferLength*4?new YV(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,i=this.minStackPos,n=this.stacks=[],r,s;if(this.bigReductionCount>300&&e.length==1){let[a]=e;for(;a.forceReduce()&&a.stack.length&&a.stack[a.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let a=0;a<e.length;a++){let c=e[a];for(;;){if(this.tokens.mainToken=null,c.pos>i)n.push(c);else{if(this.advanceStack(c,n,e))continue;{r||(r=[],s=[]),r.push(c);let h=this.tokens.getMainToken(c);s.push(h.value,h.end)}}break}}if(!n.length){let a=r&&FV(r);if(a)return Bn&&console.log("Finish with "+this.stackID(a)),this.stackToTree(a);if(this.parser.strict)throw Bn&&r&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+i);this.recovering||(this.recovering=5)}if(this.recovering&&r){let a=this.stoppedAt!=null&&r[0].pos>this.stoppedAt?r[0]:this.runRecovery(r,s,n);if(a)return Bn&&console.log("Force-finish "+this.stackID(a)),this.stackToTree(a.forceAll())}if(this.recovering){let a=this.recovering==1?1:this.recovering*3;if(n.length>a)for(n.sort((c,h)=>h.score-c.score);n.length>a;)n.pop();n.some(c=>c.reducePos>i)&&this.recovering--}else if(n.length>1){e:for(let a=0;a<n.length-1;a++){let c=n[a];for(let h=a+1;h<n.length;h++){let d=n[h];if(c.sameState(d)||c.buffer.length>500&&d.buffer.length>500)if((c.score-d.score||c.buffer.length-d.buffer.length)>0)n.splice(h--,1);else{n.splice(a--,1);continue e}}}n.length>12&&(n.sort((a,c)=>c.score-a.score),n.splice(12,n.length-12))}this.minStackPos=n[0].pos;for(let a=1;a<n.length;a++)n[a].pos<this.minStackPos&&(this.minStackPos=n[a].pos);return null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}advanceStack(e,i,n){let r=e.pos,{parser:s}=this,a=Bn?this.stackID(e)+" -> ":"";if(this.stoppedAt!=null&&r>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let d=e.curContext&&e.curContext.tracker.strict,f=d?e.curContext.hash:0;for(let g=this.fragments.nodeAt(r);g;){let m=this.parser.nodeSet.types[g.type.id]==g.type?s.getGoto(e.state,g.type.id):-1;if(m>-1&&g.length&&(!d||(g.prop(Ze.contextHash)||0)==f))return e.useNode(g,m),Bn&&console.log(a+this.stackID(e)+` (via reuse of ${s.getName(g.type.id)})`),!0;if(!(g instanceof mt)||g.children.length==0||g.positions[0]>0)break;let v=g.children[0];if(v instanceof mt&&g.positions[0]==0)g=v;else break}}let c=s.stateSlot(e.state,4);if(c>0)return e.reduce(c),Bn&&console.log(a+this.stackID(e)+` (via always-reduce ${s.getName(c&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let h=this.tokens.getActions(e);for(let d=0;d<h.length;){let f=h[d++],g=h[d++],m=h[d++],v=d==h.length||!n,S=v?e:e.split(),_=this.tokens.mainToken;if(S.apply(f,g,_?_.start:S.pos,m),Bn&&console.log(a+this.stackID(S)+` (via ${(f&65536)==0?"shift":`reduce of ${s.getName(f&65535)}`} for ${s.getName(g)} @ ${r}${S==e?"":", split"})`),v)return!0;S.pos>r?i.push(S):n.push(S)}return!1}advanceFully(e,i){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return lQ(e,i),!0}}runRecovery(e,i,n){let r=null,s=!1;for(let a=0;a<e.length;a++){let c=e[a],h=i[a<<1],d=i[(a<<1)+1],f=Bn?this.stackID(c)+" -> ":"";if(c.deadEnd&&(s||(s=!0,c.restart(),Bn&&console.log(f+this.stackID(c)+" (restarted)"),this.advanceFully(c,n))))continue;let g=c.split(),m=f;for(let v=0;v<10&&g.forceReduce()&&(Bn&&console.log(m+this.stackID(g)+" (via force-reduce)"),!this.advanceFully(g,n));v++)Bn&&(m=this.stackID(g)+" -> ");for(let v of c.recoverByInsert(h))Bn&&console.log(f+this.stackID(v)+" (via recover-insert)"),this.advanceFully(v,n);this.stream.end>c.pos?(d==c.pos&&(d++,h=0),c.recoverByDelete(h,d),Bn&&console.log(f+this.stackID(c)+` (via recover-delete ${this.parser.getName(h)})`),lQ(c,n)):(!r||r.score<g.score)&&(r=g)}return r}stackToTree(e){return e.close(),mt.build({buffer:Fg.create(e),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:e.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(e){let i=(Iv||(Iv=new WeakMap)).get(e);return i||Iv.set(e,i=String.fromCodePoint(this.nextStackID++)),i+e}}function lQ(t,e){for(let i=0;i<e.length;i++){let n=e[i];if(n.pos==t.pos&&n.sameState(t)){e[i].score<t.score&&(e[i]=t);return}}e.push(t)}class GV{constructor(e,i,n){this.source=e,this.flags=i,this.disabled=n}allows(e){return!this.disabled||this.disabled[e]==0}}const Vv=t=>t;class Lb{constructor(e){this.start=e.start,this.shift=e.shift||Vv,this.reduce=e.reduce||Vv,this.reuse=e.reuse||Vv,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class ua extends vb{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let i=e.nodeNames.split(" ");this.minRepeatTerm=i.length;for(let c=0;c<e.repeatNodeCount;c++)i.push("");let n=Object.keys(e.topRules).map(c=>e.topRules[c][1]),r=[];for(let c=0;c<i.length;c++)r.push([]);function s(c,h,d){r[c].push([h,h.deserialize(String(d))])}if(e.nodeProps)for(let c of e.nodeProps){let h=c[0];typeof h=="string"&&(h=Ze[h]);for(let d=1;d<c.length;){let f=c[d++];if(f>=0)s(f,h,c[d++]);else{let g=c[d+-f];for(let m=-f;m>0;m--)s(c[d++],h,g);d++}}}this.nodeSet=new bd(i.map((c,h)=>vi.define({name:h>=this.minRepeatTerm?void 0:c,id:h,props:r[h],top:n.indexOf(h)>-1,error:h==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(h)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=u5;let a=Ou(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let c=0;c<this.specializerSpecs.length;c++)this.specialized[c]=this.specializerSpecs[c].term;this.specializers=this.specializerSpecs.map(cQ),this.states=Ou(e.states,Uint32Array),this.data=Ou(e.stateData),this.goto=Ou(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(c=>typeof c=="number"?new kc(a,c):c),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,i,n){let r=new UV(this,e,i,n);for(let s of this.wrappers)r=s(r,e,i,n);return r}getGoto(e,i,n=!1){let r=this.goto;if(i>=r[0])return-1;for(let s=r[i+1];;){let a=r[s++],c=a&1,h=r[s++];if(c&&n)return h;for(let d=s+(a>>1);s<d;s++)if(r[s]==e)return h;if(c)return-1}}hasAction(e,i){let n=this.data;for(let r=0;r<2;r++)for(let s=this.stateSlot(e,r?2:1),a;;s+=3){if((a=n[s])==65535)if(n[s+1]==1)a=n[s=Ws(n,s+2)];else{if(n[s+1]==2)return Ws(n,s+2);break}if(a==i||a==0)return Ws(n,s+1)}return 0}stateSlot(e,i){return this.states[e*6+i]}stateFlag(e,i){return(this.stateSlot(e,0)&i)>0}validAction(e,i){return!!this.allActions(e,n=>n==i?!0:null)}allActions(e,i){let n=this.stateSlot(e,4),r=n?i(n):void 0;for(let s=this.stateSlot(e,1);r==null;s+=3){if(this.data[s]==65535)if(this.data[s+1]==1)s=Ws(this.data,s+2);else break;r=i(Ws(this.data,s+1))}return r}nextStates(e){let i=[];for(let n=this.stateSlot(e,1);;n+=3){if(this.data[n]==65535)if(this.data[n+1]==1)n=Ws(this.data,n+2);else break;if((this.data[n+2]&1)==0){let r=this.data[n+1];i.some((s,a)=>a&1&&s==r)||i.push(this.data[n],r)}}return i}configure(e){let i=Object.assign(Object.create(ua.prototype),this);if(e.props&&(i.nodeSet=this.nodeSet.extend(...e.props)),e.top){let n=this.topRules[e.top];if(!n)throw new RangeError(`Invalid top rule name ${e.top}`);i.top=n}return e.tokenizers&&(i.tokenizers=this.tokenizers.map(n=>{let r=e.tokenizers.find(s=>s.from==n);return r?r.to:n})),e.specializers&&(i.specializers=this.specializers.slice(),i.specializerSpecs=this.specializerSpecs.map((n,r)=>{let s=e.specializers.find(c=>c.from==n.external);if(!s)return n;let a=Object.assign(Object.assign({},n),{external:s.to});return i.specializers[r]=cQ(a),a})),e.contextTracker&&(i.context=e.contextTracker),e.dialect&&(i.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(i.strict=e.strict),e.wrap&&(i.wrappers=i.wrappers.concat(e.wrap)),e.bufferLength!=null&&(i.bufferLength=e.bufferLength),i}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let i=this.dynamicPrecedences;return i==null?0:i[e]||0}parseDialect(e){let i=Object.keys(this.dialects),n=i.map(()=>!1);if(e)for(let s of e.split(" ")){let a=i.indexOf(s);a>=0&&(n[a]=!0)}let r=null;for(let s=0;s<i.length;s++)if(!n[s])for(let a=this.dialects[i[s]],c;(c=this.data[a++])!=65535;)(r||(r=new Uint8Array(this.maxTerm+1)))[c]=1;return new GV(e,n,r)}static deserialize(e){return new ua(e)}}function Ws(t,e){return t[e]|t[e+1]<<16}function FV(t){let e=null;for(let i of t){let n=i.p.stoppedAt;(i.pos==i.p.stream.end||n!=null&&i.pos>n)&&i.p.parser.stateFlag(i.state,2)&&(!e||e.score<i.score)&&(e=i)}return e}function cQ(t){if(t.external){let e=t.extend?1:0;return(i,n)=>t.external(i,n)<<1|e}return t.get}const KV=316,JV=317,hQ=1,eY=2,tY=3,iY=4,nY=318,rY=320,sY=321,oY=5,aY=6,lY=0,PS=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],$A=125,cY=59,ES=47,hY=42,uY=43,dY=45,fY=60,pY=44,gY=63,mY=46,OY=91,vY=new Lb({start:!1,shift(t,e){return e==oY||e==aY||e==rY?t:e==sY},strict:!1}),yY=new Zi((t,e)=>{let{next:i}=t;(i==$A||i==-1||e.context)&&t.acceptToken(nY)},{contextual:!0,fallback:!0}),SY=new Zi((t,e)=>{let{next:i}=t,n;PS.indexOf(i)>-1||i==ES&&((n=t.peek(1))==ES||n==hY)||i!=$A&&i!=cY&&i!=-1&&!e.context&&t.acceptToken(KV)},{contextual:!0}),bY=new Zi((t,e)=>{t.next==OY&&!e.context&&t.acceptToken(JV)},{contextual:!0}),_Y=new Zi((t,e)=>{let{next:i}=t;if(i==uY||i==dY){if(t.advance(),i==t.next){t.advance();let n=!e.context&&e.canShift(hQ);t.acceptToken(n?hQ:eY)}}else i==gY&&t.peek(1)==mY&&(t.advance(),t.advance(),(t.next<48||t.next>57)&&t.acceptToken(tY))},{contextual:!0});function Yv(t,e){return t>=65&&t<=90||t>=97&&t<=122||t==95||t>=192||!e&&t>=48&&t<=57}const xY=new Zi((t,e)=>{if(t.next!=fY||!e.dialectEnabled(lY)||(t.advance(),t.next==ES))return;let i=0;for(;PS.indexOf(t.next)>-1;)t.advance(),i++;if(Yv(t.next,!0)){for(t.advance(),i++;Yv(t.next,!1);)t.advance(),i++;for(;PS.indexOf(t.next)>-1;)t.advance(),i++;if(t.next==pY)return;for(let n=0;;n++){if(n==7){if(!Yv(t.next,!0))return;break}if(t.next!="extends".charCodeAt(n))break;t.advance(),i++}}t.acceptToken(iY,-i)}),wY=fa({"get set async static":q.modifier,"for while do if else switch try catch finally return throw break continue default case defer":q.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":q.operatorKeyword,"let var const using function class extends":q.definitionKeyword,"import export from":q.moduleKeyword,"with debugger new":q.keyword,TemplateString:q.special(q.string),super:q.atom,BooleanLiteral:q.bool,this:q.self,null:q.null,Star:q.modifier,VariableName:q.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":q.function(q.variableName),VariableDefinition:q.definition(q.variableName),Label:q.labelName,PropertyName:q.propertyName,PrivatePropertyName:q.special(q.propertyName),"CallExpression/MemberExpression/PropertyName":q.function(q.propertyName),"FunctionDeclaration/VariableDefinition":q.function(q.definition(q.variableName)),"ClassDeclaration/VariableDefinition":q.definition(q.className),"NewExpression/VariableName":q.className,PropertyDefinition:q.definition(q.propertyName),PrivatePropertyDefinition:q.definition(q.special(q.propertyName)),UpdateOp:q.updateOperator,"LineComment Hashbang":q.lineComment,BlockComment:q.blockComment,Number:q.number,String:q.string,Escape:q.escape,ArithOp:q.arithmeticOperator,LogicOp:q.logicOperator,BitOp:q.bitwiseOperator,CompareOp:q.compareOperator,RegExp:q.regexp,Equals:q.definitionOperator,Arrow:q.function(q.punctuation),": Spread":q.punctuation,"( )":q.paren,"[ ]":q.squareBracket,"{ }":q.brace,"InterpolationStart InterpolationEnd":q.special(q.brace),".":q.derefOperator,", ;":q.separator,"@":q.meta,TypeName:q.typeName,TypeDefinition:q.definition(q.typeName),"type enum interface implements namespace module declare":q.definitionKeyword,"abstract global Privacy readonly override":q.modifier,"is keyof unique infer asserts":q.operatorKeyword,JSXAttributeValue:q.attributeValue,JSXText:q.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":q.angleBracket,"JSXIdentifier JSXNameSpacedName":q.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":q.attributeName,"JSXBuiltin/JSXIdentifier":q.standard(q.tagName)}),kY={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,in:52,out:55,const:56,extends:60,this:64,true:72,false:72,null:84,void:88,typeof:92,super:108,new:142,delete:154,yield:163,await:167,class:172,public:235,private:235,protected:235,readonly:237,instanceof:256,satisfies:259,import:292,keyof:349,unique:353,infer:359,asserts:395,is:397,abstract:417,implements:419,type:421,let:424,var:426,using:429,interface:435,enum:439,namespace:445,module:447,declare:451,global:455,defer:471,for:476,of:485,while:488,with:492,do:496,if:500,else:502,switch:506,case:512,try:518,catch:522,finally:526,return:530,throw:534,break:538,continue:542,debugger:546},CY={__proto__:null,async:129,get:131,set:133,declare:195,public:197,private:197,protected:197,static:199,abstract:201,override:203,readonly:209,accessor:211,new:401},TY={__proto__:null,"<":193},QY=ua.deserialize({version:14,states:"$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-E<j-E<jO9kQ`O,5=_O!$rQ`O,5=_O!$wQlO,5;ZO!&zQMhO'#EkO!(eQ`O,5;ZO!(jQlO'#DyO!(tQpO,5;dO!(|QpO,5;dO%[QlO,5;dOOQ['#FT'#FTOOQ['#FV'#FVO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eOOQ['#FZ'#FZO!)[QlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IpO!+_Q!0LrO,5<iO%[QlO,5;eO!&zQMhO,5;eO!+|QMhO,5;eO!-nQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-uQ,UO'#FjO!.rQ,UO'#KXO!.^Q,UO'#KXO!.yQ,UO'#KXOOQO'#KX'#KXO!/_Q,UO,5<SOOOW,5<`,5<`O!/pQlO'#FvOOOW'#Io'#IoO7VO7dO,5<QO!/wQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0hQ$IUO'#CyOOQ!0Lh'#C}'#C}O!0{O#@ItO'#DRO!1iQMjO,5<eO!1pQ`O,5<hO!3YQ(CWO'#GXO!3jQ`O'#GYO!3oQ`O'#GYO!5_Q(CWO'#G^O!6dQpO'#GbOOQO'#Gn'#GnO!,TQMhO'#GmOOQO'#Gp'#GpO!,TQMhO'#GoO!7VQ$IUO'#JlOOQ!0Lh'#Jl'#JlO!7aQ`O'#JkO!7oQ`O'#JjO!7wQ`O'#CuOOQ!0Lh'#C{'#C{O!8YQ`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO!8_Q`O,5<eO1SQ`O'#DZO!,TQMhO'#GPO!,TQMhO'#GRO!8gQ`O'#GTO!8lQ`O'#GUO!3oQ`O'#G[O!,TQMhO'#GaO<]Q`O'#JkO!8qQ`O'#EqO!9`Q`O,5<gOOQ!0Lb'#Cr'#CrO!9hQ`O'#ErO!:bQpO'#EsOOQ!0Lb'#KR'#KRO!:iQ!0LrO'#KaO9uQ!0LrO,5=cO`QlO,5>tOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!<hQ!0MxO,5:bO!:]QpO,5:`O!?RQ!0MxO,5:jO%[QlO,5:jO!AiQ!0MxO,5:lOOQO,5@z,5@zO!BYQMhO,5=_O!BhQ!0LrO'#JiO9`Q`O'#JiO!ByQ!0LrO,59ZO!CUQpO,59ZO!C^QMhO,59ZO:dQMhO,59ZO!CiQ`O,5;ZO!CqQ`O'#HbO!DVQ`O'#KdO%[QlO,5;}O!:]QpO,5<PO!D_Q`O,5=zO!DdQ`O,5=zO!DiQ`O,5=zO!DwQ`O,5=zO9uQ!0LrO,5=zO<]Q`O,5=jOOQO'#Cy'#CyO!EOQpO,5=gO!EWQMhO,5=hO!EcQ`O,5=jO!EhQ!bO,5=mO!EpQ`O'#K`O?YQ`O'#HWO9kQ`O'#HYO!EuQ`O'#HYO:dQMhO'#H[O!EzQ`O'#H[OOQ[,5=p,5=pO!FPQ`O'#H]O!FbQ`O'#CoO!FgQ`O,59PO!FqQ`O,59PO!HvQlO,59POOQ[,59P,59PO!IWQ!0LrO,59PO%[QlO,59PO!KcQlO'#HeOOQ['#Hf'#HfOOQ['#Hg'#HgO`QlO,5=}O!KyQ`O,5=}O`QlO,5>TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-E<f-E<fO#)kQ!0MSO,5;RODWQpO,5:rO#)uQpO,5:rODWQpO,5;RO!ByQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#*SQ!0LrO,5;RO#*_Q!0LrO,5;RO!CUQpO,5:rOOQO,5;X,5;XO#*mQ!0LrO,5;RPOOO'#I^'#I^P#+RO&2DjO,58|POOO,58|,58|OOOO-E<^-E<^OOQ!0Lh1G.p1G.pOOOO-E<_-E<_OOOO,59},59}O#+^Q!bO,59}OOOO-E<a-E<aOOQ!0Lf1G/g1G/gO#+cQ!fO,5?OO+}QlO,5?OOOQO,5?U,5?UO#+mQlO'#IdOOQO-E<b-E<bO#+zQ`O,5@`O#,SQ!fO,5@`O#,ZQ`O,5@nOOQ!0Lf1G/m1G/mO%[QlO,5@oO#,cQ`O'#IjOOQO-E<h-E<hO#,ZQ`O,5@nOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@lO#,wQ!0LrO,5@lO#-YQ!0LrO,5@lO#-aQ`O,5@kO9eQ`O,5@kO#-iQ`O,5@kO#-wQ`O'#ImO#-aQ`O,5@kOOQ!0Lb1G0w1G0wO!(tQpO,5:uO!)PQpO,5:uOOQS,5:w,5:wO#.iQdO,5:wO#.qQMhO1G2yO9kQ`O1G2yOOQ!0Lf1G0u1G0uO#/PQ!0MxO1G0uO#0UQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0rQ!0MzO'#JlO!$wQlO1G0uO#2}Q!fO'#JwO%[QlO'#JwO#3XQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#3^Q`O1G1OO#5rQ!0MxO1G1PO#5yQ!0MxO1G1PO#8aQ!0MxO1G1PO#8hQ!0MxO1G1PO#;OQ!0MxO1G1PO#=fQ!0MxO1G1PO#=mQ!0MxO1G1PO#=tQ!0MxO1G1PO#@[Q!0MxO1G1PO#@cQ!0MxO1G1PO#BpQ?MtO'#CiO#DkQ?MtO1G1`O#DrQ?MtO'#JsO#EVQ!0MxO,5?[OOQ!0Lb-E<n-E<nO#GdQ!0MxO1G1PO#HaQ!0MzO1G1POOQ!0Lf1G1P1G1PO#IdQMjO'#J|O#InQ`O,5:xO#IsQ!0MxO1G1cO#JgQ,UO,5<WO#JoQ,UO,5<XO#JwQ,UO'#FoO#K`Q`O'#FnOOQO'#KY'#KYOOQO'#In'#InO#KeQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#KvQ?MtO'#JrO#LQQ`O,5<bO!)[QlO,5<bOOOW-E<m-E<mOOQ!0Lf1G1l1G1lO#LVQpO'#KXOOQ!0Lf,5<d,5<dO#L_QpO,5<dO#LdQMhO'#DTOOOO'#Ib'#IbO#LkO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8lQ`O'#IrO#LvQ`O,5<zOOQ!0Lh,5<w,5<wO!,TQMhO'#IuO#MdQMjO,5=XO!,TQMhO'#IwO#NVQMjO,5=ZO!&zQMhO,5=]OOQO1G2S1G2SO#NaQ!dO'#CrO#NtQ(CWO'#ErO$ |QpO'#GbO$!dQ!dO,5<sO$!kQ`O'#K[O9eQ`O'#K[O$!yQ`O,5<uO$#aQ!dO'#C{O!,TQMhO,5<tO$#kQ`O'#GZO$$PQ`O,5<tO$$UQ!dO'#GWO$$cQ!dO'#K]O$$mQ`O'#K]O!&zQMhO'#K]O$$rQ`O,5<xO$$wQlO'#JvO$%RQpO'#GcO#$`QpO'#GcO$%dQ`O'#GgO!3oQ`O'#GkO$%iQ!0LrO'#ItO$%tQpO,5<|OOQ!0Lp,5<|,5<|O$%{QpO'#GcO$&YQpO'#GdO$&kQpO'#GdO$&pQMjO,5=XO$'QQMjO,5=ZOOQ!0Lh,5=^,5=^O!,TQMhO,5@VO!,TQMhO,5@VO$'bQ`O'#IyO$'vQ`O,5@UO$(OQ`O,59aOOQ!0Lh,59i,59iO$(TQ`O,5@VO$)TQ$IYO,59uOOQ!0Lh'#Jp'#JpO$)vQMjO,5<kO$*iQMjO,5<mO@zQ`O,5<oOOQ!0Lh,5<p,5<pO$*sQ`O,5<vO$*xQMjO,5<{O$+YQ`O'#KPO!$wQlO1G2RO$+_Q`O1G2RO9eQ`O'#KSO9eQ`O'#EtO%[QlO'#EtO9eQ`O'#I{O$+dQ!0LrO,5@{OOQ[1G2}1G2}OOQ[1G4`1G4`OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$-fQ!0MxO1G0UOOQ[1G2y1G2yO!&zQMhO1G2yO%[QlO1G2yO#.tQ`O1G2yO$/jQMhO'#EkOOQ!0Lb,5@T,5@TO$/wQ!0LrO,5@TOOQ[1G.u1G.uO!ByQ!0LrO1G.uO!CUQpO1G.uO!C^QMhO1G.uO$0YQ`O1G0uO$0_Q`O'#CiO$0jQ`O'#KeO$0rQ`O,5=|O$0wQ`O'#KeO$0|Q`O'#KeO$1[Q`O'#JRO$1jQ`O,5AOO$1rQ!fO1G1iOOQ!0Lf1G1k1G1kO9kQ`O1G3fO@zQ`O1G3fO$1yQ`O1G3fO$2OQ`O1G3fO!DiQ`O1G3fO9uQ!0LrO1G3fOOQ[1G3f1G3fO!EcQ`O1G3UO!&zQMhO1G3RO$2TQ`O1G3ROOQ[1G3S1G3SO!&zQMhO1G3SO$2YQ`O1G3SO$2bQpO'#HQOOQ[1G3U1G3UO!6_QpO'#I}O!EhQ!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$2jQMhO,5=tO9kQ`O,5=tO$%dQ`O,5=vO9`Q`O,5=vO!CUQpO,5=vO!C^QMhO,5=vO:dQMhO,5=vO$2xQ`O'#KcO$3TQ`O,5=wOOQ[1G.k1G.kO$3YQ!0LrO1G.kO@zQ`O1G.kO$3eQ`O1G.kO9uQ!0LrO1G.kO$5mQ!fO,5AQO$5zQ`O,5AQO9eQ`O,5AQO$6VQlO,5>PO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5<iO$BOQ!fO1G4jOOQO1G4p1G4pO%[QlO,5?OO$BYQ`O1G5zO$BbQ`O1G6YO$BjQ!fO1G6ZO9eQ`O,5?UO$BtQ!0MxO1G6WO%[QlO1G6WO$CUQ!0LrO1G6WO$CgQ`O1G6VO$CgQ`O1G6VO9eQ`O1G6VO$CoQ`O,5?XO9eQ`O,5?XOOQO,5?X,5?XO$DTQ`O,5?XO$+YQ`O,5?XOOQO-E<k-E<kOOQS1G0a1G0aOOQS1G0c1G0cO#.lQ`O1G0cOOQ[7+(e7+(eO!&zQMhO7+(eO%[QlO7+(eO$DcQ`O7+(eO$DnQMhO7+(eO$D|Q!0MzO,5=XO$GXQ!0MzO,5=ZO$IdQ!0MzO,5=XO$KuQ!0MzO,5=ZO$NWQ!0MzO,59uO%!]Q!0MzO,5<kO%$hQ!0MzO,5<mO%&sQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%)UQ!0MxO7+&aO%)xQlO'#IfO%*VQ`O,5@cO%*_Q!fO,5@cOOQ!0Lf1G0P1G0PO%*iQ`O7+&jOOQ!0Lf7+&j7+&jO%*nQ?MtO,5:fO%[QlO7+&zO%*xQ?MtO,5:bO%+VQ?MtO,5:jO%+aQ?MtO,5:lO%+kQMhO'#IiO%+uQ`O,5@hOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%+}Q!jO,5<ZO!)[QlO,5<YOOQO-E<l-E<lOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%,YQ`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%,_Q!dO,59oOOOO-E<`-E<`OOQ!0Lh1G/X1G/XO%,fQ!0MxO7+'kOOQ!0Lh,5?^,5?^O%-YQMhO1G2fP%-aQ`O'#IrPOQ!0Lh-E<p-E<pO%-}QMjO,5?aOOQ!0Lh-E<s-E<sO%.pQMjO,5?cOOQ!0Lh-E<u-E<uO%.zQ!dO1G2wO%/RQ!dO'#CrO%/iQMhO'#KSO$$wQlO'#JvOOQ!0Lh1G2_1G2_O%/sQ`O'#IqO%0[Q`O,5@vO%0[Q`O,5@vO%0dQ`O,5@vO%0oQ`O,5@vOOQO1G2a1G2aO%0}QMjO1G2`O$+YQ`O'#K[O!,TQMhO1G2`O%1_Q(CWO'#IsO%1lQ`O,5@wO!&zQMhO,5@wO%1tQ!dO,5@wOOQ!0Lh1G2d1G2dO%4UQ!fO'#CiO%4`Q`O,5=POOQ!0Lb,5<},5<}O%4hQpO,5<}OOQ!0Lb,5=O,5=OOCwQ`O,5<}O%4sQpO,5<}OOQ!0Lb,5=R,5=RO$+YQ`O,5=VOOQO,5?`,5?`OOQO-E<r-E<rOOQ!0Lp1G2h1G2hO#$`QpO,5<}O$$wQlO,5=PO%5RQ`O,5=OO%5^QpO,5=OO!,TQMhO'#IuO%6WQMjO1G2sO!,TQMhO'#IwO%6yQMjO1G2uO%7TQMjO1G5qO%7_QMjO1G5qOOQO,5?e,5?eOOQO-E<w-E<wOOQO1G.{1G.{O!,TQMhO1G5qO!,TQMhO1G5qO!:]QpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%7lQ`O1G2ZO!,TQMhO1G2bO%7qQ!0MxO7+'mOOQ!0Lf7+'m7+'mO!$wQlO7+'mO%8eQ`O,5;`OOQ!0Lb,5?g,5?gOOQ!0Lb-E<y-E<yO%8jQ!dO'#K^O#(ZQ`O7+(eO4UQ!fO7+(eO$DfQ`O7+(eO%8tQ!0MvO'#CiO%9XQ!0MvO,5=SO%9lQ`O,5=SO%9tQ`O,5=SOOQ!0Lb1G5o1G5oOOQ[7+$a7+$aO!ByQ!0LrO7+$aO!CUQpO7+$aO!$wQlO7+&aO%9yQ`O'#JQO%:bQ`O,5APOOQO1G3h1G3hO9kQ`O,5APO%:bQ`O,5APO%:jQ`O,5APOOQO,5?m,5?mOOQO-E=P-E=POOQ!0Lf7+'T7+'TO%:oQ`O7+)QO9uQ!0LrO7+)QO9kQ`O7+)QO@zQ`O7+)QO%:tQ`O7+)QOOQ[7+)Q7+)QOOQ[7+(p7+(pO%:yQ!0MvO7+(mO!&zQMhO7+(mO!E^Q`O7+(nOOQ[7+(n7+(nO!&zQMhO7+(nO%;TQ`O'#KbO%;`Q`O,5=lOOQO,5?i,5?iOOQO-E<{-E<{OOQ[7+(s7+(sO%<rQpO'#HZOOQ[1G3`1G3`O!&zQMhO1G3`O%[QlO1G3`O%<yQ`O1G3`O%=UQMhO1G3`O9uQ!0LrO1G3bO$%dQ`O1G3bO9`Q`O1G3bO!CUQpO1G3bO!C^QMhO1G3bO%=dQ`O'#JPO%=xQ`O,5@}O%>QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-E<c-E<cOOQO,5?V,5?VOOQO-E<i-E<iO!CUQpO1G/sOOQO-E<e-E<eOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#(ZQ`O7+%uOOQ!0Lf7+&`7+&`O?YQ`O7+&`O!CUQpO7+&`OOQO7+%x7+%xO$AlQ!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%@nQ!0LrO7+&XO!ByQ!0LrO7+%xO!CUQpO7+%xO%@yQ!0LrO7+&XO%AXQ!0MxO7++rO%[QlO7++rO%AiQ`O7++qO%AiQ`O7++qOOQO1G4s1G4sO9eQ`O1G4sO%AqQ`O1G4sOOQS7+%}7+%}O#(ZQ`O<<LPO4UQ!fO<<LPO%BPQ`O<<LPOOQ[<<LP<<LPO!&zQMhO<<LPO%[QlO<<LPO%BXQ`O<<LPO%BdQ!0MzO,5?aO%DoQ!0MzO,5?cO%FzQ!0MzO1G2`O%I]Q!0MzO1G2sO%KhQ!0MzO1G2uO%MsQ!fO,5?QO%[QlO,5?QOOQO-E<d-E<dO%M}Q`O1G5}OOQ!0Lf<<JU<<JUO%NVQ?MtO1G0uO&!^Q?MtO1G1PO&!eQ?MtO1G1PO&$fQ?MtO1G1PO&$mQ?MtO1G1PO&&nQ?MtO1G1PO&(oQ?MtO1G1PO&(vQ?MtO1G1PO&(}Q?MtO1G1PO&+OQ?MtO1G1PO&+VQ?MtO1G1PO&+^Q!0MxO<<JfO&-UQ?MtO1G1PO&.RQ?MvO1G1PO&/UQ?MvO'#JlO&1[Q?MtO1G1cO&1iQ?MtO1G0UO&1sQMjO,5?TOOQO-E<g-E<gO!)[QlO'#FqOOQO'#KZ'#KZOOQO1G1u1G1uO&1}Q`O1G1tO&2SQ?MtO,5?[OOOW7+'h7+'hOOOO1G/Z1G/ZO&2^Q!dO1G4xOOQ!0Lh7+(Q7+(QP!&zQMhO,5?^O!,TQMhO7+(cO&2eQ`O,5?]O9eQ`O,5?]O$+YQ`O,5?]OOQO-E<o-E<oO&2sQ`O1G6bO&2sQ`O1G6bO&2{Q`O1G6bO&3WQMjO7+'zO&3hQ!dO,5?_O&3rQ`O,5?_O!&zQMhO,5?_OOQO-E<q-E<qO&3wQ!dO1G6cO&4RQ`O1G6cO&4ZQ`O1G2kO!&zQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%4hQpO1G2iO!CUQpO1G2iOCwQ`O1G2iOOQ!0Lb1G2q1G2qO&4`QpO1G2iO&4nQ`O1G2kO$+YQ`O1G2jOCwQ`O1G2jO$$wQlO1G2kO&4vQ`O1G2jO&5jQMjO,5?aOOQ!0Lh-E<t-E<tO&6]QMjO,5?cOOQ!0Lh-E<v-E<vO!,TQMhO7++]O&6gQMjO7++]O&6qQMjO7++]OOQ!0Lh1G/c1G/cO&7OQ`O1G/cOOQ!0Lh7+'u7+'uO&7TQMjO7+'|O&7eQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&8XQ`O1G0zO!&zQMhO'#IzO&8^Q`O,5@xO&:`Q!fO<<LPO!&zQMhO1G2nO&:gQ!0LrO1G2nOOQ[<<G{<<G{O!ByQ!0LrO<<G{O&:xQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?l,5?lO&;lQ`O,5?lO&;qQ`O,5?lOOQO-E=O-E=OO&<PQ`O1G6kO&<PQ`O1G6kO9kQ`O1G6kO@zQ`O<<LlOOQ[<<Ll<<LlO&<XQ`O<<LlO9uQ!0LrO<<LlO9kQ`O<<LlOOQ[<<LX<<LXO%:yQ!0MvO<<LXOOQ[<<LY<<LYO!E^Q`O<<LYO&<^QpO'#I|O&<iQ`O,5@|O!)[QlO,5@|OOQ[1G3W1G3WOOQO'#JO'#JOO9uQ!0LrO'#JOO&<qQpO,5=uOOQ[,5=u,5=uO&<xQpO'#EgO&=PQpO'#GeO&=UQ`O7+(zO&=ZQ`O7+(zOOQ[7+(z7+(zO!&zQMhO7+(zO%[QlO7+(zO&=cQ`O7+(zOOQ[7+(|7+(|O9uQ!0LrO7+(|O$%dQ`O7+(|O9`Q`O7+(|O!CUQpO7+(|O&=nQ`O,5?kOOQO-E<}-E<}OOQO'#H^'#H^O&=yQ`O1G6iO9uQ!0LrO<<GqOOQ[<<Gq<<GqO@zQ`O<<GqO&>RQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<<Ly<<LyOOQ[<<L{<<L{OOQ[-E=Q-E=QOOQ[1G3z1G3zO&>nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO?YQ`O<<IzOOQO<<Is<<IsO$AlQ!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!ByQ!0LrO<<IdO&?SQ!0LrO<<IsO&?_Q!0MxO<= ^O&?oQ`O<= ]OOQO7+*_7+*_O9eQ`O7+*_OOQ[ANAkANAkO&?wQ!fOANAkO!&zQMhOANAkO#(ZQ`OANAkO4UQ!fOANAkO&@OQ`OANAkO%[QlOANAkO&@WQ!0MzO7+'zO&BiQ!0MzO,5?aO&DtQ!0MzO,5?cO&GPQ!0MzO7+'|O&IbQ!fO1G4lO&IlQ?MtO7+&aO&KpQ?MvO,5=XO&MwQ?MvO,5=ZO&NXQ?MvO,5=XO&NiQ?MvO,5=ZO&NyQ?MvO,59uO'#PQ?MvO,5<kO'%SQ?MvO,5<mO''hQ?MvO,5<{O')^Q?MtO7+'kO')kQ?MtO7+'mO')xQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*d7+*dO')}QMjO<<K}OOQO1G4w1G4wO'*UQ`O1G4wO'*aQ`O1G4wO'*oQ`O7++|O'*oQ`O7++|O!&zQMhO1G4yO'*wQ!dO1G4yO'+RQ`O7++}O'+ZQ`O7+(VO'+fQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!CUQpO7+(TOCwQ`O7+(TO'+pQ`O7+(VO!&zQMhO7+(VO$+YQ`O7+(UO'+uQ`O7+(VOCwQ`O7+(UO'+}QMjO<<NwO!,TQMhO<<NwOOQ!0Lh7+$}7+$}O',XQ!dO,5?fOOQO-E<x-E<xO',cQ!0MvO7+(YO!&zQMhO7+(YOOQ[AN=gAN=gO9kQ`O1G5WOOQO1G5W1G5WO',sQ`O1G5WO',xQ`O7+,VO',xQ`O7+,VO9uQ!0LrOANBWO@zQ`OANBWOOQ[ANBWANBWO'-QQ`OANBWOOQ[ANAsANAsOOQ[ANAtANAtO'-VQ`O,5?hOOQO-E<z-E<zO'-bQ?MtO1G6hOOQO,5?j,5?jOOQO-E<|-E<|OOQ[1G3a1G3aO'-lQ`O,5=POOQ[<<Lf<<LfO!&zQMhO<<LfO&=UQ`O<<LfO'-qQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9uQ!0LrO<<LhO$%dQ`O<<LhO9`Q`O<<LhO'-yQpO1G5VO'.UQ`O7+,TOOQ[AN=]AN=]O9uQ!0LrOAN=]OOQ[<= r<= rOOQ[<= s<= sO'.^Q`O<= rO'.cQ`O<= sOOQ[<<Lq<<LqO'.hQ`O<<LqO'.mQlO<<LqOOQ[1G3{1G3{O?YQ`O7+)lO'.tQ`O<<JQO'/PQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$AlQ!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<My<<MyOOQ[G27VG27VO!&zQMhOG27VO#(ZQ`OG27VO'/ZQ!fOG27VO4UQ!fOG27VO'/bQ`OG27VO'/jQ?MtO<<JfO'/wQ?MvO1G2`O'1mQ?MvO,5?aO'3pQ?MvO,5?cO'5sQ?MvO1G2sO'7vQ?MvO1G2uO'9yQ?MtO<<KXO':WQ?MtO<<I{OOQO1G1w1G1wO!,TQMhOANAiOOQO7+*c7+*cO':eQ`O7+*cO':pQ`O<= hO':xQ!dO7+*eOOQ!0Lb<<Kq<<KqO$+YQ`O<<KqOCwQ`O<<KqO';SQ`O<<KqO!&zQMhO<<KqOOQ!0Lb<<Ko<<KoO!CUQpO<<KoO';_Q!dO<<KqOOQ!0Lb<<Kp<<KpO';iQ`O<<KqO!&zQMhO<<KqO$+YQ`O<<KpO';nQMjOANDcO';xQ!0MvO<<KtOOQO7+*r7+*rO9kQ`O7+*rO'<YQ`O<= qOOQ[G27rG27rO9uQ!0LrOG27rO@zQ`OG27rO!)[QlO1G5SO'<bQ`O7+,SO'<jQ`O1G2kO&=UQ`OANBQOOQ[ANBQANBQO!&zQMhOANBQO'<oQ`OANBQOOQ[ANBSANBSO9uQ!0LrOANBSO$%dQ`OANBSOOQO'#H_'#H_OOQO7+*q7+*qOOQ[G22wG22wOOQ[ANE^ANE^OOQ[ANE_ANE_OOQ[ANB]ANB]O'<wQ`OANB]OOQ[<<MW<<MWO!)[QlOAN?lOOQOG24yG24yO$AlQ!0MxOG24yO#(ZQ`OLD,qOOQ[LD,qLD,qO!&zQMhOLD,qO'<|Q!fOLD,qO'=TQ?MvO7+'zO'>yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<<M}<<M}OOQ!0LbANA]ANA]O$+YQ`OANA]OCwQ`OANA]O'EVQ!dOANA]OOQ!0LbANAZANAZO'E^Q`OANA]O!&zQMhOANA]O'EiQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N^<<N^OOQ[LD-^LD-^O9uQ!0LrOLD-^O'EsQ?MtO7+*nOOQO'#Gf'#GfOOQ[G27lG27lO&=UQ`OG27lO!&zQMhOG27lOOQ[G27nG27nO9uQ!0LrOG27nOOQ[G27wG27wO'E}Q?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#(ZQ`O!$(!]O!&zQMhO!$(!]O'FXQ!0MzOG27TOOQ!0LbG26wG26wO$+YQ`OG26wO'HjQ`OG26wOCwQ`OG26wO'HuQ!dOG26wO!&zQMhOG26wOOQ[!$(!x!$(!xOOQ[LD-WLD-WO&=UQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#(ZQ`O!)9EwOOQ!0LbLD,cLD,cO$+YQ`OLD,cOCwQ`OLD,cO'H|Q`OLD,cO'IXQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'I`Q?MvOG27TOOQ!0Lb!$( }!$( }O$+YQ`O!$( }OCwQ`O!$( }O'KUQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$+YQ`O!)9EiOCwQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$+YQ`O!.K;TOOQ!0Lb!4/0o!4/0oO!)[QlO'#DzO1PQ`O'#EXO'KaQ!fO'#JrO'KhQ!L^O'#DvO'KoQlO'#EOO'KvQ!fO'#CiO'N^Q!fO'#CiO!)[QlO'#EQO'NnQlO,5;ZO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO'#IpO(!qQ`O,5<iO!)[QlO,5;eO(!yQMhO,5;eO($dQMhO,5;eO!)[QlO,5;wO!&zQMhO'#GmO(!yQMhO'#GmO!&zQMhO'#GoO(!yQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&zQMhO'#GPO(!yQMhO'#GPO!&zQMhO'#GRO(!yQMhO'#GRO!&zQMhO'#GaO(!yQMhO'#GaO!)[QlO,5:jO($kQpO'#D_O($uQpO'#JvO!)[QlO,5@oO'NnQlO1G0uO(%PQ?MtO'#CiO!)[QlO1G2PO!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO(%ZQ!dO'#CrO!&zQMhO,5<tO(!yQMhO,5<tO'NnQlO1G2RO!)[QlO7+&zO!&zQMhO1G2`O(!yQMhO1G2`O!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO!&zQMhO1G2bO(!yQMhO1G2bO'NnQlO7+'mO'NnQlO7+&aO!&zQMhOANAiO(!yQMhOANAiO(%nQ`O'#EoO(%sQ`O'#EoO(%{Q`O'#F]O(&QQ`O'#EyO(&VQ`O'#KTO(&bQ`O'#KRO(&mQ`O,5;ZO(&rQMjO,5<eO(&yQ`O'#GYO('OQ`O'#GYO('TQ`O,5<eO(']Q`O,5<gO('eQ`O,5;ZO('mQ?MtO1G1`O('tQ`O,5<tO('yQ`O,5<tO((OQ`O,5<vO((TQ`O,5<vO((YQ`O1G2RO((_Q`O1G0uO((dQMjO<<K}O((kQMjO<<K}O((rQMhO'#F|O9`Q`O'#F{OAuQ`O'#EnO!)[QlO,5;tO!3oQ`O'#GYO!3oQ`O'#GYO!3oQ`O'#G[O!3oQ`O'#G[O!,TQMhO7+(cO!,TQMhO7+(cO%.zQ!dO1G2wO%.zQ!dO1G2wO!&zQMhO,5=]O!&zQMhO,5=]",stateData:"()x~O'|OS'}OSTOS(ORQ~OPYOQYOSfOY!VOaqOdzOeyOl!POpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!uwO!xxO!|]O$W|O$niO%h}O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO&W!WO&^!XO&`!YO&b!ZO&d![O&g!]O&m!^O&s!_O&u!`O&w!aO&y!bO&{!cO(TSO(VTO(YUO(aVO(o[O~OWtO~P`OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O(O!{O~OP]XR]X[]Xa]Xj]Xr]X!Q]X!S]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X'z]X(a]X(r]X(y]X(z]X~O!g%RX~P(qO_!}O(V#PO(W!}O(X#PO~O_#QO(X#PO(Y#PO(Z#QO~Ox#SO!U#TO(b#TO(c#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T<ZO(VTO(YUO(aVO(o[O~O![#ZO!]#WO!Y(hP!Y(vP~P+}O!^#cO~P`OPYOQYOSfOd!jOe!iOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(VTO(YUO(aVO(o[O~Op#mO![#iO!|]O#i#lO#j#iO(T<[O!k(sP~P.iO!l#oO(T#nO~O!x#sO!|]O%h#tO~O#k#uO~O!g#vO#k#uO~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!]$_O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa(fX'z(fX'w(fX!k(fX!Y(fX!_(fX%i(fX!g(fX~P1qO#S$dO#`$eO$Q$eOP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX!_(gX%i(gX~Oa(gX'z(gX'w(gX!Y(gX!k(gXv(gX!g(gX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%dOk%dOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T$sO(VTO(YUO(a$uO(y$}O(z%POg(^P~Ol%[O~P7eO!l%eO~O!S%hO!_%iO(T%gO~O!g%mO~Oa%nO'z%nO~O!Q%rO~P%[O(U!lO~P%[O%n%vO~P%[Oh%VO!l%eO(T%gO(U!lO~Oe%}O!l%eO(T%gO~Oj$RO~O!_&PO(T%gO(U!lO(VTO(YUO`)WP~O!Q&SO!l&RO%j&VO&T&WO~P;SO!x#sO~O%s&YO!S)SX!_)SX(T)SX~O(T&ZO~Ol!PO!u&`O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&eOe&dO!x&bO%h&cO%{&aO~P<bOd&hOeyOl!PO!_&gO!u&`O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&kO#`&nO%j&iO(U!lO~P=gO!l&oO!u&sO~O!l#oO~O!_XO~Oa%nO'x&{O'z%nO~Oa%nO'x'OO'z%nO~Oa%nO'x'QO'z%nO~O'w]X!Y]Xv]X!k]X&[]X!_]X%i]X!g]X~P(qO!b'_O!c'WO!d'WO(U!lO(VTO(YUO~Os'UO!S'TO!['XO(e'SO!^(iP!^(xP~P@nOn'bO!_'`O(T%gO~Oe'gO!l%eO(T%gO~O!Q&SO!l&RO~Os!nO!S!oO!|<VO#T!pO#U!pO#W!pO#X!pO(U!lO(VTO(YUO(e!mO(o!sO~O!b'mO!c'lO!d'lO#V!pO#['nO#]'nO~PBYOa%nOh%VO!g#vO!l%eO'z%nO(r'pO~O!p'tO#`'rO~PChOs!nO!S!oO(VTO(YUO(e!mO(o!sO~O!_XOs(mX!S(mX!b(mX!c(mX!d(mX!|(mX#T(mX#U(mX#V(mX#W(mX#X(mX#[(mX#](mX(U(mX(V(mX(Y(mX(e(mX(o(mX~O!c'lO!d'lO(U!lO~PDWO(P'xO(Q'xO(R'zO~O_!}O(V'|O(W!}O(X'|O~O_#QO(X'|O(Y'|O(Z#QO~Ov(OO~P%[Ox#SO!U#TO(b#TO(c(RO~O![(TO!Y'WX!Y'^X!]'WX!]'^X~P+}O!](VO!Y(hX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](VO!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~O!Y(hX~PHRO!Y([O~O!Y(uX!](uX!g(uX!k(uX(r(uX~O#`(uX#k#dX!^(uX~PJUO#`(]O!Y(wX!](wX~O!](^O!Y(vX~O!Y(aO~O#`$eO~PJUO!^(bO~P`OR#zO!Q#yO!S#{O!l#xO(aVOP!na[!naj!nar!na!]!na!p!na#R!na#n!na#o!na#p!na#q!na#r!na#s!na#t!na#u!na#v!na#x!na#z!na#{!na(r!na(y!na(z!na~Oa!na'z!na'w!na!Y!na!k!nav!na!_!na%i!na!g!na~PKlO!k(cO~O!g#vO#`(dO(r'pO!](tXa(tX'z(tX~O!k(tX~PNXO!S%hO!_%iO!|]O#i(iO#j(hO(T%gO~O!](jO!k(sX~O!k(lO~O!S%hO!_%iO#j(hO(T%gO~OP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~O!g#vO!k(gX~P! uOR(nO!Q(mO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(T!{a~P!#vO!x(rO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~O#k(xO~O![(zO!k(kP~P%[O(e(|O(o[O~O!S)OO!l#xO(e(|O(o[O~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S*YO!_*ZO!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op*`O![*^O(T*XO!k)OP~P!1uO#k*aO~O!l*bO~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T*dO(VTO(YUO(a$uO(y$}O(z%PO~O![*gO!Y)PP~P!3tOr*sOs!nO!S*iO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO(e!mO~O!^*pO~P!5iO#S$dOn(`X!Q(`X'y(`X(y(`X(z(`X!](`X#`(`X~Og(`X$O(`X~P!6kOn*xO#`*wOg(_X!](_X~O!]*yOg(^X~Oj%dOk%dOl%dO(T&ZOg(^P~Os*|O~Og)}O(T&ZO~O!l+SO~O(T(vO~Op+WO!S%hO![#iO!_%iO!|]O#i#lO#j#iO(T%gO!k(sP~O!g#vO#k+XO~O!S%hO![+ZO!](^O!_%iO(T%gO!Y(vP~Os'[O!S+]O![+[O(VTO(YUO(e(|O~O!^(xP~P!9|O!]+^Oa)TX'z)TX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa!ja!]!ja'z!ja'w!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:tOR#zO!Q#yO!S#{O!l#xO(aVOP!ra[!raj!rar!ra!]!ra!p!ra#R!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#v!ra#x!ra#z!ra#{!ra(r!ra(y!ra(z!ra~Oa!ra'z!ra'w!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!=[OR#zO!Q#yO!S#{O!l#xO(aVOP!ta[!taj!tar!ta!]!ta!p!ta#R!ta#n!ta#o!ta#p!ta#q!ta#r!ta#s!ta#t!ta#u!ta#v!ta#x!ta#z!ta#{!ta(r!ta(y!ta(z!ta~Oa!ta'z!ta'w!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?rOh%VOn+gO!_'`O%i+fO~O!g+iOa(]X!_(]X'z(]X!](]X~Oa%nO!_XO'z%nO~Oh%VO!l%eO~Oh%VO!l%eO(T%gO~O!g#vO#k(xO~Ob+tO%j+uO(T+qO(VTO(YUO!^)XP~O!]+vO`)WX~O[+zO~O`+{O~O!_&PO(T%gO(U!lO`)WP~O%j,OO~P;SOh%VO#`,SO~Oh%VOn,VO!_$|O~O!_,XO~O!Q,ZO!_XO~O%n%vO~O!x,`O~Oe,eO~Ob,fO(T#nO(VTO(YUO!^)VP~Oe%}O~O%j!QO(T&ZO~P=gO[,kO`,jO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(VTO(YUO(aVO(o[O~O!_!eO!u!gO$W!kO(T!dO~P!FyO`,jOa%nO'z%nO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa,pOl!OO!uwO%l!OO%m!OO%n!OO~P!IcO!l&oO~O&^,vO~O!_,xO~O&o,zO&q,{OP&laQ&laS&laY&laa&lad&lae&lal&lap&lar&las&lat&laz&la|&la!O&la!S&la!W&la!X&la!_&la!i&la!l&la!o&la!p&la!q&la!s&la!u&la!x&la!|&la$W&la$n&la%h&la%j&la%l&la%m&la%n&la%q&la%s&la%v&la%w&la%y&la&W&la&^&la&`&la&b&la&d&la&g&la&m&la&s&la&u&la&w&la&y&la&{&la'w&la(T&la(V&la(Y&la(a&la(o&la!^&la&e&lab&la&j&la~O(T-QO~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P#!iO!g-VO#`-UOh(jX!]#hX!^#hX!g(jX!l(jX~O!](jX!^(jX~P##[Oh%VO!g-XO!l%eO!]!aX!^!aX~Os!nO!S!oO(VTO(YUO(e!mO~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO#z<gO#{<hO(aVO(r$YO(y#|O(z#}O~O$O.{O~P#BwO#S$dO#`<nO$Q<nO$O(gX!^(gX~P! uOa'da!]'da'z'da'w'da!k'da!Y'dav'da!_'da%i'da!g'da~P!:tO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO(y#mi(z#mi~P#EyOn>]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]<iO!^(fX~P#BwO!^/ZO~O!g)hO$f({X~O$f/]O~Ov/^O~P!&zOx)yO(b)zO(c/aO~O!S/dO~O(y$}On%aa!Q%aa'y%aa(z%aa!]%aa#`%aa~Og%aa$O%aa~P#L{O(z%POn%ca!Q%ca'y%ca(y%ca!]%ca#`%ca~Og%ca$O%ca~P#MnO!]fX!gfX!kfX!k$zX(rfX~P!0SOp%WO![/mO!](^O(T/lO!Y(vP!Y)PP~P!1uOr*sO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO~Os<}O!S/nO![+[O!^*pO(e<|O!^(xP~P$ [O!k/oO~P#/sO!]/pO!g#vO(r'pO!k)OX~O!k/uO~OnoX!QoX'yoX(yoX(zoX~O!g#vO!koX~P$#OOp/wO!S%hO![*^O!_%iO(T%gO!k)OP~O#k/xO~O!Y$zX!]$zX!g%RX~P!0SO!]/yO!Y)PX~P#/sO!g/{O~O!Y/}O~OpkO(T0OO~P.iOh%VOr0TO!g#vO!l%eO(r'pO~O!g+iO~Oa%nO!]0XO'z%nO~O!^0ZO~P!5iO!c0[O!d0[O(U!lO~P#$`Os!nO!S0]O(VTO(YUO(e!mO~O#[0_O~Og%aa!]%aa#`%aa$O%aa~P!1WOg%ca!]%ca#`%ca$O%ca~P!1WOj%dOk%dOl%dO(T&ZOg'mX!]'mX~O!]*yOg(^a~Og0hO~On0jO#`0iOg(_a!](_a~OR0kO!Q0kO!S0lO#S$dOn}a'y}a(y}a(z}a!]}a#`}a~Og}a$O}a~P$(cO!Q*OO'y*POn$sa(y$sa(z$sa!]$sa#`$sa~Og$sa$O$sa~P$)_O!Q*OO'y*POn$ua(y$ua(z$ua!]$ua#`$ua~Og$ua$O$ua~P$*QO#k0oO~Og%Ta!]%Ta#`%Ta$O%Ta~P!1WO!g#vO~O#k0rO~O!]+^Oa)Ta'z)Ta~OR#zO!Q#yO!S#{O!l#xO(aVOP!ri[!rij!rir!ri!]!ri!p!ri#R!ri#n!ri#o!ri#p!ri#q!ri#r!ri#s!ri#t!ri#u!ri#v!ri#x!ri#z!ri#{!ri(r!ri(y!ri(z!ri~Oa!ri'z!ri'w!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$+oOh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op0{O%]0|O(T0zO~P$.VO!g+iOa(]a!_(]a'z(]a!](]a~O#k1SO~O[]X!]fX!^fX~O!]1TO!^)XX~O!^1VO~O[1WO~Ob1YO(T+qO(VTO(YUO~O!_&PO(T%gO`'uX!]'uX~O!]+vO`)Wa~O!k1]O~P!:tO[1`O~O`1aO~O#`1fO~On1iO!_$|O~O(e(|O!^)UP~Oh%VOn1rO!_1oO%i1qO~O[1|O!]1zO!^)VX~O!^1}O~O`2POa%nO'z%nO~O(T#nO(VTO(YUO~O#S$dO#`$eO$Q$eOP(gXR(gX[(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~Oj2SO&[2TOa(gX~P$3pOj2SO#`$eO&[2TO~Oa2VO~P%[Oa2XO~O&e2[OP&ciQ&ciS&ciY&cia&cid&cie&cil&cip&cir&cis&cit&ciz&ci|&ci!O&ci!S&ci!W&ci!X&ci!_&ci!i&ci!l&ci!o&ci!p&ci!q&ci!s&ci!u&ci!x&ci!|&ci$W&ci$n&ci%h&ci%j&ci%l&ci%m&ci%n&ci%q&ci%s&ci%v&ci%w&ci%y&ci&W&ci&^&ci&`&ci&b&ci&d&ci&g&ci&m&ci&s&ci&u&ci&w&ci&y&ci&{&ci'w&ci(T&ci(V&ci(Y&ci(a&ci(o&ci!^&cib&ci&j&ci~Ob2bO!^2`O&j2aO~P`O!_XO!l2dO~O&q,{OP&liQ&liS&liY&lia&lid&lie&lil&lip&lir&lis&lit&liz&li|&li!O&li!S&li!W&li!X&li!_&li!i&li!l&li!o&li!p&li!q&li!s&li!u&li!x&li!|&li$W&li$n&li%h&li%j&li%l&li%m&li%n&li%q&li%s&li%v&li%w&li%y&li&W&li&^&li&`&li&b&li&d&li&g&li&m&li&s&li&u&li&w&li&y&li&{&li'w&li(T&li(V&li(Y&li(a&li(o&li!^&li&e&lib&li&j&li~O!Y2jO~O!]!aa!^!aa~P#BwOs!nO!S!oO![2pO(e!mO!]'XX!^'XX~P@nO!]-]O!^(ia~O!]'_X!^'_X~P!9|O!]-`O!^(xa~O!^2wO~P'_Oa%nO#`3QO'z%nO~Oa%nO!g#vO#`3QO'z%nO~Oa%nO!g#vO!p3UO#`3QO'z%nO(r'pO~Oa%nO'z%nO~P!:tO!]$_Ov$qa~O!Y'Wi!]'Wi~P!:tO!](VO!Y(hi~O!](^O!Y(vi~O!Y(wi!](wi~P!:tO!](ti!k(tia(ti'z(ti~P!:tO#`3WO!](ti!k(tia(ti'z(ti~O!](jO!k(si~O!S%hO!_%iO!|]O#i3]O#j3[O(T%gO~O!S%hO!_%iO#j3[O(T%gO~On3dO!_'`O%i3cO~Oh%VOn3dO!_'`O%i3cO~O#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aav%aa!_%aa%i%aa!g%aa~P#L{O#k%caP%caR%ca[%caa%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%cav%ca!_%ca%i%ca!g%ca~P#MnO#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!]%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/sO#k%caP%caR%ca[%caa%caj%car%ca!S%ca!]%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/sO#k}aP}a[}aa}aj}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a'z}a(a}a(r}a!k}a!Y}a'w}av}a!_}a%i}a!g}a~P$(cO#k$saP$saR$sa[$saa$saj$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa'z$sa(a$sa(r$sa!k$sa!Y$sa'w$sav$sa!_$sa%i$sa!g$sa~P$)_O#k$uaP$uaR$ua[$uaa$uaj$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua'z$ua(a$ua(r$ua!k$ua!Y$ua'w$uav$ua!_$ua%i$ua!g$ua~P$*QO#k%TaP%TaR%Ta[%Taa%Taj%Tar%Ta!S%Ta!]%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta'z%Ta(a%Ta(r%Ta!k%Ta!Y%Ta'w%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/sOa#cq!]#cq'z#cq'w#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:tO![3lO!]'YX!k'YX~P%[O!].tO!k(ka~O!].tO!k(ka~P!:tO!Y3oO~O$O!na!^!na~PKlO$O!ja!]!ja!^!ja~P#BwO$O!ra!^!ra~P!=[O$O!ta!^!ta~P!?rOg']X!]']X~P!,TO!]/POg(pa~OSfO!_4TO$d4UO~O!^4YO~Ov4ZO~P#/sOa$mq!]$mq'z$mq'w$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:tO!Y4]O~P!&zO!S4^O~O!Q*OO'y*PO(z%POn'ia(y'ia!]'ia#`'ia~Og'ia$O'ia~P%-fO!Q*OO'y*POn'ka(y'ka(z'ka!]'ka#`'ka~Og'ka$O'ka~P%.XO(r$YO~P#/sO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!0SOp%WO(T=WO~P!1uOp4bO!S%hO![4aO!_%iO(T%gO!]'eX!k'eX~O!]/pO!k)Oa~O!]/pO!g#vO!k)Oa~O!]/pO!g#vO(r'pO!k)Oa~Og$|i!]$|i#`$|i$O$|i~P!1WO![4jO!Y'gX!]'gX~P!3tO!]/yO!Y)Pa~O!]/yO!Y)Pa~P#/sOP]XR]X[]Xj]Xr]X!Q]X!S]X!Y]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~Oj%YX!g%YX~P%2OOj4oO!g#vO~Oh%VO!g#vO!l%eO~Oh%VOr4tO!l%eO(r'pO~Or4yO!g#vO(r'pO~Os!nO!S4zO(VTO(YUO(e!mO~O(y$}On%ai!Q%ai'y%ai(z%ai!]%ai#`%ai~Og%ai$O%ai~P%5oO(z%POn%ci!Q%ci'y%ci(y%ci!]%ci#`%ci~Og%ci$O%ci~P%6bOg(_i!](_i~P!1WO#`5QOg(_i!](_i~P!1WO!k5VO~Oa$oq!]$oq'z$oq'w$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:tO!Y5ZO~O!]5[O!_)QX~P#/sOa$zX!_$zX%^]X'z$zX!]$zX~P!0SO%^5_OaoX!_oX'zoX!]oX~P$#OOp5`O(T#nO~O%^5_O~Ob5fO%j5gO(T+qO(VTO(YUO!]'tX!^'tX~O!]1TO!^)Xa~O[5kO~O`5lO~O[5pO~Oa%nO'z%nO~P#/sO!]5uO#`5wO!^)UX~O!^5xO~Or6OOs!nO!S*iO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!pO#W!pO#X!pO#[5}O#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O!^5|O~P%;eOn6TO!_1oO%i6SO~Oh%VOn6TO!_1oO%i6SO~Ob6[O(T#nO(VTO(YUO!]'sX!^'sX~O!]1zO!^)Va~O(VTO(YUO(e6^O~O`6bO~Oj6eO&[6fO~PNXO!k6gO~P%[Oa6iO~Oa6iO~P%[Ob2bO!^6nO&j2aO~P`O!g6pO~O!g6rOh(ji!](ji!^(ji!g(ji!l(jir(ji(r(ji~O!]#hi!^#hi~P#BwO#`6sO!]#hi!^#hi~O!]!ai!^!ai~P#BwOa%nO#`6|O'z%nO~Oa%nO!g#vO#`6|O'z%nO~O!](tq!k(tqa(tq'z(tq~P!:tO!](jO!k(sq~O!S%hO!_%iO#j7TO(T%gO~O!_'`O%i7WO~On7[O!_'`O%i7WO~O#k'iaP'iaR'ia['iaa'iaj'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia'z'ia(a'ia(r'ia!k'ia!Y'ia'w'iav'ia!_'ia%i'ia!g'ia~P%-fO#k'kaP'kaR'ka['kaa'kaj'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka'z'ka(a'ka(r'ka!k'ka!Y'ka'w'kav'ka!_'ka%i'ka!g'ka~P%.XO#k$|iP$|iR$|i[$|ia$|ij$|ir$|i!S$|i!]$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i'z$|i(a$|i(r$|i!k$|i!Y$|i'w$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/sO#k%aiP%aiR%ai[%aia%aij%air%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai'z%ai(a%ai(r%ai!k%ai!Y%ai'w%aiv%ai!_%ai%i%ai!g%ai~P%5oO#k%ciP%ciR%ci[%cia%cij%cir%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci'z%ci(a%ci(r%ci!k%ci!Y%ci'w%civ%ci!_%ci%i%ci!g%ci~P%6bO!]'Ya!k'Ya~P!:tO!].tO!k(ki~O$O#ci!]#ci!^#ci~P#BwOP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mij#mir#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#n#mi~P%NdO#n<_O~P%NdOP$[OR#zOr<kO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#r#mi~P&!lO#r<aO~P&!lOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO(aVO#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#v#mi~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO(aVO(z#}O#z#mi#{#mi$O#mi(r#mi(y#mi!]#mi!^#mi~O#x<eO~P&&uO#x#mi~P&&uO#v<cO~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO(aVO(y#|O(z#}O#{#mi$O#mi(r#mi!]#mi!^#mi~O#z#mi~P&)UO#z<gO~P&)UOa#|y!]#|y'z#|y'w#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:tO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO(y#mi(z#mi~P&,QOn>^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOr<QO!g#vO(r'pO~Ov(fX~P1qO!Q%rO~P!)[O(U!lO~P!)[O!YfX!]fX#`fX~P%2OOP]XR]X[]Xj]Xr]X!Q]X!S]X!]]X!]fX!l]X!p]X#R]X#S]X#`]X#`fX#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~O!gfX!k]X!kfX(rfX~P'LTOP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_XO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]<iO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<tO!S${O!_$|O!i>WO!l$xO#j<zO$W%`O$t<vO$v<xO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Ol)dO~P(!yOr!eX(r!eX~P#!iOr(jX(r(jX~P##[O!^]X!^fX~P'LTO!YfX!Y$zX!]fX!]$zX#`fX~P!0SO#k<^O~O!g#vO#k<^O~O#`<nO~Oj<bO~O#`=OO!](wX!^(wX~O#`<nO!](uX!^(uX~O#k=PO~Og=RO~P!1WO#k=XO~O#k=YO~Og=RO(T&ZO~O!g#vO#k=ZO~O!g#vO#k=PO~O$O=[O~P#BwO#k=]O~O#k=^O~O#k=cO~O#k=dO~O#k=eO~O#k=fO~O$O=gO~P!1WO$O=hO~P!1WOl=sO~P7eOk#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~(OT#o!X'|(U#ps#n#qr!Q'}$]'}(T$_(e~",goto:"$9Y)]PPPPPP)^PP)aP)rP+W/]PPPP6mPP7TPP=QPPP@tPA^PA^PPPA^PCfPA^PA^PA^PCjPCoPD^PIWPPPI[PPPPI[L_PPPLeMVPI[PI[PP! eI[PPPI[PI[P!#lI[P!'S!(X!(bP!)U!)Y!)U!,gPPPPPPP!-W!(XPP!-h!/YP!2iI[I[!2n!5z!:h!:h!>gPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#<e#<k#<n)aP#<q)aP#<z#<z#<zP)aP)aP)aP)aPP)aP#=Q#=TP#=T)aP#=XP#=[P)aP)aP)aP)aP)aP)a)aPP#=b#=h#=s#=y#>P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{<Y%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_S#q]<V!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU+P%]<s<tQ+t&PQ,f&gQ,m&oQ0x+gQ0}+iQ1Y+uQ2R,kQ3`.gQ5`0|Q5f1TQ6[1zQ7Y3dQ8`5gR9e7['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>R>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o>U<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hW%Ti%V*y>PS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^T)z$u){V+P%]<s<tW'[!e%i*Z-`S(}#y#zQ+c%rQ+y&SS.b(m(nQ1j,XQ5T0kR8i5u'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vS(o#p'iQ)P#zS+b%q.|S.c(n(pR3^.d'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS#q]<VQ&t!XQ&u!YQ&w![Q&x!]R2Z,vQ'a!hQ+e%wQ-h'cS.e(q+hQ2x-gW3b.h.i0w0yQ6w2yW7U3_3a3e5^U9a7V7X7ZU:q9c9d9fS;b:p:sQ;p;cR;x;qU!wQ'`-eT5y1o5{!Q_OXZ`st!V!Z#d#h%e%m&i&k&r&t&u&w(j,s,x.[2[2_]!pQ!r'`-e1o5{T#q]<V%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S(}#y#zS.b(m(n!s=l$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uS<P;|;}R<S<QQ#wbQ's!uS(e#g2US(g#m+WQ+Y%fQ+j%xQ+p&OU-r'k't'wQ.W(fU/r*]*`/wQ0S*jQ0V*lQ1O+kQ1u,aS3R-s-vQ3Z.`S4e/s/tQ4n0PS4q0R0^Q4u0WQ6W1vQ7P3US7q4`4bQ7u4fU7|4r4x4{Q8P4wQ8v6XS9q7r7sQ9u7yQ9}8RQ:O8SQ:c8wQ:y9rS:z9v9xQ;S:QQ;^:dS;f:{;PS;r;g;hS;z;s;uS<O;{;}Q<R<PQ<T<SQ=o=jQ={=tR=|=uV!wQ'`-e%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S#wz!j!r=i$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!P<d)^)q-Z.|2k2n3p3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!f$Vc#Y%q(S(Y(t(y)W)X)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!T<f)^)q-Z.|2k2n3p3v3w3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!^$Zc#Y%q(S(Y(t(y)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<WQ4_/kz>S)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^Q+T%aQ/c*Oo4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!U$yi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n=r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hQ=w>TQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hnoOXst!Z#d%m&r&t&u&w,s,x2[2_S*f${*YQ-R'OQ-S'QR4i/y%[%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f<o#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<p<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!d=S(u)c*[*e.j.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f<q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!h=U(u)c*[*e.k.l.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|<jQ-|<WR<j)qQ/q*]W4c/q4d7t9sU4d/r/s/tS7t4e4fR9s7u$e*Q$v(u)c)e*[*e*t*u+Q+R+V.l.m.o.p.q/_/g/i/k/v/|0d0e0v1e3f3g3h3}4R4[4g4h4l4|5O5R5S5W5r7]7^7_7`7e7f7h7i7j7p7w7z8U8X8Z9h9i9j9t9|:R:S:t:u:v:w:x:};R;e;j;v;y=p=}>O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.l<oQ.m<qQ.o<uQ.p<wQ.q<yQ/_)yQ/g*RQ/i*TQ/k*VQ/v*aS/|*g/mQ0d*wQ0e*xl0v+f,V.f1i1q3c6S7W8q9b:`:r;[;dQ1e,SQ3f=SQ3g=UQ3h=XS3}<l<mQ4R/PS4[/d4^Q4g/xQ4h/yQ4l/{Q4|0`Q5O0bQ5R0iQ5S0jQ5W0oQ5r1fQ7]=]Q7^=_Q7_=aQ7`=cQ7e<pQ7f<rQ7h<vQ7i<xQ7j<zQ7p4_Q7w4jQ7z4oQ8U5QQ8X5[Q8Z5_Q9h=YQ9i=TQ9j=VQ9t7vQ9|8QQ:R8VQ:S8[Q:t=^Q:u=`Q:v=bQ:w=dQ:x9pQ:}9yQ;R:PQ;e=gQ;j;QQ;v;kQ;y=hQ=p>PQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.n<sR7g<tnpOXst!Z#d%m&r&t&u&w,s,x2[2_Q!fPS#fZ#oQ&|!`W'h!o*i0]4zQ(P#SQ)Q#{Q)r$nS,l&k&nQ,q&oQ-O&{S-T'T/nQ-g'bQ.x)OQ/[)sQ0s+]Q0y+gQ2W,pQ2y-iQ3a.gQ4W/VQ5U0lQ6Q1rQ6c2SQ6d2TQ6h2VQ6j2XQ6o2aQ7Z3dQ7m4TQ8s6TQ9P6eQ9Q6fQ9S6iQ9f7[Q:a8tR:k9T#[cOPXZst!Z!`!o#d#o#{%m&k&n&o&r&t&u&w&{'T'b)O*i+]+g,p,s,x-i.g/n0]0l1r2S2T2V2X2[2_2a3d4z6T6e6f6i7[8t9TQ#YWQ#eYQ%quQ%svS%uw!gS(S#W(VQ(Y#ZQ(t#uQ(y#xQ)R$OQ)S$PQ)T$QQ)U$RQ)V$SQ)W$TQ)X$UQ)Y$VQ)Z$WQ)[$XQ)^$ZQ)`$_Q)b$aQ)g$eW)q$n)s/V4TQ+d%tQ+x&RS-Z'X2pQ-x'rS-}(T.PQ.S(]Q.U(dQ.s(xQ.v(zQ.z<UQ.|<XQ.}<YQ/O<]Q/b)}Q0p+XQ2k-UQ2n-XQ3O-qQ3V.VQ3k.tQ3p<^Q3q<_Q3r<`Q3s<aQ3t<bQ3u<cQ3v<dQ3w<eQ3x<fQ3y<gQ3z<hQ3{.{Q3|<kQ4P<nQ4Q<{Q4X<iQ5X0rQ5c1SQ6u=OQ6{3QQ7Q3WQ7a3lQ7b=PQ7k=RQ7l=ZQ8k5wQ9X6sQ9]6|Q9g=[Q9m=eQ9n=fQ:o9_Q;W:ZQ;`:mQ<W#SR=v>SR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i<VR)f$dY!uQ'`-e1o5{Q'k!rS'u!v!yS'w!z5}S-t'l'mQ-v'nR3T-uT#kZ%eS#jZ%eS%km,oU(g#h#i#lS.Y(h(iQ.^(jQ0t+^Q3Y.ZU3Z.[.]._S7S3[3]R9`7Td#^W#W#Z%h(T(^*Y+Z.T/mr#gZm#h#i#l%e(h(i(j+^.Z.[.]._3[3]7TS*]$x*bQ/t*^Q2U,oQ2l-VQ4`/pQ6q2dQ7s4aQ9W6rT=m'X+[V#aW%h*YU#`W%h*YS(U#W(^U(Z#Z+Z/mS-['X+[T.O(T.TV'^!e%i*ZQ$lfR)x$qT)m$l)nR4V/UT*_$x*bT*h${*YQ0w+fQ1g,VQ3_.fQ5t1iQ6P1qQ7X3cQ8r6SQ9c7WQ:^8qQ:p9bQ;Z:`Q;c:rQ;n;[R;q;dnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&l!VR,h&itmOXst!U!V!Z#d%m&i&r&t&u&w,s,x2[2_R,o&oT%lm,oR1k,XR,g&gQ&U|S+}&V&WR1^,OR+s&PT&p!W&sT&q!W&sT2^,x2_",nodeNames:"⚠ ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:380,context:vY,nodeProps:[["isolate",-8,5,6,14,37,39,51,53,55,""],["group",-26,9,17,19,68,207,211,215,216,218,221,224,234,237,243,245,247,249,252,258,264,266,268,270,272,274,275,"Statement",-34,13,14,32,35,36,42,51,54,55,57,62,70,72,76,80,82,84,85,110,111,120,121,136,139,141,142,143,144,145,147,148,167,169,171,"Expression",-23,31,33,37,41,43,45,173,175,177,178,180,181,182,184,185,186,188,189,190,201,203,205,206,"Type",-3,88,103,109,"ClassItem"],["openedBy",23,"<",38,"InterpolationStart",56,"[",60,"{",73,"(",160,"JSXStartCloseTag"],["closedBy",-2,24,168,">",40,"InterpolationEnd",50,"]",61,"}",74,")",165,"JSXEndTag"]],propSources:[wY],skippedNodes:[0,5,6,278],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$i&j(Wp(Z!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$i&j(Z!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(o%1l(Wp(Z!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$i&j(Wp(Z!b$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$i&j(Wp(Z!b$]#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$i&j(Wp(Z!b#p(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$i&j$Q(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(z+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$i&j#z(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(Y';W$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$i&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$d`$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(WpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!k!Lf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$i&j(Wp(Z!b(U%&f#q(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$i&j(Wp(Z!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$i&j(Wp(Z!br+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!]+Jf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$i&j(Wp(Z!b!Q.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_![!L^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$i&j(Wp(Z!b#o(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$i&j(Z!b!X7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$i&j!X7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$i&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$i&j(Wp!X7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$i&j(Wp!X7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Wp!X7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Wp!X7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(WpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$i&j(WpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$i&j(Wp(Z!b!X7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Wp(Z!b!X7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Wp(Z!b!X7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Wp(Z!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$i&j(Wp(Z!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$i&j(Wp(Z!b(O0/l!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$i&j(Wp(Z!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$i&j(Z!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$i&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(Z!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$i&j(WpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(WpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Wp(Z!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$i&j$Q(Ch(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Z#t$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-<U(Wp(Z!b$n7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$k&j(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#k(Cl$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#s(Ch$f#|$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#s(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(r(Ct$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$i&j#{(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!|$Ip$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!S0,v$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$i&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$i&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$i&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$i&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$i&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!Y#)l$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#x(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$i&j(Wp(Z!b(a+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$i&j(Wp(Z!b(T,2j$_#t(e$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$i&j(Wp(Z!b$_#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!_#Hb(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(y+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",tokenizers:[SY,bY,_Y,xY,2,3,4,5,6,7,8,9,10,11,12,13,14,yY,new Kg("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~",141,340),new Kg("j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~",25,323)],topRules:{Script:[0,7],SingleExpression:[1,276],SingleClassItem:[2,277]},dialects:{jsx:0,ts:15175},dynamicPrecedences:{80:1,82:1,94:1,169:1,199:1},specialized:[{term:327,get:t=>kY[t]||-1},{term:343,get:t=>CY[t]||-1},{term:95,get:t=>TY[t]||-1}],tokenPrec:15201}),PA=[Nt("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),Nt("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),Nt("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Nt("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),Nt("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),Nt(`try {
114
- \${}
115
- } catch (\${error}) {
116
- \${}
117
- }`,{label:"try",detail:"/ catch block",type:"keyword"}),Nt("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),Nt(`if (\${}) {
118
- \${}
119
- } else {
120
- \${}
121
- }`,{label:"if",detail:"/ else block",type:"keyword"}),Nt(`class \${name} {
122
- constructor(\${params}) {
123
- \${}
124
- }
125
- }`,{label:"class",detail:"definition",type:"keyword"}),Nt('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Nt('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],$Y=PA.concat([Nt("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),Nt("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),Nt("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),uQ=new Ob,EA=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function ru(t){return(e,i)=>{let n=e.node.getChild("VariableDefinition");return n&&i(n,t),!0}}const PY=["FunctionDeclaration"],EY={FunctionDeclaration:ru("function"),ClassDeclaration:ru("class"),ClassExpression:()=>!0,EnumDeclaration:ru("constant"),TypeAliasDeclaration:ru("type"),NamespaceDeclaration:ru("namespace"),VariableDefinition(t,e){t.matchContext(PY)||e(t,"variable")},TypeDefinition(t,e){e(t,"type")},__proto__:null};function RA(t,e){let i=uQ.get(e);if(i)return i;let n=[],r=!0;function s(a,c){let h=t.sliceString(a.from,a.to);n.push({label:h,type:c})}return e.cursor(gt.IncludeAnonymous).iterate(a=>{if(r)r=!1;else if(a.name){let c=EY[a.name];if(c&&c(a,s)||EA.has(a.name))return!1}else if(a.to-a.from>8192){for(let c of RA(t,a.node))n.push(c);return!1}}),uQ.set(e,n),n}const dQ=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,AA=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function RY(t){let e=Qt(t.state).resolveInner(t.pos,-1);if(AA.indexOf(e.name)>-1)return null;let i=e.name=="VariableName"||e.to-e.from<20&&dQ.test(t.state.sliceDoc(e.from,e.to));if(!i&&!t.explicit)return null;let n=[];for(let r=e;r;r=r.parent)EA.has(r.name)&&(n=n.concat(RA(t.state.doc,r)));return{options:n,from:i?e.from:t.pos,validFor:dQ}}const ls=ca.define({name:"javascript",parser:QY.configure({props:[gl.add({IfStatement:_c({except:/^\s*({|else\b)/}),TryStatement:_c({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:$q,SwitchBody:t=>{let e=t.textAfter,i=/^\s*\}/.test(e),n=/^\s*(case|default)\b/.test(e);return t.baseIndent+(i?0:n?1:2)*t.unit},Block:Jp({closing:"}"}),ArrowFunction:t=>t.baseIndent+t.unit,"TemplateString BlockComment":()=>null,"Statement Property":_c({except:/^\s*{/}),JSXElement(t){let e=/^\s*<\//.test(t.textAfter);return t.lineIndent(t.node.from)+(e?0:t.unit)},JSXEscape(t){let e=/\s*\}/.test(t.textAfter);return t.lineIndent(t.node.from)+(e?0:t.unit)},"JSXOpenTag JSXSelfClosingTag"(t){return t.column(t.node.from)+t.unit}}),pa.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":$m,BlockComment(t){return{from:t.from+2,to:t.to-2}},JSXElement(t){let e=t.firstChild;if(!e||e.name=="JSXSelfClosingTag")return null;let i=t.lastChild;return{from:e.to,to:i.type.isError?t.to:i.from}},"JSXSelfClosingTag JSXOpenTag"(t){var e;let i=(e=t.firstChild)===null||e===void 0?void 0:e.nextSibling,n=t.lastChild;return!i||i.type.isError?null:{from:i.to,to:n.type.isError?t.to:n.from}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),MA={test:t=>/^JSX/.test(t.name),facet:yb({commentTokens:{block:{open:"{/*",close:"*/}"}}})},zA=ls.configure({dialect:"ts"},"typescript"),jA=ls.configure({dialect:"jsx",props:[Sb.add(t=>t.isTop?[MA]:void 0)]}),DA=ls.configure({dialect:"jsx ts",props:[Sb.add(t=>t.isTop?[MA]:void 0)]},"typescript");let BA=t=>({label:t,type:"keyword"});const LA="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(BA),AY=LA.concat(["declare","implements","private","protected","public"].map(BA));function RS(t={}){let e=t.jsx?t.typescript?DA:jA:t.typescript?zA:ls,i=t.typescript?$Y.concat(AY):PA.concat(LA);return new cl(e,[ls.data.of({autocomplete:bA(AA,Eb(i))}),ls.data.of({autocomplete:RY}),t.jsx?jY:[]])}function MY(t){for(;;){if(t.name=="JSXOpenTag"||t.name=="JSXSelfClosingTag"||t.name=="JSXFragmentTag")return t;if(t.name=="JSXEscape"||!t.parent)return null;t=t.parent}}function fQ(t,e,i=t.length){for(let n=e==null?void 0:e.firstChild;n;n=n.nextSibling)if(n.name=="JSXIdentifier"||n.name=="JSXBuiltin"||n.name=="JSXNamespacedName"||n.name=="JSXMemberExpression")return t.sliceString(n.from,Math.min(n.to,i));return""}const zY=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),jY=xe.inputHandler.of((t,e,i,n,r)=>{if((zY?t.composing:t.compositionStarted)||t.state.readOnly||e!=i||n!=">"&&n!="/"||!ls.isActiveAt(t.state,e,-1))return!1;let s=r(),{state:a}=s,c=a.changeByRange(h=>{var d;let{head:f}=h,g=Qt(a).resolveInner(f-1,-1),m;if(g.name=="JSXStartTag"&&(g=g.parent),!(a.doc.sliceString(f-1,f)!=n||g.name=="JSXAttributeValue"&&g.to>f)){if(n==">"&&g.name=="JSXFragmentTag")return{range:h,changes:{from:f,insert:"</>"}};if(n=="/"&&g.name=="JSXStartCloseTag"){let v=g.parent,S=v.parent;if(S&&v.from==f-2&&((m=fQ(a.doc,S.firstChild,f))||((d=S.firstChild)===null||d===void 0?void 0:d.name)=="JSXFragmentTag")){let _=`${m}>`;return{range:le.cursor(f+_.length,-1),changes:{from:f,insert:_}}}}else if(n==">"){let v=MY(g);if(v&&v.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(a.doc.sliceString(f,f+2))&&(m=fQ(a.doc,v,f)))return{range:h,changes:{from:f,insert:`</${m}>`}}}}return{range:h}});return c.changes.empty?!1:(t.dispatch([s,a.update(c,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),DY=135,pQ=1,BY=136,LY=137,XA=2,XY=138,NY=3,ZY=4,NA=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],WY=58,qY=40,ZA=95,IY=91,ig=45,VY=46,YY=35,HY=37,UY=38,GY=92,FY=10,KY=42;function id(t){return t>=65&&t<=90||t>=97&&t<=122||t>=161}function Xb(t){return t>=48&&t<=57}function gQ(t){return Xb(t)||t>=97&&t<=102||t>=65&&t<=70}const WA=(t,e,i)=>(n,r)=>{for(let s=!1,a=0,c=0;;c++){let{next:h}=n;if(id(h)||h==ig||h==ZA||s&&Xb(h))!s&&(h!=ig||c>0)&&(s=!0),a===c&&h==ig&&a++,n.advance();else if(h==GY&&n.peek(1)!=FY){if(n.advance(),gQ(n.next)){do n.advance();while(gQ(n.next));n.next==32&&n.advance()}else n.next>-1&&n.advance();s=!0}else{s&&n.acceptToken(a==2&&r.canShift(XA)?e:h==qY?i:t);break}}},JY=new Zi(WA(BY,XA,LY),{contextual:!0}),eH=new Zi(WA(XY,NY,ZY),{contextual:!0}),tH=new Zi(t=>{if(NA.includes(t.peek(-1))){let{next:e}=t;(id(e)||e==ZA||e==YY||e==VY||e==KY||e==IY||e==WY&&id(t.peek(1))||e==ig||e==UY)&&t.acceptToken(DY)}}),iH=new Zi(t=>{if(!NA.includes(t.peek(-1))){let{next:e}=t;if(e==HY&&(t.advance(),t.acceptToken(pQ)),id(e)){do t.advance();while(id(t.next)||Xb(t.next));t.acceptToken(pQ)}}}),nH=fa({"AtKeyword import charset namespace keyframes media supports font-feature-values":q.definitionKeyword,"from to selector scope MatchFlag":q.keyword,NamespaceName:q.namespace,KeyframeName:q.labelName,KeyframeRangeName:q.operatorKeyword,TagName:q.tagName,ClassName:q.className,PseudoClassName:q.constant(q.className),IdName:q.labelName,"FeatureName PropertyName":q.propertyName,AttributeName:q.attributeName,NumberLiteral:q.number,KeywordQuery:q.keyword,UnaryQueryOp:q.operatorKeyword,"CallTag ValueName FontName":q.atom,VariableName:q.variableName,Callee:q.operatorKeyword,Unit:q.unit,"UniversalSelector NestingSelector":q.definitionOperator,"MatchOp CompareOp":q.compareOperator,"ChildOp SiblingOp, LogicOp":q.logicOperator,BinOp:q.arithmeticOperator,Important:q.modifier,Comment:q.blockComment,ColorLiteral:q.color,"ParenthesizedContent StringLiteral":q.string,":":q.punctuation,"PseudoOp #":q.derefOperator,"; , |":q.separator,"( )":q.paren,"[ ]":q.squareBracket,"{ }":q.brace}),rH={__proto__:null,lang:44,"nth-child":44,"nth-last-child":44,"nth-of-type":44,"nth-last-of-type":44,dir:44,"host-context":44,if:90,url:132,"url-prefix":132,domain:132,regexp:132},sH={__proto__:null,or:104,and:104,not:112,only:112,layer:186},oH={__proto__:null,selector:118,layer:182},aH={__proto__:null,"@import":178,"@media":190,"@charset":194,"@namespace":198,"@keyframes":204,"@supports":216,"@scope":220,"@font-feature-values":226},lH={__proto__:null,to:223},cH=ua.deserialize({version:14,states:"IpQYQdOOO#}QdOOP$UO`OOO%OQaO'#CfOOQP'#Ce'#CeO%VQdO'#CgO%[Q`O'#CgO%aQaO'#FdO&XQdO'#CkO&xQaO'#CcO'SQdO'#CnO'_QdO'#DtO'dQdO'#DvO'oQdO'#D}O'oQdO'#EQOOQP'#Fd'#FdO)OQhO'#EsOOQS'#Fc'#FcOOQS'#Ev'#EvQYQdOOO)VQdO'#EWO*cQhO'#E^O)VQdO'#E`O*jQdO'#EbO*uQdO'#EeO)zQhO'#EkO*}QdO'#EmO+YQdO'#EpO+_QaO'#CfO+fQ`O'#ETO+kQ`O'#FnO+vQdO'#FnQOQ`OOP,QO&jO'#CaPOOO)CAR)CAROOQP'#Ci'#CiOOQP,59R,59RO%VQdO,59ROOQP'#Cm'#CmOOQP,59V,59VO&XQdO,59VO,]QdO,59YO'_QdO,5:`O'dQdO,5:bO'oQdO,5:iO'oQdO,5:kO'oQdO,5:lO'oQdO'#E}O,hQ`O,58}O,pQdO'#ESOOQS,58},58}OOQP'#Cq'#CqOOQO'#Dr'#DrOOQP,59Y,59YO,wQ`O,59YO,|Q`O,59YOOQP'#Du'#DuOOQP,5:`,5:`O-RQpO'#DwO-^QdO'#DxO-cQ`O'#DxO-hQpO,5:bO.RQaO,5:iO.iQaO,5:lOOQW'#D^'#D^O/eQhO'#DgO/xQhO,5;_O)zQhO'#DeO0VQ`O'#DkO0[QhO'#DnOOQW'#Fj'#FjOOQS,5;_,5;_O0aQ`O'#DhOOQS-E8t-E8tOOQ['#Cv'#CvO0fQdO'#CwO0|QdO'#C}O1dQdO'#DQO1zQ!pO'#DSO4TQ!jO,5:rOOQO'#DX'#DXO,|Q`O'#DWO4eQ!nO'#FgO6hQ`O'#DYO6mQ`O'#DoOOQ['#Fg'#FgO6rQhO'#FqO7QQ`O,5:xO7VQ!bO,5:zOOQS'#Ed'#EdO7_Q`O,5:|O7dQdO,5:|OOQO'#Eg'#EgO7lQ`O,5;PO7qQhO,5;VO'oQdO'#DjOOQS,5;X,5;XO0aQ`O,5;XO7yQdO,5;XOOQS'#FU'#FUO8RQdO'#ErO7QQ`O,5;[O8ZQdO,5:oO8kQdO'#FPO8xQ`O,5<YO8xQ`O,5<YPOOO'#Eu'#EuP9TO&jO,58{POOO,58{,58{OOQP1G.m1G.mOOQP1G.q1G.qOOQP1G.t1G.tO,wQ`O1G.tO,|Q`O1G.tOOQP1G/z1G/zO9`QpO1G/|O9hQaO1G0TO:OQaO1G0VO:fQaO1G0WO:|QaO,5;iOOQO-E8{-E8{OOQS1G.i1G.iO;WQ`O,5:nO;]QdO'#DsO;dQdO'#CuOOQO'#Dz'#DzOOQO,5:d,5:dO-^QdO,5:dOOQP1G/|1G/|O)VQdO1G/|O;kQ!jO'#D^O;yQ!bO,59yO<RQhO,5:ROOQO'#Fk'#FkO;|Q!bO,59}O<ZQhO'#FVO)zQhO,59{O)zQhO'#FVO=OQhO1G0yOOQS1G0y1G0yO=YQhO,5:PO>QQhO'#DlOOQW,5:V,5:VOOQW,5:Y,5:YOOQW,5:S,5:SO>[Q!fO'#FhOOQS'#Fh'#FhOOQS'#Ex'#ExO?lQdO,59cOOQ[,59c,59cO@SQdO,59iOOQ[,59i,59iO@jQdO,59lOOQ[,59l,59lOOQ[,59n,59nO)VQdO,59pOAQQhO'#EYOOQW'#EY'#EYOAlQ`O1G0^O4^QhO1G0^OOQ[,59r,59rO)zQhO'#D[OOQ[,59t,59tOAqQ#tO,5:ZOA|QhO'#FROBZQ`O,5<]OOQS1G0d1G0dOOQS1G0f1G0fOOQS1G0h1G0hOBfQ`O1G0hOBkQdO'#EhOOQS1G0k1G0kOOQS1G0q1G0qOBvQaO,5:UO7QQ`O1G0sOOQS1G0s1G0sO0aQ`O1G0sOOQS-E9S-E9SOOQS1G0v1G0vOB}Q!fO1G0ZOCeQ`O'#EVOOQO1G0Z1G0ZOOQO,5;k,5;kOCjQdO,5;kOOQO-E8}-E8}OCwQ`O1G1tPOOO-E8s-E8sPOOO1G.g1G.gOOQP7+$`7+$`OOQP7+%h7+%hO)VQdO7+%hOOQS1G0Y1G0YODSQaO'#FmOD^Q`O,5:_ODcQ!fO'#EwOEaQdO'#FfOEkQ`O,59aOOQO1G0O1G0OOEpQ!bO7+%hO)VQdO1G/eOE{QhO1G/iOOQW1G/m1G/mOOQW1G/g1G/gOF^QhO,5;qOOQW-E9T-E9TOOQS7+&e7+&eOGRQhO'#D^OGaQhO'#FlOGlQ`O'#FlOGqQ`O,5:WOOQS-E8v-E8vOOQ[1G.}1G.}OOQ[1G/T1G/TOOQ[1G/W1G/WOOQ[1G/[1G/[OGvQdO,5:tOOQS7+%x7+%xOG{Q`O7+%xOHQQhO'#D]OHYQ`O,59vO)zQhO,59vOOQ[1G/u1G/uOHbQ`O1G/uOHgQhO,5;mOOQO-E9P-E9POOQS7+&S7+&SOHuQbO'#DSOOQO'#Ej'#EjOITQ`O'#EiOOQO'#Ei'#EiOI`Q`O'#FSOIhQdO,5;SOOQS,5;S,5;SOOQ[1G/p1G/pOOQS7+&_7+&_O7QQ`O7+&_OIsQ!fO'#FOO)VQdO'#FOOJzQdO7+%uOOQO7+%u7+%uOOQO,5:q,5:qOOQO1G1V1G1VOK_Q!bO<<ISOKjQdO'#E|OKtQ`O,5<XOOQP1G/y1G/yOOQS-E8u-E8uOK|QdO'#E{OLWQ`O,5<QOOQ]1G.{1G.{OOQP<<IS<<ISOL`Q`O<<ISOLeQdO7+%POOQO'#D`'#D`OLlQ!bO7+%TOLtQhO'#EzOMRQ`O,5<WO)VQdO,5<WOOQW1G/r1G/rOOQO'#E['#E[OMZQ`O1G0`OOQS<<Id<<IdO)VQdO,59wOMzQhO1G/bOOQ[1G/b1G/bONRQ`O1G/bOOQW-E8w-E8wOOQ[7+%a7+%aOOQO,5;T,5;TOBnQdO'#FTOI`Q`O,5;nOOQS,5;n,5;nOOQS-E9Q-E9QOOQS1G0n1G0nOOQS<<Iy<<IyONZQ!fO,5;jOOQS-E8|-E8|OOQO<<Ia<<IaOOQPAN>nAN>nO! bQ`OAN>nO! gQaO,5;hOOQO-E8z-E8zO! qQdO,5;gOOQO-E8y-E8yOOQW<<Hk<<HkOOQW<<Ho<<HoO! {QhO<<HoO!!^QhO,5;fO!!iQ`O,5;fOOQO-E8x-E8xO!!nQdO1G1rOGvQdO'#FQO!!xQ`O7+%zOOQW7+%z7+%zO!#QQ!bO1G/cOOQ[7+$|7+$|O!#]QhO7+$|P!#dQ`O'#EyOOQO,5;o,5;oOOQO-E9R-E9ROOQS1G1Y1G1YOOQPG24YG24YO!#iQ`OAN>ZO)VQdO1G1QO!#nQ`O7+'^OOQO,5;l,5;lOOQO-E9O-E9OOOQW<<If<<IfOOQ[<<Hh<<HhPOQW,5;e,5;eOOQWG23uG23uO!#vQdO7+&l",stateData:"!$Z~O$QOS$RQQ~OWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|RO$XTO~OQmOWVO^_O`WOcYOdYOl`OmZOp[O!r]O!u^O!{dO#ReO#TfO#VgO#YhO#`iO#bjO#ekO#|lO$XTO~O#z$bP~P!jO$RqO~O`YXcYXdYXmYXpYXsYX!aYX!rYX!uYX#{YX$X[X~OgYX~P$ZO#|sO~O$XuO~O$XuO`$WXc$WXd$WXm$WXp$WXs$WX!a$WX!r$WX!u$WX#{$WXg$WX~O#|vO~O`xOcyOdyOmzOp{O!r|O!u!OO#{}O~Os!RO!a!PO~P&^Of!XO#|!TO#}!UO~O#|!YO~OW!^O#|![O$X!]O~OWVO^_O`WOcYOdYOmZOp[O!r]O!u^O#|RO$XTO~OS!fOc!gOd!gOh!cOs!RO!Y!eO!]!jO$O!bO~On!iO~P(dOQ!tOh!mOp!nOs!oOu!wOw!wO}!uO!d!vO#|!lO#}!rO$]!pO~OS!fOc!gOd!gOh!cO!Y!eO!]!jO$O!bO~Os$eP~P)zOw!|O!d!vO#|!{O~Ow#OO#|#OO~Oh#ROs!RO#c#TO~O#|#VO~Oc!xX~P$ZOc#YO~On#ZO#z$bXr$bX~O#z$bXr$bX~P!jO$S#^O$T#^O$U#`O~Of#eO#|!TO#}!UO~Os!RO!a!PO~Or$bP~P!jOh#oO~Oh#pO~Oo!kX!o!kX$X!mX~O#|#qO~O$X#sO~Oo#tO!o#uO~O`xOcyOdyOmzOp{O~Os!qa!a!qa!r!qa!u!qa#{!qag!qa~P-pOs!ta!a!ta!r!ta!u!ta#{!tag!ta~P-pOS!fOc!gOd!gOh!cO!Y!eO!]!jO~OR#yOu#yOw#yO$O#vO$]!pO~P/POn$PO!U#|O!a#}O~P(dOh$RO~O$O$TO~Oh#RO~O`$WOc$WOg$ZOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo$]O~P)VO`$WOc$WOl$WOm$WOn$WOr$_O~P)VOP$`OSvXcvXdvXhvXnvXyvX!YvX!]vX!}vX#PvX$OvX!WvXQvX`vXgvXlvXmvXpvXsvXuvXwvX}vX!dvX#|vX#}vX$]vXovXrvX!avX#zvX$dvX!pvX~Oy$aO!}$bO#P$cOn$eP~P)zOh#pOS$ZXc$ZXd$ZXn$ZXy$ZX!Y$ZX!]$ZX!}$ZX#P$ZX$O$ZXQ$ZX`$ZXg$ZXl$ZXm$ZXp$ZXs$ZXu$ZXw$ZX}$ZX!d$ZX#|$ZX#}$ZX$]$ZXo$ZXr$ZX!a$ZX#z$ZX$d$ZX!p$ZX~Oh$gO~Oh$iO~O!U#|O!a$jOs$eXn$eX~Os!RO~On$mOy$aO~On$nO~Ow$oO!d!vO~Os$pO~Os!RO!U#|O~Os!RO#c$vO~O#|#VOs#fX~O$d$zOn!wa#z!war!wa~P)VOn#sX#z#sXr#sX~P!jOn#ZO#z$bar$ba~O$S#^O$T#^O$U%RO~Oo%TO!o%UO~Os!qi!a!qi!r!qi!u!qi#{!qig!qi~P-pOs!si!a!si!r!si!u!si#{!sig!si~P-pOs!ti!a!ti!r!ti!u!ti#{!tig!ti~P-pOs#qa!a#qa~P&^Or%VO~Og$aP~P'oOg$YP~P)VOc!SXg!QX!U!QX!W!SX~Oc%_O!W%`O~Og%aO!U#|O~O!U#|OS#yXc#yXd#yXh#yXn#yXs#yX!Y#yX!]#yX!a#yX$O#yX~On%eO!a#}O~P(dO!U#|OS!Xac!Xad!Xah!Xan!Xas!Xa!Y!Xa!]!Xa!a!Xa$O!Xag!Xa~O$O%fOg$`P~P/POy$aOQ$[X`$[Xc$[Xg$[Xh$[Xl$[Xm$[Xn$[Xp$[Xs$[Xu$[Xw$[X}$[X!d$[X#|$[X#}$[X$]$[Xo$[Xr$[X~O`$WOc$WOg%kOl$WOm$WOn$WO~P)VO`$WOc$WOl$WOm$WOn$WOo%lO~P)VO`$WOc$WOl$WOm$WOn$WOr%mO~P)VOh%oOS!|Xc!|Xd!|Xn!|X!Y!|X!]!|X$O!|X~On%pO~Og%uOw%vO!e%vO~Os#uX!a#uXn#uX~P)zO!a$jOs$ean$ea~On%yO~Or&QO#|%{O$]%zO~Og&RO~P&^Oy$aO!a&VO$d$zOn!wi#z!wir!wi~P)VO$c&YO~On#sa#z#sar#sa~P!jOn#ZO#z$bir$bi~O!a&]Og$aX~P&^Og&_O~Oy$aOQ#kXg#kXh#kXp#kXs#kXu#kXw#kX}#kX!a#kX!d#kX#|#kX#}#kX$]#kX~O!a&aOg$YX~P)VOg&cO~Oo&dOy$aO!p&eO~OR#yOu#yOw#yO$O&gO$]!pO~O!U#|OS#yac#yad#yah#yan#yas#ya!Y#ya!]#ya!a#ya$O#ya~Oc!SXg!QX!U!QX!a!QX~O!U#|O!a&iOg$`X~Oc&kO~Og&lO~O#|&mO~On&oO~Oc&pO!U#|O~Og&rOn&qO~Og&uO~O!U#|Os#ua!a#uan#ua~OP$`OsvX!avXgvX~O$]%zOs#]X!a#]X~Os!RO!a&wO~Or&{O#|%{O$]%zO~Oy$aOQ#rXh#rXn#rXp#rXs#rXu#rXw#rX}#rX!a#rX!d#rX#z#rX#|#rX#}#rX$]#rX$d#rXr#rX~O!a&VO$d$zOn!wq#z!wqr!wq~P)VOo'QOy$aO!p'RO~Og#pX!a#pX~P'oO!a&]Og$aa~Og#oX!a#oX~P)VO!a&aOg$Ya~Oo'QO~Og'WO~P)VOg'XO!W'YO~O$O%fOg#nX!a#nX~P/PO!a&iOg$`a~O`'_Og'aO~OS#mac#mad#mah#ma!Y#ma!]#ma$O#ma~Og'cO~PMcOg'cOn'dO~Oy$aOQ#rah#ran#rap#ras#rau#raw#ra}#ra!a#ra!d#ra#z#ra#|#ra#}#ra$]#ra$d#rar#ra~Oo'iO~Og#pa!a#pa~P&^Og#oa!a#oa~P)VOR#yOu#yOw#yO$O&gO$]%zO~O!U#|Og#na!a#na~Oc'kO~O!a&iOg$`i~P)VO`'_Og'oO~Oy$aOg!Pin!Pi~Og'pO~PMcOn'qO~Og'rO~O!a&iOg$`q~Og#nq!a#nq~P)VO$Q!e$R$]`$]y!u~",goto:"4h$fPPPPP$gP$jP$s%V$s%i%{P$sP&R$sPP&XPPP&_&i&iPPPPP&iPP&iP'VP&iP&i(Q&iP(n(q(w(w)Z(wP(wP(wP(w(wP)j(w)vP(w)yPP*m*s$s*y$s+P+P+V+ZPP$sP$s$sP+a,],j,q$jP,zP,}P$jP$jP$jP-T$jP-W-Z-^-e$jP$jPP$jP-j$jP-m-s.S.j.x/O/Y/`/f/l/r/|0S0Y0`0f0lPPPPPPPPPPP0r0{P1q1t2vP3O3x4R4U4XPP4_RrQ_aOPco!R#Z$}q_OP]^co|}!O!P!R#R#Z#o$}&]qSOP]^co|}!O!P!R#R#Z#o$}&]qUOP]^co|}!O!P!R#R#Z#o$}&]QtTR#auQwWR#bxQ!VYR#cyQ#c!XS$f!s!tR%S#e!V!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k's!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sU#y!c%`'YU%}$p&P&wR&v%|!V!sdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sR$h!uQ%s$gR&s%tq!h`ei!c!d!e!q#|#}$O$R$e$g$j%t&iQ#w!cQ%h$RQ&h%`Q'[&iR'j'YQ#UjQ$U!jQ$t#TR&T$vR$S!f!U!wdf!m!n!o#Y#p#u$Y$[$^$a$y%U%Z%_&V&W&a&f&k&p'U'^'k'sQ!|gR$o!}Q!WYR#dyQ#c!WR%S#dQ!ZZR#fzQ!_[R#g{T!^[{Q#r!]R%]#sQ!SXQ!i`Q#SjQ#m!QQ$P!dQ$l!yQ$r#QQ$u#UQ$x#XQ%e$OQ&S$tQ&y&OQ&|&TR'h&xSnP!RQ#]oQ$|#ZR&Z$}ZmPo!R#Z$}Q${#YQ&X$yR'P&WR$e!qQ&n%oR'm'_R!}gR#PhR$q#PS&O$p&PR'f&wV%|$p&P&wR#XkQ#_qR%Q#_QcOSoP!RU!kco$}R$}#ZQ%Z#pY&`%Z&f'U'^'sQ&f%_Q'U&aQ'^&kR's'kQ$Y!mQ$[!nQ$^!oV%j$Y$[$^Q%t$gR&t%tQ&j%gS']&j'lR'l'^Q&b%ZR'V&bQ&^%WR'T&^Q!QXR#l!QQ&W$yR'O&WQ#[nS%O#[%PR%P#]Q'`&nR'n'`Q$k!xR%x$kQ&P$pR&z&PQ&x&OR'g&xQ#WkR$w#WQ$O!dR%d$O_bOPco!R#Z$}^XOPco!R#Z$}Q!`]Q!a^Q#h|Q#i}Q#j!OQ#k!PQ$s#RQ%W#oR'S&]R%[#pQ!qdQ!zf[$V!m!n!o$Y$[$^Q$y#Yd%Y#p%Z%_&a&f&k'U'^'k'sQ%^#uQ%n$aS&U$y&WQ&[%UQ&}&VR'b&p]$X!m!n!o$Y$[$^Q!d`U!xe!q$eQ#QiQ#x!cS#{!d$OQ$Q!eQ%b#|Q%c#}Q%g$RS%r$g%tQ%w$jR'Z&iQ#z!cQ&h%`R'j'YR%i$RR%X#oQpPR#n!RQ!yeQ$d!qR%q$e",nodeNames:"⚠ Unit VariableName VariableName QueryCallee Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NamespacedTagSelector NamespaceName TagName NestingSelector ClassSelector . ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue AtKeyword # ; ] [ BracketedValue } { BracedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee IfExpression if ArgList IfBranch KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp ComparisonQuery CompareOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector ParenthesizedSelector CallQuery ArgList , PseudoQuery CallLiteral CallTag ParenthesizedContent PseudoClassName ArgList IdSelector IdName AttributeSelector AttributeName NamespacedAttribute NamespaceName AttributeName MatchOp MatchFlag ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp Block Declaration PropertyName Important ImportStatement import Layer layer LayerName layer MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports ScopeStatement scope to FontFeatureStatement font-feature-values FontName AtRule Styles",maxTerm:159,nodeProps:[["isolate",-2,5,39,""],["openedBy",23,"(",31,"[",34,"{"],["closedBy",24,")",32,"]",35,"}"]],propSources:[nH],skippedNodes:[0,5,117],repeatNodeCount:17,tokenData:"K`~R!bOX%ZX^&R^p%Zpq&Rqr)ers)vst+jtu2Xuv%Zvw3Rwx3dxy5Ryz5dz{5i{|6S|}:u}!O;W!O!P;u!P!Q<^!Q![=V![!]>Q!]!^>|!^!_?_!_!`@Z!`!a@n!a!b%Z!b!cAo!c!k%Z!k!lC|!l!u%Z!u!vC|!v!}%Z!}#OD_#O#P%Z#P#QDp#Q#R2X#R#]%Z#]#^ER#^#g%Z#g#hC|#h#o%Z#o#pIf#p#qIw#q#rJ`#r#sJq#s#y%Z#y#z&R#z$f%Z$f$g&R$g#BY%Z#BY#BZ&R#BZ$IS%Z$IS$I_&R$I_$I|%Z$I|$JO&R$JO$JT%Z$JT$JU&R$JU$KV%Z$KV$KW&R$KW&FU%Z&FU&FV&R&FV;'S%Z;'S;=`KY<%lO%Z`%^SOy%jz;'S%j;'S;=`%{<%lO%j`%oS!e`Oy%jz;'S%j;'S;=`%{<%lO%j`&OP;=`<%l%j~&Wh$Q~OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%j~'yh$Q~!e`OX%jX^'r^p%jpq'rqy%jz#y%j#y#z'r#z$f%j$f$g'r$g#BY%j#BY#BZ'r#BZ$IS%j$IS$I_'r$I_$I|%j$I|$JO'r$JO$JT%j$JT$JU'r$JU$KV%j$KV$KW'r$KW&FU%j&FU&FV'r&FV;'S%j;'S;=`%{<%lO%jj)jS$dYOy%jz;'S%j;'S;=`%{<%lO%j~)yWOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d<%lO)v~*hOw~~*kRO;'S)v;'S;=`*t;=`O)v~*wXOY)vZr)vrs*cs#O)v#O#P*h#P;'S)v;'S;=`+d;=`<%l)v<%lO)v~+gP;=`<%l)vj+oYmYOy%jz!Q%j!Q![,_![!c%j!c!i,_!i#T%j#T#Z,_#Z;'S%j;'S;=`%{<%lO%jj,dY!e`Oy%jz!Q%j!Q![-S![!c%j!c!i-S!i#T%j#T#Z-S#Z;'S%j;'S;=`%{<%lO%jj-XY!e`Oy%jz!Q%j!Q![-w![!c%j!c!i-w!i#T%j#T#Z-w#Z;'S%j;'S;=`%{<%lO%jj.OYuY!e`Oy%jz!Q%j!Q![.n![!c%j!c!i.n!i#T%j#T#Z.n#Z;'S%j;'S;=`%{<%lO%jj.uYuY!e`Oy%jz!Q%j!Q![/e![!c%j!c!i/e!i#T%j#T#Z/e#Z;'S%j;'S;=`%{<%lO%jj/jY!e`Oy%jz!Q%j!Q![0Y![!c%j!c!i0Y!i#T%j#T#Z0Y#Z;'S%j;'S;=`%{<%lO%jj0aYuY!e`Oy%jz!Q%j!Q![1P![!c%j!c!i1P!i#T%j#T#Z1P#Z;'S%j;'S;=`%{<%lO%jj1UY!e`Oy%jz!Q%j!Q![1t![!c%j!c!i1t!i#T%j#T#Z1t#Z;'S%j;'S;=`%{<%lO%jj1{SuY!e`Oy%jz;'S%j;'S;=`%{<%lO%jd2[UOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jd2uS!oS!e`Oy%jz;'S%j;'S;=`%{<%lO%jb3WS^QOy%jz;'S%j;'S;=`%{<%lO%j~3gWOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{<%lO3d~4SRO;'S3d;'S;=`4];=`O3d~4`XOY3dZw3dwx*cx#O3d#O#P4P#P;'S3d;'S;=`4{;=`<%l3d<%lO3d~5OP;=`<%l3dj5WShYOy%jz;'S%j;'S;=`%{<%lO%j~5iOg~n5pUWQyWOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jj6ZWyW!uQOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj6xU!e`Oy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%jj7cY!e`$]YOy%jz!Q%j!Q![7[![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj8WY!e`Oy%jz{%j{|8v|}%j}!O8v!O!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj8{U!e`Oy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj9fU!e`$]YOy%jz!Q%j!Q![9_![;'S%j;'S;=`%{<%lO%jj:P[!e`$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj:zS!aYOy%jz;'S%j;'S;=`%{<%lO%jj;]WyWOy%jz!O%j!O!P6s!P!Q%j!Q![9x![;'S%j;'S;=`%{<%lO%jj;zU`YOy%jz!Q%j!Q![7[![;'S%j;'S;=`%{<%lO%j~<cTyWOy%jz{<r{;'S%j;'S;=`%{<%lO%j~<yS!e`$R~Oy%jz;'S%j;'S;=`%{<%lO%jj=[[$]YOy%jz!O%j!O!P7[!P!Q%j!Q![9x![!g%j!g!h8R!h#X%j#X#Y8R#Y;'S%j;'S;=`%{<%lO%jj>VUcYOy%jz![%j![!]>i!];'S%j;'S;=`%{<%lO%jj>pSdY!e`Oy%jz;'S%j;'S;=`%{<%lO%jj?RSnYOy%jz;'S%j;'S;=`%{<%lO%jh?dU!WWOy%jz!_%j!_!`?v!`;'S%j;'S;=`%{<%lO%jh?}S!WW!e`Oy%jz;'S%j;'S;=`%{<%lO%jl@bS!WW!oSOy%jz;'S%j;'S;=`%{<%lO%jj@uV!rQ!WWOy%jz!_%j!_!`?v!`!aA[!a;'S%j;'S;=`%{<%lO%jbAcS!rQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjArYOy%jz}%j}!OBb!O!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjBgW!e`Oy%jz!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jjCW[lY!e`Oy%jz}%j}!OCP!O!Q%j!Q![CP![!c%j!c!}CP!}#T%j#T#oCP#o;'S%j;'S;=`%{<%lO%jhDRS!pWOy%jz;'S%j;'S;=`%{<%lO%jjDdSpYOy%jz;'S%j;'S;=`%{<%lO%jnDuSo^Oy%jz;'S%j;'S;=`%{<%lO%jjEWU!pWOy%jz#a%j#a#bEj#b;'S%j;'S;=`%{<%lO%jbEoU!e`Oy%jz#d%j#d#eFR#e;'S%j;'S;=`%{<%lO%jbFWU!e`Oy%jz#c%j#c#dFj#d;'S%j;'S;=`%{<%lO%jbFoU!e`Oy%jz#f%j#f#gGR#g;'S%j;'S;=`%{<%lO%jbGWU!e`Oy%jz#h%j#h#iGj#i;'S%j;'S;=`%{<%lO%jbGoU!e`Oy%jz#T%j#T#UHR#U;'S%j;'S;=`%{<%lO%jbHWU!e`Oy%jz#b%j#b#cHj#c;'S%j;'S;=`%{<%lO%jbHoU!e`Oy%jz#h%j#h#iIR#i;'S%j;'S;=`%{<%lO%jbIYS$cQ!e`Oy%jz;'S%j;'S;=`%{<%lO%jjIkSsYOy%jz;'S%j;'S;=`%{<%lO%jfI|U$XUOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%jjJeSrYOy%jz;'S%j;'S;=`%{<%lO%jfJvU!uQOy%jz!_%j!_!`2n!`;'S%j;'S;=`%{<%lO%j`K]P;=`<%l%Z",tokenizers:[tH,iH,JY,eH,1,2,3,4,new Kg("m~RRYZ[z{a~~g~aO$T~~dP!P!Qg~lO$U~~",28,142)],topRules:{StyleSheet:[0,6],Styles:[1,116]},dynamicPrecedences:{84:1},specialized:[{term:137,get:t=>rH[t]||-1},{term:138,get:t=>sH[t]||-1},{term:4,get:t=>oH[t]||-1},{term:28,get:t=>aH[t]||-1},{term:136,get:t=>lH[t]||-1}],tokenPrec:2256});let Hv=null;function Uv(){if(!Hv&&typeof document=="object"&&document.body){let{style:t}=document.body,e=[],i=new Set;for(let n in t)n!="cssText"&&n!="cssFloat"&&typeof t[n]=="string"&&(/[A-Z]/.test(n)&&(n=n.replace(/[A-Z]/g,r=>"-"+r.toLowerCase())),i.has(n)||(e.push(n),i.add(n)));Hv=e.sort().map(n=>({type:"property",label:n,apply:n+": "}))}return Hv||[]}const mQ=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(t=>({type:"class",label:t})),OQ=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(t=>({type:"keyword",label:t})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(t=>({type:"constant",label:t}))),hH=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(t=>({type:"type",label:t})),uH=["@charset","@color-profile","@container","@counter-style","@font-face","@font-feature-values","@font-palette-values","@import","@keyframes","@layer","@media","@namespace","@page","@position-try","@property","@scope","@starting-style","@supports","@view-transition"].map(t=>({type:"keyword",label:t})),js=/^(\w[\w-]*|-\w[\w-]*|)$/,dH=/^-(-[\w-]*)?$/;function fH(t,e){var i;if((t.name=="("||t.type.isError)&&(t=t.parent||t),t.name!="ArgList")return!1;let n=(i=t.parent)===null||i===void 0?void 0:i.firstChild;return(n==null?void 0:n.name)!="Callee"?!1:e.sliceString(n.from,n.to)=="var"}const vQ=new Ob,pH=["Declaration"];function gH(t){for(let e=t;;){if(e.type.isTop)return e;if(!(e=e.parent))return t}}function qA(t,e,i){if(e.to-e.from>4096){let n=vQ.get(e);if(n)return n;let r=[],s=new Set,a=e.cursor(gt.IncludeAnonymous);if(a.firstChild())do for(let c of qA(t,a.node,i))s.has(c.label)||(s.add(c.label),r.push(c));while(a.nextSibling());return vQ.set(e,r),r}else{let n=[],r=new Set;return e.cursor().iterate(s=>{var a;if(i(s)&&s.matchContext(pH)&&((a=s.node.nextSibling)===null||a===void 0?void 0:a.name)==":"){let c=t.sliceString(s.from,s.to);r.has(c)||(r.add(c),n.push({label:c,type:"variable"}))}}),n}}const mH=t=>e=>{let{state:i,pos:n}=e,r=Qt(i).resolveInner(n,-1),s=r.type.isError&&r.from==r.to-1&&i.doc.sliceString(r.from,r.to)=="-";if(r.name=="PropertyName"||(s||r.name=="TagName")&&/^(Block|Styles)$/.test(r.resolve(r.to).name))return{from:r.from,options:Uv(),validFor:js};if(r.name=="ValueName")return{from:r.from,options:OQ,validFor:js};if(r.name=="PseudoClassName")return{from:r.from,options:mQ,validFor:js};if(t(r)||(e.explicit||s)&&fH(r,i.doc))return{from:t(r)||s?r.from:n,options:qA(i.doc,gH(r),t),validFor:dH};if(r.name=="TagName"){for(let{parent:h}=r;h;h=h.parent)if(h.name=="Block")return{from:r.from,options:Uv(),validFor:js};return{from:r.from,options:hH,validFor:js}}if(r.name=="AtKeyword")return{from:r.from,options:uH,validFor:js};if(!e.explicit)return null;let a=r.resolve(n),c=a.childBefore(n);return c&&c.name==":"&&a.name=="PseudoClassSelector"?{from:n,options:mQ,validFor:js}:c&&c.name==":"&&a.name=="Declaration"||a.name=="ArgList"?{from:n,options:OQ,validFor:js}:a.name=="Block"||a.name=="Styles"?{from:n,options:Uv(),validFor:js}:null},OH=mH(t=>t.name=="VariableName"),Jg=ca.define({name:"css",parser:cH.configure({props:[gl.add({Declaration:_c()}),pa.add({"Block KeyframeList":$m})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function IA(){return new cl(Jg,Jg.data.of({autocomplete:OH}))}const vH=55,yH=1,SH=56,bH=2,_H=57,xH=3,yQ=4,wH=5,Nb=6,VA=7,YA=8,HA=9,UA=10,kH=11,CH=12,TH=13,Gv=58,QH=14,$H=15,SQ=59,GA=21,PH=23,FA=24,EH=25,AS=27,KA=28,RH=29,AH=32,MH=35,zH=37,jH=38,DH=0,BH=1,LH={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},XH={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},bQ={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function NH(t){return t==45||t==46||t==58||t>=65&&t<=90||t==95||t>=97&&t<=122||t>=161}let _Q=null,xQ=null,wQ=0;function MS(t,e){let i=t.pos+e;if(wQ==i&&xQ==t)return _Q;let n=t.peek(e),r="";for(;NH(n);)r+=String.fromCharCode(n),n=t.peek(++e);return xQ=t,wQ=i,_Q=r?r.toLowerCase():n==ZH||n==WH?void 0:null}const JA=60,em=62,Zb=47,ZH=63,WH=33,qH=45;function kQ(t,e){this.name=t,this.parent=e}const IH=[Nb,UA,VA,YA,HA],VH=new Lb({start:null,shift(t,e,i,n){return IH.indexOf(e)>-1?new kQ(MS(n,1)||"",t):t},reduce(t,e){return e==GA&&t?t.parent:t},reuse(t,e,i,n){let r=e.type.id;return r==Nb||r==zH?new kQ(MS(n,1)||"",t):t},strict:!1}),YH=new Zi((t,e)=>{if(t.next!=JA){t.next<0&&e.context&&t.acceptToken(Gv);return}t.advance();let i=t.next==Zb;i&&t.advance();let n=MS(t,0);if(n===void 0)return;if(!n)return t.acceptToken(i?$H:QH);let r=e.context?e.context.name:null;if(i){if(n==r)return t.acceptToken(kH);if(r&&XH[r])return t.acceptToken(Gv,-2);if(e.dialectEnabled(DH))return t.acceptToken(CH);for(let s=e.context;s;s=s.parent)if(s.name==n)return;t.acceptToken(TH)}else{if(n=="script")return t.acceptToken(VA);if(n=="style")return t.acceptToken(YA);if(n=="textarea")return t.acceptToken(HA);if(LH.hasOwnProperty(n))return t.acceptToken(UA);r&&bQ[r]&&bQ[r][n]?t.acceptToken(Gv,-1):t.acceptToken(Nb)}},{contextual:!0}),HH=new Zi(t=>{for(let e=0,i=0;;i++){if(t.next<0){i&&t.acceptToken(SQ);break}if(t.next==qH)e++;else if(t.next==em&&e>=2){i>=3&&t.acceptToken(SQ,-2);break}else e=0;t.advance()}});function UH(t){for(;t;t=t.parent)if(t.name=="svg"||t.name=="math")return!0;return!1}const GH=new Zi((t,e)=>{if(t.next==Zb&&t.peek(1)==em){let i=e.dialectEnabled(BH)||UH(e.context);t.acceptToken(i?wH:yQ,2)}else t.next==em&&t.acceptToken(yQ,1)});function Wb(t,e,i){let n=2+t.length;return new Zi(r=>{for(let s=0,a=0,c=0;;c++){if(r.next<0){c&&r.acceptToken(e);break}if(s==0&&r.next==JA||s==1&&r.next==Zb||s>=2&&s<n&&r.next==t.charCodeAt(s-2))s++,a++;else if(s==n&&r.next==em){c>a?r.acceptToken(e,-a):r.acceptToken(i,-(a-2));break}else if((r.next==10||r.next==13)&&c){r.acceptToken(e,1);break}else s=a=0;r.advance()}})}const FH=Wb("script",vH,yH),KH=Wb("style",SH,bH),JH=Wb("textarea",_H,xH),eU=fa({"Text RawText IncompleteTag IncompleteCloseTag":q.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":q.angleBracket,TagName:q.tagName,"MismatchedCloseTag/TagName":[q.tagName,q.invalid],AttributeName:q.attributeName,"AttributeValue UnquotedAttributeValue":q.attributeValue,Is:q.definitionOperator,"EntityReference CharacterReference":q.character,Comment:q.blockComment,ProcessingInst:q.processingInstruction,DoctypeDecl:q.documentMeta}),tU=ua.deserialize({version:14,states:",xOVO!rOOO!ZQ#tO'#CrO!`Q#tO'#C{O!eQ#tO'#DOO!jQ#tO'#DRO!oQ#tO'#DTO!tOaO'#CqO#PObO'#CqO#[OdO'#CqO$kO!rO'#CqOOO`'#Cq'#CqO$rO$fO'#DUO$zQ#tO'#DWO%PQ#tO'#DXOOO`'#Dl'#DlOOO`'#DZ'#DZQVO!rOOO%UQ&rO,59^O%aQ&rO,59gO%lQ&rO,59jO%wQ&rO,59mO&SQ&rO,59oOOOa'#D_'#D_O&_OaO'#CyO&jOaO,59]OOOb'#D`'#D`O&rObO'#C|O&}ObO,59]OOOd'#Da'#DaO'VOdO'#DPO'bOdO,59]OOO`'#Db'#DbO'jO!rO,59]O'qQ#tO'#DSOOO`,59],59]OOOp'#Dc'#DcO'vO$fO,59pOOO`,59p,59pO(OQ#|O,59rO(TQ#|O,59sOOO`-E7X-E7XO(YQ&rO'#CtOOQW'#D['#D[O(hQ&rO1G.xOOOa1G.x1G.xOOO`1G/Z1G/ZO(sQ&rO1G/ROOOb1G/R1G/RO)OQ&rO1G/UOOOd1G/U1G/UO)ZQ&rO1G/XOOO`1G/X1G/XO)fQ&rO1G/ZOOOa-E7]-E7]O)qQ#tO'#CzOOO`1G.w1G.wOOOb-E7^-E7^O)vQ#tO'#C}OOOd-E7_-E7_O){Q#tO'#DQOOO`-E7`-E7`O*QQ#|O,59nOOOp-E7a-E7aOOO`1G/[1G/[OOO`1G/^1G/^OOO`1G/_1G/_O*VQ,UO,59`OOQW-E7Y-E7YOOOa7+$d7+$dOOO`7+$u7+$uOOOb7+$m7+$mOOOd7+$p7+$pOOO`7+$s7+$sO*bQ#|O,59fO*gQ#|O,59iO*lQ#|O,59lOOO`1G/Y1G/YO*qO7[O'#CwO+SOMhO'#CwOOQW1G.z1G.zOOO`1G/Q1G/QOOO`1G/T1G/TOOO`1G/W1G/WOOOO'#D]'#D]O+eO7[O,59cOOQW,59c,59cOOOO'#D^'#D^O+vOMhO,59cOOOO-E7Z-E7ZOOQW1G.}1G.}OOOO-E7[-E7[",stateData:",c~O!_OS~OUSOVPOWQOXROYTO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O|_O!eZO~OgaO~OgbO~OgcO~OgdO~OgeO~O!XfOPmP![mP~O!YiOQpP![pP~O!ZlORsP![sP~OUSOVPOWQOXROYTOZqO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O!eZO~O![rO~P#gO!]sO!fuO~OgvO~OgwO~OS|OT}OiyO~OS!POT}OiyO~OS!ROT}OiyO~OS!TOT}OiyO~OS}OT}OiyO~O!XfOPmX![mX~OP!WO![!XO~O!YiOQpX![pX~OQ!ZO![!XO~O!ZlORsX![sX~OR!]O![!XO~O![!XO~P#gOg!_O~O!]sO!f!aO~OS!bO~OS!cO~Oj!dOShXThXihX~OS!fOT!gOiyO~OS!hOT!gOiyO~OS!iOT!gOiyO~OS!jOT!gOiyO~OS!gOT!gOiyO~Og!kO~Og!lO~Og!mO~OS!nO~Ol!qO!a!oO!c!pO~OS!rO~OS!sO~OS!tO~Ob!uOc!uOd!uO!a!wO!b!uO~Ob!xOc!xOd!xO!c!wO!d!xO~Ob!uOc!uOd!uO!a!{O!b!uO~Ob!xOc!xOd!xO!c!{O!d!xO~OT~cbd!ey|!e~",goto:"%q!aPPPPPPPPPPPPPPPPPPPPP!b!hP!nPP!zP!}#Q#T#Z#^#a#g#j#m#s#y!bP!b!bP$P$V$m$s$y%P%V%]%cPPPPPPPP%iX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:68,context:VH,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,22,31,34,37,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,30,33,36,38,"OpenTag"],["group",-10,14,15,18,19,20,21,40,41,42,43,"Entity",17,"Entity TextContent",-3,29,32,35,"TextContent Entity"],["isolate",-11,22,30,31,33,34,36,37,38,39,42,43,"ltr",-3,27,28,40,""]],propSources:[eU],skippedNodes:[0],repeatNodeCount:9,tokenData:"!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|caPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bXaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UVaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pTaPOv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!dpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({WaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!b`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!b`!dpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYlWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]`aP!b`!dp!_^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebiSlWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXiSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vciSaP!b`!dpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!ahaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WiiSlWd!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zblWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOb!R!R7tP;=`<%l7S!Z8OYlWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{iiSlWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbiSlWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QciSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXiSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TalWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOc!R!RAwP;=`<%lAY!ZBRYlWc!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbiSlWc!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbiSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXiSc!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!cxaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYliSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_kiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_XaP!b`!dp!fQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZiSgQaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!b`!dpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!b`!dp!ePOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!b`!dpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!b`!dpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!b`!dpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!b`!dpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!b`!dpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!b`!dpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!b`!dpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!dpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO|PP!-nP;=`<%l!-Sq!-xS!dp|POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!b`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!b`|POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!b`!dp|POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!b`!dpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!b`!dpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!b`!dpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!b`!dpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!b`!dpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!b`!dpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!dpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOyPP!7TP;=`<%l!6Vq!7]V!dpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!dpyPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!b`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!b`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!b`yPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!b`!dpyPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXjSaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X",tokenizers:[FH,KH,JH,GH,YH,HH,0,1,2,3,4,5],topRules:{Document:[0,16]},dialects:{noMatch:0,selfClosing:515},tokenPrec:517});function eM(t,e){let i=Object.create(null);for(let n of t.getChildren(FA)){let r=n.getChild(EH),s=n.getChild(AS)||n.getChild(KA);r&&(i[e.read(r.from,r.to)]=s?s.type.id==AS?e.read(s.from+1,s.to-1):e.read(s.from,s.to):"")}return i}function CQ(t,e){let i=t.getChild(PH);return i?e.read(i.from,i.to):" "}function Fv(t,e,i){let n;for(let r of i)if(!r.attrs||r.attrs(n||(n=eM(t.node.parent.firstChild,e))))return{parser:r.parser,bracketed:!0};return null}function tM(t=[],e=[]){let i=[],n=[],r=[],s=[];for(let c of t)(c.tag=="script"?i:c.tag=="style"?n:c.tag=="textarea"?r:s).push(c);let a=e.length?Object.create(null):null;for(let c of e)(a[c.name]||(a[c.name]=[])).push(c);return g5((c,h)=>{let d=c.type.id;if(d==RH)return Fv(c,h,i);if(d==AH)return Fv(c,h,n);if(d==MH)return Fv(c,h,r);if(d==GA&&s.length){let f=c.node,g=f.firstChild,m=g&&CQ(g,h),v;if(m){for(let S of s)if(S.tag==m&&(!S.attrs||S.attrs(v||(v=eM(g,h))))){let _=f.lastChild,w=_.type.id==jH?_.from:f.to;if(w>g.to)return{parser:S.parser,overlay:[{from:g.to,to:w}]}}}}if(a&&d==FA){let f=c.node,g;if(g=f.firstChild){let m=a[h.read(g.from,g.to)];if(m)for(let v of m){if(v.tagName&&v.tagName!=CQ(f.parent,h))continue;let S=f.lastChild;if(S.type.id==AS){let _=S.from+1,w=S.lastChild,x=S.to-(w&&w.isError?0:1);if(x>_)return{parser:v.parser,overlay:[{from:_,to:x}],bracketed:!0}}else if(S.type.id==KA)return{parser:v.parser,overlay:[{from:S.from,to:S.to}]}}}}return null})}const su=["_blank","_self","_top","_parent"],Kv=["ascii","utf-8","utf-16","latin1","latin1"],Jv=["get","post","put","delete"],ey=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Ln=["true","false"],Pe={},iU={a:{attrs:{href:null,ping:null,type:null,media:null,target:su,hreflang:null}},abbr:Pe,address:Pe,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:Pe,aside:Pe,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:Pe,base:{attrs:{href:null,target:su}},bdi:Pe,bdo:Pe,blockquote:{attrs:{cite:null}},body:Pe,br:Pe,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:ey,formmethod:Jv,formnovalidate:["novalidate"],formtarget:su,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:Pe,center:Pe,cite:Pe,code:Pe,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:Pe,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:Pe,div:Pe,dl:Pe,dt:Pe,em:Pe,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:Pe,figure:Pe,footer:Pe,form:{attrs:{action:null,name:null,"accept-charset":Kv,autocomplete:["on","off"],enctype:ey,method:Jv,novalidate:["novalidate"],target:su}},h1:Pe,h2:Pe,h3:Pe,h4:Pe,h5:Pe,h6:Pe,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:Pe,hgroup:Pe,hr:Pe,html:{attrs:{manifest:null}},i:Pe,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:ey,formmethod:Jv,formnovalidate:["novalidate"],formtarget:su,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:Pe,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:Pe,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:Pe,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:Kv,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:Pe,noscript:Pe,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:Pe,param:{attrs:{name:null,value:null}},pre:Pe,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:Pe,rt:Pe,ruby:Pe,samp:Pe,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:Kv}},section:Pe,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:Pe,source:{attrs:{src:null,type:null,media:null}},span:Pe,strong:Pe,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:Pe,summary:Pe,sup:Pe,table:Pe,tbody:Pe,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:Pe,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:Pe,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:Pe,time:{attrs:{datetime:null}},title:Pe,tr:Pe,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:Pe,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:Pe},iM={accesskey:null,class:null,contenteditable:Ln,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:Ln,autocorrect:Ln,autocapitalize:Ln,style:null,tabindex:null,title:null,translate:["yes","no"],rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":Ln,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Ln,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Ln,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Ln,"aria-hidden":Ln,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Ln,"aria-multiselectable":Ln,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Ln,"aria-relevant":null,"aria-required":Ln,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},nM="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map(t=>"on"+t);for(let t of nM)iM[t]=null;class nd{constructor(e,i){this.tags={...iU,...e},this.globalAttrs={...iM,...i},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}nd.default=new nd;function Zc(t,e,i=t.length){if(!e)return"";let n=e.firstChild,r=n&&n.getChild("TagName");return r?t.sliceString(r.from,Math.min(r.to,i)):""}function Wc(t,e=!1){for(;t;t=t.parent)if(t.name=="Element")if(e)e=!1;else return t;return null}function rM(t,e,i){let n=i.tags[Zc(t,Wc(e))];return(n==null?void 0:n.children)||i.allTags}function qb(t,e){let i=[];for(let n=Wc(e);n&&!n.type.isTop;n=Wc(n.parent)){let r=Zc(t,n);if(r&&n.lastChild.name=="CloseTag")break;r&&i.indexOf(r)<0&&(e.name=="EndTag"||e.from>=n.firstChild.to)&&i.push(r)}return i}const sM=/^[:\-\.\w\u00b7-\uffff]*$/;function TQ(t,e,i,n,r){let s=/\s*>/.test(t.sliceDoc(r,r+5))?"":">",a=Wc(i,i.name=="StartTag"||i.name=="TagName");return{from:n,to:r,options:rM(t.doc,a,e).map(c=>({label:c,type:"type"})).concat(qb(t.doc,i).map((c,h)=>({label:"/"+c,apply:"/"+c+s,type:"type",boost:99-h}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function QQ(t,e,i,n){let r=/\s*>/.test(t.sliceDoc(n,n+5))?"":">";return{from:i,to:n,options:qb(t.doc,e).map((s,a)=>({label:s,apply:s+r,type:"type",boost:99-a})),validFor:sM}}function nU(t,e,i,n){let r=[],s=0;for(let a of rM(t.doc,i,e))r.push({label:"<"+a,type:"type"});for(let a of qb(t.doc,i))r.push({label:"</"+a+">",type:"type",boost:99-s++});return{from:n,to:n,options:r,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function rU(t,e,i,n,r){let s=Wc(i),a=s?e.tags[Zc(t.doc,s)]:null,c=a&&a.attrs?Object.keys(a.attrs):[],h=a&&a.globalAttrs===!1?c:c.length?c.concat(e.globalAttrNames):e.globalAttrNames;return{from:n,to:r,options:h.map(d=>({label:d,type:"property"})),validFor:sM}}function sU(t,e,i,n,r){var s;let a=(s=i.parent)===null||s===void 0?void 0:s.getChild("AttributeName"),c=[],h;if(a){let d=t.sliceDoc(a.from,a.to),f=e.globalAttrs[d];if(!f){let g=Wc(i),m=g?e.tags[Zc(t.doc,g)]:null;f=(m==null?void 0:m.attrs)&&m.attrs[d]}if(f){let g=t.sliceDoc(n,r).toLowerCase(),m='"',v='"';/^['"]/.test(g)?(h=g[0]=='"'?/^[^"]*$/:/^[^']*$/,m="",v=t.sliceDoc(r,r+1)==g[0]?"":g[0],g=g.slice(1),n++):h=/^[^\s<>='"]*$/;for(let S of f)c.push({label:S,apply:m+S+v,type:"constant"})}}return{from:n,to:r,options:c,validFor:h}}function oM(t,e){let{state:i,pos:n}=e,r=Qt(i).resolveInner(n,-1),s=r.resolve(n);for(let a=n,c;s==r&&(c=r.childBefore(a));){let h=c.lastChild;if(!h||!h.type.isError||h.from<h.to)break;s=r=c,a=h.from}return r.name=="TagName"?r.parent&&/CloseTag$/.test(r.parent.name)?QQ(i,r,r.from,n):TQ(i,t,r,r.from,n):r.name=="StartTag"||r.name=="IncompleteTag"?TQ(i,t,r,n,n):r.name=="StartCloseTag"||r.name=="IncompleteCloseTag"?QQ(i,r,n,n):r.name=="OpenTag"||r.name=="SelfClosingTag"||r.name=="AttributeName"?rU(i,t,r,r.name=="AttributeName"?r.from:n,n):r.name=="Is"||r.name=="AttributeValue"||r.name=="UnquotedAttributeValue"?sU(i,t,r,r.name=="Is"?n:r.from,n):e.explicit&&(s.name=="Element"||s.name=="Text"||s.name=="Document")?nU(i,t,r,n):null}function oU(t){return oM(nd.default,t)}function aU(t){let{extraTags:e,extraGlobalAttributes:i}=t,n=i||e?new nd(e,i):nd.default;return r=>oM(n,r)}const lU=ls.parser.configure({top:"SingleExpression"}),aM=[{tag:"script",attrs:t=>t.type=="text/typescript"||t.lang=="ts",parser:zA.parser},{tag:"script",attrs:t=>t.type=="text/babel"||t.type=="text/jsx",parser:jA.parser},{tag:"script",attrs:t=>t.type=="text/typescript-jsx",parser:DA.parser},{tag:"script",attrs(t){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(t.type)},parser:lU},{tag:"script",attrs(t){return!t.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(t.type)},parser:ls.parser},{tag:"style",attrs(t){return(!t.lang||t.lang=="css")&&(!t.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(t.type))},parser:Jg.parser}],lM=[{name:"style",parser:Jg.parser.configure({top:"Styles"})}].concat(nM.map(t=>({name:t,parser:ls.parser}))),cM=ca.define({name:"html",parser:tU.configure({props:[gl.add({Element(t){let e=/^(\s*)(<\/)?/.exec(t.textAfter);return t.node.to<=t.pos+e[0].length?t.continue():t.lineIndent(t.node.from)+(e[2]?0:t.unit)},"OpenTag CloseTag SelfClosingTag"(t){return t.column(t.node.from)+t.unit},Document(t){if(t.pos+/\s*/.exec(t.textAfter)[0].length<t.node.to)return t.continue();let e=null,i;for(let n=t.node;;){let r=n.lastChild;if(!r||r.name!="Element"||r.to!=n.to)break;e=n=r}return e&&!((i=e.lastChild)&&(i.name=="CloseTag"||i.name=="SelfClosingTag"))?t.lineIndent(e.from)+t.unit:null}}),pa.add({Element(t){let e=t.firstChild,i=t.lastChild;return!e||e.name!="OpenTag"?null:{from:e.to,to:i.name=="CloseTag"?i.from:t.to}}}),R5.add({"OpenTag CloseTag":t=>t.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"<!--",close:"-->"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-_"}}),ng=cM.configure({wrap:tM(aM,lM)});function hM(t={}){let e="",i;t.matchClosingTags===!1&&(e="noMatch"),t.selfClosingTags===!0&&(e=(e?e+" ":"")+"selfClosing"),(t.nestedLanguages&&t.nestedLanguages.length||t.nestedAttributes&&t.nestedAttributes.length)&&(i=tM((t.nestedLanguages||[]).concat(aM),(t.nestedAttributes||[]).concat(lM)));let n=i?cM.configure({wrap:i,dialect:e}):e?ng.configure({dialect:e}):ng;return new cl(n,[ng.data.of({autocomplete:aU(t)}),t.autoCloseTags!==!1?cU:[],RS().support,IA().support])}const $Q=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),cU=xe.inputHandler.of((t,e,i,n,r)=>{if(t.composing||t.state.readOnly||e!=i||n!=">"&&n!="/"||!ng.isActiveAt(t.state,e,-1))return!1;let s=r(),{state:a}=s,c=a.changeByRange(h=>{var d,f,g;let m=a.doc.sliceString(h.from-1,h.to)==n,{head:v}=h,S=Qt(a).resolveInner(v,-1),_;if(m&&n==">"&&S.name=="EndTag"){let w=S.parent;if(((f=(d=w.parent)===null||d===void 0?void 0:d.lastChild)===null||f===void 0?void 0:f.name)!="CloseTag"&&(_=Zc(a.doc,w.parent,v))&&!$Q.has(_)){let x=v+(a.doc.sliceString(v,v+1)===">"?1:0),Q=`</${_}>`;return{range:h,changes:{from:v,to:x,insert:Q}}}}else if(m&&n=="/"&&S.name=="IncompleteCloseTag"){let w=S.parent;if(S.from==v-2&&((g=w.lastChild)===null||g===void 0?void 0:g.name)!="CloseTag"&&(_=Zc(a.doc,w,v))&&!$Q.has(_)){let x=v+(a.doc.sliceString(v,v+1)===">"?1:0),Q=`${_}>`;return{range:le.cursor(v+Q.length,-1),changes:{from:v,to:x,insert:Q}}}}return{range:h}});return c.changes.empty?!1:(t.dispatch([s,a.update(c,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),hU=fa({String:q.string,Number:q.number,"True False":q.bool,PropertyName:q.propertyName,Null:q.null,", :":q.separator,"[ ]":q.squareBracket,"{ }":q.brace}),uU=ua.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[hU],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),dU=ca.define({name:"json",parser:uU.configure({props:[gl.add({Object:_c({except:/^\s*\}/}),Array:_c({except:/^\s*\]/})}),pa.add({"Object Array":$m})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function fU(){return new cl(dU)}class tm{static create(e,i,n,r,s){let a=r+(r<<8)+e+(i<<4)|0;return new tm(e,i,n,a,s,[],[])}constructor(e,i,n,r,s,a,c){this.type=e,this.value=i,this.from=n,this.hash=r,this.end=s,this.children=a,this.positions=c,this.hashProp=[[Ze.contextHash,r]]}addChild(e,i){e.prop(Ze.contextHash)!=this.hash&&(e=new mt(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(i)}toTree(e,i=this.end){let n=this.children.length-1;return n>=0&&(i=Math.max(i,this.positions[n]+this.children[n].length+this.from)),new mt(e.types[this.type],this.children,this.positions,i-this.from).balance({makeTree:(r,s,a)=>new mt(vi.none,r,s,a,this.hashProp)})}}var ge;(function(t){t[t.Document=1]="Document",t[t.CodeBlock=2]="CodeBlock",t[t.FencedCode=3]="FencedCode",t[t.Blockquote=4]="Blockquote",t[t.HorizontalRule=5]="HorizontalRule",t[t.BulletList=6]="BulletList",t[t.OrderedList=7]="OrderedList",t[t.ListItem=8]="ListItem",t[t.ATXHeading1=9]="ATXHeading1",t[t.ATXHeading2=10]="ATXHeading2",t[t.ATXHeading3=11]="ATXHeading3",t[t.ATXHeading4=12]="ATXHeading4",t[t.ATXHeading5=13]="ATXHeading5",t[t.ATXHeading6=14]="ATXHeading6",t[t.SetextHeading1=15]="SetextHeading1",t[t.SetextHeading2=16]="SetextHeading2",t[t.HTMLBlock=17]="HTMLBlock",t[t.LinkReference=18]="LinkReference",t[t.Paragraph=19]="Paragraph",t[t.CommentBlock=20]="CommentBlock",t[t.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",t[t.Escape=22]="Escape",t[t.Entity=23]="Entity",t[t.HardBreak=24]="HardBreak",t[t.Emphasis=25]="Emphasis",t[t.StrongEmphasis=26]="StrongEmphasis",t[t.Link=27]="Link",t[t.Image=28]="Image",t[t.InlineCode=29]="InlineCode",t[t.HTMLTag=30]="HTMLTag",t[t.Comment=31]="Comment",t[t.ProcessingInstruction=32]="ProcessingInstruction",t[t.Autolink=33]="Autolink",t[t.HeaderMark=34]="HeaderMark",t[t.QuoteMark=35]="QuoteMark",t[t.ListMark=36]="ListMark",t[t.LinkMark=37]="LinkMark",t[t.EmphasisMark=38]="EmphasisMark",t[t.CodeMark=39]="CodeMark",t[t.CodeText=40]="CodeText",t[t.CodeInfo=41]="CodeInfo",t[t.LinkTitle=42]="LinkTitle",t[t.LinkLabel=43]="LinkLabel",t[t.URL=44]="URL"})(ge||(ge={}));class pU{constructor(e,i){this.start=e,this.content=i,this.marks=[],this.parsers=[]}}class gU{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return Eu(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,i=0,n=0){for(let r=i;r<e;r++)n+=this.text.charCodeAt(r)==9?4-n%4:1;return n}findColumn(e){let i=0;for(let n=0;i<this.text.length&&n<e;i++)n+=this.text.charCodeAt(i)==9?4-n%4:1;return i}scrub(){if(!this.baseIndent)return this.text;let e="";for(let i=0;i<this.basePos;i++)e+=" ";return e+this.text.slice(this.basePos)}}function PQ(t,e,i){if(i.pos==i.text.length||t!=e.block&&i.indent>=e.stack[i.depth+1].value+i.baseIndent)return!0;if(i.indent>=i.baseIndent+4)return!1;let n=(t.type==ge.OrderedList?Yb:Vb)(i,e,!1);return n>0&&(t.type!=ge.BulletList||Ib(i,e,!1)<0)&&i.text.charCodeAt(i.pos+n-1)==t.value}const uM={[ge.Blockquote](t,e,i){return i.next!=62?!1:(i.markers.push(st(ge.QuoteMark,e.lineStart+i.pos,e.lineStart+i.pos+1)),i.moveBase(i.pos+(gr(i.text.charCodeAt(i.pos+1))?2:1)),t.end=e.lineStart+i.text.length,!0)},[ge.ListItem](t,e,i){return i.indent<i.baseIndent+t.value&&i.next>-1?!1:(i.moveBaseColumn(i.baseIndent+t.value),!0)},[ge.OrderedList]:PQ,[ge.BulletList]:PQ,[ge.Document](){return!0}};function gr(t){return t==32||t==9||t==10||t==13}function Eu(t,e=0){for(;e<t.length&&gr(t.charCodeAt(e));)e++;return e}function EQ(t,e,i){for(;e>i&&gr(t.charCodeAt(e-1));)e--;return e}function dM(t){if(t.next!=96&&t.next!=126)return-1;let e=t.pos+1;for(;e<t.text.length&&t.text.charCodeAt(e)==t.next;)e++;if(e<t.pos+3)return-1;if(t.next==96){for(let i=e;i<t.text.length;i++)if(t.text.charCodeAt(i)==96)return-1}return e}function fM(t){return t.next!=62?-1:t.text.charCodeAt(t.pos+1)==32?2:1}function Ib(t,e,i){if(t.next!=42&&t.next!=45&&t.next!=95)return-1;let n=1;for(let r=t.pos+1;r<t.text.length;r++){let s=t.text.charCodeAt(r);if(s==t.next)n++;else if(!gr(s))return-1}return i&&t.next==45&&mM(t)>-1&&t.depth==e.stack.length&&e.parser.leafBlockParsers.indexOf(SM.SetextHeading)>-1||n<3?-1:1}function pM(t,e){for(let i=t.stack.length-1;i>=0;i--)if(t.stack[i].type==e)return!0;return!1}function Vb(t,e,i){return(t.next==45||t.next==43||t.next==42)&&(t.pos==t.text.length-1||gr(t.text.charCodeAt(t.pos+1)))&&(!i||pM(e,ge.BulletList)||t.skipSpace(t.pos+2)<t.text.length)?1:-1}function Yb(t,e,i){let n=t.pos,r=t.next;for(;r>=48&&r<=57;){n++;if(n==t.text.length)return-1;r=t.text.charCodeAt(n)}return n==t.pos||n>t.pos+9||r!=46&&r!=41||n<t.text.length-1&&!gr(t.text.charCodeAt(n+1))||i&&!pM(e,ge.OrderedList)&&(t.skipSpace(n+1)==t.text.length||n>t.pos+1||t.next!=49)?-1:n+1-t.pos}function gM(t){if(t.next!=35)return-1;let e=t.pos+1;for(;e<t.text.length&&t.text.charCodeAt(e)==35;)e++;if(e<t.text.length&&t.text.charCodeAt(e)!=32)return-1;let i=e-t.pos;return i>6?-1:i}function mM(t){if(t.next!=45&&t.next!=61||t.indent>=t.baseIndent+4)return-1;let e=t.pos+1;for(;e<t.text.length&&t.text.charCodeAt(e)==t.next;)e++;let i=e;for(;e<t.text.length&&gr(t.text.charCodeAt(e));)e++;return e==t.text.length?i:-1}const zS=/^[ \t]*$/,OM=/-->/,vM=/\?>/,jS=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*<!--/,OM],[/^\s*<\?/,vM],[/^\s*<![A-Z]/,/>/],[/^\s*<!\[CDATA\[/,/\]\]>/],[/^\s*<\/?(?:address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul)(?:\s|\/?>|$)/i,zS],[/^\s*(?:<\/[a-z][\w-]*\s*>|<[a-z][\w-]*(\s+[a-z:_][\w-.]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*>)\s*$/i,zS]];function yM(t,e,i){if(t.next!=60)return-1;let n=t.text.slice(t.pos);for(let r=0,s=jS.length-(i?1:0);r<s;r++)if(jS[r][0].test(n))return r;return-1}function RQ(t,e){let i=t.countIndent(e,t.pos,t.indent),n=t.countIndent(t.skipSpace(e),e,i);return n>=i+5?i+1:n}function Zo(t,e,i){let n=t.length-1;n>=0&&t[n].to==e&&t[n].type==ge.CodeText?t[n].to=i:t.push(st(ge.CodeText,e,i))}const Rp={LinkReference:void 0,IndentedCode(t,e){let i=e.baseIndent+4;if(e.indent<i)return!1;let n=e.findColumn(i),r=t.lineStart+n,s=t.lineStart+e.text.length,a=[],c=[];for(Zo(a,r,s);t.nextLine()&&e.depth>=t.stack.length;)if(e.pos==e.text.length){Zo(c,t.lineStart-1,t.lineStart);for(let h of e.markers)c.push(h)}else{if(e.indent<i)break;{if(c.length){for(let d of c)d.type==ge.CodeText?Zo(a,d.from,d.to):a.push(d);c=[]}Zo(a,t.lineStart-1,t.lineStart);for(let d of e.markers)a.push(d);s=t.lineStart+e.text.length;let h=t.lineStart+e.findColumn(e.baseIndent+4);h<s&&Zo(a,h,s)}}return c.length&&(c=c.filter(h=>h.type!=ge.CodeText),c.length&&(e.markers=c.concat(e.markers))),t.addNode(t.buffer.writeElements(a,-r).finish(ge.CodeBlock,s-r),r),!0},FencedCode(t,e){let i=dM(e);if(i<0)return!1;let n=t.lineStart+e.pos,r=e.next,s=i-e.pos,a=e.skipSpace(i),c=EQ(e.text,e.text.length,a),h=[st(ge.CodeMark,n,n+s)];a<c&&h.push(st(ge.CodeInfo,t.lineStart+a,t.lineStart+c));for(let d=!0,f=!0,g=!1;t.nextLine()&&e.depth>=t.stack.length;d=!1){let m=e.pos;if(e.indent-e.baseIndent<4)for(;m<e.text.length&&e.text.charCodeAt(m)==r;)m++;if(m-e.pos>=s&&e.skipSpace(m)==e.text.length){for(let v of e.markers)h.push(v);f&&g&&Zo(h,t.lineStart-1,t.lineStart),h.push(st(ge.CodeMark,t.lineStart+e.pos,t.lineStart+m)),t.nextLine();break}else{g=!0,d||(Zo(h,t.lineStart-1,t.lineStart),f=!1);for(let _ of e.markers)h.push(_);let v=t.lineStart+e.basePos,S=t.lineStart+e.text.length;v<S&&(Zo(h,v,S),f=!1)}}return t.addNode(t.buffer.writeElements(h,-n).finish(ge.FencedCode,t.prevLineEnd()-n),n),!0},Blockquote(t,e){let i=fM(e);return i<0?!1:(t.startContext(ge.Blockquote,e.pos),t.addNode(ge.QuoteMark,t.lineStart+e.pos,t.lineStart+e.pos+1),e.moveBase(e.pos+i),null)},HorizontalRule(t,e){if(Ib(e,t,!1)<0)return!1;let i=t.lineStart+e.pos;return t.nextLine(),t.addNode(ge.HorizontalRule,i),!0},BulletList(t,e){let i=Vb(e,t,!1);if(i<0)return!1;t.block.type!=ge.BulletList&&t.startContext(ge.BulletList,e.basePos,e.next);let n=RQ(e,e.pos+1);return t.startContext(ge.ListItem,e.basePos,n-e.baseIndent),t.addNode(ge.ListMark,t.lineStart+e.pos,t.lineStart+e.pos+i),e.moveBaseColumn(n),null},OrderedList(t,e){let i=Yb(e,t,!1);if(i<0)return!1;t.block.type!=ge.OrderedList&&t.startContext(ge.OrderedList,e.basePos,e.text.charCodeAt(e.pos+i-1));let n=RQ(e,e.pos+i);return t.startContext(ge.ListItem,e.basePos,n-e.baseIndent),t.addNode(ge.ListMark,t.lineStart+e.pos,t.lineStart+e.pos+i),e.moveBaseColumn(n),null},ATXHeading(t,e){let i=gM(e);if(i<0)return!1;let n=e.pos,r=t.lineStart+n,s=EQ(e.text,e.text.length,n),a=s;for(;a>n&&e.text.charCodeAt(a-1)==e.next;)a--;(a==s||a==n||!gr(e.text.charCodeAt(a-1)))&&(a=e.text.length);let c=t.buffer.write(ge.HeaderMark,0,i).writeElements(t.parser.parseInline(e.text.slice(n+i+1,a),r+i+1),-r);a<e.text.length&&c.write(ge.HeaderMark,a-n,s-n);let h=c.finish(ge.ATXHeading1-1+i,e.text.length-n);return t.nextLine(),t.addNode(h,r),!0},HTMLBlock(t,e){let i=yM(e,t,!1);if(i<0)return!1;let n=t.lineStart+e.pos,r=jS[i][1],s=[],a=r!=zS;for(;!r.test(e.text)&&t.nextLine();){if(e.depth<t.stack.length){a=!1;break}for(let d of e.markers)s.push(d)}a&&t.nextLine();let c=r==OM?ge.CommentBlock:r==vM?ge.ProcessingInstructionBlock:ge.HTMLBlock,h=t.prevLineEnd();return t.addNode(t.buffer.writeElements(s,-n).finish(c,h-n),n),!0},SetextHeading:void 0};class mU{constructor(e){this.stage=0,this.elts=[],this.pos=0,this.start=e.start,this.advance(e.content)}nextLine(e,i,n){if(this.stage==-1)return!1;let r=n.content+`
126
- `+i.scrub(),s=this.advance(r);return s>-1&&s<r.length?this.complete(e,n,s):!1}finish(e,i){return(this.stage==2||this.stage==3)&&Eu(i.content,this.pos)==i.content.length?this.complete(e,i,i.content.length):!1}complete(e,i,n){return e.addLeafElement(i,st(ge.LinkReference,this.start,this.start+n,this.elts)),!0}nextStage(e){return e?(this.pos=e.to-this.start,this.elts.push(e),this.stage++,!0):(e===!1&&(this.stage=-1),!1)}advance(e){for(;;){if(this.stage==-1)return-1;if(this.stage==0){if(!this.nextStage($M(e,this.pos,this.start,!0)))return-1;if(e.charCodeAt(this.pos)!=58)return this.stage=-1;this.elts.push(st(ge.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else if(this.stage==1){if(!this.nextStage(TM(e,Eu(e,this.pos),this.start)))return-1}else if(this.stage==2){let i=Eu(e,this.pos),n=0;if(i>this.pos){let r=QM(e,i,this.start);if(r){let s=ty(e,r.to-this.start);s>0&&(this.nextStage(r),n=s)}}return n||(n=ty(e,this.pos)),n>0&&n<e.length?n:-1}else return ty(e,this.pos)}}}function ty(t,e){for(;e<t.length;e++){let i=t.charCodeAt(e);if(i==10)break;if(!gr(i))return-1}return e}class OU{nextLine(e,i,n){let r=i.depth<e.stack.length?-1:mM(i),s=i.next;if(r<0)return!1;let a=st(ge.HeaderMark,e.lineStart+i.pos,e.lineStart+r);return e.nextLine(),e.addLeafElement(n,st(s==61?ge.SetextHeading1:ge.SetextHeading2,n.start,e.prevLineEnd(),[...e.parser.parseInline(n.content,n.start),a])),!0}finish(){return!1}}const SM={LinkReference(t,e){return e.content.charCodeAt(0)==91?new mU(e):null},SetextHeading(){return new OU}},vU=[(t,e)=>gM(e)>=0,(t,e)=>dM(e)>=0,(t,e)=>fM(e)>=0,(t,e)=>Vb(e,t,!0)>=0,(t,e)=>Yb(e,t,!0)>=0,(t,e)=>Ib(e,t,!0)>=0,(t,e)=>yM(e,t,!0)>=0],yU={text:"",end:0};class SU{constructor(e,i,n,r){this.parser=e,this.input=i,this.ranges=r,this.line=new gU,this.atEnd=!1,this.reusePlaceholders=new Map,this.stoppedAt=null,this.rangeI=0,this.to=r[r.length-1].to,this.lineStart=this.absoluteLineStart=this.absoluteLineEnd=r[0].from,this.block=tm.create(ge.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=n.length?new xU(n,i):null,this.readLine()}get parsedPos(){return this.absoluteLineStart}advance(){if(this.stoppedAt!=null&&this.absoluteLineStart>this.stoppedAt)return this.finish();let{line:e}=this;for(;;){for(let n=0;;){let r=e.depth<this.stack.length?this.stack[this.stack.length-1]:null;for(;n<e.markers.length&&(!r||e.markers[n].from<r.end);){let s=e.markers[n++];this.addNode(s.type,s.from,s.to)}if(!r)break;this.finishContext()}if(e.pos<e.text.length)break;if(!this.nextLine())return this.finish()}if(this.fragments&&this.reuseFragment(e.basePos))return null;e:for(;;){for(let n of this.parser.blockParsers)if(n){let r=n(this,e);if(r!=!1){if(r==!0)return null;e.forward();continue e}}break}let i=new pU(this.lineStart+e.pos,e.text.slice(e.pos));for(let n of this.parser.leafBlockParsers)if(n){let r=n(this,i);r&&i.parsers.push(r)}e:for(;this.nextLine()&&e.pos!=e.text.length;){if(e.indent<e.baseIndent+4){for(let n of this.parser.endLeafBlock)if(n(this,e,i))break e}for(let n of i.parsers)if(n.nextLine(this,e,i))return null;i.content+=`
127
- `+e.scrub();for(let n of e.markers)i.marks.push(n)}return this.finishLeaf(i),null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}reuseFragment(e){if(!this.fragments.moveTo(this.absoluteLineStart+e,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let i=this.fragments.takeNodes(this);return i?(this.absoluteLineStart+=i,this.lineStart=PM(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0):!1}get depth(){return this.stack.length}parentType(e=this.depth-1){return this.parser.nodeSet.types[this.stack[e].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(e){let i=yU;if(i.end=e,e>=this.to)i.text="";else if(i.text=this.lineChunkAt(e),i.end+=i.text.length,this.ranges.length>1){let n=this.absoluteLineStart,r=this.rangeI;for(;this.ranges[r].to<i.end;){r++;let s=this.ranges[r].from,a=this.lineChunkAt(s);i.end=s+a.length,i.text=i.text.slice(0,this.ranges[r-1].to-n)+a,n=i.end-i.text.length}}return i}readLine(){let{line:e}=this,{text:i,end:n}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=n,e.reset(i);e.depth<this.stack.length;e.depth++){let r=this.stack[e.depth],s=this.parser.skipContextMarkup[r.type];if(!s)throw new Error("Unhandled block context "+ge[r.type]);let a=this.line.markers.length;if(!s(r,this,e)){this.line.markers.length>a&&(r.end=this.line.markers[this.line.markers.length-1].to),e.forward();break}e.forward()}}lineChunkAt(e){let i=this.input.chunk(e),n;if(this.input.lineChunks)n=i==`
128
- `?"":i;else{let r=i.indexOf(`
129
- `);n=r<0?i:i.slice(0,r)}return e+n.length>this.to?n.slice(0,this.to-e):n}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(e,i,n=0){this.block=tm.create(e,n,this.lineStart+i,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(e,i,n=0){this.startContext(this.parser.getNodeType(e),i,n)}addNode(e,i,n){typeof e=="number"&&(e=new mt(this.parser.nodeSet.types[e],qc,qc,(n??this.prevLineEnd())-i)),this.block.addChild(e,i-this.block.from)}addElement(e){this.block.addChild(e.toTree(this.parser.nodeSet),e.from-this.block.from)}addLeafElement(e,i){this.addNode(this.buffer.writeElements(BS(i.children,e.marks),-i.from).finish(i.type,i.to-i.from),i.from)}finishContext(){let e=this.stack.pop(),i=this.stack[this.stack.length-1];i.addChild(e.toTree(this.parser.nodeSet),e.from-i.from),this.block=i}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(e){return this.ranges.length>1?bM(this.ranges,0,e.topNode,this.ranges[0].from,this.reusePlaceholders):e}finishLeaf(e){for(let n of e.parsers)if(n.finish(this,e))return;let i=BS(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(i,-e.start).finish(ge.Paragraph,e.content.length),e.start)}elt(e,i,n,r){return typeof e=="string"?st(this.parser.getNodeType(e),i,n,r):new wM(e,i)}get buffer(){return new xM(this.parser.nodeSet)}}function bM(t,e,i,n,r){let s=t[e].to,a=[],c=[],h=i.from+n;function d(f,g){for(;g?f>=s:f>s;){let m=t[e+1].from-s;n+=m,f+=m,e++,s=t[e].to}}for(let f=i.firstChild;f;f=f.nextSibling){d(f.from+n,!0);let g=f.from+n,m,v=r.get(f.tree);v?m=v:f.to+n>s?(m=bM(t,e,f,n,r),d(f.to+n,!1)):m=f.toTree(),a.push(m),c.push(g-h)}return d(i.to+n,!1),new mt(i.type,a,c,i.to+n-h,i.tree?i.tree.propValues:void 0)}class jm extends vb{constructor(e,i,n,r,s,a,c,h,d){super(),this.nodeSet=e,this.blockParsers=i,this.leafBlockParsers=n,this.blockNames=r,this.endLeafBlock=s,this.skipContextMarkup=a,this.inlineParsers=c,this.inlineNames=h,this.wrappers=d,this.nodeTypes=Object.create(null);for(let f of e.types)this.nodeTypes[f.name]=f.id}createParse(e,i,n){let r=new SU(this,e,i,n);for(let s of this.wrappers)r=s(r,e,i,n);return r}configure(e){let i=DS(e);if(!i)return this;let{nodeSet:n,skipContextMarkup:r}=this,s=this.blockParsers.slice(),a=this.leafBlockParsers.slice(),c=this.blockNames.slice(),h=this.inlineParsers.slice(),d=this.inlineNames.slice(),f=this.endLeafBlock.slice(),g=this.wrappers;if(ou(i.defineNodes)){r=Object.assign({},r);let m=n.types.slice(),v;for(let S of i.defineNodes){let{name:_,block:w,composite:x,style:Q}=typeof S=="string"?{name:S}:S;if(m.some(A=>A.name==_))continue;x&&(r[m.length]=(A,P,M)=>x(P,M,A.value));let C=m.length,T=x?["Block","BlockContext"]:w?C>=ge.ATXHeading1&&C<=ge.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;m.push(vi.define({id:C,name:_,props:T&&[[Ze.group,T]]})),Q&&(v||(v={}),Array.isArray(Q)||Q instanceof qn?v[_]=Q:Object.assign(v,Q))}n=new bd(m),v&&(n=n.extend(fa(v)))}if(ou(i.props)&&(n=n.extend(...i.props)),ou(i.remove))for(let m of i.remove){let v=this.blockNames.indexOf(m),S=this.inlineNames.indexOf(m);v>-1&&(s[v]=a[v]=void 0),S>-1&&(h[S]=void 0)}if(ou(i.parseBlock))for(let m of i.parseBlock){let v=c.indexOf(m.name);if(v>-1)s[v]=m.parse,a[v]=m.leaf;else{let S=m.before?Ap(c,m.before):m.after?Ap(c,m.after)+1:c.length-1;s.splice(S,0,m.parse),a.splice(S,0,m.leaf),c.splice(S,0,m.name)}m.endLeaf&&f.push(m.endLeaf)}if(ou(i.parseInline))for(let m of i.parseInline){let v=d.indexOf(m.name);if(v>-1)h[v]=m.parse;else{let S=m.before?Ap(d,m.before):m.after?Ap(d,m.after)+1:d.length-1;h.splice(S,0,m.parse),d.splice(S,0,m.name)}}return i.wrap&&(g=g.concat(i.wrap)),new jm(n,s,a,c,f,r,h,d,g)}getNodeType(e){let i=this.nodeTypes[e];if(i==null)throw new RangeError(`Unknown node type '${e}'`);return i}parseInline(e,i){let n=new Hb(this,e,i);e:for(let r=i;r<n.end;){let s=n.char(r);for(let a of this.inlineParsers)if(a){let c=a(n,s,r);if(c>=0){r=c;continue e}}r++}return n.resolveMarkers(0)}}function ou(t){return t!=null&&t.length>0}function DS(t){if(!Array.isArray(t))return t;if(t.length==0)return null;let e=DS(t[0]);if(t.length==1)return e;let i=DS(t.slice(1));if(!i||!e)return e||i;let n=(a,c)=>(a||qc).concat(c||qc),r=e.wrap,s=i.wrap;return{props:n(e.props,i.props),defineNodes:n(e.defineNodes,i.defineNodes),parseBlock:n(e.parseBlock,i.parseBlock),parseInline:n(e.parseInline,i.parseInline),remove:n(e.remove,i.remove),wrap:r?s?(a,c,h,d)=>r(s(a,c,h,d),c,h,d):r:s}}function Ap(t,e){let i=t.indexOf(e);if(i<0)throw new RangeError(`Position specified relative to unknown parser ${e}`);return i}let _M=[vi.none];for(let t=1,e;e=ge[t];t++)_M[t]=vi.define({id:t,name:e,props:t>=ge.Escape?[]:[[Ze.group,t in uM?["Block","BlockContext"]:["Block","LeafBlock"]]],top:e=="Document"});const qc=[];class xM{constructor(e){this.nodeSet=e,this.content=[],this.nodes=[]}write(e,i,n,r=0){return this.content.push(e,i,n,4+r*4),this}writeElements(e,i=0){for(let n of e)n.writeTo(this,i);return this}finish(e,i){return mt.build({buffer:this.content,nodeSet:this.nodeSet,reused:this.nodes,topID:e,length:i})}}let rd=class{constructor(e,i,n,r=qc){this.type=e,this.from=i,this.to=n,this.children=r}writeTo(e,i){let n=e.content.length;e.writeElements(this.children,i),e.content.push(this.type,this.from+i,this.to+i,e.content.length+4-n)}toTree(e){return new xM(e).writeElements(this.children,-this.from).finish(this.type,this.to-this.from)}};class wM{constructor(e,i){this.tree=e,this.from=i}get to(){return this.from+this.tree.length}get type(){return this.tree.type.id}get children(){return qc}writeTo(e,i){e.nodes.push(this.tree),e.content.push(e.nodes.length-1,this.from+i,this.to+i,-1)}toTree(){return this.tree}}function st(t,e,i,n){return new rd(t,e,i,n)}const kM={resolve:"Emphasis",mark:"EmphasisMark"},CM={resolve:"Emphasis",mark:"EmphasisMark"},qa={},im={};class Wn{constructor(e,i,n,r){this.type=e,this.from=i,this.to=n,this.side=r}}const AQ="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~";let sd=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\u2010-\u2027]/;try{sd=new RegExp("[\\p{S}|\\p{P}]","u")}catch{}const iy={Escape(t,e,i){if(e!=92||i==t.end-1)return-1;let n=t.char(i+1);for(let r=0;r<AQ.length;r++)if(AQ.charCodeAt(r)==n)return t.append(st(ge.Escape,i,i+2));return-1},Entity(t,e,i){if(e!=38)return-1;let n=/^(?:#\d+|#x[a-f\d]+|\w+);/i.exec(t.slice(i+1,i+31));return n?t.append(st(ge.Entity,i,i+1+n[0].length)):-1},InlineCode(t,e,i){if(e!=96||i&&t.char(i-1)==96)return-1;let n=i+1;for(;n<t.end&&t.char(n)==96;)n++;let r=n-i,s=0;for(;n<t.end;n++)if(t.char(n)==96){if(s++,s==r&&t.char(n+1)!=96)return t.append(st(ge.InlineCode,i,n+1,[st(ge.CodeMark,i,i+r),st(ge.CodeMark,n+1-r,n+1)]))}else s=0;return-1},HTMLTag(t,e,i){if(e!=60||i==t.end-1)return-1;let n=t.slice(i+1,t.end),r=/^(?:[a-z][-\w+.]+:[^\s>]+|[a-z\d.!#$%&'*+/=?^_`{|}~-]+@[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?(?:\.[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?)*)>/i.exec(n);if(r)return t.append(st(ge.Autolink,i,i+1+r[0].length,[st(ge.LinkMark,i,i+1),st(ge.URL,i+1,i+r[0].length),st(ge.LinkMark,i+r[0].length,i+1+r[0].length)]));let s=/^!--[^>](?:-[^-]|[^-])*?-->/i.exec(n);if(s)return t.append(st(ge.Comment,i,i+1+s[0].length));let a=/^\?[^]*?\?>/.exec(n);if(a)return t.append(st(ge.ProcessingInstruction,i,i+1+a[0].length));let c=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(n);return c?t.append(st(ge.HTMLTag,i,i+1+c[0].length)):-1},Emphasis(t,e,i){if(e!=95&&e!=42)return-1;let n=i+1;for(;t.char(n)==e;)n++;let r=t.slice(i-1,i),s=t.slice(n,n+1),a=sd.test(r),c=sd.test(s),h=/\s|^$/.test(r),d=/\s|^$/.test(s),f=!d&&(!c||h||a),g=!h&&(!a||d||c),m=f&&(e==42||!g||a),v=g&&(e==42||!f||c);return t.append(new Wn(e==95?kM:CM,i,n,(m?1:0)|(v?2:0)))},HardBreak(t,e,i){if(e==92&&t.char(i+1)==10)return t.append(st(ge.HardBreak,i,i+2));if(e==32){let n=i+1;for(;t.char(n)==32;)n++;if(t.char(n)==10&&n>=i+2)return t.append(st(ge.HardBreak,i,n+1))}return-1},Link(t,e,i){return e==91?t.append(new Wn(qa,i,i+1,1)):-1},Image(t,e,i){return e==33&&t.char(i+1)==91?t.append(new Wn(im,i,i+2,1)):-1},LinkEnd(t,e,i){if(e!=93)return-1;for(let n=t.parts.length-1;n>=0;n--){let r=t.parts[n];if(r instanceof Wn&&(r.type==qa||r.type==im)){if(!r.side||t.skipSpace(r.to)==i&&!/[(\[]/.test(t.slice(i+1,i+2)))return t.parts[n]=null,-1;let s=t.takeContent(n),a=t.parts[n]=bU(t,s,r.type==qa?ge.Link:ge.Image,r.from,i+1);if(r.type==qa)for(let c=0;c<n;c++){let h=t.parts[c];h instanceof Wn&&h.type==qa&&(h.side=0)}return a.to}}return-1}};function bU(t,e,i,n,r){let{text:s}=t,a=t.char(r),c=r;if(e.unshift(st(ge.LinkMark,n,n+(i==ge.Image?2:1))),e.push(st(ge.LinkMark,r-1,r)),a==40){let h=t.skipSpace(r+1),d=TM(s,h-t.offset,t.offset),f;d&&(h=t.skipSpace(d.to),h!=d.to&&(f=QM(s,h-t.offset,t.offset),f&&(h=t.skipSpace(f.to)))),t.char(h)==41&&(e.push(st(ge.LinkMark,r,r+1)),c=h+1,d&&e.push(d),f&&e.push(f),e.push(st(ge.LinkMark,h,c)))}else if(a==91){let h=$M(s,r-t.offset,t.offset,!1);h&&(e.push(h),c=h.to)}return st(i,n,c,e)}function TM(t,e,i){if(t.charCodeAt(e)==60){for(let r=e+1;r<t.length;r++){let s=t.charCodeAt(r);if(s==62)return st(ge.URL,e+i,r+1+i);if(s==60||s==10)return!1}return null}else{let r=0,s=e;for(let a=!1;s<t.length;s++){let c=t.charCodeAt(s);if(gr(c))break;if(a)a=!1;else if(c==40)r++;else if(c==41){if(!r)break;r--}else c==92&&(a=!0)}return s>e?st(ge.URL,e+i,s+i):s==t.length?null:!1}}function QM(t,e,i){let n=t.charCodeAt(e);if(n!=39&&n!=34&&n!=40)return!1;let r=n==40?41:n;for(let s=e+1,a=!1;s<t.length;s++){let c=t.charCodeAt(s);if(a)a=!1;else{if(c==r)return st(ge.LinkTitle,e+i,s+1+i);c==92&&(a=!0)}}return null}function $M(t,e,i,n){for(let r=!1,s=e+1,a=Math.min(t.length,s+999);s<a;s++){let c=t.charCodeAt(s);if(r)r=!1;else{if(c==93)return n?!1:st(ge.LinkLabel,e+i,s+1+i);if(n&&!gr(c)&&(n=!1),c==91)return!1;c==92&&(r=!0)}}return null}class Hb{constructor(e,i,n){this.parser=e,this.text=i,this.offset=n,this.parts=[]}char(e){return e>=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,i){return this.text.slice(e-this.offset,i-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,i,n,r,s){return this.append(new Wn(e,i,n,(r?1:0)|(s?2:0)))}get hasOpenLink(){for(let e=this.parts.length-1;e>=0;e--){let i=this.parts[e];if(i instanceof Wn&&(i.type==qa||i.type==im))return!0}return!1}addElement(e){return this.append(e)}resolveMarkers(e){for(let n=e;n<this.parts.length;n++){let r=this.parts[n];if(!(r instanceof Wn&&r.type.resolve&&r.side&2))continue;let s=r.type==kM||r.type==CM,a=r.to-r.from,c,h=n-1;for(;h>=e;h--){let _=this.parts[h];if(_ instanceof Wn&&_.side&1&&_.type==r.type&&!(s&&(r.side&1||_.side&2)&&(_.to-_.from+a)%3==0&&((_.to-_.from)%3||a%3))){c=_;break}}if(!c)continue;let d=r.type.resolve,f=[],g=c.from,m=r.to;if(s){let _=Math.min(2,c.to-c.from,a);g=c.to-_,m=r.from+_,d=_==1?"Emphasis":"StrongEmphasis"}c.type.mark&&f.push(this.elt(c.type.mark,g,c.to));for(let _=h+1;_<n;_++)this.parts[_]instanceof rd&&f.push(this.parts[_]),this.parts[_]=null;r.type.mark&&f.push(this.elt(r.type.mark,r.from,m));let v=this.elt(d,g,m,f);this.parts[h]=s&&c.from!=g?new Wn(c.type,c.from,g,c.side):null,(this.parts[n]=s&&r.to!=m?new Wn(r.type,m,r.to,r.side):null)?this.parts.splice(n,0,v):this.parts[n]=v}let i=[];for(let n=e;n<this.parts.length;n++){let r=this.parts[n];r instanceof rd&&i.push(r)}return i}findOpeningDelimiter(e){for(let i=this.parts.length-1;i>=0;i--){let n=this.parts[i];if(n instanceof Wn&&n.type==e&&n.side&1)return i}return null}takeContent(e){let i=this.resolveMarkers(e);return this.parts.length=e,i}getDelimiterAt(e){let i=this.parts[e];return i instanceof Wn?i:null}skipSpace(e){return Eu(this.text,e-this.offset)+this.offset}elt(e,i,n,r){return typeof e=="string"?st(this.parser.getNodeType(e),i,n,r):new wM(e,i)}}Hb.linkStart=qa;Hb.imageStart=im;function BS(t,e){if(!e.length)return t;if(!t.length)return e;let i=t.slice(),n=0;for(let r of e){for(;n<i.length&&i[n].to<r.to;)n++;if(n<i.length&&i[n].from<r.from){let s=i[n];s instanceof rd&&(i[n]=new rd(s.type,s.from,s.to,BS(s.children,[r])))}else i.splice(n++,0,r)}return i}const _U=[ge.CodeBlock,ge.ListItem,ge.OrderedList,ge.BulletList];class xU{constructor(e,i){this.fragments=e,this.input=i,this.i=0,this.fragment=null,this.fragmentEnd=-1,this.cursor=null,e.length&&(this.fragment=e[this.i++])}nextFragment(){this.fragment=this.i<this.fragments.length?this.fragments[this.i++]:null,this.cursor=null,this.fragmentEnd=-1}moveTo(e,i){for(;this.fragment&&this.fragment.to<=e;)this.nextFragment();if(!this.fragment||this.fragment.from>(e?e-1:0))return!1;if(this.fragmentEnd<0){let s=this.fragment.to;for(;s>0&&this.input.read(s-1,s)!=`
130
- `;)s--;this.fragmentEnd=s?s-1:0}let n=this.cursor;n||(n=this.cursor=this.fragment.tree.cursor(),n.firstChild());let r=e+this.fragment.offset;for(;n.to<=r;)if(!n.parent())return!1;for(;;){if(n.from>=r)return this.fragment.from<=i;if(!n.childAfter(r))return!1}}matches(e){let i=this.cursor.tree;return i&&i.prop(Ze.contextHash)==e}takeNodes(e){let i=this.cursor,n=this.fragment.offset,r=this.fragmentEnd-(this.fragment.openEnd?1:0),s=e.absoluteLineStart,a=s,c=e.block.children.length,h=a,d=c;for(;;){if(i.to-n>r){if(i.type.isAnonymous&&i.firstChild())continue;break}let f=PM(i.from-n,e.ranges);if(i.to-n<=e.ranges[e.rangeI].to)e.addNode(i.tree,f);else{let g=new mt(e.parser.nodeSet.types[ge.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(g,i.tree),e.addNode(g,f)}if(i.type.is("Block")&&(_U.indexOf(i.type.id)<0?(a=i.to-n,c=e.block.children.length):(a=h,c=d),h=i.to-n,d=e.block.children.length),!i.nextSibling())break}for(;e.block.children.length>c;)e.block.children.pop(),e.block.positions.pop();return a-s}}function PM(t,e){let i=t;for(let n=1;n<e.length;n++){let r=e[n-1].to,s=e[n].from;r<t&&(i-=s-r)}return i}const wU=fa({"Blockquote/...":q.quote,HorizontalRule:q.contentSeparator,"ATXHeading1/... SetextHeading1/...":q.heading1,"ATXHeading2/... SetextHeading2/...":q.heading2,"ATXHeading3/...":q.heading3,"ATXHeading4/...":q.heading4,"ATXHeading5/...":q.heading5,"ATXHeading6/...":q.heading6,"Comment CommentBlock":q.comment,Escape:q.escape,Entity:q.character,"Emphasis/...":q.emphasis,"StrongEmphasis/...":q.strong,"Link/... Image/...":q.link,"OrderedList/... BulletList/...":q.list,"BlockQuote/...":q.quote,"InlineCode CodeText":q.monospace,"URL Autolink":q.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":q.processingInstruction,"CodeInfo LinkLabel":q.labelName,LinkTitle:q.string,Paragraph:q.content}),kU=new jm(new bd(_M).extend(wU),Object.keys(Rp).map(t=>Rp[t]),Object.keys(Rp).map(t=>SM[t]),Object.keys(Rp),vU,uM,Object.keys(iy).map(t=>iy[t]),Object.keys(iy),[]);function CU(t,e,i){let n=[];for(let r=t.firstChild,s=e;;r=r.nextSibling){let a=r?r.from:i;if(a>s&&n.push({from:s,to:a}),!r)break;s=r.to}return n}function TU(t){let{codeParser:e,htmlParser:i}=t;return{wrap:g5((r,s)=>{let a=r.type.id;if(e&&(a==ge.CodeBlock||a==ge.FencedCode)){let c="";if(a==ge.FencedCode){let d=r.node.getChild(ge.CodeInfo);d&&(c=s.read(d.from,d.to))}let h=e(c);if(h)return{parser:h,overlay:d=>d.type.id==ge.CodeText,bracketed:a==ge.FencedCode}}else if(i&&(a==ge.HTMLBlock||a==ge.HTMLTag||a==ge.CommentBlock))return{parser:i,overlay:CU(r.node,r.from,r.to)};return null})}}const QU={resolve:"Strikethrough",mark:"StrikethroughMark"},$U={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":q.strikethrough}},{name:"StrikethroughMark",style:q.processingInstruction}],parseInline:[{name:"Strikethrough",parse(t,e,i){if(e!=126||t.char(i+1)!=126||t.char(i+2)==126)return-1;let n=t.slice(i-1,i),r=t.slice(i+2,i+3),s=/\s|^$/.test(n),a=/\s|^$/.test(r),c=sd.test(n),h=sd.test(r);return t.addDelimiter(QU,i,i+2,!a&&(!h||s||c),!s&&(!c||a||h))},after:"Emphasis"}]};function Ru(t,e,i=0,n,r=0){let s=0,a=!0,c=-1,h=-1,d=!1,f=()=>{n.push(t.elt("TableCell",r+c,r+h,t.parser.parseInline(e.slice(c,h),r+c)))};for(let g=i;g<e.length;g++){let m=e.charCodeAt(g);m==124&&!d?((!a||c>-1)&&s++,a=!1,n&&(c>-1&&f(),n.push(t.elt("TableDelimiter",g+r,g+r+1))),c=h=-1):(d||m!=32&&m!=9)&&(c<0&&(c=g),h=g+1),d=!d&&m==92}return c>-1&&(s++,n&&f()),s}function MQ(t,e){for(let i=e;i<t.length;i++){let n=t.charCodeAt(i);if(n==124)return!0;n==92&&i++}return!1}const EM=/^\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/;class zQ{constructor(){this.rows=null}nextLine(e,i,n){if(this.rows==null){this.rows=!1;let r;if((i.next==45||i.next==58||i.next==124)&&EM.test(r=i.text.slice(i.pos))){let s=[];Ru(e,n.content,0,s,n.start)==Ru(e,r,i.pos)&&(this.rows=[e.elt("TableHeader",n.start,n.start+n.content.length,s),e.elt("TableDelimiter",e.lineStart+i.pos,e.lineStart+i.text.length)])}}else if(this.rows){let r=[];Ru(e,i.text,i.pos,r,e.lineStart),this.rows.push(e.elt("TableRow",e.lineStart+i.pos,e.lineStart+i.text.length,r))}return!1}finish(e,i){return this.rows?(e.addLeafElement(i,e.elt("Table",i.start,i.start+i.content.length,this.rows)),!0):!1}}const PU={defineNodes:[{name:"Table",block:!0},{name:"TableHeader",style:{"TableHeader/...":q.heading}},"TableRow",{name:"TableCell",style:q.content},{name:"TableDelimiter",style:q.processingInstruction}],parseBlock:[{name:"Table",leaf(t,e){return MQ(e.content,0)?new zQ:null},endLeaf(t,e,i){if(i.parsers.some(r=>r instanceof zQ)||!MQ(e.text,e.basePos))return!1;let n=t.peekLine();return EM.test(n)&&Ru(t,e.text,e.basePos)==Ru(t,n,e.basePos)},before:"SetextHeading"}]};class EU{nextLine(){return!1}finish(e,i){return e.addLeafElement(i,e.elt("Task",i.start,i.start+i.content.length,[e.elt("TaskMarker",i.start,i.start+3),...e.parser.parseInline(i.content.slice(3),i.start+3)])),!0}}const RU={defineNodes:[{name:"Task",block:!0,style:q.list},{name:"TaskMarker",style:q.atom}],parseBlock:[{name:"TaskList",leaf(t,e){return/^\[[ xX]\][ \t]/.test(e.content)&&t.parentType().name=="ListItem"?new EU:null},after:"SetextHeading"}]},jQ=/(www\.)|(https?:\/\/)|([\w.+-]{1,100}@)|(mailto:|xmpp:)/gy,DQ=/[\w-]+(\.[\w-]+)+(\/[^\s<]*)?/gy,AU=/[\w-]+\.[\w-]+($|\/)/,BQ=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,LQ=/\/[a-zA-Z\d@.]+/gy;function XQ(t,e,i,n){let r=0;for(let s=e;s<i;s++)t[s]==n&&r++;return r}function MU(t,e){DQ.lastIndex=e;let i=DQ.exec(t);if(!i||AU.exec(i[0])[0].indexOf("_")>-1)return-1;let n=e+i[0].length;for(;;){let r=t[n-1],s;if(/[?!.,:*_~]/.test(r)||r==")"&&XQ(t,e,n,")")>XQ(t,e,n,"("))n--;else if(r==";"&&(s=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(t.slice(e,n))))n=e+s.index;else break}return n}function NQ(t,e){BQ.lastIndex=e;let i=BQ.exec(t);if(!i)return-1;let n=i[0][i[0].length-1];return n=="_"||n=="-"?-1:e+i[0].length-(n=="."?1:0)}const zU={parseInline:[{name:"Autolink",parse(t,e,i){let n=i-t.offset;if(n&&/\w/.test(t.text[n-1]))return-1;jQ.lastIndex=n;let r=jQ.exec(t.text),s=-1;if(!r)return-1;if(r[1]||r[2]){if(s=MU(t.text,n+r[0].length),s>-1&&t.hasOpenLink){let a=/([^\[\]]|\[[^\]]*\])*/.exec(t.text.slice(n,s));s=n+a[0].length}}else r[3]?s=NQ(t.text,n):(s=NQ(t.text,n+r[0].length),s>-1&&r[0]=="xmpp:"&&(LQ.lastIndex=s,r=LQ.exec(t.text),r&&(s=r.index+r[0].length)));return s<0?-1:(t.addElement(t.elt("URL",i,s+t.offset)),s+t.offset)}}]},jU=[PU,RU,$U,zU];function RM(t,e,i){return(n,r,s)=>{if(r!=t||n.char(s+1)==t)return-1;let a=[n.elt(i,s,s+1)];for(let c=s+1;c<n.end;c++){let h=n.char(c);if(h==t)return n.addElement(n.elt(e,s,c+1,a.concat(n.elt(i,c,c+1))));if(h==92&&a.push(n.elt("Escape",c,c+++2)),gr(h))break}return-1}}const DU={defineNodes:[{name:"Superscript",style:q.special(q.content)},{name:"SuperscriptMark",style:q.processingInstruction}],parseInline:[{name:"Superscript",parse:RM(94,"Superscript","SuperscriptMark")}]},BU={defineNodes:[{name:"Subscript",style:q.special(q.content)},{name:"SubscriptMark",style:q.processingInstruction}],parseInline:[{name:"Subscript",parse:RM(126,"Subscript","SubscriptMark")}]},LU={defineNodes:[{name:"Emoji",style:q.character}],parseInline:[{name:"Emoji",parse(t,e,i){let n;return e!=58||!(n=/^[a-zA-Z_0-9]+:/.exec(t.slice(i+1,t.end)))?-1:t.addElement(t.elt("Emoji",i,i+1+n[0].length))}}]},AM=yb({commentTokens:{block:{open:"<!--",close:"-->"}}}),MM=new Ze,zM=kU.configure({props:[pa.add(t=>!t.is("Block")||t.is("Document")||LS(t)!=null||XU(t)?void 0:(e,i)=>({from:i.doc.lineAt(e.from).to,to:e.to})),MM.add(LS),gl.add({Document:()=>null}),Ha.add({Document:AM})]});function LS(t){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(t.name);return e?+e[1]:void 0}function XU(t){return t.name=="OrderedList"||t.name=="BulletList"}function NU(t,e){let i=t;for(;;){let n=i.nextSibling,r;if(!n||(r=LS(n.type))!=null&&r<=e)break;i=n}return i.to}const ZU=b5.of((t,e,i)=>{for(let n=Qt(t).resolveInner(i,-1);n&&!(n.from<e);n=n.parent){let r=n.type.prop(MM);if(r==null)continue;let s=NU(n,r);if(s>i)return{from:i,to:s}}return null});function Ub(t){return new hr(AM,t,[],"markdown")}const WU=Ub(zM),qU=zM.configure([jU,BU,DU,LU,{props:[pa.add({Table:(t,e)=>({from:e.doc.lineAt(t.from).to,to:t.to})})]}]),nm=Ub(qU);function IU(t,e){return i=>{if(i&&t){let n=null;if(i=/\S*/.exec(i)[0],typeof t=="function"?n=t(i):n=Bg.matchLanguageName(t,i,!0),n instanceof Bg)return n.support?n.support.language.parser:Fu.getSkippingParser(n.load());if(n)return n.parser}return e?e.parser:null}}let ny=class{constructor(e,i,n,r,s,a,c){this.node=e,this.from=i,this.to=n,this.spaceBefore=r,this.spaceAfter=s,this.type=a,this.item=c}blank(e,i=!0){let n=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(e!=null){for(;n.length<e;)n+=" ";return n}else{for(let r=this.to-this.from-n.length-this.spaceAfter.length;r>0;r--)n+=" ";return n+(i?this.spaceAfter:"")}}marker(e,i){let n=this.node.name=="OrderedList"?String(+DM(this.item,e)[2]+i):"";return this.spaceBefore+n+this.type+this.spaceAfter}};function jM(t,e){let i=[],n=[];for(let r=t;r;r=r.parent){if(r.name=="FencedCode")return n;(r.name=="ListItem"||r.name=="Blockquote")&&i.push(r)}for(let r=i.length-1;r>=0;r--){let s=i[r],a,c=e.lineAt(s.from),h=s.from-c.from;if(s.name=="Blockquote"&&(a=/^ *>( ?)/.exec(c.text.slice(h))))n.push(new ny(s,h,h+a[0].length,"",a[1],">",null));else if(s.name=="ListItem"&&s.parent.name=="OrderedList"&&(a=/^( *)\d+([.)])( *)/.exec(c.text.slice(h)))){let d=a[3],f=a[0].length;d.length>=4&&(d=d.slice(0,d.length-4),f-=4),n.push(new ny(s.parent,h,h+f,a[1],d,a[2],s))}else if(s.name=="ListItem"&&s.parent.name=="BulletList"&&(a=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(c.text.slice(h)))){let d=a[4],f=a[0].length;d.length>4&&(d=d.slice(0,d.length-4),f-=4);let g=a[2];a[3]&&(g+=a[3].replace(/[xX]/," ")),n.push(new ny(s.parent,h,h+f,a[1],d,g,s))}}return n}function DM(t,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(t.from,t.from+10))}function ry(t,e,i,n=0){for(let r=-1,s=t;;){if(s.name=="ListItem"){let c=DM(s,e),h=+c[2];if(r>=0){if(h!=r+1)return;i.push({from:s.from+c[1].length,to:s.from+c[0].length,insert:String(r+2+n)})}r=h}let a=s.nextSibling;if(!a)break;s=a}}function Gb(t,e){let i=/^[ \t]*/.exec(t)[0].length;if(!i||e.facet(_d)!=" ")return t;let n=Gs(t,4,i),r="";for(let s=n;s>0;)s>=4?(r+=" ",s-=4):(r+=" ",s--);return r+t.slice(i)}const VU=(t={})=>({state:e,dispatch:i})=>{let n=Qt(e),{doc:r}=e,s=null,a=e.changeByRange(c=>{if(!c.empty||!nm.isActiveAt(e,c.from,-1)&&!nm.isActiveAt(e,c.from,1))return s={range:c};let h=c.from,d=r.lineAt(h),f=jM(n.resolveInner(h,-1),r);for(;f.length&&f[f.length-1].from>h-d.from;)f.pop();if(!f.length)return s={range:c};let g=f[f.length-1];if(g.to-g.spaceAfter.length>h-d.from)return s={range:c};let m=h>=g.to-g.spaceAfter.length&&!/\S/.test(d.text.slice(g.to));if(g.item&&m){let x=g.node.firstChild,Q=g.node.getChild("ListItem","ListItem");if(x.to>=h||Q&&Q.to<h||d.from>0&&!/[^\s>]/.test(r.lineAt(d.from-1).text)||t.nonTightLists===!1){let C=f.length>1?f[f.length-2]:null,T,A="";C&&C.item?(T=d.from+C.from,A=C.marker(r,1)):T=d.from+(C?C.to:0);let P=[{from:T,to:h,insert:A}];return g.node.name=="OrderedList"&&ry(g.item,r,P,-2),C&&C.node.name=="OrderedList"&&ry(C.item,r,P),{range:le.cursor(T+A.length),changes:P}}else{let C=WQ(f,e,d);return{range:le.cursor(h+C.length+1),changes:{from:d.from,insert:C+e.lineBreak}}}}if(g.node.name=="Blockquote"&&m&&d.from){let x=r.lineAt(d.from-1),Q=/>\s*$/.exec(x.text);if(Q&&Q.index==g.from){let C=e.changes([{from:x.from+Q.index,to:x.to},{from:d.from+g.from,to:d.to}]);return{range:c.map(C),changes:C}}}let v=[];g.node.name=="OrderedList"&&ry(g.item,r,v);let S=g.item&&g.item.from<d.from,_="";if(!S||/^[\s\d.)\-+*>]*/.exec(d.text)[0].length>=g.to)for(let x=0,Q=f.length-1;x<=Q;x++)_+=x==Q&&!S?f[x].marker(r,1):f[x].blank(x<Q?Gs(d.text,4,f[x+1].from)-_.length:null);let w=h;for(;w>d.from&&/\s/.test(d.text.charAt(w-d.from-1));)w--;return _=Gb(_,e),HU(g.node,e.doc)&&(_=WQ(f,e,d)+e.lineBreak+_),v.push({from:w,to:h,insert:e.lineBreak+_}),{range:le.cursor(w+_.length+1),changes:v}});return s?!1:(i(e.update(a,{scrollIntoView:!0,userEvent:"input"})),!0)},YU=VU();function ZQ(t){return t.name=="QuoteMark"||t.name=="ListMark"}function HU(t,e){if(t.name!="OrderedList"&&t.name!="BulletList")return!1;let i=t.firstChild,n=t.getChild("ListItem","ListItem");if(!n)return!1;let r=e.lineAt(i.to),s=e.lineAt(n.from),a=/^[\s>]*$/.test(r.text);return r.number+(a?0:1)<s.number}function WQ(t,e,i){let n="";for(let r=0,s=t.length-2;r<=s;r++)n+=t[r].blank(r<s?Gs(i.text,4,t[r+1].from)-n.length:null,r<s);return Gb(n,e)}function UU(t,e){let i=t.resolveInner(e,-1),n=e;ZQ(i)&&(n=i.from,i=i.parent);for(let r;r=i.childBefore(n);)if(ZQ(r))n=r.from;else if(r.name=="OrderedList"||r.name=="BulletList")i=r.lastChild,n=i.to;else break;return i}const GU=({state:t,dispatch:e})=>{let i=Qt(t),n=null,r=t.changeByRange(s=>{let a=s.from,{doc:c}=t;if(s.empty&&nm.isActiveAt(t,s.from)){let h=c.lineAt(a),d=jM(UU(i,a),c);if(d.length){let f=d[d.length-1],g=f.to-f.spaceAfter.length+(f.spaceAfter?1:0);if(a-h.from>g&&!/\S/.test(h.text.slice(g,a-h.from)))return{range:le.cursor(h.from+g),changes:{from:h.from+g,to:a}};if(a-h.from==g&&(!f.item||h.from<=f.item.from||!/\S/.test(h.text.slice(0,f.to)))){let m=h.from+f.from;if(f.item&&f.node.from<f.item.from&&/\S/.test(h.text.slice(f.from,f.to))){let v=f.blank(Gs(h.text,4,f.to)-Gs(h.text,4,f.from));return m==h.from&&(v=Gb(v,t)),{range:le.cursor(m+v.length),changes:{from:m,to:h.from+f.to,insert:v}}}if(m<a)return{range:le.cursor(m),changes:{from:m,to:a}}}}}return n={range:s}});return n?!1:(e(t.update(r,{scrollIntoView:!0,userEvent:"delete"})),!0)},FU=[{key:"Enter",run:YU},{key:"Backspace",run:GU}],BM=hM({matchClosingTags:!1});function KU(t={}){let{codeLanguages:e,defaultCodeLanguage:i,addKeymap:n=!0,base:{parser:r}=WU,completeHTMLTags:s=!0,pasteURLAsLink:a=!0,htmlTagLanguage:c=BM}=t;if(!(r instanceof jm))throw new RangeError("Base parser provided to `markdown` should be a Markdown parser");let h=t.extensions?[t.extensions]:[],d=[c.support,ZU],f;a&&d.push(iG),i instanceof cl?(d.push(i.support),f=i.language):i&&(f=i);let g=e||f?IU(e,f):void 0;h.push(TU({codeParser:g,htmlParser:c.language.parser})),n&&d.push(eo.high(Bc.of(FU)));let m=Ub(r.configure(h));return s&&d.push(m.data.of({autocomplete:JU})),new cl(m,d)}function JU(t){let{state:e,pos:i}=t,n=/<[:\-\.\w\u00b7-\uffff]*$/.exec(e.sliceDoc(i-25,i));if(!n)return null;let r=Qt(e).resolveInner(i,-1);for(;r&&!r.type.isTop;){if(r.name=="CodeBlock"||r.name=="FencedCode"||r.name=="ProcessingInstructionBlock"||r.name=="CommentBlock"||r.name=="Link"||r.name=="Image")return null;r=r.parent}return{from:i-n[0].length,to:i,options:eG(),validFor:/^<[:\-\.\w\u00b7-\uffff]*$/}}let sy=null;function eG(){if(sy)return sy;let t=oU(new Pb(ct.create({extensions:BM}),0,!0));return sy=t?t.options:[]}const tG=/code|horizontalrule|html|link|comment|processing|escape|entity|image|mark|url/i,iG=xe.domEventHandlers({paste:(t,e)=>{var i;let{main:n}=e.state.selection;if(n.empty)return!1;let r=(i=t.clipboardData)===null||i===void 0?void 0:i.getData("text/plain");if(!r||!/^(https?:\/\/|mailto:|xmpp:|www\.)/.test(r)||(/^www\./.test(r)&&(r="https://"+r),!nm.isActiveAt(e.state,n.from,1)))return!1;let s=Qt(e.state),a=!1;return s.iterate({from:n.from,to:n.to,enter:c=>{(c.from>n.from||tG.test(c.name))&&(a=!0)},leave:c=>{c.to<n.to&&(a=!0)}}),a?!1:(e.dispatch({changes:[{from:n.from,insert:"["},{from:n.to,insert:`](${r})`}],userEvent:"input.paste",scrollIntoView:!0}),!0)}}),nG=1,LM=194,XM=195,rG=196,qQ=197,sG=198,oG=199,aG=200,lG=2,NM=3,IQ=201,cG=24,hG=25,uG=49,dG=50,fG=55,pG=56,gG=57,mG=59,OG=60,vG=61,yG=62,SG=63,bG=65,_G=238,xG=71,wG=241,kG=242,CG=243,TG=244,QG=245,$G=246,PG=247,EG=248,ZM=72,RG=249,AG=250,MG=251,zG=252,jG=253,DG=254,BG=255,LG=256,XG=73,NG=77,ZG=263,WG=112,qG=130,IG=151,VG=152,YG=155,ul=10,od=13,Fb=32,Dm=9,Kb=35,HG=40,UG=46,XS=123,VQ=125,WM=39,qM=34,YQ=92,GG=111,FG=120,KG=78,JG=117,eF=85,tF=new Set([hG,uG,dG,ZG,bG,qG,pG,gG,_G,yG,SG,ZM,XG,NG,OG,vG,IG,VG,YG,WG]);function oy(t){return t==ul||t==od}function ay(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}const iF=new Zi((t,e)=>{let i;if(t.next<0)t.acceptToken(oG);else if(e.context.flags&rg)oy(t.next)&&t.acceptToken(sG,1);else if(((i=t.peek(-1))<0||oy(i))&&e.canShift(qQ)){let n=0;for(;t.next==Fb||t.next==Dm;)t.advance(),n++;(t.next==ul||t.next==od||t.next==Kb)&&t.acceptToken(qQ,-n)}else oy(t.next)&&t.acceptToken(rG,1)},{contextual:!0}),nF=new Zi((t,e)=>{let i=e.context;if(i.flags)return;let n=t.peek(-1);if(n==ul||n==od){let r=0,s=0;for(;;){if(t.next==Fb)r++;else if(t.next==Dm)r+=8-r%8;else break;t.advance(),s++}r!=i.indent&&t.next!=ul&&t.next!=od&&t.next!=Kb&&(r<i.indent?t.acceptToken(XM,-s):t.acceptToken(LM))}}),rg=1,IM=2,Ls=4,Xs=8,Ns=16,Zs=32;function sg(t,e,i){this.parent=t,this.indent=e,this.flags=i,this.hash=(t?t.hash+t.hash<<8:0)+e+(e<<4)+i+(i<<6)}const rF=new sg(null,0,0);function sF(t){let e=0;for(let i=0;i<t.length;i++)e+=t.charCodeAt(i)==Dm?8-e%8:1;return e}const HQ=new Map([[wG,0],[kG,Ls],[CG,Xs],[TG,Xs|Ls],[QG,Ns],[$G,Ns|Ls],[PG,Ns|Xs],[EG,Ns|Xs|Ls],[RG,Zs],[AG,Zs|Ls],[MG,Zs|Xs],[zG,Zs|Xs|Ls],[jG,Zs|Ns],[DG,Zs|Ns|Ls],[BG,Zs|Ns|Xs],[LG,Zs|Ns|Xs|Ls]].map(([t,e])=>[t,e|IM])),oF=new Lb({start:rF,reduce(t,e,i,n){return t.flags&rg&&tF.has(e)||(e==xG||e==ZM)&&t.flags&IM?t.parent:t},shift(t,e,i,n){return e==LM?new sg(t,sF(n.read(n.pos,i.pos)),0):e==XM?t.parent:e==cG||e==fG||e==mG||e==NM?new sg(t,0,rg):HQ.has(e)?new sg(t,0,HQ.get(e)|t.flags&rg):t},hash(t){return t.hash}}),aF=new Zi(t=>{for(let e=0;e<5;e++){if(t.next!="print".charCodeAt(e))return;t.advance()}if(!/\w/.test(String.fromCharCode(t.next)))for(let e=0;;e++){let i=t.peek(e);if(!(i==Fb||i==Dm)){i!=HG&&i!=UG&&i!=ul&&i!=od&&i!=Kb&&t.acceptToken(nG);return}}}),lF=new Zi((t,e)=>{let{flags:i}=e.context,n=i&Ls?qM:WM,r=(i&Xs)>0,s=!(i&Ns),a=(i&Zs)>0,c=t.pos;for(;!(t.next<0);)if(a&&t.next==XS)if(t.peek(1)==XS)t.advance(2);else{if(t.pos==c){t.acceptToken(NM,1);return}break}else if(s&&t.next==YQ){if(t.pos==c){t.advance();let h=t.next;h>=0&&(t.advance(),cF(t,h)),t.acceptToken(lG);return}break}else if(t.next==YQ&&!s&&t.peek(1)>-1)t.advance(2);else if(t.next==n&&(!r||t.peek(1)==n&&t.peek(2)==n)){if(t.pos==c){t.acceptToken(IQ,r?3:1);return}break}else if(t.next==ul){if(r)t.advance();else if(t.pos==c){t.acceptToken(IQ);return}break}else t.advance();t.pos>c&&t.acceptToken(aG)});function cF(t,e){if(e==GG)for(let i=0;i<2&&t.next>=48&&t.next<=55;i++)t.advance();else if(e==FG)for(let i=0;i<2&&ay(t.next);i++)t.advance();else if(e==JG)for(let i=0;i<4&&ay(t.next);i++)t.advance();else if(e==eF)for(let i=0;i<8&&ay(t.next);i++)t.advance();else if(e==KG&&t.next==XS){for(t.advance();t.next>=0&&t.next!=VQ&&t.next!=WM&&t.next!=qM&&t.next!=ul;)t.advance();t.next==VQ&&t.advance()}}const hF=fa({'async "*" "**" FormatConversion FormatSpec':q.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield match case":q.controlKeyword,"in not and or is del":q.operatorKeyword,"from def class global nonlocal lambda":q.definitionKeyword,import:q.moduleKeyword,"with as print":q.keyword,Boolean:q.bool,None:q.null,VariableName:q.variableName,"CallExpression/VariableName":q.function(q.variableName),"FunctionDefinition/VariableName":q.function(q.definition(q.variableName)),"ClassDefinition/VariableName":q.definition(q.className),PropertyName:q.propertyName,"CallExpression/MemberExpression/PropertyName":q.function(q.propertyName),Comment:q.lineComment,Number:q.number,String:q.string,FormatString:q.special(q.string),Escape:q.escape,UpdateOp:q.updateOperator,"ArithOp!":q.arithmeticOperator,BitOp:q.bitwiseOperator,CompareOp:q.compareOperator,AssignOp:q.definitionOperator,Ellipsis:q.punctuation,At:q.meta,"( )":q.paren,"[ ]":q.squareBracket,"{ }":q.brace,".":q.derefOperator,", ;":q.separator}),uF={__proto__:null,await:44,or:54,and:56,in:60,not:62,is:64,if:70,else:72,lambda:76,yield:94,from:96,async:102,for:104,None:162,True:164,False:164,del:178,pass:182,break:186,continue:190,return:194,raise:202,import:206,as:208,global:212,nonlocal:214,assert:218,type:223,elif:236,while:240,try:246,except:248,finally:250,with:254,def:258,class:268,match:279,case:285},dF=ua.deserialize({version:14,states:"##jO`QeOOP$}OSOOO&WQtO'#HUOOQS'#Co'#CoOOQS'#Cp'#CpO'vQdO'#CnO*UQtO'#HTOOQS'#HU'#HUOOQS'#DU'#DUOOQS'#HT'#HTO*rQdO'#D_O+VQdO'#DfO+gQdO'#DjO+zOWO'#DuO,VOWO'#DvO.[QtO'#GuOOQS'#Gu'#GuO'vQdO'#GtO0ZQtO'#GtOOQS'#Eb'#EbO0rQdO'#EcOOQS'#Gs'#GsO0|QdO'#GrOOQV'#Gr'#GrO1XQdO'#FYOOQS'#G^'#G^O1^QdO'#FXOOQV'#IS'#ISOOQV'#Gq'#GqOOQV'#Fq'#FqQ`QeOOO'vQdO'#CqO1lQdO'#C}O1sQdO'#DRO2RQdO'#HYO2cQtO'#EVO'vQdO'#EWOOQS'#EY'#EYOOQS'#E['#E[OOQS'#E^'#E^O2wQdO'#E`O3_QdO'#EdO3rQdO'#EfO3zQtO'#EfO1XQdO'#EiO0rQdO'#ElO1XQdO'#EnO0rQdO'#EtO0rQdO'#EwO4VQdO'#EyO4^QdO'#FOO4iQdO'#EzO0rQdO'#FOO1XQdO'#FQO1XQdO'#FVO4nQdO'#F[P4uOdO'#GpPOOO)CBd)CBdOOQS'#Ce'#CeOOQS'#Cf'#CfOOQS'#Cg'#CgOOQS'#Ch'#ChOOQS'#Ci'#CiOOQS'#Cj'#CjOOQS'#Cl'#ClO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO'vQdO,59OO5TQdO'#DoOOQS,5:Y,5:YO5hQdO'#HdOOQS,5:],5:]O5uQ!fO,5:]O5zQtO,59YO1lQdO,59bO1lQdO,59bO1lQdO,59bO8jQdO,59bO8oQdO,59bO8vQdO,59jO8}QdO'#HTO:TQdO'#HSOOQS'#HS'#HSOOQS'#D['#D[O:lQdO,59aO'vQdO,59aO:zQdO,59aOOQS,59y,59yO;PQdO,5:RO'vQdO,5:ROOQS,5:Q,5:QO;_QdO,5:QO;dQdO,5:XO'vQdO,5:XO'vQdO,5:VOOQS,5:U,5:UO;uQdO,5:UO;zQdO,5:WOOOW'#Fy'#FyO<POWO,5:aOOQS,5:a,5:aO<[QdO'#HwOOOW'#Dw'#DwOOOW'#Fz'#FzO<lOWO,5:bOOQS,5:b,5:bOOQS'#F}'#F}O<zQtO,5:iO?lQtO,5=`O@VQ#xO,5=`O@vQtO,5=`OOQS,5:},5:}OA_QeO'#GWOBqQdO,5;^OOQV,5=^,5=^OB|QtO'#IPOCkQdO,5;tOOQS-E:[-E:[OOQV,5;s,5;sO4dQdO'#FQOOQV-E9o-E9oOCsQtO,59]OEzQtO,59iOFeQdO'#HVOFpQdO'#HVO1XQdO'#HVOF{QdO'#DTOGTQdO,59mOGYQdO'#HZO'vQdO'#HZO0rQdO,5=tOOQS,5=t,5=tO0rQdO'#EROOQS'#ES'#ESOGwQdO'#GPOHXQdO,58|OHXQdO,58|O*xQdO,5:oOHgQtO'#H]OOQS,5:r,5:rOOQS,5:z,5:zOHzQdO,5;OOI]QdO'#IOO1XQdO'#H}OOQS,5;Q,5;QOOQS'#GT'#GTOIqQtO,5;QOJPQdO,5;QOJUQdO'#IQOOQS,5;T,5;TOJdQdO'#H|OOQS,5;W,5;WOJuQdO,5;YO4iQdO,5;`O4iQdO,5;cOJ}QtO'#ITO'vQdO'#ITOKXQdO,5;eO4VQdO,5;eO0rQdO,5;jO1XQdO,5;lOK^QeO'#EuOLjQgO,5;fO!!kQdO'#IUO4iQdO,5;jO!!vQdO,5;lO!#OQdO,5;qO!#ZQtO,5;vO'vQdO,5;vPOOO,5=[,5=[P!#bOSO,5=[P!#jOdO,5=[O!&bQtO1G.jO!&iQtO1G.jO!)YQtO1G.jO!)dQtO1G.jO!+}QtO1G.jO!,bQtO1G.jO!,uQdO'#HcO!-TQtO'#GuO0rQdO'#HcO!-_QdO'#HbOOQS,5:Z,5:ZO!-gQdO,5:ZO!-lQdO'#HeO!-wQdO'#HeO!.[QdO,5>OOOQS'#Ds'#DsOOQS1G/w1G/wOOQS1G.|1G.|O!/[QtO1G.|O!/cQtO1G.|O1lQdO1G.|O!0OQdO1G/UOOQS'#DZ'#DZO0rQdO,59tOOQS1G.{1G.{O!0VQdO1G/eO!0gQdO1G/eO!0oQdO1G/fO'vQdO'#H[O!0tQdO'#H[O!0yQtO1G.{O!1ZQdO,59iO!2aQdO,5=zO!2qQdO,5=zO!2yQdO1G/mO!3OQtO1G/mOOQS1G/l1G/lO!3`QdO,5=uO!4VQdO,5=uO0rQdO1G/qO!4tQdO1G/sO!4yQtO1G/sO!5ZQtO1G/qOOQS1G/p1G/pOOQS1G/r1G/rOOOW-E9w-E9wOOQS1G/{1G/{O!5kQdO'#HxO0rQdO'#HxO!5|QdO,5>cOOOW-E9x-E9xOOQS1G/|1G/|OOQS-E9{-E9{O!6[Q#xO1G2zO!6{QtO1G2zO'vQdO,5<jOOQS,5<j,5<jOOQS-E9|-E9|OOQS,5<r,5<rOOQS-E:U-E:UOOQV1G0x1G0xO1XQdO'#GRO!7dQtO,5>kOOQS1G1`1G1`O!8RQdO1G1`OOQS'#DV'#DVO0rQdO,5=qOOQS,5=q,5=qO!8WQdO'#FrO!8cQdO,59oO!8kQdO1G/XO!8uQtO,5=uOOQS1G3`1G3`OOQS,5:m,5:mO!9fQdO'#GtOOQS,5<k,5<kOOQS-E9}-E9}O!9wQdO1G.hOOQS1G0Z1G0ZO!:VQdO,5=wO!:gQdO,5=wO0rQdO1G0jO0rQdO1G0jO!:xQdO,5>jO!;ZQdO,5>jO1XQdO,5>jO!;lQdO,5>iOOQS-E:R-E:RO!;qQdO1G0lO!;|QdO1G0lO!<RQdO,5>lO!<aQdO,5>lO!<oQdO,5>hO!=VQdO,5>hO!=hQdO'#EpO0rQdO1G0tO!=sQdO1G0tO!=xQgO1G0zO!AvQgO1G0}O!EqQdO,5>oO!E{QdO,5>oO!FTQtO,5>oO0rQdO1G1PO!F_QdO1G1PO4iQdO1G1UO!!vQdO1G1WOOQV,5;a,5;aO!FdQfO,5;aO!FiQgO1G1QO!JjQdO'#GZO4iQdO1G1QO4iQdO1G1QO!JzQdO,5>pO!KXQdO,5>pO1XQdO,5>pOOQV1G1U1G1UO!KaQdO'#FSO!KrQ!fO1G1WO!KzQdO1G1WOOQV1G1]1G1]O4iQdO1G1]O!LPQdO1G1]O!LXQdO'#F^OOQV1G1b1G1bO!#ZQtO1G1bPOOO1G2v1G2vP!L^OSO1G2vOOQS,5=},5=}OOQS'#Dp'#DpO0rQdO,5=}O!LfQdO,5=|O!LyQdO,5=|OOQS1G/u1G/uO!MRQdO,5>PO!McQdO,5>PO!MkQdO,5>PO!NOQdO,5>PO!N`QdO,5>POOQS1G3j1G3jOOQS7+$h7+$hO!8kQdO7+$pO#!RQdO1G.|O#!YQdO1G.|OOQS1G/`1G/`OOQS,5<`,5<`O'vQdO,5<`OOQS7+%P7+%PO#!aQdO7+%POOQS-E9r-E9rOOQS7+%Q7+%QO#!qQdO,5=vO'vQdO,5=vOOQS7+$g7+$gO#!vQdO7+%PO##OQdO7+%QO##TQdO1G3fOOQS7+%X7+%XO##eQdO1G3fO##mQdO7+%XOOQS,5<_,5<_O'vQdO,5<_O##rQdO1G3aOOQS-E9q-E9qO#$iQdO7+%]OOQS7+%_7+%_O#$wQdO1G3aO#%fQdO7+%_O#%kQdO1G3gO#%{QdO1G3gO#&TQdO7+%]O#&YQdO,5>dO#&sQdO,5>dO#&sQdO,5>dOOQS'#Dx'#DxO#'UO&jO'#DzO#'aO`O'#HyOOOW1G3}1G3}O#'fQdO1G3}O#'nQdO1G3}O#'yQ#xO7+(fO#(jQtO1G2UP#)TQdO'#GOOOQS,5<m,5<mOOQS-E:P-E:POOQS7+&z7+&zOOQS1G3]1G3]OOQS,5<^,5<^OOQS-E9p-E9pOOQS7+$s7+$sO#)bQdO,5=`O#){QdO,5=`O#*^QtO,5<aO#*qQdO1G3cOOQS-E9s-E9sOOQS7+&U7+&UO#+RQdO7+&UO#+aQdO,5<nO#+uQdO1G4UOOQS-E:Q-E:QO#,WQdO1G4UOOQS1G4T1G4TOOQS7+&W7+&WO#,iQdO7+&WOOQS,5<p,5<pO#,tQdO1G4WOOQS-E:S-E:SOOQS,5<l,5<lO#-SQdO1G4SOOQS-E:O-E:OO1XQdO'#EqO#-jQdO'#EqO#-uQdO'#IRO#-}QdO,5;[OOQS7+&`7+&`O0rQdO7+&`O#.SQgO7+&fO!JmQdO'#GXO4iQdO7+&fO4iQdO7+&iO#2QQtO,5<tO'vQdO,5<tO#2[QdO1G4ZOOQS-E:W-E:WO#2fQdO1G4ZO4iQdO7+&kO0rQdO7+&kOOQV7+&p7+&pO!KrQ!fO7+&rO!KzQdO7+&rO`QeO1G0{OOQV-E:X-E:XO4iQdO7+&lO4iQdO7+&lOOQV,5<u,5<uO#2nQdO,5<uO!JmQdO,5<uOOQV7+&l7+&lO#2yQgO7+&lO#6tQdO,5<vO#7PQdO1G4[OOQS-E:Y-E:YO#7^QdO1G4[O#7fQdO'#IWO#7tQdO'#IWO1XQdO'#IWOOQS'#IW'#IWO#8PQdO'#IVOOQS,5;n,5;nO#8XQdO,5;nO0rQdO'#FUOOQV7+&r7+&rO4iQdO7+&rOOQV7+&w7+&wO4iQdO7+&wO#8^QfO,5;xOOQV7+&|7+&|POOO7+(b7+(bO#8cQdO1G3iOOQS,5<c,5<cO#8qQdO1G3hOOQS-E9u-E9uO#9UQdO,5<dO#9aQdO,5<dO#9tQdO1G3kOOQS-E9v-E9vO#:UQdO1G3kO#:^QdO1G3kO#:nQdO1G3kO#:UQdO1G3kOOQS<<H[<<H[O#:yQtO1G1zOOQS<<Hk<<HkP#;WQdO'#FtO8vQdO1G3bO#;eQdO1G3bO#;jQdO<<HkOOQS<<Hl<<HlO#;zQdO7+)QOOQS<<Hs<<HsO#<[QtO1G1yP#<{QdO'#FsO#=YQdO7+)RO#=jQdO7+)RO#=rQdO<<HwO#=wQdO7+({OOQS<<Hy<<HyO#>nQdO,5<bO'vQdO,5<bOOQS-E9t-E9tOOQS<<Hw<<HwOOQS,5<g,5<gO0rQdO,5<gO#>sQdO1G4OOOQS-E9y-E9yO#?^QdO1G4OO<[QdO'#H{OOOO'#D{'#D{OOOO'#F|'#F|O#?oO&jO,5:fOOOW,5>e,5>eOOOW7+)i7+)iO#?zQdO7+)iO#@SQdO1G2zO#@mQdO1G2zP'vQdO'#FuO0rQdO<<IpO1XQdO1G2YP1XQdO'#GSO#AOQdO7+)pO#AaQdO7+)pOOQS<<Ir<<IrP1XQdO'#GUP0rQdO'#GQOOQS,5;],5;]O#ArQdO,5>mO#BQQdO,5>mOOQS1G0v1G0vOOQS<<Iz<<IzOOQV-E:V-E:VO4iQdO<<JQOOQV,5<s,5<sO4iQdO,5<sOOQV<<JQ<<JQOOQV<<JT<<JTO#BYQtO1G2`P#BdQdO'#GYO#BkQdO7+)uO#BuQgO<<JVO4iQdO<<JVOOQV<<J^<<J^O4iQdO<<J^O!KrQ!fO<<J^O#FpQgO7+&gOOQV<<JW<<JWO#FzQgO<<JWOOQV1G2a1G2aO1XQdO1G2aO#JuQdO1G2aO4iQdO<<JWO1XQdO1G2bP0rQdO'#G[O#KQQdO7+)vO#K_QdO7+)vOOQS'#FT'#FTO0rQdO,5>rO#KgQdO,5>rO#KrQdO,5>rO#K}QdO,5>qO#L`QdO,5>qOOQS1G1Y1G1YOOQS,5;p,5;pOOQV<<Jc<<JcO#LhQdO1G1dOOQS7+)T7+)TP#LmQdO'#FwO#L}QdO1G2OO#MbQdO1G2OO#MrQdO1G2OP#M}QdO'#FxO#N[QdO7+)VO#NlQdO7+)VO#NlQdO7+)VO#NtQdO7+)VO$ UQdO7+(|O8vQdO7+(|OOQSAN>VAN>VO$ oQdO<<LmOOQSAN>cAN>cO0rQdO1G1|O$!PQtO1G1|P$!ZQdO'#FvOOQS1G2R1G2RP$!hQdO'#F{O$!uQdO7+)jO$#`QdO,5>gOOOO-E9z-E9zOOOW<<MT<<MTO$#nQdO7+(fOOQSAN?[AN?[OOQS7+'t7+'tO$$XQdO<<M[OOQS,5<q,5<qO$$jQdO1G4XOOQS-E:T-E:TOOQVAN?lAN?lOOQV1G2_1G2_O4iQdOAN?qO$$xQgOAN?qOOQVAN?xAN?xO4iQdOAN?xOOQV<<JR<<JRO4iQdOAN?rO4iQdO7+'{OOQV7+'{7+'{O1XQdO7+'{OOQVAN?rAN?rOOQS7+'|7+'|O$(sQdO<<MbOOQS1G4^1G4^O0rQdO1G4^OOQS,5<w,5<wO$)QQdO1G4]OOQS-E:Z-E:ZOOQU'#G_'#G_O$)cQfO7+'OO$)nQdO'#F_O$*uQdO7+'jO$+VQdO7+'jOOQS7+'j7+'jO$+bQdO<<LqO$+rQdO<<LqO$+rQdO<<LqO$+zQdO'#H^OOQS<<Lh<<LhO$,UQdO<<LhOOQS7+'h7+'hOOQS'#D|'#D|OOOO1G4R1G4RO$,oQdO1G4RO$,wQdO1G4RP!=hQdO'#GVOOQVG25]G25]O4iQdOG25]OOQVG25dG25dOOQVG25^G25^OOQV<<Kg<<KgO4iQdO<<KgOOQS7+)x7+)xP$-SQdO'#G]OOQU-E:]-E:]OOQV<<Jj<<JjO$-vQtO'#FaOOQS'#Fc'#FcO$.WQdO'#FbO$.xQdO'#FbOOQS'#Fb'#FbO$.}QdO'#IYO$)nQdO'#FiO$)nQdO'#FiO$/fQdO'#FjO$)nQdO'#FkO$/mQdO'#IZOOQS'#IZ'#IZO$0[QdO,5;yOOQS<<KU<<KUO$0dQdO<<KUO$0tQdOANB]O$1UQdOANB]O$1^QdO'#H_OOQS'#H_'#H_O1sQdO'#DcO$1wQdO,5=xOOQSANBSANBSOOOO7+)m7+)mO$2`QdO7+)mOOQVLD*wLD*wOOQVANARANARO5uQ!fO'#GaO$2hQtO,5<SO$)nQdO'#FmOOQS,5<W,5<WOOQS'#Fd'#FdO$3YQdO,5;|O$3_QdO,5;|OOQS'#Fg'#FgO$)nQdO'#G`O$4PQdO,5<QO$4kQdO,5>tO$4{QdO,5>tO1XQdO,5<PO$5^QdO,5<TO$5cQdO,5<TO$)nQdO'#I[O$5hQdO'#I[O$5mQdO,5<UOOQS,5<V,5<VO0rQdO'#FpOOQU1G1e1G1eO4iQdO1G1eOOQSAN@pAN@pO$5rQdOG27wO$6SQdO,59}OOQS1G3d1G3dOOOO<<MX<<MXOOQS,5<{,5<{OOQS-E:_-E:_O$6XQtO'#FaO$6`QdO'#I]O$6nQdO'#I]O$6vQdO,5<XOOQS1G1h1G1hO$6{QdO1G1hO$7QQdO,5<zOOQS-E:^-E:^O$7lQdO,5=OO$8TQdO1G4`OOQS-E:b-E:bOOQS1G1k1G1kOOQS1G1o1G1oO$8eQdO,5>vO$)nQdO,5>vOOQS1G1p1G1pOOQS,5<[,5<[OOQU7+'P7+'PO$+zQdO1G/iO$)nQdO,5<YO$8sQdO,5>wO$8zQdO,5>wOOQS1G1s1G1sOOQS7+'S7+'SP$)nQdO'#GdO$9SQdO1G4bO$9^QdO1G4bO$9fQdO1G4bOOQS7+%T7+%TO$9tQdO1G1tO$:SQtO'#FaO$:ZQdO,5<}OOQS,5<},5<}O$:iQdO1G4cOOQS-E:a-E:aO$)nQdO,5<|O$:pQdO,5<|O$:uQdO7+)|OOQS-E:`-E:`O$;PQdO7+)|O$)nQdO,5<ZP$)nQdO'#GcO$;XQdO1G2hO$)nQdO1G2hP$;gQdO'#GbO$;nQdO<<MhO$;xQdO1G1uO$<WQdO7+(SO8vQdO'#C}O8vQdO,59bO8vQdO,59bO8vQdO,59bO$<fQtO,5=`O8vQdO1G.|O0rQdO1G/XO0rQdO7+$pP$<yQdO'#GOO'vQdO'#GtO$=WQdO,59bO$=]QdO,59bO$=dQdO,59mO$=iQdO1G/UO1sQdO'#DRO8vQdO,59j",stateData:"$>S~O%cOS%^OSSOS%]PQ~OPdOVaOfoOhYOopOs!POvqO!PrO!Q{O!T!SO!U!RO!XZO!][O!h`O!r`O!s`O!t`O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#l!QO#o!TO#s!UO#u!VO#z!WO#}hO$P!XO%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~O%]!YO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%j![O%k!]O%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aO~Ok%xXl%xXm%xXn%xXo%xXp%xXs%xXz%xX{%xX!x%xX#g%xX%[%xX%_%xX%z%xXg%xX!T%xX!U%xX%{%xX!W%xX![%xX!Q%xX#[%xXt%xX!m%xX~P%SOfoOhYO!XZO!][O!h`O!r`O!s`O!t`O%oRO%pRO%tSO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O~Oz%wX{%wX#g%wX%[%wX%_%wX%z%wX~Ok!pOl!qOm!oOn!oOo!rOp!sOs!tO!x%wX~P)pOV!zOg!|Oo0cOv0qO!PrO~P'vOV#OOo0cOv0qO!W#PO~P'vOV#SOa#TOo0cOv0qO![#UO~P'vOQ#XO%`#XO%a#ZO~OQ#^OR#[O%`#^O%a#`O~OV%iX_%iXa%iXh%iXk%iXl%iXm%iXn%iXo%iXp%iXs%iXz%iX!X%iX!f%iX%j%iX%k%iX%l%iX%m%iX%n%iX%o%iX%p%iX%q%iX%r%iX%s%iXg%iX!T%iX!U%iX~O&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O&c^O&d^O&e^O&f^O&g^O&h^O&i^O&j^O{%iX!x%iX#g%iX%[%iX%_%iX%z%iX%{%iX!W%iX![%iX!Q%iX#[%iXt%iX!m%iX~P,eOz#dO{%hX!x%hX#g%hX%[%hX%_%hX%z%hX~Oo0cOv0qO~P'vO#g#gO%[#iO%_#iO~O%uWO~O!T#nO#u!VO#z!WO#}hO~OopO~P'vOV#sOa#tO%uWO{wP~OV#xOo0cOv0qO!Q#yO~P'vO{#{O!x$QO%z#|O#g!yX%[!yX%_!yX~OV#xOo0cOv0qO#g#SX%[#SX%_#SX~P'vOo0cOv0qO#g#WX%[#WX%_#WX~P'vOh$WO%uWO~O!f$YO!r$YO%uWO~OV$eO~P'vO!U$gO#s$hO#u$iO~O{$jO~OV$qO~P'vOS$sO%[$rO%_$rO%c$tO~OV$}Oa$}Og%POo0cOv0qO~P'vOo0cOv0qO{%SO~P'vO&Y%UO~Oa!bOh!iO!X!kO!f!mOVba_bakbalbambanbaobapbasbazba{ba!xba#gba%[ba%_ba%jba%kba%lba%mba%nba%oba%pba%qba%rba%sba%zbagba!Tba!Uba%{ba!Wba![ba!Qba#[batba!mba~On%ZO~Oo%ZO~P'vOo0cO~P'vOk0eOl0fOm0dOn0dOo0mOp0nOs0rOg%wX!T%wX!U%wX%{%wX!W%wX![%wX!Q%wX#[%wX!m%wX~P)pO%{%]Og%vXz%vX!T%vX!U%vX!W%vX{%vX~Og%_Oz%`O!T%dO!U%cO~Og%_O~Oz%gO!T%dO!U%cO!W&SX~O!W%kO~Oz%lO{%nO!T%dO!U%cO![%}X~O![%rO~O![%sO~OQ#XO%`#XO%a%uO~OV%wOo0cOv0qO!PrO~P'vOQ#^OR#[O%`#^O%a%zO~OV!qa_!qaa!qah!qak!qal!qam!qan!qao!qap!qas!qaz!qa{!qa!X!qa!f!qa!x!qa#g!qa%[!qa%_!qa%j!qa%k!qa%l!qa%m!qa%n!qa%o!qa%p!qa%q!qa%r!qa%s!qa%z!qag!qa!T!qa!U!qa%{!qa!W!qa![!qa!Q!qa#[!qat!qa!m!qa~P#yOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P%SOV&OOopOvqO{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~P'vOz%|O{%ha!x%ha#g%ha%[%ha%_%ha%z%ha~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO#g$zX%[$zX%_$zX~P'vO#g#gO%[&TO%_&TO~O!f&UOh&sX%[&sXz&sX#[&sX#g&sX%_&sX#Z&sXg&sX~Oh!iO%[&WO~Okealeameaneaoeapeaseazea{ea!xea#gea%[ea%_ea%zeagea!Tea!Uea%{ea!Wea![ea!Qea#[eatea!mea~P%SOsqazqa{qa#gqa%[qa%_qa%zqa~Ok!pOl!qOm!oOn!oOo!rOp!sO!xqa~PEcO%z&YOz%yX{%yX~O%uWOz%yX{%yX~Oz&]O{wX~O{&_O~Oz%lO#g%}X%[%}X%_%}Xg%}X{%}X![%}X!m%}X%z%}X~OV0lOo0cOv0qO!PrO~P'vO%z#|O#gUa%[Ua%_Ua~Oz&hO#g&PX%[&PX%_&PXn&PX~P%SOz&kO!Q&jO#g#Wa%[#Wa%_#Wa~Oz&lO#[&nO#g&rX%[&rX%_&rXg&rX~O!f$YO!r$YO#Z&qO%uWO~O#Z&qO~Oz&sO#g&tX%[&tX%_&tX~Oz&uO#g&pX%[&pX%_&pX{&pX~O!X&wO%z&xO~Oz&|On&wX~P%SOn'PO~OPdOVaOopOvqO!PrO!Q{O!{tO!}uO#PvO#RwO#TxO#XyO#ZzO#^|O#_|O#a}O#c!OO%['UO~P'vOt'YO#p'WO#q'XOP#naV#naf#nah#nao#nas#nav#na!P#na!Q#na!T#na!U#na!X#na!]#na!h#na!r#na!s#na!t#na!{#na!}#na#P#na#R#na#T#na#X#na#Z#na#^#na#_#na#a#na#c#na#l#na#o#na#s#na#u#na#z#na#}#na$P#na%X#na%o#na%p#na%t#na%u#na&Z#na&[#na&]#na&^#na&_#na&`#na&a#na&b#na&c#na&d#na&e#na&f#na&g#na&h#na&i#na&j#na%Z#na%_#na~Oz'ZO#[']O{&xX~Oh'_O!X&wO~Oh!iO{$jO!X&wO~O{'eO~P%SO%['hO%_'hO~OS'iO%['hO%_'hO~OV!aO_!aOa!bOh!iO!X!kO!f!mO%l!^O%m!_O%n!_O%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%k!]O~P!#uO%kWi~P!#uOV!aO_!aOa!bOh!iO!X!kO!f!mO%o!`O%p!`O%q!aO%r!aO%s!aOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~O%m!_O%n!_O~P!&pO%mWi%nWi~P!&pOa!bOh!iO!X!kO!f!mOkWilWimWinWioWipWisWizWi{Wi!xWi#gWi%[Wi%_Wi%jWi%kWi%lWi%mWi%nWi%oWi%pWi%zWigWi!TWi!UWi%{Wi!WWi![Wi!QWi#[WitWi!mWi~OV!aO_!aO%q!aO%r!aO%s!aO~P!)nOVWi_Wi%qWi%rWi%sWi~P!)nO!T%dO!U%cOg&VXz&VX~O%z'kO%{'kO~P,eOz'mOg&UX~Og'oO~Oz'pO{'rO!W&XX~Oo0cOv0qOz'pO{'sO!W&XX~P'vO!W'uO~Om!oOn!oOo!rOp!sOkjisjizji{ji!xji#gji%[ji%_ji%zji~Ol!qO~P!.aOlji~P!.aOk0eOl0fOm0dOn0dOo0mOp0nO~Ot'wO~P!/jOV'|Og'}Oo0cOv0qO~P'vOg'}Oz(OO~Og(QO~O!U(SO~Og(TOz(OO!T%dO!U%cO~P%SOk0eOl0fOm0dOn0dOo0mOp0nOgqa!Tqa!Uqa%{qa!Wqa![qa!Qqa#[qatqa!mqa~PEcOV'|Oo0cOv0qO!W&Sa~P'vOz(WO!W&Sa~O!W(XO~Oz(WO!T%dO!U%cO!W&Sa~P%SOV(]Oo0cOv0qO![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~P'vOz(^O![%}a#g%}a%[%}a%_%}ag%}a{%}a!m%}a%z%}a~O![(aO~Oz(^O!T%dO!U%cO![%}a~P%SOz(dO!T%dO!U%cO![&Ta~P%SOz(gO{&lX![&lX!m&lX%z&lX~O{(kO![(mO!m(nO%z(jO~OV&OOopOvqO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~P'vOz(pO{%hi!x%hi#g%hi%[%hi%_%hi%z%hi~O!f&UOh&sa%[&saz&sa#[&sa#g&sa%_&sa#Z&sag&sa~O%[(uO~OV#sOa#tO%uWO~Oz&]O{wa~OopOvqO~P'vOz(^O#g%}a%[%}a%_%}ag%}a{%}a![%}a!m%}a%z%}a~P%SOz(zO#g%hX%[%hX%_%hX%z%hX~O%z#|O#gUi%[Ui%_Ui~O#g&Pa%[&Pa%_&Pan&Pa~P'vOz(}O#g&Pa%[&Pa%_&Pan&Pa~O%uWO#g&ra%[&ra%_&rag&ra~Oz)SO#g&ra%[&ra%_&rag&ra~Og)VO~OV)WOh$WO%uWO~O#Z)XO~O%uWO#g&ta%[&ta%_&ta~Oz)ZO#g&ta%[&ta%_&ta~Oo0cOv0qO#g&pa%[&pa%_&pa{&pa~P'vOz)^O#g&pa%[&pa%_&pa{&pa~OV)`Oa)`O%uWO~O%z)eO~Ot)hO#j)gOP#hiV#hif#hih#hio#his#hiv#hi!P#hi!Q#hi!T#hi!U#hi!X#hi!]#hi!h#hi!r#hi!s#hi!t#hi!{#hi!}#hi#P#hi#R#hi#T#hi#X#hi#Z#hi#^#hi#_#hi#a#hi#c#hi#l#hi#o#hi#s#hi#u#hi#z#hi#}#hi$P#hi%X#hi%o#hi%p#hi%t#hi%u#hi&Z#hi&[#hi&]#hi&^#hi&_#hi&`#hi&a#hi&b#hi&c#hi&d#hi&e#hi&f#hi&g#hi&h#hi&i#hi&j#hi%Z#hi%_#hi~Ot)iOP#kiV#kif#kih#kio#kis#kiv#ki!P#ki!Q#ki!T#ki!U#ki!X#ki!]#ki!h#ki!r#ki!s#ki!t#ki!{#ki!}#ki#P#ki#R#ki#T#ki#X#ki#Z#ki#^#ki#_#ki#a#ki#c#ki#l#ki#o#ki#s#ki#u#ki#z#ki#}#ki$P#ki%X#ki%o#ki%p#ki%t#ki%u#ki&Z#ki&[#ki&]#ki&^#ki&_#ki&`#ki&a#ki&b#ki&c#ki&d#ki&e#ki&f#ki&g#ki&h#ki&i#ki&j#ki%Z#ki%_#ki~OV)kOn&wa~P'vOz)lOn&wa~Oz)lOn&wa~P%SOn)pO~O%Y)tO~Ot)wO#p'WO#q)vOP#niV#nif#nih#nio#nis#niv#ni!P#ni!Q#ni!T#ni!U#ni!X#ni!]#ni!h#ni!r#ni!s#ni!t#ni!{#ni!}#ni#P#ni#R#ni#T#ni#X#ni#Z#ni#^#ni#_#ni#a#ni#c#ni#l#ni#o#ni#s#ni#u#ni#z#ni#}#ni$P#ni%X#ni%o#ni%p#ni%t#ni%u#ni&Z#ni&[#ni&]#ni&^#ni&_#ni&`#ni&a#ni&b#ni&c#ni&d#ni&e#ni&f#ni&g#ni&h#ni&i#ni&j#ni%Z#ni%_#ni~OV)zOo0cOv0qO{$jO~P'vOo0cOv0qO{&xa~P'vOz*OO{&xa~OV*SOa*TOg*WO%q*UO%uWO~O{$jO&{*YO~Oh'_O~Oh!iO{$jO~O%[*_O~O%[*aO%_*aO~OV$}Oa$}Oo0cOv0qOg&Ua~P'vOz*dOg&Ua~Oo0cOv0qO{*gO!W&Xa~P'vOz*hO!W&Xa~Oo0cOv0qOz*hO{*kO!W&Xa~P'vOo0cOv0qOz*hO!W&Xa~P'vOz*hO{*kO!W&Xa~Om0dOn0dOo0mOp0nOgjikjisjizji!Tji!Uji%{ji!Wji{ji![ji#gji%[ji%_ji!Qji#[jitji!mji%zji~Ol0fO~P!NkOlji~P!NkOV'|Og*pOo0cOv0qO~P'vOn*rO~Og*pOz*tO~Og*uO~OV'|Oo0cOv0qO!W&Si~P'vOz*vO!W&Si~O!W*wO~OV(]Oo0cOv0qO![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~P'vOz*zO!T%dO!U%cO![&Ti~Oz*}O![%}i#g%}i%[%}i%_%}ig%}i{%}i!m%}i%z%}i~O![+OO~Oa+QOo0cOv0qO![&Ti~P'vOz*zO![&Ti~O![+SO~OV+UOo0cOv0qO{&la![&la!m&la%z&la~P'vOz+VO{&la![&la!m&la%z&la~O!]+YO&n+[O![!nX~O![+^O~O{(kO![+_O~O{(kO![+_O!m+`O~OV&OOopOvqO{%hq!x%hq#g%hq%[%hq%_%hq%z%hq~P'vOz$ri{$ri!x$ri#g$ri%[$ri%_$ri%z$ri~P%SOV&OOopOvqO~P'vOV&OOo0cOv0qO#g%ha%[%ha%_%ha%z%ha~P'vOz+aO#g%ha%[%ha%_%ha%z%ha~Oz$ia#g$ia%[$ia%_$ian$ia~P%SO#g&Pi%[&Pi%_&Pin&Pi~P'vOz+dO#g#Wq%[#Wq%_#Wq~O#[+eOz$va#g$va%[$va%_$vag$va~O%uWO#g&ri%[&ri%_&rig&ri~Oz+gO#g&ri%[&ri%_&rig&ri~OV+iOh$WO%uWO~O%uWO#g&ti%[&ti%_&ti~Oo0cOv0qO#g&pi%[&pi%_&pi{&pi~P'vO{#{Oz#eX!W#eX~Oz+mO!W&uX~O!W+oO~Ot+rO#j)gOP#hqV#hqf#hqh#hqo#hqs#hqv#hq!P#hq!Q#hq!T#hq!U#hq!X#hq!]#hq!h#hq!r#hq!s#hq!t#hq!{#hq!}#hq#P#hq#R#hq#T#hq#X#hq#Z#hq#^#hq#_#hq#a#hq#c#hq#l#hq#o#hq#s#hq#u#hq#z#hq#}#hq$P#hq%X#hq%o#hq%p#hq%t#hq%u#hq&Z#hq&[#hq&]#hq&^#hq&_#hq&`#hq&a#hq&b#hq&c#hq&d#hq&e#hq&f#hq&g#hq&h#hq&i#hq&j#hq%Z#hq%_#hq~On$|az$|a~P%SOV)kOn&wi~P'vOz+yOn&wi~Oz,TO{$jO#[,TO~O#q,VOP#nqV#nqf#nqh#nqo#nqs#nqv#nq!P#nq!Q#nq!T#nq!U#nq!X#nq!]#nq!h#nq!r#nq!s#nq!t#nq!{#nq!}#nq#P#nq#R#nq#T#nq#X#nq#Z#nq#^#nq#_#nq#a#nq#c#nq#l#nq#o#nq#s#nq#u#nq#z#nq#}#nq$P#nq%X#nq%o#nq%p#nq%t#nq%u#nq&Z#nq&[#nq&]#nq&^#nq&_#nq&`#nq&a#nq&b#nq&c#nq&d#nq&e#nq&f#nq&g#nq&h#nq&i#nq&j#nq%Z#nq%_#nq~O#[,WOz%Oa{%Oa~Oo0cOv0qO{&xi~P'vOz,YO{&xi~O{#{O%z,[Og&zXz&zX~O%uWOg&zXz&zX~Oz,`Og&yX~Og,bO~O%Y,eO~O!T%dO!U%cOg&Viz&Vi~OV$}Oa$}Oo0cOv0qOg&Ui~P'vO{,hOz$la!W$la~Oo0cOv0qO{,iOz$la!W$la~P'vOo0cOv0qO{*gO!W&Xi~P'vOz,lO!W&Xi~Oo0cOv0qOz,lO!W&Xi~P'vOz,lO{,oO!W&Xi~Og$hiz$hi!W$hi~P%SOV'|Oo0cOv0qO~P'vOn,qO~OV'|Og,rOo0cOv0qO~P'vOV'|Oo0cOv0qO!W&Sq~P'vOz$gi![$gi#g$gi%[$gi%_$gig$gi{$gi!m$gi%z$gi~P%SOV(]Oo0cOv0qO~P'vOa+QOo0cOv0qO![&Tq~P'vOz,sO![&Tq~O![,tO~OV(]Oo0cOv0qO![%}q#g%}q%[%}q%_%}qg%}q{%}q!m%}q%z%}q~P'vO{,uO~OV+UOo0cOv0qO{&li![&li!m&li%z&li~P'vOz,zO{&li![&li!m&li%z&li~O!]+YO&n+[O![!na~O{(kO![,}O~OV&OOo0cOv0qO#g%hi%[%hi%_%hi%z%hi~P'vOz-OO#g%hi%[%hi%_%hi%z%hi~O%uWO#g&rq%[&rq%_&rqg&rq~Oz-RO#g&rq%[&rq%_&rqg&rq~OV)`Oa)`O%uWO!W&ua~Oz-TO!W&ua~On$|iz$|i~P%SOV)kO~P'vOV)kOn&wq~P'vOt-XOP#myV#myf#myh#myo#mys#myv#my!P#my!Q#my!T#my!U#my!X#my!]#my!h#my!r#my!s#my!t#my!{#my!}#my#P#my#R#my#T#my#X#my#Z#my#^#my#_#my#a#my#c#my#l#my#o#my#s#my#u#my#z#my#}#my$P#my%X#my%o#my%p#my%t#my%u#my&Z#my&[#my&]#my&^#my&_#my&`#my&a#my&b#my&c#my&d#my&e#my&f#my&g#my&h#my&i#my&j#my%Z#my%_#my~O%Z-]O%_-]O~P`O#q-^OP#nyV#nyf#nyh#nyo#nys#nyv#ny!P#ny!Q#ny!T#ny!U#ny!X#ny!]#ny!h#ny!r#ny!s#ny!t#ny!{#ny!}#ny#P#ny#R#ny#T#ny#X#ny#Z#ny#^#ny#_#ny#a#ny#c#ny#l#ny#o#ny#s#ny#u#ny#z#ny#}#ny$P#ny%X#ny%o#ny%p#ny%t#ny%u#ny&Z#ny&[#ny&]#ny&^#ny&_#ny&`#ny&a#ny&b#ny&c#ny&d#ny&e#ny&f#ny&g#ny&h#ny&i#ny&j#ny%Z#ny%_#ny~Oz-aO{$jO#[-aO~Oo0cOv0qO{&xq~P'vOz-dO{&xq~O%z,[Og&zaz&za~O{#{Og&zaz&za~OV*SOa*TO%q*UO%uWOg&ya~Oz-hOg&ya~O$S-lO~OV$}Oa$}Oo0cOv0qO~P'vOo0cOv0qO{-mOz$li!W$li~P'vOo0cOv0qOz$li!W$li~P'vO{-mOz$li!W$li~Oo0cOv0qO{*gO~P'vOo0cOv0qO{*gO!W&Xq~P'vOz-pO!W&Xq~Oo0cOv0qOz-pO!W&Xq~P'vOs-sO!T%dO!U%cOg&Oq!W&Oq![&Oqz&Oq~P!/jOa+QOo0cOv0qO![&Ty~P'vOz$ji![$ji~P%SOa+QOo0cOv0qO~P'vOV+UOo0cOv0qO~P'vOV+UOo0cOv0qO{&lq![&lq!m&lq%z&lq~P'vO{(kO![-xO!m-yO%z-wO~OV&OOo0cOv0qO#g%hq%[%hq%_%hq%z%hq~P'vO%uWO#g&ry%[&ry%_&ryg&ry~OV)`Oa)`O%uWO!W&ui~Ot-}OP#m!RV#m!Rf#m!Rh#m!Ro#m!Rs#m!Rv#m!R!P#m!R!Q#m!R!T#m!R!U#m!R!X#m!R!]#m!R!h#m!R!r#m!R!s#m!R!t#m!R!{#m!R!}#m!R#P#m!R#R#m!R#T#m!R#X#m!R#Z#m!R#^#m!R#_#m!R#a#m!R#c#m!R#l#m!R#o#m!R#s#m!R#u#m!R#z#m!R#}#m!R$P#m!R%X#m!R%o#m!R%p#m!R%t#m!R%u#m!R&Z#m!R&[#m!R&]#m!R&^#m!R&_#m!R&`#m!R&a#m!R&b#m!R&c#m!R&d#m!R&e#m!R&f#m!R&g#m!R&h#m!R&i#m!R&j#m!R%Z#m!R%_#m!R~Oo0cOv0qO{&xy~P'vOV*SOa*TO%q*UO%uWOg&yi~O$S-lO%Z.VO%_.VO~OV.aOh._O!X.^O!].`O!h.YO!s.[O!t.[O%p.XO%uWO&Z]O&[]O&]]O&^]O&_]O&`]O&a]O&b]O~Oo0cOv0qOz$lq!W$lq~P'vO{.fOz$lq!W$lq~Oo0cOv0qO{*gO!W&Xy~P'vOz.gO!W&Xy~Oo0cOv.kO~P'vOs-sO!T%dO!U%cOg&Oy!W&Oy![&Oyz&Oy~P!/jO{(kO![.nO~O{(kO![.nO!m.oO~OV*SOa*TO%q*UO%uWO~Oh.tO!f.rOz$TX#[$TX%j$TXg$TX~Os$TX{$TX!W$TX![$TX~P$-bO%o.vO%p.vOs$UXz$UX{$UX#[$UX%j$UX!W$UXg$UX![$UX~O!h.xO~Oz.|O#[/OO%j.yOs&|X{&|X!W&|Xg&|X~Oa/RO~P$)zOh.tOs&}Xz&}X{&}X#[&}X%j&}X!W&}Xg&}X![&}X~Os/VO{$jO~Oo0cOv0qOz$ly!W$ly~P'vOo0cOv0qO{*gO!W&X!R~P'vOz/ZO!W&X!R~Og&RXs&RX!T&RX!U&RX!W&RX![&RXz&RX~P!/jOs-sO!T%dO!U%cOg&Qa!W&Qa![&Qaz&Qa~O{(kO![/^O~O!f.rOh$[as$[az$[a{$[a#[$[a%j$[a!W$[ag$[a![$[a~O!h/eO~O%o.vO%p.vOs$Uaz$Ua{$Ua#[$Ua%j$Ua!W$Uag$Ua![$Ua~O%j.yOs$Yaz$Ya{$Ya#[$Ya!W$Yag$Ya![$Ya~Os&|a{&|a!W&|ag&|a~P$)nOz/jOs&|a{&|a!W&|ag&|a~O!W/mO~Og/mO~O{/oO~O![/pO~Oo0cOv0qO{*gO!W&X!Z~P'vO{/sO~O%z/tO~P$-bOz/uO#[/OO%j.yOg'PX~Oz/uOg'PX~Og/wO~O!h/xO~O#[/OOs%Saz%Sa{%Sa%j%Sa!W%Sag%Sa![%Sa~O#[/OO%j.yOs%Waz%Wa{%Wa!W%Wag%Wa~Os&|i{&|i!W&|ig&|i~P$)nOz/zO#[/OO%j.yO!['Oa~Og'Pa~P$)nOz0SOg'Pa~Oa0UO!['Oi~P$)zOz0WO!['Oi~Oz0WO#[/OO%j.yO!['Oi~O#[/OO%j.yOg$biz$bi~O%z0ZO~P$-bO#[/OO%j.yOg%Vaz%Va~Og'Pi~P$)nO{0^O~Oa0UO!['Oq~P$)zOz0`O!['Oq~O#[/OO%j.yOz%Ui![%Ui~Oa0UO~P$)zOa0UO!['Oy~P$)zO#[/OO%j.yOg$ciz$ci~O#[/OO%j.yOz%Uq![%Uq~Oz+aO#g%ha%[%ha%_%ha%z%ha~P%SOV&OOo0cOv0qO~P'vOn0hO~Oo0hO~P'vO{0iO~Ot0jO~P!/jO&]&Z&j&h&i&g&f&d&e&c&b&`&a&_&^&[%u~",goto:"!=j'QPPPPPP'RP'Z*s+[+t,_,y-fP.SP'Z.r.r'ZPPP'Z2[PPPPPP2[5PPP5PP7b7k=sPP=v>h>kPP'Z'ZPP>zPP'Z'ZPP'Z'Z'Z'Z'Z?O?w'ZP?zP@QDXGuGyPG|HWH['ZPPPH_Hk'RP'R'RP'RP'RP'RP'RP'R'R'RP'RPP'RPP'RP'RPHqH}IVPI^IdPI^PI^I^PPPI^PKrPK{LVL]KrPI^LfPI^PLmLsPLwM]MzNeLwLwNkNxLwLwLwLw! ^! d! g! l! o! y!!P!!]!!o!!u!#P!#V!#s!#y!$P!$Z!$a!$g!$y!%T!%Z!%a!%k!%q!%w!%}!&T!&Z!&e!&k!&u!&{!'U!'[!'k!'s!'}!(UPPPPPPPPPPP!([!(_!(e!(n!(x!)TPPPPPPPPPPPP!-u!/Z!3^!6oPP!6w!7W!7a!8Y!8P!8c!8i!8l!8o!8r!8z!9jPPPPPPPPPPPPPPPPP!9m!9q!9wP!:]!:a!:m!:v!;S!;j!;m!;p!;v!;|!<S!<VP!<_!<h!=d!=g]eOn#g$j)t,P'}`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r{!cQ#c#p$R$d$p%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g}!dQ#c#p$R$d$p$u%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!P!eQ#c#p$R$d$p$u$v%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!R!fQ#c#p$R$d$p$u$v$w%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!T!gQ#c#p$R$d$p$u$v$w$x%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!V!hQ#c#p$R$d$p$u$v$w$x$y%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g!Z!hQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0g'}TOTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0r&eVOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0n0r%oXOYZ[dnrxy}!P!Q!U!i!k#[#d#g#y#{#}$Q$h$j$}%S%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/V/Z0i0j0kQ#vqQ/[.kR0o0q't`OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rh#jhz{$W$Z&l&q)S)X+f+g-RW#rq&].k0qQ$]|Q$a!OQ$n!VQ$o!WW$|!i'm*d,gS&[#s#tQ'S$iQ(s&UQ)U&nU)Y&s)Z+jW)a&w+m-T-{Q*Q']W*R'_,`-h.TQ+l)`S,_*S*TQ-Q+eQ-_,TQ-c,WQ.R-al.W-l.^._.a.z.|/R/j/o/t/y0U0Z0^Q/S.`Q/a.tQ/l/OU0P/u0S0[X0V/z0W0_0`R&Z#r!_!wYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZR%^!vQ!{YQ%x#[Q&d#}Q&g$QR,{+YT.j-s/s!Y!jQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gQ&X#kQ'c$oR*^'dR'l$|Q%V!mR/_.r'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rS#a_#b!P.[-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`'|_OTYZ[adnoprtxy}!P!Q!R!U!X!c!d!e!f!g!h!i!k!o!p!q!s!t!z#O#S#T#[#d#g#x#y#{#}$Q$e$g$h$j$q$}%S%Z%^%`%c%g%l%n%w%|&O&Z&_&h&j&k&u&x&|'P'W'Z'l'm'p'r's'w'|(O(S(W(](^(d(g(p(r(z(})^)e)g)k)l)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+Q+U+V+Y+a+c+d+k+x+y,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0l0n0rT#a_#bT#^^#_R(o%xa(l%x(n(o+`,{-y-z.oT+[(k+]R-z,{Q$PsQ+l)aQ,^*RR-e,_X#}s$O$P&fQ&y$aQ'a$nQ'd$oR)s'SQ)b&wV-S+m-T-{ZgOn$j)t,PXkOn)t,PQ$k!TQ&z$bQ&{$cQ'^$mQ'b$oQ)q'RQ)x'WQ){'XQ)|'YQ*Z'`S*]'c'dQ+s)gQ+u)hQ+v)iQ+z)oS+|)r*[Q,Q)vQ,R)wS,S)y)zQ,d*^Q-V+rQ-W+tQ-Y+{S-Z+},OQ-`,UQ-b,VQ-|-XQ.O-[Q.P-^Q.Q-_Q.p-}Q.q.RQ/W.dR/r/XWkOn)t,PR#mjQ'`$nS)r'S'aR,O)sQ,]*RR-f,^Q*['`Q+})rR-[,OZiOjn)t,PQ'f$pR*`'gT-j,e-ku.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^t.c-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^Q/S.`X0V/z0W0_0`!P.Z-l.^._.`.a.t.z.|/R/j/o/t/u/y/z0S0U0W0Z0[0^0_0`Q.w.YR/f.xg.z.].{/b/i/n/|0O0Q0]0a0bu.b-l.^._.a.t.z.|/R/j/o/t/u/y0S0U0Z0[0^X.u.W.b/a0PR/c.tV0R/u0S0[R/X.dQnOS#on,PR,P)tQ&^#uR(x&^S%m#R#wS(_%m(bT(b%p&`Q%a!yQ%h!}W(P%a%h(U(YQ(U%eR(Y%jQ&i$RR)O&iQ(e%qQ*{(`T+R(e*{Q'n%OR*e'nS'q%R%SY*i'q*j,m-q.hU*j'r's'tU,m*k*l*mS-q,n,oR.h-rQ#Y]R%t#YQ#_^R%y#_Q(h%vS+W(h+XR+X(iQ+](kR,|+]Q#b_R%{#bQ#ebQ%}#cW&Q#e%}({+bQ({&cR+b0gQ$OsS&e$O&fR&f$PQ&v$_R)_&vQ&V#jR(t&VQ&m$VS)T&m+hR+h)UQ$Z{R&p$ZQ&t$]R)[&tQ+n)bR-U+nQ#hfR&S#hQ)f&zR+q)fQ&}$dS)m&})nR)n'OQ'V$kR)u'VQ'[$lS*P'[,ZR,Z*QQ,a*VR-i,aWjOn)t,PR#ljQ-k,eR.U-kd.{.]/b/i/n/|0O0Q0]0a0bR/h.{U.s.W/a0PR/`.sQ/{/nS0X/{0YR0Y/|S/v/b/cR0T/vQ.}.]R/k.}R!ZPXmOn)t,PWlOn)t,PR'T$jYfOn$j)t,PR&R#g[sOn#g$j)t,PR&d#}&dQOYZ[dnprxy}!P!Q!U!i!k!o!p!q!s!t#[#d#g#y#{#}$Q$h$j$}%S%Z%^%`%g%l%n%w%|&Z&_&j&k&u&x'P'W'Z'l'm'p'r's'w(O(W(^(d(g(p(r(z)^)e)g)p)t)z*O*Y*d*g*h*k*q*r*t*v*y*z*}+U+V+Y+a+d+k,P,X,Y,],g,h,i,k,l,o,q,s,u,w,y,z-O-d-f-m-p-s.f.g/V/Z/s0c0d0e0f0h0i0j0k0n0rQ!nTQ#caQ#poU$Rt%c(SS$d!R$gQ$p!XQ$u!cQ$v!dQ$w!eQ$x!fQ$y!gQ$z!hQ%e!zQ%j#OQ%p#SQ%q#TQ&`#xQ'O$eQ'g$qQ(q&OU(|&h(}+cW)j&|)l+x+yQ*o'|Q*x(]Q+w)kQ,v+QR0g0lQ!yYQ!}ZQ$b!PQ$c!QQ%R!kQ't%S^'{%`%g(O(W*q*t*v^*f'p*h,k,l-p.g/ZQ*l'rQ*m'sQ+t)gQ,j*gQ,n*kQ-n,hQ-o,iQ-r,oQ.e-mR/Y.f[bOn#g$j)t,P!^!vYZ!P!Q!k%S%`%g'p'r's(O(W)g*g*h*k*q*t*v,h,i,k,l,o-m-p.f.g/ZQ#R[Q#fdS#wrxQ$UyW$_}$Q'P)pS$l!U$hW${!i'm*d,gS%v#[+Y`&P#d%|(p(r(z+a-O0kQ&a#yQ&b#{Q&c#}Q'j$}Q'z%^W([%l(^*y*}Q(`%nQ(i%wQ(v&ZS(y&_0iQ)P&jQ)Q&kU)]&u)^+kQ)d&xQ)y'WY)}'Z*O,X,Y-dQ*b'lS*n'w0jW+P(d*z,s,wW+T(g+V,y,zQ+p)eQ,U)zQ,c*YQ,x+UQ-P+dQ-e,]Q-v,uQ.S-fR/q/VhUOn#d#g$j%|&_'w(p(r)t,P%U!uYZ[drxy}!P!Q!U!i!k#[#y#{#}$Q$h$}%S%^%`%g%l%n%w&Z&j&k&u&x'P'W'Z'l'm'p'r's(O(W(^(d(g(z)^)e)g)p)z*O*Y*d*g*h*k*q*t*v*y*z*}+U+V+Y+a+d+k,X,Y,],g,h,i,k,l,o,s,u,w,y,z-O-d-f-m-p.f.g/V/Z0i0j0kQ#qpW%W!o!s0d0nQ%X!pQ%Y!qQ%[!tQ%f0cS'v%Z0hQ'x0eQ'y0fQ,p*rQ-u,qS.i-s/sR0p0rU#uq.k0qR(w&][cOn#g$j)t,PZ!xY#[#}$Q+YQ#W[Q#zrR$TxQ%b!yQ%i!}Q%o#RQ'j${Q(V%eQ(Z%jQ(c%pQ(f%qQ*|(`Q,f*bQ-t,pQ.m-uR/].lQ$StQ(R%cR*s(SQ.l-sR/}/sR#QZR#V[R%Q!iQ%O!iV*c'm*d,g!Z!lQ!n#c#p$R$d$p$u$v$w$x$y$z%e%j%p%q&`'O'g(q(|)j*o*x+w,v0gR%T!kT#]^#_Q%x#[R,{+YQ(m%xS+_(n(oQ,}+`Q-x,{S.n-y-zR/^.oT+Z(k+]Q$`}Q&g$QQ)o'PR+{)pQ$XzQ)W&qR+i)XQ$XzQ&o$WQ)W&qR+i)XQ#khW$Vz$W&q)XQ$[{Q&r$ZZ)R&l)S+f+g-RR$^|R)c&wXlOn)t,PQ$f!RR'Q$gQ$m!UR'R$hR*X'_Q*V'_V-g,`-h.TQ.d-lQ/P.^R/Q._U.]-l.^._Q/U.aQ/b.tQ/g.zU/i.|/j/yQ/n/RQ/|/oQ0O/tU0Q/u0S0[Q0]0UQ0a0ZR0b0^R/T.`R/d.t",nodeNames:"⚠ print Escape { Comment Script AssignStatement * BinaryExpression BitOp BitOp BitOp BitOp ArithOp ArithOp @ ArithOp ** UnaryExpression ArithOp BitOp AwaitExpression await ) ( ParenthesizedExpression BinaryExpression or and CompareOp in not is UnaryExpression ConditionalExpression if else LambdaExpression lambda ParamList VariableName AssignOp , : NamedExpression AssignOp YieldExpression yield from TupleExpression ComprehensionExpression async for LambdaExpression ] [ ArrayExpression ArrayComprehensionExpression } { DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression CallExpression ArgList AssignOp MemberExpression . PropertyName Number String FormatString FormatReplacement FormatSelfDoc FormatConversion FormatSpec FormatReplacement FormatSelfDoc ContinuedString Ellipsis None Boolean TypeDef AssignOp UpdateStatement UpdateOp ExpressionStatement DeleteStatement del PassStatement pass BreakStatement break ContinueStatement continue ReturnStatement return YieldStatement PrintStatement RaiseStatement raise ImportStatement import as ScopeStatement global nonlocal AssertStatement assert TypeDefinition type TypeParamList TypeParam StatementGroup ; IfStatement Body elif WhileStatement while ForStatement TryStatement try except finally WithStatement with FunctionDefinition def ParamList AssignOp TypeDef ClassDefinition class DecoratedStatement Decorator At MatchStatement match MatchBody MatchClause case CapturePattern LiteralPattern ArithOp ArithOp AsPattern OrPattern LogicOp AttributePattern SequencePattern MappingPattern StarPattern ClassPattern PatternArgList KeywordPattern KeywordPattern Guard",maxTerm:277,context:oF,nodeProps:[["isolate",-5,4,71,72,73,77,""],["group",-15,6,85,87,88,90,92,94,96,98,99,100,102,105,108,110,"Statement Statement",-22,8,18,21,25,40,49,50,56,57,60,61,62,63,64,67,70,71,72,79,80,81,82,"Expression",-10,114,116,119,121,122,126,128,133,135,138,"Statement",-9,143,144,147,148,150,151,152,153,154,"Pattern"],["openedBy",23,"(",54,"[",58,"{"],["closedBy",24,")",55,"]",59,"}"]],propSources:[hF],skippedNodes:[0,4],repeatNodeCount:34,tokenData:"!2|~R!`OX%TXY%oY[%T[]%o]p%Tpq%oqr'ars)Yst*xtu%Tuv,dvw-hwx.Uxy/tyz0[z{0r{|2S|}2p}!O3W!O!P4_!P!Q:Z!Q!R;k!R![>_![!]Do!]!^Es!^!_FZ!_!`Gk!`!aHX!a!b%T!b!cIf!c!dJU!d!eK^!e!hJU!h!i!#f!i!tJU!t!u!,|!u!wJU!w!x!.t!x!}JU!}#O!0S#O#P&o#P#Q!0j#Q#R!1Q#R#SJU#S#T%T#T#UJU#U#VK^#V#YJU#Y#Z!#f#Z#fJU#f#g!,|#g#iJU#i#j!.t#j#oJU#o#p!1n#p#q!1s#q#r!2a#r#s!2f#s$g%T$g;'SJU;'S;=`KW<%lOJU`%YT&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T`%lP;=`<%l%To%v]&n`%c_OX%TXY%oY[%T[]%o]p%Tpq%oq#O%T#O#P&o#P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To&tX&n`OY%TYZ%oZ]%T]^%o^#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc'f[&n`O!_%T!_!`([!`#T%T#T#U(r#U#f%T#f#g(r#g#h(r#h#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(cTmR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc(yT!mR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk)aV&n`&[ZOr%Trs)vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk){V&n`Or%Trs*bs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk*iT&n`&^ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To+PZS_&n`OY*xYZ%TZ]*x]^%T^#o*x#o#p+r#p#q*x#q#r+r#r;'S*x;'S;=`,^<%lO*x_+wTS_OY+rZ]+r^;'S+r;'S;=`,W<%lO+r_,ZP;=`<%l+ro,aP;=`<%l*xj,kV%rQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-XT!xY&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj-oV%lQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.]V&n`&ZZOw%Twx.rx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk.wV&n`Ow%Twx/^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/eT&n`&]ZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk/{ThZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc0cTgR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk0yXVZ&n`Oz%Tz{1f{!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk1mVaR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk2ZV%oZ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc2wTzR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To3_W%pZ&n`O!_%T!_!`-Q!`!a3w!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Td4OT&{S&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk4fX!fQ&n`O!O%T!O!P5R!P!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5WV&n`O!O%T!O!P5m!P#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk5tT!rZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti6[a!hX&n`O!Q%T!Q![6T![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S6T#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti7fZ&n`O{%T{|8X|}%T}!O8X!O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8^V&n`O!Q%T!Q![8s![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti8z]!hX&n`O!Q%T!Q![8s![!l%T!l!m9s!m#R%T#R#S8s#S#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti9zT!hX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk:bX%qR&n`O!P%T!P!Q:}!Q!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj;UV%sQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti;ro!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!d%T!d!e?q!e!g%T!g!h7a!h!l%T!l!m9s!m!q%T!q!rA]!r!z%T!z!{Bq!{#R%T#R#S>_#S#U%T#U#V?q#V#X%T#X#Y7a#Y#^%T#^#_9s#_#c%T#c#dA]#d#l%T#l#mBq#m#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti=xV&n`O!Q%T!Q![6T![#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti>fc!hX&n`O!O%T!O!P=s!P!Q%T!Q![>_![!g%T!g!h7a!h!l%T!l!m9s!m#R%T#R#S>_#S#X%T#X#Y7a#Y#^%T#^#_9s#_#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti?vY&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Ti@mY!hX&n`O!Q%T!Q!R@f!R!S@f!S#R%T#R#S@f#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiAbX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBUX!hX&n`O!Q%T!Q!YA}!Y#R%T#R#SA}#S#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiBv]&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TiCv]!hX&n`O!Q%T!Q![Co![!c%T!c!iCo!i#R%T#R#SCo#S#T%T#T#ZCo#Z#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToDvV{_&n`O!_%T!_!`E]!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TcEdT%{R&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkEzT#gZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkFbXmR&n`O!^%T!^!_F}!_!`([!`!a([!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjGUV%mQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkGrV%zZ&n`O!_%T!_!`([!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkH`WmR&n`O!_%T!_!`([!`!aHx!a#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TjIPV%nQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkIoV_Q#}P&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%ToJ_]&n`&YS%uZO!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoKZP;=`<%lJUoKge&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!tJU!t!uLx!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#gLx#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUoMRa&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUkN_V&n`&`ZOr%TrsNts#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%TkNyV&n`Or%Trs! `s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! gT&n`&bZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk! }V&n`&_ZOw%Twx!!dx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!!iV&n`Ow%Twx!#Ox#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!#VT&n`&aZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!#oe&n`&YS%uZOr%Trs!%Qsw%Twx!&px!Q%T!Q![JU![!c%T!c!tJU!t!u!(`!u!}JU!}#R%T#R#SJU#S#T%T#T#fJU#f#g!(`#g#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!%XV&n`&dZOr%Trs!%ns#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!%sV&n`Or%Trs!&Ys#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&aT&n`&fZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!&wV&n`&cZOw%Twx!'^x#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!'cV&n`Ow%Twx!'xx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!(PT&n`&eZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!(ia&n`&YS%uZOr%Trs!)nsw%Twx!+^x!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!)uV&n`&hZOr%Trs!*[s#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*aV&n`Or%Trs!*vs#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!*}T&n`&jZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!+eV&n`&gZOw%Twx!+zx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,PV&n`Ow%Twx!,fx#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tk!,mT&n`&iZO#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%To!-Vi&n`&YS%uZOr%TrsNWsw%Twx! vx!Q%T!Q![JU![!c%T!c!dJU!d!eLx!e!hJU!h!i!(`!i!}JU!}#R%T#R#SJU#S#T%T#T#UJU#U#VLx#V#YJU#Y#Z!(`#Z#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUo!.}a&n`&YS%uZOr%Trs)Ysw%Twx.Ux!Q%T!Q![JU![!c%T!c!}JU!}#R%T#R#SJU#S#T%T#T#oJU#p#q%T#r$g%T$g;'SJU;'S;=`KW<%lOJUk!0ZT!XZ&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tc!0qT!WR&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%Tj!1XV%kQ&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!1sO!]~k!1zV%jR&n`O!_%T!_!`-Q!`#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T~!2fO![~i!2mT%tX&n`O#o%T#p#q%T#r;'S%T;'S;=`%i<%lO%T",tokenizers:[aF,nF,iF,lF,0,1,2,3,4],topRules:{Script:[0,5]},specialized:[{term:221,get:t=>uF[t]||-1}],tokenPrec:7668}),UQ=new Ob,VM=new Set(["Script","Body","FunctionDefinition","ClassDefinition","LambdaExpression","ForStatement","MatchClause"]);function Mp(t){return(e,i,n)=>{if(n)return!1;let r=e.node.getChild("VariableName");return r&&i(r,t),!0}}const fF={FunctionDefinition:Mp("function"),ClassDefinition:Mp("class"),ForStatement(t,e,i){if(i){for(let n=t.node.firstChild;n;n=n.nextSibling)if(n.name=="VariableName")e(n,"variable");else if(n.name=="in")break}},ImportStatement(t,e){var i,n;let{node:r}=t,s=((i=r.firstChild)===null||i===void 0?void 0:i.name)=="from";for(let a=r.getChild("import");a;a=a.nextSibling)a.name=="VariableName"&&((n=a.nextSibling)===null||n===void 0?void 0:n.name)!="as"&&e(a,s?"variable":"namespace")},AssignStatement(t,e){for(let i=t.node.firstChild;i;i=i.nextSibling)if(i.name=="VariableName")e(i,"variable");else if(i.name==":"||i.name=="AssignOp")break},ParamList(t,e){for(let i=null,n=t.node.firstChild;n;n=n.nextSibling)n.name=="VariableName"&&(!i||!/\*|AssignOp/.test(i.name))&&e(n,"variable"),i=n},CapturePattern:Mp("variable"),AsPattern:Mp("variable"),__proto__:null};function YM(t,e){let i=UQ.get(e);if(i)return i;let n=[],r=!0;function s(a,c){let h=t.sliceString(a.from,a.to);n.push({label:h,type:c})}return e.cursor(gt.IncludeAnonymous).iterate(a=>{if(a.name){let c=fF[a.name];if(c&&c(a,s,r)||!r&&VM.has(a.name))return!1;r=!1}else if(a.to-a.from>8192){for(let c of YM(t,a.node))n.push(c);return!1}}),UQ.set(e,n),n}const GQ=/^[\w\xa1-\uffff][\w\d\xa1-\uffff]*$/,HM=["String","FormatString","Comment","PropertyName"];function pF(t){let e=Qt(t.state).resolveInner(t.pos,-1);if(HM.indexOf(e.name)>-1)return null;let i=e.name=="VariableName"||e.to-e.from<20&&GQ.test(t.state.sliceDoc(e.from,e.to));if(!i&&!t.explicit)return null;let n=[];for(let r=e;r;r=r.parent)VM.has(r.name)&&(n=n.concat(YM(t.state.doc,r)));return{options:n,from:i?e.from:t.pos,validFor:GQ}}const gF=["__annotations__","__builtins__","__debug__","__doc__","__import__","__name__","__loader__","__package__","__spec__","False","None","True"].map(t=>({label:t,type:"constant"})).concat(["ArithmeticError","AssertionError","AttributeError","BaseException","BlockingIOError","BrokenPipeError","BufferError","BytesWarning","ChildProcessError","ConnectionAbortedError","ConnectionError","ConnectionRefusedError","ConnectionResetError","DeprecationWarning","EOFError","Ellipsis","EncodingWarning","EnvironmentError","Exception","FileExistsError","FileNotFoundError","FloatingPointError","FutureWarning","GeneratorExit","IOError","ImportError","ImportWarning","IndentationError","IndexError","InterruptedError","IsADirectoryError","KeyError","KeyboardInterrupt","LookupError","MemoryError","ModuleNotFoundError","NameError","NotADirectoryError","NotImplemented","NotImplementedError","OSError","OverflowError","PendingDeprecationWarning","PermissionError","ProcessLookupError","RecursionError","ReferenceError","ResourceWarning","RuntimeError","RuntimeWarning","StopAsyncIteration","StopIteration","SyntaxError","SyntaxWarning","SystemError","SystemExit","TabError","TimeoutError","TypeError","UnboundLocalError","UnicodeDecodeError","UnicodeEncodeError","UnicodeError","UnicodeTranslateError","UnicodeWarning","UserWarning","ValueError","Warning","ZeroDivisionError"].map(t=>({label:t,type:"type"}))).concat(["bool","bytearray","bytes","classmethod","complex","float","frozenset","int","list","map","memoryview","object","range","set","staticmethod","str","super","tuple","type"].map(t=>({label:t,type:"class"}))).concat(["abs","aiter","all","anext","any","ascii","bin","breakpoint","callable","chr","compile","delattr","dict","dir","divmod","enumerate","eval","exec","exit","filter","format","getattr","globals","hasattr","hash","help","hex","id","input","isinstance","issubclass","iter","len","license","locals","max","min","next","oct","open","ord","pow","print","property","quit","repr","reversed","round","setattr","slice","sorted","sum","vars","zip"].map(t=>({label:t,type:"function"}))),mF=[Nt("def ${name}(${params}):\n ${}",{label:"def",detail:"function",type:"keyword"}),Nt("for ${name} in ${collection}:\n ${}",{label:"for",detail:"loop",type:"keyword"}),Nt("while ${}:\n ${}",{label:"while",detail:"loop",type:"keyword"}),Nt("try:\n ${}\nexcept ${error}:\n ${}",{label:"try",detail:"/ except block",type:"keyword"}),Nt(`if \${}:
131
-
132
- `,{label:"if",detail:"block",type:"keyword"}),Nt("if ${}:\n ${}\nelse:\n ${}",{label:"if",detail:"/ else block",type:"keyword"}),Nt("class ${name}:\n def __init__(self, ${params}):\n ${}",{label:"class",detail:"definition",type:"keyword"}),Nt("import ${module}",{label:"import",detail:"statement",type:"keyword"}),Nt("from ${module} import ${names}",{label:"from",detail:"import",type:"keyword"})],OF=bA(HM,Eb(gF.concat(mF)));function ly(t){let{node:e,pos:i}=t,n=t.lineIndent(i,-1),r=null;for(;;){let s=e.childBefore(i);if(s)if(s.name=="Comment")i=s.from;else if(s.name=="Body"||s.name=="MatchBody")t.baseIndentFor(s)+t.unit<=n&&(r=s),e=s;else if(s.name=="MatchClause")e=s;else if(s.type.is("Statement"))e=s;else break;else break}return r}function cy(t,e){let i=t.baseIndentFor(e),n=t.lineAt(t.pos,-1),r=n.from+n.text.length;return/^\s*($|#)/.test(n.text)&&t.node.to<r+100&&!/\S/.test(t.state.sliceDoc(r,t.node.to))&&t.lineIndent(t.pos,-1)<=i||/^\s*(else:|elif |except |finally:|case\s+[^=:]+:)/.test(t.textAfter)&&t.lineIndent(t.pos,-1)>i?null:i+t.unit}const hy=ca.define({name:"python",parser:dF.configure({props:[gl.add({Body:t=>{var e;let i=/^\s*(#|$)/.test(t.textAfter)&&ly(t)||t.node;return(e=cy(t,i))!==null&&e!==void 0?e:t.continue()},MatchBody:t=>{var e;let i=ly(t);return(e=cy(t,i||t.node))!==null&&e!==void 0?e:t.continue()},IfStatement:t=>/^\s*(else:|elif )/.test(t.textAfter)?t.baseIndent:t.continue(),"ForStatement WhileStatement":t=>/^\s*else:/.test(t.textAfter)?t.baseIndent:t.continue(),TryStatement:t=>/^\s*(except[ :]|finally:|else:)/.test(t.textAfter)?t.baseIndent:t.continue(),MatchStatement:t=>/^\s*case /.test(t.textAfter)?t.baseIndent+t.unit:t.continue(),"TupleExpression ComprehensionExpression ParamList ArgList ParenthesizedExpression":Jp({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":Jp({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":Jp({closing:"]"}),MemberExpression:t=>t.baseIndent+t.unit,"String FormatString":()=>null,Script:t=>{var e;let i=ly(t);return(e=i&&cy(t,i))!==null&&e!==void 0?e:t.continue()}}),pa.add({"ArrayExpression DictionaryExpression SetExpression TupleExpression":$m,Body:(t,e)=>({from:t.from+1,to:t.to-(t.to==e.doc.length?0:1)}),"String FormatString":(t,e)=>({from:e.doc.lineAt(t.from).to,to:t.to})})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"'''",'"""'],stringPrefixes:["f","fr","rf","r","u","b","br","rb","F","FR","RF","R","U","B","BR","RB"]},commentTokens:{line:"#"},indentOnInput:/^\s*([\}\]\)]|else:|elif |except |finally:|case\s+[^:]*:?)$/}});function vF(){return new cl(hy,[hy.data.of({autocomplete:pF}),hy.data.of({autocomplete:OF})])}const yF={javascript:()=>RS({jsx:!0,typescript:!1}),typescript:()=>RS({jsx:!0,typescript:!0}),css:()=>IA(),html:()=>hM(),json:()=>fU(),markdown:()=>KU(),python:()=>vF()},SF=xe.theme({"&":{background:"#24282f",fontSize:"12px",fontFamily:"'JetBrains Mono', 'SF Mono', 'Fira Code', monospace"},".cm-content":{caretColor:"#33afbc"},".cm-cursor":{borderLeftColor:"#33afbc"},".cm-gutters":{background:"#24282f",borderRight:"1px solid #4b5263",color:"#5c6370"},".cm-activeLineGutter":{background:"#2c313a"},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground":{background:"rgba(51, 175, 188, 0.2) !important"},".cm-activeLine":{background:"rgba(44, 49, 58, 0.5)"}},{dark:!0});function bF({content:t,language:e,onContentChange:i,onSave:n}){const r=X.useRef(null),s=X.useRef(null),a=X.useRef(new Od),c=X.useRef(i),h=X.useRef(n);c.current=i,h.current=n;const d=X.useCallback(f=>{const g=yF[f];return g?g():[]},[]);return X.useEffect(()=>{if(!r.current)return;const f=Bc.of([{key:"Mod-s",run:()=>{var S;return(S=h.current)==null||S.call(h),!0}}]),g=xe.updateListener.of(S=>{var _;S.docChanged&&((_=c.current)==null||_.call(c,S.state.doc.toString()))}),m=ct.create({doc:t||"",extensions:[U7(),E7(),K7(),T7(),t9(),Eq(),Wq(),m9(),EV(),wI(),a.current.of(d(e)),Bc.of([...vI,...k9,...II,...Lq,...TA,yI]),f,WV,SF,g,xe.lineWrapping]}),v=new xe({state:m,parent:r.current});return s.current=v,()=>{v.destroy(),s.current=null}},[]),X.useEffect(()=>{const f=s.current;if(!f)return;const g=f.state.doc.toString();t!==g&&f.dispatch({changes:{from:0,to:f.state.doc.length,insert:t||""}})},[t]),X.useEffect(()=>{const f=s.current;f&&f.dispatch({effects:a.current.reconfigure(d(e))})},[e,d]),O.jsx("div",{ref:r,style:_F.container})}const _F={container:{flex:1,overflow:"hidden",display:"flex",flexDirection:"column"}},UM=new Set(["png","jpg","jpeg","gif","svg","webp","ico","bmp","avif"]),GM=new Set(["mp4","webm","mov","avi","mkv","ogv"]);function xF(t){var i;const e=(i=t.split(".").pop())==null?void 0:i.toLowerCase();return UM.has(e)||GM.has(e)}function wF({path:t}){var a;const e=(a=t.split(".").pop())==null?void 0:a.toLowerCase(),i=`/api/files/raw?path=${encodeURIComponent(t)}`,n=t.split("/").pop(),r=UM.has(e),s=GM.has(e);return O.jsxs("div",{style:Ds.container,children:[O.jsxs("div",{style:Ds.header,children:[O.jsx("span",{style:Ds.filename,children:n}),O.jsx("span",{style:Ds.badge,children:e.toUpperCase()})]}),O.jsxs("div",{style:Ds.preview,children:[r&&O.jsx("img",{src:i,alt:n,style:Ds.image,draggable:!1}),s&&O.jsx("video",{src:i,controls:!0,style:Ds.video,children:"Your browser does not support this video format."})]}),O.jsx("div",{style:Ds.footer,children:O.jsx("a",{href:i,target:"_blank",rel:"noopener noreferrer",style:Ds.link,children:"Open in new tab"})})]})}const Ds={container:{flex:1,display:"flex",flexDirection:"column",background:"var(--bg-base)",overflow:"hidden"},header:{padding:"10px 16px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",gap:8},filename:{fontSize:12,color:"var(--text-bright)",fontWeight:500},badge:{fontSize:9,fontWeight:700,letterSpacing:.5,color:"var(--text-dim)",background:"var(--bg-active)",padding:"2px 6px",borderRadius:3},preview:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",overflow:"auto",padding:24,background:"repeating-conic-gradient(var(--bg-surface) 0% 25%, var(--bg-base) 0% 50%) 50% / 20px 20px"},image:{maxWidth:"100%",maxHeight:"100%",objectFit:"contain",borderRadius:4,boxShadow:"0 4px 16px rgba(0,0,0,0.3)"},video:{maxWidth:"100%",maxHeight:"100%",borderRadius:4,outline:"none",boxShadow:"0 4px 16px rgba(0,0,0,0.3)"},footer:{padding:"8px 16px",borderTop:"1px solid var(--border)",display:"flex",alignItems:"center"},link:{fontSize:11,color:"var(--accent)",textDecoration:"none",fontFamily:"var(--font)"}};/**
133
- * Copyright (c) 2014-2024 The xterm.js authors. All rights reserved.
134
- * @license MIT
135
- *
136
- * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
137
- * @license MIT
138
- *
139
- * Originally forked from (with the author's permission):
140
- * Fabrice Bellard's javascript vt100 for jslinux:
141
- * http://bellard.org/jslinux/
142
- * Copyright (c) 2011 Fabrice Bellard
143
- */var FM=Object.defineProperty,kF=Object.getOwnPropertyDescriptor,CF=(t,e)=>{for(var i in e)FM(t,i,{get:e[i],enumerable:!0})},Vt=(t,e,i,n)=>{for(var r=n>1?void 0:n?kF(e,i):e,s=t.length-1,a;s>=0;s--)(a=t[s])&&(r=(n?a(e,i,r):a(r))||r);return n&&r&&FM(e,i,r),r},_e=(t,e)=>(i,n)=>e(i,n,t),FQ="Terminal input",NS={get:()=>FQ,set:t=>FQ=t},KQ="Too much output to announce, navigate to rows manually to read",ZS={get:()=>KQ,set:t=>KQ=t};function TF(t){return t.replace(/\r?\n/g,"\r")}function QF(t,e){return e?"\x1B[200~"+t+"\x1B[201~":t}function $F(t,e){t.clipboardData&&t.clipboardData.setData("text/plain",e.selectionText),t.preventDefault()}function PF(t,e,i,n){if(t.stopPropagation(),t.clipboardData){let r=t.clipboardData.getData("text/plain");KM(r,e,i,n)}}function KM(t,e,i,n){t=TF(t),t=QF(t,i.decPrivateModes.bracketedPasteMode&&n.rawOptions.ignoreBracketedPasteMode!==!0),i.triggerDataEvent(t,!0),e.value=""}function JM(t,e,i){let n=i.getBoundingClientRect(),r=t.clientX-n.left-10,s=t.clientY-n.top-10;e.style.width="20px",e.style.height="20px",e.style.left=`${r}px`,e.style.top=`${s}px`,e.style.zIndex="1000",e.focus()}function JQ(t,e,i,n,r){JM(t,e,i),r&&n.rightClickSelect(t),e.value=n.selectionText,e.select()}function Go(t){return t>65535?(t-=65536,String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)}function Bm(t,e=0,i=t.length){let n="";for(let r=e;r<i;++r){let s=t[r];s>65535?(s-=65536,n+=String.fromCharCode((s>>10)+55296)+String.fromCharCode(s%1024+56320)):n+=String.fromCharCode(s)}return n}var EF=class{constructor(){this._interim=0}clear(){this._interim=0}decode(t,e){let i=t.length;if(!i)return 0;let n=0,r=0;if(this._interim){let s=t.charCodeAt(r++);56320<=s&&s<=57343?e[n++]=(this._interim-55296)*1024+s-56320+65536:(e[n++]=this._interim,e[n++]=s),this._interim=0}for(let s=r;s<i;++s){let a=t.charCodeAt(s);if(55296<=a&&a<=56319){if(++s>=i)return this._interim=a,n;let c=t.charCodeAt(s);56320<=c&&c<=57343?e[n++]=(a-55296)*1024+c-56320+65536:(e[n++]=a,e[n++]=c);continue}a!==65279&&(e[n++]=a)}return n}},RF=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(t,e){let i=t.length;if(!i)return 0;let n=0,r,s,a,c,h=0,d=0;if(this.interim[0]){let m=!1,v=this.interim[0];v&=(v&224)===192?31:(v&240)===224?15:7;let S=0,_;for(;(_=this.interim[++S]&63)&&S<4;)v<<=6,v|=_;let w=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,x=w-S;for(;d<x;){if(d>=i)return 0;if(_=t[d++],(_&192)!==128){d--,m=!0;break}else this.interim[S++]=_,v<<=6,v|=_&63}m||(w===2?v<128?d--:e[n++]=v:w===3?v<2048||v>=55296&&v<=57343||v===65279||(e[n++]=v):v<65536||v>1114111||(e[n++]=v)),this.interim.fill(0)}let f=i-4,g=d;for(;g<i;){for(;g<f&&!((r=t[g])&128)&&!((s=t[g+1])&128)&&!((a=t[g+2])&128)&&!((c=t[g+3])&128);)e[n++]=r,e[n++]=s,e[n++]=a,e[n++]=c,g+=4;if(r=t[g++],r<128)e[n++]=r;else if((r&224)===192){if(g>=i)return this.interim[0]=r,n;if(s=t[g++],(s&192)!==128){g--;continue}if(h=(r&31)<<6|s&63,h<128){g--;continue}e[n++]=h}else if((r&240)===224){if(g>=i)return this.interim[0]=r,n;if(s=t[g++],(s&192)!==128){g--;continue}if(g>=i)return this.interim[0]=r,this.interim[1]=s,n;if(a=t[g++],(a&192)!==128){g--;continue}if(h=(r&15)<<12|(s&63)<<6|a&63,h<2048||h>=55296&&h<=57343||h===65279)continue;e[n++]=h}else if((r&248)===240){if(g>=i)return this.interim[0]=r,n;if(s=t[g++],(s&192)!==128){g--;continue}if(g>=i)return this.interim[0]=r,this.interim[1]=s,n;if(a=t[g++],(a&192)!==128){g--;continue}if(g>=i)return this.interim[0]=r,this.interim[1]=s,this.interim[2]=a,n;if(c=t[g++],(c&192)!==128){g--;continue}if(h=(r&7)<<18|(s&63)<<12|(a&63)<<6|c&63,h<65536||h>1114111)continue;e[n++]=h}}return n}},ez="",ea=" ",Td=class tz{constructor(){this.fg=0,this.bg=0,this.extended=new rm}static toColorRGB(e){return[e>>>16&255,e>>>8&255,e&255]}static fromColorRGB(e){return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255}clone(){let e=new tz;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},rm=class iz{constructor(e=0,i=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=i}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(e){this._ext&=-67108864,this._ext|=e&67108863}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){let e=(this._ext&3758096384)>>29;return e<0?e^4294967288:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}clone(){return new iz(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},fr=class nz extends Td{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new rm,this.combinedData=""}static fromCharData(e){let i=new nz;return i.setFromCharData(e),i}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?Go(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(e){this.fg=e[0],this.bg=0;let i=!1;if(e[1].length>2)i=!0;else if(e[1].length===2){let n=e[1].charCodeAt(0);if(55296<=n&&n<=56319){let r=e[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(n-55296)*1024+r-56320+65536|e[2]<<22:i=!0}else i=!0}else this.content=e[1].charCodeAt(0)|e[2]<<22;i&&(this.combinedData=e[1],this.content=2097152|e[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},e$="di$target",WS="di$dependencies",uy=new Map;function AF(t){return t[WS]||[]}function $i(t){if(uy.has(t))return uy.get(t);let e=function(i,n,r){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");MF(e,i,r)};return e._id=t,uy.set(t,e),e}function MF(t,e,i){e[e$]===e?e[WS].push({id:t,index:i}):(e[WS]=[{id:t,index:i}],e[e$]=e)}var sn=$i("BufferService"),rz=$i("CoreMouseService"),ml=$i("CoreService"),zF=$i("CharsetService"),Jb=$i("InstantiationService"),sz=$i("LogService"),on=$i("OptionsService"),oz=$i("OscLinkService"),jF=$i("UnicodeService"),Qd=$i("DecorationService"),qS=class{constructor(t,e,i){this._bufferService=t,this._optionsService=e,this._oscLinkService=i}provideLinks(t,e){var f;let i=this._bufferService.buffer.lines.get(t-1);if(!i){e(void 0);return}let n=[],r=this._optionsService.rawOptions.linkHandler,s=new fr,a=i.getTrimmedLength(),c=-1,h=-1,d=!1;for(let g=0;g<a;g++)if(!(h===-1&&!i.hasContent(g))){if(i.loadCell(g,s),s.hasExtendedAttrs()&&s.extended.urlId)if(h===-1){h=g,c=s.extended.urlId;continue}else d=s.extended.urlId!==c;else h!==-1&&(d=!0);if(d||h!==-1&&g===a-1){let m=(f=this._oscLinkService.getLinkData(c))==null?void 0:f.uri;if(m){let v={start:{x:h+1,y:t},end:{x:g+(!d&&g===a-1?1:0),y:t}},S=!1;if(!(r!=null&&r.allowNonHttpProtocols))try{let _=new URL(m);["http:","https:"].includes(_.protocol)||(S=!0)}catch{S=!0}S||n.push({text:m,range:v,activate:(_,w)=>r?r.activate(_,w,v):DF(_,w),hover:(_,w)=>{var x;return(x=r==null?void 0:r.hover)==null?void 0:x.call(r,_,w,v)},leave:(_,w)=>{var x;return(x=r==null?void 0:r.leave)==null?void 0:x.call(r,_,w,v)}})}d=!1,s.hasExtendedAttrs()&&s.extended.urlId?(h=g,c=s.extended.urlId):(h=-1,c=-1)}}e(n)}};qS=Vt([_e(0,sn),_e(1,on),_e(2,oz)],qS);function DF(t,e){if(confirm(`Do you want to navigate to ${e}?
144
-
145
- WARNING: This link could potentially be dangerous`)){let i=window.open();if(i){try{i.opener=null}catch{}i.location.href=e}else console.warn("Opening link blocked as opener could not be cleared")}}var Lm=$i("CharSizeService"),io=$i("CoreBrowserService"),e_=$i("MouseService"),no=$i("RenderService"),BF=$i("SelectionService"),az=$i("CharacterJoinerService"),Uc=$i("ThemeService"),lz=$i("LinkProviderService"),LF=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(t){setTimeout(()=>{throw t.stack?t$.isErrorNoTelemetry(t)?new t$(t.message+`
146
-
147
- `+t.stack):new Error(t.message+`
148
-
149
- `+t.stack):t},0)}}addListener(t){return this.listeners.push(t),()=>{this._removeListener(t)}}emit(t){this.listeners.forEach(e=>{e(t)})}_removeListener(t){this.listeners.splice(this.listeners.indexOf(t),1)}setUnexpectedErrorHandler(t){this.unexpectedErrorHandler=t}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(t){this.unexpectedErrorHandler(t),this.emit(t)}onUnexpectedExternalError(t){this.unexpectedErrorHandler(t)}},XF=new LF;function og(t){NF(t)||XF.onUnexpectedError(t)}var IS="Canceled";function NF(t){return t instanceof ZF?!0:t instanceof Error&&t.name===IS&&t.message===IS}var ZF=class extends Error{constructor(){super(IS),this.name=this.message}};function WF(t){return new Error(`Illegal argument: ${t}`)}var t$=class VS extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof VS)return e;let i=new VS;return i.message=e.message,i.stack=e.stack,i}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}},YS=class cz extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,cz.prototype)}};function Xn(t,e=0){return t[t.length-(1+e)]}var qF;(t=>{function e(s){return s<0}t.isLessThan=e;function i(s){return s<=0}t.isLessThanOrEqual=i;function n(s){return s>0}t.isGreaterThan=n;function r(s){return s===0}t.isNeitherLessOrGreaterThan=r,t.greaterThan=1,t.lessThan=-1,t.neitherLessOrGreaterThan=0})(qF||(qF={}));function IF(t,e){let i=this,n=!1,r;return function(){return n||(n=!0,e||(r=t.apply(i,arguments))),r}}var hz;(t=>{function e(T){return T&&typeof T=="object"&&typeof T[Symbol.iterator]=="function"}t.is=e;let i=Object.freeze([]);function n(){return i}t.empty=n;function*r(T){yield T}t.single=r;function s(T){return e(T)?T:r(T)}t.wrap=s;function a(T){return T||i}t.from=a;function*c(T){for(let A=T.length-1;A>=0;A--)yield T[A]}t.reverse=c;function h(T){return!T||T[Symbol.iterator]().next().done===!0}t.isEmpty=h;function d(T){return T[Symbol.iterator]().next().value}t.first=d;function f(T,A){let P=0;for(let M of T)if(A(M,P++))return!0;return!1}t.some=f;function g(T,A){for(let P of T)if(A(P))return P}t.find=g;function*m(T,A){for(let P of T)A(P)&&(yield P)}t.filter=m;function*v(T,A){let P=0;for(let M of T)yield A(M,P++)}t.map=v;function*S(T,A){let P=0;for(let M of T)yield*A(M,P++)}t.flatMap=S;function*_(...T){for(let A of T)yield*A}t.concat=_;function w(T,A,P){let M=P;for(let V of T)M=A(M,V);return M}t.reduce=w;function*x(T,A,P=T.length){for(A<0&&(A+=T.length),P<0?P+=T.length:P>T.length&&(P=T.length);A<P;A++)yield T[A]}t.slice=x;function Q(T,A=Number.POSITIVE_INFINITY){let P=[];if(A===0)return[P,T];let M=T[Symbol.iterator]();for(let V=0;V<A;V++){let H=M.next();if(H.done)return[P,t.empty()];P.push(H.value)}return[P,{[Symbol.iterator](){return M}}]}t.consume=Q;async function C(T){let A=[];for await(let P of T)A.push(P);return Promise.resolve(A)}t.asyncToArray=C})(hz||(hz={}));function dl(t){if(hz.is(t)){let e=[];for(let i of t)if(i)try{i.dispose()}catch(n){e.push(n)}if(e.length===1)throw e[0];if(e.length>1)throw new AggregateError(e,"Encountered errors while disposing of store");return Array.isArray(t)?[]:t}else if(t)return t.dispose(),t}function VF(...t){return zt(()=>dl(t))}function zt(t){return{dispose:IF(()=>{t()})}}var uz=class dz{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{dl(this._toDispose)}finally{this._toDispose.clear()}}add(e){if(!e)return e;if(e===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?dz.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()}}deleteAndLeak(e){e&&this._toDispose.has(e)&&(this._toDispose.delete(e),void 0)}};uz.DISABLE_DISPOSED_WARNING=!1;var na=uz,Ge=class{constructor(){this._store=new na,this._store}dispose(){this._store.dispose()}_register(t){if(t===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(t)}};Ge.None=Object.freeze({dispose(){}});var Ic=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(t){var e;this._isDisposed||t===this._value||((e=this._value)==null||e.dispose(),this._value=t)}clear(){this.value=void 0}dispose(){var t;this._isDisposed=!0,(t=this._value)==null||t.dispose(),this._value=void 0}clearAndLeak(){let t=this._value;return this._value=void 0,t}},Vs=typeof window=="object"?window:globalThis,HS=class US{constructor(e){this.element=e,this.next=US.Undefined,this.prev=US.Undefined}};HS.Undefined=new HS(void 0);var Bt=HS,i$=class{constructor(){this._first=Bt.Undefined,this._last=Bt.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Bt.Undefined}clear(){let t=this._first;for(;t!==Bt.Undefined;){let e=t.next;t.prev=Bt.Undefined,t.next=Bt.Undefined,t=e}this._first=Bt.Undefined,this._last=Bt.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,e){let i=new Bt(t);if(this._first===Bt.Undefined)this._first=i,this._last=i;else if(e){let r=this._last;this._last=i,i.prev=r,r.next=i}else{let r=this._first;this._first=i,i.next=r,r.prev=i}this._size+=1;let n=!1;return()=>{n||(n=!0,this._remove(i))}}shift(){if(this._first!==Bt.Undefined){let t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==Bt.Undefined){let t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==Bt.Undefined&&t.next!==Bt.Undefined){let e=t.prev;e.next=t.next,t.next.prev=e}else t.prev===Bt.Undefined&&t.next===Bt.Undefined?(this._first=Bt.Undefined,this._last=Bt.Undefined):t.next===Bt.Undefined?(this._last=this._last.prev,this._last.next=Bt.Undefined):t.prev===Bt.Undefined&&(this._first=this._first.next,this._first.prev=Bt.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==Bt.Undefined;)yield t.element,t=t.next}},YF=globalThis.performance&&typeof globalThis.performance.now=="function",HF=class fz{static create(e){return new fz(e)}constructor(e){this._now=YF&&e===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),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}},Li;(t=>{t.None=()=>Ge.None;function e(j,B){return g(j,()=>{},0,void 0,!0,void 0,B)}t.defer=e;function i(j){return(B,E=null,W)=>{let $=!1,Z;return Z=j(z=>{if(!$)return Z?Z.dispose():$=!0,B.call(E,z)},null,W),$&&Z.dispose(),Z}}t.once=i;function n(j,B,E){return d((W,$=null,Z)=>j(z=>W.call($,B(z)),null,Z),E)}t.map=n;function r(j,B,E){return d((W,$=null,Z)=>j(z=>{B(z),W.call($,z)},null,Z),E)}t.forEach=r;function s(j,B,E){return d((W,$=null,Z)=>j(z=>B(z)&&W.call($,z),null,Z),E)}t.filter=s;function a(j){return j}t.signal=a;function c(...j){return(B,E=null,W)=>{let $=VF(...j.map(Z=>Z(z=>B.call(E,z))));return f($,W)}}t.any=c;function h(j,B,E,W){let $=E;return n(j,Z=>($=B($,Z),$),W)}t.reduce=h;function d(j,B){let E,W={onWillAddFirstListener(){E=j($.fire,$)},onDidRemoveLastListener(){E==null||E.dispose()}},$=new ve(W);return B==null||B.add($),$.event}function f(j,B){return B instanceof Array?B.push(j):B&&B.add(j),j}function g(j,B,E=100,W=!1,$=!1,Z,z){let L,U,D,I=0,J,ne={leakWarningThreshold:Z,onWillAddFirstListener(){L=j(de=>{I++,U=B(U,de),W&&!D&&(ce.fire(U),U=void 0),J=()=>{let pe=U;U=void 0,D=void 0,(!W||I>1)&&ce.fire(pe),I=0},typeof E=="number"?(clearTimeout(D),D=setTimeout(J,E)):D===void 0&&(D=0,queueMicrotask(J))})},onWillRemoveListener(){$&&I>0&&(J==null||J())},onDidRemoveLastListener(){J=void 0,L.dispose()}},ce=new ve(ne);return z==null||z.add(ce),ce.event}t.debounce=g;function m(j,B=0,E){return t.debounce(j,(W,$)=>W?(W.push($),W):[$],B,void 0,!0,void 0,E)}t.accumulate=m;function v(j,B=(W,$)=>W===$,E){let W=!0,$;return s(j,Z=>{let z=W||!B(Z,$);return W=!1,$=Z,z},E)}t.latch=v;function S(j,B,E){return[t.filter(j,B,E),t.filter(j,W=>!B(W),E)]}t.split=S;function _(j,B=!1,E=[],W){let $=E.slice(),Z=j(U=>{$?$.push(U):L.fire(U)});W&&W.add(Z);let z=()=>{$==null||$.forEach(U=>L.fire(U)),$=null},L=new ve({onWillAddFirstListener(){Z||(Z=j(U=>L.fire(U)),W&&W.add(Z))},onDidAddFirstListener(){$&&(B?setTimeout(z):z())},onDidRemoveLastListener(){Z&&Z.dispose(),Z=null}});return W&&W.add(L),L.event}t.buffer=_;function w(j,B){return(E,W,$)=>{let Z=B(new Q);return j(function(z){let L=Z.evaluate(z);L!==x&&E.call(W,L)},void 0,$)}}t.chain=w;let x=Symbol("HaltChainable");class Q{constructor(){this.steps=[]}map(B){return this.steps.push(B),this}forEach(B){return this.steps.push(E=>(B(E),E)),this}filter(B){return this.steps.push(E=>B(E)?E:x),this}reduce(B,E){let W=E;return this.steps.push($=>(W=B(W,$),W)),this}latch(B=(E,W)=>E===W){let E=!0,W;return this.steps.push($=>{let Z=E||!B($,W);return E=!1,W=$,Z?$:x}),this}evaluate(B){for(let E of this.steps)if(B=E(B),B===x)break;return B}}function C(j,B,E=W=>W){let W=(...L)=>z.fire(E(...L)),$=()=>j.on(B,W),Z=()=>j.removeListener(B,W),z=new ve({onWillAddFirstListener:$,onDidRemoveLastListener:Z});return z.event}t.fromNodeEventEmitter=C;function T(j,B,E=W=>W){let W=(...L)=>z.fire(E(...L)),$=()=>j.addEventListener(B,W),Z=()=>j.removeEventListener(B,W),z=new ve({onWillAddFirstListener:$,onDidRemoveLastListener:Z});return z.event}t.fromDOMEventEmitter=T;function A(j){return new Promise(B=>i(j)(B))}t.toPromise=A;function P(j){let B=new ve;return j.then(E=>{B.fire(E)},()=>{B.fire(void 0)}).finally(()=>{B.dispose()}),B.event}t.fromPromise=P;function M(j,B){return j(E=>B.fire(E))}t.forward=M;function V(j,B,E){return B(E),j(W=>B(W))}t.runAndSubscribe=V;class H{constructor(B,E){this._observable=B,this._counter=0,this._hasChanged=!1;let W={onWillAddFirstListener:()=>{B.addObserver(this)},onDidRemoveLastListener:()=>{B.removeObserver(this)}};this.emitter=new ve(W),E&&E.add(this.emitter)}beginUpdate(B){this._counter++}handlePossibleChange(B){}handleChange(B,E){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 G(j,B){return new H(j,B).emitter.event}t.fromObservable=G;function N(j){return(B,E,W)=>{let $=0,Z=!1,z={beginUpdate(){$++},endUpdate(){$--,$===0&&(j.reportChanges(),Z&&(Z=!1,B.call(E)))},handlePossibleChange(){},handleChange(){Z=!0}};j.addObserver(z),j.reportChanges();let L={dispose(){j.removeObserver(z)}};return W instanceof na?W.add(L):Array.isArray(W)&&W.push(L),L}}t.fromObservableLight=N})(Li||(Li={}));var GS=class FS{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${FS._idPool++}`,FS.all.add(this)}start(e){this._stopWatch=new HF,this.listenerCount=e}stop(){if(this._stopWatch){let e=this._stopWatch.elapsed();this.durations.push(e),this.elapsedOverall+=e,this.invocationCount+=1,this._stopWatch=void 0}}};GS.all=new Set,GS._idPool=0;var UF=GS,GF=-1,pz=class gz{constructor(e,i,n=(gz._idPool++).toString(16).padStart(3,"0")){this._errorHandler=e,this.threshold=i,this.name=n,this._warnCountdown=0}dispose(){var e;(e=this._stacks)==null||e.clear()}check(e,i){let n=this.threshold;if(n<=0||i<n)return;this._stacks||(this._stacks=new Map);let r=this._stacks.get(e.value)||0;if(this._stacks.set(e.value,r+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=n*.5;let[s,a]=this.getMostFrequentStack(),c=`[${this.name}] potential listener LEAK detected, having ${i} listeners already. MOST frequent listener (${a}):`;console.warn(c),console.warn(s);let h=new JF(c,s);this._errorHandler(h)}return()=>{let s=this._stacks.get(e.value)||0;this._stacks.set(e.value,s-1)}}getMostFrequentStack(){if(!this._stacks)return;let e,i=0;for(let[n,r]of this._stacks)(!e||i<r)&&(e=[n,r],i=r);return e}};pz._idPool=1;var FF=pz,KF=class mz{constructor(e){this.value=e}static create(){let e=new Error;return new mz(e.stack??"")}print(){console.warn(this.value.split(`
150
- `).slice(2).join(`
151
- `))}},JF=class extends Error{constructor(t,e){super(t),this.name="ListenerLeakError",this.stack=e}},eK=class extends Error{constructor(t,e){super(t),this.name="ListenerRefusalError",this.stack=e}},tK=0,dy=class{constructor(t){this.value=t,this.id=tK++}},iK=2,nK,ve=class{constructor(e){var i,n,r,s;this._size=0,this._options=e,this._leakageMon=(i=this._options)!=null&&i.leakWarningThreshold?new FF((e==null?void 0:e.onListenerError)??og,((n=this._options)==null?void 0:n.leakWarningThreshold)??GF):void 0,this._perfMon=(r=this._options)!=null&&r._profName?new UF(this._options._profName):void 0,this._deliveryQueue=(s=this._options)==null?void 0:s.deliveryQueue}dispose(){var e,i,n,r;this._disposed||(this._disposed=!0,((e=this._deliveryQueue)==null?void 0:e.current)===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),(n=(i=this._options)==null?void 0:i.onDidRemoveLastListener)==null||n.call(i),(r=this._leakageMon)==null||r.dispose())}get event(){return this._event??(this._event=(e,i,n)=>{var c,h,d,f,g;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let m=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(m);let v=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],S=new eK(`${m}. HINT: Stack shows most frequent listener (${v[1]}-times)`,v[0]);return(((c=this._options)==null?void 0:c.onListenerError)||og)(S),Ge.None}if(this._disposed)return Ge.None;i&&(e=e.bind(i));let r=new dy(e),s;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(r.stack=KF.create(),s=this._leakageMon.check(r.stack,this._size+1)),this._listeners?this._listeners instanceof dy?(this._deliveryQueue??(this._deliveryQueue=new rK),this._listeners=[this._listeners,r]):this._listeners.push(r):((d=(h=this._options)==null?void 0:h.onWillAddFirstListener)==null||d.call(h,this),this._listeners=r,(g=(f=this._options)==null?void 0:f.onDidAddFirstListener)==null||g.call(f,this)),this._size++;let a=zt(()=>{s==null||s(),this._removeListener(r)});return n instanceof na?n.add(a):Array.isArray(n)&&n.push(a),a}),this._event}_removeListener(e){var s,a,c,h;if((a=(s=this._options)==null?void 0:s.onWillRemoveListener)==null||a.call(s,this),!this._listeners)return;if(this._size===1){this._listeners=void 0,(h=(c=this._options)==null?void 0:c.onDidRemoveLastListener)==null||h.call(c,this),this._size=0;return}let i=this._listeners,n=i.indexOf(e);if(n===-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--,i[n]=void 0;let r=this._deliveryQueue.current===this;if(this._size*iK<=i.length){let d=0;for(let f=0;f<i.length;f++)i[f]?i[d++]=i[f]:r&&(this._deliveryQueue.end--,d<this._deliveryQueue.i&&this._deliveryQueue.i--);i.length=d}}_deliver(e,i){var r;if(!e)return;let n=((r=this._options)==null?void 0:r.onListenerError)||og;if(!n){e.value(i);return}try{e.value(i)}catch(s){n(s)}}_deliverQueue(e){let i=e.current._listeners;for(;e.i<e.end;)this._deliver(i[e.i++],e.value);e.reset()}fire(e){var i,n,r,s;if((i=this._deliveryQueue)!=null&&i.current&&(this._deliverQueue(this._deliveryQueue),(n=this._perfMon)==null||n.stop()),(r=this._perfMon)==null||r.start(this._size),this._listeners)if(this._listeners instanceof dy)this._deliver(this._listeners,e);else{let a=this._deliveryQueue;a.enqueue(this,e,this._listeners.length),this._deliverQueue(a)}(s=this._perfMon)==null||s.stop()}hasListeners(){return this._size>0}},rK=class{constructor(){this.i=-1,this.end=0}enqueue(t,e,i){this.i=0,this.end=i,this.current=t,this.value=e}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},KS=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new ve,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new ve,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(e){return this.mapWindowIdToZoomLevel.get(this.getWindowId(e))??0}setZoomLevel(e,i){if(this.getZoomLevel(i)===e)return;let n=this.getWindowId(i);this.mapWindowIdToZoomLevel.set(n,e),this._onDidChangeZoomLevel.fire(n)}getZoomFactor(e){return this.mapWindowIdToZoomFactor.get(this.getWindowId(e))??1}setZoomFactor(e,i){this.mapWindowIdToZoomFactor.set(this.getWindowId(i),e)}setFullscreen(e,i){if(this.isFullscreen(i)===e)return;let n=this.getWindowId(i);this.mapWindowIdToFullScreen.set(n,e),this._onDidChangeFullscreen.fire(n)}isFullscreen(e){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(e))}getWindowId(e){return e.vscodeWindowId}};KS.INSTANCE=new KS;var t_=KS;function sK(t,e,i){typeof e=="string"&&(e=t.matchMedia(e)),e.addEventListener("change",i)}t_.INSTANCE.onDidChangeZoomLevel;function oK(t){return t_.INSTANCE.getZoomFactor(t)}t_.INSTANCE.onDidChangeFullscreen;var Gc=typeof navigator=="object"?navigator.userAgent:"",JS=Gc.indexOf("Firefox")>=0,aK=Gc.indexOf("AppleWebKit")>=0,i_=Gc.indexOf("Chrome")>=0,lK=!i_&&Gc.indexOf("Safari")>=0;Gc.indexOf("Electron/")>=0;Gc.indexOf("Android")>=0;var fy=!1;if(typeof Vs.matchMedia=="function"){let t=Vs.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=Vs.matchMedia("(display-mode: fullscreen)");fy=t.matches,sK(Vs,t,({matches:i})=>{fy&&e.matches||(fy=i)})}var pc="en",e1=!1,t1=!1,ag=!1,Oz=!1,zp,lg=pc,n$=pc,cK,kr,el=globalThis,Di,I$;typeof el.vscode<"u"&&typeof el.vscode.process<"u"?Di=el.vscode.process:typeof process<"u"&&typeof((I$=process==null?void 0:process.versions)==null?void 0:I$.node)=="string"&&(Di=process);var V$,hK=typeof((V$=Di==null?void 0:Di.versions)==null?void 0:V$.electron)=="string",uK=hK&&(Di==null?void 0:Di.type)==="renderer",Y$;if(typeof Di=="object"){e1=Di.platform==="win32",t1=Di.platform==="darwin",ag=Di.platform==="linux",ag&&Di.env.SNAP&&Di.env.SNAP_REVISION,Di.env.CI||Di.env.BUILD_ARTIFACTSTAGINGDIRECTORY,zp=pc,lg=pc;let t=Di.env.VSCODE_NLS_CONFIG;if(t)try{let e=JSON.parse(t);zp=e.userLocale,n$=e.osLocale,lg=e.resolvedLanguage||pc,cK=(Y$=e.languagePack)==null?void 0:Y$.translationsConfigFile}catch{}Oz=!0}else typeof navigator=="object"&&!uK?(kr=navigator.userAgent,e1=kr.indexOf("Windows")>=0,t1=kr.indexOf("Macintosh")>=0,(kr.indexOf("Macintosh")>=0||kr.indexOf("iPad")>=0||kr.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,ag=kr.indexOf("Linux")>=0,(kr==null?void 0:kr.indexOf("Mobi"))>=0,lg=globalThis._VSCODE_NLS_LANGUAGE||pc,zp=navigator.language.toLowerCase(),n$=zp):console.error("Unable to resolve platform.");var vz=e1,cs=t1,dK=ag,r$=Oz,us=kr,Wo=lg,fK;(t=>{function e(){return Wo}t.value=e;function i(){return Wo.length===2?Wo==="en":Wo.length>=3?Wo[0]==="e"&&Wo[1]==="n"&&Wo[2]==="-":!1}t.isDefaultVariant=i;function n(){return Wo==="en"}t.isDefault=n})(fK||(fK={}));var pK=typeof el.postMessage=="function"&&!el.importScripts;(()=>{if(pK){let t=[];el.addEventListener("message",i=>{if(i.data&&i.data.vscodeScheduleAsyncWork)for(let n=0,r=t.length;n<r;n++){let s=t[n];if(s.id===i.data.vscodeScheduleAsyncWork){t.splice(n,1),s.callback();return}}});let e=0;return i=>{let n=++e;t.push({id:n,callback:i}),el.postMessage({vscodeScheduleAsyncWork:n},"*")}}return t=>setTimeout(t)})();var gK=!!(us&&us.indexOf("Chrome")>=0);us&&us.indexOf("Firefox")>=0;!gK&&us&&us.indexOf("Safari")>=0;us&&us.indexOf("Edg/")>=0;us&&us.indexOf("Android")>=0;var nc=typeof navigator=="object"?navigator:{};r$||document.queryCommandSupported&&document.queryCommandSupported("copy")||nc&&nc.clipboard&&nc.clipboard.writeText,r$||nc&&nc.clipboard&&nc.clipboard.readText;var n_=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(t,e){this._keyCodeToStr[t]=e,this._strToKeyCode[e.toLowerCase()]=t}keyCodeToStr(t){return this._keyCodeToStr[t]}strToKeyCode(t){return this._strToKeyCode[t.toLowerCase()]||0}},py=new n_,s$=new n_,o$=new n_,mK=new Array(230),yz;(t=>{function e(c){return py.keyCodeToStr(c)}t.toString=e;function i(c){return py.strToKeyCode(c)}t.fromString=i;function n(c){return s$.keyCodeToStr(c)}t.toUserSettingsUS=n;function r(c){return o$.keyCodeToStr(c)}t.toUserSettingsGeneral=r;function s(c){return s$.strToKeyCode(c)||o$.strToKeyCode(c)}t.fromUserSettings=s;function a(c){if(c>=98&&c<=113)return null;switch(c){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return py.keyCodeToStr(c)}t.toElectronAccelerator=a})(yz||(yz={}));var OK=class Sz{constructor(e,i,n,r,s){this.ctrlKey=e,this.shiftKey=i,this.altKey=n,this.metaKey=r,this.keyCode=s}equals(e){return e instanceof Sz&&this.ctrlKey===e.ctrlKey&&this.shiftKey===e.shiftKey&&this.altKey===e.altKey&&this.metaKey===e.metaKey&&this.keyCode===e.keyCode}getHashCode(){let e=this.ctrlKey?"1":"0",i=this.shiftKey?"1":"0",n=this.altKey?"1":"0",r=this.metaKey?"1":"0";return`K${e}${i}${n}${r}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new vK([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},vK=class{constructor(t){if(t.length===0)throw WF("chords");this.chords=t}getHashCode(){let t="";for(let e=0,i=this.chords.length;e<i;e++)e!==0&&(t+=";"),t+=this.chords[e].getHashCode();return t}equals(t){if(t===null||this.chords.length!==t.chords.length)return!1;for(let e=0;e<this.chords.length;e++)if(!this.chords[e].equals(t.chords[e]))return!1;return!0}};function yK(t){if(t.charCode){let i=String.fromCharCode(t.charCode).toUpperCase();return yz.fromString(i)}let e=t.keyCode;if(e===3)return 7;if(JS)switch(e){case 59:return 85;case 60:if(dK)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(cs)return 57;break}else if(aK&&(cs&&e===93||!cs&&e===92))return 57;return mK[e]||0}var SK=cs?256:2048,bK=512,_K=1024,xK=cs?2048:256,a$=class{constructor(t){var i;this._standardKeyboardEventBrand=!0;let e=t;this.browserEvent=e,this.target=e.target,this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,this.altGraphKey=(i=e.getModifierState)==null?void 0:i.call(e,"AltGraph"),this.keyCode=yK(e),this.code=e.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(t){return this._asKeybinding===t}_computeKeybinding(){let t=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode);let e=0;return this.ctrlKey&&(e|=SK),this.altKey&&(e|=bK),this.shiftKey&&(e|=_K),this.metaKey&&(e|=xK),e|=t,e}_computeKeyCodeChord(){let t=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode),new OK(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,t)}},l$=new WeakMap;function wK(t){if(!t.parent||t.parent===t)return null;try{let e=t.location,i=t.parent.location;if(e.origin!=="null"&&i.origin!=="null"&&e.origin!==i.origin)return null}catch{return null}return t.parent}var kK=class{static getSameOriginWindowChain(t){let e=l$.get(t);if(!e){e=[],l$.set(t,e);let i=t,n;do n=wK(i),n?e.push({window:new WeakRef(i),iframeElement:i.frameElement||null}):e.push({window:new WeakRef(i),iframeElement:null}),i=n;while(i)}return e.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(t,e){if(!e||t===e)return{top:0,left:0};let i=0,n=0,r=this.getSameOriginWindowChain(t);for(let s of r){let a=s.window.deref();if(i+=(a==null?void 0:a.scrollY)??0,n+=(a==null?void 0:a.scrollX)??0,a===e||!s.iframeElement)break;let c=s.iframeElement.getBoundingClientRect();i+=c.top,n+=c.left}return{top:i,left:n}}},jp=class{constructor(t,e){this.timestamp=Date.now(),this.browserEvent=e,this.leftButton=e.button===0,this.middleButton=e.button===1,this.rightButton=e.button===2,this.buttons=e.buttons,this.target=e.target,this.detail=e.detail||1,e.type==="dblclick"&&(this.detail=2),this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.altKey=e.altKey,this.metaKey=e.metaKey,typeof e.pageX=="number"?(this.posx=e.pageX,this.posy=e.pageY):(this.posx=e.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=e.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);let i=kK.getPositionOfChildWindowRelativeToAncestorWindow(t,e.view);this.posx-=i.left,this.posy-=i.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},c$=class{constructor(t,e=0,i=0){var r;this.browserEvent=t||null,this.target=t?t.target||t.targetNode||t.srcElement:null,this.deltaY=i,this.deltaX=e;let n=!1;if(i_){let s=navigator.userAgent.match(/Chrome\/(\d+)/);n=(s?parseInt(s[1]):123)<=122}if(t){let s=t,a=t,c=((r=t.view)==null?void 0:r.devicePixelRatio)||1;if(typeof s.wheelDeltaY<"u")n?this.deltaY=s.wheelDeltaY/(120*c):this.deltaY=s.wheelDeltaY/120;else if(typeof a.VERTICAL_AXIS<"u"&&a.axis===a.VERTICAL_AXIS)this.deltaY=-a.detail/3;else if(t.type==="wheel"){let h=t;h.deltaMode===h.DOM_DELTA_LINE?JS&&!cs?this.deltaY=-t.deltaY/3:this.deltaY=-t.deltaY:this.deltaY=-t.deltaY/40}if(typeof s.wheelDeltaX<"u")lK&&vz?this.deltaX=-(s.wheelDeltaX/120):n?this.deltaX=s.wheelDeltaX/(120*c):this.deltaX=s.wheelDeltaX/120;else if(typeof a.HORIZONTAL_AXIS<"u"&&a.axis===a.HORIZONTAL_AXIS)this.deltaX=-t.detail/3;else if(t.type==="wheel"){let h=t;h.deltaMode===h.DOM_DELTA_LINE?JS&&!cs?this.deltaX=-t.deltaX/3:this.deltaX=-t.deltaX:this.deltaX=-t.deltaX/40}this.deltaY===0&&this.deltaX===0&&t.wheelDelta&&(n?this.deltaY=t.wheelDelta/(120*c):this.deltaY=t.wheelDelta/120)}}preventDefault(){var t;(t=this.browserEvent)==null||t.preventDefault()}stopPropagation(){var t;(t=this.browserEvent)==null||t.stopPropagation()}},bz=Object.freeze(function(t,e){let i=setTimeout(t.bind(e),0);return{dispose(){clearTimeout(i)}}}),CK;(t=>{function e(i){return i===t.None||i===t.Cancelled||i instanceof TK?!0:!i||typeof i!="object"?!1:typeof i.isCancellationRequested=="boolean"&&typeof i.onCancellationRequested=="function"}t.isCancellationToken=e,t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Li.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:bz})})(CK||(CK={}));var TK=class{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?bz:(this._emitter||(this._emitter=new ve),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},r_=class{constructor(t,e){this._isDisposed=!1,this._token=-1,typeof t=="function"&&typeof e=="number"&&this.setIfNotSet(t,e)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(t,e){if(this._isDisposed)throw new YS("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,t()},e)}setIfNotSet(t,e){if(this._isDisposed)throw new YS("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,t()},e))}},QK=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){var t;(t=this.disposable)==null||t.dispose(),this.disposable=void 0}cancelAndSet(t,e,i=globalThis){if(this.isDisposed)throw new YS("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let n=i.setInterval(()=>{t()},e);this.disposable=zt(()=>{i.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},$K;(t=>{async function e(n){let r,s=await Promise.all(n.map(a=>a.then(c=>c,c=>{r||(r=c)})));if(typeof r<"u")throw r;return s}t.settled=e;function i(n){return new Promise(async(r,s)=>{try{await n(r,s)}catch(a){s(a)}})}t.withAsyncBody=i})($K||($K={}));var h$=class or{static fromArray(e){return new or(i=>{i.emitMany(e)})}static fromPromise(e){return new or(async i=>{i.emitMany(await e)})}static fromPromises(e){return new or(async i=>{await Promise.all(e.map(async n=>i.emitOne(await n)))})}static merge(e){return new or(async i=>{await Promise.all(e.map(async n=>{for await(let r of n)i.emitOne(r)}))})}constructor(e,i){this._state=0,this._results=[],this._error=null,this._onReturn=i,this._onStateChanged=new ve,queueMicrotask(async()=>{let n={emitOne:r=>this.emitOne(r),emitMany:r=>this.emitMany(r),reject:r=>this.reject(r)};try{await Promise.resolve(e(n)),this.resolve()}catch(r){this.reject(r)}finally{n.emitOne=void 0,n.emitMany=void 0,n.reject=void 0}})}[Symbol.asyncIterator](){let e=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(e<this._results.length)return{done:!1,value:this._results[e++]};if(this._state===1)return{done:!0,value:void 0};await Li.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>{var i;return(i=this._onReturn)==null||i.call(this),{done:!0,value:void 0}}}}static map(e,i){return new or(async n=>{for await(let r of e)n.emitOne(i(r))})}map(e){return or.map(this,e)}static filter(e,i){return new or(async n=>{for await(let r of e)i(r)&&n.emitOne(r)})}filter(e){return or.filter(this,e)}static coalesce(e){return or.filter(e,i=>!!i)}coalesce(){return or.coalesce(this)}static async toPromise(e){let i=[];for await(let n of e)i.push(n);return i}toPromise(){return or.toPromise(this)}emitOne(e){this._state===0&&(this._results.push(e),this._onStateChanged.fire())}emitMany(e){this._state===0&&(this._results=this._results.concat(e),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(e){this._state===0&&(this._state=2,this._error=e,this._onStateChanged.fire())}};h$.EMPTY=h$.fromArray([]);var{getWindow:ss,getWindowId:PK,onDidRegisterWindow:EK}=(function(){let t=new Map,e={window:Vs,disposables:new na};t.set(Vs.vscodeWindowId,e);let i=new ve,n=new ve,r=new ve;function s(a,c){return(typeof a=="number"?t.get(a):void 0)??(c?e:void 0)}return{onDidRegisterWindow:i.event,onWillUnregisterWindow:r.event,onDidUnregisterWindow:n.event,registerWindow(a){if(t.has(a.vscodeWindowId))return Ge.None;let c=new na,h={window:a,disposables:c.add(new na)};return t.set(a.vscodeWindowId,h),c.add(zt(()=>{t.delete(a.vscodeWindowId),n.fire(a)})),c.add(Xe(a,xi.BEFORE_UNLOAD,()=>{r.fire(a)})),i.fire(h),c},getWindows(){return t.values()},getWindowsCount(){return t.size},getWindowId(a){return a.vscodeWindowId},hasWindow(a){return t.has(a)},getWindowById:s,getWindow(a){var d;let c=a;if((d=c==null?void 0:c.ownerDocument)!=null&&d.defaultView)return c.ownerDocument.defaultView.window;let h=a;return h!=null&&h.view?h.view.window:Vs},getDocument(a){return ss(a).document}}})(),RK=class{constructor(t,e,i,n){this._node=t,this._type=e,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 Xe(t,e,i,n){return new RK(t,e,i,n)}var u$=function(t,e,i,n){return Xe(t,e,i,n)},s_,AK=class extends QK{constructor(t){super(),this.defaultTarget=t&&ss(t)}cancelAndSet(t,e,i){return super.cancelAndSet(t,e,i??this.defaultTarget)}},d$=class{constructor(t,e=0){this._runner=t,this.priority=e,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(t){og(t)}}static sort(t,e){return e.priority-t.priority}};(function(){let t=new Map,e=new Map,i=new Map,n=new Map,r=s=>{i.set(s,!1);let a=t.get(s)??[];for(e.set(s,a),t.set(s,[]),n.set(s,!0);a.length>0;)a.sort(d$.sort),a.shift().execute();n.set(s,!1)};s_=(s,a,c=0)=>{let h=PK(s),d=new d$(a,c),f=t.get(h);return f||(f=[],t.set(h,f)),f.push(d),i.get(h)||(i.set(h,!0),s.requestAnimationFrame(()=>r(h))),d}})();function MK(t){let e=t.getBoundingClientRect(),i=ss(t);return{left:e.left+i.scrollX,top:e.top+i.scrollY,width:e.width,height:e.height}}var xi={CLICK:"click",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",BLUR:"blur",INPUT:"input"},zK=class{constructor(t){this.domNode=t,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingTop="",this._paddingLeft="",this._paddingBottom="",this._paddingRight="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(t){let e=vn(t);this._maxWidth!==e&&(this._maxWidth=e,this.domNode.style.maxWidth=this._maxWidth)}setWidth(t){let e=vn(t);this._width!==e&&(this._width=e,this.domNode.style.width=this._width)}setHeight(t){let e=vn(t);this._height!==e&&(this._height=e,this.domNode.style.height=this._height)}setTop(t){let e=vn(t);this._top!==e&&(this._top=e,this.domNode.style.top=this._top)}setLeft(t){let e=vn(t);this._left!==e&&(this._left=e,this.domNode.style.left=this._left)}setBottom(t){let e=vn(t);this._bottom!==e&&(this._bottom=e,this.domNode.style.bottom=this._bottom)}setRight(t){let e=vn(t);this._right!==e&&(this._right=e,this.domNode.style.right=this._right)}setPaddingTop(t){let e=vn(t);this._paddingTop!==e&&(this._paddingTop=e,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(t){let e=vn(t);this._paddingLeft!==e&&(this._paddingLeft=e,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(t){let e=vn(t);this._paddingBottom!==e&&(this._paddingBottom=e,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(t){let e=vn(t);this._paddingRight!==e&&(this._paddingRight=e,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(t){this._fontFamily!==t&&(this._fontFamily=t,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(t){this._fontWeight!==t&&(this._fontWeight=t,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(t){let e=vn(t);this._fontSize!==e&&(this._fontSize=e,this.domNode.style.fontSize=this._fontSize)}setFontStyle(t){this._fontStyle!==t&&(this._fontStyle=t,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(t){this._fontFeatureSettings!==t&&(this._fontFeatureSettings=t,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(t){this._fontVariationSettings!==t&&(this._fontVariationSettings=t,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(t){this._textDecoration!==t&&(this._textDecoration=t,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(t){let e=vn(t);this._lineHeight!==e&&(this._lineHeight=e,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(t){let e=vn(t);this._letterSpacing!==e&&(this._letterSpacing=e,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(t){this._className!==t&&(this._className=t,this.domNode.className=this._className)}toggleClassName(t,e){this.domNode.classList.toggle(t,e),this._className=this.domNode.className}setDisplay(t){this._display!==t&&(this._display=t,this.domNode.style.display=this._display)}setPosition(t){this._position!==t&&(this._position=t,this.domNode.style.position=this._position)}setVisibility(t){this._visibility!==t&&(this._visibility=t,this.domNode.style.visibility=this._visibility)}setColor(t){this._color!==t&&(this._color=t,this.domNode.style.color=this._color)}setBackgroundColor(t){this._backgroundColor!==t&&(this._backgroundColor=t,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(t){this._layerHint!==t&&(this._layerHint=t,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(t){this._boxShadow!==t&&(this._boxShadow=t,this.domNode.style.boxShadow=t)}setContain(t){this._contain!==t&&(this._contain=t,this.domNode.style.contain=this._contain)}setAttribute(t,e){this.domNode.setAttribute(t,e)}removeAttribute(t){this.domNode.removeAttribute(t)}appendChild(t){this.domNode.appendChild(t.domNode)}removeChild(t){this.domNode.removeChild(t.domNode)}};function vn(t){return typeof t=="number"?`${t}px`:t}function Au(t){return new zK(t)}var _z=class{constructor(){this._hooks=new na,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(t,e){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let i=this._onStopCallback;this._onStopCallback=null,t&&i&&i(e)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(t,e,i,n,r){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=n,this._onStopCallback=r;let s=t;try{t.setPointerCapture(e),this._hooks.add(zt(()=>{try{t.releasePointerCapture(e)}catch{}}))}catch{s=ss(t)}this._hooks.add(Xe(s,xi.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(Xe(s,xi.POINTER_UP,a=>this.stopMonitoring(!0)))}};function jK(t,e,i){let n=null,r=null;if(typeof i.value=="function"?(n="value",r=i.value,r.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof i.get=="function"&&(n="get",r=i.get),!r)throw new Error("not supported");let s=`$memoize$${e}`;i[n]=function(...a){return this.hasOwnProperty(s)||Object.defineProperty(this,s,{configurable:!1,enumerable:!1,writable:!1,value:r.apply(this,a)}),this[s]}}var Fr;(t=>(t.Tap="-xterm-gesturetap",t.Change="-xterm-gesturechange",t.Start="-xterm-gesturestart",t.End="-xterm-gesturesend",t.Contextmenu="-xterm-gesturecontextmenu"))(Fr||(Fr={}));var vu=class Vi extends Ge{constructor(){super(),this.dispatched=!1,this.targets=new i$,this.ignoreTargets=new i$,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(Li.runAndSubscribe(EK,({window:e,disposables:i})=>{i.add(Xe(e.document,"touchstart",n=>this.onTouchStart(n),{passive:!1})),i.add(Xe(e.document,"touchend",n=>this.onTouchEnd(e,n))),i.add(Xe(e.document,"touchmove",n=>this.onTouchMove(n),{passive:!1}))},{window:Vs,disposables:this._store}))}static addTarget(e){if(!Vi.isTouchDevice())return Ge.None;Vi.INSTANCE||(Vi.INSTANCE=new Vi);let i=Vi.INSTANCE.targets.push(e);return zt(i)}static ignoreTarget(e){if(!Vi.isTouchDevice())return Ge.None;Vi.INSTANCE||(Vi.INSTANCE=new Vi);let i=Vi.INSTANCE.ignoreTargets.push(e);return zt(i)}static isTouchDevice(){return"ontouchstart"in Vs||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(e){let i=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let n=0,r=e.targetTouches.length;n<r;n++){let s=e.targetTouches.item(n);this.activeTouches[s.identifier]={id:s.identifier,initialTarget:s.target,initialTimeStamp:i,initialPageX:s.pageX,initialPageY:s.pageY,rollingTimestamps:[i],rollingPageX:[s.pageX],rollingPageY:[s.pageY]};let a=this.newGestureEvent(Fr.Start,s.target);a.pageX=s.pageX,a.pageY=s.pageY,this.dispatchEvent(a)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}onTouchEnd(e,i){let n=Date.now(),r=Object.keys(this.activeTouches).length;for(let s=0,a=i.changedTouches.length;s<a;s++){let c=i.changedTouches.item(s);if(!this.activeTouches.hasOwnProperty(String(c.identifier))){console.warn("move of an UNKNOWN touch",c);continue}let h=this.activeTouches[c.identifier],d=Date.now()-h.initialTimeStamp;if(d<Vi.HOLD_DELAY&&Math.abs(h.initialPageX-Xn(h.rollingPageX))<30&&Math.abs(h.initialPageY-Xn(h.rollingPageY))<30){let f=this.newGestureEvent(Fr.Tap,h.initialTarget);f.pageX=Xn(h.rollingPageX),f.pageY=Xn(h.rollingPageY),this.dispatchEvent(f)}else if(d>=Vi.HOLD_DELAY&&Math.abs(h.initialPageX-Xn(h.rollingPageX))<30&&Math.abs(h.initialPageY-Xn(h.rollingPageY))<30){let f=this.newGestureEvent(Fr.Contextmenu,h.initialTarget);f.pageX=Xn(h.rollingPageX),f.pageY=Xn(h.rollingPageY),this.dispatchEvent(f)}else if(r===1){let f=Xn(h.rollingPageX),g=Xn(h.rollingPageY),m=Xn(h.rollingTimestamps)-h.rollingTimestamps[0],v=f-h.rollingPageX[0],S=g-h.rollingPageY[0],_=[...this.targets].filter(w=>h.initialTarget instanceof Node&&w.contains(h.initialTarget));this.inertia(e,_,n,Math.abs(v)/m,v>0?1:-1,f,Math.abs(S)/m,S>0?1:-1,g)}this.dispatchEvent(this.newGestureEvent(Fr.End,h.initialTarget)),delete this.activeTouches[c.identifier]}this.dispatched&&(i.preventDefault(),i.stopPropagation(),this.dispatched=!1)}newGestureEvent(e,i){let n=document.createEvent("CustomEvent");return n.initEvent(e,!1,!0),n.initialTarget=i,n.tapCount=0,n}dispatchEvent(e){if(e.type===Fr.Tap){let i=new Date().getTime(),n=0;i-this._lastSetTapCountTime>Vi.CLEAR_TAP_COUNT_TIME?n=1:n=2,this._lastSetTapCountTime=i,e.tapCount=n}else(e.type===Fr.Change||e.type===Fr.Contextmenu)&&(this._lastSetTapCountTime=0);if(e.initialTarget instanceof Node){for(let n of this.ignoreTargets)if(n.contains(e.initialTarget))return;let i=[];for(let n of this.targets)if(n.contains(e.initialTarget)){let r=0,s=e.initialTarget;for(;s&&s!==n;)r++,s=s.parentElement;i.push([r,n])}i.sort((n,r)=>n[0]-r[0]);for(let[n,r]of i)r.dispatchEvent(e),this.dispatched=!0}}inertia(e,i,n,r,s,a,c,h,d){this.handle=s_(e,()=>{let f=Date.now(),g=f-n,m=0,v=0,S=!0;r+=Vi.SCROLL_FRICTION*g,c+=Vi.SCROLL_FRICTION*g,r>0&&(S=!1,m=s*r*g),c>0&&(S=!1,v=h*c*g);let _=this.newGestureEvent(Fr.Change);_.translationX=m,_.translationY=v,i.forEach(w=>w.dispatchEvent(_)),S||this.inertia(e,i,f,r,s,a+m,c,h,d+v)})}onTouchMove(e){let i=Date.now();for(let n=0,r=e.changedTouches.length;n<r;n++){let s=e.changedTouches.item(n);if(!this.activeTouches.hasOwnProperty(String(s.identifier))){console.warn("end of an UNKNOWN touch",s);continue}let a=this.activeTouches[s.identifier],c=this.newGestureEvent(Fr.Change,a.initialTarget);c.translationX=s.pageX-Xn(a.rollingPageX),c.translationY=s.pageY-Xn(a.rollingPageY),c.pageX=s.pageX,c.pageY=s.pageY,this.dispatchEvent(c),a.rollingPageX.length>3&&(a.rollingPageX.shift(),a.rollingPageY.shift(),a.rollingTimestamps.shift()),a.rollingPageX.push(s.pageX),a.rollingPageY.push(s.pageY),a.rollingTimestamps.push(i)}this.dispatched&&(e.preventDefault(),e.stopPropagation(),this.dispatched=!1)}};vu.SCROLL_FRICTION=-.005,vu.HOLD_DELAY=700,vu.CLEAR_TAP_COUNT_TIME=400,Vt([jK],vu,"isTouchDevice",1);var DK=vu,o_=class extends Ge{onclick(t,e){this._register(Xe(t,xi.CLICK,i=>e(new jp(ss(t),i))))}onmousedown(t,e){this._register(Xe(t,xi.MOUSE_DOWN,i=>e(new jp(ss(t),i))))}onmouseover(t,e){this._register(Xe(t,xi.MOUSE_OVER,i=>e(new jp(ss(t),i))))}onmouseleave(t,e){this._register(Xe(t,xi.MOUSE_LEAVE,i=>e(new jp(ss(t),i))))}onkeydown(t,e){this._register(Xe(t,xi.KEY_DOWN,i=>e(new a$(i))))}onkeyup(t,e){this._register(Xe(t,xi.KEY_UP,i=>e(new a$(i))))}oninput(t,e){this._register(Xe(t,xi.INPUT,e))}onblur(t,e){this._register(Xe(t,xi.BLUR,e))}onfocus(t,e){this._register(Xe(t,xi.FOCUS,e))}onchange(t,e){this._register(Xe(t,xi.CHANGE,e))}ignoreGesture(t){return DK.ignoreTarget(t)}},f$=11,BK=class extends o_{constructor(t){super(),this._onActivate=t.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=t.bgWidth+"px",this.bgDomNode.style.height=t.bgHeight+"px",typeof t.top<"u"&&(this.bgDomNode.style.top="0px"),typeof t.left<"u"&&(this.bgDomNode.style.left="0px"),typeof t.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof t.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=t.className,this.domNode.style.position="absolute",this.domNode.style.width=f$+"px",this.domNode.style.height=f$+"px",typeof t.top<"u"&&(this.domNode.style.top=t.top+"px"),typeof t.left<"u"&&(this.domNode.style.left=t.left+"px"),typeof t.bottom<"u"&&(this.domNode.style.bottom=t.bottom+"px"),typeof t.right<"u"&&(this.domNode.style.right=t.right+"px"),this._pointerMoveMonitor=this._register(new _z),this._register(u$(this.bgDomNode,xi.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._register(u$(this.domNode,xi.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._pointerdownRepeatTimer=this._register(new AK),this._pointerdownScheduleRepeatTimer=this._register(new r_)}_arrowPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,ss(t))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(e,200),this._pointerMoveMonitor.startMonitoring(t.target,t.pointerId,t.buttons,i=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),t.preventDefault()}},LK=class i1{constructor(e,i,n,r,s,a,c){this._forceIntegerValues=e,this._scrollStateBrand=void 0,this._forceIntegerValues&&(i=i|0,n=n|0,r=r|0,s=s|0,a=a|0,c=c|0),this.rawScrollLeft=r,this.rawScrollTop=c,i<0&&(i=0),r+i>n&&(r=n-i),r<0&&(r=0),s<0&&(s=0),c+s>a&&(c=a-s),c<0&&(c=0),this.width=i,this.scrollWidth=n,this.scrollLeft=r,this.height=s,this.scrollHeight=a,this.scrollTop=c}equals(e){return this.rawScrollLeft===e.rawScrollLeft&&this.rawScrollTop===e.rawScrollTop&&this.width===e.width&&this.scrollWidth===e.scrollWidth&&this.scrollLeft===e.scrollLeft&&this.height===e.height&&this.scrollHeight===e.scrollHeight&&this.scrollTop===e.scrollTop}withScrollDimensions(e,i){return new i1(this._forceIntegerValues,typeof e.width<"u"?e.width:this.width,typeof e.scrollWidth<"u"?e.scrollWidth:this.scrollWidth,i?this.rawScrollLeft:this.scrollLeft,typeof e.height<"u"?e.height:this.height,typeof e.scrollHeight<"u"?e.scrollHeight:this.scrollHeight,i?this.rawScrollTop:this.scrollTop)}withScrollPosition(e){return new i1(this._forceIntegerValues,this.width,this.scrollWidth,typeof e.scrollLeft<"u"?e.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof e.scrollTop<"u"?e.scrollTop:this.rawScrollTop)}createScrollEvent(e,i){let n=this.width!==e.width,r=this.scrollWidth!==e.scrollWidth,s=this.scrollLeft!==e.scrollLeft,a=this.height!==e.height,c=this.scrollHeight!==e.scrollHeight,h=this.scrollTop!==e.scrollTop;return{inSmoothScrolling:i,oldWidth:e.width,oldScrollWidth:e.scrollWidth,oldScrollLeft:e.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:e.height,oldScrollHeight:e.scrollHeight,oldScrollTop:e.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:n,scrollWidthChanged:r,scrollLeftChanged:s,heightChanged:a,scrollHeightChanged:c,scrollTopChanged:h}}},XK=class extends Ge{constructor(t){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new ve),this.onScroll=this._onScroll.event,this._smoothScrollDuration=t.smoothScrollDuration,this._scheduleAtNextAnimationFrame=t.scheduleAtNextAnimationFrame,this._state=new LK(t.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(t){this._smoothScrollDuration=t}validateScrollPosition(t){return this._state.withScrollPosition(t)}getScrollDimensions(){return this._state}setScrollDimensions(t,e){var n;let i=this._state.withScrollDimensions(t,e);this._setState(i,!!this._smoothScrolling),(n=this._smoothScrolling)==null||n.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(t){let e=this._state.withScrollPosition(t);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(e,!1)}setScrollPositionSmooth(t,e){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(t);if(this._smoothScrolling){t={scrollLeft:typeof t.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:t.scrollLeft,scrollTop:typeof t.scrollTop>"u"?this._smoothScrolling.to.scrollTop:t.scrollTop};let i=this._state.withScrollPosition(t);if(this._smoothScrolling.to.scrollLeft===i.scrollLeft&&this._smoothScrolling.to.scrollTop===i.scrollTop)return;let n;e?n=new g$(this._smoothScrolling.from,i,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,i,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{let i=this._state.withScrollPosition(t);this._smoothScrolling=g$.start(this._state,i,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;let t=this._smoothScrolling.tick(),e=this._state.withScrollPosition(t);if(this._setState(e,!0),!!this._smoothScrolling){if(t.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(t,e){let i=this._state;i.equals(t)||(this._state=t,this._onScroll.fire(this._state.createScrollEvent(i,e)))}},p$=class{constructor(t,e,i){this.scrollLeft=t,this.scrollTop=e,this.isDone=i}};function gy(t,e){let i=e-t;return function(n){return t+i*WK(n)}}function NK(t,e,i){return function(n){return n<i?t(n/i):e((n-i)/(1-i))}}var g$=class n1{constructor(e,i,n,r){this.from=e,this.to=i,this.duration=r,this.startTime=n,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(e,i,n){if(Math.abs(e-i)>2.5*n){let r,s;return e<i?(r=e+.75*n,s=i-.75*n):(r=e-.75*n,s=i+.75*n),NK(gy(e,r),gy(s,i),.33)}return gy(e,i)}dispose(){this.animationFrameDisposable!==null&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)}acceptScrollDimensions(e){this.to=e.withScrollPosition(this.to),this._initAnimations()}tick(){return this._tick(Date.now())}_tick(e){let i=(e-this.startTime)/this.duration;if(i<1){let n=this.scrollLeft(i),r=this.scrollTop(i);return new p$(n,r,!1)}return new p$(this.to.scrollLeft,this.to.scrollTop,!0)}combine(e,i,n){return n1.start(e,i,n)}static start(e,i,n){n=n+10;let r=Date.now()-10;return new n1(e,i,r,n)}};function ZK(t){return Math.pow(t,3)}function WK(t){return 1-ZK(1-t)}var qK=class extends Ge{constructor(t,e,i){super(),this._visibility=t,this._visibleClassName=e,this._invisibleClassName=i,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new r_)}setVisibility(t){this._visibility!==t&&(this._visibility=t,this._updateShouldBeVisible())}setShouldBeVisible(t){this._rawShouldBeVisible=t,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){let t=this._applyVisibilitySetting();this._shouldBeVisible!==t&&(this._shouldBeVisible=t,this.ensureVisibility())}setIsNeeded(t){this._isNeeded!==t&&(this._isNeeded=t,this.ensureVisibility())}setDomNode(t){this._domNode=t,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{var t;(t=this._domNode)==null||t.setClassName(this._visibleClassName)},0))}_hide(t){var e;this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,(e=this._domNode)==null||e.setClassName(this._invisibleClassName+(t?" fade":"")))}},IK=140,xz=class extends o_{constructor(t){super(),this._lazyRender=t.lazyRender,this._host=t.host,this._scrollable=t.scrollable,this._scrollByPage=t.scrollByPage,this._scrollbarState=t.scrollbarState,this._visibilityController=this._register(new qK(t.visibility,"visible scrollbar "+t.extraScrollbarClassName,"invisible scrollbar "+t.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new _z),this._shouldRender=!0,this.domNode=Au(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(Xe(this.domNode.domNode,xi.POINTER_DOWN,e=>this._domNodePointerDown(e)))}_createArrow(t){let e=this._register(new BK(t));this.domNode.domNode.appendChild(e.bgDomNode),this.domNode.domNode.appendChild(e.domNode)}_createSlider(t,e,i,n){this.slider=Au(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(t),this.slider.setLeft(e),typeof i=="number"&&this.slider.setWidth(i),typeof n=="number"&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(Xe(this.slider.domNode,xi.POINTER_DOWN,r=>{r.button===0&&(r.preventDefault(),this._sliderPointerDown(r))})),this.onclick(this.slider.domNode,r=>{r.leftButton&&r.stopPropagation()})}_onElementSize(t){return this._scrollbarState.setVisibleSize(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(t){return this._scrollbarState.setScrollSize(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(t){return this._scrollbarState.setScrollPosition(t)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(t){t.target===this.domNode.domNode&&this._onPointerDown(t)}delegatePointerDown(t){let e=this.domNode.domNode.getClientRects()[0].top,i=e+this._scrollbarState.getSliderPosition(),n=e+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),r=this._sliderPointerPosition(t);i<=r&&r<=n?t.button===0&&(t.preventDefault(),this._sliderPointerDown(t)):this._onPointerDown(t)}_onPointerDown(t){let e,i;if(t.target===this.domNode.domNode&&typeof t.offsetX=="number"&&typeof t.offsetY=="number")e=t.offsetX,i=t.offsetY;else{let r=MK(this.domNode.domNode);e=t.pageX-r.left,i=t.pageY-r.top}let n=this._pointerDownRelativePosition(e,i);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(n):this._scrollbarState.getDesiredScrollPositionFromOffset(n)),t.button===0&&(t.preventDefault(),this._sliderPointerDown(t))}_sliderPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=this._sliderPointerPosition(t),i=this._sliderOrthogonalPointerPosition(t),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(t.target,t.pointerId,t.buttons,r=>{let s=this._sliderOrthogonalPointerPosition(r),a=Math.abs(s-i);if(vz&&a>IK){this._setDesiredScrollPositionNow(n.getScrollPosition());return}let c=this._sliderPointerPosition(r)-e;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(c))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(t){let e={};this.writeScrollPosition(e,t),this._scrollable.setScrollPositionNow(e)}updateScrollbarSize(t){this._updateScrollbarSize(t),this._scrollbarState.setScrollbarSize(t),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},wz=class r1{constructor(e,i,n,r,s,a){this._scrollbarSize=Math.round(i),this._oppositeScrollbarSize=Math.round(n),this._arrowSize=Math.round(e),this._visibleSize=r,this._scrollSize=s,this._scrollPosition=a,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new r1(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(e){let i=Math.round(e);return this._visibleSize!==i?(this._visibleSize=i,this._refreshComputedValues(),!0):!1}setScrollSize(e){let i=Math.round(e);return this._scrollSize!==i?(this._scrollSize=i,this._refreshComputedValues(),!0):!1}setScrollPosition(e){let i=Math.round(e);return this._scrollPosition!==i?(this._scrollPosition=i,this._refreshComputedValues(),!0):!1}setScrollbarSize(e){this._scrollbarSize=Math.round(e)}setOppositeScrollbarSize(e){this._oppositeScrollbarSize=Math.round(e)}static _computeValues(e,i,n,r,s){let a=Math.max(0,n-e),c=Math.max(0,a-2*i),h=r>0&&r>n;if(!h)return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(c),computedSliderRatio:0,computedSliderPosition:0};let d=Math.round(Math.max(20,Math.floor(n*c/r))),f=(c-d)/(r-n),g=s*f;return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(d),computedSliderRatio:f,computedSliderPosition:Math.round(g)}}_refreshComputedValues(){let e=r1._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=e.computedAvailableSize,this._computedIsNeeded=e.computedIsNeeded,this._computedSliderSize=e.computedSliderSize,this._computedSliderRatio=e.computedSliderRatio,this._computedSliderPosition=e.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(e){if(!this._computedIsNeeded)return 0;let i=e-this._arrowSize-this._computedSliderSize/2;return Math.round(i/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(e){if(!this._computedIsNeeded)return 0;let i=e-this._arrowSize,n=this._scrollPosition;return i<this._computedSliderPosition?n-=this._visibleSize:n+=this._visibleSize,n}getDesiredScrollPositionFromDelta(e){if(!this._computedIsNeeded)return 0;let i=this._computedSliderPosition+e;return Math.round(i/this._computedSliderRatio)}},VK=class extends xz{constructor(t,e,i){let n=t.getScrollDimensions(),r=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:i,scrollbarState:new wz(e.horizontalHasArrows?e.arrowSize:0,e.horizontal===2?0:e.horizontalScrollbarSize,e.vertical===2?0:e.verticalScrollbarSize,n.width,n.scrollWidth,r.scrollLeft),visibility:e.horizontal,extraScrollbarClassName:"horizontal",scrollable:t,scrollByPage:e.scrollByPage}),e.horizontalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(Math.floor((e.horizontalScrollbarSize-e.horizontalSliderSize)/2),0,void 0,e.horizontalSliderSize)}_updateSlider(t,e){this.slider.setWidth(t),this.slider.setLeft(e)}_renderDomNode(t,e){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(t){return this._shouldRender=this._onElementScrollSize(t.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(t.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(t.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(t,e){return t}_sliderPointerPosition(t){return t.pageX}_sliderOrthogonalPointerPosition(t){return t.pageY}_updateScrollbarSize(t){this.slider.setHeight(t)}writeScrollPosition(t,e){t.scrollLeft=e}updateOptions(t){this.updateScrollbarSize(t.horizontal===2?0:t.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(t.vertical===2?0:t.verticalScrollbarSize),this._visibilityController.setVisibility(t.horizontal),this._scrollByPage=t.scrollByPage}},YK=class extends xz{constructor(t,e,i){let n=t.getScrollDimensions(),r=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:i,scrollbarState:new wz(e.verticalHasArrows?e.arrowSize:0,e.vertical===2?0:e.verticalScrollbarSize,0,n.height,n.scrollHeight,r.scrollTop),visibility:e.vertical,extraScrollbarClassName:"vertical",scrollable:t,scrollByPage:e.scrollByPage}),e.verticalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(0,Math.floor((e.verticalScrollbarSize-e.verticalSliderSize)/2),e.verticalSliderSize,void 0)}_updateSlider(t,e){this.slider.setHeight(t),this.slider.setTop(e)}_renderDomNode(t,e){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(t){return this._shouldRender=this._onElementScrollSize(t.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(t.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(t.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(t,e){return e}_sliderPointerPosition(t){return t.pageY}_sliderOrthogonalPointerPosition(t){return t.pageX}_updateScrollbarSize(t){this.slider.setWidth(t)}writeScrollPosition(t,e){t.scrollTop=e}updateOptions(t){this.updateScrollbarSize(t.vertical===2?0:t.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(t.vertical),this._scrollByPage=t.scrollByPage}},HK=500,m$=50,UK=class{constructor(t,e,i){this.timestamp=t,this.deltaX=e,this.deltaY=i,this.score=0}},s1=class{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(this._front===-1&&this._rear===-1)return!1;let e=1,i=0,n=1,r=this._rear;do{let s=r===this._front?e:Math.pow(2,-n);if(e-=s,i+=this._memory[r].score*s,r===this._front)break;r=(this._capacity+r-1)%this._capacity,n++}while(!0);return i<=.5}acceptStandardWheelEvent(e){if(i_){let i=ss(e.browserEvent),n=oK(i);this.accept(Date.now(),e.deltaX*n,e.deltaY*n)}else this.accept(Date.now(),e.deltaX,e.deltaY)}accept(e,i,n){let r=null,s=new UK(e,i,n);this._front===-1&&this._rear===-1?(this._memory[0]=s,this._front=0,this._rear=0):(r=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=s),s.score=this._computeScore(s,r)}_computeScore(e,i){if(Math.abs(e.deltaX)>0&&Math.abs(e.deltaY)>0)return 1;let n=.5;if((!this._isAlmostInt(e.deltaX)||!this._isAlmostInt(e.deltaY))&&(n+=.25),i){let r=Math.abs(e.deltaX),s=Math.abs(e.deltaY),a=Math.abs(i.deltaX),c=Math.abs(i.deltaY),h=Math.max(Math.min(r,a),1),d=Math.max(Math.min(s,c),1),f=Math.max(r,a),g=Math.max(s,c);f%h===0&&g%d===0&&(n-=.5)}return Math.min(Math.max(n,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};s1.INSTANCE=new s1;var GK=s1,FK=class extends o_{constructor(t,e,i){super(),this._onScroll=this._register(new ve),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new ve),this.onWillScroll=this._onWillScroll.event,this._options=JK(e),this._scrollable=i,this._register(this._scrollable.onScroll(r=>{this._onWillScroll.fire(r),this._onDidScroll(r),this._onScroll.fire(r)}));let n={onMouseWheel:r=>this._onMouseWheel(r),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new YK(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new VK(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="xterm-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.appendChild(t),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=Au(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=Au(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=Au(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,r=>this._onMouseOver(r)),this.onmouseleave(this._listenOnDomNode,r=>this._onMouseLeave(r)),this._hideTimeout=this._register(new r_),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=dl(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(t){this._verticalScrollbar.delegatePointerDown(t)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(t){this._scrollable.setScrollDimensions(t,!1)}updateClassName(t){this._options.className=t,cs&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(t){typeof t.handleMouseWheel<"u"&&(this._options.handleMouseWheel=t.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof t.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=t.mouseWheelScrollSensitivity),typeof t.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=t.fastScrollSensitivity),typeof t.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=t.scrollPredominantAxis),typeof t.horizontal<"u"&&(this._options.horizontal=t.horizontal),typeof t.vertical<"u"&&(this._options.vertical=t.vertical),typeof t.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=t.horizontalScrollbarSize),typeof t.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=t.verticalScrollbarSize),typeof t.scrollByPage<"u"&&(this._options.scrollByPage=t.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(t){this._revealOnScroll=t}delegateScrollFromMouseWheelEvent(t){this._onMouseWheel(new c$(t))}_setListeningToMouseWheel(t){if(this._mouseWheelToDispose.length>0!==t&&(this._mouseWheelToDispose=dl(this._mouseWheelToDispose),t)){let e=i=>{this._onMouseWheel(new c$(i))};this._mouseWheelToDispose.push(Xe(this._listenOnDomNode,xi.MOUSE_WHEEL,e,{passive:!1}))}}_onMouseWheel(t){var r;if((r=t.browserEvent)!=null&&r.defaultPrevented)return;let e=GK.INSTANCE;e.acceptStandardWheelEvent(t);let i=!1;if(t.deltaY||t.deltaX){let s=t.deltaY*this._options.mouseWheelScrollSensitivity,a=t.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&a+s===0?a=s=0:Math.abs(s)>=Math.abs(a)?a=0:s=0),this._options.flipAxes&&([s,a]=[a,s]);let c=!cs&&t.browserEvent&&t.browserEvent.shiftKey;(this._options.scrollYToX||c)&&!a&&(a=s,s=0),t.browserEvent&&t.browserEvent.altKey&&(a=a*this._options.fastScrollSensitivity,s=s*this._options.fastScrollSensitivity);let h=this._scrollable.getFutureScrollPosition(),d={};if(s){let f=m$*s,g=h.scrollTop-(f<0?Math.floor(f):Math.ceil(f));this._verticalScrollbar.writeScrollPosition(d,g)}if(a){let f=m$*a,g=h.scrollLeft-(f<0?Math.floor(f):Math.ceil(f));this._horizontalScrollbar.writeScrollPosition(d,g)}d=this._scrollable.validateScrollPosition(d),(h.scrollLeft!==d.scrollLeft||h.scrollTop!==d.scrollTop)&&(this._options.mouseWheelSmoothScroll&&e.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(d):this._scrollable.setScrollPositionNow(d),i=!0)}let n=i;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(t.preventDefault(),t.stopPropagation())}_onDidScroll(t){this._shouldRender=this._horizontalScrollbar.onDidScroll(t)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(t)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let t=this._scrollable.getCurrentScrollPosition(),e=t.scrollTop>0,i=t.scrollLeft>0,n=i?" left":"",r=e?" top":"",s=i||e?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${r}`),this._topLeftShadowDomNode.setClassName(`shadow${s}${r}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(t){this._mouseIsOver=!1,this._hide()}_onMouseOver(t){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),HK)}},KK=class extends FK{constructor(t,e,i){super(t,e,i)}setScrollPosition(t){t.reuseAnimation?this._scrollable.setScrollPositionSmooth(t,t.reuseAnimation):this._scrollable.setScrollPositionNow(t)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}};function JK(t){let e={lazyRender:typeof t.lazyRender<"u"?t.lazyRender:!1,className:typeof t.className<"u"?t.className:"",useShadows:typeof t.useShadows<"u"?t.useShadows:!0,handleMouseWheel:typeof t.handleMouseWheel<"u"?t.handleMouseWheel:!0,flipAxes:typeof t.flipAxes<"u"?t.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof t.consumeMouseWheelIfScrollbarIsNeeded<"u"?t.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof t.alwaysConsumeMouseWheel<"u"?t.alwaysConsumeMouseWheel:!1,scrollYToX:typeof t.scrollYToX<"u"?t.scrollYToX:!1,mouseWheelScrollSensitivity:typeof t.mouseWheelScrollSensitivity<"u"?t.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof t.fastScrollSensitivity<"u"?t.fastScrollSensitivity:5,scrollPredominantAxis:typeof t.scrollPredominantAxis<"u"?t.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof t.mouseWheelSmoothScroll<"u"?t.mouseWheelSmoothScroll:!0,arrowSize:typeof t.arrowSize<"u"?t.arrowSize:11,listenOnDomNode:typeof t.listenOnDomNode<"u"?t.listenOnDomNode:null,horizontal:typeof t.horizontal<"u"?t.horizontal:1,horizontalScrollbarSize:typeof t.horizontalScrollbarSize<"u"?t.horizontalScrollbarSize:10,horizontalSliderSize:typeof t.horizontalSliderSize<"u"?t.horizontalSliderSize:0,horizontalHasArrows:typeof t.horizontalHasArrows<"u"?t.horizontalHasArrows:!1,vertical:typeof t.vertical<"u"?t.vertical:1,verticalScrollbarSize:typeof t.verticalScrollbarSize<"u"?t.verticalScrollbarSize:10,verticalHasArrows:typeof t.verticalHasArrows<"u"?t.verticalHasArrows:!1,verticalSliderSize:typeof t.verticalSliderSize<"u"?t.verticalSliderSize:0,scrollByPage:typeof t.scrollByPage<"u"?t.scrollByPage:!1};return e.horizontalSliderSize=typeof t.horizontalSliderSize<"u"?t.horizontalSliderSize:e.horizontalScrollbarSize,e.verticalSliderSize=typeof t.verticalSliderSize<"u"?t.verticalSliderSize:e.verticalScrollbarSize,cs&&(e.className+=" mac"),e}var o1=class extends Ge{constructor(t,e,i,n,r,s,a,c){super(),this._bufferService=i,this._optionsService=a,this._renderService=c,this._onRequestScrollLines=this._register(new ve),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let h=this._register(new XK({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:d=>s_(n.window,d)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{h.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new KK(e,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},h)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(r.onProtocolChange(d=>{this._scrollableElement.updateOptions({handleMouseWheel:!(d&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(Li.runAndSubscribe(s.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=s.colors.background.css})),t.appendChild(this._scrollableElement.getDomNode()),this._register(zt(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=n.mainDocument.createElement("style"),e.appendChild(this._styleElement),this._register(zt(()=>this._styleElement.remove())),this._register(Li.runAndSubscribe(s.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${s.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${s.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${s.colors.scrollbarSliderActiveBackground.css};`,"}"].join(`
152
- `)})),this._register(this._bufferService.onResize(()=>this.queueSync())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._latestYDisp=void 0,this.queueSync()})),this._register(this._bufferService.onScroll(()=>this._sync())),this._register(this._scrollableElement.onScroll(d=>this._handleScroll(d)))}scrollLines(t){let e=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:e.scrollTop+t*this._renderService.dimensions.css.cell.height})}scrollToLine(t,e){e&&(this._latestYDisp=t),this._scrollableElement.setScrollPosition({reuseAnimation:!e,scrollTop:t*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){var t;return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:((t=this._optionsService.rawOptions.overviewRuler)==null?void 0:t.width)||14}}queueSync(t){t!==void 0&&(this._latestYDisp=t),this._queuedAnimationFrame===void 0&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(t=this._bufferService.buffer.ydisp){!this._renderService||this._isSyncing||(this._isSyncing=!0,this._suppressOnScrollHandler=!0,this._scrollableElement.setScrollDimensions({height:this._renderService.dimensions.css.canvas.height,scrollHeight:this._renderService.dimensions.css.cell.height*this._bufferService.buffer.lines.length}),this._suppressOnScrollHandler=!1,t!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:t*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(t){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let e=Math.round(t.scrollTop/this._renderService.dimensions.css.cell.height),i=e-this._bufferService.buffer.ydisp;i!==0&&(this._latestYDisp=e,this._onRequestScrollLines.fire(i)),this._isHandlingScroll=!1}};o1=Vt([_e(2,sn),_e(3,io),_e(4,rz),_e(5,Uc),_e(6,on),_e(7,no)],o1);var a1=class extends Ge{constructor(t,e,i,n,r){super(),this._screenElement=t,this._bufferService=e,this._coreBrowserService=i,this._decorationService=n,this._renderService=r,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this._register(this._renderService.onRenderedViewportChange(()=>this._doRefreshDecorations())),this._register(this._renderService.onDimensionsChange(()=>{this._dimensionsChanged=!0,this._queueRefresh()})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt})),this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh())),this._register(this._decorationService.onDecorationRemoved(s=>this._removeDecoration(s))),this._register(zt(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let t of this._decorationService.decorations)this._renderDecoration(t);this._dimensionsChanged=!1}_renderDecoration(t){this._refreshStyle(t),this._dimensionsChanged&&this._refreshXPosition(t)}_createElement(t){var n;let e=this._coreBrowserService.mainDocument.createElement("div");e.classList.add("xterm-decoration"),e.classList.toggle("xterm-decoration-top-layer",((n=t==null?void 0:t.options)==null?void 0:n.layer)==="top"),e.style.width=`${Math.round((t.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,e.style.height=`${(t.options.height||1)*this._renderService.dimensions.css.cell.height}px`,e.style.top=`${(t.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,e.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let i=t.options.x??0;return i&&i>this._bufferService.cols&&(e.style.display="none"),this._refreshXPosition(t,e),e}_refreshStyle(t){let e=t.marker.line-this._bufferService.buffers.active.ydisp;if(e<0||e>=this._bufferService.rows)t.element&&(t.element.style.display="none",t.onRenderEmitter.fire(t.element));else{let i=this._decorationElements.get(t);i||(i=this._createElement(t),t.element=i,this._decorationElements.set(t,i),this._container.appendChild(i),t.onDispose(()=>{this._decorationElements.delete(t),i.remove()})),i.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(i.style.width=`${Math.round((t.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,i.style.height=`${(t.options.height||1)*this._renderService.dimensions.css.cell.height}px`,i.style.top=`${e*this._renderService.dimensions.css.cell.height}px`,i.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),t.onRenderEmitter.fire(i)}}_refreshXPosition(t,e=t.element){if(!e)return;let i=t.options.x??0;(t.options.anchor||"left")==="right"?e.style.right=i?`${i*this._renderService.dimensions.css.cell.width}px`:"":e.style.left=i?`${i*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(t){var e;(e=this._decorationElements.get(t))==null||e.remove(),this._decorationElements.delete(t),t.dispose()}};a1=Vt([_e(1,sn),_e(2,io),_e(3,Qd),_e(4,no)],a1);var eJ=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(t){if(t.options.overviewRulerOptions){for(let e of this._zones)if(e.color===t.options.overviewRulerOptions.color&&e.position===t.options.overviewRulerOptions.position){if(this._lineIntersectsZone(e,t.marker.line))return;if(this._lineAdjacentToZone(e,t.marker.line,t.options.overviewRulerOptions.position)){this._addLineToZone(e,t.marker.line);return}}if(this._zonePoolIndex<this._zonePool.length){this._zonePool[this._zonePoolIndex].color=t.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=t.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=t.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=t.marker.line,this._zones.push(this._zonePool[this._zonePoolIndex++]);return}this._zones.push({color:t.options.overviewRulerOptions.color,position:t.options.overviewRulerOptions.position,startBufferLine:t.marker.line,endBufferLine:t.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(t){this._linePadding=t}_lineIntersectsZone(t,e){return e>=t.startBufferLine&&e<=t.endBufferLine}_lineAdjacentToZone(t,e,i){return e>=t.startBufferLine-this._linePadding[i||"full"]&&e<=t.endBufferLine+this._linePadding[i||"full"]}_addLineToZone(t,e){t.startBufferLine=Math.min(t.startBufferLine,e),t.endBufferLine=Math.max(t.endBufferLine,e)}},Hr={full:0,left:0,center:0,right:0},qo={full:0,left:0,center:0,right:0},au={full:0,left:0,center:0,right:0},sm=class extends Ge{constructor(t,e,i,n,r,s,a,c){var d;super(),this._viewportElement=t,this._screenElement=e,this._bufferService=i,this._decorationService=n,this._renderService=r,this._optionsService=s,this._themeService=a,this._coreBrowserService=c,this._colorZoneStore=new eJ,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),(d=this._viewportElement.parentElement)==null||d.insertBefore(this._canvas,this._viewportElement),this._register(zt(()=>{var f;return(f=this._canvas)==null?void 0:f.remove()}));let h=this._canvas.getContext("2d");if(h)this._ctx=h;else throw new Error("Ctx cannot be null");this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh(void 0,!0))),this._register(this._decorationService.onDecorationRemoved(()=>this._queueRefresh(void 0,!0))),this._register(this._renderService.onRenderedViewportChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"})),this._register(this._bufferService.onScroll(()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})),this._register(this._renderService.onRender(()=>{(!this._containerHeight||this._containerHeight!==this._screenElement.clientHeight)&&(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh(!0))),this._register(this._optionsService.onSpecificOptionChange("overviewRuler",()=>this._queueRefresh(!0))),this._register(this._themeService.onChangeColors(()=>this._queueRefresh())),this._queueRefresh(!0)}get _width(){var t;return((t=this._optionsService.options.overviewRuler)==null?void 0:t.width)||0}_refreshDrawConstants(){let t=Math.floor((this._canvas.width-1)/3),e=Math.ceil((this._canvas.width-1)/3);qo.full=this._canvas.width,qo.left=t,qo.center=e,qo.right=t,this._refreshDrawHeightConstants(),au.full=1,au.left=1,au.center=1+qo.left,au.right=1+qo.left+qo.center}_refreshDrawHeightConstants(){Hr.full=Math.round(2*this._coreBrowserService.dpr);let t=this._canvas.height/this._bufferService.buffer.lines.length,e=Math.round(Math.max(Math.min(t,12),6)*this._coreBrowserService.dpr);Hr.left=e,Hr.center=e,Hr.right=e}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Hr.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Hr.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Hr.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Hr.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(let e of this._decorationService.decorations)this._colorZoneStore.addDecoration(e);this._ctx.lineWidth=1,this._renderRulerOutline();let t=this._colorZoneStore.zones;for(let e of t)e.position!=="full"&&this._renderColorZone(e);for(let e of t)e.position==="full"&&this._renderColorZone(e);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderRulerOutline(){this._ctx.fillStyle=this._themeService.colors.overviewRulerBorder.css,this._ctx.fillRect(0,0,1,this._canvas.height),this._optionsService.rawOptions.overviewRuler.showTopBorder&&this._ctx.fillRect(1,0,this._canvas.width-1,1),this._optionsService.rawOptions.overviewRuler.showBottomBorder&&this._ctx.fillRect(1,this._canvas.height-1,this._canvas.width-1,this._canvas.height)}_renderColorZone(t){this._ctx.fillStyle=t.color,this._ctx.fillRect(au[t.position||"full"],Math.round((this._canvas.height-1)*(t.startBufferLine/this._bufferService.buffers.active.lines.length)-Hr[t.position||"full"]/2),qo[t.position||"full"],Math.round((this._canvas.height-1)*((t.endBufferLine-t.startBufferLine)/this._bufferService.buffers.active.lines.length)+Hr[t.position||"full"]))}_queueRefresh(t,e){this._shouldUpdateDimensions=t||this._shouldUpdateDimensions,this._shouldUpdateAnchor=e||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};sm=Vt([_e(2,sn),_e(3,Qd),_e(4,no),_e(5,on),_e(6,Uc),_e(7,io)],sm);var ue;(t=>(t.NUL="\0",t.SOH="",t.STX="",t.ETX="",t.EOT="",t.ENQ="",t.ACK="",t.BEL="\x07",t.BS="\b",t.HT=" ",t.LF=`
153
- `,t.VT="\v",t.FF="\f",t.CR="\r",t.SO="",t.SI="",t.DLE="",t.DC1="",t.DC2="",t.DC3="",t.DC4="",t.NAK="",t.SYN="",t.ETB="",t.CAN="",t.EM="",t.SUB="",t.ESC="\x1B",t.FS="",t.GS="",t.RS="",t.US="",t.SP=" ",t.DEL=""))(ue||(ue={}));var cg;(t=>(t.PAD="€",t.HOP="",t.BPH="‚",t.NBH="ƒ",t.IND="„",t.NEL="…",t.SSA="†",t.ESA="‡",t.HTS="ˆ",t.HTJ="‰",t.VTS="Š",t.PLD="‹",t.PLU="Œ",t.RI="",t.SS2="Ž",t.SS3="",t.DCS="",t.PU1="‘",t.PU2="’",t.STS="“",t.CCH="”",t.MW="•",t.SPA="–",t.EPA="—",t.SOS="˜",t.SGCI="™",t.SCI="š",t.CSI="›",t.ST="œ",t.OSC="",t.PM="ž",t.APC="Ÿ"))(cg||(cg={}));var kz;(t=>t.ST=`${ue.ESC}\\`)(kz||(kz={}));var l1=class{constructor(t,e,i,n,r,s){this._textarea=t,this._compositionView=e,this._bufferService=i,this._optionsService=n,this._coreService=r,this._renderService=s,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}get isComposing(){return this._isComposing}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(t){this._compositionView.textContent=t.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(t){if(this._isComposing||this._isSendingComposition){if(t.keyCode===20||t.keyCode===229||t.keyCode===16||t.keyCode===17||t.keyCode===18)return!1;this._finalizeComposition(!1)}return t.keyCode===229?(this._handleAnyTextareaChanges(),!1):!0}_finalizeComposition(t){if(this._compositionView.classList.remove("active"),this._isComposing=!1,t){let e={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){this._isSendingComposition=!1;let i;e.start+=this._dataAlreadySent.length,this._isComposing?i=this._textarea.value.substring(e.start,this._compositionPosition.start):i=this._textarea.value.substring(e.start),i.length>0&&this._coreService.triggerDataEvent(i,!0)}},0)}else{this._isSendingComposition=!1;let e=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(e,!0)}}_handleAnyTextareaChanges(){let t=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let e=this._textarea.value,i=e.replace(t,"");this._dataAlreadySent=i,e.length>t.length?this._coreService.triggerDataEvent(i,!0):e.length<t.length?this._coreService.triggerDataEvent(`${ue.DEL}`,!0):e.length===t.length&&e!==t&&this._coreService.triggerDataEvent(e,!0)}},0)}updateCompositionElements(t){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){let e=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.css.cell.height,n=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,r=e*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=r+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";let s=this._compositionView.getBoundingClientRect();this._textarea.style.left=r+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}t||setTimeout(()=>this.updateCompositionElements(!0),0)}}};l1=Vt([_e(2,sn),_e(3,on),_e(4,ml),_e(5,no)],l1);var wi=0,ki=0,Ci=0,qt=0,O$={css:"#00000000",rgba:0},ai;(t=>{function e(r,s,a,c){return c!==void 0?`#${ja(r)}${ja(s)}${ja(a)}${ja(c)}`:`#${ja(r)}${ja(s)}${ja(a)}`}t.toCss=e;function i(r,s,a,c=255){return(r<<24|s<<16|a<<8|c)>>>0}t.toRgba=i;function n(r,s,a,c){return{css:t.toCss(r,s,a,c),rgba:t.toRgba(r,s,a,c)}}t.toColor=n})(ai||(ai={}));var Et;(t=>{function e(h,d){if(qt=(d.rgba&255)/255,qt===1)return{css:d.css,rgba:d.rgba};let f=d.rgba>>24&255,g=d.rgba>>16&255,m=d.rgba>>8&255,v=h.rgba>>24&255,S=h.rgba>>16&255,_=h.rgba>>8&255;wi=v+Math.round((f-v)*qt),ki=S+Math.round((g-S)*qt),Ci=_+Math.round((m-_)*qt);let w=ai.toCss(wi,ki,Ci),x=ai.toRgba(wi,ki,Ci);return{css:w,rgba:x}}t.blend=e;function i(h){return(h.rgba&255)===255}t.isOpaque=i;function n(h,d,f){let g=hg.ensureContrastRatio(h.rgba,d.rgba,f);if(g)return ai.toColor(g>>24&255,g>>16&255,g>>8&255)}t.ensureContrastRatio=n;function r(h){let d=(h.rgba|255)>>>0;return[wi,ki,Ci]=hg.toChannels(d),{css:ai.toCss(wi,ki,Ci),rgba:d}}t.opaque=r;function s(h,d){return qt=Math.round(d*255),[wi,ki,Ci]=hg.toChannels(h.rgba),{css:ai.toCss(wi,ki,Ci,qt),rgba:ai.toRgba(wi,ki,Ci,qt)}}t.opacity=s;function a(h,d){return qt=h.rgba&255,s(h,qt*d/255)}t.multiplyOpacity=a;function c(h){return[h.rgba>>24&255,h.rgba>>16&255,h.rgba>>8&255]}t.toColorRGB=c})(Et||(Et={}));var Xt;(t=>{let e,i;try{let r=document.createElement("canvas");r.width=1,r.height=1;let s=r.getContext("2d",{willReadFrequently:!0});s&&(e=s,e.globalCompositeOperation="copy",i=e.createLinearGradient(0,0,1,1))}catch{}function n(r){if(r.match(/#[\da-f]{3,8}/i))switch(r.length){case 4:return wi=parseInt(r.slice(1,2).repeat(2),16),ki=parseInt(r.slice(2,3).repeat(2),16),Ci=parseInt(r.slice(3,4).repeat(2),16),ai.toColor(wi,ki,Ci);case 5:return wi=parseInt(r.slice(1,2).repeat(2),16),ki=parseInt(r.slice(2,3).repeat(2),16),Ci=parseInt(r.slice(3,4).repeat(2),16),qt=parseInt(r.slice(4,5).repeat(2),16),ai.toColor(wi,ki,Ci,qt);case 7:return{css:r,rgba:(parseInt(r.slice(1),16)<<8|255)>>>0};case 9:return{css:r,rgba:parseInt(r.slice(1),16)>>>0}}let s=r.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(s)return wi=parseInt(s[1]),ki=parseInt(s[2]),Ci=parseInt(s[3]),qt=Math.round((s[5]===void 0?1:parseFloat(s[5]))*255),ai.toColor(wi,ki,Ci,qt);if(!e||!i)throw new Error("css.toColor: Unsupported css format");if(e.fillStyle=i,e.fillStyle=r,typeof e.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(e.fillRect(0,0,1,1),[wi,ki,Ci,qt]=e.getImageData(0,0,1,1).data,qt!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:ai.toRgba(wi,ki,Ci,qt),css:r}}t.toColor=n})(Xt||(Xt={}));var en;(t=>{function e(n){return i(n>>16&255,n>>8&255,n&255)}t.relativeLuminance=e;function i(n,r,s){let a=n/255,c=r/255,h=s/255,d=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4),f=c<=.03928?c/12.92:Math.pow((c+.055)/1.055,2.4),g=h<=.03928?h/12.92:Math.pow((h+.055)/1.055,2.4);return d*.2126+f*.7152+g*.0722}t.relativeLuminance2=i})(en||(en={}));var hg;(t=>{function e(a,c){if(qt=(c&255)/255,qt===1)return c;let h=c>>24&255,d=c>>16&255,f=c>>8&255,g=a>>24&255,m=a>>16&255,v=a>>8&255;return wi=g+Math.round((h-g)*qt),ki=m+Math.round((d-m)*qt),Ci=v+Math.round((f-v)*qt),ai.toRgba(wi,ki,Ci)}t.blend=e;function i(a,c,h){let d=en.relativeLuminance(a>>8),f=en.relativeLuminance(c>>8);if(Bs(d,f)<h){if(f<d){let v=n(a,c,h),S=Bs(d,en.relativeLuminance(v>>8));if(S<h){let _=r(a,c,h),w=Bs(d,en.relativeLuminance(_>>8));return S>w?v:_}return v}let g=r(a,c,h),m=Bs(d,en.relativeLuminance(g>>8));if(m<h){let v=n(a,c,h),S=Bs(d,en.relativeLuminance(v>>8));return m>S?g:v}return g}}t.ensureContrastRatio=i;function n(a,c,h){let d=a>>24&255,f=a>>16&255,g=a>>8&255,m=c>>24&255,v=c>>16&255,S=c>>8&255,_=Bs(en.relativeLuminance2(m,v,S),en.relativeLuminance2(d,f,g));for(;_<h&&(m>0||v>0||S>0);)m-=Math.max(0,Math.ceil(m*.1)),v-=Math.max(0,Math.ceil(v*.1)),S-=Math.max(0,Math.ceil(S*.1)),_=Bs(en.relativeLuminance2(m,v,S),en.relativeLuminance2(d,f,g));return(m<<24|v<<16|S<<8|255)>>>0}t.reduceLuminance=n;function r(a,c,h){let d=a>>24&255,f=a>>16&255,g=a>>8&255,m=c>>24&255,v=c>>16&255,S=c>>8&255,_=Bs(en.relativeLuminance2(m,v,S),en.relativeLuminance2(d,f,g));for(;_<h&&(m<255||v<255||S<255);)m=Math.min(255,m+Math.ceil((255-m)*.1)),v=Math.min(255,v+Math.ceil((255-v)*.1)),S=Math.min(255,S+Math.ceil((255-S)*.1)),_=Bs(en.relativeLuminance2(m,v,S),en.relativeLuminance2(d,f,g));return(m<<24|v<<16|S<<8|255)>>>0}t.increaseLuminance=r;function s(a){return[a>>24&255,a>>16&255,a>>8&255,a&255]}t.toChannels=s})(hg||(hg={}));function ja(t){let e=t.toString(16);return e.length<2?"0"+e:e}function Bs(t,e){return t<e?(e+.05)/(t+.05):(t+.05)/(e+.05)}var tJ=class extends Td{constructor(t,e,i){super(),this.content=0,this.combinedData="",this.fg=t.fg,this.bg=t.bg,this.combinedData=e,this._width=i}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(t){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},om=class{constructor(t){this._bufferService=t,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new fr}register(t){let e={id:this._nextCharacterJoinerId++,handler:t};return this._characterJoiners.push(e),e.id}deregister(t){for(let e=0;e<this._characterJoiners.length;e++)if(this._characterJoiners[e].id===t)return this._characterJoiners.splice(e,1),!0;return!1}getJoinedCharacters(t){if(this._characterJoiners.length===0)return[];let e=this._bufferService.buffer.lines.get(t);if(!e||e.length===0)return[];let i=[],n=e.translateToString(!0),r=0,s=0,a=0,c=e.getFg(0),h=e.getBg(0);for(let d=0;d<e.getTrimmedLength();d++)if(e.loadCell(d,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==c||this._workCell.bg!==h){if(d-r>1){let f=this._getJoinedRanges(n,a,s,e,r);for(let g=0;g<f.length;g++)i.push(f[g])}r=d,a=s,c=this._workCell.fg,h=this._workCell.bg}s+=this._workCell.getChars().length||ea.length}if(this._bufferService.cols-r>1){let d=this._getJoinedRanges(n,a,s,e,r);for(let f=0;f<d.length;f++)i.push(d[f])}return i}_getJoinedRanges(t,e,i,n,r){let s=t.substring(e,i),a=[];try{a=this._characterJoiners[0].handler(s)}catch(c){console.error(c)}for(let c=1;c<this._characterJoiners.length;c++)try{let h=this._characterJoiners[c].handler(s);for(let d=0;d<h.length;d++)om._mergeRanges(a,h[d])}catch(h){console.error(h)}return this._stringRangesToCellRanges(a,n,r),a}_stringRangesToCellRanges(t,e,i){let n=0,r=!1,s=0,a=t[n];if(a){for(let c=i;c<this._bufferService.cols;c++){let h=e.getWidth(c),d=e.getString(c).length||ea.length;if(h!==0){if(!r&&a[0]<=s&&(a[0]=c,r=!0),a[1]<=s){if(a[1]=c,a=t[++n],!a)break;a[0]<=s?(a[0]=c,r=!0):r=!1}s+=d}}a&&(a[1]=this._bufferService.cols)}}static _mergeRanges(t,e){let i=!1;for(let n=0;n<t.length;n++){let r=t[n];if(i){if(e[1]<=r[0])return t[n-1][1]=e[1],t;if(e[1]<=r[1])return t[n-1][1]=Math.max(e[1],r[1]),t.splice(n,1),t;t.splice(n,1),n--}else{if(e[1]<=r[0])return t.splice(n,0,e),t;if(e[1]<=r[1])return r[0]=Math.min(e[0],r[0]),t;e[0]<r[1]&&(r[0]=Math.min(e[0],r[0]),i=!0);continue}}return i?t[t.length-1][1]=e[1]:t.push(e),t}};om=Vt([_e(0,sn)],om);function iJ(t){return 57508<=t&&t<=57558}function nJ(t){return 9472<=t&&t<=9631}function rJ(t){return iJ(t)||nJ(t)}function sJ(){return{css:{canvas:Dp(),cell:Dp()},device:{canvas:Dp(),cell:Dp(),char:{width:0,height:0,left:0,top:0}}}}function Dp(){return{width:0,height:0}}var c1=class{constructor(t,e,i,n,r,s,a){this._document=t,this._characterJoinerService=e,this._optionsService=i,this._coreBrowserService=n,this._coreService=r,this._decorationService=s,this._themeService=a,this._workCell=new fr,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(t,e,i){this._selectionStart=t,this._selectionEnd=e,this._columnSelectMode=i}createRow(t,e,i,n,r,s,a,c,h,d,f){let g=[],m=this._characterJoinerService.getJoinedCharacters(e),v=this._themeService.colors,S=t.getNoBgTrimmedLength();i&&S<s+1&&(S=s+1);let _,w=0,x="",Q=0,C=0,T=0,A=0,P=!1,M=0,V=!1,H=0,G=0,N=[],j=d!==-1&&f!==-1;for(let B=0;B<S;B++){t.loadCell(B,this._workCell);let E=this._workCell.getWidth();if(E===0)continue;let W=!1,$=B>=G,Z=B,z=this._workCell;if(m.length>0&&B===m[0][0]&&$){let me=m.shift(),Be=this._isCellInSelection(me[0],e);for(Q=me[0]+1;Q<me[1];Q++)$&&($=Be===this._isCellInSelection(Q,e));$&&($=!i||s<me[0]||s>=me[1]),$?(W=!0,z=new tJ(this._workCell,t.translateToString(!0,me[0],me[1]),me[1]-me[0]),Z=me[1]-1,E=z.getWidth()):G=me[1]}let L=this._isCellInSelection(B,e),U=i&&B===s,D=j&&B>=d&&B<=f,I=!1;this._decorationService.forEachDecorationAtCell(B,e,void 0,me=>{I=!0});let J=z.getChars()||ea;if(J===" "&&(z.isUnderline()||z.isOverline())&&(J=" "),H=E*c-h.get(J,z.isBold(),z.isItalic()),!_)_=this._document.createElement("span");else if(w&&(L&&V||!L&&!V&&z.bg===C)&&(L&&V&&v.selectionForeground||z.fg===T)&&z.extended.ext===A&&D===P&&H===M&&!U&&!W&&!I&&$){z.isInvisible()?x+=ea:x+=J,w++;continue}else w&&(_.textContent=x),_=this._document.createElement("span"),w=0,x="";if(C=z.bg,T=z.fg,A=z.extended.ext,P=D,M=H,V=L,W&&s>=B&&s<=Z&&(s=B),!this._coreService.isCursorHidden&&U&&this._coreService.isCursorInitialized){if(N.push("xterm-cursor"),this._coreBrowserService.isFocused)a&&N.push("xterm-cursor-blink"),N.push(n==="bar"?"xterm-cursor-bar":n==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(r)switch(r){case"outline":N.push("xterm-cursor-outline");break;case"block":N.push("xterm-cursor-block");break;case"bar":N.push("xterm-cursor-bar");break;case"underline":N.push("xterm-cursor-underline");break}}if(z.isBold()&&N.push("xterm-bold"),z.isItalic()&&N.push("xterm-italic"),z.isDim()&&N.push("xterm-dim"),z.isInvisible()?x=ea:x=z.getChars()||ea,z.isUnderline()&&(N.push(`xterm-underline-${z.extended.underlineStyle}`),x===" "&&(x=" "),!z.isUnderlineColorDefault()))if(z.isUnderlineColorRGB())_.style.textDecorationColor=`rgb(${Td.toColorRGB(z.getUnderlineColor()).join(",")})`;else{let me=z.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&z.isBold()&&me<8&&(me+=8),_.style.textDecorationColor=v.ansi[me].css}z.isOverline()&&(N.push("xterm-overline"),x===" "&&(x=" ")),z.isStrikethrough()&&N.push("xterm-strikethrough"),D&&(_.style.textDecoration="underline");let ne=z.getFgColor(),ce=z.getFgColorMode(),de=z.getBgColor(),pe=z.getBgColorMode(),fe=!!z.isInverse();if(fe){let me=ne;ne=de,de=me;let Be=ce;ce=pe,pe=Be}let Oe,je,$e=!1;this._decorationService.forEachDecorationAtCell(B,e,void 0,me=>{me.options.layer!=="top"&&$e||(me.backgroundColorRGB&&(pe=50331648,de=me.backgroundColorRGB.rgba>>8&16777215,Oe=me.backgroundColorRGB),me.foregroundColorRGB&&(ce=50331648,ne=me.foregroundColorRGB.rgba>>8&16777215,je=me.foregroundColorRGB),$e=me.options.layer==="top")}),!$e&&L&&(Oe=this._coreBrowserService.isFocused?v.selectionBackgroundOpaque:v.selectionInactiveBackgroundOpaque,de=Oe.rgba>>8&16777215,pe=50331648,$e=!0,v.selectionForeground&&(ce=50331648,ne=v.selectionForeground.rgba>>8&16777215,je=v.selectionForeground)),$e&&N.push("xterm-decoration-top");let Te;switch(pe){case 16777216:case 33554432:Te=v.ansi[de],N.push(`xterm-bg-${de}`);break;case 50331648:Te=ai.toColor(de>>16,de>>8&255,de&255),this._addStyle(_,`background-color:#${v$((de>>>0).toString(16),"0",6)}`);break;case 0:default:fe?(Te=v.foreground,N.push("xterm-bg-257")):Te=v.background}switch(Oe||z.isDim()&&(Oe=Et.multiplyOpacity(Te,.5)),ce){case 16777216:case 33554432:z.isBold()&&ne<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(ne+=8),this._applyMinimumContrast(_,Te,v.ansi[ne],z,Oe,void 0)||N.push(`xterm-fg-${ne}`);break;case 50331648:let me=ai.toColor(ne>>16&255,ne>>8&255,ne&255);this._applyMinimumContrast(_,Te,me,z,Oe,je)||this._addStyle(_,`color:#${v$(ne.toString(16),"0",6)}`);break;case 0:default:this._applyMinimumContrast(_,Te,v.foreground,z,Oe,je)||fe&&N.push("xterm-fg-257")}N.length&&(_.className=N.join(" "),N.length=0),!U&&!W&&!I&&$?w++:_.textContent=x,H!==this.defaultSpacing&&(_.style.letterSpacing=`${H}px`),g.push(_),B=Z}return _&&w&&(_.textContent=x),g}_applyMinimumContrast(t,e,i,n,r,s){if(this._optionsService.rawOptions.minimumContrastRatio===1||rJ(n.getCode()))return!1;let a=this._getContrastCache(n),c;if(!r&&!s&&(c=a.getColor(e.rgba,i.rgba)),c===void 0){let h=this._optionsService.rawOptions.minimumContrastRatio/(n.isDim()?2:1);c=Et.ensureContrastRatio(r||e,s||i,h),a.setColor((r||e).rgba,(s||i).rgba,c??null)}return c?(this._addStyle(t,`color:${c.css}`),!0):!1}_getContrastCache(t){return t.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(t,e){t.setAttribute("style",`${t.getAttribute("style")||""}${e};`)}_isCellInSelection(t,e){let i=this._selectionStart,n=this._selectionEnd;return!i||!n?!1:this._columnSelectMode?i[0]<=n[0]?t>=i[0]&&e>=i[1]&&t<n[0]&&e<=n[1]:t<i[0]&&e>=i[1]&&t>=n[0]&&e<=n[1]:e>i[1]&&e<n[1]||i[1]===n[1]&&e===i[1]&&t>=i[0]&&t<n[0]||i[1]<n[1]&&e===n[1]&&t<n[0]||i[1]<n[1]&&e===i[1]&&t>=i[0]}};c1=Vt([_e(1,az),_e(2,on),_e(3,io),_e(4,ml),_e(5,Qd),_e(6,Uc)],c1);function v$(t,e,i){for(;t.length<i;)t=e+t;return t}var oJ=class{constructor(t,e){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=t.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";let i=t.createElement("span");i.classList.add("xterm-char-measure-element");let n=t.createElement("span");n.classList.add("xterm-char-measure-element"),n.style.fontWeight="bold";let r=t.createElement("span");r.classList.add("xterm-char-measure-element"),r.style.fontStyle="italic";let s=t.createElement("span");s.classList.add("xterm-char-measure-element"),s.style.fontWeight="bold",s.style.fontStyle="italic",this._measureElements=[i,n,r,s],this._container.appendChild(i),this._container.appendChild(n),this._container.appendChild(r),this._container.appendChild(s),e.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(t,e,i,n){t===this._font&&e===this._fontSize&&i===this._weight&&n===this._weightBold||(this._font=t,this._fontSize=e,this._weight=i,this._weightBold=n,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${i}`,this._measureElements[1].style.fontWeight=`${n}`,this._measureElements[2].style.fontWeight=`${i}`,this._measureElements[3].style.fontWeight=`${n}`,this.clear())}get(t,e,i){let n=0;if(!e&&!i&&t.length===1&&(n=t.charCodeAt(0))<256){if(this._flat[n]!==-9999)return this._flat[n];let a=this._measure(t,0);return a>0&&(this._flat[n]=a),a}let r=t;e&&(r+="B"),i&&(r+="I");let s=this._holey.get(r);if(s===void 0){let a=0;e&&(a|=1),i&&(a|=2),s=this._measure(t,a),s>0&&this._holey.set(r,s)}return s}_measure(t,e){let i=this._measureElements[e];return i.textContent=t.repeat(32),i.offsetWidth/32}},aJ=class{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(t,e,i,n=!1){if(this.selectionStart=e,this.selectionEnd=i,!e||!i||e[0]===i[0]&&e[1]===i[1]){this.clear();return}let r=t.buffers.active.ydisp,s=e[1]-r,a=i[1]-r,c=Math.max(s,0),h=Math.min(a,t.rows-1);if(c>=t.rows||h<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=n,this.viewportStartRow=s,this.viewportEndRow=a,this.viewportCappedStartRow=c,this.viewportCappedEndRow=h,this.startCol=e[0],this.endCol=i[0]}isCellSelected(t,e,i){return this.hasSelection?(i-=t.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?e>=this.startCol&&i>=this.viewportCappedStartRow&&e<this.endCol&&i<=this.viewportCappedEndRow:e<this.startCol&&i>=this.viewportCappedStartRow&&e>=this.endCol&&i<=this.viewportCappedEndRow:i>this.viewportStartRow&&i<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&i===this.viewportStartRow&&e>=this.startCol&&e<this.endCol||this.viewportStartRow<this.viewportEndRow&&i===this.viewportEndRow&&e<this.endCol||this.viewportStartRow<this.viewportEndRow&&i===this.viewportStartRow&&e>=this.startCol):!1}};function lJ(){return new aJ}var my="xterm-dom-renderer-owner-",sr="xterm-rows",Bp="xterm-fg-",y$="xterm-bg-",lu="xterm-focus",Lp="xterm-selection",cJ=1,h1=class extends Ge{constructor(t,e,i,n,r,s,a,c,h,d,f,g,m,v){super(),this._terminal=t,this._document=e,this._element=i,this._screenElement=n,this._viewportElement=r,this._helperContainer=s,this._linkifier2=a,this._charSizeService=h,this._optionsService=d,this._bufferService=f,this._coreService=g,this._coreBrowserService=m,this._themeService=v,this._terminalClass=cJ++,this._rowElements=[],this._selectionRenderModel=lJ(),this.onRequestRedraw=this._register(new ve).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(sr),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(Lp),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=sJ(),this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(S=>this._injectCss(S))),this._injectCss(this._themeService.colors),this._rowFactory=c.createInstance(c1,document),this._element.classList.add(my+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(S=>this._handleLinkHover(S))),this._register(this._linkifier2.onHideLinkUnderline(S=>this._handleLinkLeave(S))),this._register(zt(()=>{this._element.classList.remove(my+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new oJ(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){let t=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*t,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*t),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/t),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/t),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(let i of this._rowElements)i.style.width=`${this.dimensions.css.canvas.width}px`,i.style.height=`${this.dimensions.css.cell.height}px`,i.style.lineHeight=`${this.dimensions.css.cell.height}px`,i.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let e=`${this._terminalSelector} .${sr} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=e,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(t){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let e=`${this._terminalSelector} .${sr} { pointer-events: none; color: ${t.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;e+=`${this._terminalSelector} .${sr} .xterm-dim { color: ${Et.multiplyOpacity(t.foreground,.5).css};}`,e+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;let i=`blink_underline_${this._terminalClass}`,n=`blink_bar_${this._terminalClass}`,r=`blink_block_${this._terminalClass}`;e+=`@keyframes ${i} { 50% { border-bottom-style: hidden; }}`,e+=`@keyframes ${n} { 50% { box-shadow: none; }}`,e+=`@keyframes ${r} { 0% { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css}; } 50% { background-color: inherit; color: ${t.cursor.css}; }}`,e+=`${this._terminalSelector} .${sr}.${lu} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${i} 1s step-end infinite;}${this._terminalSelector} .${sr}.${lu} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${n} 1s step-end infinite;}${this._terminalSelector} .${sr}.${lu} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${r} 1s step-end infinite;}${this._terminalSelector} .${sr} .xterm-cursor.xterm-cursor-block { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css};}${this._terminalSelector} .${sr} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${t.cursor.css} !important; color: ${t.cursorAccent.css} !important;}${this._terminalSelector} .${sr} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${t.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${sr} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${t.cursor.css} inset;}${this._terminalSelector} .${sr} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${t.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,e+=`${this._terminalSelector} .${Lp} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${Lp} div { position: absolute; background-color: ${t.selectionBackgroundOpaque.css};}${this._terminalSelector} .${Lp} div { position: absolute; background-color: ${t.selectionInactiveBackgroundOpaque.css};}`;for(let[s,a]of t.ansi.entries())e+=`${this._terminalSelector} .${Bp}${s} { color: ${a.css}; }${this._terminalSelector} .${Bp}${s}.xterm-dim { color: ${Et.multiplyOpacity(a,.5).css}; }${this._terminalSelector} .${y$}${s} { background-color: ${a.css}; }`;e+=`${this._terminalSelector} .${Bp}257 { color: ${Et.opaque(t.background).css}; }${this._terminalSelector} .${Bp}257.xterm-dim { color: ${Et.multiplyOpacity(Et.opaque(t.background),.5).css}; }${this._terminalSelector} .${y$}257 { background-color: ${t.foreground.css}; }`,this._themeStyleElement.textContent=e}_setDefaultSpacing(){let t=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${t}px`,this._rowFactory.defaultSpacing=t}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(t,e){for(let i=this._rowElements.length;i<=e;i++){let n=this._document.createElement("div");this._rowContainer.appendChild(n),this._rowElements.push(n)}for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(t,e){this._refreshRowElements(t,e),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(lu),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(lu),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(t,e,i){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(t,e,i),this.renderRows(0,this._bufferService.rows-1),!t||!e||(this._selectionRenderModel.update(this._terminal,t,e,i),!this._selectionRenderModel.hasSelection))return;let n=this._selectionRenderModel.viewportStartRow,r=this._selectionRenderModel.viewportEndRow,s=this._selectionRenderModel.viewportCappedStartRow,a=this._selectionRenderModel.viewportCappedEndRow,c=this._document.createDocumentFragment();if(i){let h=t[0]>e[0];c.appendChild(this._createSelectionElement(s,h?e[0]:t[0],h?t[0]:e[0],a-s+1))}else{let h=n===s?t[0]:0,d=s===r?e[0]:this._bufferService.cols;c.appendChild(this._createSelectionElement(s,h,d));let f=a-s-1;if(c.appendChild(this._createSelectionElement(s+1,0,this._bufferService.cols,f)),s!==a){let g=r===a?e[0]:this._bufferService.cols;c.appendChild(this._createSelectionElement(a,0,g))}}this._selectionContainer.appendChild(c)}_createSelectionElement(t,e,i,n=1){let r=this._document.createElement("div"),s=e*this.dimensions.css.cell.width,a=this.dimensions.css.cell.width*(i-e);return s+a>this.dimensions.css.canvas.width&&(a=this.dimensions.css.canvas.width-s),r.style.height=`${n*this.dimensions.css.cell.height}px`,r.style.top=`${t*this.dimensions.css.cell.height}px`,r.style.left=`${s}px`,r.style.width=`${a}px`,r}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(let t of this._rowElements)t.replaceChildren()}renderRows(t,e){let i=this._bufferService.buffer,n=i.ybase+i.y,r=Math.min(i.x,this._bufferService.cols-1),s=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,a=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,c=this._optionsService.rawOptions.cursorInactiveStyle;for(let h=t;h<=e;h++){let d=h+i.ydisp,f=this._rowElements[h],g=i.lines.get(d);if(!f||!g)break;f.replaceChildren(...this._rowFactory.createRow(g,d,d===n,a,c,r,s,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${my}${this._terminalClass}`}_handleLinkHover(t){this._setCellUnderline(t.x1,t.x2,t.y1,t.y2,t.cols,!0)}_handleLinkLeave(t){this._setCellUnderline(t.x1,t.x2,t.y1,t.y2,t.cols,!1)}_setCellUnderline(t,e,i,n,r,s){i<0&&(t=0),n<0&&(e=0);let a=this._bufferService.rows-1;i=Math.max(Math.min(i,a),0),n=Math.max(Math.min(n,a),0),r=Math.min(r,this._bufferService.cols);let c=this._bufferService.buffer,h=c.ybase+c.y,d=Math.min(c.x,r-1),f=this._optionsService.rawOptions.cursorBlink,g=this._optionsService.rawOptions.cursorStyle,m=this._optionsService.rawOptions.cursorInactiveStyle;for(let v=i;v<=n;++v){let S=v+c.ydisp,_=this._rowElements[v],w=c.lines.get(S);if(!_||!w)break;_.replaceChildren(...this._rowFactory.createRow(w,S,S===h,g,m,d,f,this.dimensions.css.cell.width,this._widthCache,s?v===i?t:0:-1,s?(v===n?e:r)-1:-1))}}};h1=Vt([_e(7,Jb),_e(8,Lm),_e(9,on),_e(10,sn),_e(11,ml),_e(12,io),_e(13,Uc)],h1);var u1=class extends Ge{constructor(t,e,i){super(),this._optionsService=i,this.width=0,this.height=0,this._onCharSizeChange=this._register(new ve),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new uJ(this._optionsService))}catch{this._measureStrategy=this._register(new hJ(t,e,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let t=this._measureStrategy.measure();(t.width!==this.width||t.height!==this.height)&&(this.width=t.width,this.height=t.height,this._onCharSizeChange.fire())}};u1=Vt([_e(2,on)],u1);var Cz=class extends Ge{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(t,e){t!==void 0&&t>0&&e!==void 0&&e>0&&(this._result.width=t,this._result.height=e)}},hJ=class extends Cz{constructor(t,e,i){super(),this._document=t,this._parentElement=e,this._optionsService=i,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}},uJ=class extends Cz{constructor(t){super(),this._optionsService=t,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let e=this._ctx.measureText("W");if(!("width"in e&&"fontBoundingBoxAscent"in e&&"fontBoundingBoxDescent"in e))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let t=this._ctx.measureText("W");return this._validateAndSet(t.width,t.fontBoundingBoxAscent+t.fontBoundingBoxDescent),this._result}},dJ=class extends Ge{constructor(t,e,i){super(),this._textarea=t,this._window=e,this.mainDocument=i,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new fJ(this._window)),this._onDprChange=this._register(new ve),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new ve),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(n=>this._screenDprMonitor.setWindow(n))),this._register(Li.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(Xe(this._textarea,"focus",()=>this._isFocused=!0)),this._register(Xe(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(t){this._window!==t&&(this._window=t,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},fJ=class extends Ge{constructor(t){super(),this._parentWindow=t,this._windowResizeListener=this._register(new Ic),this._onDprChange=this._register(new ve),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(zt(()=>this.clearListener()))}setWindow(t){this._parentWindow=t,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=Xe(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){var t;this._outerListener&&((t=this._resolutionMediaMatchList)==null||t.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){!this._resolutionMediaMatchList||!this._outerListener||(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}},pJ=class extends Ge{constructor(){super(),this.linkProviders=[],this._register(zt(()=>this.linkProviders.length=0))}registerLinkProvider(t){return this.linkProviders.push(t),{dispose:()=>{let e=this.linkProviders.indexOf(t);e!==-1&&this.linkProviders.splice(e,1)}}}};function a_(t,e,i){let n=i.getBoundingClientRect(),r=t.getComputedStyle(i),s=parseInt(r.getPropertyValue("padding-left")),a=parseInt(r.getPropertyValue("padding-top"));return[e.clientX-n.left-s,e.clientY-n.top-a]}function gJ(t,e,i,n,r,s,a,c,h){if(!s)return;let d=a_(t,e,i);if(d)return d[0]=Math.ceil((d[0]+(h?a/2:0))/a),d[1]=Math.ceil(d[1]/c),d[0]=Math.min(Math.max(d[0],1),n+(h?1:0)),d[1]=Math.min(Math.max(d[1],1),r),d}var d1=class{constructor(t,e){this._renderService=t,this._charSizeService=e}getCoords(t,e,i,n,r){return gJ(window,t,e,i,n,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,r)}getMouseReportCoords(t,e){let i=a_(window,t,e);if(this._charSizeService.hasValidSize)return i[0]=Math.min(Math.max(i[0],0),this._renderService.dimensions.css.canvas.width-1),i[1]=Math.min(Math.max(i[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(i[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(i[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(i[0]),y:Math.floor(i[1])}}};d1=Vt([_e(0,no),_e(1,Lm)],d1);var mJ=class{constructor(t,e){this._renderCallback=t,this._coreBrowserService=e,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(t){return this._refreshCallbacks.push(t),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(t,e,i){this._rowCount=i,t=t!==void 0?t:0,e=e!==void 0?e:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,t):t,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,e):e,!this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0){this._runRefreshCallbacks();return}let t=Math.max(this._rowStart,0),e=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(t,e),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let t of this._refreshCallbacks)t(0);this._refreshCallbacks=[]}},Tz={};CF(Tz,{getSafariVersion:()=>vJ,isChromeOS:()=>Ez,isFirefox:()=>Qz,isIpad:()=>yJ,isIphone:()=>SJ,isLegacyEdge:()=>OJ,isLinux:()=>l_,isMac:()=>am,isNode:()=>Xm,isSafari:()=>$z,isWindows:()=>Pz});var Xm=typeof process<"u"&&"title"in process,$d=Xm?"node":navigator.userAgent,Pd=Xm?"node":navigator.platform,Qz=$d.includes("Firefox"),OJ=$d.includes("Edge"),$z=/^((?!chrome|android).)*safari/i.test($d);function vJ(){if(!$z)return 0;let t=$d.match(/Version\/(\d+)/);return t===null||t.length<2?0:parseInt(t[1])}var am=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(Pd),yJ=Pd==="iPad",SJ=Pd==="iPhone",Pz=["Windows","Win16","Win32","WinCE"].includes(Pd),l_=Pd.indexOf("Linux")>=0,Ez=/\bCrOS\b/.test($d),Rz=class{constructor(){this._tasks=[],this._i=0}enqueue(t){this._tasks.push(t),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(t){this._idleCallback=void 0;let e=0,i=0,n=t.timeRemaining(),r=0;for(;this._i<this._tasks.length;){if(e=performance.now(),this._tasks[this._i]()||this._i++,e=Math.max(1,performance.now()-e),i=Math.max(e,i),r=t.timeRemaining(),i*1.5>r){n-e<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(n-e))}ms`),this._start();return}n=r}this.clear()}},bJ=class extends Rz{_requestCallback(t){return setTimeout(()=>t(this._createDeadline(16)))}_cancelCallback(t){clearTimeout(t)}_createDeadline(t){let e=performance.now()+t;return{timeRemaining:()=>Math.max(0,e-performance.now())}}},_J=class extends Rz{_requestCallback(t){return requestIdleCallback(t)}_cancelCallback(t){cancelIdleCallback(t)}},lm=!Xm&&"requestIdleCallback"in window?_J:bJ,xJ=class{constructor(){this._queue=new lm}set(t){this._queue.clear(),this._queue.enqueue(t)}flush(){this._queue.flush()}},f1=class extends Ge{constructor(t,e,i,n,r,s,a,c,h){super(),this._rowCount=t,this._optionsService=i,this._charSizeService=n,this._coreService=r,this._coreBrowserService=c,this._renderer=this._register(new Ic),this._pausedResizeTask=new xJ,this._observerDisposable=this._register(new Ic),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this._register(new ve),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new ve),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new ve),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new ve),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new mJ((d,f)=>this._renderRows(d,f),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new wJ(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(zt(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(a.onResize(()=>this._fullRefresh())),this._register(a.buffers.onBufferActivate(()=>{var d;return(d=this._renderer.value)==null?void 0:d.clear()})),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(s.onDecorationRegistered(()=>this._fullRefresh())),this._register(s.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(a.cols,a.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(a.buffer.y,a.buffer.y,!0))),this._register(h.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,e),this._register(this._coreBrowserService.onWindowChange(d=>this._registerIntersectionObserver(d,e)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(t,e){if("IntersectionObserver"in t){let i=new t.IntersectionObserver(n=>this._handleIntersectionChange(n[n.length-1]),{threshold:0});i.observe(e),this._observerDisposable.value=zt(()=>i.disconnect())}}_handleIntersectionChange(t){this._isPaused=t.isIntersecting===void 0?t.intersectionRatio===0:!t.isIntersecting,!this._isPaused&&!this._charSizeService.hasValidSize&&this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(t,e,i=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(t,e);return}let n=this._syncOutputHandler.flush();n&&(t=Math.min(t,n.start),e=Math.max(e,n.end)),i||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(t,e,this._rowCount)}_renderRows(t,e){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(t,e);return}t=Math.min(t,this._rowCount-1),e=Math.min(e,this._rowCount-1),this._renderer.value.renderRows(t,e),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:t,end:e}),this._onRender.fire({start:t,end:e}),this._isNextRenderRedrawOnly=!0}}resize(t,e){this._rowCount=e,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(t){this._renderer.value=t,this._renderer.value&&(this._renderer.value.onRequestRedraw(e=>this.refreshRows(e.start,e.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(t){return this._renderDebouncer.addRefreshCallback(t)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){var t,e;this._renderer.value&&((e=(t=this._renderer.value).clearTextureAtlas)==null||e.call(t),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(t,e){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>{var i;return(i=this._renderer.value)==null?void 0:i.handleResize(t,e)}):this._renderer.value.handleResize(t,e),this._fullRefresh())}handleCharSizeChanged(){var t;(t=this._renderer.value)==null||t.handleCharSizeChanged()}handleBlur(){var t;(t=this._renderer.value)==null||t.handleBlur()}handleFocus(){var t;(t=this._renderer.value)==null||t.handleFocus()}handleSelectionChanged(t,e,i){var n;this._selectionState.start=t,this._selectionState.end=e,this._selectionState.columnSelectMode=i,(n=this._renderer.value)==null||n.handleSelectionChanged(t,e,i)}handleCursorMove(){var t;(t=this._renderer.value)==null||t.handleCursorMove()}clear(){var t;(t=this._renderer.value)==null||t.clear()}};f1=Vt([_e(2,on),_e(3,Lm),_e(4,ml),_e(5,Qd),_e(6,sn),_e(7,io),_e(8,Uc)],f1);var wJ=class{constructor(t,e,i){this._coreBrowserService=t,this._coreService=e,this._onTimeout=i,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(t,e){this._isBuffering?(this._start=Math.min(this._start,t),this._end=Math.max(this._end,e)):(this._start=t,this._end=e,this._isBuffering=!0),this._timeout===void 0&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let t={start:this._start,end:this._end};return this._isBuffering=!1,t}dispose(){this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function kJ(t,e,i,n){let r=i.buffer.x,s=i.buffer.y;if(!i.buffer.hasScrollback)return QJ(r,s,t,e,i,n)+Nm(s,e,i,n)+$J(r,s,t,e,i,n);let a;if(s===e)return a=r>t?"D":"C",ld(Math.abs(r-t),ad(a,n));a=s>e?"D":"C";let c=Math.abs(s-e),h=TJ(s>e?t:r,i)+(c-1)*i.cols+1+CJ(s>e?r:t);return ld(h,ad(a,n))}function CJ(t,e){return t-1}function TJ(t,e){return e.cols-t}function QJ(t,e,i,n,r,s){return Nm(e,n,r,s).length===0?"":ld(Mz(t,e,t,e-fl(e,r),!1,r).length,ad("D",s))}function Nm(t,e,i,n){let r=t-fl(t,i),s=e-fl(e,i),a=Math.abs(r-s)-PJ(t,e,i);return ld(a,ad(Az(t,e),n))}function $J(t,e,i,n,r,s){let a;Nm(e,n,r,s).length>0?a=n-fl(n,r):a=e;let c=n,h=EJ(t,e,i,n,r,s);return ld(Mz(t,a,i,c,h==="C",r).length,ad(h,s))}function PJ(t,e,i){var a;let n=0,r=t-fl(t,i),s=e-fl(e,i);for(let c=0;c<Math.abs(r-s);c++){let h=Az(t,e)==="A"?-1:1;(a=i.buffer.lines.get(r+h*c))!=null&&a.isWrapped&&n++}return n}function fl(t,e){let i=0,n=e.buffer.lines.get(t),r=n==null?void 0:n.isWrapped;for(;r&&t>=0&&t<e.rows;)i++,n=e.buffer.lines.get(--t),r=n==null?void 0:n.isWrapped;return i}function EJ(t,e,i,n,r,s){let a;return Nm(i,n,r,s).length>0?a=n-fl(n,r):a=e,t<i&&a<=n||t>=i&&a<n?"C":"D"}function Az(t,e){return t>e?"A":"B"}function Mz(t,e,i,n,r,s){let a=t,c=e,h="";for(;(a!==i||c!==n)&&c>=0&&c<s.buffer.lines.length;)a+=r?1:-1,r&&a>s.cols-1?(h+=s.buffer.translateBufferLineToString(c,!1,t,a),a=0,t=0,c++):!r&&a<0&&(h+=s.buffer.translateBufferLineToString(c,!1,0,t+1),a=s.cols-1,t=a,c--);return h+s.buffer.translateBufferLineToString(c,!1,t,a)}function ad(t,e){let i=e?"O":"[";return ue.ESC+i+t}function ld(t,e){t=Math.floor(t);let i="";for(let n=0;n<t;n++)i+=e;return i}var RJ=class{constructor(t){this._bufferService=t,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:!this.selectionEnd||!this.selectionStart?this.selectionStart:this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){let t=this.selectionStart[0]+this.selectionStartLength;return t>this._bufferService.cols?t%this._bufferService.cols===0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)-1]:[t%this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)]:[t,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let t=this.selectionStart[0]+this.selectionStartLength;return t>this._bufferService.cols?[t%this._bufferService.cols,this.selectionStart[1]+Math.floor(t/this._bufferService.cols)]:[Math.max(t,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let t=this.selectionStart,e=this.selectionEnd;return!t||!e?!1:t[1]>e[1]||t[1]===e[1]&&t[0]>e[0]}handleTrim(t){return this.selectionStart&&(this.selectionStart[1]-=t),this.selectionEnd&&(this.selectionEnd[1]-=t),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function S$(t,e){if(t.start.y>t.end.y)throw new Error(`Buffer range end (${t.end.x}, ${t.end.y}) cannot be before start (${t.start.x}, ${t.start.y})`);return e*(t.end.y-t.start.y)+(t.end.x-t.start.x+1)}var Oy=50,AJ=15,MJ=50,zJ=500,jJ=" ",DJ=new RegExp(jJ,"g"),p1=class extends Ge{constructor(t,e,i,n,r,s,a,c,h){super(),this._element=t,this._screenElement=e,this._linkifier=i,this._bufferService=n,this._coreService=r,this._mouseService=s,this._optionsService=a,this._renderService=c,this._coreBrowserService=h,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new fr,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new ve),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new ve),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new ve),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new ve),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=d=>this._handleMouseMove(d),this._mouseUpListener=d=>this._handleMouseUp(d),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(d=>this._handleTrim(d)),this._register(this._bufferService.buffers.onBufferActivate(d=>this._handleBufferActivate(d))),this.enable(),this._model=new RJ(this._bufferService),this._activeSelectionMode=0,this._register(zt(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(d=>{d.rowsChanged&&this.clearSelection()}))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd;return!t||!e?!1:t[0]!==e[0]||t[1]!==e[1]}get selectionText(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd;if(!t||!e)return"";let i=this._bufferService.buffer,n=[];if(this._activeSelectionMode===3){if(t[0]===e[0])return"";let r=t[0]<e[0]?t[0]:e[0],s=t[0]<e[0]?e[0]:t[0];for(let a=t[1];a<=e[1];a++){let c=i.translateBufferLineToString(a,!0,r,s);n.push(c)}}else{let r=t[1]===e[1]?e[0]:void 0;n.push(i.translateBufferLineToString(t[1],!0,t[0],r));for(let s=t[1]+1;s<=e[1]-1;s++){let a=i.lines.get(s),c=i.translateBufferLineToString(s,!0);a!=null&&a.isWrapped?n[n.length-1]+=c:n.push(c)}if(t[1]!==e[1]){let s=i.lines.get(e[1]),a=i.translateBufferLineToString(e[1],!0,0,e[0]);s&&s.isWrapped?n[n.length-1]+=a:n.push(a)}}return n.map(r=>r.replace(DJ," ")).join(Pz?`\r
154
- `:`
155
- `)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(t){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),l_&&t&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(t){let e=this._getMouseBufferCoords(t),i=this._model.finalSelectionStart,n=this._model.finalSelectionEnd;return!i||!n||!e?!1:this._areCoordsInSelection(e,i,n)}isCellInSelection(t,e){let i=this._model.finalSelectionStart,n=this._model.finalSelectionEnd;return!i||!n?!1:this._areCoordsInSelection([t,e],i,n)}_areCoordsInSelection(t,e,i){return t[1]>e[1]&&t[1]<i[1]||e[1]===i[1]&&t[1]===e[1]&&t[0]>=e[0]&&t[0]<i[0]||e[1]<i[1]&&t[1]===i[1]&&t[0]<i[0]||e[1]<i[1]&&t[1]===e[1]&&t[0]>=e[0]}_selectWordAtCursor(t,e){var r,s;let i=(s=(r=this._linkifier.currentLink)==null?void 0:r.link)==null?void 0:s.range;if(i)return this._model.selectionStart=[i.start.x-1,i.start.y-1],this._model.selectionStartLength=S$(i,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let n=this._getMouseBufferCoords(t);return n?(this._selectWordAt(n,e),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(t,e){this._model.clearSelection(),t=Math.max(t,0),e=Math.min(e,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,t],this._model.selectionEnd=[this._bufferService.cols,e],this.refresh(),this._onSelectionChange.fire()}_handleTrim(t){this._model.handleTrim(t)&&this.refresh()}_getMouseBufferCoords(t){let e=this._mouseService.getCoords(t,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(e)return e[0]--,e[1]--,e[1]+=this._bufferService.buffer.ydisp,e}_getMouseEventScrollAmount(t){let e=a_(this._coreBrowserService.window,t,this._screenElement)[1],i=this._renderService.dimensions.css.canvas.height;return e>=0&&e<=i?0:(e>i&&(e-=i),e=Math.min(Math.max(e,-Oy),Oy),e/=Oy,e/Math.abs(e)+Math.round(e*(AJ-1)))}shouldForceSelection(t){return am?t.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:t.shiftKey}handleMouseDown(t){if(this._mouseDownTimeStamp=t.timeStamp,!(t.button===2&&this.hasSelection)&&t.button===0){if(!this._enabled){if(!this.shouldForceSelection(t))return;t.stopPropagation()}t.preventDefault(),this._dragScrollAmount=0,this._enabled&&t.shiftKey?this._handleIncrementalClick(t):t.detail===1?this._handleSingleClick(t):t.detail===2?this._handleDoubleClick(t):t.detail===3&&this._handleTripleClick(t),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),MJ)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(t){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(t))}_handleSingleClick(t){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(t)?3:0,this._model.selectionStart=this._getMouseBufferCoords(t),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let e=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);e&&e.length!==this._model.selectionStart[0]&&e.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(t){this._selectWordAtCursor(t,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(t){let e=this._getMouseBufferCoords(t);e&&(this._activeSelectionMode=2,this._selectLineAt(e[1]))}shouldColumnSelect(t){return t.altKey&&!(am&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(t){if(t.stopImmediatePropagation(),!this._model.selectionStart)return;let e=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(t),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(t),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let i=this._bufferService.buffer;if(this._model.selectionEnd[1]<i.lines.length){let n=i.lines.get(this._model.selectionEnd[1]);n&&n.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!e||e[0]!==this._model.selectionEnd[0]||e[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let t=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(t.ydisp+this._bufferService.rows,t.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=t.ydisp),this.refresh()}}_handleMouseUp(t){let e=t.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&e<zJ&&t.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let i=this._mouseService.getCoords(t,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(i&&i[0]!==void 0&&i[1]!==void 0){let n=kJ(i[0]-1,i[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(n,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd,i=!!t&&!!e&&(t[0]!==e[0]||t[1]!==e[1]);if(!i){this._oldHasSelection&&this._fireOnSelectionChange(t,e,i);return}!t||!e||(!this._oldSelectionStart||!this._oldSelectionEnd||t[0]!==this._oldSelectionStart[0]||t[1]!==this._oldSelectionStart[1]||e[0]!==this._oldSelectionEnd[0]||e[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(t,e,i)}_fireOnSelectionChange(t,e,i){this._oldSelectionStart=t,this._oldSelectionEnd=e,this._oldHasSelection=i,this._onSelectionChange.fire()}_handleBufferActivate(t){this.clearSelection(),this._trimListener.dispose(),this._trimListener=t.activeBuffer.lines.onTrim(e=>this._handleTrim(e))}_convertViewportColToCharacterIndex(t,e){let i=e;for(let n=0;e>=n;n++){let r=t.loadCell(n,this._workCell).getChars().length;this._workCell.getWidth()===0?i--:r>1&&e!==n&&(i+=r-1)}return i}setSelection(t,e,i){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[t,e],this._model.selectionStartLength=i,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(t){this._isClickInSelection(t)||(this._selectWordAtCursor(t,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(t,e,i=!0,n=!0){if(t[0]>=this._bufferService.cols)return;let r=this._bufferService.buffer,s=r.lines.get(t[1]);if(!s)return;let a=r.translateBufferLineToString(t[1],!1),c=this._convertViewportColToCharacterIndex(s,t[0]),h=c,d=t[0]-c,f=0,g=0,m=0,v=0;if(a.charAt(c)===" "){for(;c>0&&a.charAt(c-1)===" ";)c--;for(;h<a.length&&a.charAt(h+1)===" ";)h++}else{let w=t[0],x=t[0];s.getWidth(w)===0&&(f++,w--),s.getWidth(x)===2&&(g++,x++);let Q=s.getString(x).length;for(Q>1&&(v+=Q-1,h+=Q-1);w>0&&c>0&&!this._isCharWordSeparator(s.loadCell(w-1,this._workCell));){s.loadCell(w-1,this._workCell);let C=this._workCell.getChars().length;this._workCell.getWidth()===0?(f++,w--):C>1&&(m+=C-1,c-=C-1),c--,w--}for(;x<s.length&&h+1<a.length&&!this._isCharWordSeparator(s.loadCell(x+1,this._workCell));){s.loadCell(x+1,this._workCell);let C=this._workCell.getChars().length;this._workCell.getWidth()===2?(g++,x++):C>1&&(v+=C-1,h+=C-1),h++,x++}}h++;let S=c+d-f+m,_=Math.min(this._bufferService.cols,h-c+f+g-m-v);if(!(!e&&a.slice(c,h).trim()==="")){if(i&&S===0&&s.getCodePoint(0)!==32){let w=r.lines.get(t[1]-1);if(w&&s.isWrapped&&w.getCodePoint(this._bufferService.cols-1)!==32){let x=this._getWordAt([this._bufferService.cols-1,t[1]-1],!1,!0,!1);if(x){let Q=this._bufferService.cols-x.start;S-=Q,_+=Q}}}if(n&&S+_===this._bufferService.cols&&s.getCodePoint(this._bufferService.cols-1)!==32){let w=r.lines.get(t[1]+1);if(w!=null&&w.isWrapped&&w.getCodePoint(0)!==32){let x=this._getWordAt([0,t[1]+1],!1,!1,!0);x&&(_+=x.length)}}return{start:S,length:_}}}_selectWordAt(t,e){let i=this._getWordAt(t,e);if(i){for(;i.start<0;)i.start+=this._bufferService.cols,t[1]--;this._model.selectionStart=[i.start,t[1]],this._model.selectionStartLength=i.length}}_selectToWordAt(t){let e=this._getWordAt(t,!0);if(e){let i=t[1];for(;e.start<0;)e.start+=this._bufferService.cols,i--;if(!this._model.areSelectionValuesReversed())for(;e.start+e.length>this._bufferService.cols;)e.length-=this._bufferService.cols,i++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?e.start:e.start+e.length,i]}}_isCharWordSeparator(t){return t.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(t.getChars())>=0}_selectLineAt(t){let e=this._bufferService.buffer.getWrappedRangeForLine(t),i={start:{x:0,y:e.first},end:{x:this._bufferService.cols-1,y:e.last}};this._model.selectionStart=[0,e.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=S$(i,this._bufferService.cols)}};p1=Vt([_e(3,sn),_e(4,ml),_e(5,e_),_e(6,on),_e(7,no),_e(8,io)],p1);var b$=class{constructor(){this._data={}}set(t,e,i){this._data[t]||(this._data[t]={}),this._data[t][e]=i}get(t,e){return this._data[t]?this._data[t][e]:void 0}clear(){this._data={}}},_$=class{constructor(){this._color=new b$,this._css=new b$}setCss(t,e,i){this._css.set(t,e,i)}getCss(t,e){return this._css.get(t,e)}setColor(t,e,i){this._color.set(t,e,i)}getColor(t,e){return this._color.get(t,e)}clear(){this._color.clear(),this._css.clear()}},pi=Object.freeze((()=>{let t=[Xt.toColor("#2e3436"),Xt.toColor("#cc0000"),Xt.toColor("#4e9a06"),Xt.toColor("#c4a000"),Xt.toColor("#3465a4"),Xt.toColor("#75507b"),Xt.toColor("#06989a"),Xt.toColor("#d3d7cf"),Xt.toColor("#555753"),Xt.toColor("#ef2929"),Xt.toColor("#8ae234"),Xt.toColor("#fce94f"),Xt.toColor("#729fcf"),Xt.toColor("#ad7fa8"),Xt.toColor("#34e2e2"),Xt.toColor("#eeeeec")],e=[0,95,135,175,215,255];for(let i=0;i<216;i++){let n=e[i/36%6|0],r=e[i/6%6|0],s=e[i%6];t.push({css:ai.toCss(n,r,s),rgba:ai.toRgba(n,r,s)})}for(let i=0;i<24;i++){let n=8+i*10;t.push({css:ai.toCss(n,n,n),rgba:ai.toRgba(n,n,n)})}return t})()),La=Xt.toColor("#ffffff"),yu=Xt.toColor("#000000"),x$=Xt.toColor("#ffffff"),w$=yu,cu={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},BJ=La,g1=class extends Ge{constructor(t){super(),this._optionsService=t,this._contrastCache=new _$,this._halfContrastCache=new _$,this._onChangeColors=this._register(new ve),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:La,background:yu,cursor:x$,cursorAccent:w$,selectionForeground:void 0,selectionBackgroundTransparent:cu,selectionBackgroundOpaque:Et.blend(yu,cu),selectionInactiveBackgroundTransparent:cu,selectionInactiveBackgroundOpaque:Et.blend(yu,cu),scrollbarSliderBackground:Et.opacity(La,.2),scrollbarSliderHoverBackground:Et.opacity(La,.4),scrollbarSliderActiveBackground:Et.opacity(La,.5),overviewRulerBorder:La,ansi:pi.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(t={}){let e=this._colors;if(e.foreground=xt(t.foreground,La),e.background=xt(t.background,yu),e.cursor=Et.blend(e.background,xt(t.cursor,x$)),e.cursorAccent=Et.blend(e.background,xt(t.cursorAccent,w$)),e.selectionBackgroundTransparent=xt(t.selectionBackground,cu),e.selectionBackgroundOpaque=Et.blend(e.background,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundTransparent=xt(t.selectionInactiveBackground,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundOpaque=Et.blend(e.background,e.selectionInactiveBackgroundTransparent),e.selectionForeground=t.selectionForeground?xt(t.selectionForeground,O$):void 0,e.selectionForeground===O$&&(e.selectionForeground=void 0),Et.isOpaque(e.selectionBackgroundTransparent)&&(e.selectionBackgroundTransparent=Et.opacity(e.selectionBackgroundTransparent,.3)),Et.isOpaque(e.selectionInactiveBackgroundTransparent)&&(e.selectionInactiveBackgroundTransparent=Et.opacity(e.selectionInactiveBackgroundTransparent,.3)),e.scrollbarSliderBackground=xt(t.scrollbarSliderBackground,Et.opacity(e.foreground,.2)),e.scrollbarSliderHoverBackground=xt(t.scrollbarSliderHoverBackground,Et.opacity(e.foreground,.4)),e.scrollbarSliderActiveBackground=xt(t.scrollbarSliderActiveBackground,Et.opacity(e.foreground,.5)),e.overviewRulerBorder=xt(t.overviewRulerBorder,BJ),e.ansi=pi.slice(),e.ansi[0]=xt(t.black,pi[0]),e.ansi[1]=xt(t.red,pi[1]),e.ansi[2]=xt(t.green,pi[2]),e.ansi[3]=xt(t.yellow,pi[3]),e.ansi[4]=xt(t.blue,pi[4]),e.ansi[5]=xt(t.magenta,pi[5]),e.ansi[6]=xt(t.cyan,pi[6]),e.ansi[7]=xt(t.white,pi[7]),e.ansi[8]=xt(t.brightBlack,pi[8]),e.ansi[9]=xt(t.brightRed,pi[9]),e.ansi[10]=xt(t.brightGreen,pi[10]),e.ansi[11]=xt(t.brightYellow,pi[11]),e.ansi[12]=xt(t.brightBlue,pi[12]),e.ansi[13]=xt(t.brightMagenta,pi[13]),e.ansi[14]=xt(t.brightCyan,pi[14]),e.ansi[15]=xt(t.brightWhite,pi[15]),t.extendedAnsi){let i=Math.min(e.ansi.length-16,t.extendedAnsi.length);for(let n=0;n<i;n++)e.ansi[n+16]=xt(t.extendedAnsi[n],pi[n+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(t){this._restoreColor(t),this._onChangeColors.fire(this.colors)}_restoreColor(t){if(t===void 0){for(let e=0;e<this._restoreColors.ansi.length;++e)this._colors.ansi[e]=this._restoreColors.ansi[e];return}switch(t){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[t]=this._restoreColors.ansi[t]}}modifyColors(t){t(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};g1=Vt([_e(0,on)],g1);function xt(t,e){if(t!==void 0)try{return Xt.toColor(t)}catch{}return e}var LJ=class{constructor(...t){this._entries=new Map;for(let[e,i]of t)this.set(e,i)}set(t,e){let i=this._entries.get(t);return this._entries.set(t,e),i}forEach(t){for(let[e,i]of this._entries.entries())t(e,i)}has(t){return this._entries.has(t)}get(t){return this._entries.get(t)}},XJ=class{constructor(){this._services=new LJ,this._services.set(Jb,this)}setService(t,e){this._services.set(t,e)}getService(t){return this._services.get(t)}createInstance(t,...e){let i=AF(t).sort((s,a)=>s.index-a.index),n=[];for(let s of i){let a=this._services.get(s.id);if(!a)throw new Error(`[createInstance] ${t.name} depends on UNKNOWN service ${s.id._id}.`);n.push(a)}let r=i.length>0?i[0].index:e.length;if(e.length!==r)throw new Error(`[createInstance] First service dependency of ${t.name} at position ${r+1} conflicts with ${e.length} static arguments`);return new t(...e,...n)}},NJ={trace:0,debug:1,info:2,warn:3,error:4,off:5},ZJ="xterm.js: ",m1=class extends Ge{constructor(t){super(),this._optionsService=t,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=NJ[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(t){for(let e=0;e<t.length;e++)typeof t[e]=="function"&&(t[e]=t[e]())}_log(t,e,i){this._evalLazyOptionalParams(i),t.call(console,(this._optionsService.options.logger?"":ZJ)+e,...i)}trace(t,...e){var i;this._logLevel<=0&&this._log(((i=this._optionsService.options.logger)==null?void 0:i.trace.bind(this._optionsService.options.logger))??console.log,t,e)}debug(t,...e){var i;this._logLevel<=1&&this._log(((i=this._optionsService.options.logger)==null?void 0:i.debug.bind(this._optionsService.options.logger))??console.log,t,e)}info(t,...e){var i;this._logLevel<=2&&this._log(((i=this._optionsService.options.logger)==null?void 0:i.info.bind(this._optionsService.options.logger))??console.info,t,e)}warn(t,...e){var i;this._logLevel<=3&&this._log(((i=this._optionsService.options.logger)==null?void 0:i.warn.bind(this._optionsService.options.logger))??console.warn,t,e)}error(t,...e){var i;this._logLevel<=4&&this._log(((i=this._optionsService.options.logger)==null?void 0:i.error.bind(this._optionsService.options.logger))??console.error,t,e)}};m1=Vt([_e(0,on)],m1);var k$=class extends Ge{constructor(t){super(),this._maxLength=t,this.onDeleteEmitter=this._register(new ve),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new ve),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new ve),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(t){if(this._maxLength===t)return;let e=new Array(t);for(let i=0;i<Math.min(t,this.length);i++)e[i]=this._array[this._getCyclicIndex(i)];this._array=e,this._maxLength=t,this._startIndex=0}get length(){return this._length}set length(t){if(t>this._length)for(let e=this._length;e<t;e++)this._array[e]=void 0;this._length=t}get(t){return this._array[this._getCyclicIndex(t)]}set(t,e){this._array[this._getCyclicIndex(t)]=e}push(t){this._array[this._getCyclicIndex(this._length)]=t,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw new Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(t,e,...i){if(e){for(let n=t;n<this._length-e;n++)this._array[this._getCyclicIndex(n)]=this._array[this._getCyclicIndex(n+e)];this._length-=e,this.onDeleteEmitter.fire({index:t,amount:e})}for(let n=this._length-1;n>=t;n--)this._array[this._getCyclicIndex(n+i.length)]=this._array[this._getCyclicIndex(n)];for(let n=0;n<i.length;n++)this._array[this._getCyclicIndex(t+n)]=i[n];if(i.length&&this.onInsertEmitter.fire({index:t,amount:i.length}),this._length+i.length>this._maxLength){let n=this._length+i.length-this._maxLength;this._startIndex+=n,this._length=this._maxLength,this.onTrimEmitter.fire(n)}else this._length+=i.length}trimStart(t){t>this._length&&(t=this._length),this._startIndex+=t,this._length-=t,this.onTrimEmitter.fire(t)}shiftElements(t,e,i){if(!(e<=0)){if(t<0||t>=this._length)throw new Error("start argument out of range");if(t+i<0)throw new Error("Cannot shift elements in list beyond index 0");if(i>0){for(let r=e-1;r>=0;r--)this.set(t+r+i,this.get(t+r));let n=t+e+i-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let n=0;n<e;n++)this.set(t+n+i,this.get(t+n))}}_getCyclicIndex(t){return(this._startIndex+t)%this._maxLength}},Ue=3,oi=Object.freeze(new Td),Xp=0,vy=2,Su=class zz{constructor(e,i,n=!1){this.isWrapped=n,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*Ue);let r=i||fr.fromCharData([0,ez,1,0]);for(let s=0;s<e;++s)this.setCell(s,r);this.length=e}get(e){let i=this._data[e*Ue+0],n=i&2097151;return[this._data[e*Ue+1],i&2097152?this._combined[e]:n?Go(n):"",i>>22,i&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):n]}set(e,i){this._data[e*Ue+1]=i[0],i[1].length>1?(this._combined[e]=i[1],this._data[e*Ue+0]=e|2097152|i[2]<<22):this._data[e*Ue+0]=i[1].charCodeAt(0)|i[2]<<22}getWidth(e){return this._data[e*Ue+0]>>22}hasWidth(e){return this._data[e*Ue+0]&12582912}getFg(e){return this._data[e*Ue+1]}getBg(e){return this._data[e*Ue+2]}hasContent(e){return this._data[e*Ue+0]&4194303}getCodePoint(e){let i=this._data[e*Ue+0];return i&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):i&2097151}isCombined(e){return this._data[e*Ue+0]&2097152}getString(e){let i=this._data[e*Ue+0];return i&2097152?this._combined[e]:i&2097151?Go(i&2097151):""}isProtected(e){return this._data[e*Ue+2]&536870912}loadCell(e,i){return Xp=e*Ue,i.content=this._data[Xp+0],i.fg=this._data[Xp+1],i.bg=this._data[Xp+2],i.content&2097152&&(i.combinedData=this._combined[e]),i.bg&268435456&&(i.extended=this._extendedAttrs[e]),i}setCell(e,i){i.content&2097152&&(this._combined[e]=i.combinedData),i.bg&268435456&&(this._extendedAttrs[e]=i.extended),this._data[e*Ue+0]=i.content,this._data[e*Ue+1]=i.fg,this._data[e*Ue+2]=i.bg}setCellFromCodepoint(e,i,n,r){r.bg&268435456&&(this._extendedAttrs[e]=r.extended),this._data[e*Ue+0]=i|n<<22,this._data[e*Ue+1]=r.fg,this._data[e*Ue+2]=r.bg}addCodepointToCell(e,i,n){let r=this._data[e*Ue+0];r&2097152?this._combined[e]+=Go(i):r&2097151?(this._combined[e]=Go(r&2097151)+Go(i),r&=-2097152,r|=2097152):r=i|1<<22,n&&(r&=-12582913,r|=n<<22),this._data[e*Ue+0]=r}insertCells(e,i,n){if(e%=this.length,e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),i<this.length-e){let r=new fr;for(let s=this.length-e-i-1;s>=0;--s)this.setCell(e+i+s,this.loadCell(e+s,r));for(let s=0;s<i;++s)this.setCell(e+s,n)}else for(let r=e;r<this.length;++r)this.setCell(r,n);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,n)}deleteCells(e,i,n){if(e%=this.length,i<this.length-e){let r=new fr;for(let s=0;s<this.length-e-i;++s)this.setCell(e+s,this.loadCell(e+i+s,r));for(let s=this.length-i;s<this.length;++s)this.setCell(s,n)}else for(let r=e;r<this.length;++r)this.setCell(r,n);e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),this.getWidth(e)===0&&!this.hasContent(e)&&this.setCellFromCodepoint(e,0,1,n)}replaceCells(e,i,n,r=!1){if(r){for(e&&this.getWidth(e-1)===2&&!this.isProtected(e-1)&&this.setCellFromCodepoint(e-1,0,1,n),i<this.length&&this.getWidth(i-1)===2&&!this.isProtected(i)&&this.setCellFromCodepoint(i,0,1,n);e<i&&e<this.length;)this.isProtected(e)||this.setCell(e,n),e++;return}for(e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),i<this.length&&this.getWidth(i-1)===2&&this.setCellFromCodepoint(i,0,1,n);e<i&&e<this.length;)this.setCell(e++,n)}resize(e,i){if(e===this.length)return this._data.length*4*vy<this._data.buffer.byteLength;let n=e*Ue;if(e>this.length){if(this._data.buffer.byteLength>=n*4)this._data=new Uint32Array(this._data.buffer,0,n);else{let r=new Uint32Array(n);r.set(this._data),this._data=r}for(let r=this.length;r<e;++r)this.setCell(r,i)}else{this._data=this._data.subarray(0,n);let r=Object.keys(this._combined);for(let a=0;a<r.length;a++){let c=parseInt(r[a],10);c>=e&&delete this._combined[c]}let s=Object.keys(this._extendedAttrs);for(let a=0;a<s.length;a++){let c=parseInt(s[a],10);c>=e&&delete this._extendedAttrs[c]}}return this.length=e,n*4*vy<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*vy<this._data.buffer.byteLength){let e=new Uint32Array(this._data.length);return e.set(this._data),this._data=e,1}return 0}fill(e,i=!1){if(i){for(let n=0;n<this.length;++n)this.isProtected(n)||this.setCell(n,e);return}this._combined={},this._extendedAttrs={};for(let n=0;n<this.length;++n)this.setCell(n,e)}copyFrom(e){this.length!==e.length?this._data=new Uint32Array(e._data):this._data.set(e._data),this.length=e.length,this._combined={};for(let i in e._combined)this._combined[i]=e._combined[i];this._extendedAttrs={};for(let i in e._extendedAttrs)this._extendedAttrs[i]=e._extendedAttrs[i];this.isWrapped=e.isWrapped}clone(){let e=new zz(0);e._data=new Uint32Array(this._data),e.length=this.length;for(let i in this._combined)e._combined[i]=this._combined[i];for(let i in this._extendedAttrs)e._extendedAttrs[i]=this._extendedAttrs[i];return e.isWrapped=this.isWrapped,e}getTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*Ue+0]&4194303)return e+(this._data[e*Ue+0]>>22);return 0}getNoBgTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*Ue+0]&4194303||this._data[e*Ue+2]&50331648)return e+(this._data[e*Ue+0]>>22);return 0}copyCellsFrom(e,i,n,r,s){let a=e._data;if(s)for(let h=r-1;h>=0;h--){for(let d=0;d<Ue;d++)this._data[(n+h)*Ue+d]=a[(i+h)*Ue+d];a[(i+h)*Ue+2]&268435456&&(this._extendedAttrs[n+h]=e._extendedAttrs[i+h])}else for(let h=0;h<r;h++){for(let d=0;d<Ue;d++)this._data[(n+h)*Ue+d]=a[(i+h)*Ue+d];a[(i+h)*Ue+2]&268435456&&(this._extendedAttrs[n+h]=e._extendedAttrs[i+h])}let c=Object.keys(e._combined);for(let h=0;h<c.length;h++){let d=parseInt(c[h],10);d>=i&&(this._combined[d-i+n]=e._combined[d])}}translateToString(e,i,n,r){i=i??0,n=n??this.length,e&&(n=Math.min(n,this.getTrimmedLength())),r&&(r.length=0);let s="";for(;i<n;){let a=this._data[i*Ue+0],c=a&2097151,h=a&2097152?this._combined[i]:c?Go(c):ea;if(s+=h,r)for(let d=0;d<h.length;++d)r.push(i);i+=a>>22||1}return r&&r.push(i),s}};function WJ(t,e,i,n,r,s){let a=[];for(let c=0;c<t.length-1;c++){let h=c,d=t.get(++h);if(!d.isWrapped)continue;let f=[t.get(c)];for(;h<t.length&&d.isWrapped;)f.push(d),d=t.get(++h);if(!s&&n>=c&&n<h){c+=f.length-1;continue}let g=0,m=cd(f,g,e),v=1,S=0;for(;v<f.length;){let w=cd(f,v,e),x=w-S,Q=i-m,C=Math.min(x,Q);f[g].copyCellsFrom(f[v],S,m,C,!1),m+=C,m===i&&(g++,m=0),S+=C,S===w&&(v++,S=0),m===0&&g!==0&&f[g-1].getWidth(i-1)===2&&(f[g].copyCellsFrom(f[g-1],i-1,m++,1,!1),f[g-1].setCell(i-1,r))}f[g].replaceCells(m,i,r);let _=0;for(let w=f.length-1;w>0&&(w>g||f[w].getTrimmedLength()===0);w--)_++;_>0&&(a.push(c+f.length-_),a.push(_)),c+=f.length-1}return a}function qJ(t,e){let i=[],n=0,r=e[n],s=0;for(let a=0;a<t.length;a++)if(r===a){let c=e[++n];t.onDeleteEmitter.fire({index:a-s,amount:c}),a+=c-1,s+=c,r=e[++n]}else i.push(a);return{layout:i,countRemoved:s}}function IJ(t,e){let i=[];for(let n=0;n<e.length;n++)i.push(t.get(e[n]));for(let n=0;n<i.length;n++)t.set(n,i[n]);t.length=e.length}function VJ(t,e,i){let n=[],r=t.map((h,d)=>cd(t,d,e)).reduce((h,d)=>h+d),s=0,a=0,c=0;for(;c<r;){if(r-c<i){n.push(r-c);break}s+=i;let h=cd(t,a,e);s>h&&(s-=h,a++);let d=t[a].getWidth(s-1)===2;d&&s--;let f=d?i-1:i;n.push(f),c+=f}return n}function cd(t,e,i){if(e===t.length-1)return t[e].getTrimmedLength();let n=!t[e].hasContent(i-1)&&t[e].getWidth(i-1)===1,r=t[e+1].getWidth(0)===2;return n&&r?i-1:i}var jz=class Dz{constructor(e){this.line=e,this.isDisposed=!1,this._disposables=[],this._id=Dz._nextId++,this._onDispose=this.register(new ve),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),dl(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};jz._nextId=1;var YJ=jz,yi={},Xa=yi.B;yi[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};yi.A={"#":"£"};yi.B=void 0;yi[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};yi.C=yi[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};yi.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};yi.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};yi.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};yi.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};yi.E=yi[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};yi.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};yi.H=yi[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};yi["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var C$=4294967295,T$=class{constructor(t,e,i){this._hasScrollback=t,this._optionsService=e,this._bufferService=i,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=oi.clone(),this.savedCharset=Xa,this.markers=[],this._nullCell=fr.fromCharData([0,ez,1,0]),this._whitespaceCell=fr.fromCharData([0,ea,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new lm,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new k$(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(t){return t?(this._nullCell.fg=t.fg,this._nullCell.bg=t.bg,this._nullCell.extended=t.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new rm),this._nullCell}getWhitespaceCell(t){return t?(this._whitespaceCell.fg=t.fg,this._whitespaceCell.bg=t.bg,this._whitespaceCell.extended=t.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new rm),this._whitespaceCell}getBlankLine(t,e){return new Su(this._bufferService.cols,this.getNullCell(t),e)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let t=this.ybase+this.y-this.ydisp;return t>=0&&t<this._rows}_getCorrectBufferLength(t){if(!this._hasScrollback)return t;let e=t+this._optionsService.rawOptions.scrollback;return e>C$?C$:e}fillViewportRows(t){if(this.lines.length===0){t===void 0&&(t=oi);let e=this._rows;for(;e--;)this.lines.push(this.getBlankLine(t))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new k$(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(t,e){let i=this.getNullCell(oi),n=0,r=this._getCorrectBufferLength(e);if(r>this.lines.maxLength&&(this.lines.maxLength=r),this.lines.length>0){if(this._cols<t)for(let a=0;a<this.lines.length;a++)n+=+this.lines.get(a).resize(t,i);let s=0;if(this._rows<e)for(let a=this._rows;a<e;a++)this.lines.length<e+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new Su(t,i)):this.ybase>0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new Su(t,i)));else for(let a=this._rows;a>e;a--)this.lines.length>e+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(r<this.lines.maxLength){let a=this.lines.length-r;a>0&&(this.lines.trimStart(a),this.ybase=Math.max(this.ybase-a,0),this.ydisp=Math.max(this.ydisp-a,0),this.savedY=Math.max(this.savedY-a,0)),this.lines.maxLength=r}this.x=Math.min(this.x,t-1),this.y=Math.min(this.y,e-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,t-1),this.scrollTop=0}if(this.scrollBottom=e-1,this._isReflowEnabled&&(this._reflow(t,e),this._cols>t))for(let s=0;s<this.lines.length;s++)n+=+this.lines.get(s).resize(t,i);this._cols=t,this._rows=e,this._memoryCleanupQueue.clear(),n>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let t=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,t=!1);let e=0;for(;this._memoryCleanupPosition<this.lines.length;)if(e+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),e>100)return!0;return t}get _isReflowEnabled(){let t=this._optionsService.rawOptions.windowsPty;return t&&t.buildNumber?this._hasScrollback&&t.backend==="conpty"&&t.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(t,e){this._cols!==t&&(t>this._cols?this._reflowLarger(t,e):this._reflowSmaller(t,e))}_reflowLarger(t,e){let i=this._optionsService.rawOptions.reflowCursorLine,n=WJ(this.lines,this._cols,t,this.ybase+this.y,this.getNullCell(oi),i);if(n.length>0){let r=qJ(this.lines,n);IJ(this.lines,r.layout),this._reflowLargerAdjustViewport(t,e,r.countRemoved)}}_reflowLargerAdjustViewport(t,e,i){let n=this.getNullCell(oi),r=i;for(;r-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<e&&this.lines.push(new Su(t,n))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-i,0)}_reflowSmaller(t,e){let i=this._optionsService.rawOptions.reflowCursorLine,n=this.getNullCell(oi),r=[],s=0;for(let a=this.lines.length-1;a>=0;a--){let c=this.lines.get(a);if(!c||!c.isWrapped&&c.getTrimmedLength()<=t)continue;let h=[c];for(;c.isWrapped&&a>0;)c=this.lines.get(--a),h.unshift(c);if(!i){let C=this.ybase+this.y;if(C>=a&&C<a+h.length)continue}let d=h[h.length-1].getTrimmedLength(),f=VJ(h,this._cols,t),g=f.length-h.length,m;this.ybase===0&&this.y!==this.lines.length-1?m=Math.max(0,this.y-this.lines.maxLength+g):m=Math.max(0,this.lines.length-this.lines.maxLength+g);let v=[];for(let C=0;C<g;C++){let T=this.getBlankLine(oi,!0);v.push(T)}v.length>0&&(r.push({start:a+h.length+s,newLines:v}),s+=v.length),h.push(...v);let S=f.length-1,_=f[S];_===0&&(S--,_=f[S]);let w=h.length-g-1,x=d;for(;w>=0;){let C=Math.min(x,_);if(h[S]===void 0)break;if(h[S].copyCellsFrom(h[w],x-C,_-C,C,!0),_-=C,_===0&&(S--,_=f[S]),x-=C,x===0){w--;let T=Math.max(w,0);x=cd(h,T,this._cols)}}for(let C=0;C<h.length;C++)f[C]<t&&h[C].setCell(f[C],n);let Q=g-m;for(;Q-- >0;)this.ybase===0?this.y<e-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+s)-e&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+g,this.ybase+e-1)}if(r.length>0){let a=[],c=[];for(let _=0;_<this.lines.length;_++)c.push(this.lines.get(_));let h=this.lines.length,d=h-1,f=0,g=r[f];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+s);let m=0;for(let _=Math.min(this.lines.maxLength-1,h+s-1);_>=0;_--)if(g&&g.start>d+m){for(let w=g.newLines.length-1;w>=0;w--)this.lines.set(_--,g.newLines[w]);_++,a.push({index:d+1,amount:g.newLines.length}),m+=g.newLines.length,g=r[++f]}else this.lines.set(_,c[d--]);let v=0;for(let _=a.length-1;_>=0;_--)a[_].index+=v,this.lines.onInsertEmitter.fire(a[_]),v+=a[_].amount;let S=Math.max(0,h+s-this.lines.maxLength);S>0&&this.lines.onTrimEmitter.fire(S)}}translateBufferLineToString(t,e,i=0,n){let r=this.lines.get(t);return r?r.translateToString(e,i,n):""}getWrappedRangeForLine(t){let e=t,i=t;for(;e>0&&this.lines.get(e).isWrapped;)e--;for(;i+1<this.lines.length&&this.lines.get(i+1).isWrapped;)i++;return{first:e,last:i}}setupTabStops(t){for(t!=null?this.tabs[t]||(t=this.prevStop(t)):(this.tabs={},t=0);t<this._cols;t+=this._optionsService.rawOptions.tabStopWidth)this.tabs[t]=!0}prevStop(t){for(t==null&&(t=this.x);!this.tabs[--t]&&t>0;);return t>=this._cols?this._cols-1:t<0?0:t}nextStop(t){for(t==null&&(t=this.x);!this.tabs[++t]&&t<this._cols;);return t>=this._cols?this._cols-1:t<0?0:t}clearMarkers(t){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].line===t&&(this.markers[e].dispose(),this.markers.splice(e--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].dispose();this.markers.length=0,this._isClearing=!1}addMarker(t){let e=new YJ(t);return this.markers.push(e),e.register(this.lines.onTrim(i=>{e.line-=i,e.line<0&&e.dispose()})),e.register(this.lines.onInsert(i=>{e.line>=i.index&&(e.line+=i.amount)})),e.register(this.lines.onDelete(i=>{e.line>=i.index&&e.line<i.index+i.amount&&e.dispose(),e.line>i.index&&(e.line-=i.amount)})),e.register(e.onDispose(()=>this._removeMarker(e))),e}_removeMarker(t){this._isClearing||this.markers.splice(this.markers.indexOf(t),1)}},HJ=class extends Ge{constructor(t,e){super(),this._optionsService=t,this._bufferService=e,this._onBufferActivate=this._register(new ve),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new T$(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new T$(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(t){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(t),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(t,e){this._normal.resize(t,e),this._alt.resize(t,e),this.setupTabStops(t)}setupTabStops(t){this._normal.setupTabStops(t),this._alt.setupTabStops(t)}},Bz=2,Lz=1,O1=class extends Ge{constructor(t){super(),this.isUserScrolling=!1,this._onResize=this._register(new ve),this.onResize=this._onResize.event,this._onScroll=this._register(new ve),this.onScroll=this._onScroll.event,this.cols=Math.max(t.rawOptions.cols||0,Bz),this.rows=Math.max(t.rawOptions.rows||0,Lz),this.buffers=this._register(new HJ(t,this)),this._register(this.buffers.onBufferActivate(e=>{this._onScroll.fire(e.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(t,e){let i=this.cols!==t,n=this.rows!==e;this.cols=t,this.rows=e,this.buffers.resize(t,e),this._onResize.fire({cols:t,rows:e,colsChanged:i,rowsChanged:n})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(t,e=!1){let i=this.buffer,n;n=this._cachedBlankLine,(!n||n.length!==this.cols||n.getFg(0)!==t.fg||n.getBg(0)!==t.bg)&&(n=i.getBlankLine(t,e),this._cachedBlankLine=n),n.isWrapped=e;let r=i.ybase+i.scrollTop,s=i.ybase+i.scrollBottom;if(i.scrollTop===0){let a=i.lines.isFull;s===i.lines.length-1?a?i.lines.recycle().copyFrom(n):i.lines.push(n.clone()):i.lines.splice(s+1,0,n.clone()),a?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{let a=s-r+1;i.lines.shiftElements(r+1,a-1,-1),i.lines.set(s,n.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)}scrollLines(t,e){let i=this.buffer;if(t<0){if(i.ydisp===0)return;this.isUserScrolling=!0}else t+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);let n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+t,i.ybase),0),n!==i.ydisp&&(e||this._onScroll.fire(i.ydisp))}};O1=Vt([_e(0,on)],O1);var rc={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:am,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},UJ=["normal","bold","100","200","300","400","500","600","700","800","900"],GJ=class extends Ge{constructor(t){super(),this._onOptionChange=this._register(new ve),this.onOptionChange=this._onOptionChange.event;let e={...rc};for(let i in t)if(i in e)try{let n=t[i];e[i]=this._sanitizeAndValidateOption(i,n)}catch(n){console.error(n)}this.rawOptions=e,this.options={...e},this._setupOptions(),this._register(zt(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(t,e){return this.onOptionChange(i=>{i===t&&e(this.rawOptions[t])})}onMultipleOptionChange(t,e){return this.onOptionChange(i=>{t.indexOf(i)!==-1&&e()})}_setupOptions(){let t=i=>{if(!(i in rc))throw new Error(`No option with key "${i}"`);return this.rawOptions[i]},e=(i,n)=>{if(!(i in rc))throw new Error(`No option with key "${i}"`);n=this._sanitizeAndValidateOption(i,n),this.rawOptions[i]!==n&&(this.rawOptions[i]=n,this._onOptionChange.fire(i))};for(let i in this.rawOptions){let n={get:t.bind(this,i),set:e.bind(this,i)};Object.defineProperty(this.options,i,n)}}_sanitizeAndValidateOption(t,e){switch(t){case"cursorStyle":if(e||(e=rc[t]),!FJ(e))throw new Error(`"${e}" is not a valid value for ${t}`);break;case"wordSeparator":e||(e=rc[t]);break;case"fontWeight":case"fontWeightBold":if(typeof e=="number"&&1<=e&&e<=1e3)break;e=UJ.includes(e)?e:rc[t];break;case"cursorWidth":e=Math.floor(e);case"lineHeight":case"tabStopWidth":if(e<1)throw new Error(`${t} cannot be less than 1, value: ${e}`);break;case"minimumContrastRatio":e=Math.max(1,Math.min(21,Math.round(e*10)/10));break;case"scrollback":if(e=Math.min(e,4294967295),e<0)throw new Error(`${t} cannot be less than 0, value: ${e}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(e<=0)throw new Error(`${t} cannot be less than or equal to 0, value: ${e}`);break;case"rows":case"cols":if(!e&&e!==0)throw new Error(`${t} must be numeric, value: ${e}`);break;case"windowsPty":e=e??{};break}return e}};function FJ(t){return t==="block"||t==="underline"||t==="bar"}function bu(t,e=5){if(typeof t!="object")return t;let i=Array.isArray(t)?[]:{};for(let n in t)i[n]=e<=1?t[n]:t[n]&&bu(t[n],e-1);return i}var Q$=Object.freeze({insertMode:!1}),$$=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),v1=class extends Ge{constructor(t,e,i){super(),this._bufferService=t,this._logService=e,this._optionsService=i,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new ve),this.onData=this._onData.event,this._onUserInput=this._register(new ve),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new ve),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new ve),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=bu(Q$),this.decPrivateModes=bu($$)}reset(){this.modes=bu(Q$),this.decPrivateModes=bu($$)}triggerDataEvent(t,e=!1){if(this._optionsService.rawOptions.disableStdin)return;let i=this._bufferService.buffer;e&&this._optionsService.rawOptions.scrollOnUserInput&&i.ybase!==i.ydisp&&this._onRequestScrollToBottom.fire(),e&&this._onUserInput.fire(),this._logService.debug(`sending data "${t}"`),this._logService.trace("sending data (codes)",()=>t.split("").map(n=>n.charCodeAt(0))),this._onData.fire(t)}triggerBinaryEvent(t){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${t}"`),this._logService.trace("sending binary (codes)",()=>t.split("").map(e=>e.charCodeAt(0))),this._onBinary.fire(t))}};v1=Vt([_e(0,sn),_e(1,sz),_e(2,on)],v1);var P$={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:t=>t.button===4||t.action!==1?!1:(t.ctrl=!1,t.alt=!1,t.shift=!1,!0)},VT200:{events:19,restrict:t=>t.action!==32},DRAG:{events:23,restrict:t=>!(t.action===32&&t.button===3)},ANY:{events:31,restrict:t=>!0}};function yy(t,e){let i=(t.ctrl?16:0)|(t.shift?4:0)|(t.alt?8:0);return t.button===4?(i|=64,i|=t.action):(i|=t.button&3,t.button&4&&(i|=64),t.button&8&&(i|=128),t.action===32?i|=32:t.action===0&&!e&&(i|=3)),i}var Sy=String.fromCharCode,E$={DEFAULT:t=>{let e=[yy(t,!1)+32,t.col+32,t.row+32];return e[0]>255||e[1]>255||e[2]>255?"":`\x1B[M${Sy(e[0])}${Sy(e[1])}${Sy(e[2])}`},SGR:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${yy(t,!0)};${t.col};${t.row}${e}`},SGR_PIXELS:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${yy(t,!0)};${t.x};${t.y}${e}`}},y1=class extends Ge{constructor(t,e,i){super(),this._bufferService=t,this._coreService=e,this._optionsService=i,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new ve),this.onProtocolChange=this._onProtocolChange.event;for(let n of Object.keys(P$))this.addProtocol(n,P$[n]);for(let n of Object.keys(E$))this.addEncoding(n,E$[n]);this.reset()}addProtocol(t,e){this._protocols[t]=e}addEncoding(t,e){this._encodings[t]=e}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(t){if(!this._protocols[t])throw new Error(`unknown protocol "${t}"`);this._activeProtocol=t,this._onProtocolChange.fire(this._protocols[t].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(t){if(!this._encodings[t])throw new Error(`unknown encoding "${t}"`);this._activeEncoding=t}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(t,e,i){if(t.deltaY===0||t.shiftKey||e===void 0||i===void 0)return 0;let n=e/i,r=this._applyScrollModifier(t.deltaY,t);return t.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(r/=n+0,Math.abs(t.deltaY)<50&&(r*=.3),this._wheelPartialScroll+=r,r=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):t.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(r*=this._bufferService.rows),r}_applyScrollModifier(t,e){return e.altKey||e.ctrlKey||e.shiftKey?t*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:t*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(t){if(t.col<0||t.col>=this._bufferService.cols||t.row<0||t.row>=this._bufferService.rows||t.button===4&&t.action===32||t.button===3&&t.action!==32||t.button!==4&&(t.action===2||t.action===3)||(t.col++,t.row++,t.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,t,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(t))return!1;let e=this._encodings[this._activeEncoding](t);return e&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(e):this._coreService.triggerDataEvent(e,!0)),this._lastEvent=t,!0}explainEvents(t){return{down:!!(t&1),up:!!(t&2),drag:!!(t&4),move:!!(t&8),wheel:!!(t&16)}}_equalEvents(t,e,i){if(i){if(t.x!==e.x||t.y!==e.y)return!1}else if(t.col!==e.col||t.row!==e.row)return!1;return!(t.button!==e.button||t.action!==e.action||t.ctrl!==e.ctrl||t.alt!==e.alt||t.shift!==e.shift)}};y1=Vt([_e(0,sn),_e(1,ml),_e(2,on)],y1);var by=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],KJ=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],gi;function JJ(t,e){let i=0,n=e.length-1,r;if(t<e[0][0]||t>e[n][1])return!1;for(;n>=i;)if(r=i+n>>1,t>e[r][1])i=r+1;else if(t<e[r][0])n=r-1;else return!0;return!1}var eee=class{constructor(){if(this.version="6",!gi){gi=new Uint8Array(65536),gi.fill(1),gi[0]=0,gi.fill(0,1,32),gi.fill(0,127,160),gi.fill(2,4352,4448),gi[9001]=2,gi[9002]=2,gi.fill(2,11904,42192),gi[12351]=1,gi.fill(2,44032,55204),gi.fill(2,63744,64256),gi.fill(2,65040,65050),gi.fill(2,65072,65136),gi.fill(2,65280,65377),gi.fill(2,65504,65511);for(let t=0;t<by.length;++t)gi.fill(0,by[t][0],by[t][1]+1)}}wcwidth(t){return t<32?0:t<127?1:t<65536?gi[t]:JJ(t,KJ)?0:t>=131072&&t<=196605||t>=196608&&t<=262141?2:1}charProperties(t,e){let i=this.wcwidth(t),n=i===0&&e!==0;if(n){let r=Ua.extractWidth(e);r===0?n=!1:r>i&&(i=r)}return Ua.createPropertyValue(0,i,n)}},Ua=class ug{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new ve,this.onChange=this._onChange.event;let e=new eee;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return(e&1)!==0}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,i,n=!1){return(e&16777215)<<3|(i&3)<<1|(n?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw new Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(e){let i=0,n=0,r=e.length;for(let s=0;s<r;++s){let a=e.charCodeAt(s);if(55296<=a&&a<=56319){if(++s>=r)return i+this.wcwidth(a);let d=e.charCodeAt(s);56320<=d&&d<=57343?a=(a-55296)*1024+d-56320+65536:i+=this.wcwidth(d)}let c=this.charProperties(a,n),h=ug.extractWidth(c);ug.extractShouldJoin(c)&&(h-=ug.extractWidth(n)),i+=h,n=c}return i}charProperties(e,i){return this._activeProvider.charProperties(e,i)}},tee=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(t){this.glevel=t,this.charset=this._charsets[t]}setgCharset(t,e){this._charsets[t]=e,this.glevel===t&&(this.charset=e)}};function R$(t){var n;let e=(n=t.buffer.lines.get(t.buffer.ybase+t.buffer.y-1))==null?void 0:n.get(t.cols-1),i=t.buffer.lines.get(t.buffer.ybase+t.buffer.y);i&&e&&(i.isWrapped=e[3]!==0&&e[3]!==32)}var hu=2147483647,iee=256,Xz=class S1{constructor(e=32,i=32){if(this.maxLength=e,this.maxSubParamsLength=i,i>iee)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(i),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(e){let i=new S1;if(!e.length)return i;for(let n=Array.isArray(e[0])?1:0;n<e.length;++n){let r=e[n];if(Array.isArray(r))for(let s=0;s<r.length;++s)i.addSubParam(r[s]);else i.addParam(r)}return i}clone(){let e=new S1(this.maxLength,this.maxSubParamsLength);return e.params.set(this.params),e.length=this.length,e._subParams.set(this._subParams),e._subParamsLength=this._subParamsLength,e._subParamsIdx.set(this._subParamsIdx),e._rejectDigits=this._rejectDigits,e._rejectSubDigits=this._rejectSubDigits,e._digitIsSub=this._digitIsSub,e}toArray(){let e=[];for(let i=0;i<this.length;++i){e.push(this.params[i]);let n=this._subParamsIdx[i]>>8,r=this._subParamsIdx[i]&255;r-n>0&&e.push(Array.prototype.slice.call(this._subParams,n,r))}return e}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(e){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>hu?hu:e}addSubParam(e){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>hu?hu:e,this._subParamsIdx[this.length-1]++}}hasSubParams(e){return(this._subParamsIdx[e]&255)-(this._subParamsIdx[e]>>8)>0}getSubParams(e){let i=this._subParamsIdx[e]>>8,n=this._subParamsIdx[e]&255;return n-i>0?this._subParams.subarray(i,n):null}getSubParamsAll(){let e={};for(let i=0;i<this.length;++i){let n=this._subParamsIdx[i]>>8,r=this._subParamsIdx[i]&255;r-n>0&&(e[i]=this._subParams.slice(n,r))}return e}addDigit(e){let i;if(this._rejectDigits||!(i=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let n=this._digitIsSub?this._subParams:this.params,r=n[i-1];n[i-1]=~r?Math.min(r*10+e,hu):e}},uu=[],nee=class{constructor(){this._state=0,this._active=uu,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let i=this._handlers[t];return i.push(e),{dispose:()=>{let n=i.indexOf(e);n!==-1&&i.splice(n,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=uu}reset(){if(this._state===2)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].end(!1);this._stack.paused=!1,this._active=uu,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||uu,!this._active.length)this._handlerFb(this._id,"START");else for(let t=this._active.length-1;t>=0;t--)this._active[t].start()}_put(t,e,i){if(!this._active.length)this._handlerFb(this._id,"PUT",Bm(t,e,i));else for(let n=this._active.length-1;n>=0;n--)this._active[n].put(t,e,i)}start(){this.reset(),this._state=1}put(t,e,i){if(this._state!==3){if(this._state===1)for(;e<i;){let n=t[e++];if(n===59){this._state=2,this._start();break}if(n<48||57<n){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+n-48}this._state===2&&i-e>0&&this._put(t,e,i)}}end(t,e=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",t);else{let i=!1,n=this._active.length-1,r=!1;if(this._stack.paused&&(n=this._stack.loopPosition-1,i=e,r=this._stack.fallThrough,this._stack.paused=!1),!r&&i===!1){for(;n>=0&&(i=this._active[n].end(t),i!==!0);n--)if(i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!1,i;n--}for(;n>=0;n--)if(i=this._active[n].end(!1),i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!0,i}this._active=uu,this._id=-1,this._state=0}}},Nn=class{constructor(t){this._handler=t,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(t,e,i){this._hitLimit||(this._data+=Bm(t,e,i),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data),e instanceof Promise))return e.then(i=>(this._data="",this._hitLimit=!1,i));return this._data="",this._hitLimit=!1,e}},du=[],ree=class{constructor(){this._handlers=Object.create(null),this._active=du,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=du}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let i=this._handlers[t];return i.push(e),{dispose:()=>{let n=i.indexOf(e);n!==-1&&i.splice(n,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}reset(){if(this._active.length)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].unhook(!1);this._stack.paused=!1,this._active=du,this._ident=0}hook(t,e){if(this.reset(),this._ident=t,this._active=this._handlers[t]||du,!this._active.length)this._handlerFb(this._ident,"HOOK",e);else for(let i=this._active.length-1;i>=0;i--)this._active[i].hook(e)}put(t,e,i){if(!this._active.length)this._handlerFb(this._ident,"PUT",Bm(t,e,i));else for(let n=this._active.length-1;n>=0;n--)this._active[n].put(t,e,i)}unhook(t,e=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",t);else{let i=!1,n=this._active.length-1,r=!1;if(this._stack.paused&&(n=this._stack.loopPosition-1,i=e,r=this._stack.fallThrough,this._stack.paused=!1),!r&&i===!1){for(;n>=0&&(i=this._active[n].unhook(t),i!==!0);n--)if(i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!1,i;n--}for(;n>=0;n--)if(i=this._active[n].unhook(!1),i instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!0,i}this._active=du,this._ident=0}},_u=new Xz;_u.addParam(0);var A$=class{constructor(t){this._handler=t,this._data="",this._params=_u,this._hitLimit=!1}hook(t){this._params=t.length>1||t.params[0]?t.clone():_u,this._data="",this._hitLimit=!1}put(t,e,i){this._hitLimit||(this._data+=Bm(t,e,i),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data,this._params),e instanceof Promise))return e.then(i=>(this._params=_u,this._data="",this._hitLimit=!1,i));return this._params=_u,this._data="",this._hitLimit=!1,e}},see=class{constructor(t){this.table=new Uint8Array(t)}setDefault(t,e){this.table.fill(t<<4|e)}add(t,e,i,n){this.table[e<<8|t]=i<<4|n}addMany(t,e,i,n){for(let r=0;r<t.length;r++)this.table[e<<8|t[r]]=i<<4|n}},ar=160,oee=(function(){let t=new see(4095),e=Array.apply(null,Array(256)).map((c,h)=>h),i=(c,h)=>e.slice(c,h),n=i(32,127),r=i(0,24);r.push(25),r.push.apply(r,i(28,32));let s=i(0,14),a;t.setDefault(1,0),t.addMany(n,0,2,0);for(a in s)t.addMany([24,26,153,154],a,3,0),t.addMany(i(128,144),a,3,0),t.addMany(i(144,152),a,3,0),t.add(156,a,0,0),t.add(27,a,11,1),t.add(157,a,4,8),t.addMany([152,158,159],a,0,7),t.add(155,a,11,3),t.add(144,a,11,9);return t.addMany(r,0,3,0),t.addMany(r,1,3,1),t.add(127,1,0,1),t.addMany(r,8,0,8),t.addMany(r,3,3,3),t.add(127,3,0,3),t.addMany(r,4,3,4),t.add(127,4,0,4),t.addMany(r,6,3,6),t.addMany(r,5,3,5),t.add(127,5,0,5),t.addMany(r,2,3,2),t.add(127,2,0,2),t.add(93,1,4,8),t.addMany(n,8,5,8),t.add(127,8,5,8),t.addMany([156,27,24,26,7],8,6,0),t.addMany(i(28,32),8,0,8),t.addMany([88,94,95],1,0,7),t.addMany(n,7,0,7),t.addMany(r,7,0,7),t.add(156,7,0,0),t.add(127,7,0,7),t.add(91,1,11,3),t.addMany(i(64,127),3,7,0),t.addMany(i(48,60),3,8,4),t.addMany([60,61,62,63],3,9,4),t.addMany(i(48,60),4,8,4),t.addMany(i(64,127),4,7,0),t.addMany([60,61,62,63],4,0,6),t.addMany(i(32,64),6,0,6),t.add(127,6,0,6),t.addMany(i(64,127),6,0,0),t.addMany(i(32,48),3,9,5),t.addMany(i(32,48),5,9,5),t.addMany(i(48,64),5,0,6),t.addMany(i(64,127),5,7,0),t.addMany(i(32,48),4,9,5),t.addMany(i(32,48),1,9,2),t.addMany(i(32,48),2,9,2),t.addMany(i(48,127),2,10,0),t.addMany(i(48,80),1,10,0),t.addMany(i(81,88),1,10,0),t.addMany([89,90,92],1,10,0),t.addMany(i(96,127),1,10,0),t.add(80,1,11,9),t.addMany(r,9,0,9),t.add(127,9,0,9),t.addMany(i(28,32),9,0,9),t.addMany(i(32,48),9,9,12),t.addMany(i(48,60),9,8,10),t.addMany([60,61,62,63],9,9,10),t.addMany(r,11,0,11),t.addMany(i(32,128),11,0,11),t.addMany(i(28,32),11,0,11),t.addMany(r,10,0,10),t.add(127,10,0,10),t.addMany(i(28,32),10,0,10),t.addMany(i(48,60),10,8,10),t.addMany([60,61,62,63],10,0,11),t.addMany(i(32,48),10,9,12),t.addMany(r,12,0,12),t.add(127,12,0,12),t.addMany(i(28,32),12,0,12),t.addMany(i(32,48),12,9,12),t.addMany(i(48,64),12,0,11),t.addMany(i(64,127),12,12,13),t.addMany(i(64,127),10,12,13),t.addMany(i(64,127),9,12,13),t.addMany(r,13,13,13),t.addMany(n,13,13,13),t.add(127,13,0,13),t.addMany([27,156,24,26],13,14,0),t.add(ar,0,2,0),t.add(ar,8,5,8),t.add(ar,6,0,6),t.add(ar,11,0,11),t.add(ar,13,13,13),t})(),aee=class extends Ge{constructor(t=oee){super(),this._transitions=t,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new Xz,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(e,i,n)=>{},this._executeHandlerFb=e=>{},this._csiHandlerFb=(e,i)=>{},this._escHandlerFb=e=>{},this._errorHandlerFb=e=>e,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(zt(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new nee),this._dcsParser=this._register(new ree),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(t,e=[64,126]){let i=0;if(t.prefix){if(t.prefix.length>1)throw new Error("only one byte as prefix supported");if(i=t.prefix.charCodeAt(0),i&&60>i||i>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(t.intermediates){if(t.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let r=0;r<t.intermediates.length;++r){let s=t.intermediates.charCodeAt(r);if(32>s||s>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");i<<=8,i|=s}}if(t.final.length!==1)throw new Error("final must be a single byte");let n=t.final.charCodeAt(0);if(e[0]>n||n>e[1])throw new Error(`final must be in range ${e[0]} .. ${e[1]}`);return i<<=8,i|=n,i}identToString(t){let e=[];for(;t;)e.push(String.fromCharCode(t&255)),t>>=8;return e.reverse().join("")}setPrintHandler(t){this._printHandler=t}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(t,e){let i=this._identifier(t,[48,126]);this._escHandlers[i]===void 0&&(this._escHandlers[i]=[]);let n=this._escHandlers[i];return n.push(e),{dispose:()=>{let r=n.indexOf(e);r!==-1&&n.splice(r,1)}}}clearEscHandler(t){this._escHandlers[this._identifier(t,[48,126])]&&delete this._escHandlers[this._identifier(t,[48,126])]}setEscHandlerFallback(t){this._escHandlerFb=t}setExecuteHandler(t,e){this._executeHandlers[t.charCodeAt(0)]=e}clearExecuteHandler(t){this._executeHandlers[t.charCodeAt(0)]&&delete this._executeHandlers[t.charCodeAt(0)]}setExecuteHandlerFallback(t){this._executeHandlerFb=t}registerCsiHandler(t,e){let i=this._identifier(t);this._csiHandlers[i]===void 0&&(this._csiHandlers[i]=[]);let n=this._csiHandlers[i];return n.push(e),{dispose:()=>{let r=n.indexOf(e);r!==-1&&n.splice(r,1)}}}clearCsiHandler(t){this._csiHandlers[this._identifier(t)]&&delete this._csiHandlers[this._identifier(t)]}setCsiHandlerFallback(t){this._csiHandlerFb=t}registerDcsHandler(t,e){return this._dcsParser.registerHandler(this._identifier(t),e)}clearDcsHandler(t){this._dcsParser.clearHandler(this._identifier(t))}setDcsHandlerFallback(t){this._dcsParser.setHandlerFallback(t)}registerOscHandler(t,e){return this._oscParser.registerHandler(t,e)}clearOscHandler(t){this._oscParser.clearHandler(t)}setOscHandlerFallback(t){this._oscParser.setHandlerFallback(t)}setErrorHandler(t){this._errorHandler=t}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(t,e,i,n,r){this._parseStack.state=t,this._parseStack.handlers=e,this._parseStack.handlerPos=i,this._parseStack.transition=n,this._parseStack.chunkPos=r}parse(t,e,i){let n=0,r=0,s=0,a;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(i===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let c=this._parseStack.handlers,h=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(i===!1&&h>-1){for(;h>=0&&(a=c[h](this._params),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 4:if(i===!1&&h>-1){for(;h>=0&&(a=c[h](),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 6:if(n=t[this._parseStack.chunkPos],a=this._dcsParser.unhook(n!==24&&n!==26,i),a)return a;n===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=t[this._parseStack.chunkPos],a=this._oscParser.end(n!==24&&n!==26,i),a)return a;n===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let c=s;c<e;++c){switch(n=t[c],r=this._transitions.table[this.currentState<<8|(n<160?n:ar)],r>>4){case 2:for(let m=c+1;;++m){if(m>=e||(n=t[m])<32||n>126&&n<ar){this._printHandler(t,c,m),c=m-1;break}if(++m>=e||(n=t[m])<32||n>126&&n<ar){this._printHandler(t,c,m),c=m-1;break}if(++m>=e||(n=t[m])<32||n>126&&n<ar){this._printHandler(t,c,m),c=m-1;break}if(++m>=e||(n=t[m])<32||n>126&&n<ar){this._printHandler(t,c,m),c=m-1;break}}break;case 3:this._executeHandlers[n]?this._executeHandlers[n]():this._executeHandlerFb(n),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:c,code:n,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let h=this._csiHandlers[this._collect<<8|n],d=h?h.length-1:-1;for(;d>=0&&(a=h[d](this._params),a!==!0);d--)if(a instanceof Promise)return this._preserveStack(3,h,d,r,c),a;d<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingJoinState=0;break;case 8:do switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}while(++c<e&&(n=t[c])>47&&n<60);c--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:let f=this._escHandlers[this._collect<<8|n],g=f?f.length-1:-1;for(;g>=0&&(a=f[g](),a!==!0);g--)if(a instanceof Promise)return this._preserveStack(4,f,g,r,c),a;g<0&&this._escHandlerFb(this._collect<<8|n),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(let m=c+1;;++m)if(m>=e||(n=t[m])===24||n===26||n===27||n>127&&n<ar){this._dcsParser.put(t,c,m),c=m-1;break}break;case 14:if(a=this._dcsParser.unhook(n!==24&&n!==26),a)return this._preserveStack(6,[],0,r,c),a;n===27&&(r|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let m=c+1;;m++)if(m>=e||(n=t[m])<32||n>127&&n<ar){this._oscParser.put(t,c,m),c=m-1;break}break;case 6:if(a=this._oscParser.end(n!==24&&n!==26),a)return this._preserveStack(5,[],0,r,c),a;n===27&&(r|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break}this.currentState=r&15}}},lee=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,cee=/^[\da-f]+$/;function M$(t){if(!t)return;let e=t.toLowerCase();if(e.indexOf("rgb:")===0){e=e.slice(4);let i=lee.exec(e);if(i){let n=i[1]?15:i[4]?255:i[7]?4095:65535;return[Math.round(parseInt(i[1]||i[4]||i[7]||i[10],16)/n*255),Math.round(parseInt(i[2]||i[5]||i[8]||i[11],16)/n*255),Math.round(parseInt(i[3]||i[6]||i[9]||i[12],16)/n*255)]}}else if(e.indexOf("#")===0&&(e=e.slice(1),cee.exec(e)&&[3,6,9,12].includes(e.length))){let i=e.length/3,n=[0,0,0];for(let r=0;r<3;++r){let s=parseInt(e.slice(i*r,i*r+i),16);n[r]=i===1?s<<4:i===2?s:i===3?s>>4:s>>8}return n}}function _y(t,e){let i=t.toString(16),n=i.length<2?"0"+i:i;switch(e){case 4:return i[0];case 8:return n;case 12:return(n+n).slice(0,3);default:return n+n}}function hee(t,e=16){let[i,n,r]=t;return`rgb:${_y(i,e)}/${_y(n,e)}/${_y(r,e)}`}var uee={"(":0,")":1,"*":2,"+":3,"-":1,".":2},Io=131072,z$=10;function j$(t,e){if(t>24)return e.setWinLines||!1;switch(t){case 1:return!!e.restoreWin;case 2:return!!e.minimizeWin;case 3:return!!e.setWinPosition;case 4:return!!e.setWinSizePixels;case 5:return!!e.raiseWin;case 6:return!!e.lowerWin;case 7:return!!e.refreshWin;case 8:return!!e.setWinSizeChars;case 9:return!!e.maximizeWin;case 10:return!!e.fullscreenWin;case 11:return!!e.getWinState;case 13:return!!e.getWinPosition;case 14:return!!e.getWinSizePixels;case 15:return!!e.getScreenSizePixels;case 16:return!!e.getCellSizePixels;case 18:return!!e.getWinSizeChars;case 19:return!!e.getScreenSizeChars;case 20:return!!e.getIconTitle;case 21:return!!e.getWinTitle;case 22:return!!e.pushTitle;case 23:return!!e.popTitle;case 24:return!!e.setWinLines}return!1}var D$=5e3,B$=0,dee=class extends Ge{constructor(t,e,i,n,r,s,a,c,h=new aee){super(),this._bufferService=t,this._charsetService=e,this._coreService=i,this._logService=n,this._optionsService=r,this._oscLinkService=s,this._coreMouseService=a,this._unicodeService=c,this._parser=h,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new EF,this._utf8Decoder=new RF,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=oi.clone(),this._eraseAttrDataInternal=oi.clone(),this._onRequestBell=this._register(new ve),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new ve),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new ve),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new ve),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new ve),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new ve),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new ve),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new ve),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new ve),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new ve),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new ve),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new ve),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new ve),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new b1(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(d=>this._activeBuffer=d.activeBuffer)),this._parser.setCsiHandlerFallback((d,f)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(d),params:f.toArray()})}),this._parser.setEscHandlerFallback(d=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(d)})}),this._parser.setExecuteHandlerFallback(d=>{this._logService.debug("Unknown EXECUTE code: ",{code:d})}),this._parser.setOscHandlerFallback((d,f,g)=>{this._logService.debug("Unknown OSC code: ",{identifier:d,action:f,data:g})}),this._parser.setDcsHandlerFallback((d,f,g)=>{f==="HOOK"&&(g=g.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(d),action:f,payload:g})}),this._parser.setPrintHandler((d,f,g)=>this.print(d,f,g)),this._parser.registerCsiHandler({final:"@"},d=>this.insertChars(d)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},d=>this.scrollLeft(d)),this._parser.registerCsiHandler({final:"A"},d=>this.cursorUp(d)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},d=>this.scrollRight(d)),this._parser.registerCsiHandler({final:"B"},d=>this.cursorDown(d)),this._parser.registerCsiHandler({final:"C"},d=>this.cursorForward(d)),this._parser.registerCsiHandler({final:"D"},d=>this.cursorBackward(d)),this._parser.registerCsiHandler({final:"E"},d=>this.cursorNextLine(d)),this._parser.registerCsiHandler({final:"F"},d=>this.cursorPrecedingLine(d)),this._parser.registerCsiHandler({final:"G"},d=>this.cursorCharAbsolute(d)),this._parser.registerCsiHandler({final:"H"},d=>this.cursorPosition(d)),this._parser.registerCsiHandler({final:"I"},d=>this.cursorForwardTab(d)),this._parser.registerCsiHandler({final:"J"},d=>this.eraseInDisplay(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},d=>this.eraseInDisplay(d,!0)),this._parser.registerCsiHandler({final:"K"},d=>this.eraseInLine(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},d=>this.eraseInLine(d,!0)),this._parser.registerCsiHandler({final:"L"},d=>this.insertLines(d)),this._parser.registerCsiHandler({final:"M"},d=>this.deleteLines(d)),this._parser.registerCsiHandler({final:"P"},d=>this.deleteChars(d)),this._parser.registerCsiHandler({final:"S"},d=>this.scrollUp(d)),this._parser.registerCsiHandler({final:"T"},d=>this.scrollDown(d)),this._parser.registerCsiHandler({final:"X"},d=>this.eraseChars(d)),this._parser.registerCsiHandler({final:"Z"},d=>this.cursorBackwardTab(d)),this._parser.registerCsiHandler({final:"`"},d=>this.charPosAbsolute(d)),this._parser.registerCsiHandler({final:"a"},d=>this.hPositionRelative(d)),this._parser.registerCsiHandler({final:"b"},d=>this.repeatPrecedingCharacter(d)),this._parser.registerCsiHandler({final:"c"},d=>this.sendDeviceAttributesPrimary(d)),this._parser.registerCsiHandler({prefix:">",final:"c"},d=>this.sendDeviceAttributesSecondary(d)),this._parser.registerCsiHandler({final:"d"},d=>this.linePosAbsolute(d)),this._parser.registerCsiHandler({final:"e"},d=>this.vPositionRelative(d)),this._parser.registerCsiHandler({final:"f"},d=>this.hVPosition(d)),this._parser.registerCsiHandler({final:"g"},d=>this.tabClear(d)),this._parser.registerCsiHandler({final:"h"},d=>this.setMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"h"},d=>this.setModePrivate(d)),this._parser.registerCsiHandler({final:"l"},d=>this.resetMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"l"},d=>this.resetModePrivate(d)),this._parser.registerCsiHandler({final:"m"},d=>this.charAttributes(d)),this._parser.registerCsiHandler({final:"n"},d=>this.deviceStatus(d)),this._parser.registerCsiHandler({prefix:"?",final:"n"},d=>this.deviceStatusPrivate(d)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},d=>this.softReset(d)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},d=>this.setCursorStyle(d)),this._parser.registerCsiHandler({final:"r"},d=>this.setScrollRegion(d)),this._parser.registerCsiHandler({final:"s"},d=>this.saveCursor(d)),this._parser.registerCsiHandler({final:"t"},d=>this.windowOptions(d)),this._parser.registerCsiHandler({final:"u"},d=>this.restoreCursor(d)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},d=>this.insertColumns(d)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},d=>this.deleteColumns(d)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},d=>this.selectProtected(d)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},d=>this.requestMode(d,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},d=>this.requestMode(d,!1)),this._parser.setExecuteHandler(ue.BEL,()=>this.bell()),this._parser.setExecuteHandler(ue.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(ue.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(ue.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(ue.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(ue.BS,()=>this.backspace()),this._parser.setExecuteHandler(ue.HT,()=>this.tab()),this._parser.setExecuteHandler(ue.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(ue.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(cg.IND,()=>this.index()),this._parser.setExecuteHandler(cg.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(cg.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new Nn(d=>(this.setTitle(d),this.setIconName(d),!0))),this._parser.registerOscHandler(1,new Nn(d=>this.setIconName(d))),this._parser.registerOscHandler(2,new Nn(d=>this.setTitle(d))),this._parser.registerOscHandler(4,new Nn(d=>this.setOrReportIndexedColor(d))),this._parser.registerOscHandler(8,new Nn(d=>this.setHyperlink(d))),this._parser.registerOscHandler(10,new Nn(d=>this.setOrReportFgColor(d))),this._parser.registerOscHandler(11,new Nn(d=>this.setOrReportBgColor(d))),this._parser.registerOscHandler(12,new Nn(d=>this.setOrReportCursorColor(d))),this._parser.registerOscHandler(104,new Nn(d=>this.restoreIndexedColor(d))),this._parser.registerOscHandler(110,new Nn(d=>this.restoreFgColor(d))),this._parser.registerOscHandler(111,new Nn(d=>this.restoreBgColor(d))),this._parser.registerOscHandler(112,new Nn(d=>this.restoreCursorColor(d))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let d in yi)this._parser.registerEscHandler({intermediates:"(",final:d},()=>this.selectCharset("("+d)),this._parser.registerEscHandler({intermediates:")",final:d},()=>this.selectCharset(")"+d)),this._parser.registerEscHandler({intermediates:"*",final:d},()=>this.selectCharset("*"+d)),this._parser.registerEscHandler({intermediates:"+",final:d},()=>this.selectCharset("+"+d)),this._parser.registerEscHandler({intermediates:"-",final:d},()=>this.selectCharset("-"+d)),this._parser.registerEscHandler({intermediates:".",final:d},()=>this.selectCharset("."+d)),this._parser.registerEscHandler({intermediates:"/",final:d},()=>this.selectCharset("/"+d));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(d=>(this._logService.error("Parsing error: ",d),d)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new A$((d,f)=>this.requestStatusString(d,f)))}getAttrData(){return this._curAttrData}_preserveStack(t,e,i,n){this._parseStack.paused=!0,this._parseStack.cursorStartX=t,this._parseStack.cursorStartY=e,this._parseStack.decodedLength=i,this._parseStack.position=n}_logSlowResolvingAsync(t){this._logService.logLevel<=3&&Promise.race([t,new Promise((e,i)=>setTimeout(()=>i("#SLOW_TIMEOUT"),D$))]).catch(e=>{if(e!=="#SLOW_TIMEOUT")throw e;console.warn(`async parser handler taking longer than ${D$} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(t,e){let i,n=this._activeBuffer.x,r=this._activeBuffer.y,s=0,a=this._parseStack.paused;if(a){if(i=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,e))return this._logSlowResolvingAsync(i),i;n=this._parseStack.cursorStartX,r=this._parseStack.cursorStartY,this._parseStack.paused=!1,t.length>Io&&(s=this._parseStack.position+Io)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof t=="string"?` "${t}"`:` "${Array.prototype.map.call(t,d=>String.fromCharCode(d)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof t=="string"?t.split("").map(d=>d.charCodeAt(0)):t),this._parseBuffer.length<t.length&&this._parseBuffer.length<Io&&(this._parseBuffer=new Uint32Array(Math.min(t.length,Io))),a||this._dirtyRowTracker.clearRange(),t.length>Io)for(let d=s;d<t.length;d+=Io){let f=d+Io<t.length?d+Io:t.length,g=typeof t=="string"?this._stringDecoder.decode(t.substring(d,f),this._parseBuffer):this._utf8Decoder.decode(t.subarray(d,f),this._parseBuffer);if(i=this._parser.parse(this._parseBuffer,g))return this._preserveStack(n,r,g,d),this._logSlowResolvingAsync(i),i}else if(!a){let d=typeof t=="string"?this._stringDecoder.decode(t,this._parseBuffer):this._utf8Decoder.decode(t,this._parseBuffer);if(i=this._parser.parse(this._parseBuffer,d))return this._preserveStack(n,r,d,0),this._logSlowResolvingAsync(i),i}(this._activeBuffer.x!==n||this._activeBuffer.y!==r)&&this._onCursorMove.fire();let c=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),h=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);h<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(h,this._bufferService.rows-1),end:Math.min(c,this._bufferService.rows-1)})}print(t,e,i){let n,r,s=this._charsetService.charset,a=this._optionsService.rawOptions.screenReaderMode,c=this._bufferService.cols,h=this._coreService.decPrivateModes.wraparound,d=this._coreService.modes.insertMode,f=this._curAttrData,g=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&i-e>0&&g.getWidth(this._activeBuffer.x-1)===2&&g.setCellFromCodepoint(this._activeBuffer.x-1,0,1,f);let m=this._parser.precedingJoinState;for(let v=e;v<i;++v){if(n=t[v],n<127&&s){let x=s[String.fromCharCode(n)];x&&(n=x.charCodeAt(0))}let S=this._unicodeService.charProperties(n,m);r=Ua.extractWidth(S);let _=Ua.extractShouldJoin(S),w=_?Ua.extractWidth(m):0;if(m=S,a&&this._onA11yChar.fire(Go(n)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+r-w>c){if(h){let x=g,Q=this._activeBuffer.x-w;for(this._activeBuffer.x=w,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),g=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),w>0&&g instanceof Su&&g.copyCellsFrom(x,Q,0,w,!1);Q<c;)x.setCellFromCodepoint(Q++,0,1,f)}else if(this._activeBuffer.x=c-1,r===2)continue}if(_&&this._activeBuffer.x){let x=g.getWidth(this._activeBuffer.x-1)?1:2;g.addCodepointToCell(this._activeBuffer.x-x,n,r);for(let Q=r-w;--Q>=0;)g.setCellFromCodepoint(this._activeBuffer.x++,0,0,f);continue}if(d&&(g.insertCells(this._activeBuffer.x,r-w,this._activeBuffer.getNullCell(f)),g.getWidth(c-1)===2&&g.setCellFromCodepoint(c-1,0,1,f)),g.setCellFromCodepoint(this._activeBuffer.x++,n,r,f),r>0)for(;--r;)g.setCellFromCodepoint(this._activeBuffer.x++,0,0,f)}this._parser.precedingJoinState=m,this._activeBuffer.x<c&&i-e>0&&g.getWidth(this._activeBuffer.x)===0&&!g.hasContent(this._activeBuffer.x)&&g.setCellFromCodepoint(this._activeBuffer.x,0,1,f),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(t,e){return t.final==="t"&&!t.prefix&&!t.intermediates?this._parser.registerCsiHandler(t,i=>j$(i.params[0],this._optionsService.rawOptions.windowOptions)?e(i):!0):this._parser.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._parser.registerDcsHandler(t,new A$(e))}registerEscHandler(t,e){return this._parser.registerEscHandler(t,e)}registerOscHandler(t,e){return this._parser.registerOscHandler(t,new Nn(e))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){var t;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&((t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y))!=null&&t.isWrapped)){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);e.hasWidth(this._activeBuffer.x)&&!e.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-t),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(t=this._bufferService.cols-1){this._activeBuffer.x=Math.min(t,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(t,e){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=t,this._activeBuffer.y=this._activeBuffer.scrollTop+e):(this._activeBuffer.x=t,this._activeBuffer.y=e),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(t,e){this._restrictCursor(),this._setCursor(this._activeBuffer.x+t,this._activeBuffer.y+e)}cursorUp(t){let e=this._activeBuffer.y-this._activeBuffer.scrollTop;return e>=0?this._moveCursor(0,-Math.min(e,t.params[0]||1)):this._moveCursor(0,-(t.params[0]||1)),!0}cursorDown(t){let e=this._activeBuffer.scrollBottom-this._activeBuffer.y;return e>=0?this._moveCursor(0,Math.min(e,t.params[0]||1)):this._moveCursor(0,t.params[0]||1),!0}cursorForward(t){return this._moveCursor(t.params[0]||1,0),!0}cursorBackward(t){return this._moveCursor(-(t.params[0]||1),0),!0}cursorNextLine(t){return this.cursorDown(t),this._activeBuffer.x=0,!0}cursorPrecedingLine(t){return this.cursorUp(t),this._activeBuffer.x=0,!0}cursorCharAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(t){return this._setCursor(t.length>=2?(t.params[1]||1)-1:0,(t.params[0]||1)-1),!0}charPosAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(t){return this._moveCursor(t.params[0]||1,0),!0}linePosAbsolute(t){return this._setCursor(this._activeBuffer.x,(t.params[0]||1)-1),!0}vPositionRelative(t){return this._moveCursor(0,t.params[0]||1),!0}hVPosition(t){return this.cursorPosition(t),!0}tabClear(t){let e=t.params[0];return e===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:e===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(t){let e=t.params[0];return e===1&&(this._curAttrData.bg|=536870912),(e===2||e===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(t,e,i,n=!1,r=!1){let s=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);s.replaceCells(e,i,this._activeBuffer.getNullCell(this._eraseAttrData()),r),n&&(s.isWrapped=!1)}_resetBufferLine(t,e=!1){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);i&&(i.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),e),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+t),i.isWrapped=!1)}eraseInDisplay(t,e=!1){var n;this._restrictCursor(this._bufferService.cols);let i;switch(t.params[0]){case 0:for(i=this._activeBuffer.y,this._dirtyRowTracker.markDirty(i),this._eraseInBufferLine(i++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);i<this._bufferService.rows;i++)this._resetBufferLine(i,e);this._dirtyRowTracker.markDirty(i);break;case 1:for(i=this._activeBuffer.y,this._dirtyRowTracker.markDirty(i),this._eraseInBufferLine(i,0,this._activeBuffer.x+1,!0,e),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(i+1).isWrapped=!1);i--;)this._resetBufferLine(i,e);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(i=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,i-1);i--&&!((n=this._activeBuffer.lines.get(this._activeBuffer.ybase+i))!=null&&n.getTrimmedLength()););for(;i>=0;i--)this._bufferService.scroll(this._eraseAttrData())}else{for(i=this._bufferService.rows,this._dirtyRowTracker.markDirty(i-1);i--;)this._resetBufferLine(i,e);this._dirtyRowTracker.markDirty(0)}break;case 3:let r=this._activeBuffer.lines.length-this._bufferService.rows;r>0&&(this._activeBuffer.lines.trimStart(r),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-r,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-r,0),this._onScroll.fire(0));break}return!0}eraseInLine(t,e=!1){switch(this._restrictCursor(this._bufferService.cols),t.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,e);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,e);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let i=this._activeBuffer.ybase+this._activeBuffer.y,n=this._bufferService.rows-1-this._activeBuffer.scrollBottom,r=this._bufferService.rows-1+this._activeBuffer.ybase-n+1;for(;e--;)this._activeBuffer.lines.splice(r-1,1),this._activeBuffer.lines.splice(i,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let i=this._activeBuffer.ybase+this._activeBuffer.y,n;for(n=this._bufferService.rows-1-this._activeBuffer.scrollBottom,n=this._bufferService.rows-1+this._activeBuffer.ybase-n;e--;)this._activeBuffer.lines.splice(i,1),this._activeBuffer.lines.splice(n,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.insertCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.deleteCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(oi));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let i=this._activeBuffer.scrollTop;i<=this._activeBuffer.scrollBottom;++i){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+i);n.deleteCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let i=this._activeBuffer.scrollTop;i<=this._activeBuffer.scrollBottom;++i){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+i);n.insertCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let i=this._activeBuffer.scrollTop;i<=this._activeBuffer.scrollBottom;++i){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+i);n.insertCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let i=this._activeBuffer.scrollTop;i<=this._activeBuffer.scrollBottom;++i){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+i);n.deleteCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(t.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(t){let e=this._parser.precedingJoinState;if(!e)return!0;let i=t.params[0]||1,n=Ua.extractWidth(e),r=this._activeBuffer.x-n,s=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(r),a=new Uint32Array(s.length*i),c=0;for(let d=0;d<s.length;){let f=s.codePointAt(d)||0;a[c++]=f,d+=f>65535?2:1}let h=c;for(let d=1;d<i;++d)a.copyWithin(h,0,c),h+=c;return this.print(a,0,h),!0}sendDeviceAttributesPrimary(t){return t.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(ue.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(ue.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(t){return t.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(ue.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(ue.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(t.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(ue.ESC+"[>83;40003;0c")),!0}_is(t){return(this._optionsService.rawOptions.termName+"").indexOf(t)===0}setMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,Xa),this._charsetService.setgCharset(1,Xa),this._charsetService.setgCharset(2,Xa),this._charsetService.setgCharset(3,Xa);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),t.params[e]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(t,e){(_=>(_[_.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",_[_.SET=1]="SET",_[_.RESET=2]="RESET",_[_.PERMANENTLY_SET=3]="PERMANENTLY_SET",_[_.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(void 0||(i={}));let n=this._coreService.decPrivateModes,{activeProtocol:r,activeEncoding:s}=this._coreMouseService,a=this._coreService,{buffers:c,cols:h}=this._bufferService,{active:d,alt:f}=c,g=this._optionsService.rawOptions,m=(_,w)=>(a.triggerDataEvent(`${ue.ESC}[${e?"":"?"}${_};${w}$y`),!0),v=_=>_?1:2,S=t.params[0];return e?S===2?m(S,4):S===4?m(S,v(a.modes.insertMode)):S===12?m(S,3):S===20?m(S,v(g.convertEol)):m(S,0):S===1?m(S,v(n.applicationCursorKeys)):S===3?m(S,g.windowOptions.setWinLines?h===80?2:h===132?1:0:0):S===6?m(S,v(n.origin)):S===7?m(S,v(n.wraparound)):S===8?m(S,3):S===9?m(S,v(r==="X10")):S===12?m(S,v(g.cursorBlink)):S===25?m(S,v(!a.isCursorHidden)):S===45?m(S,v(n.reverseWraparound)):S===66?m(S,v(n.applicationKeypad)):S===67?m(S,4):S===1e3?m(S,v(r==="VT200")):S===1002?m(S,v(r==="DRAG")):S===1003?m(S,v(r==="ANY")):S===1004?m(S,v(n.sendFocus)):S===1005?m(S,4):S===1006?m(S,v(s==="SGR")):S===1015?m(S,4):S===1016?m(S,v(s==="SGR_PIXELS")):S===1048?m(S,1):S===47||S===1047||S===1049?m(S,v(d===f)):S===2004?m(S,v(n.bracketedPasteMode)):S===2026?m(S,v(n.synchronizedOutput)):m(S,0)}_updateAttrColor(t,e,i,n,r){return e===2?(t|=50331648,t&=-16777216,t|=Td.fromColorRGB([i,n,r])):e===5&&(t&=-50331904,t|=33554432|i&255),t}_extractColor(t,e,i){let n=[0,0,-1,0,0,0],r=0,s=0;do{if(n[s+r]=t.params[e+s],t.hasSubParams(e+s)){let a=t.getSubParams(e+s),c=0;do n[1]===5&&(r=1),n[s+c+1+r]=a[c];while(++c<a.length&&c+s+1+r<n.length);break}if(n[1]===5&&s+r>=2||n[1]===2&&s+r>=5)break;n[1]&&(r=1)}while(++s+e<t.length&&s+r<n.length);for(let a=2;a<n.length;++a)n[a]===-1&&(n[a]=0);switch(n[0]){case 38:i.fg=this._updateAttrColor(i.fg,n[1],n[3],n[4],n[5]);break;case 48:i.bg=this._updateAttrColor(i.bg,n[1],n[3],n[4],n[5]);break;case 58:i.extended=i.extended.clone(),i.extended.underlineColor=this._updateAttrColor(i.extended.underlineColor,n[1],n[3],n[4],n[5])}return s}_processUnderline(t,e){e.extended=e.extended.clone(),(!~t||t>5)&&(t=1),e.extended.underlineStyle=t,e.fg|=268435456,t===0&&(e.fg&=-268435457),e.updateExtended()}_processSGR0(t){t.fg=oi.fg,t.bg=oi.bg,t.extended=t.extended.clone(),t.extended.underlineStyle=0,t.extended.underlineColor&=-67108864,t.updateExtended()}charAttributes(t){if(t.length===1&&t.params[0]===0)return this._processSGR0(this._curAttrData),!0;let e=t.length,i,n=this._curAttrData;for(let r=0;r<e;r++)i=t.params[r],i>=30&&i<=37?(n.fg&=-50331904,n.fg|=16777216|i-30):i>=40&&i<=47?(n.bg&=-50331904,n.bg|=16777216|i-40):i>=90&&i<=97?(n.fg&=-50331904,n.fg|=16777216|i-90|8):i>=100&&i<=107?(n.bg&=-50331904,n.bg|=16777216|i-100|8):i===0?this._processSGR0(n):i===1?n.fg|=134217728:i===3?n.bg|=67108864:i===4?(n.fg|=268435456,this._processUnderline(t.hasSubParams(r)?t.getSubParams(r)[0]:1,n)):i===5?n.fg|=536870912:i===7?n.fg|=67108864:i===8?n.fg|=1073741824:i===9?n.fg|=2147483648:i===2?n.bg|=134217728:i===21?this._processUnderline(2,n):i===22?(n.fg&=-134217729,n.bg&=-134217729):i===23?n.bg&=-67108865:i===24?(n.fg&=-268435457,this._processUnderline(0,n)):i===25?n.fg&=-536870913:i===27?n.fg&=-67108865:i===28?n.fg&=-1073741825:i===29?n.fg&=2147483647:i===39?(n.fg&=-67108864,n.fg|=oi.fg&16777215):i===49?(n.bg&=-67108864,n.bg|=oi.bg&16777215):i===38||i===48||i===58?r+=this._extractColor(t,r,n):i===53?n.bg|=1073741824:i===55?n.bg&=-1073741825:i===59?(n.extended=n.extended.clone(),n.extended.underlineColor=-1,n.updateExtended()):i===100?(n.fg&=-67108864,n.fg|=oi.fg&16777215,n.bg&=-67108864,n.bg|=oi.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",i);return!0}deviceStatus(t){switch(t.params[0]){case 5:this._coreService.triggerDataEvent(`${ue.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,i=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${ue.ESC}[${e};${i}R`);break}return!0}deviceStatusPrivate(t){switch(t.params[0]){case 6:let e=this._activeBuffer.y+1,i=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${ue.ESC}[?${e};${i}R`);break}return!0}softReset(t){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=oi.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(t){let e=t.length===0?1:t.params[0];if(e===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(e){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let i=e%2===1;this._coreService.decPrivateModes.cursorBlink=i}return!0}setScrollRegion(t){let e=t.params[0]||1,i;return(t.length<2||(i=t.params[1])>this._bufferService.rows||i===0)&&(i=this._bufferService.rows),i>e&&(this._activeBuffer.scrollTop=e-1,this._activeBuffer.scrollBottom=i-1,this._setCursor(0,0)),!0}windowOptions(t){if(!j$(t.params[0],this._optionsService.rawOptions.windowOptions))return!0;let e=t.length>1?t.params[1]:0;switch(t.params[0]){case 14:e!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${ue.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(e===0||e===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>z$&&this._windowTitleStack.shift()),(e===0||e===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>z$&&this._iconNameStack.shift());break;case 23:(e===0||e===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(e===0||e===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(t){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(t){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(t){return this._windowTitle=t,this._onTitleChange.fire(t),!0}setIconName(t){return this._iconName=t,!0}setOrReportIndexedColor(t){let e=[],i=t.split(";");for(;i.length>1;){let n=i.shift(),r=i.shift();if(/^\d+$/.exec(n)){let s=parseInt(n);if(L$(s))if(r==="?")e.push({type:0,index:s});else{let a=M$(r);a&&e.push({type:1,index:s,color:a})}}}return e.length&&this._onColor.fire(e),!0}setHyperlink(t){let e=t.indexOf(";");if(e===-1)return!0;let i=t.slice(0,e).trim(),n=t.slice(e+1);return n?this._createHyperlink(i,n):i.trim()?!1:this._finishHyperlink()}_createHyperlink(t,e){this._getCurrentLinkId()&&this._finishHyperlink();let i=t.split(":"),n,r=i.findIndex(s=>s.startsWith("id="));return r!==-1&&(n=i[r].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:n,uri:e}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(t,e){let i=t.split(";");for(let n=0;n<i.length&&!(e>=this._specialColors.length);++n,++e)if(i[n]==="?")this._onColor.fire([{type:0,index:this._specialColors[e]}]);else{let r=M$(i[n]);r&&this._onColor.fire([{type:1,index:this._specialColors[e],color:r}])}return!0}setOrReportFgColor(t){return this._setOrReportSpecialColor(t,0)}setOrReportBgColor(t){return this._setOrReportSpecialColor(t,1)}setOrReportCursorColor(t){return this._setOrReportSpecialColor(t,2)}restoreIndexedColor(t){if(!t)return this._onColor.fire([{type:2}]),!0;let e=[],i=t.split(";");for(let n=0;n<i.length;++n)if(/^\d+$/.exec(i[n])){let r=parseInt(i[n]);L$(r)&&e.push({type:2,index:r})}return e.length&&this._onColor.fire(e),!0}restoreFgColor(t){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(t){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(t){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,Xa),!0}selectCharset(t){return t.length!==2?(this.selectDefaultCharset(),!0):(t[0]==="/"||this._charsetService.setgCharset(uee[t[0]],yi[t[1]]||Xa),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let t=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,t,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=oi.clone(),this._eraseAttrDataInternal=oi.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(t){return this._charsetService.setgLevel(t),!0}screenAlignmentPattern(){let t=new fr;t.content=1<<22|69,t.fg=this._curAttrData.fg,t.bg=this._curAttrData.bg,this._setCursor(0,0);for(let e=0;e<this._bufferService.rows;++e){let i=this._activeBuffer.ybase+this._activeBuffer.y+e,n=this._activeBuffer.lines.get(i);n&&(n.fill(t),n.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(t,e){let i=a=>(this._coreService.triggerDataEvent(`${ue.ESC}${a}${ue.ESC}\\`),!0),n=this._bufferService.buffer,r=this._optionsService.rawOptions;return i(t==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:t==='"p'?'P1$r61;1"p':t==="r"?`P1$r${n.scrollTop+1};${n.scrollBottom+1}r`:t==="m"?"P1$r0m":t===" q"?`P1$r${{block:2,underline:4,bar:6}[r.cursorStyle]-(r.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(t,e){this._dirtyRowTracker.markRangeDirty(t,e)}},b1=class{constructor(t){this._bufferService=t,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(t){t<this.start?this.start=t:t>this.end&&(this.end=t)}markRangeDirty(t,e){t>e&&(B$=t,t=e,e=B$),t<this.start&&(this.start=t),e>this.end&&(this.end=e)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};b1=Vt([_e(0,sn)],b1);function L$(t){return 0<=t&&t<256}var fee=5e7,X$=12,pee=50,gee=class extends Ge{constructor(t){super(),this._action=t,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new ve),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(t,e){if(e!==void 0&&this._syncCalls>e){this._syncCalls=0;return}if(this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let i;for(;i=this._writeBuffer.shift();){this._action(i);let n=this._callbacks.shift();n&&n()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(t,e){if(this._pendingData>fee)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e)}_innerWrite(t=0,e=!0){let i=t||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let n=this._writeBuffer[this._bufferOffset],r=this._action(n,e);if(r){let a=c=>performance.now()-i>=X$?setTimeout(()=>this._innerWrite(0,c)):this._innerWrite(i,c);r.catch(c=>(queueMicrotask(()=>{throw c}),Promise.resolve(!1))).then(a);return}let s=this._callbacks[this._bufferOffset];if(s&&s(),this._bufferOffset++,this._pendingData-=n.length,performance.now()-i>=X$)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>pee&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},_1=class{constructor(t){this._bufferService=t,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(t){let e=this._bufferService.buffer;if(t.id===void 0){let c=e.addMarker(e.ybase+e.y),h={data:t,id:this._nextId++,lines:[c]};return c.onDispose(()=>this._removeMarkerFromLink(h,c)),this._dataByLinkId.set(h.id,h),h.id}let i=t,n=this._getEntryIdKey(i),r=this._entriesWithId.get(n);if(r)return this.addLineToLink(r.id,e.ybase+e.y),r.id;let s=e.addMarker(e.ybase+e.y),a={id:this._nextId++,key:this._getEntryIdKey(i),data:i,lines:[s]};return s.onDispose(()=>this._removeMarkerFromLink(a,s)),this._entriesWithId.set(a.key,a),this._dataByLinkId.set(a.id,a),a.id}addLineToLink(t,e){let i=this._dataByLinkId.get(t);if(i&&i.lines.every(n=>n.line!==e)){let n=this._bufferService.buffer.addMarker(e);i.lines.push(n),n.onDispose(()=>this._removeMarkerFromLink(i,n))}}getLinkData(t){var e;return(e=this._dataByLinkId.get(t))==null?void 0:e.data}_getEntryIdKey(t){return`${t.id};;${t.uri}`}_removeMarkerFromLink(t,e){let i=t.lines.indexOf(e);i!==-1&&(t.lines.splice(i,1),t.lines.length===0&&(t.data.id!==void 0&&this._entriesWithId.delete(t.key),this._dataByLinkId.delete(t.id)))}};_1=Vt([_e(0,sn)],_1);var N$=!1,mee=class extends Ge{constructor(t){super(),this._windowsWrappingHeuristics=this._register(new Ic),this._onBinary=this._register(new ve),this.onBinary=this._onBinary.event,this._onData=this._register(new ve),this.onData=this._onData.event,this._onLineFeed=this._register(new ve),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new ve),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new ve),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new ve),this._instantiationService=new XJ,this.optionsService=this._register(new GJ(t)),this._instantiationService.setService(on,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(O1)),this._instantiationService.setService(sn,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(m1)),this._instantiationService.setService(sz,this._logService),this.coreService=this._register(this._instantiationService.createInstance(v1)),this._instantiationService.setService(ml,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(y1)),this._instantiationService.setService(rz,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Ua)),this._instantiationService.setService(jF,this.unicodeService),this._charsetService=this._instantiationService.createInstance(tee),this._instantiationService.setService(zF,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(_1),this._instantiationService.setService(oz,this._oscLinkService),this._inputHandler=this._register(new dee(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(Li.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(Li.forward(this._bufferService.onResize,this._onResize)),this._register(Li.forward(this.coreService.onData,this._onData)),this._register(Li.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new gee((e,i)=>this._inputHandler.parse(e,i))),this._register(Li.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new ve),this._onScroll.event(t=>{var e;(e=this._onScrollApi)==null||e.fire(t.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(t){for(let e in t)this.optionsService.options[e]=t[e]}write(t,e){this._writeBuffer.write(t,e)}writeSync(t,e){this._logService.logLevel<=3&&!N$&&(this._logService.warn("writeSync is unreliable and will be removed soon."),N$=!0),this._writeBuffer.writeSync(t,e)}input(t,e=!0){this.coreService.triggerDataEvent(t,e)}resize(t,e){isNaN(t)||isNaN(e)||(t=Math.max(t,Bz),e=Math.max(e,Lz),this._bufferService.resize(t,e))}scroll(t,e=!1){this._bufferService.scroll(t,e)}scrollLines(t,e){this._bufferService.scrollLines(t,e)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}registerEscHandler(t,e){return this._inputHandler.registerEscHandler(t,e)}registerDcsHandler(t,e){return this._inputHandler.registerDcsHandler(t,e)}registerCsiHandler(t,e){return this._inputHandler.registerCsiHandler(t,e)}registerOscHandler(t,e){return this._inputHandler.registerOscHandler(t,e)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let t=!1,e=this.optionsService.rawOptions.windowsPty;e&&e.buildNumber!==void 0&&e.buildNumber!==void 0?t=e.backend==="conpty"&&e.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(t=!0),t?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let t=[];t.push(this.onLineFeed(R$.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},()=>(R$(this._bufferService),!1))),this._windowsWrappingHeuristics.value=zt(()=>{for(let e of t)e.dispose()})}}},Oee={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function vee(t,e,i,n){var a;let r={type:0,cancel:!1,key:void 0},s=(t.shiftKey?1:0)|(t.altKey?2:0)|(t.ctrlKey?4:0)|(t.metaKey?8:0);switch(t.keyCode){case 0:t.key==="UIKeyInputUpArrow"?e?r.key=ue.ESC+"OA":r.key=ue.ESC+"[A":t.key==="UIKeyInputLeftArrow"?e?r.key=ue.ESC+"OD":r.key=ue.ESC+"[D":t.key==="UIKeyInputRightArrow"?e?r.key=ue.ESC+"OC":r.key=ue.ESC+"[C":t.key==="UIKeyInputDownArrow"&&(e?r.key=ue.ESC+"OB":r.key=ue.ESC+"[B");break;case 8:r.key=t.ctrlKey?"\b":ue.DEL,t.altKey&&(r.key=ue.ESC+r.key);break;case 9:if(t.shiftKey){r.key=ue.ESC+"[Z";break}r.key=ue.HT,r.cancel=!0;break;case 13:r.key=t.altKey?ue.ESC+ue.CR:ue.CR,r.cancel=!0;break;case 27:r.key=ue.ESC,t.altKey&&(r.key=ue.ESC+ue.ESC),r.cancel=!0;break;case 37:if(t.metaKey)break;s?r.key=ue.ESC+"[1;"+(s+1)+"D":e?r.key=ue.ESC+"OD":r.key=ue.ESC+"[D";break;case 39:if(t.metaKey)break;s?r.key=ue.ESC+"[1;"+(s+1)+"C":e?r.key=ue.ESC+"OC":r.key=ue.ESC+"[C";break;case 38:if(t.metaKey)break;s?r.key=ue.ESC+"[1;"+(s+1)+"A":e?r.key=ue.ESC+"OA":r.key=ue.ESC+"[A";break;case 40:if(t.metaKey)break;s?r.key=ue.ESC+"[1;"+(s+1)+"B":e?r.key=ue.ESC+"OB":r.key=ue.ESC+"[B";break;case 45:!t.shiftKey&&!t.ctrlKey&&(r.key=ue.ESC+"[2~");break;case 46:s?r.key=ue.ESC+"[3;"+(s+1)+"~":r.key=ue.ESC+"[3~";break;case 36:s?r.key=ue.ESC+"[1;"+(s+1)+"H":e?r.key=ue.ESC+"OH":r.key=ue.ESC+"[H";break;case 35:s?r.key=ue.ESC+"[1;"+(s+1)+"F":e?r.key=ue.ESC+"OF":r.key=ue.ESC+"[F";break;case 33:t.shiftKey?r.type=2:t.ctrlKey?r.key=ue.ESC+"[5;"+(s+1)+"~":r.key=ue.ESC+"[5~";break;case 34:t.shiftKey?r.type=3:t.ctrlKey?r.key=ue.ESC+"[6;"+(s+1)+"~":r.key=ue.ESC+"[6~";break;case 112:s?r.key=ue.ESC+"[1;"+(s+1)+"P":r.key=ue.ESC+"OP";break;case 113:s?r.key=ue.ESC+"[1;"+(s+1)+"Q":r.key=ue.ESC+"OQ";break;case 114:s?r.key=ue.ESC+"[1;"+(s+1)+"R":r.key=ue.ESC+"OR";break;case 115:s?r.key=ue.ESC+"[1;"+(s+1)+"S":r.key=ue.ESC+"OS";break;case 116:s?r.key=ue.ESC+"[15;"+(s+1)+"~":r.key=ue.ESC+"[15~";break;case 117:s?r.key=ue.ESC+"[17;"+(s+1)+"~":r.key=ue.ESC+"[17~";break;case 118:s?r.key=ue.ESC+"[18;"+(s+1)+"~":r.key=ue.ESC+"[18~";break;case 119:s?r.key=ue.ESC+"[19;"+(s+1)+"~":r.key=ue.ESC+"[19~";break;case 120:s?r.key=ue.ESC+"[20;"+(s+1)+"~":r.key=ue.ESC+"[20~";break;case 121:s?r.key=ue.ESC+"[21;"+(s+1)+"~":r.key=ue.ESC+"[21~";break;case 122:s?r.key=ue.ESC+"[23;"+(s+1)+"~":r.key=ue.ESC+"[23~";break;case 123:s?r.key=ue.ESC+"[24;"+(s+1)+"~":r.key=ue.ESC+"[24~";break;default:if(t.ctrlKey&&!t.shiftKey&&!t.altKey&&!t.metaKey)t.keyCode>=65&&t.keyCode<=90?r.key=String.fromCharCode(t.keyCode-64):t.keyCode===32?r.key=ue.NUL:t.keyCode>=51&&t.keyCode<=55?r.key=String.fromCharCode(t.keyCode-51+27):t.keyCode===56?r.key=ue.DEL:t.keyCode===219?r.key=ue.ESC:t.keyCode===220?r.key=ue.FS:t.keyCode===221&&(r.key=ue.GS);else if((!i||n)&&t.altKey&&!t.metaKey){let c=(a=Oee[t.keyCode])==null?void 0:a[t.shiftKey?1:0];if(c)r.key=ue.ESC+c;else if(t.keyCode>=65&&t.keyCode<=90){let h=t.ctrlKey?t.keyCode-64:t.keyCode+32,d=String.fromCharCode(h);t.shiftKey&&(d=d.toUpperCase()),r.key=ue.ESC+d}else if(t.keyCode===32)r.key=ue.ESC+(t.ctrlKey?ue.NUL:" ");else if(t.key==="Dead"&&t.code.startsWith("Key")){let h=t.code.slice(3,4);t.shiftKey||(h=h.toLowerCase()),r.key=ue.ESC+h,r.cancel=!0}}else i&&!t.altKey&&!t.ctrlKey&&!t.shiftKey&&t.metaKey?t.keyCode===65&&(r.type=1):t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.keyCode>=48&&t.key.length===1?r.key=t.key:t.key&&t.ctrlKey&&(t.key==="_"&&(r.key=ue.US),t.key==="@"&&(r.key=ue.NUL));break}return r}var Ut=0,yee=class{constructor(t){this._getKey=t,this._array=[],this._insertedValues=[],this._flushInsertedTask=new lm,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new lm,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(t){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(t)}_flushInserted(){let t=this._insertedValues.sort((r,s)=>this._getKey(r)-this._getKey(s)),e=0,i=0,n=new Array(this._array.length+this._insertedValues.length);for(let r=0;r<n.length;r++)i>=this._array.length||this._getKey(t[e])<=this._getKey(this._array[i])?(n[r]=t[e],e++):n[r]=this._array[i++];this._array=n,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(t){if(this._flushCleanupInserted(),this._array.length===0)return!1;let e=this._getKey(t);if(e===void 0||(Ut=this._search(e),Ut===-1)||this._getKey(this._array[Ut])!==e)return!1;do if(this._array[Ut]===t)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Ut),!0;while(++Ut<this._array.length&&this._getKey(this._array[Ut])===e);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let t=this._deletedIndices.sort((r,s)=>r-s),e=0,i=new Array(this._array.length-t.length),n=0;for(let r=0;r<this._array.length;r++)t[e]===r?e++:i[n++]=this._array[r];this._array=i,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ut=this._search(t),!(Ut<0||Ut>=this._array.length)&&this._getKey(this._array[Ut])===t))do yield this._array[Ut];while(++Ut<this._array.length&&this._getKey(this._array[Ut])===t)}forEachByKey(t,e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Ut=this._search(t),!(Ut<0||Ut>=this._array.length)&&this._getKey(this._array[Ut])===t))do e(this._array[Ut]);while(++Ut<this._array.length&&this._getKey(this._array[Ut])===t)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(t){let e=0,i=this._array.length-1;for(;i>=e;){let n=e+i>>1,r=this._getKey(this._array[n]);if(r>t)i=n-1;else if(r<t)e=n+1;else{for(;n>0&&this._getKey(this._array[n-1])===t;)n--;return n}}return e}},xy=0,Z$=0,See=class extends Ge{constructor(){super(),this._decorations=new yee(t=>t==null?void 0:t.marker.line),this._onDecorationRegistered=this._register(new ve),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new ve),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(zt(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(t){if(t.marker.isDisposed)return;let e=new bee(t);if(e){let i=e.marker.onDispose(()=>e.dispose()),n=e.onDispose(()=>{n.dispose(),e&&(this._decorations.delete(e)&&this._onDecorationRemoved.fire(e),i.dispose())});this._decorations.insert(e),this._onDecorationRegistered.fire(e)}return e}reset(){for(let t of this._decorations.values())t.dispose();this._decorations.clear()}*getDecorationsAtCell(t,e,i){let n=0,r=0;for(let s of this._decorations.getKeyIterator(e))n=s.options.x??0,r=n+(s.options.width??1),t>=n&&t<r&&(!i||(s.options.layer??"bottom")===i)&&(yield s)}forEachDecorationAtCell(t,e,i,n){this._decorations.forEachByKey(e,r=>{xy=r.options.x??0,Z$=xy+(r.options.width??1),t>=xy&&t<Z$&&(!i||(r.options.layer??"bottom")===i)&&n(r)})}},bee=class extends na{constructor(t){super(),this.options=t,this.onRenderEmitter=this.add(new ve),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new ve),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=t.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=Xt.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=Xt.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},_ee=1e3,xee=class{constructor(t,e=_ee){this._renderCallback=t,this._debounceThresholdMS=e,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(t,e,i){this._rowCount=i,t=t!==void 0?t:0,e=e!==void 0?e:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,t):t,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,e):e;let n=performance.now();if(n-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=n,this._innerRefresh();else if(!this._additionalRefreshRequested){let r=n-this._lastRefreshMs,s=this._debounceThresholdMS-r;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},s)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let t=Math.max(this._rowStart,0),e=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(t,e)}},W$=20,cm=class extends Ge{constructor(t,e,i,n){super(),this._terminal=t,this._coreBrowserService=i,this._renderService=n,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let r=this._coreBrowserService.mainDocument;this._accessibilityContainer=r.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=r.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let s=0;s<this._terminal.rows;s++)this._rowElements[s]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[s]);if(this._topBoundaryFocusListener=s=>this._handleBoundaryFocus(s,0),this._bottomBoundaryFocusListener=s=>this._handleBoundaryFocus(s,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=r.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new xee(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(s=>this._handleResize(s.rows))),this._register(this._terminal.onRender(s=>this._refreshRows(s.start,s.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(s=>this._handleChar(s))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
156
- `))),this._register(this._terminal.onA11yTab(s=>this._handleTab(s))),this._register(this._terminal.onKey(s=>this._handleKey(s.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(Xe(r,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(zt(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(t){for(let e=0;e<t;e++)this._handleChar(" ")}_handleChar(t){this._liveRegionLineCount<W$+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==t&&(this._charsToAnnounce+=t):this._charsToAnnounce+=t,t===`
157
- `&&(this._liveRegionLineCount++,this._liveRegionLineCount===W$+1&&(this._liveRegion.textContent+=ZS.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(t){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(t)||this._charsToConsume.push(t)}_refreshRows(t,e){this._liveRegionDebouncer.refresh(t,e,this._terminal.rows)}_renderRows(t,e){let i=this._terminal.buffer,n=i.lines.length.toString();for(let r=t;r<=e;r++){let s=i.lines.get(i.ydisp+r),a=[],c=(s==null?void 0:s.translateToString(!0,void 0,void 0,a))||"",h=(i.ydisp+r+1).toString(),d=this._rowElements[r];d&&(c.length===0?(d.textContent=" ",this._rowColumns.set(d,[0,1])):(d.textContent=c,this._rowColumns.set(d,a)),d.setAttribute("aria-posinset",h),d.setAttribute("aria-setsize",n),this._alignRowWidth(d))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(t,e){let i=t.target,n=this._rowElements[e===0?1:this._rowElements.length-2],r=i.getAttribute("aria-posinset"),s=e===0?"1":`${this._terminal.buffer.lines.length}`;if(r===s||t.relatedTarget!==n)return;let a,c;if(e===0?(a=i,c=this._rowElements.pop(),this._rowContainer.removeChild(c)):(a=this._rowElements.shift(),c=i,this._rowContainer.removeChild(a)),a.removeEventListener("focus",this._topBoundaryFocusListener),c.removeEventListener("focus",this._bottomBoundaryFocusListener),e===0){let h=this._createAccessibilityTreeNode();this._rowElements.unshift(h),this._rowContainer.insertAdjacentElement("afterbegin",h)}else{let h=this._createAccessibilityTreeNode();this._rowElements.push(h),this._rowContainer.appendChild(h)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(e===0?-1:1),this._rowElements[e===0?1:this._rowElements.length-2].focus(),t.preventDefault(),t.stopImmediatePropagation()}_handleSelectionChange(){var c;if(this._rowElements.length===0)return;let t=this._coreBrowserService.mainDocument.getSelection();if(!t)return;if(t.isCollapsed){this._rowContainer.contains(t.anchorNode)&&this._terminal.clearSelection();return}if(!t.anchorNode||!t.focusNode){console.error("anchorNode and/or focusNode are null");return}let e={node:t.anchorNode,offset:t.anchorOffset},i={node:t.focusNode,offset:t.focusOffset};if((e.node.compareDocumentPosition(i.node)&Node.DOCUMENT_POSITION_PRECEDING||e.node===i.node&&e.offset>i.offset)&&([e,i]=[i,e]),e.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(e={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(e.node))return;let n=this._rowElements.slice(-1)[0];if(i.node.compareDocumentPosition(n)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(i={node:n,offset:((c=n.textContent)==null?void 0:c.length)??0}),!this._rowContainer.contains(i.node))return;let r=({node:h,offset:d})=>{let f=h instanceof Text?h.parentNode:h,g=parseInt(f==null?void 0:f.getAttribute("aria-posinset"),10)-1;if(isNaN(g))return console.warn("row is invalid. Race condition?"),null;let m=this._rowColumns.get(f);if(!m)return console.warn("columns is null. Race condition?"),null;let v=d<m.length?m[d]:m.slice(-1)[0]+1;return v>=this._terminal.cols&&(++g,v=0),{row:g,column:v}},s=r(e),a=r(i);if(!(!s||!a)){if(s.row>a.row||s.row===a.row&&s.column>=a.column)throw new Error("invalid range");this._terminal.select(s.column,s.row,(a.row-s.row)*this._terminal.cols-s.column+a.column)}}_handleResize(t){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let e=this._rowContainer.children.length;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let t=this._coreBrowserService.mainDocument.createElement("div");return t.setAttribute("role","listitem"),t.tabIndex=-1,this._refreshRowDimensions(t),t}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let t=0;t<this._terminal.rows;t++)this._refreshRowDimensions(this._rowElements[t]),this._alignRowWidth(this._rowElements[t])}}_refreshRowDimensions(t){t.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(t){var r,s;t.style.transform="";let e=t.getBoundingClientRect().width,i=(s=(r=this._rowColumns.get(t))==null?void 0:r.slice(-1))==null?void 0:s[0];if(!i)return;let n=i*this._renderService.dimensions.css.cell.width;t.style.transform=`scaleX(${n/e})`}};cm=Vt([_e(1,Jb),_e(2,io),_e(3,no)],cm);var x1=class extends Ge{constructor(t,e,i,n,r){super(),this._element=t,this._mouseService=e,this._renderService=i,this._bufferService=n,this._linkProviderService=r,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new ve),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new ve),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(zt(()=>{var s;dl(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,(s=this._activeProviderReplies)==null||s.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(Xe(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(Xe(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(Xe(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(Xe(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(t){this._lastMouseEvent=t;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);if(!e)return;this._isMouseOut=!1;let i=t.composedPath();for(let n=0;n<i.length;n++){let r=i[n];if(r.classList.contains("xterm"))break;if(r.classList.contains("xterm-hover"))return}(!this._lastBufferCell||e.x!==this._lastBufferCell.x||e.y!==this._lastBufferCell.y)&&(this._handleHover(e),this._lastBufferCell=e)}_handleHover(t){if(this._activeLine!==t.y||this._wasResized){this._clearCurrentLink(),this._askForLink(t,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,t)||(this._clearCurrentLink(),this._askForLink(t,!0))}_askForLink(t,e){var n,r;(!this._activeProviderReplies||!e)&&((n=this._activeProviderReplies)==null||n.forEach(s=>{s==null||s.forEach(a=>{a.link.dispose&&a.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=t.y);let i=!1;for(let[s,a]of this._linkProviderService.linkProviders.entries())e?(r=this._activeProviderReplies)!=null&&r.get(s)&&(i=this._checkLinkProviderResult(s,t,i)):a.provideLinks(t.y,c=>{var d,f;if(this._isMouseOut)return;let h=c==null?void 0:c.map(g=>({link:g}));(d=this._activeProviderReplies)==null||d.set(s,h),i=this._checkLinkProviderResult(s,t,i),((f=this._activeProviderReplies)==null?void 0:f.size)===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(t.y,this._activeProviderReplies)})}_removeIntersectingLinks(t,e){let i=new Set;for(let n=0;n<e.size;n++){let r=e.get(n);if(r)for(let s=0;s<r.length;s++){let a=r[s],c=a.link.range.start.y<t?0:a.link.range.start.x,h=a.link.range.end.y>t?this._bufferService.cols:a.link.range.end.x;for(let d=c;d<=h;d++){if(i.has(d)){r.splice(s--,1);break}i.add(d)}}}}_checkLinkProviderResult(t,e,i){var s;if(!this._activeProviderReplies)return i;let n=this._activeProviderReplies.get(t),r=!1;for(let a=0;a<t;a++)(!this._activeProviderReplies.has(a)||this._activeProviderReplies.get(a))&&(r=!0);if(!r&&n){let a=n.find(c=>this._linkAtPosition(c.link,e));a&&(i=!0,this._handleNewLink(a))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!i)for(let a=0;a<this._activeProviderReplies.size;a++){let c=(s=this._activeProviderReplies.get(a))==null?void 0:s.find(h=>this._linkAtPosition(h.link,e));if(c){i=!0,this._handleNewLink(c);break}}return i}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(t){if(!this._currentLink)return;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);e&&this._mouseDownLink&&wee(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,e)&&this._currentLink.link.activate(t,this._currentLink.link.text)}_clearCurrentLink(t,e){!this._currentLink||!this._lastMouseEvent||(!t||!e||this._currentLink.link.range.start.y>=t&&this._currentLink.link.range.end.y<=e)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,dl(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(t){if(!this._lastMouseEvent)return;let e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._linkAtPosition(t.link,e)&&(this._currentLink=t,this._currentLink.state={decorations:{underline:t.link.decorations===void 0?!0:t.link.decorations.underline,pointerCursor:t.link.decorations===void 0?!0:t.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,t.link,this._lastMouseEvent),t.link.decorations={},Object.defineProperties(t.link.decorations,{pointerCursor:{get:()=>{var i,n;return(n=(i=this._currentLink)==null?void 0:i.state)==null?void 0:n.decorations.pointerCursor},set:i=>{var n;(n=this._currentLink)!=null&&n.state&&this._currentLink.state.decorations.pointerCursor!==i&&(this._currentLink.state.decorations.pointerCursor=i,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",i))}},underline:{get:()=>{var i,n;return(n=(i=this._currentLink)==null?void 0:i.state)==null?void 0:n.decorations.underline},set:i=>{var n,r,s;(n=this._currentLink)!=null&&n.state&&((s=(r=this._currentLink)==null?void 0:r.state)==null?void 0:s.decorations.underline)!==i&&(this._currentLink.state.decorations.underline=i,this._currentLink.state.isHovered&&this._fireUnderlineEvent(t.link,i))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(i=>{if(!this._currentLink)return;let n=i.start===0?0:i.start+1+this._bufferService.buffer.ydisp,r=this._bufferService.buffer.ydisp+1+i.end;if(this._currentLink.link.range.start.y>=n&&this._currentLink.link.range.end.y<=r&&(this._clearCurrentLink(n,r),this._lastMouseEvent)){let s=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);s&&this._askForLink(s,!1)}})))}_linkHover(t,e,i){var n;(n=this._currentLink)!=null&&n.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!0),this._currentLink.state.decorations.pointerCursor&&t.classList.add("xterm-cursor-pointer")),e.hover&&e.hover(i,e.text)}_fireUnderlineEvent(t,e){let i=t.range,n=this._bufferService.buffer.ydisp,r=this._createLinkUnderlineEvent(i.start.x-1,i.start.y-n-1,i.end.x,i.end.y-n-1,void 0);(e?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(r)}_linkLeave(t,e,i){var n;(n=this._currentLink)!=null&&n.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!1),this._currentLink.state.decorations.pointerCursor&&t.classList.remove("xterm-cursor-pointer")),e.leave&&e.leave(i,e.text)}_linkAtPosition(t,e){let i=t.range.start.y*this._bufferService.cols+t.range.start.x,n=t.range.end.y*this._bufferService.cols+t.range.end.x,r=e.y*this._bufferService.cols+e.x;return i<=r&&r<=n}_positionFromMouseEvent(t,e,i){let n=i.getCoords(t,e,this._bufferService.cols,this._bufferService.rows);if(n)return{x:n[0],y:n[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(t,e,i,n,r){return{x1:t,y1:e,x2:i,y2:n,cols:this._bufferService.cols,fg:r}}};x1=Vt([_e(1,e_),_e(2,no),_e(3,sn),_e(4,lz)],x1);function wee(t,e){return t.text===e.text&&t.range.start.x===e.range.start.x&&t.range.start.y===e.range.start.y&&t.range.end.x===e.range.end.x&&t.range.end.y===e.range.end.y}var kee=class extends mee{constructor(t={}){super(t),this._linkifier=this._register(new Ic),this.browser=Tz,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new Ic),this._onCursorMove=this._register(new ve),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new ve),this.onKey=this._onKey.event,this._onRender=this._register(new ve),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new ve),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new ve),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new ve),this.onBell=this._onBell.event,this._onFocus=this._register(new ve),this._onBlur=this._register(new ve),this._onA11yCharEmitter=this._register(new ve),this._onA11yTabEmitter=this._register(new ve),this._onWillOpen=this._register(new ve),this._setup(),this._decorationService=this._instantiationService.createInstance(See),this._instantiationService.setService(Qd,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(pJ),this._instantiationService.setService(lz,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(qS)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(e=>this.refresh((e==null?void 0:e.start)??0,(e==null?void 0:e.end)??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(e=>this._reportWindowsOptions(e))),this._register(this._inputHandler.onColor(e=>this._handleColorEvent(e))),this._register(Li.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(Li.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(Li.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(Li.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(zt(()=>{var e,i;this._customKeyEventHandler=void 0,(i=(e=this.element)==null?void 0:e.parentNode)==null||i.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(t){if(this._themeService)for(let e of t){let i,n="";switch(e.index){case 256:i="foreground",n="10";break;case 257:i="background",n="11";break;case 258:i="cursor",n="12";break;default:i="ansi",n="4;"+e.index}switch(e.type){case 0:let r=Et.toColorRGB(i==="ansi"?this._themeService.colors.ansi[e.index]:this._themeService.colors[i]);this.coreService.triggerDataEvent(`${ue.ESC}]${n};${hee(r)}${kz.ST}`);break;case 1:if(i==="ansi")this._themeService.modifyColors(s=>s.ansi[e.index]=ai.toColor(...e.color));else{let s=i;this._themeService.modifyColors(a=>a[s]=ai.toColor(...e.color))}break;case 2:this._themeService.restoreColor(e.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(t){t?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(cm,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(t){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(ue.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){var t;return(t=this.textarea)==null?void 0:t.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(ue.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let t=this.buffer.ybase+this.buffer.y,e=this.buffer.lines.get(t);if(!e)return;let i=Math.min(this.buffer.x,this.cols-1),n=this._renderService.dimensions.css.cell.height,r=e.getWidth(i),s=this._renderService.dimensions.css.cell.width*r,a=this.buffer.y*this._renderService.dimensions.css.cell.height,c=i*this._renderService.dimensions.css.cell.width;this.textarea.style.left=c+"px",this.textarea.style.top=a+"px",this.textarea.style.width=s+"px",this.textarea.style.height=n+"px",this.textarea.style.lineHeight=n+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(Xe(this.element,"copy",e=>{this.hasSelection()&&$F(e,this._selectionService)}));let t=e=>PF(e,this.textarea,this.coreService,this.optionsService);this._register(Xe(this.textarea,"paste",t)),this._register(Xe(this.element,"paste",t)),Qz?this._register(Xe(this.element,"mousedown",e=>{e.button===2&&JQ(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(Xe(this.element,"contextmenu",e=>{JQ(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),l_&&this._register(Xe(this.element,"auxclick",e=>{e.button===1&&JM(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(Xe(this.textarea,"keyup",t=>this._keyUp(t),!0)),this._register(Xe(this.textarea,"keydown",t=>this._keyDown(t),!0)),this._register(Xe(this.textarea,"keypress",t=>this._keyPress(t),!0)),this._register(Xe(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(Xe(this.textarea,"compositionupdate",t=>this._compositionHelper.compositionupdate(t))),this._register(Xe(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(Xe(this.textarea,"input",t=>this._inputEvent(t),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(t){var r;if(!t)throw new Error("Terminal requires a parent element.");if(t.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),((r=this.element)==null?void 0:r.ownerDocument.defaultView)&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=t.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),t.appendChild(this.element);let e=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),e.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(Xe(this.screenElement,"mousemove",s=>this.updateCursorStyle(s))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),e.appendChild(this.screenElement);let i=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",NS.get()),Ez||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>i.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(dJ,this.textarea,t.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(io,this._coreBrowserService),this._register(Xe(this.textarea,"focus",s=>this._handleTextAreaFocus(s))),this._register(Xe(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(u1,this._document,this._helperContainer),this._instantiationService.setService(Lm,this._charSizeService),this._themeService=this._instantiationService.createInstance(g1),this._instantiationService.setService(Uc,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(om),this._instantiationService.setService(az,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(f1,this.rows,this.screenElement)),this._instantiationService.setService(no,this._renderService),this._register(this._renderService.onRenderedViewportChange(s=>this._onRender.fire(s))),this.onResize(s=>this._renderService.resize(s.cols,s.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(l1,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(d1),this._instantiationService.setService(e_,this._mouseService);let n=this._linkifier.value=this._register(this._instantiationService.createInstance(x1,this.screenElement));this.element.appendChild(e);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(o1,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(s=>{super.scrollLines(s,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(p1,this.element,this.screenElement,n)),this._instantiationService.setService(BF,this._selectionService),this._register(this._selectionService.onRequestScrollLines(s=>this.scrollLines(s.amount,s.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(s=>this._renderService.handleSelectionChanged(s.start,s.end,s.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(s=>{this.textarea.value=s,this.textarea.focus(),this.textarea.select()})),this._register(Li.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{var s;this._selectionService.refresh(),(s=this._viewport)==null||s.queueSync()})),this._register(this._instantiationService.createInstance(a1,this.screenElement)),this._register(Xe(this.element,"mousedown",s=>this._selectionService.handleMouseDown(s))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(cm,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",s=>this._handleScreenReaderModeOptionChange(s))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(sm,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",s=>{!this._overviewRulerRenderer&&s&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(sm,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(h1,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let t=this,e=this.element;function i(s){var d,f,g,m,v;let a=t._mouseService.getMouseReportCoords(s,t.screenElement);if(!a)return!1;let c,h;switch(s.overrideType||s.type){case"mousemove":h=32,s.buttons===void 0?(c=3,s.button!==void 0&&(c=s.button<3?s.button:3)):c=s.buttons&1?0:s.buttons&4?1:s.buttons&2?2:3;break;case"mouseup":h=0,c=s.button<3?s.button:3;break;case"mousedown":h=1,c=s.button<3?s.button:3;break;case"wheel":if(t._customWheelEventHandler&&t._customWheelEventHandler(s)===!1)return!1;let S=s.deltaY;if(S===0||t.coreMouseService.consumeWheelEvent(s,(m=(g=(f=(d=t._renderService)==null?void 0:d.dimensions)==null?void 0:f.device)==null?void 0:g.cell)==null?void 0:m.height,(v=t._coreBrowserService)==null?void 0:v.dpr)===0)return!1;h=S<0?0:1,c=4;break;default:return!1}return h===void 0||c===void 0||c>4?!1:t.coreMouseService.triggerMouseEvent({col:a.col,row:a.row,x:a.x,y:a.y,button:c,action:h,ctrl:s.ctrlKey,alt:s.altKey,shift:s.shiftKey})}let n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},r={mouseup:s=>(i(s),s.buttons||(this._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&this._document.removeEventListener("mousemove",n.mousedrag)),this.cancel(s)),wheel:s=>(i(s),this.cancel(s,!0)),mousedrag:s=>{s.buttons&&i(s)},mousemove:s=>{s.buttons||i(s)}};this._register(this.coreMouseService.onProtocolChange(s=>{s?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(s)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),s&8?n.mousemove||(e.addEventListener("mousemove",r.mousemove),n.mousemove=r.mousemove):(e.removeEventListener("mousemove",n.mousemove),n.mousemove=null),s&16?n.wheel||(e.addEventListener("wheel",r.wheel,{passive:!1}),n.wheel=r.wheel):(e.removeEventListener("wheel",n.wheel),n.wheel=null),s&2?n.mouseup||(n.mouseup=r.mouseup):(this._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),s&4?n.mousedrag||(n.mousedrag=r.mousedrag):(this._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(Xe(e,"mousedown",s=>{if(s.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(s)))return i(s),n.mouseup&&this._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&this._document.addEventListener("mousemove",n.mousedrag),this.cancel(s)})),this._register(Xe(e,"wheel",s=>{var a,c,h,d,f;if(!n.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(s)===!1)return!1;if(!this.buffer.hasScrollback){if(s.deltaY===0)return!1;if(t.coreMouseService.consumeWheelEvent(s,(d=(h=(c=(a=t._renderService)==null?void 0:a.dimensions)==null?void 0:c.device)==null?void 0:h.cell)==null?void 0:d.height,(f=t._coreBrowserService)==null?void 0:f.dpr)===0)return this.cancel(s,!0);let g=ue.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(s.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(g,!0),this.cancel(s,!0)}}},{passive:!1}))}refresh(t,e){var i;(i=this._renderService)==null||i.refreshRows(t,e)}updateCursorStyle(t){var e;(e=this._selectionService)!=null&&e.shouldColumnSelect(t)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(t,e){this._viewport?this._viewport.scrollLines(t):super.scrollLines(t,e),this.refresh(0,this.rows-1)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){t&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}paste(t){KM(t,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(t){this._customKeyEventHandler=t}attachCustomWheelEventHandler(t){this._customWheelEventHandler=t}registerLinkProvider(t){return this._linkProviderService.registerLinkProvider(t)}registerCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let e=this._characterJoinerService.register(t);return this.refresh(0,this.rows-1),e}deregisterCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(t)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(t){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+t)}registerDecoration(t){return this._decorationService.registerDecoration(t)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(t,e,i){this._selectionService.setSelection(t,e,i)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){var t;(t=this._selectionService)==null||t.clearSelection()}selectAll(){var t;(t=this._selectionService)==null||t.selectAll()}selectLines(t,e){var i;(i=this._selectionService)==null||i.selectLines(t,e)}_keyDown(t){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;let e=this.browser.isMac&&this.options.macOptionIsMeta&&t.altKey;if(!e&&!this._compositionHelper.keydown(t))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!e&&(t.key==="Dead"||t.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let i=vee(t,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(t),i.type===3||i.type===2){let n=this.rows-1;return this.scrollLines(i.type===2?-n:n),this.cancel(t,!0)}if(i.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,t)||(i.cancel&&this.cancel(t,!0),!i.key)||t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.key.length===1&&t.key.charCodeAt(0)>=65&&t.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((i.key===ue.ETX||i.key===ue.CR)&&(this.textarea.value=""),this._onKey.fire({key:i.key,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(i.key,!0),!this.optionsService.rawOptions.screenReaderMode||t.altKey||t.ctrlKey)return this.cancel(t,!0);this._keyDownHandled=!0}_isThirdLevelShift(t,e){let i=t.isMac&&!this.options.macOptionIsMeta&&e.altKey&&!e.ctrlKey&&!e.metaKey||t.isWindows&&e.altKey&&e.ctrlKey&&!e.metaKey||t.isWindows&&e.getModifierState("AltGraph");return e.type==="keypress"?i:i&&(!e.keyCode||e.keyCode>47)}_keyUp(t){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)&&(Cee(t)||this.focus(),this.updateCursorStyle(t),this._keyPressHandled=!1)}_keyPress(t){let e;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;if(this.cancel(t),t.charCode)e=t.charCode;else if(t.which===null||t.which===void 0)e=t.keyCode;else if(t.which!==0&&t.charCode!==0)e=t.which;else return!1;return!e||(t.altKey||t.ctrlKey||t.metaKey)&&!this._isThirdLevelShift(this.browser,t)?!1:(e=String.fromCharCode(e),this._onKey.fire({key:e,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(e,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(t){if(t.data&&t.inputType==="insertText"&&(!t.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let e=t.data;return this.coreService.triggerDataEvent(e,!0),this.cancel(t),!0}return!1}resize(t,e){if(t===this.cols&&e===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(t,e)}_afterResize(t,e){var i;(i=this._charSizeService)==null||i.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let t=1;t<this.rows;t++)this.buffer.lines.push(this.buffer.getBlankLine(oi));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){var e;this.options.rows=this.rows,this.options.cols=this.cols;let t=this._customKeyEventHandler;this._setup(),super.reset(),(e=this._selectionService)==null||e.reset(),this._decorationService.reset(),this._customKeyEventHandler=t,this.refresh(0,this.rows-1)}clearTextureAtlas(){var t;(t=this._renderService)==null||t.clearTextureAtlas()}_reportFocus(){var t;(t=this.element)!=null&&t.classList.contains("focus")?this.coreService.triggerDataEvent(ue.ESC+"[I"):this.coreService.triggerDataEvent(ue.ESC+"[O")}_reportWindowsOptions(t){if(this._renderService)switch(t){case 0:let e=this._renderService.dimensions.css.canvas.width.toFixed(0),i=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${ue.ESC}[4;${i};${e}t`);break;case 1:let n=this._renderService.dimensions.css.cell.width.toFixed(0),r=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${ue.ESC}[6;${r};${n}t`);break}}cancel(t,e){if(!(!this.options.cancelEvents&&!e))return t.preventDefault(),t.stopPropagation(),!1}};function Cee(t){return t.keyCode===16||t.keyCode===17||t.keyCode===18}var Tee=class{constructor(){this._addons=[]}dispose(){for(let t=this._addons.length-1;t>=0;t--)this._addons[t].instance.dispose()}loadAddon(t,e){let i={instance:e,dispose:e.dispose,isDisposed:!1};this._addons.push(i),e.dispose=()=>this._wrappedAddonDispose(i),e.activate(t)}_wrappedAddonDispose(t){if(t.isDisposed)return;let e=-1;for(let i=0;i<this._addons.length;i++)if(this._addons[i]===t){e=i;break}if(e===-1)throw new Error("Could not dispose an addon that has not been loaded");t.isDisposed=!0,t.dispose.apply(t.instance),this._addons.splice(e,1)}},Qee=class{constructor(t){this._line=t}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(t,e){if(!(t<0||t>=this._line.length))return e?(this._line.loadCell(t,e),e):this._line.loadCell(t,new fr)}translateToString(t,e,i){return this._line.translateToString(t,e,i)}},q$=class{constructor(t,e){this._buffer=t,this.type=e}init(t){return this._buffer=t,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(t){let e=this._buffer.lines.get(t);if(e)return new Qee(e)}getNullCell(){return new fr}},$ee=class extends Ge{constructor(t){super(),this._core=t,this._onBufferChange=this._register(new ve),this.onBufferChange=this._onBufferChange.event,this._normal=new q$(this._core.buffers.normal,"normal"),this._alternate=new q$(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},Pee=class{constructor(t){this._core=t}registerCsiHandler(t,e){return this._core.registerCsiHandler(t,i=>e(i.toArray()))}addCsiHandler(t,e){return this.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._core.registerDcsHandler(t,(i,n)=>e(i,n.toArray()))}addDcsHandler(t,e){return this.registerDcsHandler(t,e)}registerEscHandler(t,e){return this._core.registerEscHandler(t,e)}addEscHandler(t,e){return this.registerEscHandler(t,e)}registerOscHandler(t,e){return this._core.registerOscHandler(t,e)}addOscHandler(t,e){return this.registerOscHandler(t,e)}},Eee=class{constructor(t){this._core=t}register(t){this._core.unicodeService.register(t)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(t){this._core.unicodeService.activeVersion=t}},Ree=["cols","rows"],Ur=0,Aee=class extends Ge{constructor(t){super(),this._core=this._register(new kee(t)),this._addonManager=this._register(new Tee),this._publicOptions={...this._core.options};let e=n=>this._core.options[n],i=(n,r)=>{this._checkReadonlyOptions(n),this._core.options[n]=r};for(let n in this._core.options){let r={get:e.bind(this,n),set:i.bind(this,n)};Object.defineProperty(this._publicOptions,n,r)}}_checkReadonlyOptions(t){if(Ree.includes(t))throw new Error(`Option "${t}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new Pee(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new Eee(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new $ee(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let t=this._core.coreService.decPrivateModes,e="none";switch(this._core.coreMouseService.activeProtocol){case"X10":e="x10";break;case"VT200":e="vt200";break;case"DRAG":e="drag";break;case"ANY":e="any";break}return{applicationCursorKeysMode:t.applicationCursorKeys,applicationKeypadMode:t.applicationKeypad,bracketedPasteMode:t.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:e,originMode:t.origin,reverseWraparoundMode:t.reverseWraparound,sendFocusMode:t.sendFocus,synchronizedOutputMode:t.synchronizedOutput,wraparoundMode:t.wraparound}}get options(){return this._publicOptions}set options(t){for(let e in t)this._publicOptions[e]=t[e]}blur(){this._core.blur()}focus(){this._core.focus()}input(t,e=!0){this._core.input(t,e)}resize(t,e){this._verifyIntegers(t,e),this._core.resize(t,e)}open(t){this._core.open(t)}attachCustomKeyEventHandler(t){this._core.attachCustomKeyEventHandler(t)}attachCustomWheelEventHandler(t){this._core.attachCustomWheelEventHandler(t)}registerLinkProvider(t){return this._core.registerLinkProvider(t)}registerCharacterJoiner(t){return this._checkProposedApi(),this._core.registerCharacterJoiner(t)}deregisterCharacterJoiner(t){this._checkProposedApi(),this._core.deregisterCharacterJoiner(t)}registerMarker(t=0){return this._verifyIntegers(t),this._core.registerMarker(t)}registerDecoration(t){return this._checkProposedApi(),this._verifyPositiveIntegers(t.x??0,t.width??0,t.height??0),this._core.registerDecoration(t)}hasSelection(){return this._core.hasSelection()}select(t,e,i){this._verifyIntegers(t,e,i),this._core.select(t,e,i)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(t,e){this._verifyIntegers(t,e),this._core.selectLines(t,e)}dispose(){super.dispose()}scrollLines(t){this._verifyIntegers(t),this._core.scrollLines(t)}scrollPages(t){this._verifyIntegers(t),this._core.scrollPages(t)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(t){this._verifyIntegers(t),this._core.scrollToLine(t)}clear(){this._core.clear()}write(t,e){this._core.write(t,e)}writeln(t,e){this._core.write(t),this._core.write(`\r
158
- `,e)}paste(t){this._core.paste(t)}refresh(t,e){this._verifyIntegers(t,e),this._core.refresh(t,e)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(t){this._addonManager.loadAddon(this,t)}static get strings(){return{get promptLabel(){return NS.get()},set promptLabel(t){NS.set(t)},get tooMuchOutput(){return ZS.get()},set tooMuchOutput(t){ZS.set(t)}}}_verifyIntegers(...t){for(Ur of t)if(Ur===1/0||isNaN(Ur)||Ur%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...t){for(Ur of t)if(Ur&&(Ur===1/0||isNaN(Ur)||Ur%1!==0||Ur<0))throw new Error("This API only accepts positive integers")}};/**
159
- * Copyright (c) 2014-2024 The xterm.js authors. All rights reserved.
160
- * @license MIT
161
- *
162
- * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
163
- * @license MIT
164
- *
165
- * Originally forked from (with the author's permission):
166
- * Fabrice Bellard's javascript vt100 for jslinux:
167
- * http://bellard.org/jslinux/
168
- * Copyright (c) 2011 Fabrice Bellard
169
- */var Mee=2,zee=1,jee=class{activate(t){this._terminal=t}dispose(){}fit(){let t=this.proposeDimensions();if(!t||!this._terminal||isNaN(t.cols)||isNaN(t.rows))return;let e=this._terminal._core;(this._terminal.rows!==t.rows||this._terminal.cols!==t.cols)&&(e._renderService.clear(),this._terminal.resize(t.cols,t.rows))}proposeDimensions(){var g;if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let t=this._terminal._core._renderService.dimensions;if(t.css.cell.width===0||t.css.cell.height===0)return;let e=this._terminal.options.scrollback===0?0:((g=this._terminal.options.overviewRuler)==null?void 0:g.width)||14,i=window.getComputedStyle(this._terminal.element.parentElement),n=parseInt(i.getPropertyValue("height")),r=Math.max(0,parseInt(i.getPropertyValue("width"))),s=window.getComputedStyle(this._terminal.element),a={top:parseInt(s.getPropertyValue("padding-top")),bottom:parseInt(s.getPropertyValue("padding-bottom")),right:parseInt(s.getPropertyValue("padding-right")),left:parseInt(s.getPropertyValue("padding-left"))},c=a.top+a.bottom,h=a.right+a.left,d=n-c,f=r-h-e;return{cols:Math.max(Mee,Math.floor(f/t.css.cell.width)),rows:Math.max(zee,Math.floor(d/t.css.cell.height))}}};/**
170
- * Copyright (c) 2014-2024 The xterm.js authors. All rights reserved.
171
- * @license MIT
172
- *
173
- * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
174
- * @license MIT
175
- *
176
- * Originally forked from (with the author's permission):
177
- * Fabrice Bellard's javascript vt100 for jslinux:
178
- * http://bellard.org/jslinux/
179
- * Copyright (c) 2011 Fabrice Bellard
180
- */var Dee=class{constructor(t,e,i,n={}){this._terminal=t,this._regex=e,this._handler=i,this._options=n}provideLinks(t,e){let i=Lee.computeLink(t,this._regex,this._terminal,this._handler);e(this._addCallbacks(i))}_addCallbacks(t){return t.map(e=>(e.leave=this._options.leave,e.hover=(i,n)=>{if(this._options.hover){let{range:r}=e;this._options.hover(i,n,r)}},e))}};function Bee(t){try{let e=new URL(t),i=e.password&&e.username?`${e.protocol}//${e.username}:${e.password}@${e.host}`:e.username?`${e.protocol}//${e.username}@${e.host}`:`${e.protocol}//${e.host}`;return t.toLocaleLowerCase().startsWith(i.toLocaleLowerCase())}catch{return!1}}var Lee=class dg{static computeLink(e,i,n,r){let s=new RegExp(i.source,(i.flags||"")+"g"),[a,c]=dg._getWindowedLineStrings(e-1,n),h=a.join(""),d,f=[];for(;d=s.exec(h);){let g=d[0];if(!Bee(g))continue;let[m,v]=dg._mapStrIdx(n,c,0,d.index),[S,_]=dg._mapStrIdx(n,m,v,g.length);if(m===-1||v===-1||S===-1||_===-1)continue;let w={start:{x:v+1,y:m+1},end:{x:_,y:S+1}};f.push({range:w,text:g,activate:r})}return f}static _getWindowedLineStrings(e,i){let n,r=e,s=e,a=0,c="",h=[];if(n=i.buffer.active.getLine(e)){let d=n.translateToString(!0);if(n.isWrapped&&d[0]!==" "){for(a=0;(n=i.buffer.active.getLine(--r))&&a<2048&&(c=n.translateToString(!0),a+=c.length,h.push(c),!(!n.isWrapped||c.indexOf(" ")!==-1)););h.reverse()}for(h.push(d),a=0;(n=i.buffer.active.getLine(++s))&&n.isWrapped&&a<2048&&(c=n.translateToString(!0),a+=c.length,h.push(c),c.indexOf(" ")===-1););}return[h,r]}static _mapStrIdx(e,i,n,r){let s=e.buffer.active,a=s.getNullCell(),c=n;for(;r;){let h=s.getLine(i);if(!h)return[-1,-1];for(let d=c;d<h.length;++d){h.getCell(d,a);let f=a.getChars();if(a.getWidth()&&(r-=f.length||1,d===h.length-1&&f==="")){let g=s.getLine(i+1);g&&g.isWrapped&&(g.getCell(0,a),a.getWidth()===2&&(r+=1))}if(r<0)return[i,d]}i++,c=0}return[i,c]}},Xee=/(https?|HTTPS?):[/]{2}[^\s"'!*(){}|\\\^<>`]*[^\s"':,.!?{}|\\\^~\[\]`()<>]/;function Nee(t,e){let i=window.open();if(i){try{i.opener=null}catch{}i.location.href=e}else console.warn("Opening link blocked as opener could not be cleared")}var Zee=class{constructor(t=Nee,e={}){this._handler=t,this._options=e}activate(t){this._terminal=t;let e=this._options,i=e.urlRegex||Xee;this._linkProvider=this._terminal.registerLinkProvider(new Dee(this._terminal,i,this._handler,e))}dispose(){var t;(t=this._linkProvider)==null||t.dispose()}};function Wee({visible:t}){const e=X.useRef(null),i=X.useRef(null),n=X.useRef(null),r=X.useRef(null),s=X.useRef(!1),a=Ce(c=>c.ws);return X.useEffect(()=>{if(!e.current)return;const c=new Aee({fontFamily:"'JetBrains Mono', 'SF Mono', 'Fira Code', monospace",fontSize:12,lineHeight:1.3,cursorBlink:!0,cursorStyle:"bar",theme:{background:"#1e2127",foreground:"#abb2bf",cursor:"#33afbc",selectionBackground:"rgba(51, 175, 188, 0.25)",black:"#1e2127",red:"#e06c75",green:"#4ae168",yellow:"#e5c07b",blue:"#61afef",magenta:"#c678dd",cyan:"#33afbc",white:"#abb2bf",brightBlack:"#5c6370",brightRed:"#e06c75",brightGreen:"#4ae168",brightYellow:"#e5c07b",brightBlue:"#61afef",brightMagenta:"#c678dd",brightCyan:"#33afbc",brightWhite:"#e6e6e6"}}),h=new jee,d=new Zee;return c.loadAddon(h),c.loadAddon(d),c.open(e.current),requestAnimationFrame(()=>{try{h.fit()}catch{}}),i.current=c,n.current=h,()=>{c.dispose(),i.current=null,n.current=null,s.current=!1}},[]),X.useEffect(()=>{if(!a||a.readyState!==1||!i.current||s.current)return;const c=i.current;s.current=!0,a.send(JSON.stringify({type:"terminal:spawn",cols:c.cols||120,rows:c.rows||30}));const h=g=>{try{const m=JSON.parse(g.data);m.type==="terminal:spawned"?r.current=m.id:m.type==="terminal:output"&&m.id===r.current?c.write(m.data):m.type==="terminal:exit"&&m.id===r.current&&(c.write(`\r
181
- \x1B[90m[session ended]\x1B[0m\r
182
- `),r.current=null)}catch{}};a.addEventListener("message",h);const d=c.onData(g=>{r.current&&a.readyState===1&&a.send(JSON.stringify({type:"terminal:input",id:r.current,data:g}))}),f=c.onResize(({cols:g,rows:m})=>{r.current&&a.readyState===1&&a.send(JSON.stringify({type:"terminal:resize",id:r.current,cols:g,rows:m}))});return()=>{a.removeEventListener("message",h),d.dispose(),f.dispose(),r.current&&a.readyState===1&&a.send(JSON.stringify({type:"terminal:kill",id:r.current})),r.current=null,s.current=!1}},[a]),X.useEffect(()=>{if(t&&n.current){const c=setTimeout(()=>{try{n.current.fit()}catch{}},80);return()=>clearTimeout(c)}},[t]),X.useEffect(()=>{const c=()=>{if(n.current&&t)try{n.current.fit()}catch{}};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[t]),O.jsx("div",{ref:e,style:{...qee.container,display:t?"block":"none"}})}const qee={container:{width:"100%",height:"100%",padding:"4px 0 0 4px",background:"#1e2127",overflow:"hidden"}};function Iee(){const t=Ce(N=>N.editorActiveFile),e=Ce(N=>N.editorFiles),i=Ce(N=>N.editorChangedFiles),n=Ce(N=>N.editorOpenTabs),r=Ce(N=>N.updateFileContent),s=Ce(N=>N.saveFile),a=Ce(N=>N.reloadFile),c=Ce(N=>N.dismissFileChange),h=Ce(N=>N.fetchTreeDir),[d,f]=X.useState(!1),[g,m]=X.useState(220),[v,S]=X.useState(""),[_,w]=X.useState(""),[x,Q]=X.useState(!1);X.useEffect(()=>{fetch("/api/files/root").then(N=>N.json()).then(N=>{S(N.root||""),w(N.root||"")}).catch(()=>{})},[]);async function C(){if(_.trim())try{const j=await(await fetch("/api/files/root",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({root:_.trim()})})).json();j.ok&&(S(j.root),Q(!1),Ce.setState({editorTreeCache:{},editorOpenTabs:[],editorActiveFile:null,editorFiles:{}}),h(""))}catch{}}const T=t?e[t]:null,A=t&&i[t],P=t&&xF(t),M=t&&n.includes(t)&&P,V=X.useCallback(N=>{t&&r(t,N)},[t,r]),H=X.useCallback(()=>{t&&s(t)},[t,s]),G=X.useCallback(N=>{N.preventDefault();const j=N.clientY,B=g,E=$=>{const Z=j-$.clientY;m(Math.max(100,Math.min(600,B+Z)))},W=()=>{document.removeEventListener("mousemove",E),document.removeEventListener("mouseup",W)};document.addEventListener("mousemove",E),document.addEventListener("mouseup",W)},[g]);return O.jsxs("div",{style:Lt.container,children:[O.jsxs("div",{style:Lt.dirBar,children:[O.jsx("span",{style:Lt.dirLabel,children:"DIR"}),x?O.jsxs("div",{style:{display:"flex",flex:1,gap:4},children:[O.jsx("input",{style:Lt.dirInput,value:_,onChange:N=>w(N.target.value),onKeyDown:N=>{N.key==="Enter"&&C(),N.key==="Escape"&&(Q(!1),w(v))},placeholder:"/absolute/path/to/project",autoFocus:!0}),O.jsx("button",{onClick:C,style:Lt.dirOkBtn,children:"Open"}),O.jsx("button",{onClick:()=>{Q(!1),w(v)},style:Lt.dirCancelBtn,children:"×"})]}):O.jsx("button",{onClick:()=>Q(!0),style:Lt.dirPath,title:"Click to change directory",children:v||"..."})]}),O.jsx(pZ,{}),O.jsxs("div",{style:Lt.contentRow,children:[O.jsx("div",{style:Lt.sidebar,children:O.jsx(fZ,{})}),O.jsxs("div",{style:Lt.editorColumn,children:[O.jsxs("div",{style:Lt.editorArea,children:[A&&!P&&O.jsxs("div",{style:Lt.changeBanner,children:[O.jsx("span",{style:Lt.bannerText,children:"File modified externally"}),O.jsx("button",{onClick:()=>a(t),style:Lt.bannerBtn,children:"Reload"}),O.jsx("button",{onClick:()=>c(t),style:Lt.bannerDismiss,children:"Dismiss"})]}),M?O.jsx(wF,{path:t}):T?O.jsx(bF,{content:T.content,language:T.language,onContentChange:V,onSave:H},t):O.jsxs("div",{style:Lt.emptyState,children:[O.jsx("div",{style:Lt.emptyIcon,children:"←"}),O.jsx("div",{style:Lt.emptyText,children:"Select a file from the tree"}),O.jsx("div",{style:Lt.emptyHint,children:"Cmd+S to save | right-click for options"})]})]}),d&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Lt.resizeHandle,onMouseDown:G}),O.jsx("div",{style:{...Lt.terminalPane,height:g},children:O.jsx(Wee,{visible:d})})]}),O.jsx("div",{style:Lt.terminalBar,children:O.jsxs("button",{onClick:()=>f(!d),style:{...Lt.terminalToggle,color:d?"var(--accent)":"var(--text-dim)"},children:[d?"▾":"▴"," Terminal"]})})]})]})]})}const Lt={container:{display:"flex",flexDirection:"column",height:"100%",width:"100%"},dirBar:{display:"flex",alignItems:"center",gap:8,padding:"4px 12px",flexShrink:0,borderBottom:"1px solid var(--border)",background:"var(--bg-chrome)"},dirLabel:{fontSize:9,fontWeight:700,color:"var(--text-dim)",letterSpacing:1,flexShrink:0},dirPath:{background:"none",border:"none",color:"var(--text-primary)",fontSize:11,fontFamily:"var(--font)",cursor:"pointer",padding:"2px 6px",borderRadius:3,textAlign:"left",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},dirInput:{flex:1,background:"var(--bg-surface)",border:"1px solid var(--accent)",borderRadius:3,padding:"2px 8px",color:"var(--text-primary)",fontSize:11,outline:"none",fontFamily:"var(--font)"},dirOkBtn:{background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:3,padding:"2px 10px",fontSize:10,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},dirCancelBtn:{background:"none",border:"none",color:"var(--text-dim)",fontSize:14,cursor:"pointer",padding:"0 4px"},contentRow:{flex:1,display:"flex",overflow:"hidden"},sidebar:{width:240,flexShrink:0,borderRight:"1px solid var(--border)",overflow:"hidden"},editorColumn:{flex:1,display:"flex",flexDirection:"column",overflow:"hidden"},editorArea:{flex:1,display:"flex",flexDirection:"column",position:"relative",overflow:"hidden",background:"var(--bg-base)"},changeBanner:{position:"absolute",top:0,left:0,right:0,zIndex:10,display:"flex",alignItems:"center",gap:8,padding:"6px 12px",background:"rgba(229, 192, 123, 0.15)",borderBottom:"1px solid var(--amber)"},bannerText:{fontSize:11,color:"var(--amber)",fontWeight:500,fontFamily:"var(--font)",flex:1},bannerBtn:{padding:"3px 10px",background:"var(--amber)",border:"none",borderRadius:2,color:"var(--bg-base)",fontSize:10,fontWeight:700,fontFamily:"var(--font)",cursor:"pointer"},bannerDismiss:{padding:"3px 10px",background:"transparent",border:"1px solid var(--amber)",borderRadius:2,color:"var(--amber)",fontSize:10,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer"},emptyState:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:8},emptyIcon:{fontSize:28,color:"var(--text-muted)",opacity:.5},emptyText:{fontSize:13,color:"var(--text-dim)",fontWeight:500},emptyHint:{fontSize:10,color:"var(--text-muted)"},resizeHandle:{height:4,cursor:"row-resize",background:"var(--border)",flexShrink:0},terminalPane:{flexShrink:0,overflow:"hidden"},terminalBar:{height:24,flexShrink:0,display:"flex",alignItems:"center",borderTop:"1px solid var(--border)",background:"var(--bg-chrome)",padding:"0 8px"},terminalToggle:{background:"none",border:"none",fontSize:11,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer",padding:"2px 6px"}},Vee=[{id:"agents",label:"Agents"},{id:"editor",label:"Editor"},{id:"integrations",label:"Integrations"},{id:"skills",label:"Skills"},{id:"stats",label:"Stats"},{id:"schedules",label:"Schedules"},{id:"teams",label:"Teams"},{id:"approvals",label:"Approvals"}];class Yee extends In.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}render(){return this.state.error?In.createElement("div",{style:{padding:40,color:"#e06c75",fontFamily:"monospace",fontSize:13,background:"#1e2127",height:"100vh"}},In.createElement("h2",{style:{color:"#e6e6e6"}},"GROOVE — Render Error"),In.createElement("pre",{style:{whiteSpace:"pre-wrap",marginTop:16,color:"#e06c75"}},this.state.error.message),In.createElement("pre",{style:{whiteSpace:"pre-wrap",marginTop:8,color:"#7a8394",fontSize:11}},this.state.error.stack)):this.props.children}}function Hee(){const t=Ce(v=>v.agents),e=Ce(v=>v.connected),i=Ce(v=>v.activeTab),n=Ce(v=>v.detailPanel),r=Ce(v=>v.statusMessage),s=Ce(v=>v.daemonHost),a=Ce(v=>v.tunneled),c=Ce(v=>v.connect),h=Ce(v=>v.setActiveTab),d=Ce(v=>v.openDetail),f=Ce(v=>v.closeDetail);X.useEffect(()=>{c()},[c]);const g=t.filter(v=>v.status==="running").length,m=t.length>0;return O.jsxs("div",{style:Ji.root,children:[O.jsxs("header",{style:Ji.header,children:[O.jsxs("div",{style:Ji.headerLeft,children:[O.jsx("img",{src:"/groove-logo-short.png",alt:"GROOVE",style:{height:18,marginTop:3,opacity:.85}}),s&&O.jsx("span",{style:Ji.hostBadge,children:s})]}),O.jsx("div",{style:Ji.headerCenter,children:e&&Vee.map(v=>O.jsx("button",{onClick:()=>h(v.id),style:{...Ji.tabBtn,color:i===v.id?"var(--text-bright)":"var(--text-primary)",borderBottom:i===v.id?"2px solid var(--accent)":"2px solid transparent",background:i===v.id?"var(--bg-active)":"transparent"},children:v.label},v.id))}),O.jsxs("div",{style:Ji.headerRight,children:[r&&O.jsx("span",{style:Ji.statusText,children:r}),O.jsx("span",{style:Ji.agentCount,children:g>0?`${g} running`:t.length>0?`${t.length} agent${t.length!==1?"s":""}`:""}),e&&O.jsxs(O.Fragment,{children:[O.jsx("button",{onClick:()=>(n==null?void 0:n.type)==="journalist"?f():d({type:"journalist"}),style:{...Ji.tabBtn,color:(n==null?void 0:n.type)==="journalist"?"var(--text-bright)":"var(--text-primary)",borderBottom:(n==null?void 0:n.type)==="journalist"?"2px solid var(--purple)":"2px solid transparent"},children:"Journalist"}),O.jsx("button",{onClick:()=>d({type:"spawn"}),style:Ji.spawnBtn,children:"+ Spawn"})]})]})]}),O.jsxs("div",{style:{position:"fixed",bottom:10,left:12,zIndex:50,display:"flex",alignItems:"center",gap:5},children:[O.jsx("div",{style:{width:5,height:5,borderRadius:"50%",background:e?"var(--green)":"var(--red)",animation:"pulse 2s infinite"}}),O.jsx("span",{style:{fontSize:9,fontWeight:600,letterSpacing:.8,color:e?"var(--green)":"var(--red)",textTransform:"uppercase",fontFamily:"var(--font)",animation:"pulse 3s infinite"},children:e?a?"tunneled":s?"remote":"connected":"offline"}),e&&a&&O.jsx("span",{title:"Connected via SSH tunnel. Run 'groove disconnect' in your terminal to close.",style:{fontSize:9,color:"var(--text-dim)",fontFamily:"var(--font)",cursor:"help",marginLeft:2},children:"(via ssh)"})]}),O.jsxs("div",{style:Ji.mainRow,children:[O.jsxs("main",{style:Ji.content,children:[i==="agents"&&(m?O.jsx(f8,{}):O.jsx(T8,{})),i==="editor"&&O.jsx(Iee,{}),i==="integrations"&&O.jsx(rZ,{}),i==="skills"&&O.jsx(F8,{}),i==="stats"&&O.jsx(B8,{}),i==="schedules"&&O.jsx(hZ,{}),i==="teams"&&O.jsx(M8,{}),i==="approvals"&&O.jsx(W8,{})]}),n&&n.type!=="spawn"&&O.jsxs("aside",{style:{...Ji.detailPanel,width:n.type==="agent"?"45%":320},children:[O.jsx("button",{onClick:f,style:Ji.closeBtn,children:"x"}),n.type==="agent"&&O.jsx(C8,{}),n.type==="journalist"&&O.jsx(A8,{})]}),(n==null?void 0:n.type)==="spawn"&&O.jsx(E8,{})]})]})}function Uee(){return In.createElement(Yee,null,In.createElement(Hee))}const Ji={root:{width:"100%",height:"100%",display:"flex",flexDirection:"column",background:"var(--bg-base)",color:"var(--text-primary)"},header:{height:40,padding:"0 16px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",background:"var(--bg-chrome)",flexShrink:0,position:"relative"},headerLeft:{display:"flex",alignItems:"center",gap:8},hostBadge:{fontSize:9,fontWeight:600,letterSpacing:.5,color:"var(--text-dim)",background:"var(--bg-active)",padding:"2px 6px",borderRadius:3,border:"1px solid var(--border)",fontFamily:"var(--font)"},headerCenter:{display:"flex",alignItems:"center",gap:0},headerRight:{display:"flex",alignItems:"center",gap:10},tabBtn:{padding:"10px 14px",background:"transparent",border:"none",borderBottom:"2px solid transparent",fontSize:12,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer",transition:"color 0.1s"},spawnBtn:{padding:"4px 12px",background:"transparent",border:"1px solid var(--accent)",borderRadius:2,color:"var(--accent)",fontSize:12,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer"},agentCount:{fontSize:11,color:"var(--text-dim)"},statusText:{fontSize:11,color:"var(--text-dim)",fontStyle:"italic"},mainRow:{flex:1,display:"flex",overflow:"hidden"},content:{flex:1,overflow:"hidden",position:"relative"},detailPanel:{width:320,flexShrink:0,background:"var(--bg-chrome)",borderLeft:"1px solid var(--border)",padding:16,overflowY:"auto",position:"relative"},closeBtn:{position:"absolute",top:8,right:10,background:"none",border:"none",color:"var(--text-dim)",fontSize:14,cursor:"pointer",fontFamily:"var(--font)",padding:"2px 6px"}};eD.createRoot(document.getElementById("root")).render(O.jsx(Uee,{}));