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
@@ -0,0 +1,182 @@
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 V$(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var U0={exports:{}},Ih={};/**
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 Wk;function V3(){if(Wk)return Ih;Wk=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 Ih.Fragment=e,Ih.jsx=i,Ih.jsxs=i,Ih}var qk;function Y3(){return qk||(qk=1,U0.exports=V3()),U0.exports}var O=Y3(),G0={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 Ik;function H3(){if(Ik)return We;Ik=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"),u=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(){}},x=Object.assign,w={};function _(D,I,ee){this.props=D,this.context=I,this.refs=w,this.updater=ee||S}_.prototype.isReactComponent={},_.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")},_.prototype.forceUpdate=function(D){this.updater.enqueueForceUpdate(this,D,"forceUpdate")};function T(){}T.prototype=_.prototype;function C(D,I,ee){this.props=D,this.context=I,this.refs=w,this.updater=ee||S}var Q=C.prototype=new T;Q.constructor=C,x(Q,_.prototype),Q.isPureReactComponent=!0;var M=Array.isArray;function E(){}var L={H:null,A:null,T:null,S:null},V=Object.prototype.hasOwnProperty;function H(D,I,ee){var re=ee.ref;return{$$typeof:t,type:D,key:I,ref:re!==void 0?re:null,props:ee}}function U(D,I){return H(D.type,I,D.props)}function X(D){return typeof D=="object"&&D!==null&&D.$$typeof===t}function R(D){var I={"=":"=0",":":"=2"};return"$"+D.replace(/[=:]/g,function(ee){return I[ee]})}var j=/\/+/g;function P(D,I){return typeof D=="object"&&D!==null&&D.key!=null?R(""+D.key):I.toString(36)}function N(D){switch(D.status){case"fulfilled":return D.value;case"rejected":throw D.reason;default:switch(typeof D.status=="string"?D.then(E,E):(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,ee,re,ce){var fe=typeof D;(fe==="undefined"||fe==="boolean")&&(D=null);var ge=!1;if(D===null)ge=!0;else switch(fe){case"bigint":case"string":case"number":ge=!0;break;case"object":switch(D.$$typeof){case t:case e:ge=!0;break;case f:return ge=D._init,$(ge(D._payload),I,ee,re,ce)}}if(ge)return ce=ce(D),ge=re===""?"."+P(D,0):re,M(ce)?(ee="",ge!=null&&(ee=ge.replace(j,"$&/")+"/"),$(ce,I,ee,"",function(we){return we})):ce!=null&&(X(ce)&&(ce=U(ce,ee+(ce.key==null||D&&D.key===ce.key?"":(""+ce.key).replace(j,"$&/")+"/")+ge)),I.push(ce)),1;ge=0;var pe=re===""?".":re+":";if(M(D))for(var te=0;te<D.length;te++)re=D[te],fe=pe+P(re,te),ge+=$(re,I,ee,fe,ce);else if(te=v(D),typeof te=="function")for(D=te.call(D),te=0;!(re=D.next()).done;)re=re.value,fe=pe+P(re,te++),ge+=$(re,I,ee,fe,ce);else if(fe==="object"){if(typeof D.then=="function")return $(N(D),I,ee,re,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 ge}function Z(D,I,ee){if(D==null)return D;var re=[],ce=0;return $(D,re,"","",function(fe){return I.call(ee,fe,ce++)}),re}function z(D){if(D._status===-1){var I=D._result;I=I(),I.then(function(ee){(D._status===0||D._status===-1)&&(D._status=1,D._result=ee)},function(ee){(D._status===0||D._status===-1)&&(D._status=2,D._result=ee)}),D._status===-1&&(D._status=0,D._result=I)}if(D._status===1)return D._result.default;throw D._result}var q=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)},F={map:Z,forEach:function(D,I,ee){Z(D,function(){I.apply(this,arguments)},ee)},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(!X(D))throw Error("React.Children.only expected to receive a single React element child.");return D}};return We.Activity=g,We.Children=F,We.Component=_,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=L,We.__COMPILER_RUNTIME={__proto__:null,c:function(D){return L.H.useMemoCache(D)}},We.cache=function(D){return function(){return D.apply(null,arguments)}},We.cacheSignal=function(){return null},We.cloneElement=function(D,I,ee){if(D==null)throw Error("The argument must be a React element, but you passed "+D+".");var re=x({},D.props),ce=D.key;if(I!=null)for(fe in I.key!==void 0&&(ce=""+I.key),I)!V.call(I,fe)||fe==="key"||fe==="__self"||fe==="__source"||fe==="ref"&&I.ref===void 0||(re[fe]=I[fe]);var fe=arguments.length-2;if(fe===1)re.children=ee;else if(1<fe){for(var ge=Array(fe),pe=0;pe<fe;pe++)ge[pe]=arguments[pe+2];re.children=ge}return H(D.type,ce,re)},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,ee){var re,ce={},fe=null;if(I!=null)for(re in I.key!==void 0&&(fe=""+I.key),I)V.call(I,re)&&re!=="key"&&re!=="__self"&&re!=="__source"&&(ce[re]=I[re]);var ge=arguments.length-2;if(ge===1)ce.children=ee;else if(1<ge){for(var pe=Array(ge),te=0;te<ge;te++)pe[te]=arguments[te+2];ce.children=pe}if(D&&D.defaultProps)for(re in ge=D.defaultProps,ge)ce[re]===void 0&&(ce[re]=ge[re]);return H(D,fe,ce)},We.createRef=function(){return{current:null}},We.forwardRef=function(D){return{$$typeof:c,render:D}},We.isValidElement=X,We.lazy=function(D){return{$$typeof:f,_payload:{_status:-1,_result:D},_init:z}},We.memo=function(D,I){return{$$typeof:u,type:D,compare:I===void 0?null:I}},We.startTransition=function(D){var I=L.T,ee={};L.T=ee;try{var re=D(),ce=L.S;ce!==null&&ce(ee,re),typeof re=="object"&&re!==null&&typeof re.then=="function"&&re.then(E,q)}catch(fe){q(fe)}finally{I!==null&&ee.types!==null&&(I.types=ee.types),L.T=I}},We.unstable_useCacheRefresh=function(){return L.H.useCacheRefresh()},We.use=function(D){return L.H.use(D)},We.useActionState=function(D,I,ee){return L.H.useActionState(D,I,ee)},We.useCallback=function(D,I){return L.H.useCallback(D,I)},We.useContext=function(D){return L.H.useContext(D)},We.useDebugValue=function(){},We.useDeferredValue=function(D,I){return L.H.useDeferredValue(D,I)},We.useEffect=function(D,I){return L.H.useEffect(D,I)},We.useEffectEvent=function(D){return L.H.useEffectEvent(D)},We.useId=function(){return L.H.useId()},We.useImperativeHandle=function(D,I,ee){return L.H.useImperativeHandle(D,I,ee)},We.useInsertionEffect=function(D,I){return L.H.useInsertionEffect(D,I)},We.useLayoutEffect=function(D,I){return L.H.useLayoutEffect(D,I)},We.useMemo=function(D,I){return L.H.useMemo(D,I)},We.useOptimistic=function(D,I){return L.H.useOptimistic(D,I)},We.useReducer=function(D,I,ee){return L.H.useReducer(D,I,ee)},We.useRef=function(D){return L.H.useRef(D)},We.useState=function(D){return L.H.useState(D)},We.useSyncExternalStore=function(D,I,ee){return L.H.useSyncExternalStore(D,I,ee)},We.useTransition=function(){return L.H.useTransition()},We.version="19.2.4",We}var Vk;function cd(){return Vk||(Vk=1,G0.exports=H3()),G0.exports}var B=cd();const Wn=V$(B);var F0={exports:{}},Vh={},K0={exports:{}},J0={};/**
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 Yk;function U3(){return Yk||(Yk=1,(function(t){function e($,Z){var z=$.length;$.push(Z);e:for(;0<z;){var q=z-1>>>1,F=$[q];if(0<r(F,Z))$[q]=Z,$[z]=F,z=q;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 q=0,F=$.length,D=F>>>1;q<D;){var I=2*(q+1)-1,ee=$[I],re=I+1,ce=$[re];if(0>r(ee,z))re<F&&0>r(ce,ee)?($[q]=ce,$[re]=z,q=re):($[q]=ee,$[I]=z,q=I);else if(re<F&&0>r(ce,z))$[q]=ce,$[re]=z,q=re;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=[],u=[],f=1,g=null,m=3,v=!1,S=!1,x=!1,w=!1,_=typeof setTimeout=="function"?setTimeout:null,T=typeof clearTimeout=="function"?clearTimeout:null,C=typeof setImmediate<"u"?setImmediate:null;function Q($){for(var Z=i(u);Z!==null;){if(Z.callback===null)n(u);else if(Z.startTime<=$)n(u),Z.sortIndex=Z.expirationTime,e(h,Z);else break;Z=i(u)}}function M($){if(x=!1,Q($),!S)if(i(h)!==null)S=!0,E||(E=!0,R());else{var Z=i(u);Z!==null&&N(M,Z.startTime-$)}}var E=!1,L=-1,V=5,H=-1;function U(){return w?!0:!(t.unstable_now()-H<V)}function X(){if(w=!1,E){var $=t.unstable_now();H=$;var Z=!0;try{e:{S=!1,x&&(x=!1,T(L),L=-1),v=!0;var z=m;try{t:{for(Q($),g=i(h);g!==null&&!(g.expirationTime>$&&U());){var q=g.callback;if(typeof q=="function"){g.callback=null,m=g.priorityLevel;var F=q(g.expirationTime<=$);if($=t.unstable_now(),typeof F=="function"){g.callback=F,Q($),Z=!0;break t}g===i(h)&&n(h),Q($)}else n(h);g=i(h)}if(g!==null)Z=!0;else{var D=i(u);D!==null&&N(M,D.startTime-$),Z=!1}}break e}finally{g=null,m=z,v=!1}Z=void 0}}finally{Z?R():E=!1}}}var R;if(typeof C=="function")R=function(){C(X)};else if(typeof MessageChannel<"u"){var j=new MessageChannel,P=j.port2;j.port1.onmessage=X,R=function(){P.postMessage(null)}}else R=function(){_(X,0)};function N($,Z){L=_(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 q=t.unstable_now();switch(typeof z=="object"&&z!==null?(z=z.delay,z=typeof z=="number"&&0<z?q+z:q):z=q,$){case 1:var F=-1;break;case 2:F=250;break;case 5:F=1073741823;break;case 4:F=1e4;break;default:F=5e3}return F=z+F,$={id:f++,callback:Z,priorityLevel:$,startTime:z,expirationTime:F,sortIndex:-1},z>q?($.sortIndex=z,e(u,$),i(h)===null&&$===i(u)&&(x?(T(L),L=-1):x=!0,N(M,z-q))):($.sortIndex=F,e(h,$),S||v||(S=!0,E||(E=!0,R()))),$},t.unstable_shouldYield=U,t.unstable_wrapCallback=function($){var Z=m;return function(){var z=m;m=Z;try{return $.apply(this,arguments)}finally{m=z}}}})(J0)),J0}var Hk;function G3(){return Hk||(Hk=1,K0.exports=U3()),K0.exports}var ev={exports:{}},Ii={};/**
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 Uk;function F3(){if(Uk)return Ii;Uk=1;var t=cd();function e(h){var u="https://react.dev/errors/"+h;if(1<arguments.length){u+="?args[]="+encodeURIComponent(arguments[1]);for(var f=2;f<arguments.length;f++)u+="&args[]="+encodeURIComponent(arguments[f])}return"Minified React error #"+h+"; visit "+u+" 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,u,f){var g=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:r,key:g==null?null:""+g,children:h,containerInfo:u,implementation:f}}var a=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(h,u){if(h==="font")return"";if(typeof u=="string")return u==="use-credentials"?u:""}return Ii.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=n,Ii.createPortal=function(h,u){var f=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!u||u.nodeType!==1&&u.nodeType!==9&&u.nodeType!==11)throw Error(e(299));return s(h,u,null,f)},Ii.flushSync=function(h){var u=a.T,f=n.p;try{if(a.T=null,n.p=2,h)return h()}finally{a.T=u,n.p=f,n.d.f()}},Ii.preconnect=function(h,u){typeof h=="string"&&(u?(u=u.crossOrigin,u=typeof u=="string"?u==="use-credentials"?u:"":void 0):u=null,n.d.C(h,u))},Ii.prefetchDNS=function(h){typeof h=="string"&&n.d.D(h)},Ii.preinit=function(h,u){if(typeof h=="string"&&u&&typeof u.as=="string"){var f=u.as,g=c(f,u.crossOrigin),m=typeof u.integrity=="string"?u.integrity:void 0,v=typeof u.fetchPriority=="string"?u.fetchPriority:void 0;f==="style"?n.d.S(h,typeof u.precedence=="string"?u.precedence:void 0,{crossOrigin:g,integrity:m,fetchPriority:v}):f==="script"&&n.d.X(h,{crossOrigin:g,integrity:m,fetchPriority:v,nonce:typeof u.nonce=="string"?u.nonce:void 0})}},Ii.preinitModule=function(h,u){if(typeof h=="string")if(typeof u=="object"&&u!==null){if(u.as==null||u.as==="script"){var f=c(u.as,u.crossOrigin);n.d.M(h,{crossOrigin:f,integrity:typeof u.integrity=="string"?u.integrity:void 0,nonce:typeof u.nonce=="string"?u.nonce:void 0})}}else u==null&&n.d.M(h)},Ii.preload=function(h,u){if(typeof h=="string"&&typeof u=="object"&&u!==null&&typeof u.as=="string"){var f=u.as,g=c(f,u.crossOrigin);n.d.L(h,f,{crossOrigin:g,integrity:typeof u.integrity=="string"?u.integrity:void 0,nonce:typeof u.nonce=="string"?u.nonce:void 0,type:typeof u.type=="string"?u.type:void 0,fetchPriority:typeof u.fetchPriority=="string"?u.fetchPriority:void 0,referrerPolicy:typeof u.referrerPolicy=="string"?u.referrerPolicy:void 0,imageSrcSet:typeof u.imageSrcSet=="string"?u.imageSrcSet:void 0,imageSizes:typeof u.imageSizes=="string"?u.imageSizes:void 0,media:typeof u.media=="string"?u.media:void 0})}},Ii.preloadModule=function(h,u){if(typeof h=="string")if(u){var f=c(u.as,u.crossOrigin);n.d.m(h,{as:typeof u.as=="string"&&u.as!=="script"?u.as:void 0,crossOrigin:f,integrity:typeof u.integrity=="string"?u.integrity:void 0})}else n.d.m(h)},Ii.requestFormReset=function(h){n.d.r(h)},Ii.unstable_batchedUpdates=function(h,u){return h(u)},Ii.useFormState=function(h,u,f){return a.H.useFormState(h,u,f)},Ii.useFormStatus=function(){return a.H.useHostTransitionStatus()},Ii.version="19.2.4",Ii}var Gk;function Y$(){if(Gk)return ev.exports;Gk=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(),ev.exports=F3(),ev.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 Fk;function K3(){if(Fk)return Vh;Fk=1;var t=G3(),e=cd(),i=Y$();function n(o){var l="https://react.dev/errors/"+o;if(1<arguments.length){l+="?args[]="+encodeURIComponent(arguments[1]);for(var d=2;d<arguments.length;d++)l+="&args[]="+encodeURIComponent(arguments[d])}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,d=o;if(o.alternate)for(;l.return;)l=l.return;else{o=l;do l=o,(l.flags&4098)!==0&&(d=l.return),o=l.return;while(o)}return l.tag===3?d: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 u(o){var l=o.alternate;if(!l){if(l=s(o),l===null)throw Error(n(188));return l!==o?null:o}for(var d=o,p=l;;){var y=d.return;if(y===null)break;var b=y.alternate;if(b===null){if(p=y.return,p!==null){d=p;continue}break}if(y.child===b.child){for(b=y.child;b;){if(b===d)return h(y),o;if(b===p)return h(y),l;b=b.sibling}throw Error(n(188))}if(d.return!==p.return)d=y,p=b;else{for(var k=!1,A=y.child;A;){if(A===d){k=!0,d=y,p=b;break}if(A===p){k=!0,p=y,d=b;break}A=A.sibling}if(!k){for(A=b.child;A;){if(A===d){k=!0,d=b,p=y;break}if(A===p){k=!0,p=b,d=y;break}A=A.sibling}if(!k)throw Error(n(189))}}if(d.alternate!==p)throw Error(n(190))}if(d.tag!==3)throw Error(n(188));return d.stateNode.current===d?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"),x=Symbol.for("react.fragment"),w=Symbol.for("react.strict_mode"),_=Symbol.for("react.profiler"),T=Symbol.for("react.consumer"),C=Symbol.for("react.context"),Q=Symbol.for("react.forward_ref"),M=Symbol.for("react.suspense"),E=Symbol.for("react.suspense_list"),L=Symbol.for("react.memo"),V=Symbol.for("react.lazy"),H=Symbol.for("react.activity"),U=Symbol.for("react.memo_cache_sentinel"),X=Symbol.iterator;function R(o){return o===null||typeof o!="object"?null:(o=X&&o[X]||o["@@iterator"],typeof o=="function"?o:null)}var j=Symbol.for("react.client.reference");function P(o){if(o==null)return null;if(typeof o=="function")return o.$$typeof===j?null:o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case x:return"Fragment";case _:return"Profiler";case w:return"StrictMode";case M:return"Suspense";case E:return"SuspenseList";case H:return"Activity"}if(typeof o=="object")switch(o.$$typeof){case S:return"Portal";case C:return o.displayName||"Context";case T:return(o._context.displayName||"Context")+".Consumer";case Q:var l=o.render;return o=o.displayName,o||(o=l.displayName||l.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case L:return l=o.displayName||null,l!==null?l:P(o.type)||"Memo";case V:l=o._payload,o=o._init;try{return P(o(l))}catch{}}return null}var N=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},q=[],F=-1;function D(o){return{current:o}}function I(o){0>F||(o.current=q[F],q[F]=null,F--)}function ee(o,l){F++,q[F]=o.current,o.current=l}var re=D(null),ce=D(null),fe=D(null),ge=D(null);function pe(o,l){switch(ee(fe,l),ee(ce,o),ee(re,null),l.nodeType){case 9:case 11:o=(o=l.documentElement)&&(o=o.namespaceURI)?dk(o):0;break;default:if(o=l.tagName,l=l.namespaceURI)l=dk(l),o=fk(l,o);else switch(o){case"svg":o=1;break;case"math":o=2;break;default:o=0}}I(re),ee(re,o)}function te(){I(re),I(ce),I(fe)}function we(o){o.memoizedState!==null&&ee(ge,o);var l=re.current,d=fk(l,o.type);l!==d&&(ee(ce,o),ee(re,d))}function Re(o){ce.current===o&&(I(re),I(ce)),ge.current===o&&(I(ge),Nh._currentValue=z)}var Ce,Oe;function Xe(o){if(Ce===void 0)try{throw Error()}catch(d){var l=d.stack.trim().match(/\n( *(at )?)/);Ce=l&&l[1]||"",Oe=-1<d.stack.indexOf(`
42
+ at`)?" (<anonymous>)":-1<d.stack.indexOf("@")?"@unknown:0:0":""}return`
43
+ `+Ce+o+Oe}var st=!1;function Fe(o,l){if(!o||st)return"";st=!0;var d=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var p={DetermineComponentFrameRoot:function(){try{if(l){var ue=function(){throw Error()};if(Object.defineProperty(ue.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ue,[])}catch(oe){var se=oe}Reflect.construct(o,[],ue)}else{try{ue.call()}catch(oe){se=oe}o.call(ue.prototype)}}else{try{throw Error()}catch(oe){se=oe}(ue=o())&&typeof ue.catch=="function"&&ue.catch(function(){})}}catch(oe){if(oe&&se&&typeof oe.stack=="string")return[oe.stack,se.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],A=b[1];if(k&&A){var Y=k.split(`
44
+ `),ne=A.split(`
45
+ `);for(y=p=0;p<Y.length&&!Y[p].includes("DetermineComponentFrameRoot");)p++;for(;y<ne.length&&!ne[y].includes("DetermineComponentFrameRoot");)y++;if(p===Y.length||y===ne.length)for(p=Y.length-1,y=ne.length-1;1<=p&&0<=y&&Y[p]!==ne[y];)y--;for(;1<=p&&0<=y;p--,y--)if(Y[p]!==ne[y]){if(p!==1||y!==1)do if(p--,y--,0>y||Y[p]!==ne[y]){var ae=`
46
+ `+Y[p].replace(" at new "," at ");return o.displayName&&ae.includes("<anonymous>")&&(ae=ae.replace("<anonymous>",o.displayName)),ae}while(1<=p&&0<=y);break}}}finally{st=!1,Error.prepareStackTrace=d}return(d=o?o.displayName||o.name:"")?Xe(d):""}function Lt(o,l){switch(o.tag){case 26:case 27:case 5:return Xe(o.type);case 16:return Xe("Lazy");case 13:return o.child!==l&&l!==null?Xe("Suspense Fallback"):Xe("Suspense");case 19:return Xe("SuspenseList");case 0:case 15:return Fe(o.type,!1);case 11:return Fe(o.type.render,!1);case 1:return Fe(o.type,!0);case 31:return Xe("Activity");default:return""}}function Si(o){try{var l="",d=null;do l+=Lt(o,d),d=o,o=o.return;while(o);return l}catch(p){return`
47
+ Error generating stack: `+p.message+`
48
+ `+p.stack}}var Pi=Object.prototype.hasOwnProperty,ln=t.unstable_scheduleCallback,cn=t.unstable_cancelCallback,Zi=t.unstable_shouldYield,as=t.unstable_requestPaint,ii=t.unstable_now,Js=t.unstable_getCurrentPriorityLevel,Hn=t.unstable_ImmediatePriority,Rr=t.unstable_UserBlockingPriority,ls=t.unstable_NormalPriority,eo=t.unstable_LowPriority,hn=t.unstable_IdlePriority,cs=t.log,hs=t.unstable_setDisableYieldValue,Ar=null,qt=null;function Ki(o){if(typeof cs=="function"&&hs(o),qt&&typeof qt.setStrictMode=="function")try{qt.setStrictMode(Ar,o)}catch{}}var Wi=Math.clz32?Math.clz32:bl,yl=Math.log,Sl=Math.LN2;function bl(o){return o>>>=0,o===0?32:31-(yl(o)/Sl|0)|0}var to=256,io=262144,no=4194304;function gr(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 ro(o,l,d){var p=o.pendingLanes;if(p===0)return 0;var y=0,b=o.suspendedLanes,k=o.pingedLanes;o=o.warmLanes;var A=p&134217727;return A!==0?(p=A&~b,p!==0?y=gr(p):(k&=A,k!==0?y=gr(k):d||(d=A&~o,d!==0&&(y=gr(d))))):(A=p&~b,A!==0?y=gr(A):k!==0?y=gr(k):d||(d=p&~o,d!==0&&(y=gr(d)))),y===0?0:l!==0&&l!==y&&(l&b)===0&&(b=y&-y,d=l&-l,b>=d||b===32&&(d&4194048)!==0)?l:y}function Cn(o,l){return(o.pendingLanes&~(o.suspendedLanes&~o.pingedLanes)&l)===0}function pa(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 so(){var o=no;return no<<=1,(no&62914560)===0&&(no=4194304),o}function ga(o){for(var l=[],d=0;31>d;d++)l.push(o);return l}function Mr(o,l){o.pendingLanes|=l,l!==268435456&&(o.suspendedLanes=0,o.pingedLanes=0,o.warmLanes=0)}function eh(o,l,d,p,y,b){var k=o.pendingLanes;o.pendingLanes=d,o.suspendedLanes=0,o.pingedLanes=0,o.warmLanes=0,o.expiredLanes&=d,o.entangledLanes&=d,o.errorRecoveryDisabledLanes&=d,o.shellSuspendCounter=0;var A=o.entanglements,Y=o.expirationTimes,ne=o.hiddenUpdates;for(d=k&~d;0<d;){var ae=31-Wi(d),ue=1<<ae;A[ae]=0,Y[ae]=-1;var se=ne[ae];if(se!==null)for(ne[ae]=null,ae=0;ae<se.length;ae++){var oe=se[ae];oe!==null&&(oe.lane&=-536870913)}d&=~ue}p!==0&&xl(o,p,0),b!==0&&y===0&&o.tag!==0&&(o.suspendedLanes|=b&~(k&~l))}function xl(o,l,d){o.pendingLanes|=l,o.suspendedLanes&=~l;var p=31-Wi(l);o.entangledLanes|=l,o.entanglements[p]=o.entanglements[p]|1073741824|d&261930}function ma(o,l){var d=o.entangledLanes|=l;for(o=o.entanglements;d;){var p=31-Wi(d),y=1<<p;y&l|o[p]&l&&(o[p]|=l),d&=~y}}function _l(o,l){var d=l&-l;return d=(d&42)!==0?1:Oa(d),(d&(o.suspendedLanes|l))!==0?0:d}function Oa(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 J(o){return o&=-o,2<o?8<o?(o&134217727)!==0?32:268435456:8:2}function Ne(){var o=Z.p;return o!==0?o:(o=window.event,o===void 0?32:jk(o.type))}function lt(o,l){var d=Z.p;try{return Z.p=o,l()}finally{Z.p=d}}var Mt=Math.random().toString(36).slice(2),St="__reactFiber$"+Mt,Pt="__reactProps$"+Mt,qi="__reactContainer$"+Mt,wl="__reactEvents$"+Mt,Pd="__reactListeners$"+Mt,Xm="__reactHandles$"+Mt,Ed="__reactResources$"+Mt,va="__reactMarker$"+Mt;function th(o){delete o[St],delete o[Pt],delete o[wl],delete o[Pd],delete o[Xm]}function oo(o){var l=o[St];if(l)return l;for(var d=o.parentNode;d;){if(l=d[qi]||d[St]){if(d=l.alternate,l.child!==null||d!==null&&d.child!==null)for(o=Sk(o);o!==null;){if(d=o[St])return d;o=Sk(o)}return l}o=d,d=o.parentNode}return null}function ao(o){if(o=o[St]||o[qi]){var l=o.tag;if(l===5||l===6||l===13||l===31||l===26||l===27||l===3)return o}return null}function lo(o){var l=o.tag;if(l===5||l===26||l===27||l===6)return o.stateNode;throw Error(n(33))}function co(o){var l=o[Ed];return l||(l=o[Ed]={hoistableStyles:new Map,hoistableScripts:new Map}),l}function ni(o){o[va]=!0}var Rd=new Set,Ad={};function us(o,l){ho(o,l),ho(o+"Capture",l)}function ho(o,l){for(Ad[o]=l,o=0;o<l.length;o++)Rd.add(l[o])}var Nm=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]*$"),ih={},Md={};function Zm(o){return Pi.call(Md,o)?!0:Pi.call(ih,o)?!1:Nm.test(o)?Md[o]=!0:(ih[o]=!0,!1)}function kl(o,l,d){if(Zm(l))if(d===null)o.removeAttribute(l);else{switch(typeof d){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,""+d)}}function Cl(o,l,d){if(d===null)o.removeAttribute(l);else{switch(typeof d){case"undefined":case"function":case"symbol":case"boolean":o.removeAttribute(l);return}o.setAttribute(l,""+d)}}function mr(o,l,d,p){if(p===null)o.removeAttribute(d);else{switch(typeof p){case"undefined":case"function":case"symbol":case"boolean":o.removeAttribute(d);return}o.setAttributeNS(l,d,""+p)}}function un(o){switch(typeof o){case"bigint":case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function zd(o){var l=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(l==="checkbox"||l==="radio")}function Wm(o,l,d){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){d=""+k,b.call(this,k)}}),Object.defineProperty(o,l,{enumerable:p.enumerable}),{getValue:function(){return d},setValue:function(k){d=""+k},stopTracking:function(){o._valueTracker=null,delete o[l]}}}}function uo(o){if(!o._valueTracker){var l=zd(o)?"checked":"value";o._valueTracker=Wm(o,l,""+o[l])}}function jd(o){if(!o)return!1;var l=o._valueTracker;if(!l)return!0;var d=l.getValue(),p="";return o&&(p=zd(o)?o.checked?"true":"false":o.value),o=p,o!==d?(l.setValue(o),!0):!1}function ya(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 qm=/[\n"\\]/g;function dn(o){return o.replace(qm,function(l){return"\\"+l.charCodeAt(0).toString(16)+" "})}function Sa(o,l,d,p,y,b,k,A){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=""+un(l)):o.value!==""+un(l)&&(o.value=""+un(l)):k!=="submit"&&k!=="reset"||o.removeAttribute("value"),l!=null?nh(o,k,un(l)):d!=null?nh(o,k,un(d)):p!=null&&o.removeAttribute("value"),y==null&&b!=null&&(o.defaultChecked=!!b),y!=null&&(o.checked=y&&typeof y!="function"&&typeof y!="symbol"),A!=null&&typeof A!="function"&&typeof A!="symbol"&&typeof A!="boolean"?o.name=""+un(A):o.removeAttribute("name")}function Dd(o,l,d,p,y,b,k,A){if(b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"&&(o.type=b),l!=null||d!=null){if(!(b!=="submit"&&b!=="reset"||l!=null)){uo(o);return}d=d!=null?""+un(d):"",l=l!=null?""+un(l):d,A||l===o.value||(o.value=l),o.defaultValue=l}p=p??y,p=typeof p!="function"&&typeof p!="symbol"&&!!p,o.checked=A?o.checked:!!p,o.defaultChecked=!!p,k!=null&&typeof k!="function"&&typeof k!="symbol"&&typeof k!="boolean"&&(o.name=k),uo(o)}function nh(o,l,d){l==="number"&&ya(o.ownerDocument)===o||o.defaultValue===""+d||(o.defaultValue=""+d)}function ds(o,l,d,p){if(o=o.options,l){l={};for(var y=0;y<d.length;y++)l["$"+d[y]]=!0;for(d=0;d<o.length;d++)y=l.hasOwnProperty("$"+o[d].value),o[d].selected!==y&&(o[d].selected=y),y&&p&&(o[d].defaultSelected=!0)}else{for(d=""+un(d),l=null,y=0;y<o.length;y++){if(o[y].value===d){o[y].selected=!0,p&&(o[y].defaultSelected=!0);return}l!==null||o[y].disabled||(l=o[y])}l!==null&&(l.selected=!0)}}function ax(o,l,d){if(l!=null&&(l=""+un(l),l!==o.value&&(o.value=l),d==null)){o.defaultValue!==l&&(o.defaultValue=l);return}o.defaultValue=d!=null?""+un(d):""}function lx(o,l,d,p){if(l==null){if(p!=null){if(d!=null)throw Error(n(92));if(N(p)){if(1<p.length)throw Error(n(93));p=p[0]}d=p}d==null&&(d=""),l=d}d=un(l),o.defaultValue=d,p=o.textContent,p===d&&p!==""&&p!==null&&(o.value=p),uo(o)}function Tl(o,l){if(l){var d=o.firstChild;if(d&&d===o.lastChild&&d.nodeType===3){d.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 cx(o,l,d){var p=l.indexOf("--")===0;d==null||typeof d=="boolean"||d===""?p?o.setProperty(l,""):l==="float"?o.cssFloat="":o[l]="":p?o.setProperty(l,d):typeof d!="number"||d===0||Nz.has(l)?l==="float"?o.cssFloat=d:o[l]=(""+d).trim():o[l]=d+"px"}function hx(o,l,d){if(l!=null&&typeof l!="object")throw Error(n(62));if(o=o.style,d!=null){for(var p in d)!d.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)&&d[y]!==p&&cx(o,y,p)}else for(var b in l)l.hasOwnProperty(b)&&cx(o,b,l[b])}function Im(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 Bd(o){return Wz.test(""+o)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":o}function fs(){}var Vm=null;function Ym(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var Ql=null,$l=null;function ux(o){var l=ao(o);if(l&&(o=l.stateNode)){var d=o[Pt]||null;e:switch(o=l.stateNode,l.type){case"input":if(Sa(o,d.value,d.defaultValue,d.defaultValue,d.checked,d.defaultChecked,d.type,d.name),l=d.name,d.type==="radio"&&l!=null){for(d=o;d.parentNode;)d=d.parentNode;for(d=d.querySelectorAll('input[name="'+dn(""+l)+'"][type="radio"]'),l=0;l<d.length;l++){var p=d[l];if(p!==o&&p.form===o.form){var y=p[Pt]||null;if(!y)throw Error(n(90));Sa(p,y.value,y.defaultValue,y.defaultValue,y.checked,y.defaultChecked,y.type,y.name)}}for(l=0;l<d.length;l++)p=d[l],p.form===o.form&&jd(p)}break e;case"textarea":ax(o,d.value,d.defaultValue);break e;case"select":l=d.value,l!=null&&ds(o,!!d.multiple,l,!1)}}}var Hm=!1;function dx(o,l,d){if(Hm)return o(l,d);Hm=!0;try{var p=o(l);return p}finally{if(Hm=!1,(Ql!==null||$l!==null)&&(Cf(),Ql&&(l=Ql,o=$l,$l=Ql=null,ux(l),o)))for(l=0;l<o.length;l++)ux(o[l])}}function rh(o,l){var d=o.stateNode;if(d===null)return null;var p=d[Pt]||null;if(p===null)return null;d=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(d&&typeof d!="function")throw Error(n(231,l,typeof d));return d}var ps=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Um=!1;if(ps)try{var sh={};Object.defineProperty(sh,"passive",{get:function(){Um=!0}}),window.addEventListener("test",sh,sh),window.removeEventListener("test",sh,sh)}catch{Um=!1}var fo=null,Gm=null,Ld=null;function fx(){if(Ld)return Ld;var o,l=Gm,d=l.length,p,y="value"in fo?fo.value:fo.textContent,b=y.length;for(o=0;o<d&&l[o]===y[o];o++);var k=d-o;for(p=1;p<=k&&l[d-p]===y[b-p];p++);return Ld=y.slice(o,1<p?1-p:void 0)}function Xd(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 Nd(){return!0}function px(){return!1}function fn(o){function l(d,p,y,b,k){this._reactName=d,this._targetInst=y,this.type=p,this.nativeEvent=b,this.target=k,this.currentTarget=null;for(var A in o)o.hasOwnProperty(A)&&(d=o[A],this[A]=d?d(b):b[A]);return this.isDefaultPrevented=(b.defaultPrevented!=null?b.defaultPrevented:b.returnValue===!1)?Nd:px,this.isPropagationStopped=px,this}return g(l.prototype,{preventDefault:function(){this.defaultPrevented=!0;var d=this.nativeEvent;d&&(d.preventDefault?d.preventDefault():typeof d.returnValue!="unknown"&&(d.returnValue=!1),this.isDefaultPrevented=Nd)},stopPropagation:function(){var d=this.nativeEvent;d&&(d.stopPropagation?d.stopPropagation():typeof d.cancelBubble!="unknown"&&(d.cancelBubble=!0),this.isPropagationStopped=Nd)},persist:function(){},isPersistent:Nd}),l}var ba={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(o){return o.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Zd=fn(ba),oh=g({},ba,{view:0,detail:0}),qz=fn(oh),Fm,Km,ah,Wd=g({},oh,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:eO,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!==ah&&(ah&&o.type==="mousemove"?(Fm=o.screenX-ah.screenX,Km=o.screenY-ah.screenY):Km=Fm=0,ah=o),Fm)},movementY:function(o){return"movementY"in o?o.movementY:Km}}),gx=fn(Wd),Iz=g({},Wd,{dataTransfer:0}),Vz=fn(Iz),Yz=g({},oh,{relatedTarget:0}),Jm=fn(Yz),Hz=g({},ba,{animationName:0,elapsedTime:0,pseudoElement:0}),Uz=fn(Hz),Gz=g({},ba,{clipboardData:function(o){return"clipboardData"in o?o.clipboardData:window.clipboardData}}),Fz=fn(Gz),Kz=g({},ba,{data:0}),mx=fn(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 eO(){return ij}var nj=g({},oh,{key:function(o){if(o.key){var l=Jz[o.key]||o.key;if(l!=="Unidentified")return l}return o.type==="keypress"?(o=Xd(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:eO,charCode:function(o){return o.type==="keypress"?Xd(o):0},keyCode:function(o){return o.type==="keydown"||o.type==="keyup"?o.keyCode:0},which:function(o){return o.type==="keypress"?Xd(o):o.type==="keydown"||o.type==="keyup"?o.keyCode:0}}),rj=fn(nj),sj=g({},Wd,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Ox=fn(sj),oj=g({},oh,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:eO}),aj=fn(oj),lj=g({},ba,{propertyName:0,elapsedTime:0,pseudoElement:0}),cj=fn(lj),hj=g({},Wd,{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=fn(hj),dj=g({},ba,{newState:0,oldState:0}),fj=fn(dj),pj=[9,13,27,32],tO=ps&&"CompositionEvent"in window,lh=null;ps&&"documentMode"in document&&(lh=document.documentMode);var gj=ps&&"TextEvent"in window&&!lh,vx=ps&&(!tO||lh&&8<lh&&11>=lh),yx=" ",Sx=!1;function bx(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 xx(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var Pl=!1;function mj(o,l){switch(o){case"compositionend":return xx(l);case"keypress":return l.which!==32?null:(Sx=!0,yx);case"textInput":return o=l.data,o===yx&&Sx?null:o;default:return null}}function Oj(o,l){if(Pl)return o==="compositionend"||!tO&&bx(o,l)?(o=fx(),Ld=Gm=fo=null,Pl=!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 vx&&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 _x(o){var l=o&&o.nodeName&&o.nodeName.toLowerCase();return l==="input"?!!vj[o.type]:l==="textarea"}function wx(o,l,d,p){Ql?$l?$l.push(p):$l=[p]:Ql=p,l=Af(l,"onChange"),0<l.length&&(d=new Zd("onChange","change",null,d,p),o.push({event:d,listeners:l}))}var ch=null,hh=null;function yj(o){ok(o,0)}function qd(o){var l=lo(o);if(jd(l))return o}function kx(o,l){if(o==="change")return l}var Cx=!1;if(ps){var iO;if(ps){var nO="oninput"in document;if(!nO){var Tx=document.createElement("div");Tx.setAttribute("oninput","return;"),nO=typeof Tx.oninput=="function"}iO=nO}else iO=!1;Cx=iO&&(!document.documentMode||9<document.documentMode)}function Qx(){ch&&(ch.detachEvent("onpropertychange",$x),hh=ch=null)}function $x(o){if(o.propertyName==="value"&&qd(hh)){var l=[];wx(l,hh,o,Ym(o)),dx(yj,l)}}function Sj(o,l,d){o==="focusin"?(Qx(),ch=l,hh=d,ch.attachEvent("onpropertychange",$x)):o==="focusout"&&Qx()}function bj(o){if(o==="selectionchange"||o==="keyup"||o==="keydown")return qd(hh)}function xj(o,l){if(o==="click")return qd(l)}function _j(o,l){if(o==="input"||o==="change")return qd(l)}function wj(o,l){return o===l&&(o!==0||1/o===1/l)||o!==o&&l!==l}var Tn=typeof Object.is=="function"?Object.is:wj;function uh(o,l){if(Tn(o,l))return!0;if(typeof o!="object"||o===null||typeof l!="object"||l===null)return!1;var d=Object.keys(o),p=Object.keys(l);if(d.length!==p.length)return!1;for(p=0;p<d.length;p++){var y=d[p];if(!Pi.call(l,y)||!Tn(o[y],l[y]))return!1}return!0}function Px(o){for(;o&&o.firstChild;)o=o.firstChild;return o}function Ex(o,l){var d=Px(o);o=0;for(var p;d;){if(d.nodeType===3){if(p=o+d.textContent.length,o<=l&&p>=l)return{node:d,offset:l-o};o=p}e:{for(;d;){if(d.nextSibling){d=d.nextSibling;break e}d=d.parentNode}d=void 0}d=Px(d)}}function Rx(o,l){return o&&l?o===l?!0:o&&o.nodeType===3?!1:l&&l.nodeType===3?Rx(o,l.parentNode):"contains"in o?o.contains(l):o.compareDocumentPosition?!!(o.compareDocumentPosition(l)&16):!1:!1}function Ax(o){o=o!=null&&o.ownerDocument!=null&&o.ownerDocument.defaultView!=null?o.ownerDocument.defaultView:window;for(var l=ya(o.document);l instanceof o.HTMLIFrameElement;){try{var d=typeof l.contentWindow.location.href=="string"}catch{d=!1}if(d)o=l.contentWindow;else break;l=ya(o.document)}return l}function rO(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=ps&&"documentMode"in document&&11>=document.documentMode,El=null,sO=null,dh=null,oO=!1;function Mx(o,l,d){var p=d.window===d?d.document:d.nodeType===9?d:d.ownerDocument;oO||El==null||El!==ya(p)||(p=El,"selectionStart"in p&&rO(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}),dh&&uh(dh,p)||(dh=p,p=Af(sO,"onSelect"),0<p.length&&(l=new Zd("onSelect","select",null,l,d),o.push({event:l,listeners:p}),l.target=El)))}function xa(o,l){var d={};return d[o.toLowerCase()]=l.toLowerCase(),d["Webkit"+o]="webkit"+l,d["Moz"+o]="moz"+l,d}var Rl={animationend:xa("Animation","AnimationEnd"),animationiteration:xa("Animation","AnimationIteration"),animationstart:xa("Animation","AnimationStart"),transitionrun:xa("Transition","TransitionRun"),transitionstart:xa("Transition","TransitionStart"),transitioncancel:xa("Transition","TransitionCancel"),transitionend:xa("Transition","TransitionEnd")},aO={},zx={};ps&&(zx=document.createElement("div").style,"AnimationEvent"in window||(delete Rl.animationend.animation,delete Rl.animationiteration.animation,delete Rl.animationstart.animation),"TransitionEvent"in window||delete Rl.transitionend.transition);function _a(o){if(aO[o])return aO[o];if(!Rl[o])return o;var l=Rl[o],d;for(d in l)if(l.hasOwnProperty(d)&&d in zx)return aO[o]=l[d];return o}var jx=_a("animationend"),Dx=_a("animationiteration"),Bx=_a("animationstart"),Cj=_a("transitionrun"),Tj=_a("transitionstart"),Qj=_a("transitioncancel"),Lx=_a("transitionend"),Xx=new Map,lO="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(" ");lO.push("scrollEnd");function Or(o,l){Xx.set(o,l),us(l,[o])}var Id=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)},Un=[],Al=0,cO=0;function Vd(){for(var o=Al,l=cO=Al=0;l<o;){var d=Un[l];Un[l++]=null;var p=Un[l];Un[l++]=null;var y=Un[l];Un[l++]=null;var b=Un[l];if(Un[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&&Nx(d,y,b)}}function Yd(o,l,d,p){Un[Al++]=o,Un[Al++]=l,Un[Al++]=d,Un[Al++]=p,cO|=p,o.lanes|=p,o=o.alternate,o!==null&&(o.lanes|=p)}function hO(o,l,d,p){return Yd(o,l,d,p),Hd(o)}function wa(o,l){return Yd(o,null,null,l),Hd(o)}function Nx(o,l,d){o.lanes|=d;var p=o.alternate;p!==null&&(p.lanes|=d);for(var y=!1,b=o.return;b!==null;)b.childLanes|=d,p=b.alternate,p!==null&&(p.childLanes|=d),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-Wi(d),o=b.hiddenUpdates,p=o[y],p===null?o[y]=[l]:p.push(l),l.lane=d|536870912),b):null}function Hd(o){if(50<Mh)throw Mh=0,y0=null,Error(n(185));for(var l=o.return;l!==null;)o=l,l=o.return;return o.tag===3?o.stateNode:null}var Ml={};function $j(o,l,d,p){this.tag=o,this.key=d,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 Qn(o,l,d,p){return new $j(o,l,d,p)}function uO(o){return o=o.prototype,!(!o||!o.isReactComponent)}function gs(o,l){var d=o.alternate;return d===null?(d=Qn(o.tag,l,o.key,o.mode),d.elementType=o.elementType,d.type=o.type,d.stateNode=o.stateNode,d.alternate=o,o.alternate=d):(d.pendingProps=l,d.type=o.type,d.flags=0,d.subtreeFlags=0,d.deletions=null),d.flags=o.flags&65011712,d.childLanes=o.childLanes,d.lanes=o.lanes,d.child=o.child,d.memoizedProps=o.memoizedProps,d.memoizedState=o.memoizedState,d.updateQueue=o.updateQueue,l=o.dependencies,d.dependencies=l===null?null:{lanes:l.lanes,firstContext:l.firstContext},d.sibling=o.sibling,d.index=o.index,d.ref=o.ref,d.refCleanup=o.refCleanup,d}function Zx(o,l){o.flags&=65011714;var d=o.alternate;return d===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=d.childLanes,o.lanes=d.lanes,o.child=d.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=d.memoizedProps,o.memoizedState=d.memoizedState,o.updateQueue=d.updateQueue,o.type=d.type,l=d.dependencies,o.dependencies=l===null?null:{lanes:l.lanes,firstContext:l.firstContext}),o}function Ud(o,l,d,p,y,b){var k=0;if(p=o,typeof o=="function")uO(o)&&(k=1);else if(typeof o=="string")k=M3(o,d,re.current)?26:o==="html"||o==="head"||o==="body"?27:5;else e:switch(o){case H:return o=Qn(31,d,l,y),o.elementType=H,o.lanes=b,o;case x:return ka(d.children,y,b,l);case w:k=8,y|=24;break;case _:return o=Qn(12,d,l,y|2),o.elementType=_,o.lanes=b,o;case M:return o=Qn(13,d,l,y),o.elementType=M,o.lanes=b,o;case E:return o=Qn(19,d,l,y),o.elementType=E,o.lanes=b,o;default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case C:k=10;break e;case T:k=9;break e;case Q:k=11;break e;case L:k=14;break e;case V:k=16,p=null;break e}k=29,d=Error(n(130,o===null?"null":typeof o,"")),p=null}return l=Qn(k,d,l,y),l.elementType=o,l.type=p,l.lanes=b,l}function ka(o,l,d,p){return o=Qn(7,o,p,l),o.lanes=d,o}function dO(o,l,d){return o=Qn(6,o,null,l),o.lanes=d,o}function Wx(o){var l=Qn(18,null,null,0);return l.stateNode=o,l}function fO(o,l,d){return l=Qn(4,o.children!==null?o.children:[],o.key,l),l.lanes=d,l.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},l}var qx=new WeakMap;function Gn(o,l){if(typeof o=="object"&&o!==null){var d=qx.get(o);return d!==void 0?d:(l={value:o,source:l,stack:Si(l)},qx.set(o,l),l)}return{value:o,source:l,stack:Si(l)}}var zl=[],jl=0,Gd=null,fh=0,Fn=[],Kn=0,po=null,zr=1,jr="";function ms(o,l){zl[jl++]=fh,zl[jl++]=Gd,Gd=o,fh=l}function Ix(o,l,d){Fn[Kn++]=zr,Fn[Kn++]=jr,Fn[Kn++]=po,po=o;var p=zr;o=jr;var y=32-Wi(p)-1;p&=~(1<<y),d+=1;var b=32-Wi(l)+y;if(30<b){var k=y-y%5;b=(p&(1<<k)-1).toString(32),p>>=k,y-=k,zr=1<<32-Wi(l)+y|d<<y|p,jr=b+o}else zr=1<<b|d<<y|p,jr=o}function pO(o){o.return!==null&&(ms(o,1),Ix(o,1,0))}function gO(o){for(;o===Gd;)Gd=zl[--jl],zl[jl]=null,fh=zl[--jl],zl[jl]=null;for(;o===po;)po=Fn[--Kn],Fn[Kn]=null,jr=Fn[--Kn],Fn[Kn]=null,zr=Fn[--Kn],Fn[Kn]=null}function Vx(o,l){Fn[Kn++]=zr,Fn[Kn++]=jr,Fn[Kn++]=po,zr=l.id,jr=l.overflow,po=o}var Ei=null,Et=null,rt=!1,go=null,Jn=!1,mO=Error(n(519));function mo(o){var l=Error(n(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw ph(Gn(l,o)),mO}function Yx(o){var l=o.stateNode,d=o.type,p=o.memoizedProps;switch(l[St]=o,l[Pt]=p,d){case"dialog":Je("cancel",l),Je("close",l);break;case"iframe":case"object":case"embed":Je("load",l);break;case"video":case"audio":for(d=0;d<jh.length;d++)Je(jh[d],l);break;case"source":Je("error",l);break;case"img":case"image":case"link":Je("error",l),Je("load",l);break;case"details":Je("toggle",l);break;case"input":Je("invalid",l),Dd(l,p.value,p.defaultValue,p.checked,p.defaultChecked,p.type,p.name,!0);break;case"select":Je("invalid",l);break;case"textarea":Je("invalid",l),lx(l,p.value,p.defaultValue,p.children)}d=p.children,typeof d!="string"&&typeof d!="number"&&typeof d!="bigint"||l.textContent===""+d||p.suppressHydrationWarning===!0||hk(l.textContent,d)?(p.popover!=null&&(Je("beforetoggle",l),Je("toggle",l)),p.onScroll!=null&&Je("scroll",l),p.onScrollEnd!=null&&Je("scrollend",l),p.onClick!=null&&(l.onclick=fs),l=!0):l=!1,l||mo(o,!0)}function Hx(o){for(Ei=o.return;Ei;)switch(Ei.tag){case 5:case 31:case 13:Jn=!1;return;case 27:case 3:Jn=!0;return;default:Ei=Ei.return}}function Dl(o){if(o!==Ei)return!1;if(!rt)return Hx(o),rt=!0,!1;var l=o.tag,d;if((d=l!==3&&l!==27)&&((d=l===5)&&(d=o.type,d=!(d!=="form"&&d!=="button")||M0(o.type,o.memoizedProps)),d=!d),d&&Et&&mo(o),Hx(o),l===13){if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(n(317));Et=yk(o)}else if(l===31){if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(n(317));Et=yk(o)}else l===27?(l=Et,Po(o.type)?(o=L0,L0=null,Et=o):Et=l):Et=Ei?tr(o.stateNode.nextSibling):null;return!0}function Ca(){Et=Ei=null,rt=!1}function OO(){var o=go;return o!==null&&(On===null?On=o:On.push.apply(On,o),go=null),o}function ph(o){go===null?go=[o]:go.push(o)}var vO=D(null),Ta=null,Os=null;function Oo(o,l,d){ee(vO,l._currentValue),l._currentValue=d}function vs(o){o._currentValue=vO.current,I(vO)}function yO(o,l,d){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===d)break;o=o.return}}function SO(o,l,d,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 A=b;b=y;for(var Y=0;Y<l.length;Y++)if(A.context===l[Y]){b.lanes|=d,A=b.alternate,A!==null&&(A.lanes|=d),yO(b.return,d,o),p||(k=null);break e}b=A.next}}else if(y.tag===18){if(k=y.return,k===null)throw Error(n(341));k.lanes|=d,b=k.alternate,b!==null&&(b.lanes|=d),yO(k,d,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 Bl(o,l,d,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 A=y.type;Tn(y.pendingProps.value,k.value)||(o!==null?o.push(A):o=[A])}}else if(y===ge.current){if(k=y.alternate,k===null)throw Error(n(387));k.memoizedState.memoizedState!==y.memoizedState.memoizedState&&(o!==null?o.push(Nh):o=[Nh])}y=y.return}o!==null&&SO(l,o,d,p),l.flags|=262144}function Fd(o){for(o=o.firstContext;o!==null;){if(!Tn(o.context._currentValue,o.memoizedValue))return!0;o=o.next}return!1}function Qa(o){Ta=o,Os=null,o=o.dependencies,o!==null&&(o.firstContext=null)}function Ri(o){return Ux(Ta,o)}function Kd(o,l){return Ta===null&&Qa(o),Ux(o,l)}function Ux(o,l){var d=l._currentValue;if(l={context:l,memoizedValue:d,next:null},Os===null){if(o===null)throw Error(n(308));Os=l,o.dependencies={lanes:0,firstContext:l},o.flags|=524288}else Os=Os.next=l;return d}var Pj=typeof AbortController<"u"?AbortController:function(){var o=[],l=this.signal={aborted:!1,addEventListener:function(d,p){o.push(p)}};this.abort=function(){l.aborted=!0,o.forEach(function(d){return d()})}},Ej=t.unstable_scheduleCallback,Rj=t.unstable_NormalPriority,ri={$$typeof:C,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function bO(){return{controller:new Pj,data:new Map,refCount:0}}function gh(o){o.refCount--,o.refCount===0&&Ej(Rj,function(){o.controller.abort()})}var mh=null,xO=0,Ll=0,Xl=null;function Aj(o,l){if(mh===null){var d=mh=[];xO=0,Ll=k0(),Xl={status:"pending",value:void 0,then:function(p){d.push(p)}}}return xO++,l.then(Gx,Gx),l}function Gx(){if(--xO===0&&mh!==null){Xl!==null&&(Xl.status="fulfilled");var o=mh;mh=null,Ll=0,Xl=null;for(var l=0;l<o.length;l++)(0,o[l])()}}function Mj(o,l){var d=[],p={status:"pending",value:null,reason:null,then:function(y){d.push(y)}};return o.then(function(){p.status="fulfilled",p.value=l;for(var y=0;y<d.length;y++)(0,d[y])(l)},function(y){for(p.status="rejected",p.reason=y,y=0;y<d.length;y++)(0,d[y])(void 0)}),p}var Fx=$.S;$.S=function(o,l){Mw=ii(),typeof l=="object"&&l!==null&&typeof l.then=="function"&&Aj(o,l),Fx!==null&&Fx(o,l)};var $a=D(null);function _O(){var o=$a.current;return o!==null?o:kt.pooledCache}function Jd(o,l){l===null?ee($a,$a.current):ee($a,l.pool)}function Kx(){var o=_O();return o===null?null:{parent:ri._currentValue,pool:o}}var Nl=Error(n(460)),wO=Error(n(474)),ef=Error(n(542)),tf={then:function(){}};function Jx(o){return o=o.status,o==="fulfilled"||o==="rejected"}function e_(o,l,d){switch(d=o[d],d===void 0?o.push(l):d!==l&&(l.then(fs,fs),l=d),l.status){case"fulfilled":return l.value;case"rejected":throw o=l.reason,i_(o),o;default:if(typeof l.status=="string")l.then(fs,fs);else{if(o=kt,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,i_(o),o}throw Ea=l,Nl}}function Pa(o){try{var l=o._init;return l(o._payload)}catch(d){throw d!==null&&typeof d=="object"&&typeof d.then=="function"?(Ea=d,Nl):d}}var Ea=null;function t_(){if(Ea===null)throw Error(n(459));var o=Ea;return Ea=null,o}function i_(o){if(o===Nl||o===ef)throw Error(n(483))}var Zl=null,Oh=0;function nf(o){var l=Oh;return Oh+=1,Zl===null&&(Zl=[]),e_(Zl,o,l)}function vh(o,l){l=l.props.ref,o.ref=l!==void 0?l:null}function rf(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 n_(o){function l(K,G){if(o){var ie=K.deletions;ie===null?(K.deletions=[G],K.flags|=16):ie.push(G)}}function d(K,G){if(!o)return null;for(;G!==null;)l(K,G),G=G.sibling;return null}function p(K){for(var G=new Map;K!==null;)K.key!==null?G.set(K.key,K):G.set(K.index,K),K=K.sibling;return G}function y(K,G){return K=gs(K,G),K.index=0,K.sibling=null,K}function b(K,G,ie){return K.index=ie,o?(ie=K.alternate,ie!==null?(ie=ie.index,ie<G?(K.flags|=67108866,G):ie):(K.flags|=67108866,G)):(K.flags|=1048576,G)}function k(K){return o&&K.alternate===null&&(K.flags|=67108866),K}function A(K,G,ie,le){return G===null||G.tag!==6?(G=dO(ie,K.mode,le),G.return=K,G):(G=y(G,ie),G.return=K,G)}function Y(K,G,ie,le){var Me=ie.type;return Me===x?ae(K,G,ie.props.children,le,ie.key):G!==null&&(G.elementType===Me||typeof Me=="object"&&Me!==null&&Me.$$typeof===V&&Pa(Me)===G.type)?(G=y(G,ie.props),vh(G,ie),G.return=K,G):(G=Ud(ie.type,ie.key,ie.props,null,K.mode,le),vh(G,ie),G.return=K,G)}function ne(K,G,ie,le){return G===null||G.tag!==4||G.stateNode.containerInfo!==ie.containerInfo||G.stateNode.implementation!==ie.implementation?(G=fO(ie,K.mode,le),G.return=K,G):(G=y(G,ie.children||[]),G.return=K,G)}function ae(K,G,ie,le,Me){return G===null||G.tag!==7?(G=ka(ie,K.mode,le,Me),G.return=K,G):(G=y(G,ie),G.return=K,G)}function ue(K,G,ie){if(typeof G=="string"&&G!==""||typeof G=="number"||typeof G=="bigint")return G=dO(""+G,K.mode,ie),G.return=K,G;if(typeof G=="object"&&G!==null){switch(G.$$typeof){case v:return ie=Ud(G.type,G.key,G.props,null,K.mode,ie),vh(ie,G),ie.return=K,ie;case S:return G=fO(G,K.mode,ie),G.return=K,G;case V:return G=Pa(G),ue(K,G,ie)}if(N(G)||R(G))return G=ka(G,K.mode,ie,null),G.return=K,G;if(typeof G.then=="function")return ue(K,nf(G),ie);if(G.$$typeof===C)return ue(K,Kd(K,G),ie);rf(K,G)}return null}function se(K,G,ie,le){var Me=G!==null?G.key:null;if(typeof ie=="string"&&ie!==""||typeof ie=="number"||typeof ie=="bigint")return Me!==null?null:A(K,G,""+ie,le);if(typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case v:return ie.key===Me?Y(K,G,ie,le):null;case S:return ie.key===Me?ne(K,G,ie,le):null;case V:return ie=Pa(ie),se(K,G,ie,le)}if(N(ie)||R(ie))return Me!==null?null:ae(K,G,ie,le,null);if(typeof ie.then=="function")return se(K,G,nf(ie),le);if(ie.$$typeof===C)return se(K,G,Kd(K,ie),le);rf(K,ie)}return null}function oe(K,G,ie,le,Me){if(typeof le=="string"&&le!==""||typeof le=="number"||typeof le=="bigint")return K=K.get(ie)||null,A(G,K,""+le,Me);if(typeof le=="object"&&le!==null){switch(le.$$typeof){case v:return K=K.get(le.key===null?ie:le.key)||null,Y(G,K,le,Me);case S:return K=K.get(le.key===null?ie:le.key)||null,ne(G,K,le,Me);case V:return le=Pa(le),oe(K,G,ie,le,Me)}if(N(le)||R(le))return K=K.get(ie)||null,ae(G,K,le,Me,null);if(typeof le.then=="function")return oe(K,G,ie,nf(le),Me);if(le.$$typeof===C)return oe(K,G,ie,Kd(G,le),Me);rf(G,le)}return null}function Qe(K,G,ie,le){for(var Me=null,ht=null,Pe=G,Ye=G=0,it=null;Pe!==null&&Ye<ie.length;Ye++){Pe.index>Ye?(it=Pe,Pe=null):it=Pe.sibling;var ut=se(K,Pe,ie[Ye],le);if(ut===null){Pe===null&&(Pe=it);break}o&&Pe&&ut.alternate===null&&l(K,Pe),G=b(ut,G,Ye),ht===null?Me=ut:ht.sibling=ut,ht=ut,Pe=it}if(Ye===ie.length)return d(K,Pe),rt&&ms(K,Ye),Me;if(Pe===null){for(;Ye<ie.length;Ye++)Pe=ue(K,ie[Ye],le),Pe!==null&&(G=b(Pe,G,Ye),ht===null?Me=Pe:ht.sibling=Pe,ht=Pe);return rt&&ms(K,Ye),Me}for(Pe=p(Pe);Ye<ie.length;Ye++)it=oe(Pe,K,Ye,ie[Ye],le),it!==null&&(o&&it.alternate!==null&&Pe.delete(it.key===null?Ye:it.key),G=b(it,G,Ye),ht===null?Me=it:ht.sibling=it,ht=it);return o&&Pe.forEach(function(zo){return l(K,zo)}),rt&&ms(K,Ye),Me}function De(K,G,ie,le){if(ie==null)throw Error(n(151));for(var Me=null,ht=null,Pe=G,Ye=G=0,it=null,ut=ie.next();Pe!==null&&!ut.done;Ye++,ut=ie.next()){Pe.index>Ye?(it=Pe,Pe=null):it=Pe.sibling;var zo=se(K,Pe,ut.value,le);if(zo===null){Pe===null&&(Pe=it);break}o&&Pe&&zo.alternate===null&&l(K,Pe),G=b(zo,G,Ye),ht===null?Me=zo:ht.sibling=zo,ht=zo,Pe=it}if(ut.done)return d(K,Pe),rt&&ms(K,Ye),Me;if(Pe===null){for(;!ut.done;Ye++,ut=ie.next())ut=ue(K,ut.value,le),ut!==null&&(G=b(ut,G,Ye),ht===null?Me=ut:ht.sibling=ut,ht=ut);return rt&&ms(K,Ye),Me}for(Pe=p(Pe);!ut.done;Ye++,ut=ie.next())ut=oe(Pe,K,Ye,ut.value,le),ut!==null&&(o&&ut.alternate!==null&&Pe.delete(ut.key===null?Ye:ut.key),G=b(ut,G,Ye),ht===null?Me=ut:ht.sibling=ut,ht=ut);return o&&Pe.forEach(function(I3){return l(K,I3)}),rt&&ms(K,Ye),Me}function _t(K,G,ie,le){if(typeof ie=="object"&&ie!==null&&ie.type===x&&ie.key===null&&(ie=ie.props.children),typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case v:e:{for(var Me=ie.key;G!==null;){if(G.key===Me){if(Me=ie.type,Me===x){if(G.tag===7){d(K,G.sibling),le=y(G,ie.props.children),le.return=K,K=le;break e}}else if(G.elementType===Me||typeof Me=="object"&&Me!==null&&Me.$$typeof===V&&Pa(Me)===G.type){d(K,G.sibling),le=y(G,ie.props),vh(le,ie),le.return=K,K=le;break e}d(K,G);break}else l(K,G);G=G.sibling}ie.type===x?(le=ka(ie.props.children,K.mode,le,ie.key),le.return=K,K=le):(le=Ud(ie.type,ie.key,ie.props,null,K.mode,le),vh(le,ie),le.return=K,K=le)}return k(K);case S:e:{for(Me=ie.key;G!==null;){if(G.key===Me)if(G.tag===4&&G.stateNode.containerInfo===ie.containerInfo&&G.stateNode.implementation===ie.implementation){d(K,G.sibling),le=y(G,ie.children||[]),le.return=K,K=le;break e}else{d(K,G);break}else l(K,G);G=G.sibling}le=fO(ie,K.mode,le),le.return=K,K=le}return k(K);case V:return ie=Pa(ie),_t(K,G,ie,le)}if(N(ie))return Qe(K,G,ie,le);if(R(ie)){if(Me=R(ie),typeof Me!="function")throw Error(n(150));return ie=Me.call(ie),De(K,G,ie,le)}if(typeof ie.then=="function")return _t(K,G,nf(ie),le);if(ie.$$typeof===C)return _t(K,G,Kd(K,ie),le);rf(K,ie)}return typeof ie=="string"&&ie!==""||typeof ie=="number"||typeof ie=="bigint"?(ie=""+ie,G!==null&&G.tag===6?(d(K,G.sibling),le=y(G,ie),le.return=K,K=le):(d(K,G),le=dO(ie,K.mode,le),le.return=K,K=le),k(K)):d(K,G)}return function(K,G,ie,le){try{Oh=0;var Me=_t(K,G,ie,le);return Zl=null,Me}catch(Pe){if(Pe===Nl||Pe===ef)throw Pe;var ht=Qn(29,Pe,null,K.mode);return ht.lanes=le,ht.return=K,ht}finally{}}}var Ra=n_(!0),r_=n_(!1),vo=!1;function kO(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function CO(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 yo(o){return{lane:o,tag:0,payload:null,callback:null,next:null}}function So(o,l,d){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=Hd(o),Nx(o,null,d),l}return Yd(o,p,l,d),Hd(o)}function yh(o,l,d){if(l=l.updateQueue,l!==null&&(l=l.shared,(d&4194048)!==0)){var p=l.lanes;p&=o.pendingLanes,d|=p,l.lanes=d,ma(o,d)}}function TO(o,l){var d=o.updateQueue,p=o.alternate;if(p!==null&&(p=p.updateQueue,d===p)){var y=null,b=null;if(d=d.firstBaseUpdate,d!==null){do{var k={lane:d.lane,tag:d.tag,payload:d.payload,callback:null,next:null};b===null?y=b=k:b=b.next=k,d=d.next}while(d!==null);b===null?y=b=l:b=b.next=l}else y=b=l;d={baseState:p.baseState,firstBaseUpdate:y,lastBaseUpdate:b,shared:p.shared,callbacks:p.callbacks},o.updateQueue=d;return}o=d.lastBaseUpdate,o===null?d.firstBaseUpdate=l:o.next=l,d.lastBaseUpdate=l}var QO=!1;function Sh(){if(QO){var o=Xl;if(o!==null)throw o}}function bh(o,l,d,p){QO=!1;var y=o.updateQueue;vo=!1;var b=y.firstBaseUpdate,k=y.lastBaseUpdate,A=y.shared.pending;if(A!==null){y.shared.pending=null;var Y=A,ne=Y.next;Y.next=null,k===null?b=ne:k.next=ne,k=Y;var ae=o.alternate;ae!==null&&(ae=ae.updateQueue,A=ae.lastBaseUpdate,A!==k&&(A===null?ae.firstBaseUpdate=ne:A.next=ne,ae.lastBaseUpdate=Y))}if(b!==null){var ue=y.baseState;k=0,ae=ne=Y=null,A=b;do{var se=A.lane&-536870913,oe=se!==A.lane;if(oe?(tt&se)===se:(p&se)===se){se!==0&&se===Ll&&(QO=!0),ae!==null&&(ae=ae.next={lane:0,tag:A.tag,payload:A.payload,callback:null,next:null});e:{var Qe=o,De=A;se=l;var _t=d;switch(De.tag){case 1:if(Qe=De.payload,typeof Qe=="function"){ue=Qe.call(_t,ue,se);break e}ue=Qe;break e;case 3:Qe.flags=Qe.flags&-65537|128;case 0:if(Qe=De.payload,se=typeof Qe=="function"?Qe.call(_t,ue,se):Qe,se==null)break e;ue=g({},ue,se);break e;case 2:vo=!0}}se=A.callback,se!==null&&(o.flags|=64,oe&&(o.flags|=8192),oe=y.callbacks,oe===null?y.callbacks=[se]:oe.push(se))}else oe={lane:se,tag:A.tag,payload:A.payload,callback:A.callback,next:null},ae===null?(ne=ae=oe,Y=ue):ae=ae.next=oe,k|=se;if(A=A.next,A===null){if(A=y.shared.pending,A===null)break;oe=A,A=oe.next,oe.next=null,y.lastBaseUpdate=oe,y.shared.pending=null}}while(!0);ae===null&&(Y=ue),y.baseState=Y,y.firstBaseUpdate=ne,y.lastBaseUpdate=ae,b===null&&(y.shared.lanes=0),ko|=k,o.lanes=k,o.memoizedState=ue}}function s_(o,l){if(typeof o!="function")throw Error(n(191,o));o.call(l)}function o_(o,l){var d=o.callbacks;if(d!==null)for(o.callbacks=null,o=0;o<d.length;o++)s_(d[o],l)}var Wl=D(null),sf=D(0);function a_(o,l){o=Ts,ee(sf,o),ee(Wl,l),Ts=o|l.baseLanes}function $O(){ee(sf,Ts),ee(Wl,Wl.current)}function PO(){Ts=sf.current,I(Wl),I(sf)}var $n=D(null),er=null;function bo(o){var l=o.alternate;ee(Gt,Gt.current&1),ee($n,o),er===null&&(l===null||Wl.current!==null||l.memoizedState!==null)&&(er=o)}function EO(o){ee(Gt,Gt.current),ee($n,o),er===null&&(er=o)}function l_(o){o.tag===22?(ee(Gt,Gt.current),ee($n,o),er===null&&(er=o)):xo()}function xo(){ee(Gt,Gt.current),ee($n,$n.current)}function Pn(o){I($n),er===o&&(er=null),I(Gt)}var Gt=D(0);function of(o){for(var l=o;l!==null;){if(l.tag===13){var d=l.memoizedState;if(d!==null&&(d=d.dehydrated,d===null||D0(d)||B0(d)))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 ys=0,Ve=null,bt=null,si=null,af=!1,ql=!1,Aa=!1,lf=0,xh=0,Il=null,zj=0;function It(){throw Error(n(321))}function RO(o,l){if(l===null)return!1;for(var d=0;d<l.length&&d<o.length;d++)if(!Tn(o[d],l[d]))return!1;return!0}function AO(o,l,d,p,y,b){return ys=b,Ve=l,l.memoizedState=null,l.updateQueue=null,l.lanes=0,$.H=o===null||o.memoizedState===null?I_:HO,Aa=!1,b=d(p,y),Aa=!1,ql&&(b=h_(l,d,p,y)),c_(o),b}function c_(o){$.H=kh;var l=bt!==null&&bt.next!==null;if(ys=0,si=bt=Ve=null,af=!1,xh=0,Il=null,l)throw Error(n(300));o===null||oi||(o=o.dependencies,o!==null&&Fd(o)&&(oi=!0))}function h_(o,l,d,p){Ve=o;var y=0;do{if(ql&&(Il=null),xh=0,ql=!1,25<=y)throw Error(n(301));if(y+=1,si=bt=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=V_,b=l(d,p)}while(ql);return b}function jj(){var o=$.H,l=o.useState()[0];return l=typeof l.then=="function"?_h(l):l,o=o.useState()[0],(bt!==null?bt.memoizedState:null)!==o&&(Ve.flags|=1024),l}function MO(){var o=lf!==0;return lf=0,o}function zO(o,l,d){l.updateQueue=o.updateQueue,l.flags&=-2053,o.lanes&=~d}function jO(o){if(af){for(o=o.memoizedState;o!==null;){var l=o.queue;l!==null&&(l.pending=null),o=o.next}af=!1}ys=0,si=bt=Ve=null,ql=!1,xh=lf=0,Il=null}function Ji(){var o={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return si===null?Ve.memoizedState=si=o:si=si.next=o,si}function Ft(){if(bt===null){var o=Ve.alternate;o=o!==null?o.memoizedState:null}else o=bt.next;var l=si===null?Ve.memoizedState:si.next;if(l!==null)si=l,bt=o;else{if(o===null)throw Ve.alternate===null?Error(n(467)):Error(n(310));bt=o,o={memoizedState:bt.memoizedState,baseState:bt.baseState,baseQueue:bt.baseQueue,queue:bt.queue,next:null},si===null?Ve.memoizedState=si=o:si=si.next=o}return si}function cf(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function _h(o){var l=xh;return xh+=1,Il===null&&(Il=[]),o=e_(Il,o,l),l=Ve,(si===null?l.memoizedState:si.next)===null&&(l=l.alternate,$.H=l===null||l.memoizedState===null?I_:HO),o}function hf(o){if(o!==null&&typeof o=="object"){if(typeof o.then=="function")return _h(o);if(o.$$typeof===C)return Ri(o)}throw Error(n(438,String(o)))}function DO(o){var l=null,d=Ve.updateQueue;if(d!==null&&(l=d.memoCache),l==null){var p=Ve.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}),d===null&&(d=cf(),Ve.updateQueue=d),d.memoCache=l,d=l.data[l.index],d===void 0)for(d=l.data[l.index]=Array(o),p=0;p<o;p++)d[p]=U;return l.index++,d}function Ss(o,l){return typeof l=="function"?l(o):l}function uf(o){var l=Ft();return BO(l,bt,o)}function BO(o,l,d){var p=o.queue;if(p===null)throw Error(n(311));p.lastRenderedReducer=d;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 A=k=null,Y=null,ne=l,ae=!1;do{var ue=ne.lane&-536870913;if(ue!==ne.lane?(tt&ue)===ue:(ys&ue)===ue){var se=ne.revertLane;if(se===0)Y!==null&&(Y=Y.next={lane:0,revertLane:0,gesture:null,action:ne.action,hasEagerState:ne.hasEagerState,eagerState:ne.eagerState,next:null}),ue===Ll&&(ae=!0);else if((ys&se)===se){ne=ne.next,se===Ll&&(ae=!0);continue}else ue={lane:0,revertLane:ne.revertLane,gesture:null,action:ne.action,hasEagerState:ne.hasEagerState,eagerState:ne.eagerState,next:null},Y===null?(A=Y=ue,k=b):Y=Y.next=ue,Ve.lanes|=se,ko|=se;ue=ne.action,Aa&&d(b,ue),b=ne.hasEagerState?ne.eagerState:d(b,ue)}else se={lane:ue,revertLane:ne.revertLane,gesture:ne.gesture,action:ne.action,hasEagerState:ne.hasEagerState,eagerState:ne.eagerState,next:null},Y===null?(A=Y=se,k=b):Y=Y.next=se,Ve.lanes|=ue,ko|=ue;ne=ne.next}while(ne!==null&&ne!==l);if(Y===null?k=b:Y.next=A,!Tn(b,o.memoizedState)&&(oi=!0,ae&&(d=Xl,d!==null)))throw d;o.memoizedState=b,o.baseState=k,o.baseQueue=Y,p.lastRenderedState=b}return y===null&&(p.lanes=0),[o.memoizedState,p.dispatch]}function LO(o){var l=Ft(),d=l.queue;if(d===null)throw Error(n(311));d.lastRenderedReducer=o;var p=d.dispatch,y=d.pending,b=l.memoizedState;if(y!==null){d.pending=null;var k=y=y.next;do b=o(b,k.action),k=k.next;while(k!==y);Tn(b,l.memoizedState)||(oi=!0),l.memoizedState=b,l.baseQueue===null&&(l.baseState=b),d.lastRenderedState=b}return[b,p]}function u_(o,l,d){var p=Ve,y=Ft(),b=rt;if(b){if(d===void 0)throw Error(n(407));d=d()}else d=l();var k=!Tn((bt||y).memoizedState,d);if(k&&(y.memoizedState=d,oi=!0),y=y.queue,ZO(p_.bind(null,p,y,o),[o]),y.getSnapshot!==l||k||si!==null&&si.memoizedState.tag&1){if(p.flags|=2048,Vl(9,{destroy:void 0},f_.bind(null,p,y,d,l),null),kt===null)throw Error(n(349));b||(ys&127)!==0||d_(p,l,d)}return d}function d_(o,l,d){o.flags|=16384,o={getSnapshot:l,value:d},l=Ve.updateQueue,l===null?(l=cf(),Ve.updateQueue=l,l.stores=[o]):(d=l.stores,d===null?l.stores=[o]:d.push(o))}function f_(o,l,d,p){l.value=d,l.getSnapshot=p,g_(l)&&m_(o)}function p_(o,l,d){return d(function(){g_(l)&&m_(o)})}function g_(o){var l=o.getSnapshot;o=o.value;try{var d=l();return!Tn(o,d)}catch{return!0}}function m_(o){var l=wa(o,2);l!==null&&vn(l,o,2)}function XO(o){var l=Ji();if(typeof o=="function"){var d=o;if(o=d(),Aa){Ki(!0);try{d()}finally{Ki(!1)}}}return l.memoizedState=l.baseState=o,l.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ss,lastRenderedState:o},l}function O_(o,l,d,p){return o.baseState=d,BO(o,bt,typeof p=="function"?p:Ss)}function Dj(o,l,d,p,y){if(pf(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?d(!0):b.isTransition=!1,p(b),d=l.pending,d===null?(b.next=l.pending=b,v_(l,b)):(b.next=d.next,l.pending=d.next=b)}}function v_(o,l){var d=l.action,p=l.payload,y=o.state;if(l.isTransition){var b=$.T,k={};$.T=k;try{var A=d(y,p),Y=$.S;Y!==null&&Y(k,A),y_(o,l,A)}catch(ne){NO(o,l,ne)}finally{b!==null&&k.types!==null&&(b.types=k.types),$.T=b}}else try{b=d(y,p),y_(o,l,b)}catch(ne){NO(o,l,ne)}}function y_(o,l,d){d!==null&&typeof d=="object"&&typeof d.then=="function"?d.then(function(p){S_(o,l,p)},function(p){return NO(o,l,p)}):S_(o,l,d)}function S_(o,l,d){l.status="fulfilled",l.value=d,b_(l),o.state=d,l=o.pending,l!==null&&(d=l.next,d===l?o.pending=null:(d=d.next,l.next=d,v_(o,d)))}function NO(o,l,d){var p=o.pending;if(o.pending=null,p!==null){p=p.next;do l.status="rejected",l.reason=d,b_(l),l=l.next;while(l!==p)}o.action=null}function b_(o){o=o.listeners;for(var l=0;l<o.length;l++)(0,o[l])()}function x_(o,l){return l}function __(o,l){if(rt){var d=kt.formState;if(d!==null){e:{var p=Ve;if(rt){if(Et){t:{for(var y=Et,b=Jn;y.nodeType!==8;){if(!b){y=null;break t}if(y=tr(y.nextSibling),y===null){y=null;break t}}b=y.data,y=b==="F!"||b==="F"?y:null}if(y){Et=tr(y.nextSibling),p=y.data==="F!";break e}}mo(p)}p=!1}p&&(l=d[0])}}return d=Ji(),d.memoizedState=d.baseState=l,p={pending:null,lanes:0,dispatch:null,lastRenderedReducer:x_,lastRenderedState:l},d.queue=p,d=Z_.bind(null,Ve,p),p.dispatch=d,p=XO(!1),b=YO.bind(null,Ve,!1,p.queue),p=Ji(),y={state:l,dispatch:null,action:o,pending:null},p.queue=y,d=Dj.bind(null,Ve,y,b,d),y.dispatch=d,p.memoizedState=o,[l,d,!1]}function w_(o){var l=Ft();return k_(l,bt,o)}function k_(o,l,d){if(l=BO(o,l,x_)[0],o=uf(Ss)[0],typeof l=="object"&&l!==null&&typeof l.then=="function")try{var p=_h(l)}catch(k){throw k===Nl?ef:k}else p=l;l=Ft();var y=l.queue,b=y.dispatch;return d!==l.memoizedState&&(Ve.flags|=2048,Vl(9,{destroy:void 0},Bj.bind(null,y,d),null)),[p,b,o]}function Bj(o,l){o.action=l}function C_(o){var l=Ft(),d=bt;if(d!==null)return k_(l,d,o);Ft(),l=l.memoizedState,d=Ft();var p=d.queue.dispatch;return d.memoizedState=o,[l,p,!1]}function Vl(o,l,d,p){return o={tag:o,create:d,deps:p,inst:l,next:null},l=Ve.updateQueue,l===null&&(l=cf(),Ve.updateQueue=l),d=l.lastEffect,d===null?l.lastEffect=o.next=o:(p=d.next,d.next=o,o.next=p,l.lastEffect=o),o}function T_(){return Ft().memoizedState}function df(o,l,d,p){var y=Ji();Ve.flags|=o,y.memoizedState=Vl(1|l,{destroy:void 0},d,p===void 0?null:p)}function ff(o,l,d,p){var y=Ft();p=p===void 0?null:p;var b=y.memoizedState.inst;bt!==null&&p!==null&&RO(p,bt.memoizedState.deps)?y.memoizedState=Vl(l,b,d,p):(Ve.flags|=o,y.memoizedState=Vl(1|l,b,d,p))}function Q_(o,l){df(8390656,8,o,l)}function ZO(o,l){ff(2048,8,o,l)}function Lj(o){Ve.flags|=4;var l=Ve.updateQueue;if(l===null)l=cf(),Ve.updateQueue=l,l.events=[o];else{var d=l.events;d===null?l.events=[o]:d.push(o)}}function $_(o){var l=Ft().memoizedState;return Lj({ref:l,nextImpl:o}),function(){if((ft&2)!==0)throw Error(n(440));return l.impl.apply(void 0,arguments)}}function P_(o,l){return ff(4,2,o,l)}function E_(o,l){return ff(4,4,o,l)}function R_(o,l){if(typeof l=="function"){o=o();var d=l(o);return function(){typeof d=="function"?d():l(null)}}if(l!=null)return o=o(),l.current=o,function(){l.current=null}}function A_(o,l,d){d=d!=null?d.concat([o]):null,ff(4,4,R_.bind(null,l,o),d)}function WO(){}function M_(o,l){var d=Ft();l=l===void 0?null:l;var p=d.memoizedState;return l!==null&&RO(l,p[1])?p[0]:(d.memoizedState=[o,l],o)}function z_(o,l){var d=Ft();l=l===void 0?null:l;var p=d.memoizedState;if(l!==null&&RO(l,p[1]))return p[0];if(p=o(),Aa){Ki(!0);try{o()}finally{Ki(!1)}}return d.memoizedState=[p,l],p}function qO(o,l,d){return d===void 0||(ys&1073741824)!==0&&(tt&261930)===0?o.memoizedState=l:(o.memoizedState=d,o=jw(),Ve.lanes|=o,ko|=o,d)}function j_(o,l,d,p){return Tn(d,l)?d:Wl.current!==null?(o=qO(o,d,p),Tn(o,l)||(oi=!0),o):(ys&42)===0||(ys&1073741824)!==0&&(tt&261930)===0?(oi=!0,o.memoizedState=d):(o=jw(),Ve.lanes|=o,ko|=o,l)}function D_(o,l,d,p,y){var b=Z.p;Z.p=b!==0&&8>b?b:8;var k=$.T,A={};$.T=A,YO(o,!1,l,d);try{var Y=y(),ne=$.S;if(ne!==null&&ne(A,Y),Y!==null&&typeof Y=="object"&&typeof Y.then=="function"){var ae=Mj(Y,p);wh(o,l,ae,An(o))}else wh(o,l,p,An(o))}catch(ue){wh(o,l,{then:function(){},status:"rejected",reason:ue},An())}finally{Z.p=b,k!==null&&A.types!==null&&(k.types=A.types),$.T=k}}function Xj(){}function IO(o,l,d,p){if(o.tag!==5)throw Error(n(476));var y=B_(o).queue;D_(o,y,l,z,d===null?Xj:function(){return L_(o),d(p)})}function B_(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:Ss,lastRenderedState:z},next:null};var d={};return l.next={memoizedState:d,baseState:d,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ss,lastRenderedState:d},next:null},o.memoizedState=l,o=o.alternate,o!==null&&(o.memoizedState=l),l}function L_(o){var l=B_(o);l.next===null&&(l=o.alternate.memoizedState),wh(o,l.next.queue,{},An())}function VO(){return Ri(Nh)}function X_(){return Ft().memoizedState}function N_(){return Ft().memoizedState}function Nj(o){for(var l=o.return;l!==null;){switch(l.tag){case 24:case 3:var d=An();o=yo(d);var p=So(l,o,d);p!==null&&(vn(p,l,d),yh(p,l,d)),l={cache:bO()},o.payload=l;return}l=l.return}}function Zj(o,l,d){var p=An();d={lane:p,revertLane:0,gesture:null,action:d,hasEagerState:!1,eagerState:null,next:null},pf(o)?W_(l,d):(d=hO(o,l,d,p),d!==null&&(vn(d,o,p),q_(d,l,p)))}function Z_(o,l,d){var p=An();wh(o,l,d,p)}function wh(o,l,d,p){var y={lane:p,revertLane:0,gesture:null,action:d,hasEagerState:!1,eagerState:null,next:null};if(pf(o))W_(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,A=b(k,d);if(y.hasEagerState=!0,y.eagerState=A,Tn(A,k))return Yd(o,l,y,0),kt===null&&Vd(),!1}catch{}finally{}if(d=hO(o,l,y,p),d!==null)return vn(d,o,p),q_(d,l,p),!0}return!1}function YO(o,l,d,p){if(p={lane:2,revertLane:k0(),gesture:null,action:p,hasEagerState:!1,eagerState:null,next:null},pf(o)){if(l)throw Error(n(479))}else l=hO(o,d,p,2),l!==null&&vn(l,o,2)}function pf(o){var l=o.alternate;return o===Ve||l!==null&&l===Ve}function W_(o,l){ql=af=!0;var d=o.pending;d===null?l.next=l:(l.next=d.next,d.next=l),o.pending=l}function q_(o,l,d){if((d&4194048)!==0){var p=l.lanes;p&=o.pendingLanes,d|=p,l.lanes=d,ma(o,d)}}var kh={readContext:Ri,use:hf,useCallback:It,useContext:It,useEffect:It,useImperativeHandle:It,useLayoutEffect:It,useInsertionEffect:It,useMemo:It,useReducer:It,useRef:It,useState:It,useDebugValue:It,useDeferredValue:It,useTransition:It,useSyncExternalStore:It,useId:It,useHostTransitionStatus:It,useFormState:It,useActionState:It,useOptimistic:It,useMemoCache:It,useCacheRefresh:It};kh.useEffectEvent=It;var I_={readContext:Ri,use:hf,useCallback:function(o,l){return Ji().memoizedState=[o,l===void 0?null:l],o},useContext:Ri,useEffect:Q_,useImperativeHandle:function(o,l,d){d=d!=null?d.concat([o]):null,df(4194308,4,R_.bind(null,l,o),d)},useLayoutEffect:function(o,l){return df(4194308,4,o,l)},useInsertionEffect:function(o,l){df(4,2,o,l)},useMemo:function(o,l){var d=Ji();l=l===void 0?null:l;var p=o();if(Aa){Ki(!0);try{o()}finally{Ki(!1)}}return d.memoizedState=[p,l],p},useReducer:function(o,l,d){var p=Ji();if(d!==void 0){var y=d(l);if(Aa){Ki(!0);try{d(l)}finally{Ki(!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,Ve,o),[p.memoizedState,o]},useRef:function(o){var l=Ji();return o={current:o},l.memoizedState=o},useState:function(o){o=XO(o);var l=o.queue,d=Z_.bind(null,Ve,l);return l.dispatch=d,[o.memoizedState,d]},useDebugValue:WO,useDeferredValue:function(o,l){var d=Ji();return qO(d,o,l)},useTransition:function(){var o=XO(!1);return o=D_.bind(null,Ve,o.queue,!0,!1),Ji().memoizedState=o,[!1,o]},useSyncExternalStore:function(o,l,d){var p=Ve,y=Ji();if(rt){if(d===void 0)throw Error(n(407));d=d()}else{if(d=l(),kt===null)throw Error(n(349));(tt&127)!==0||d_(p,l,d)}y.memoizedState=d;var b={value:d,getSnapshot:l};return y.queue=b,Q_(p_.bind(null,p,b,o),[o]),p.flags|=2048,Vl(9,{destroy:void 0},f_.bind(null,p,b,d,l),null),d},useId:function(){var o=Ji(),l=kt.identifierPrefix;if(rt){var d=jr,p=zr;d=(p&~(1<<32-Wi(p)-1)).toString(32)+d,l="_"+l+"R_"+d,d=lf++,0<d&&(l+="H"+d.toString(32)),l+="_"}else d=zj++,l="_"+l+"r_"+d.toString(32)+"_";return o.memoizedState=l},useHostTransitionStatus:VO,useFormState:__,useActionState:__,useOptimistic:function(o){var l=Ji();l.memoizedState=l.baseState=o;var d={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return l.queue=d,l=YO.bind(null,Ve,!0,d),d.dispatch=l,[o,l]},useMemoCache:DO,useCacheRefresh:function(){return Ji().memoizedState=Nj.bind(null,Ve)},useEffectEvent:function(o){var l=Ji(),d={impl:o};return l.memoizedState=d,function(){if((ft&2)!==0)throw Error(n(440));return d.impl.apply(void 0,arguments)}}},HO={readContext:Ri,use:hf,useCallback:M_,useContext:Ri,useEffect:ZO,useImperativeHandle:A_,useInsertionEffect:P_,useLayoutEffect:E_,useMemo:z_,useReducer:uf,useRef:T_,useState:function(){return uf(Ss)},useDebugValue:WO,useDeferredValue:function(o,l){var d=Ft();return j_(d,bt.memoizedState,o,l)},useTransition:function(){var o=uf(Ss)[0],l=Ft().memoizedState;return[typeof o=="boolean"?o:_h(o),l]},useSyncExternalStore:u_,useId:X_,useHostTransitionStatus:VO,useFormState:w_,useActionState:w_,useOptimistic:function(o,l){var d=Ft();return O_(d,bt,o,l)},useMemoCache:DO,useCacheRefresh:N_};HO.useEffectEvent=$_;var V_={readContext:Ri,use:hf,useCallback:M_,useContext:Ri,useEffect:ZO,useImperativeHandle:A_,useInsertionEffect:P_,useLayoutEffect:E_,useMemo:z_,useReducer:LO,useRef:T_,useState:function(){return LO(Ss)},useDebugValue:WO,useDeferredValue:function(o,l){var d=Ft();return bt===null?qO(d,o,l):j_(d,bt.memoizedState,o,l)},useTransition:function(){var o=LO(Ss)[0],l=Ft().memoizedState;return[typeof o=="boolean"?o:_h(o),l]},useSyncExternalStore:u_,useId:X_,useHostTransitionStatus:VO,useFormState:C_,useActionState:C_,useOptimistic:function(o,l){var d=Ft();return bt!==null?O_(d,bt,o,l):(d.baseState=o,[o,d.queue.dispatch])},useMemoCache:DO,useCacheRefresh:N_};V_.useEffectEvent=$_;function UO(o,l,d,p){l=o.memoizedState,d=d(p,l),d=d==null?l:g({},l,d),o.memoizedState=d,o.lanes===0&&(o.updateQueue.baseState=d)}var GO={enqueueSetState:function(o,l,d){o=o._reactInternals;var p=An(),y=yo(p);y.payload=l,d!=null&&(y.callback=d),l=So(o,y,p),l!==null&&(vn(l,o,p),yh(l,o,p))},enqueueReplaceState:function(o,l,d){o=o._reactInternals;var p=An(),y=yo(p);y.tag=1,y.payload=l,d!=null&&(y.callback=d),l=So(o,y,p),l!==null&&(vn(l,o,p),yh(l,o,p))},enqueueForceUpdate:function(o,l){o=o._reactInternals;var d=An(),p=yo(d);p.tag=2,l!=null&&(p.callback=l),l=So(o,p,d),l!==null&&(vn(l,o,d),yh(l,o,d))}};function Y_(o,l,d,p,y,b,k){return o=o.stateNode,typeof o.shouldComponentUpdate=="function"?o.shouldComponentUpdate(p,b,k):l.prototype&&l.prototype.isPureReactComponent?!uh(d,p)||!uh(y,b):!0}function H_(o,l,d,p){o=l.state,typeof l.componentWillReceiveProps=="function"&&l.componentWillReceiveProps(d,p),typeof l.UNSAFE_componentWillReceiveProps=="function"&&l.UNSAFE_componentWillReceiveProps(d,p),l.state!==o&&GO.enqueueReplaceState(l,l.state,null)}function Ma(o,l){var d=l;if("ref"in l){d={};for(var p in l)p!=="ref"&&(d[p]=l[p])}if(o=o.defaultProps){d===l&&(d=g({},d));for(var y in o)d[y]===void 0&&(d[y]=o[y])}return d}function U_(o){Id(o)}function G_(o){console.error(o)}function F_(o){Id(o)}function gf(o,l){try{var d=o.onUncaughtError;d(l.value,{componentStack:l.stack})}catch(p){setTimeout(function(){throw p})}}function K_(o,l,d){try{var p=o.onCaughtError;p(d.value,{componentStack:d.stack,errorBoundary:l.tag===1?l.stateNode:null})}catch(y){setTimeout(function(){throw y})}}function FO(o,l,d){return d=yo(d),d.tag=3,d.payload={element:null},d.callback=function(){gf(o,l)},d}function J_(o){return o=yo(o),o.tag=3,o}function ew(o,l,d,p){var y=d.type.getDerivedStateFromError;if(typeof y=="function"){var b=p.value;o.payload=function(){return y(b)},o.callback=function(){K_(l,d,p)}}var k=d.stateNode;k!==null&&typeof k.componentDidCatch=="function"&&(o.callback=function(){K_(l,d,p),typeof y!="function"&&(Co===null?Co=new Set([this]):Co.add(this));var A=p.stack;this.componentDidCatch(p.value,{componentStack:A!==null?A:""})})}function Wj(o,l,d,p,y){if(d.flags|=32768,p!==null&&typeof p=="object"&&typeof p.then=="function"){if(l=d.alternate,l!==null&&Bl(l,d,y,!0),d=$n.current,d!==null){switch(d.tag){case 31:case 13:return er===null?Tf():d.alternate===null&&Vt===0&&(Vt=3),d.flags&=-257,d.flags|=65536,d.lanes=y,p===tf?d.flags|=16384:(l=d.updateQueue,l===null?d.updateQueue=new Set([p]):l.add(p),x0(o,p,y)),!1;case 22:return d.flags|=65536,p===tf?d.flags|=16384:(l=d.updateQueue,l===null?(l={transitions:null,markerInstances:null,retryQueue:new Set([p])},d.updateQueue=l):(d=l.retryQueue,d===null?l.retryQueue=new Set([p]):d.add(p)),x0(o,p,y)),!1}throw Error(n(435,d.tag))}return x0(o,p,y),Tf(),!1}if(rt)return l=$n.current,l!==null?((l.flags&65536)===0&&(l.flags|=256),l.flags|=65536,l.lanes=y,p!==mO&&(o=Error(n(422),{cause:p}),ph(Gn(o,d)))):(p!==mO&&(l=Error(n(423),{cause:p}),ph(Gn(l,d))),o=o.current.alternate,o.flags|=65536,y&=-y,o.lanes|=y,p=Gn(p,d),y=FO(o.stateNode,p,y),TO(o,y),Vt!==4&&(Vt=2)),!1;var b=Error(n(520),{cause:p});if(b=Gn(b,d),Ah===null?Ah=[b]:Ah.push(b),Vt!==4&&(Vt=2),l===null)return!0;p=Gn(p,d),d=l;do{switch(d.tag){case 3:return d.flags|=65536,o=y&-y,d.lanes|=o,o=FO(d.stateNode,p,o),TO(d,o),!1;case 1:if(l=d.type,b=d.stateNode,(d.flags&128)===0&&(typeof l.getDerivedStateFromError=="function"||b!==null&&typeof b.componentDidCatch=="function"&&(Co===null||!Co.has(b))))return d.flags|=65536,y&=-y,d.lanes|=y,y=J_(y),ew(y,o,d,p),TO(d,y),!1}d=d.return}while(d!==null);return!1}var KO=Error(n(461)),oi=!1;function Ai(o,l,d,p){l.child=o===null?r_(l,null,d,p):Ra(l,o.child,d,p)}function tw(o,l,d,p,y){d=d.render;var b=l.ref;if("ref"in p){var k={};for(var A in p)A!=="ref"&&(k[A]=p[A])}else k=p;return Qa(l),p=AO(o,l,d,k,b,y),A=MO(),o!==null&&!oi?(zO(o,l,y),bs(o,l,y)):(rt&&A&&pO(l),l.flags|=1,Ai(o,l,p,y),l.child)}function iw(o,l,d,p,y){if(o===null){var b=d.type;return typeof b=="function"&&!uO(b)&&b.defaultProps===void 0&&d.compare===null?(l.tag=15,l.type=b,nw(o,l,b,p,y)):(o=Ud(d.type,null,p,l,l.mode,y),o.ref=l.ref,o.return=l,l.child=o)}if(b=o.child,!o0(o,y)){var k=b.memoizedProps;if(d=d.compare,d=d!==null?d:uh,d(k,p)&&o.ref===l.ref)return bs(o,l,y)}return l.flags|=1,o=gs(b,p),o.ref=l.ref,o.return=l,l.child=o}function nw(o,l,d,p,y){if(o!==null){var b=o.memoizedProps;if(uh(b,p)&&o.ref===l.ref)if(oi=!1,l.pendingProps=p=b,o0(o,y))(o.flags&131072)!==0&&(oi=!0);else return l.lanes=o.lanes,bs(o,l,y)}return JO(o,l,d,p,y)}function rw(o,l,d,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|d:d,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 sw(o,l,b,d,p)}if((d&536870912)!==0)l.memoizedState={baseLanes:0,cachePool:null},o!==null&&Jd(l,b!==null?b.cachePool:null),b!==null?a_(l,b):$O(),l_(l);else return p=l.lanes=536870912,sw(o,l,b!==null?b.baseLanes|d:d,d,p)}else b!==null?(Jd(l,b.cachePool),a_(l,b),xo(),l.memoizedState=null):(o!==null&&Jd(l,null),$O(),xo());return Ai(o,l,y,d),l.child}function Ch(o,l){return o!==null&&o.tag===22||l.stateNode!==null||(l.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),l.sibling}function sw(o,l,d,p,y){var b=_O();return b=b===null?null:{parent:ri._currentValue,pool:b},l.memoizedState={baseLanes:d,cachePool:b},o!==null&&Jd(l,null),$O(),l_(l),o!==null&&Bl(o,l,p,!0),l.childLanes=y,null}function mf(o,l){return l=vf({mode:l.mode,children:l.children},o.mode),l.ref=o.ref,o.child=l,l.return=o,l}function ow(o,l,d){return Ra(l,o.child,null,d),o=mf(l,l.pendingProps),o.flags|=2,Pn(l),l.memoizedState=null,o}function qj(o,l,d){var p=l.pendingProps,y=(l.flags&128)!==0;if(l.flags&=-129,o===null){if(rt){if(p.mode==="hidden")return o=mf(l,p),l.lanes=536870912,Ch(null,o);if(EO(l),(o=Et)?(o=vk(o,Jn),o=o!==null&&o.data==="&"?o:null,o!==null&&(l.memoizedState={dehydrated:o,treeContext:po!==null?{id:zr,overflow:jr}:null,retryLane:536870912,hydrationErrors:null},d=Wx(o),d.return=l,l.child=d,Ei=l,Et=null)):o=null,o===null)throw mo(l);return l.lanes=536870912,null}return mf(l,p)}var b=o.memoizedState;if(b!==null){var k=b.dehydrated;if(EO(l),y)if(l.flags&256)l.flags&=-257,l=ow(o,l,d);else if(l.memoizedState!==null)l.child=o.child,l.flags|=128,l=null;else throw Error(n(558));else if(oi||Bl(o,l,d,!1),y=(d&o.childLanes)!==0,oi||y){if(p=kt,p!==null&&(k=_l(p,d),k!==0&&k!==b.retryLane))throw b.retryLane=k,wa(o,k),vn(p,o,k),KO;Tf(),l=ow(o,l,d)}else o=b.treeContext,Et=tr(k.nextSibling),Ei=l,rt=!0,go=null,Jn=!1,o!==null&&Vx(l,o),l=mf(l,p),l.flags|=4096;return l}return o=gs(o.child,{mode:p.mode,children:p.children}),o.ref=l.ref,l.child=o,o.return=l,o}function Of(o,l){var d=l.ref;if(d===null)o!==null&&o.ref!==null&&(l.flags|=4194816);else{if(typeof d!="function"&&typeof d!="object")throw Error(n(284));(o===null||o.ref!==d)&&(l.flags|=4194816)}}function JO(o,l,d,p,y){return Qa(l),d=AO(o,l,d,p,void 0,y),p=MO(),o!==null&&!oi?(zO(o,l,y),bs(o,l,y)):(rt&&p&&pO(l),l.flags|=1,Ai(o,l,d,y),l.child)}function aw(o,l,d,p,y,b){return Qa(l),l.updateQueue=null,d=h_(l,p,d,y),c_(o),p=MO(),o!==null&&!oi?(zO(o,l,b),bs(o,l,b)):(rt&&p&&pO(l),l.flags|=1,Ai(o,l,d,b),l.child)}function lw(o,l,d,p,y){if(Qa(l),l.stateNode===null){var b=Ml,k=d.contextType;typeof k=="object"&&k!==null&&(b=Ri(k)),b=new d(p,b),l.memoizedState=b.state!==null&&b.state!==void 0?b.state:null,b.updater=GO,l.stateNode=b,b._reactInternals=l,b=l.stateNode,b.props=p,b.state=l.memoizedState,b.refs={},kO(l),k=d.contextType,b.context=typeof k=="object"&&k!==null?Ri(k):Ml,b.state=l.memoizedState,k=d.getDerivedStateFromProps,typeof k=="function"&&(UO(l,d,k,p),b.state=l.memoizedState),typeof d.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&&GO.enqueueReplaceState(b,b.state,null),bh(l,p,b,y),Sh(),b.state=l.memoizedState),typeof b.componentDidMount=="function"&&(l.flags|=4194308),p=!0}else if(o===null){b=l.stateNode;var A=l.memoizedProps,Y=Ma(d,A);b.props=Y;var ne=b.context,ae=d.contextType;k=Ml,typeof ae=="object"&&ae!==null&&(k=Ri(ae));var ue=d.getDerivedStateFromProps;ae=typeof ue=="function"||typeof b.getSnapshotBeforeUpdate=="function",A=l.pendingProps!==A,ae||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(A||ne!==k)&&H_(l,b,p,k),vo=!1;var se=l.memoizedState;b.state=se,bh(l,p,b,y),Sh(),ne=l.memoizedState,A||se!==ne||vo?(typeof ue=="function"&&(UO(l,d,ue,p),ne=l.memoizedState),(Y=vo||Y_(l,d,Y,p,se,ne,k))?(ae||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=ne),b.props=p,b.state=ne,b.context=k,p=Y):(typeof b.componentDidMount=="function"&&(l.flags|=4194308),p=!1)}else{b=l.stateNode,CO(o,l),k=l.memoizedProps,ae=Ma(d,k),b.props=ae,ue=l.pendingProps,se=b.context,ne=d.contextType,Y=Ml,typeof ne=="object"&&ne!==null&&(Y=Ri(ne)),A=d.getDerivedStateFromProps,(ne=typeof A=="function"||typeof b.getSnapshotBeforeUpdate=="function")||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(k!==ue||se!==Y)&&H_(l,b,p,Y),vo=!1,se=l.memoizedState,b.state=se,bh(l,p,b,y),Sh();var oe=l.memoizedState;k!==ue||se!==oe||vo||o!==null&&o.dependencies!==null&&Fd(o.dependencies)?(typeof A=="function"&&(UO(l,d,A,p),oe=l.memoizedState),(ae=vo||Y_(l,d,ae,p,se,oe,Y)||o!==null&&o.dependencies!==null&&Fd(o.dependencies))?(ne||typeof b.UNSAFE_componentWillUpdate!="function"&&typeof b.componentWillUpdate!="function"||(typeof b.componentWillUpdate=="function"&&b.componentWillUpdate(p,oe,Y),typeof b.UNSAFE_componentWillUpdate=="function"&&b.UNSAFE_componentWillUpdate(p,oe,Y)),typeof b.componentDidUpdate=="function"&&(l.flags|=4),typeof b.getSnapshotBeforeUpdate=="function"&&(l.flags|=1024)):(typeof b.componentDidUpdate!="function"||k===o.memoizedProps&&se===o.memoizedState||(l.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||k===o.memoizedProps&&se===o.memoizedState||(l.flags|=1024),l.memoizedProps=p,l.memoizedState=oe),b.props=p,b.state=oe,b.context=Y,p=ae):(typeof b.componentDidUpdate!="function"||k===o.memoizedProps&&se===o.memoizedState||(l.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||k===o.memoizedProps&&se===o.memoizedState||(l.flags|=1024),p=!1)}return b=p,Of(o,l),p=(l.flags&128)!==0,b||p?(b=l.stateNode,d=p&&typeof d.getDerivedStateFromError!="function"?null:b.render(),l.flags|=1,o!==null&&p?(l.child=Ra(l,o.child,null,y),l.child=Ra(l,null,d,y)):Ai(o,l,d,y),l.memoizedState=b.state,o=l.child):o=bs(o,l,y),o}function cw(o,l,d,p){return Ca(),l.flags|=256,Ai(o,l,d,p),l.child}var e0={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function t0(o){return{baseLanes:o,cachePool:Kx()}}function i0(o,l,d){return o=o!==null?o.childLanes&~d:0,l&&(o|=Rn),o}function hw(o,l,d){var p=l.pendingProps,y=!1,b=(l.flags&128)!==0,k;if((k=b)||(k=o!==null&&o.memoizedState===null?!1:(Gt.current&2)!==0),k&&(y=!0,l.flags&=-129),k=(l.flags&32)!==0,l.flags&=-33,o===null){if(rt){if(y?bo(l):xo(),(o=Et)?(o=vk(o,Jn),o=o!==null&&o.data!=="&"?o:null,o!==null&&(l.memoizedState={dehydrated:o,treeContext:po!==null?{id:zr,overflow:jr}:null,retryLane:536870912,hydrationErrors:null},d=Wx(o),d.return=l,l.child=d,Ei=l,Et=null)):o=null,o===null)throw mo(l);return B0(o)?l.lanes=32:l.lanes=536870912,null}var A=p.children;return p=p.fallback,y?(xo(),y=l.mode,A=vf({mode:"hidden",children:A},y),p=ka(p,y,d,null),A.return=l,p.return=l,A.sibling=p,l.child=A,p=l.child,p.memoizedState=t0(d),p.childLanes=i0(o,k,d),l.memoizedState=e0,Ch(null,p)):(bo(l),n0(l,A))}var Y=o.memoizedState;if(Y!==null&&(A=Y.dehydrated,A!==null)){if(b)l.flags&256?(bo(l),l.flags&=-257,l=r0(o,l,d)):l.memoizedState!==null?(xo(),l.child=o.child,l.flags|=128,l=null):(xo(),A=p.fallback,y=l.mode,p=vf({mode:"visible",children:p.children},y),A=ka(A,y,d,null),A.flags|=2,p.return=l,A.return=l,p.sibling=A,l.child=p,Ra(l,o.child,null,d),p=l.child,p.memoizedState=t0(d),p.childLanes=i0(o,k,d),l.memoizedState=e0,l=Ch(null,p));else if(bo(l),B0(A)){if(k=A.nextSibling&&A.nextSibling.dataset,k)var ne=k.dgst;k=ne,p=Error(n(419)),p.stack="",p.digest=k,ph({value:p,source:null,stack:null}),l=r0(o,l,d)}else if(oi||Bl(o,l,d,!1),k=(d&o.childLanes)!==0,oi||k){if(k=kt,k!==null&&(p=_l(k,d),p!==0&&p!==Y.retryLane))throw Y.retryLane=p,wa(o,p),vn(k,o,p),KO;D0(A)||Tf(),l=r0(o,l,d)}else D0(A)?(l.flags|=192,l.child=o.child,l=null):(o=Y.treeContext,Et=tr(A.nextSibling),Ei=l,rt=!0,go=null,Jn=!1,o!==null&&Vx(l,o),l=n0(l,p.children),l.flags|=4096);return l}return y?(xo(),A=p.fallback,y=l.mode,Y=o.child,ne=Y.sibling,p=gs(Y,{mode:"hidden",children:p.children}),p.subtreeFlags=Y.subtreeFlags&65011712,ne!==null?A=gs(ne,A):(A=ka(A,y,d,null),A.flags|=2),A.return=l,p.return=l,p.sibling=A,l.child=p,Ch(null,p),p=l.child,A=o.child.memoizedState,A===null?A=t0(d):(y=A.cachePool,y!==null?(Y=ri._currentValue,y=y.parent!==Y?{parent:Y,pool:Y}:y):y=Kx(),A={baseLanes:A.baseLanes|d,cachePool:y}),p.memoizedState=A,p.childLanes=i0(o,k,d),l.memoizedState=e0,Ch(o.child,p)):(bo(l),d=o.child,o=d.sibling,d=gs(d,{mode:"visible",children:p.children}),d.return=l,d.sibling=null,o!==null&&(k=l.deletions,k===null?(l.deletions=[o],l.flags|=16):k.push(o)),l.child=d,l.memoizedState=null,d)}function n0(o,l){return l=vf({mode:"visible",children:l},o.mode),l.return=o,o.child=l}function vf(o,l){return o=Qn(22,o,null,l),o.lanes=0,o}function r0(o,l,d){return Ra(l,o.child,null,d),o=n0(l,l.pendingProps.children),o.flags|=2,l.memoizedState=null,o}function uw(o,l,d){o.lanes|=l;var p=o.alternate;p!==null&&(p.lanes|=l),yO(o.return,l,d)}function s0(o,l,d,p,y,b){var k=o.memoizedState;k===null?o.memoizedState={isBackwards:l,rendering:null,renderingStartTime:0,last:p,tail:d,tailMode:y,treeForkCount:b}:(k.isBackwards=l,k.rendering=null,k.renderingStartTime=0,k.last=p,k.tail=d,k.tailMode=y,k.treeForkCount=b)}function dw(o,l,d){var p=l.pendingProps,y=p.revealOrder,b=p.tail;p=p.children;var k=Gt.current,A=(k&2)!==0;if(A?(k=k&1|2,l.flags|=128):k&=1,ee(Gt,k),Ai(o,l,p,d),p=rt?fh:0,!A&&o!==null&&(o.flags&128)!==0)e:for(o=l.child;o!==null;){if(o.tag===13)o.memoizedState!==null&&uw(o,d,l);else if(o.tag===19)uw(o,d,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(d=l.child,y=null;d!==null;)o=d.alternate,o!==null&&of(o)===null&&(y=d),d=d.sibling;d=y,d===null?(y=l.child,l.child=null):(y=d.sibling,d.sibling=null),s0(l,!1,y,d,b,p);break;case"backwards":case"unstable_legacy-backwards":for(d=null,y=l.child,l.child=null;y!==null;){if(o=y.alternate,o!==null&&of(o)===null){l.child=y;break}o=y.sibling,y.sibling=d,d=y,y=o}s0(l,!0,d,null,b,p);break;case"together":s0(l,!1,null,null,void 0,p);break;default:l.memoizedState=null}return l.child}function bs(o,l,d){if(o!==null&&(l.dependencies=o.dependencies),ko|=l.lanes,(d&l.childLanes)===0)if(o!==null){if(Bl(o,l,d,!1),(d&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,d=gs(o,o.pendingProps),l.child=d,d.return=l;o.sibling!==null;)o=o.sibling,d=d.sibling=gs(o,o.pendingProps),d.return=l;d.sibling=null}return l.child}function o0(o,l){return(o.lanes&l)!==0?!0:(o=o.dependencies,!!(o!==null&&Fd(o)))}function Ij(o,l,d){switch(l.tag){case 3:pe(l,l.stateNode.containerInfo),Oo(l,ri,o.memoizedState.cache),Ca();break;case 27:case 5:we(l);break;case 4:pe(l,l.stateNode.containerInfo);break;case 10:Oo(l,l.type,l.memoizedProps.value);break;case 31:if(l.memoizedState!==null)return l.flags|=128,EO(l),null;break;case 13:var p=l.memoizedState;if(p!==null)return p.dehydrated!==null?(bo(l),l.flags|=128,null):(d&l.child.childLanes)!==0?hw(o,l,d):(bo(l),o=bs(o,l,d),o!==null?o.sibling:null);bo(l);break;case 19:var y=(o.flags&128)!==0;if(p=(d&l.childLanes)!==0,p||(Bl(o,l,d,!1),p=(d&l.childLanes)!==0),y){if(p)return dw(o,l,d);l.flags|=128}if(y=l.memoizedState,y!==null&&(y.rendering=null,y.tail=null,y.lastEffect=null),ee(Gt,Gt.current),p)break;return null;case 22:return l.lanes=0,rw(o,l,d,l.pendingProps);case 24:Oo(l,ri,o.memoizedState.cache)}return bs(o,l,d)}function fw(o,l,d){if(o!==null)if(o.memoizedProps!==l.pendingProps)oi=!0;else{if(!o0(o,d)&&(l.flags&128)===0)return oi=!1,Ij(o,l,d);oi=(o.flags&131072)!==0}else oi=!1,rt&&(l.flags&1048576)!==0&&Ix(l,fh,l.index);switch(l.lanes=0,l.tag){case 16:e:{var p=l.pendingProps;if(o=Pa(l.elementType),l.type=o,typeof o=="function")uO(o)?(p=Ma(o,p),l.tag=1,l=lw(null,l,o,p,d)):(l.tag=0,l=JO(null,l,o,p,d));else{if(o!=null){var y=o.$$typeof;if(y===Q){l.tag=11,l=tw(null,l,o,p,d);break e}else if(y===L){l.tag=14,l=iw(null,l,o,p,d);break e}}throw l=P(o)||o,Error(n(306,l,""))}}return l;case 0:return JO(o,l,l.type,l.pendingProps,d);case 1:return p=l.type,y=Ma(p,l.pendingProps),lw(o,l,p,y,d);case 3:e:{if(pe(l,l.stateNode.containerInfo),o===null)throw Error(n(387));p=l.pendingProps;var b=l.memoizedState;y=b.element,CO(o,l),bh(l,p,null,d);var k=l.memoizedState;if(p=k.cache,Oo(l,ri,p),p!==b.cache&&SO(l,[ri],d,!0),Sh(),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=cw(o,l,p,d);break e}else if(p!==y){y=Gn(Error(n(424)),l),ph(y),l=cw(o,l,p,d);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(Et=tr(o.firstChild),Ei=l,rt=!0,go=null,Jn=!0,d=r_(l,null,p,d),l.child=d;d;)d.flags=d.flags&-3|4096,d=d.sibling}else{if(Ca(),p===y){l=bs(o,l,d);break e}Ai(o,l,p,d)}l=l.child}return l;case 26:return Of(o,l),o===null?(d=wk(l.type,null,l.pendingProps,null))?l.memoizedState=d:rt||(d=l.type,o=l.pendingProps,p=Mf(fe.current).createElement(d),p[St]=l,p[Pt]=o,Mi(p,d,o),ni(p),l.stateNode=p):l.memoizedState=wk(l.type,o.memoizedProps,l.pendingProps,o.memoizedState),null;case 27:return we(l),o===null&&rt&&(p=l.stateNode=bk(l.type,l.pendingProps,fe.current),Ei=l,Jn=!0,y=Et,Po(l.type)?(L0=y,Et=tr(p.firstChild)):Et=y),Ai(o,l,l.pendingProps.children,d),Of(o,l),o===null&&(l.flags|=4194304),l.child;case 5:return o===null&&rt&&((y=p=Et)&&(p=b3(p,l.type,l.pendingProps,Jn),p!==null?(l.stateNode=p,Ei=l,Et=tr(p.firstChild),Jn=!1,y=!0):y=!1),y||mo(l)),we(l),y=l.type,b=l.pendingProps,k=o!==null?o.memoizedProps:null,p=b.children,M0(y,b)?p=null:k!==null&&M0(y,k)&&(l.flags|=32),l.memoizedState!==null&&(y=AO(o,l,jj,null,null,d),Nh._currentValue=y),Of(o,l),Ai(o,l,p,d),l.child;case 6:return o===null&&rt&&((o=d=Et)&&(d=x3(d,l.pendingProps,Jn),d!==null?(l.stateNode=d,Ei=l,Et=null,o=!0):o=!1),o||mo(l)),null;case 13:return hw(o,l,d);case 4:return pe(l,l.stateNode.containerInfo),p=l.pendingProps,o===null?l.child=Ra(l,null,p,d):Ai(o,l,p,d),l.child;case 11:return tw(o,l,l.type,l.pendingProps,d);case 7:return Ai(o,l,l.pendingProps,d),l.child;case 8:return Ai(o,l,l.pendingProps.children,d),l.child;case 12:return Ai(o,l,l.pendingProps.children,d),l.child;case 10:return p=l.pendingProps,Oo(l,l.type,p.value),Ai(o,l,p.children,d),l.child;case 9:return y=l.type._context,p=l.pendingProps.children,Qa(l),y=Ri(y),p=p(y),l.flags|=1,Ai(o,l,p,d),l.child;case 14:return iw(o,l,l.type,l.pendingProps,d);case 15:return nw(o,l,l.type,l.pendingProps,d);case 19:return dw(o,l,d);case 31:return qj(o,l,d);case 22:return rw(o,l,d,l.pendingProps);case 24:return Qa(l),p=Ri(ri),o===null?(y=_O(),y===null&&(y=kt,b=bO(),y.pooledCache=b,b.refCount++,b!==null&&(y.pooledCacheLanes|=d),y=b),l.memoizedState={parent:p,cache:y},kO(l),Oo(l,ri,y)):((o.lanes&d)!==0&&(CO(o,l),bh(l,null,null,d),Sh()),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),Oo(l,ri,p)):(p=b.cache,Oo(l,ri,p),p!==y.cache&&SO(l,[ri],d,!0))),Ai(o,l,l.pendingProps.children,d),l.child;case 29:throw l.pendingProps}throw Error(n(156,l.tag))}function xs(o){o.flags|=4}function a0(o,l,d,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(Xw())o.flags|=8192;else throw Ea=tf,wO}else o.flags&=-16777217}function pw(o,l){if(l.type!=="stylesheet"||(l.state.loading&4)!==0)o.flags&=-16777217;else if(o.flags|=16777216,!$k(l))if(Xw())o.flags|=8192;else throw Ea=tf,wO}function yf(o,l){l!==null&&(o.flags|=4),o.flags&16384&&(l=o.tag!==22?so():536870912,o.lanes|=l,Gl|=l)}function Th(o,l){if(!rt)switch(o.tailMode){case"hidden":l=o.tail;for(var d=null;l!==null;)l.alternate!==null&&(d=l),l=l.sibling;d===null?o.tail=null:d.sibling=null;break;case"collapsed":d=o.tail;for(var p=null;d!==null;)d.alternate!==null&&(p=d),d=d.sibling;p===null?l||o.tail===null?o.tail=null:o.tail.sibling=null:p.sibling=null}}function Rt(o){var l=o.alternate!==null&&o.alternate.child===o.child,d=0,p=0;if(l)for(var y=o.child;y!==null;)d|=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;)d|=y.lanes|y.childLanes,p|=y.subtreeFlags,p|=y.flags,y.return=o,y=y.sibling;return o.subtreeFlags|=p,o.childLanes=d,l}function Vj(o,l,d){var p=l.pendingProps;switch(gO(l),l.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Rt(l),null;case 1:return Rt(l),null;case 3:return d=l.stateNode,p=null,o!==null&&(p=o.memoizedState.cache),l.memoizedState.cache!==p&&(l.flags|=2048),vs(ri),te(),d.pendingContext&&(d.context=d.pendingContext,d.pendingContext=null),(o===null||o.child===null)&&(Dl(l)?xs(l):o===null||o.memoizedState.isDehydrated&&(l.flags&256)===0||(l.flags|=1024,OO())),Rt(l),null;case 26:var y=l.type,b=l.memoizedState;return o===null?(xs(l),b!==null?(Rt(l),pw(l,b)):(Rt(l),a0(l,y,null,p,d))):b?b!==o.memoizedState?(xs(l),Rt(l),pw(l,b)):(Rt(l),l.flags&=-16777217):(o=o.memoizedProps,o!==p&&xs(l),Rt(l),a0(l,y,o,p,d)),null;case 27:if(Re(l),d=fe.current,y=l.type,o!==null&&l.stateNode!=null)o.memoizedProps!==p&&xs(l);else{if(!p){if(l.stateNode===null)throw Error(n(166));return Rt(l),null}o=re.current,Dl(l)?Yx(l):(o=bk(y,p,d),l.stateNode=o,xs(l))}return Rt(l),null;case 5:if(Re(l),y=l.type,o!==null&&l.stateNode!=null)o.memoizedProps!==p&&xs(l);else{if(!p){if(l.stateNode===null)throw Error(n(166));return Rt(l),null}if(b=re.current,Dl(l))Yx(l);else{var k=Mf(fe.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[St]=l,b[Pt]=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(Mi(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&&xs(l)}}return Rt(l),a0(l,l.type,o===null?null:o.memoizedProps,l.pendingProps,d),null;case 6:if(o&&l.stateNode!=null)o.memoizedProps!==p&&xs(l);else{if(typeof p!="string"&&l.stateNode===null)throw Error(n(166));if(o=fe.current,Dl(l)){if(o=l.stateNode,d=l.memoizedProps,p=null,y=Ei,y!==null)switch(y.tag){case 27:case 5:p=y.memoizedProps}o[St]=l,o=!!(o.nodeValue===d||p!==null&&p.suppressHydrationWarning===!0||hk(o.nodeValue,d)),o||mo(l,!0)}else o=Mf(o).createTextNode(p),o[St]=l,l.stateNode=o}return Rt(l),null;case 31:if(d=l.memoizedState,o===null||o.memoizedState!==null){if(p=Dl(l),d!==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[St]=l}else Ca(),(l.flags&128)===0&&(l.memoizedState=null),l.flags|=4;Rt(l),o=!1}else d=OO(),o!==null&&o.memoizedState!==null&&(o.memoizedState.hydrationErrors=d),o=!0;if(!o)return l.flags&256?(Pn(l),l):(Pn(l),null);if((l.flags&128)!==0)throw Error(n(558))}return Rt(l),null;case 13:if(p=l.memoizedState,o===null||o.memoizedState!==null&&o.memoizedState.dehydrated!==null){if(y=Dl(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[St]=l}else Ca(),(l.flags&128)===0&&(l.memoizedState=null),l.flags|=4;Rt(l),y=!1}else y=OO(),o!==null&&o.memoizedState!==null&&(o.memoizedState.hydrationErrors=y),y=!0;if(!y)return l.flags&256?(Pn(l),l):(Pn(l),null)}return Pn(l),(l.flags&128)!==0?(l.lanes=d,l):(d=p!==null,o=o!==null&&o.memoizedState!==null,d&&(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)),d!==o&&d&&(l.child.flags|=8192),yf(l,l.updateQueue),Rt(l),null);case 4:return te(),o===null&&$0(l.stateNode.containerInfo),Rt(l),null;case 10:return vs(l.type),Rt(l),null;case 19:if(I(Gt),p=l.memoizedState,p===null)return Rt(l),null;if(y=(l.flags&128)!==0,b=p.rendering,b===null)if(y)Th(p,!1);else{if(Vt!==0||o!==null&&(o.flags&128)!==0)for(o=l.child;o!==null;){if(b=of(o),b!==null){for(l.flags|=128,Th(p,!1),o=b.updateQueue,l.updateQueue=o,yf(l,o),l.subtreeFlags=0,o=d,d=l.child;d!==null;)Zx(d,o),d=d.sibling;return ee(Gt,Gt.current&1|2),rt&&ms(l,p.treeForkCount),l.child}o=o.sibling}p.tail!==null&&ii()>wf&&(l.flags|=128,y=!0,Th(p,!1),l.lanes=4194304)}else{if(!y)if(o=of(b),o!==null){if(l.flags|=128,y=!0,o=o.updateQueue,l.updateQueue=o,yf(l,o),Th(p,!0),p.tail===null&&p.tailMode==="hidden"&&!b.alternate&&!rt)return Rt(l),null}else 2*ii()-p.renderingStartTime>wf&&d!==536870912&&(l.flags|=128,y=!0,Th(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=ii(),o.sibling=null,d=Gt.current,ee(Gt,y?d&1|2:d&1),rt&&ms(l,p.treeForkCount),o):(Rt(l),null);case 22:case 23:return Pn(l),PO(),p=l.memoizedState!==null,o!==null?o.memoizedState!==null!==p&&(l.flags|=8192):p&&(l.flags|=8192),p?(d&536870912)!==0&&(l.flags&128)===0&&(Rt(l),l.subtreeFlags&6&&(l.flags|=8192)):Rt(l),d=l.updateQueue,d!==null&&yf(l,d.retryQueue),d=null,o!==null&&o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(d=o.memoizedState.cachePool.pool),p=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(p=l.memoizedState.cachePool.pool),p!==d&&(l.flags|=2048),o!==null&&I($a),null;case 24:return d=null,o!==null&&(d=o.memoizedState.cache),l.memoizedState.cache!==d&&(l.flags|=2048),vs(ri),Rt(l),null;case 25:return null;case 30:return null}throw Error(n(156,l.tag))}function Yj(o,l){switch(gO(l),l.tag){case 1:return o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 3:return vs(ri),te(),o=l.flags,(o&65536)!==0&&(o&128)===0?(l.flags=o&-65537|128,l):null;case 26:case 27:case 5:return Re(l),null;case 31:if(l.memoizedState!==null){if(Pn(l),l.alternate===null)throw Error(n(340));Ca()}return o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 13:if(Pn(l),o=l.memoizedState,o!==null&&o.dehydrated!==null){if(l.alternate===null)throw Error(n(340));Ca()}return o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 19:return I(Gt),null;case 4:return te(),null;case 10:return vs(l.type),null;case 22:case 23:return Pn(l),PO(),o!==null&&I($a),o=l.flags,o&65536?(l.flags=o&-65537|128,l):null;case 24:return vs(ri),null;case 25:return null;default:return null}}function gw(o,l){switch(gO(l),l.tag){case 3:vs(ri),te();break;case 26:case 27:case 5:Re(l);break;case 4:te();break;case 31:l.memoizedState!==null&&Pn(l);break;case 13:Pn(l);break;case 19:I(Gt);break;case 10:vs(l.type);break;case 22:case 23:Pn(l),PO(),o!==null&&I($a);break;case 24:vs(ri)}}function Qh(o,l){try{var d=l.updateQueue,p=d!==null?d.lastEffect:null;if(p!==null){var y=p.next;d=y;do{if((d.tag&o)===o){p=void 0;var b=d.create,k=d.inst;p=b(),k.destroy=p}d=d.next}while(d!==y)}}catch(A){vt(l,l.return,A)}}function _o(o,l,d){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,A=k.destroy;if(A!==void 0){k.destroy=void 0,y=l;var Y=d,ne=A;try{ne()}catch(ae){vt(y,Y,ae)}}}p=p.next}while(p!==b)}}catch(ae){vt(l,l.return,ae)}}function mw(o){var l=o.updateQueue;if(l!==null){var d=o.stateNode;try{o_(l,d)}catch(p){vt(o,o.return,p)}}}function Ow(o,l,d){d.props=Ma(o.type,o.memoizedProps),d.state=o.memoizedState;try{d.componentWillUnmount()}catch(p){vt(o,l,p)}}function $h(o,l){try{var d=o.ref;if(d!==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 d=="function"?o.refCleanup=d(p):d.current=p}}catch(y){vt(o,l,y)}}function Dr(o,l){var d=o.ref,p=o.refCleanup;if(d!==null)if(typeof p=="function")try{p()}catch(y){vt(o,l,y)}finally{o.refCleanup=null,o=o.alternate,o!=null&&(o.refCleanup=null)}else if(typeof d=="function")try{d(null)}catch(y){vt(o,l,y)}else d.current=null}function vw(o){var l=o.type,d=o.memoizedProps,p=o.stateNode;try{e:switch(l){case"button":case"input":case"select":case"textarea":d.autoFocus&&p.focus();break e;case"img":d.src?p.src=d.src:d.srcSet&&(p.srcset=d.srcSet)}}catch(y){vt(o,o.return,y)}}function l0(o,l,d){try{var p=o.stateNode;g3(p,o.type,d,l),p[Pt]=l}catch(y){vt(o,o.return,y)}}function yw(o){return o.tag===5||o.tag===3||o.tag===26||o.tag===27&&Po(o.type)||o.tag===4}function c0(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||yw(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&&Po(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 h0(o,l,d){var p=o.tag;if(p===5||p===6)o=o.stateNode,l?(d.nodeType===9?d.body:d.nodeName==="HTML"?d.ownerDocument.body:d).insertBefore(o,l):(l=d.nodeType===9?d.body:d.nodeName==="HTML"?d.ownerDocument.body:d,l.appendChild(o),d=d._reactRootContainer,d!=null||l.onclick!==null||(l.onclick=fs));else if(p!==4&&(p===27&&Po(o.type)&&(d=o.stateNode,l=null),o=o.child,o!==null))for(h0(o,l,d),o=o.sibling;o!==null;)h0(o,l,d),o=o.sibling}function Sf(o,l,d){var p=o.tag;if(p===5||p===6)o=o.stateNode,l?d.insertBefore(o,l):d.appendChild(o);else if(p!==4&&(p===27&&Po(o.type)&&(d=o.stateNode),o=o.child,o!==null))for(Sf(o,l,d),o=o.sibling;o!==null;)Sf(o,l,d),o=o.sibling}function Sw(o){var l=o.stateNode,d=o.memoizedProps;try{for(var p=o.type,y=l.attributes;y.length;)l.removeAttributeNode(y[0]);Mi(l,p,d),l[St]=o,l[Pt]=d}catch(b){vt(o,o.return,b)}}var _s=!1,ai=!1,u0=!1,bw=typeof WeakSet=="function"?WeakSet:Set,bi=null;function Hj(o,l){if(o=o.containerInfo,R0=Nf,o=Ax(o),rO(o)){if("selectionStart"in o)var d={start:o.selectionStart,end:o.selectionEnd};else e:{d=(d=o.ownerDocument)&&d.defaultView||window;var p=d.getSelection&&d.getSelection();if(p&&p.rangeCount!==0){d=p.anchorNode;var y=p.anchorOffset,b=p.focusNode;p=p.focusOffset;try{d.nodeType,b.nodeType}catch{d=null;break e}var k=0,A=-1,Y=-1,ne=0,ae=0,ue=o,se=null;t:for(;;){for(var oe;ue!==d||y!==0&&ue.nodeType!==3||(A=k+y),ue!==b||p!==0&&ue.nodeType!==3||(Y=k+p),ue.nodeType===3&&(k+=ue.nodeValue.length),(oe=ue.firstChild)!==null;)se=ue,ue=oe;for(;;){if(ue===o)break t;if(se===d&&++ne===y&&(A=k),se===b&&++ae===p&&(Y=k),(oe=ue.nextSibling)!==null)break;ue=se,se=ue.parentNode}ue=oe}d=A===-1||Y===-1?null:{start:A,end:Y}}else d=null}d=d||{start:0,end:0}}else d=null;for(A0={focusedElem:o,selectionRange:d},Nf=!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(d=0;d<o.length;d++)y=o[d],y.ref.impl=y.nextImpl;break;case 11:case 15:break;case 1:if((o&1024)!==0&&b!==null){o=void 0,d=l,y=b.memoizedProps,b=b.memoizedState,p=d.stateNode;try{var Qe=Ma(d.type,y);o=p.getSnapshotBeforeUpdate(Qe,b),p.__reactInternalSnapshotBeforeUpdate=o}catch(De){vt(d,d.return,De)}}break;case 3:if((o&1024)!==0){if(o=l.stateNode.containerInfo,d=o.nodeType,d===9)j0(o);else if(d===1)switch(o.nodeName){case"HEAD":case"HTML":case"BODY":j0(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 xw(o,l,d){var p=d.flags;switch(d.tag){case 0:case 11:case 15:ks(o,d),p&4&&Qh(5,d);break;case 1:if(ks(o,d),p&4)if(o=d.stateNode,l===null)try{o.componentDidMount()}catch(k){vt(d,d.return,k)}else{var y=Ma(d.type,l.memoizedProps);l=l.memoizedState;try{o.componentDidUpdate(y,l,o.__reactInternalSnapshotBeforeUpdate)}catch(k){vt(d,d.return,k)}}p&64&&mw(d),p&512&&$h(d,d.return);break;case 3:if(ks(o,d),p&64&&(o=d.updateQueue,o!==null)){if(l=null,d.child!==null)switch(d.child.tag){case 27:case 5:l=d.child.stateNode;break;case 1:l=d.child.stateNode}try{o_(o,l)}catch(k){vt(d,d.return,k)}}break;case 27:l===null&&p&4&&Sw(d);case 26:case 5:ks(o,d),l===null&&p&4&&vw(d),p&512&&$h(d,d.return);break;case 12:ks(o,d);break;case 31:ks(o,d),p&4&&kw(o,d);break;case 13:ks(o,d),p&4&&Cw(o,d),p&64&&(o=d.memoizedState,o!==null&&(o=o.dehydrated,o!==null&&(d=n3.bind(null,d),_3(o,d))));break;case 22:if(p=d.memoizedState!==null||_s,!p){l=l!==null&&l.memoizedState!==null||ai,y=_s;var b=ai;_s=p,(ai=l)&&!b?Cs(o,d,(d.subtreeFlags&8772)!==0):ks(o,d),_s=y,ai=b}break;case 30:break;default:ks(o,d)}}function _w(o){var l=o.alternate;l!==null&&(o.alternate=null,_w(l)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(l=o.stateNode,l!==null&&th(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 zt=null,pn=!1;function ws(o,l,d){for(d=d.child;d!==null;)ww(o,l,d),d=d.sibling}function ww(o,l,d){if(qt&&typeof qt.onCommitFiberUnmount=="function")try{qt.onCommitFiberUnmount(Ar,d)}catch{}switch(d.tag){case 26:ai||Dr(d,l),ws(o,l,d),d.memoizedState?d.memoizedState.count--:d.stateNode&&(d=d.stateNode,d.parentNode.removeChild(d));break;case 27:ai||Dr(d,l);var p=zt,y=pn;Po(d.type)&&(zt=d.stateNode,pn=!1),ws(o,l,d),Bh(d.stateNode),zt=p,pn=y;break;case 5:ai||Dr(d,l);case 6:if(p=zt,y=pn,zt=null,ws(o,l,d),zt=p,pn=y,zt!==null)if(pn)try{(zt.nodeType===9?zt.body:zt.nodeName==="HTML"?zt.ownerDocument.body:zt).removeChild(d.stateNode)}catch(b){vt(d,l,b)}else try{zt.removeChild(d.stateNode)}catch(b){vt(d,l,b)}break;case 18:zt!==null&&(pn?(o=zt,mk(o.nodeType===9?o.body:o.nodeName==="HTML"?o.ownerDocument.body:o,d.stateNode),rc(o)):mk(zt,d.stateNode));break;case 4:p=zt,y=pn,zt=d.stateNode.containerInfo,pn=!0,ws(o,l,d),zt=p,pn=y;break;case 0:case 11:case 14:case 15:_o(2,d,l),ai||_o(4,d,l),ws(o,l,d);break;case 1:ai||(Dr(d,l),p=d.stateNode,typeof p.componentWillUnmount=="function"&&Ow(d,l,p)),ws(o,l,d);break;case 21:ws(o,l,d);break;case 22:ai=(p=ai)||d.memoizedState!==null,ws(o,l,d),ai=p;break;default:ws(o,l,d)}}function kw(o,l){if(l.memoizedState===null&&(o=l.alternate,o!==null&&(o=o.memoizedState,o!==null))){o=o.dehydrated;try{rc(o)}catch(d){vt(l,l.return,d)}}}function Cw(o,l){if(l.memoizedState===null&&(o=l.alternate,o!==null&&(o=o.memoizedState,o!==null&&(o=o.dehydrated,o!==null))))try{rc(o)}catch(d){vt(l,l.return,d)}}function Uj(o){switch(o.tag){case 31:case 13:case 19:var l=o.stateNode;return l===null&&(l=o.stateNode=new bw),l;case 22:return o=o.stateNode,l=o._retryCache,l===null&&(l=o._retryCache=new bw),l;default:throw Error(n(435,o.tag))}}function bf(o,l){var d=Uj(o);l.forEach(function(p){if(!d.has(p)){d.add(p);var y=r3.bind(null,o,p);p.then(y,y)}})}function gn(o,l){var d=l.deletions;if(d!==null)for(var p=0;p<d.length;p++){var y=d[p],b=o,k=l,A=k;e:for(;A!==null;){switch(A.tag){case 27:if(Po(A.type)){zt=A.stateNode,pn=!1;break e}break;case 5:zt=A.stateNode,pn=!1;break e;case 3:case 4:zt=A.stateNode.containerInfo,pn=!0;break e}A=A.return}if(zt===null)throw Error(n(160));ww(b,k,y),zt=null,pn=!1,b=y.alternate,b!==null&&(b.return=null),y.return=null}if(l.subtreeFlags&13886)for(l=l.child;l!==null;)Tw(l,o),l=l.sibling}var vr=null;function Tw(o,l){var d=o.alternate,p=o.flags;switch(o.tag){case 0:case 11:case 14:case 15:gn(l,o),mn(o),p&4&&(_o(3,o,o.return),Qh(3,o),_o(5,o,o.return));break;case 1:gn(l,o),mn(o),p&512&&(ai||d===null||Dr(d,d.return)),p&64&&_s&&(o=o.updateQueue,o!==null&&(p=o.callbacks,p!==null&&(d=o.shared.hiddenCallbacks,o.shared.hiddenCallbacks=d===null?p:d.concat(p))));break;case 26:var y=vr;if(gn(l,o),mn(o),p&512&&(ai||d===null||Dr(d,d.return)),p&4){var b=d!==null?d.memoizedState:null;if(p=o.memoizedState,d===null)if(p===null)if(o.stateNode===null){e:{p=o.type,d=o.memoizedProps,y=y.ownerDocument||y;t:switch(p){case"title":b=y.getElementsByTagName("title")[0],(!b||b[va]||b[St]||b.namespaceURI==="http://www.w3.org/2000/svg"||b.hasAttribute("itemprop"))&&(b=y.createElement(p),y.head.insertBefore(b,y.querySelector("head > title"))),Mi(b,p,d),b[St]=o,ni(b),p=b;break e;case"link":var k=Tk("link","href",y).get(p+(d.href||""));if(k){for(var A=0;A<k.length;A++)if(b=k[A],b.getAttribute("href")===(d.href==null||d.href===""?null:d.href)&&b.getAttribute("rel")===(d.rel==null?null:d.rel)&&b.getAttribute("title")===(d.title==null?null:d.title)&&b.getAttribute("crossorigin")===(d.crossOrigin==null?null:d.crossOrigin)){k.splice(A,1);break t}}b=y.createElement(p),Mi(b,p,d),y.head.appendChild(b);break;case"meta":if(k=Tk("meta","content",y).get(p+(d.content||""))){for(A=0;A<k.length;A++)if(b=k[A],b.getAttribute("content")===(d.content==null?null:""+d.content)&&b.getAttribute("name")===(d.name==null?null:d.name)&&b.getAttribute("property")===(d.property==null?null:d.property)&&b.getAttribute("http-equiv")===(d.httpEquiv==null?null:d.httpEquiv)&&b.getAttribute("charset")===(d.charSet==null?null:d.charSet)){k.splice(A,1);break t}}b=y.createElement(p),Mi(b,p,d),y.head.appendChild(b);break;default:throw Error(n(468,p))}b[St]=o,ni(b),p=b}o.stateNode=p}else Qk(y,o.type,o.stateNode);else o.stateNode=Ck(y,p,o.memoizedProps);else b!==p?(b===null?d.stateNode!==null&&(d=d.stateNode,d.parentNode.removeChild(d)):b.count--,p===null?Qk(y,o.type,o.stateNode):Ck(y,p,o.memoizedProps)):p===null&&o.stateNode!==null&&l0(o,o.memoizedProps,d.memoizedProps)}break;case 27:gn(l,o),mn(o),p&512&&(ai||d===null||Dr(d,d.return)),d!==null&&p&4&&l0(o,o.memoizedProps,d.memoizedProps);break;case 5:if(gn(l,o),mn(o),p&512&&(ai||d===null||Dr(d,d.return)),o.flags&32){y=o.stateNode;try{Tl(y,"")}catch(Qe){vt(o,o.return,Qe)}}p&4&&o.stateNode!=null&&(y=o.memoizedProps,l0(o,y,d!==null?d.memoizedProps:y)),p&1024&&(u0=!0);break;case 6:if(gn(l,o),mn(o),p&4){if(o.stateNode===null)throw Error(n(162));p=o.memoizedProps,d=o.stateNode;try{d.nodeValue=p}catch(Qe){vt(o,o.return,Qe)}}break;case 3:if(Df=null,y=vr,vr=zf(l.containerInfo),gn(l,o),vr=y,mn(o),p&4&&d!==null&&d.memoizedState.isDehydrated)try{rc(l.containerInfo)}catch(Qe){vt(o,o.return,Qe)}u0&&(u0=!1,Qw(o));break;case 4:p=vr,vr=zf(o.stateNode.containerInfo),gn(l,o),mn(o),vr=p;break;case 12:gn(l,o),mn(o);break;case 31:gn(l,o),mn(o),p&4&&(p=o.updateQueue,p!==null&&(o.updateQueue=null,bf(o,p)));break;case 13:gn(l,o),mn(o),o.child.flags&8192&&o.memoizedState!==null!=(d!==null&&d.memoizedState!==null)&&(_f=ii()),p&4&&(p=o.updateQueue,p!==null&&(o.updateQueue=null,bf(o,p)));break;case 22:y=o.memoizedState!==null;var Y=d!==null&&d.memoizedState!==null,ne=_s,ae=ai;if(_s=ne||y,ai=ae||Y,gn(l,o),ai=ae,_s=ne,mn(o),p&8192)e:for(l=o.stateNode,l._visibility=y?l._visibility&-2:l._visibility|1,y&&(d===null||Y||_s||ai||za(o)),d=null,l=o;;){if(l.tag===5||l.tag===26){if(d===null){Y=d=l;try{if(b=Y.stateNode,y)k=b.style,typeof k.setProperty=="function"?k.setProperty("display","none","important"):k.display="none";else{A=Y.stateNode;var ue=Y.memoizedProps.style,se=ue!=null&&ue.hasOwnProperty("display")?ue.display:null;A.style.display=se==null||typeof se=="boolean"?"":(""+se).trim()}}catch(Qe){vt(Y,Y.return,Qe)}}}else if(l.tag===6){if(d===null){Y=l;try{Y.stateNode.nodeValue=y?"":Y.memoizedProps}catch(Qe){vt(Y,Y.return,Qe)}}}else if(l.tag===18){if(d===null){Y=l;try{var oe=Y.stateNode;y?Ok(oe,!0):Ok(Y.stateNode,!1)}catch(Qe){vt(Y,Y.return,Qe)}}}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;d===l&&(d=null),l=l.return}d===l&&(d=null),l.sibling.return=l.return,l=l.sibling}p&4&&(p=o.updateQueue,p!==null&&(d=p.retryQueue,d!==null&&(p.retryQueue=null,bf(o,d))));break;case 19:gn(l,o),mn(o),p&4&&(p=o.updateQueue,p!==null&&(o.updateQueue=null,bf(o,p)));break;case 30:break;case 21:break;default:gn(l,o),mn(o)}}function mn(o){var l=o.flags;if(l&2){try{for(var d,p=o.return;p!==null;){if(yw(p)){d=p;break}p=p.return}if(d==null)throw Error(n(160));switch(d.tag){case 27:var y=d.stateNode,b=c0(o);Sf(o,b,y);break;case 5:var k=d.stateNode;d.flags&32&&(Tl(k,""),d.flags&=-33);var A=c0(o);Sf(o,A,k);break;case 3:case 4:var Y=d.stateNode.containerInfo,ne=c0(o);h0(o,ne,Y);break;default:throw Error(n(161))}}catch(ae){vt(o,o.return,ae)}o.flags&=-3}l&4096&&(o.flags&=-4097)}function Qw(o){if(o.subtreeFlags&1024)for(o=o.child;o!==null;){var l=o;Qw(l),l.tag===5&&l.flags&1024&&l.stateNode.reset(),o=o.sibling}}function ks(o,l){if(l.subtreeFlags&8772)for(l=l.child;l!==null;)xw(o,l.alternate,l),l=l.sibling}function za(o){for(o=o.child;o!==null;){var l=o;switch(l.tag){case 0:case 11:case 14:case 15:_o(4,l,l.return),za(l);break;case 1:Dr(l,l.return);var d=l.stateNode;typeof d.componentWillUnmount=="function"&&Ow(l,l.return,d),za(l);break;case 27:Bh(l.stateNode);case 26:case 5:Dr(l,l.return),za(l);break;case 22:l.memoizedState===null&&za(l);break;case 30:za(l);break;default:za(l)}o=o.sibling}}function Cs(o,l,d){for(d=d&&(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:Cs(y,b,d),Qh(4,b);break;case 1:if(Cs(y,b,d),p=b,y=p.stateNode,typeof y.componentDidMount=="function")try{y.componentDidMount()}catch(ne){vt(p,p.return,ne)}if(p=b,y=p.updateQueue,y!==null){var A=p.stateNode;try{var Y=y.shared.hiddenCallbacks;if(Y!==null)for(y.shared.hiddenCallbacks=null,y=0;y<Y.length;y++)s_(Y[y],A)}catch(ne){vt(p,p.return,ne)}}d&&k&64&&mw(b),$h(b,b.return);break;case 27:Sw(b);case 26:case 5:Cs(y,b,d),d&&p===null&&k&4&&vw(b),$h(b,b.return);break;case 12:Cs(y,b,d);break;case 31:Cs(y,b,d),d&&k&4&&kw(y,b);break;case 13:Cs(y,b,d),d&&k&4&&Cw(y,b);break;case 22:b.memoizedState===null&&Cs(y,b,d),$h(b,b.return);break;case 30:break;default:Cs(y,b,d)}l=l.sibling}}function d0(o,l){var d=null;o!==null&&o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(d=o.memoizedState.cachePool.pool),o=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(o=l.memoizedState.cachePool.pool),o!==d&&(o!=null&&o.refCount++,d!=null&&gh(d))}function f0(o,l){o=null,l.alternate!==null&&(o=l.alternate.memoizedState.cache),l=l.memoizedState.cache,l!==o&&(l.refCount++,o!=null&&gh(o))}function yr(o,l,d,p){if(l.subtreeFlags&10256)for(l=l.child;l!==null;)$w(o,l,d,p),l=l.sibling}function $w(o,l,d,p){var y=l.flags;switch(l.tag){case 0:case 11:case 15:yr(o,l,d,p),y&2048&&Qh(9,l);break;case 1:yr(o,l,d,p);break;case 3:yr(o,l,d,p),y&2048&&(o=null,l.alternate!==null&&(o=l.alternate.memoizedState.cache),l=l.memoizedState.cache,l!==o&&(l.refCount++,o!=null&&gh(o)));break;case 12:if(y&2048){yr(o,l,d,p),o=l.stateNode;try{var b=l.memoizedProps,k=b.id,A=b.onPostCommit;typeof A=="function"&&A(k,l.alternate===null?"mount":"update",o.passiveEffectDuration,-0)}catch(Y){vt(l,l.return,Y)}}else yr(o,l,d,p);break;case 31:yr(o,l,d,p);break;case 13:yr(o,l,d,p);break;case 23:break;case 22:b=l.stateNode,k=l.alternate,l.memoizedState!==null?b._visibility&2?yr(o,l,d,p):Ph(o,l):b._visibility&2?yr(o,l,d,p):(b._visibility|=2,Yl(o,l,d,p,(l.subtreeFlags&10256)!==0||!1)),y&2048&&d0(k,l);break;case 24:yr(o,l,d,p),y&2048&&f0(l.alternate,l);break;default:yr(o,l,d,p)}}function Yl(o,l,d,p,y){for(y=y&&((l.subtreeFlags&10256)!==0||!1),l=l.child;l!==null;){var b=o,k=l,A=d,Y=p,ne=k.flags;switch(k.tag){case 0:case 11:case 15:Yl(b,k,A,Y,y),Qh(8,k);break;case 23:break;case 22:var ae=k.stateNode;k.memoizedState!==null?ae._visibility&2?Yl(b,k,A,Y,y):Ph(b,k):(ae._visibility|=2,Yl(b,k,A,Y,y)),y&&ne&2048&&d0(k.alternate,k);break;case 24:Yl(b,k,A,Y,y),y&&ne&2048&&f0(k.alternate,k);break;default:Yl(b,k,A,Y,y)}l=l.sibling}}function Ph(o,l){if(l.subtreeFlags&10256)for(l=l.child;l!==null;){var d=o,p=l,y=p.flags;switch(p.tag){case 22:Ph(d,p),y&2048&&d0(p.alternate,p);break;case 24:Ph(d,p),y&2048&&f0(p.alternate,p);break;default:Ph(d,p)}l=l.sibling}}var Eh=8192;function Hl(o,l,d){if(o.subtreeFlags&Eh)for(o=o.child;o!==null;)Pw(o,l,d),o=o.sibling}function Pw(o,l,d){switch(o.tag){case 26:Hl(o,l,d),o.flags&Eh&&o.memoizedState!==null&&z3(d,vr,o.memoizedState,o.memoizedProps);break;case 5:Hl(o,l,d);break;case 3:case 4:var p=vr;vr=zf(o.stateNode.containerInfo),Hl(o,l,d),vr=p;break;case 22:o.memoizedState===null&&(p=o.alternate,p!==null&&p.memoizedState!==null?(p=Eh,Eh=16777216,Hl(o,l,d),Eh=p):Hl(o,l,d));break;default:Hl(o,l,d)}}function Ew(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 Rh(o){var l=o.deletions;if((o.flags&16)!==0){if(l!==null)for(var d=0;d<l.length;d++){var p=l[d];bi=p,Aw(p,o)}Ew(o)}if(o.subtreeFlags&10256)for(o=o.child;o!==null;)Rw(o),o=o.sibling}function Rw(o){switch(o.tag){case 0:case 11:case 15:Rh(o),o.flags&2048&&_o(9,o,o.return);break;case 3:Rh(o);break;case 12:Rh(o);break;case 22:var l=o.stateNode;o.memoizedState!==null&&l._visibility&2&&(o.return===null||o.return.tag!==13)?(l._visibility&=-3,xf(o)):Rh(o);break;default:Rh(o)}}function xf(o){var l=o.deletions;if((o.flags&16)!==0){if(l!==null)for(var d=0;d<l.length;d++){var p=l[d];bi=p,Aw(p,o)}Ew(o)}for(o=o.child;o!==null;){switch(l=o,l.tag){case 0:case 11:case 15:_o(8,l,l.return),xf(l);break;case 22:d=l.stateNode,d._visibility&2&&(d._visibility&=-3,xf(l));break;default:xf(l)}o=o.sibling}}function Aw(o,l){for(;bi!==null;){var d=bi;switch(d.tag){case 0:case 11:case 15:_o(8,d,l);break;case 23:case 22:if(d.memoizedState!==null&&d.memoizedState.cachePool!==null){var p=d.memoizedState.cachePool.pool;p!=null&&p.refCount++}break;case 24:gh(d.memoizedState.cache)}if(p=d.child,p!==null)p.return=d,bi=p;else e:for(d=o;bi!==null;){p=bi;var y=p.sibling,b=p.return;if(_w(p),p===d){bi=null;break e}if(y!==null){y.return=b,bi=y;break e}bi=b}}}var Gj={getCacheForType:function(o){var l=Ri(ri),d=l.data.get(o);return d===void 0&&(d=o(),l.data.set(o,d)),d},cacheSignal:function(){return Ri(ri).controller.signal}},Fj=typeof WeakMap=="function"?WeakMap:Map,ft=0,kt=null,Ke=null,tt=0,Ot=0,En=null,wo=!1,Ul=!1,p0=!1,Ts=0,Vt=0,ko=0,ja=0,g0=0,Rn=0,Gl=0,Ah=null,On=null,m0=!1,_f=0,Mw=0,wf=1/0,kf=null,Co=null,fi=0,To=null,Fl=null,Qs=0,O0=0,v0=null,zw=null,Mh=0,y0=null;function An(){return(ft&2)!==0&&tt!==0?tt&-tt:$.T!==null?k0():Ne()}function jw(){if(Rn===0)if((tt&536870912)===0||rt){var o=io;io<<=1,(io&3932160)===0&&(io=262144),Rn=o}else Rn=536870912;return o=$n.current,o!==null&&(o.flags|=32),Rn}function vn(o,l,d){(o===kt&&(Ot===2||Ot===9)||o.cancelPendingCommit!==null)&&(Kl(o,0),Qo(o,tt,Rn,!1)),Mr(o,d),((ft&2)===0||o!==kt)&&(o===kt&&((ft&2)===0&&(ja|=d),Vt===4&&Qo(o,tt,Rn,!1)),Br(o))}function Dw(o,l,d){if((ft&6)!==0)throw Error(n(327));var p=!d&&(l&127)===0&&(l&o.expiredLanes)===0||Cn(o,l),y=p?e3(o,l):b0(o,l,!0),b=p;do{if(y===0){Ul&&!p&&Qo(o,l,0,!1);break}else{if(d=o.current.alternate,b&&!Kj(d)){y=b0(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 A=o;y=Ah;var Y=A.current.memoizedState.isDehydrated;if(Y&&(Kl(A,k).flags|=256),k=b0(A,k,!1),k!==2){if(p0&&!Y){A.errorRecoveryDisabledLanes|=b,ja|=b,y=4;break e}b=On,On=y,b!==null&&(On===null?On=b:On.push.apply(On,b))}y=k}if(b=!1,y!==2)continue}}if(y===1){Kl(o,0),Qo(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:Qo(p,l,Rn,!wo);break e;case 2:On=null;break;case 3:case 5:break;default:throw Error(n(329))}if((l&62914560)===l&&(y=_f+300-ii(),10<y)){if(Qo(p,l,Rn,!wo),ro(p,0,!0)!==0)break e;Qs=l,p.timeoutHandle=pk(Bw.bind(null,p,d,On,kf,m0,l,Rn,ja,Gl,wo,b,"Throttled",-0,0),y);break e}Bw(p,d,On,kf,m0,l,Rn,ja,Gl,wo,b,null,-0,0)}}break}while(!0);Br(o)}function Bw(o,l,d,p,y,b,k,A,Y,ne,ae,ue,se,oe){if(o.timeoutHandle=-1,ue=l.subtreeFlags,ue&8192||(ue&16785408)===16785408){ue={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:fs},Pw(l,b,ue);var Qe=(b&62914560)===b?_f-ii():(b&4194048)===b?Mw-ii():0;if(Qe=j3(ue,Qe),Qe!==null){Qs=b,o.cancelPendingCommit=Qe(Vw.bind(null,o,l,b,d,p,y,k,A,Y,ae,ue,null,se,oe)),Qo(o,b,k,!ne);return}}Vw(o,l,b,d,p,y,k,A,Y)}function Kj(o){for(var l=o;;){var d=l.tag;if((d===0||d===11||d===15)&&l.flags&16384&&(d=l.updateQueue,d!==null&&(d=d.stores,d!==null)))for(var p=0;p<d.length;p++){var y=d[p],b=y.getSnapshot;y=y.value;try{if(!Tn(b(),y))return!1}catch{return!1}}if(d=l.child,l.subtreeFlags&16384&&d!==null)d.return=l,l=d;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 Qo(o,l,d,p){l&=~g0,l&=~ja,o.suspendedLanes|=l,o.pingedLanes&=~l,p&&(o.warmLanes|=l),p=o.expirationTimes;for(var y=l;0<y;){var b=31-Wi(y),k=1<<b;p[b]=-1,y&=~k}d!==0&&xl(o,d,l)}function Cf(){return(ft&6)===0?(zh(0),!1):!0}function S0(){if(Ke!==null){if(Ot===0)var o=Ke.return;else o=Ke,Os=Ta=null,jO(o),Zl=null,Oh=0,o=Ke;for(;o!==null;)gw(o.alternate,o),o=o.return;Ke=null}}function Kl(o,l){var d=o.timeoutHandle;d!==-1&&(o.timeoutHandle=-1,v3(d)),d=o.cancelPendingCommit,d!==null&&(o.cancelPendingCommit=null,d()),Qs=0,S0(),kt=o,Ke=d=gs(o.current,null),tt=l,Ot=0,En=null,wo=!1,Ul=Cn(o,l),p0=!1,Gl=Rn=g0=ja=ko=Vt=0,On=Ah=null,m0=!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-Wi(p),b=1<<y;l|=o[y],p&=~b}return Ts=l,Vd(),d}function Lw(o,l){Ve=null,$.H=kh,l===Nl||l===ef?(l=t_(),Ot=3):l===wO?(l=t_(),Ot=4):Ot=l===KO?8:l!==null&&typeof l=="object"&&typeof l.then=="function"?6:1,En=l,Ke===null&&(Vt=1,gf(o,Gn(l,o.current)))}function Xw(){var o=$n.current;return o===null?!0:(tt&4194048)===tt?er===null:(tt&62914560)===tt||(tt&536870912)!==0?o===er:!1}function Nw(){var o=$.H;return $.H=kh,o===null?kh:o}function Zw(){var o=$.A;return $.A=Gj,o}function Tf(){Vt=4,wo||(tt&4194048)!==tt&&$n.current!==null||(Ul=!0),(ko&134217727)===0&&(ja&134217727)===0||kt===null||Qo(kt,tt,Rn,!1)}function b0(o,l,d){var p=ft;ft|=2;var y=Nw(),b=Zw();(kt!==o||tt!==l)&&(kf=null,Kl(o,l)),l=!1;var k=Vt;e:do try{if(Ot!==0&&Ke!==null){var A=Ke,Y=En;switch(Ot){case 8:S0(),k=6;break e;case 3:case 2:case 9:case 6:$n.current===null&&(l=!0);var ne=Ot;if(Ot=0,En=null,Jl(o,A,Y,ne),d&&Ul){k=0;break e}break;default:ne=Ot,Ot=0,En=null,Jl(o,A,Y,ne)}}Jj(),k=Vt;break}catch(ae){Lw(o,ae)}while(!0);return l&&o.shellSuspendCounter++,Os=Ta=null,ft=p,$.H=y,$.A=b,Ke===null&&(kt=null,tt=0,Vd()),k}function Jj(){for(;Ke!==null;)Ww(Ke)}function e3(o,l){var d=ft;ft|=2;var p=Nw(),y=Zw();kt!==o||tt!==l?(kf=null,wf=ii()+500,Kl(o,l)):Ul=Cn(o,l);e:do try{if(Ot!==0&&Ke!==null){l=Ke;var b=En;t:switch(Ot){case 1:Ot=0,En=null,Jl(o,l,b,1);break;case 2:case 9:if(Jx(b)){Ot=0,En=null,qw(l);break}l=function(){Ot!==2&&Ot!==9||kt!==o||(Ot=7),Br(o)},b.then(l,l);break e;case 3:Ot=7;break e;case 4:Ot=5;break e;case 7:Jx(b)?(Ot=0,En=null,qw(l)):(Ot=0,En=null,Jl(o,l,b,7));break;case 5:var k=null;switch(Ke.tag){case 26:k=Ke.memoizedState;case 5:case 27:var A=Ke;if(k?$k(k):A.stateNode.complete){Ot=0,En=null;var Y=A.sibling;if(Y!==null)Ke=Y;else{var ne=A.return;ne!==null?(Ke=ne,Qf(ne)):Ke=null}break t}}Ot=0,En=null,Jl(o,l,b,5);break;case 6:Ot=0,En=null,Jl(o,l,b,6);break;case 8:S0(),Vt=6;break e;default:throw Error(n(462))}}t3();break}catch(ae){Lw(o,ae)}while(!0);return Os=Ta=null,$.H=p,$.A=y,ft=d,Ke!==null?0:(kt=null,tt=0,Vd(),Vt)}function t3(){for(;Ke!==null&&!Zi();)Ww(Ke)}function Ww(o){var l=fw(o.alternate,o,Ts);o.memoizedProps=o.pendingProps,l===null?Qf(o):Ke=l}function qw(o){var l=o,d=l.alternate;switch(l.tag){case 15:case 0:l=aw(d,l,l.pendingProps,l.type,void 0,tt);break;case 11:l=aw(d,l,l.pendingProps,l.type.render,l.ref,tt);break;case 5:jO(l);default:gw(d,l),l=Ke=Zx(l,Ts),l=fw(d,l,Ts)}o.memoizedProps=o.pendingProps,l===null?Qf(o):Ke=l}function Jl(o,l,d,p){Os=Ta=null,jO(l),Zl=null,Oh=0;var y=l.return;try{if(Wj(o,y,l,d,tt)){Vt=1,gf(o,Gn(d,o.current)),Ke=null;return}}catch(b){if(y!==null)throw Ke=y,b;Vt=1,gf(o,Gn(d,o.current)),Ke=null;return}l.flags&32768?(rt||p===1?o=!0:Ul||(tt&536870912)!==0?o=!1:(wo=o=!0,(p===2||p===9||p===3||p===6)&&(p=$n.current,p!==null&&p.tag===13&&(p.flags|=16384))),Iw(l,o)):Qf(l)}function Qf(o){var l=o;do{if((l.flags&32768)!==0){Iw(l,wo);return}o=l.return;var d=Vj(l.alternate,l,Ts);if(d!==null){Ke=d;return}if(l=l.sibling,l!==null){Ke=l;return}Ke=l=o}while(l!==null);Vt===0&&(Vt=5)}function Iw(o,l){do{var d=Yj(o.alternate,o);if(d!==null){d.flags&=32767,Ke=d;return}if(d=o.return,d!==null&&(d.flags|=32768,d.subtreeFlags=0,d.deletions=null),!l&&(o=o.sibling,o!==null)){Ke=o;return}Ke=o=d}while(o!==null);Vt=6,Ke=null}function Vw(o,l,d,p,y,b,k,A,Y){o.cancelPendingCommit=null;do $f();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|=cO,eh(o,d,b,k,A,Y),o===kt&&(Ke=kt=null,tt=0),Fl=l,To=o,Qs=d,O0=b,v0=y,zw=p,(l.subtreeFlags&10256)!==0||(l.flags&10256)!==0?(o.callbackNode=null,o.callbackPriority=0,s3(ls,function(){return Fw(),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,d)}finally{ft=k,Z.p=y,$.T=p}}fi=1,Yw(),Hw(),Uw()}}function Yw(){if(fi===1){fi=0;var o=To,l=Fl,d=(l.flags&13878)!==0;if((l.subtreeFlags&13878)!==0||d){d=$.T,$.T=null;var p=Z.p;Z.p=2;var y=ft;ft|=4;try{Tw(l,o);var b=A0,k=Ax(o.containerInfo),A=b.focusedElem,Y=b.selectionRange;if(k!==A&&A&&A.ownerDocument&&Rx(A.ownerDocument.documentElement,A)){if(Y!==null&&rO(A)){var ne=Y.start,ae=Y.end;if(ae===void 0&&(ae=ne),"selectionStart"in A)A.selectionStart=ne,A.selectionEnd=Math.min(ae,A.value.length);else{var ue=A.ownerDocument||document,se=ue&&ue.defaultView||window;if(se.getSelection){var oe=se.getSelection(),Qe=A.textContent.length,De=Math.min(Y.start,Qe),_t=Y.end===void 0?De:Math.min(Y.end,Qe);!oe.extend&&De>_t&&(k=_t,_t=De,De=k);var K=Ex(A,De),G=Ex(A,_t);if(K&&G&&(oe.rangeCount!==1||oe.anchorNode!==K.node||oe.anchorOffset!==K.offset||oe.focusNode!==G.node||oe.focusOffset!==G.offset)){var ie=ue.createRange();ie.setStart(K.node,K.offset),oe.removeAllRanges(),De>_t?(oe.addRange(ie),oe.extend(G.node,G.offset)):(ie.setEnd(G.node,G.offset),oe.addRange(ie))}}}}for(ue=[],oe=A;oe=oe.parentNode;)oe.nodeType===1&&ue.push({element:oe,left:oe.scrollLeft,top:oe.scrollTop});for(typeof A.focus=="function"&&A.focus(),A=0;A<ue.length;A++){var le=ue[A];le.element.scrollLeft=le.left,le.element.scrollTop=le.top}}Nf=!!R0,A0=R0=null}finally{ft=y,Z.p=p,$.T=d}}o.current=l,fi=2}}function Hw(){if(fi===2){fi=0;var o=To,l=Fl,d=(l.flags&8772)!==0;if((l.subtreeFlags&8772)!==0||d){d=$.T,$.T=null;var p=Z.p;Z.p=2;var y=ft;ft|=4;try{xw(o,l.alternate,l)}finally{ft=y,Z.p=p,$.T=d}}fi=3}}function Uw(){if(fi===4||fi===3){fi=0,as();var o=To,l=Fl,d=Qs,p=zw;(l.subtreeFlags&10256)!==0||(l.flags&10256)!==0?fi=5:(fi=0,Fl=To=null,Gw(o,o.pendingLanes));var y=o.pendingLanes;if(y===0&&(Co=null),J(d),l=l.stateNode,qt&&typeof qt.onCommitFiberRoot=="function")try{qt.onCommitFiberRoot(Ar,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 A=p[k];b(A.value,{componentStack:A.stack})}}finally{$.T=l,Z.p=y}}(Qs&3)!==0&&$f(),Br(o),y=o.pendingLanes,(d&261930)!==0&&(y&42)!==0?o===y0?Mh++:(Mh=0,y0=o):Mh=0,zh(0)}}function Gw(o,l){(o.pooledCacheLanes&=l)===0&&(l=o.pooledCache,l!=null&&(o.pooledCache=null,gh(l)))}function $f(){return Yw(),Hw(),Uw(),Fw()}function Fw(){if(fi!==5)return!1;var o=To,l=O0;O0=0;var d=J(Qs),p=$.T,y=Z.p;try{Z.p=32>d?32:d,$.T=null,d=v0,v0=null;var b=To,k=Qs;if(fi=0,Fl=To=null,Qs=0,(ft&6)!==0)throw Error(n(331));var A=ft;if(ft|=4,Rw(b.current),$w(b,b.current,k,d),ft=A,zh(0,!1),qt&&typeof qt.onPostCommitFiberRoot=="function")try{qt.onPostCommitFiberRoot(Ar,b)}catch{}return!0}finally{Z.p=y,$.T=p,Gw(o,l)}}function Kw(o,l,d){l=Gn(d,l),l=FO(o.stateNode,l,2),o=So(o,l,2),o!==null&&(Mr(o,2),Br(o))}function vt(o,l,d){if(o.tag===3)Kw(o,o,d);else for(;l!==null;){if(l.tag===3){Kw(l,o,d);break}else if(l.tag===1){var p=l.stateNode;if(typeof l.type.getDerivedStateFromError=="function"||typeof p.componentDidCatch=="function"&&(Co===null||!Co.has(p))){o=Gn(d,o),d=J_(2),p=So(l,d,2),p!==null&&(ew(d,p,l,o),Mr(p,2),Br(p));break}}l=l.return}}function x0(o,l,d){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(d)||(p0=!0,y.add(d),o=i3.bind(null,o,l,d),l.then(o,o))}function i3(o,l,d){var p=o.pingCache;p!==null&&p.delete(l),o.pingedLanes|=o.suspendedLanes&d,o.warmLanes&=~d,kt===o&&(tt&d)===d&&(Vt===4||Vt===3&&(tt&62914560)===tt&&300>ii()-_f?(ft&2)===0&&Kl(o,0):g0|=d,Gl===tt&&(Gl=0)),Br(o)}function Jw(o,l){l===0&&(l=so()),o=wa(o,l),o!==null&&(Mr(o,l),Br(o))}function n3(o){var l=o.memoizedState,d=0;l!==null&&(d=l.retryLane),Jw(o,d)}function r3(o,l){var d=0;switch(o.tag){case 31:case 13:var p=o.stateNode,y=o.memoizedState;y!==null&&(d=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),Jw(o,d)}function s3(o,l){return ln(o,l)}var Pf=null,ec=null,_0=!1,Ef=!1,w0=!1,$o=0;function Br(o){o!==ec&&o.next===null&&(ec===null?Pf=ec=o:ec=ec.next=o),Ef=!0,_0||(_0=!0,a3())}function zh(o,l){if(!w0&&Ef){w0=!0;do for(var d=!1,p=Pf;p!==null;){if(o!==0){var y=p.pendingLanes;if(y===0)var b=0;else{var k=p.suspendedLanes,A=p.pingedLanes;b=(1<<31-Wi(42|o)+1)-1,b&=y&~(k&~A),b=b&201326741?b&201326741|1:b?b|2:0}b!==0&&(d=!0,nk(p,b))}else b=tt,b=ro(p,p===kt?b:0,p.cancelPendingCommit!==null||p.timeoutHandle!==-1),(b&3)===0||Cn(p,b)||(d=!0,nk(p,b));p=p.next}while(d);w0=!1}}function o3(){ek()}function ek(){Ef=_0=!1;var o=0;$o!==0&&O3()&&(o=$o);for(var l=ii(),d=null,p=Pf;p!==null;){var y=p.next,b=tk(p,l);b===0?(p.next=null,d===null?Pf=y:d.next=y,y===null&&(ec=d)):(d=p,(o!==0||(b&3)!==0)&&(Ef=!0)),p=y}fi!==0&&fi!==5||zh(o),$o!==0&&($o=0)}function tk(o,l){for(var d=o.suspendedLanes,p=o.pingedLanes,y=o.expirationTimes,b=o.pendingLanes&-62914561;0<b;){var k=31-Wi(b),A=1<<k,Y=y[k];Y===-1?((A&d)===0||(A&p)!==0)&&(y[k]=pa(A,l)):Y<=l&&(o.expiredLanes|=A),b&=~A}if(l=kt,d=tt,d=ro(o,o===l?d:0,o.cancelPendingCommit!==null||o.timeoutHandle!==-1),p=o.callbackNode,d===0||o===l&&(Ot===2||Ot===9)||o.cancelPendingCommit!==null)return p!==null&&p!==null&&cn(p),o.callbackNode=null,o.callbackPriority=0;if((d&3)===0||Cn(o,d)){if(l=d&-d,l===o.callbackPriority)return l;switch(p!==null&&cn(p),J(d)){case 2:case 8:d=Rr;break;case 32:d=ls;break;case 268435456:d=hn;break;default:d=ls}return p=ik.bind(null,o),d=ln(d,p),o.callbackPriority=l,o.callbackNode=d,l}return p!==null&&p!==null&&cn(p),o.callbackPriority=2,o.callbackNode=null,2}function ik(o,l){if(fi!==0&&fi!==5)return o.callbackNode=null,o.callbackPriority=0,null;var d=o.callbackNode;if($f()&&o.callbackNode!==d)return null;var p=tt;return p=ro(o,o===kt?p:0,o.cancelPendingCommit!==null||o.timeoutHandle!==-1),p===0?null:(Dw(o,p,l),tk(o,ii()),o.callbackNode!=null&&o.callbackNode===d?ik.bind(null,o):null)}function nk(o,l){if($f())return null;Dw(o,l,!0)}function a3(){y3(function(){(ft&6)!==0?ln(Hn,o3):ek()})}function k0(){if($o===0){var o=Ll;o===0&&(o=to,to<<=1,(to&261888)===0&&(to=256)),$o=o}return $o}function rk(o){return o==null||typeof o=="symbol"||typeof o=="boolean"?null:typeof o=="function"?o:Bd(""+o)}function sk(o,l){var d=l.ownerDocument.createElement("input");return d.name=l.name,d.value=l.value,o.id&&d.setAttribute("form",o.id),l.parentNode.insertBefore(d,l),o=new FormData(o),d.parentNode.removeChild(d),o}function l3(o,l,d,p,y){if(l==="submit"&&d&&d.stateNode===y){var b=rk((y[Pt]||null).action),k=p.submitter;k&&(l=(l=k[Pt]||null)?rk(l.formAction):k.getAttribute("formAction"),l!==null&&(b=l,k=null));var A=new Zd("action","action",null,p,y);o.push({event:A,listeners:[{instance:null,listener:function(){if(p.defaultPrevented){if($o!==0){var Y=k?sk(y,k):new FormData(y);IO(d,{pending:!0,data:Y,method:y.method,action:b},null,Y)}}else typeof b=="function"&&(A.preventDefault(),Y=k?sk(y,k):new FormData(y),IO(d,{pending:!0,data:Y,method:y.method,action:b},b,Y))},currentTarget:y}]})}}for(var C0=0;C0<lO.length;C0++){var T0=lO[C0],c3=T0.toLowerCase(),h3=T0[0].toUpperCase()+T0.slice(1);Or(c3,"on"+h3)}Or(jx,"onAnimationEnd"),Or(Dx,"onAnimationIteration"),Or(Bx,"onAnimationStart"),Or("dblclick","onDoubleClick"),Or("focusin","onFocus"),Or("focusout","onBlur"),Or(Cj,"onTransitionRun"),Or(Tj,"onTransitionStart"),Or(Qj,"onTransitionCancel"),Or(Lx,"onTransitionEnd"),ho("onMouseEnter",["mouseout","mouseover"]),ho("onMouseLeave",["mouseout","mouseover"]),ho("onPointerEnter",["pointerout","pointerover"]),ho("onPointerLeave",["pointerout","pointerover"]),us("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),us("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),us("onBeforeInput",["compositionend","keypress","textInput","paste"]),us("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),us("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),us("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var jh="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(jh));function ok(o,l){l=(l&4)!==0;for(var d=0;d<o.length;d++){var p=o[d],y=p.event;p=p.listeners;e:{var b=void 0;if(l)for(var k=p.length-1;0<=k;k--){var A=p[k],Y=A.instance,ne=A.currentTarget;if(A=A.listener,Y!==b&&y.isPropagationStopped())break e;b=A,y.currentTarget=ne;try{b(y)}catch(ae){Id(ae)}y.currentTarget=null,b=Y}else for(k=0;k<p.length;k++){if(A=p[k],Y=A.instance,ne=A.currentTarget,A=A.listener,Y!==b&&y.isPropagationStopped())break e;b=A,y.currentTarget=ne;try{b(y)}catch(ae){Id(ae)}y.currentTarget=null,b=Y}}}}function Je(o,l){var d=l[wl];d===void 0&&(d=l[wl]=new Set);var p=o+"__bubble";d.has(p)||(ak(l,o,2,!1),d.add(p))}function Q0(o,l,d){var p=0;l&&(p|=4),ak(d,o,p,l)}var Rf="_reactListening"+Math.random().toString(36).slice(2);function $0(o){if(!o[Rf]){o[Rf]=!0,Rd.forEach(function(d){d!=="selectionchange"&&(u3.has(d)||Q0(d,!1,o),Q0(d,!0,o))});var l=o.nodeType===9?o:o.ownerDocument;l===null||l[Rf]||(l[Rf]=!0,Q0("selectionchange",!1,l))}}function ak(o,l,d,p){switch(jk(l)){case 2:var y=L3;break;case 8:y=X3;break;default:y=q0}d=y.bind(null,l,d,o),y=void 0,!Um||l!=="touchstart"&&l!=="touchmove"&&l!=="wheel"||(y=!0),p?y!==void 0?o.addEventListener(l,d,{capture:!0,passive:y}):o.addEventListener(l,d,!0):y!==void 0?o.addEventListener(l,d,{passive:y}):o.addEventListener(l,d,!1)}function P0(o,l,d,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 A=p.stateNode.containerInfo;if(A===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(;A!==null;){if(k=oo(A),k===null)return;if(Y=k.tag,Y===5||Y===6||Y===26||Y===27){p=b=k;continue e}A=A.parentNode}}p=p.return}dx(function(){var ne=b,ae=Ym(d),ue=[];e:{var se=Xx.get(o);if(se!==void 0){var oe=Zd,Qe=o;switch(o){case"keypress":if(Xd(d)===0)break e;case"keydown":case"keyup":oe=rj;break;case"focusin":Qe="focus",oe=Jm;break;case"focusout":Qe="blur",oe=Jm;break;case"beforeblur":case"afterblur":oe=Jm;break;case"click":if(d.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":oe=gx;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":oe=Vz;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":oe=aj;break;case jx:case Dx:case Bx:oe=Uz;break;case Lx:oe=cj;break;case"scroll":case"scrollend":oe=qz;break;case"wheel":oe=uj;break;case"copy":case"cut":case"paste":oe=Fz;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":oe=Ox;break;case"toggle":case"beforetoggle":oe=fj}var De=(l&4)!==0,_t=!De&&(o==="scroll"||o==="scrollend"),K=De?se!==null?se+"Capture":null:se;De=[];for(var G=ne,ie;G!==null;){var le=G;if(ie=le.stateNode,le=le.tag,le!==5&&le!==26&&le!==27||ie===null||K===null||(le=rh(G,K),le!=null&&De.push(Dh(G,le,ie))),_t)break;G=G.return}0<De.length&&(se=new oe(se,Qe,null,d,ae),ue.push({event:se,listeners:De}))}}if((l&7)===0){e:{if(se=o==="mouseover"||o==="pointerover",oe=o==="mouseout"||o==="pointerout",se&&d!==Vm&&(Qe=d.relatedTarget||d.fromElement)&&(oo(Qe)||Qe[qi]))break e;if((oe||se)&&(se=ae.window===ae?ae:(se=ae.ownerDocument)?se.defaultView||se.parentWindow:window,oe?(Qe=d.relatedTarget||d.toElement,oe=ne,Qe=Qe?oo(Qe):null,Qe!==null&&(_t=s(Qe),De=Qe.tag,Qe!==_t||De!==5&&De!==27&&De!==6)&&(Qe=null)):(oe=null,Qe=ne),oe!==Qe)){if(De=gx,le="onMouseLeave",K="onMouseEnter",G="mouse",(o==="pointerout"||o==="pointerover")&&(De=Ox,le="onPointerLeave",K="onPointerEnter",G="pointer"),_t=oe==null?se:lo(oe),ie=Qe==null?se:lo(Qe),se=new De(le,G+"leave",oe,d,ae),se.target=_t,se.relatedTarget=ie,le=null,oo(ae)===ne&&(De=new De(K,G+"enter",Qe,d,ae),De.target=ie,De.relatedTarget=_t,le=De),_t=le,oe&&Qe)t:{for(De=d3,K=oe,G=Qe,ie=0,le=K;le;le=De(le))ie++;le=0;for(var Me=G;Me;Me=De(Me))le++;for(;0<ie-le;)K=De(K),ie--;for(;0<le-ie;)G=De(G),le--;for(;ie--;){if(K===G||G!==null&&K===G.alternate){De=K;break t}K=De(K),G=De(G)}De=null}else De=null;oe!==null&&lk(ue,se,oe,De,!1),Qe!==null&&_t!==null&&lk(ue,_t,Qe,De,!0)}}e:{if(se=ne?lo(ne):window,oe=se.nodeName&&se.nodeName.toLowerCase(),oe==="select"||oe==="input"&&se.type==="file")var ht=kx;else if(_x(se))if(Cx)ht=_j;else{ht=bj;var Pe=Sj}else oe=se.nodeName,!oe||oe.toLowerCase()!=="input"||se.type!=="checkbox"&&se.type!=="radio"?ne&&Im(ne.elementType)&&(ht=kx):ht=xj;if(ht&&(ht=ht(o,ne))){wx(ue,ht,d,ae);break e}Pe&&Pe(o,se,ne),o==="focusout"&&ne&&se.type==="number"&&ne.memoizedProps.value!=null&&nh(se,"number",se.value)}switch(Pe=ne?lo(ne):window,o){case"focusin":(_x(Pe)||Pe.contentEditable==="true")&&(El=Pe,sO=ne,dh=null);break;case"focusout":dh=sO=El=null;break;case"mousedown":oO=!0;break;case"contextmenu":case"mouseup":case"dragend":oO=!1,Mx(ue,d,ae);break;case"selectionchange":if(kj)break;case"keydown":case"keyup":Mx(ue,d,ae)}var Ye;if(tO)e:{switch(o){case"compositionstart":var it="onCompositionStart";break e;case"compositionend":it="onCompositionEnd";break e;case"compositionupdate":it="onCompositionUpdate";break e}it=void 0}else Pl?bx(o,d)&&(it="onCompositionEnd"):o==="keydown"&&d.keyCode===229&&(it="onCompositionStart");it&&(vx&&d.locale!=="ko"&&(Pl||it!=="onCompositionStart"?it==="onCompositionEnd"&&Pl&&(Ye=fx()):(fo=ae,Gm="value"in fo?fo.value:fo.textContent,Pl=!0)),Pe=Af(ne,it),0<Pe.length&&(it=new mx(it,o,null,d,ae),ue.push({event:it,listeners:Pe}),Ye?it.data=Ye:(Ye=xx(d),Ye!==null&&(it.data=Ye)))),(Ye=gj?mj(o,d):Oj(o,d))&&(it=Af(ne,"onBeforeInput"),0<it.length&&(Pe=new mx("onBeforeInput","beforeinput",null,d,ae),ue.push({event:Pe,listeners:it}),Pe.data=Ye)),l3(ue,o,ne,d,ae)}ok(ue,l)})}function Dh(o,l,d){return{instance:o,listener:l,currentTarget:d}}function Af(o,l){for(var d=l+"Capture",p=[];o!==null;){var y=o,b=y.stateNode;if(y=y.tag,y!==5&&y!==26&&y!==27||b===null||(y=rh(o,d),y!=null&&p.unshift(Dh(o,y,b)),y=rh(o,l),y!=null&&p.push(Dh(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 lk(o,l,d,p,y){for(var b=l._reactName,k=[];d!==null&&d!==p;){var A=d,Y=A.alternate,ne=A.stateNode;if(A=A.tag,Y!==null&&Y===p)break;A!==5&&A!==26&&A!==27||ne===null||(Y=ne,y?(ne=rh(d,b),ne!=null&&k.unshift(Dh(d,ne,Y))):y||(ne=rh(d,b),ne!=null&&k.push(Dh(d,ne,Y)))),d=d.return}k.length!==0&&o.push({event:l,listeners:k})}var f3=/\r\n?/g,p3=/\u0000|\uFFFD/g;function ck(o){return(typeof o=="string"?o:""+o).replace(f3,`
49
+ `).replace(p3,"")}function hk(o,l){return l=ck(l),ck(o)===l}function xt(o,l,d,p,y,b){switch(d){case"children":typeof p=="string"?l==="body"||l==="textarea"&&p===""||Tl(o,p):(typeof p=="number"||typeof p=="bigint")&&l!=="body"&&Tl(o,""+p);break;case"className":Cl(o,"class",p);break;case"tabIndex":Cl(o,"tabindex",p);break;case"dir":case"role":case"viewBox":case"width":case"height":Cl(o,d,p);break;case"style":hx(o,p,b);break;case"data":if(l!=="object"){Cl(o,"data",p);break}case"src":case"href":if(p===""&&(l!=="a"||d!=="href")){o.removeAttribute(d);break}if(p==null||typeof p=="function"||typeof p=="symbol"||typeof p=="boolean"){o.removeAttribute(d);break}p=Bd(""+p),o.setAttribute(d,p);break;case"action":case"formAction":if(typeof p=="function"){o.setAttribute(d,"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"&&(d==="formAction"?(l!=="input"&&xt(o,l,"name",y.name,y,null),xt(o,l,"formEncType",y.formEncType,y,null),xt(o,l,"formMethod",y.formMethod,y,null),xt(o,l,"formTarget",y.formTarget,y,null)):(xt(o,l,"encType",y.encType,y,null),xt(o,l,"method",y.method,y,null),xt(o,l,"target",y.target,y,null)));if(p==null||typeof p=="symbol"||typeof p=="boolean"){o.removeAttribute(d);break}p=Bd(""+p),o.setAttribute(d,p);break;case"onClick":p!=null&&(o.onclick=fs);break;case"onScroll":p!=null&&Je("scroll",o);break;case"onScrollEnd":p!=null&&Je("scrollend",o);break;case"dangerouslySetInnerHTML":if(p!=null){if(typeof p!="object"||!("__html"in p))throw Error(n(61));if(d=p.__html,d!=null){if(y.children!=null)throw Error(n(60));o.innerHTML=d}}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}d=Bd(""+p),o.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",d);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(d,""+p):o.removeAttribute(d);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(d,""):o.removeAttribute(d);break;case"capture":case"download":p===!0?o.setAttribute(d,""):p!==!1&&p!=null&&typeof p!="function"&&typeof p!="symbol"?o.setAttribute(d,p):o.removeAttribute(d);break;case"cols":case"rows":case"size":case"span":p!=null&&typeof p!="function"&&typeof p!="symbol"&&!isNaN(p)&&1<=p?o.setAttribute(d,p):o.removeAttribute(d);break;case"rowSpan":case"start":p==null||typeof p=="function"||typeof p=="symbol"||isNaN(p)?o.removeAttribute(d):o.setAttribute(d,p);break;case"popover":Je("beforetoggle",o),Je("toggle",o),kl(o,"popover",p);break;case"xlinkActuate":mr(o,"http://www.w3.org/1999/xlink","xlink:actuate",p);break;case"xlinkArcrole":mr(o,"http://www.w3.org/1999/xlink","xlink:arcrole",p);break;case"xlinkRole":mr(o,"http://www.w3.org/1999/xlink","xlink:role",p);break;case"xlinkShow":mr(o,"http://www.w3.org/1999/xlink","xlink:show",p);break;case"xlinkTitle":mr(o,"http://www.w3.org/1999/xlink","xlink:title",p);break;case"xlinkType":mr(o,"http://www.w3.org/1999/xlink","xlink:type",p);break;case"xmlBase":mr(o,"http://www.w3.org/XML/1998/namespace","xml:base",p);break;case"xmlLang":mr(o,"http://www.w3.org/XML/1998/namespace","xml:lang",p);break;case"xmlSpace":mr(o,"http://www.w3.org/XML/1998/namespace","xml:space",p);break;case"is":kl(o,"is",p);break;case"innerText":case"textContent":break;default:(!(2<d.length)||d[0]!=="o"&&d[0]!=="O"||d[1]!=="n"&&d[1]!=="N")&&(d=Zz.get(d)||d,kl(o,d,p))}}function E0(o,l,d,p,y,b){switch(d){case"style":hx(o,p,b);break;case"dangerouslySetInnerHTML":if(p!=null){if(typeof p!="object"||!("__html"in p))throw Error(n(61));if(d=p.__html,d!=null){if(y.children!=null)throw Error(n(60));o.innerHTML=d}}break;case"children":typeof p=="string"?Tl(o,p):(typeof p=="number"||typeof p=="bigint")&&Tl(o,""+p);break;case"onScroll":p!=null&&Je("scroll",o);break;case"onScrollEnd":p!=null&&Je("scrollend",o);break;case"onClick":p!=null&&(o.onclick=fs);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Ad.hasOwnProperty(d))e:{if(d[0]==="o"&&d[1]==="n"&&(y=d.endsWith("Capture"),l=d.slice(2,y?d.length-7:void 0),b=o[Pt]||null,b=b!=null?b[d]:null,typeof b=="function"&&o.removeEventListener(l,b,y),typeof p=="function")){typeof b!="function"&&b!==null&&(d in o?o[d]=null:o.hasAttribute(d)&&o.removeAttribute(d)),o.addEventListener(l,p,y);break e}d in o?o[d]=p:p===!0?o.setAttribute(d,""):kl(o,d,p)}}}function Mi(o,l,d){switch(l){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Je("error",o),Je("load",o);var p=!1,y=!1,b;for(b in d)if(d.hasOwnProperty(b)){var k=d[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:xt(o,l,b,k,d,null)}}y&&xt(o,l,"srcSet",d.srcSet,d,null),p&&xt(o,l,"src",d.src,d,null);return;case"input":Je("invalid",o);var A=b=k=y=null,Y=null,ne=null;for(p in d)if(d.hasOwnProperty(p)){var ae=d[p];if(ae!=null)switch(p){case"name":y=ae;break;case"type":k=ae;break;case"checked":Y=ae;break;case"defaultChecked":ne=ae;break;case"value":b=ae;break;case"defaultValue":A=ae;break;case"children":case"dangerouslySetInnerHTML":if(ae!=null)throw Error(n(137,l));break;default:xt(o,l,p,ae,d,null)}}Dd(o,b,A,Y,ne,k,y,!1);return;case"select":Je("invalid",o),p=k=b=null;for(y in d)if(d.hasOwnProperty(y)&&(A=d[y],A!=null))switch(y){case"value":b=A;break;case"defaultValue":k=A;break;case"multiple":p=A;default:xt(o,l,y,A,d,null)}l=b,d=k,o.multiple=!!p,l!=null?ds(o,!!p,l,!1):d!=null&&ds(o,!!p,d,!0);return;case"textarea":Je("invalid",o),b=y=p=null;for(k in d)if(d.hasOwnProperty(k)&&(A=d[k],A!=null))switch(k){case"value":p=A;break;case"defaultValue":y=A;break;case"children":b=A;break;case"dangerouslySetInnerHTML":if(A!=null)throw Error(n(91));break;default:xt(o,l,k,A,d,null)}lx(o,p,y,b);return;case"option":for(Y in d)if(d.hasOwnProperty(Y)&&(p=d[Y],p!=null))switch(Y){case"selected":o.selected=p&&typeof p!="function"&&typeof p!="symbol";break;default:xt(o,l,Y,p,d,null)}return;case"dialog":Je("beforetoggle",o),Je("toggle",o),Je("cancel",o),Je("close",o);break;case"iframe":case"object":Je("load",o);break;case"video":case"audio":for(p=0;p<jh.length;p++)Je(jh[p],o);break;case"image":Je("error",o),Je("load",o);break;case"details":Je("toggle",o);break;case"embed":case"source":case"link":Je("error",o),Je("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(ne in d)if(d.hasOwnProperty(ne)&&(p=d[ne],p!=null))switch(ne){case"children":case"dangerouslySetInnerHTML":throw Error(n(137,l));default:xt(o,l,ne,p,d,null)}return;default:if(Im(l)){for(ae in d)d.hasOwnProperty(ae)&&(p=d[ae],p!==void 0&&E0(o,l,ae,p,d,void 0));return}}for(A in d)d.hasOwnProperty(A)&&(p=d[A],p!=null&&xt(o,l,A,p,d,null))}function g3(o,l,d,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,A=null,Y=null,ne=null,ae=null;for(oe in d){var ue=d[oe];if(d.hasOwnProperty(oe)&&ue!=null)switch(oe){case"checked":break;case"value":break;case"defaultValue":Y=ue;default:p.hasOwnProperty(oe)||xt(o,l,oe,null,p,ue)}}for(var se in p){var oe=p[se];if(ue=d[se],p.hasOwnProperty(se)&&(oe!=null||ue!=null))switch(se){case"type":b=oe;break;case"name":y=oe;break;case"checked":ne=oe;break;case"defaultChecked":ae=oe;break;case"value":k=oe;break;case"defaultValue":A=oe;break;case"children":case"dangerouslySetInnerHTML":if(oe!=null)throw Error(n(137,l));break;default:oe!==ue&&xt(o,l,se,oe,p,ue)}}Sa(o,k,A,Y,ne,ae,b,y);return;case"select":oe=k=A=se=null;for(b in d)if(Y=d[b],d.hasOwnProperty(b)&&Y!=null)switch(b){case"value":break;case"multiple":oe=Y;default:p.hasOwnProperty(b)||xt(o,l,b,null,p,Y)}for(y in p)if(b=p[y],Y=d[y],p.hasOwnProperty(y)&&(b!=null||Y!=null))switch(y){case"value":se=b;break;case"defaultValue":A=b;break;case"multiple":k=b;default:b!==Y&&xt(o,l,y,b,p,Y)}l=A,d=k,p=oe,se!=null?ds(o,!!d,se,!1):!!p!=!!d&&(l!=null?ds(o,!!d,l,!0):ds(o,!!d,d?[]:"",!1));return;case"textarea":oe=se=null;for(A in d)if(y=d[A],d.hasOwnProperty(A)&&y!=null&&!p.hasOwnProperty(A))switch(A){case"value":break;case"children":break;default:xt(o,l,A,null,p,y)}for(k in p)if(y=p[k],b=d[k],p.hasOwnProperty(k)&&(y!=null||b!=null))switch(k){case"value":se=y;break;case"defaultValue":oe=y;break;case"children":break;case"dangerouslySetInnerHTML":if(y!=null)throw Error(n(91));break;default:y!==b&&xt(o,l,k,y,p,b)}ax(o,se,oe);return;case"option":for(var Qe in d)if(se=d[Qe],d.hasOwnProperty(Qe)&&se!=null&&!p.hasOwnProperty(Qe))switch(Qe){case"selected":o.selected=!1;break;default:xt(o,l,Qe,null,p,se)}for(Y in p)if(se=p[Y],oe=d[Y],p.hasOwnProperty(Y)&&se!==oe&&(se!=null||oe!=null))switch(Y){case"selected":o.selected=se&&typeof se!="function"&&typeof se!="symbol";break;default:xt(o,l,Y,se,p,oe)}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 d)se=d[De],d.hasOwnProperty(De)&&se!=null&&!p.hasOwnProperty(De)&&xt(o,l,De,null,p,se);for(ne in p)if(se=p[ne],oe=d[ne],p.hasOwnProperty(ne)&&se!==oe&&(se!=null||oe!=null))switch(ne){case"children":case"dangerouslySetInnerHTML":if(se!=null)throw Error(n(137,l));break;default:xt(o,l,ne,se,p,oe)}return;default:if(Im(l)){for(var _t in d)se=d[_t],d.hasOwnProperty(_t)&&se!==void 0&&!p.hasOwnProperty(_t)&&E0(o,l,_t,void 0,p,se);for(ae in p)se=p[ae],oe=d[ae],!p.hasOwnProperty(ae)||se===oe||se===void 0&&oe===void 0||E0(o,l,ae,se,p,oe);return}}for(var K in d)se=d[K],d.hasOwnProperty(K)&&se!=null&&!p.hasOwnProperty(K)&&xt(o,l,K,null,p,se);for(ue in p)se=p[ue],oe=d[ue],!p.hasOwnProperty(ue)||se===oe||se==null&&oe==null||xt(o,l,ue,se,p,oe)}function uk(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,d=performance.getEntriesByType("resource"),p=0;p<d.length;p++){var y=d[p],b=y.transferSize,k=y.initiatorType,A=y.duration;if(b&&A&&uk(k)){for(k=0,A=y.responseEnd,p+=1;p<d.length;p++){var Y=d[p],ne=Y.startTime;if(ne>A)break;var ae=Y.transferSize,ue=Y.initiatorType;ae&&uk(ue)&&(Y=Y.responseEnd,k+=ae*(Y<A?1:(A-ne)/(Y-ne)))}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 R0=null,A0=null;function Mf(o){return o.nodeType===9?o:o.ownerDocument}function dk(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 fk(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 M0(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 z0=null;function O3(){var o=window.event;return o&&o.type==="popstate"?o===z0?!1:(z0=o,!0):(z0=null,!1)}var pk=typeof setTimeout=="function"?setTimeout:void 0,v3=typeof clearTimeout=="function"?clearTimeout:void 0,gk=typeof Promise=="function"?Promise:void 0,y3=typeof queueMicrotask=="function"?queueMicrotask:typeof gk<"u"?function(o){return gk.resolve(null).then(o).catch(S3)}:pk;function S3(o){setTimeout(function(){throw o})}function Po(o){return o==="head"}function mk(o,l){var d=l,p=0;do{var y=d.nextSibling;if(o.removeChild(d),y&&y.nodeType===8)if(d=y.data,d==="/$"||d==="/&"){if(p===0){o.removeChild(y),rc(l);return}p--}else if(d==="$"||d==="$?"||d==="$~"||d==="$!"||d==="&")p++;else if(d==="html")Bh(o.ownerDocument.documentElement);else if(d==="head"){d=o.ownerDocument.head,Bh(d);for(var b=d.firstChild;b;){var k=b.nextSibling,A=b.nodeName;b[va]||A==="SCRIPT"||A==="STYLE"||A==="LINK"&&b.rel.toLowerCase()==="stylesheet"||d.removeChild(b),b=k}}else d==="body"&&Bh(o.ownerDocument.body);d=y}while(d);rc(l)}function Ok(o,l){var d=o;o=0;do{var p=d.nextSibling;if(d.nodeType===1?l?(d._stashedDisplay=d.style.display,d.style.display="none"):(d.style.display=d._stashedDisplay||"",d.getAttribute("style")===""&&d.removeAttribute("style")):d.nodeType===3&&(l?(d._stashedText=d.nodeValue,d.nodeValue=""):d.nodeValue=d._stashedText||""),p&&p.nodeType===8)if(d=p.data,d==="/$"){if(o===0)break;o--}else d!=="$"&&d!=="$?"&&d!=="$~"&&d!=="$!"||o++;d=p}while(d)}function j0(o){var l=o.firstChild;for(l&&l.nodeType===10&&(l=l.nextSibling);l;){var d=l;switch(l=l.nextSibling,d.nodeName){case"HTML":case"HEAD":case"BODY":j0(d),th(d);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(d.rel.toLowerCase()==="stylesheet")continue}o.removeChild(d)}}function b3(o,l,d,p){for(;o.nodeType===1;){var y=d;if(o.nodeName.toLowerCase()!==l.toLowerCase()){if(!p&&(o.nodeName!=="INPUT"||o.type!=="hidden"))break}else if(p){if(!o[va])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=tr(o.nextSibling),o===null)break}return null}function x3(o,l,d){if(l==="")return null;for(;o.nodeType!==3;)if((o.nodeType!==1||o.nodeName!=="INPUT"||o.type!=="hidden")&&!d||(o=tr(o.nextSibling),o===null))return null;return o}function vk(o,l){for(;o.nodeType!==8;)if((o.nodeType!==1||o.nodeName!=="INPUT"||o.type!=="hidden")&&!l||(o=tr(o.nextSibling),o===null))return null;return o}function D0(o){return o.data==="$?"||o.data==="$~"}function B0(o){return o.data==="$!"||o.data==="$?"&&o.ownerDocument.readyState!=="loading"}function _3(o,l){var d=o.ownerDocument;if(o.data==="$~")o._reactRetry=l;else if(o.data!=="$?"||d.readyState!=="loading")l();else{var p=function(){l(),d.removeEventListener("DOMContentLoaded",p)};d.addEventListener("DOMContentLoaded",p),o._reactRetry=p}}function tr(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 L0=null;function yk(o){o=o.nextSibling;for(var l=0;o;){if(o.nodeType===8){var d=o.data;if(d==="/$"||d==="/&"){if(l===0)return tr(o.nextSibling);l--}else d!=="$"&&d!=="$!"&&d!=="$?"&&d!=="$~"&&d!=="&"||l++}o=o.nextSibling}return null}function Sk(o){o=o.previousSibling;for(var l=0;o;){if(o.nodeType===8){var d=o.data;if(d==="$"||d==="$!"||d==="$?"||d==="$~"||d==="&"){if(l===0)return o;l--}else d!=="/$"&&d!=="/&"||l++}o=o.previousSibling}return null}function bk(o,l,d){switch(l=Mf(d),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 Bh(o){for(var l=o.attributes;l.length;)o.removeAttributeNode(l[0]);th(o)}var ir=new Map,xk=new Set;function zf(o){return typeof o.getRootNode=="function"?o.getRootNode():o.nodeType===9?o:o.ownerDocument}var $s=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=$s.f(),l=Cf();return o||l}function k3(o){var l=ao(o);l!==null&&l.tag===5&&l.type==="form"?L_(l):$s.r(o)}var tc=typeof document>"u"?null:document;function _k(o,l,d){var p=tc;if(p&&typeof l=="string"&&l){var y=dn(l);y='link[rel="'+o+'"][href="'+y+'"]',typeof d=="string"&&(y+='[crossorigin="'+d+'"]'),xk.has(y)||(xk.add(y),o={rel:o,crossOrigin:d,href:l},p.querySelector(y)===null&&(l=p.createElement("link"),Mi(l,"link",o),ni(l),p.head.appendChild(l)))}}function C3(o){$s.D(o),_k("dns-prefetch",o,null)}function T3(o,l){$s.C(o,l),_k("preconnect",o,l)}function Q3(o,l,d){$s.L(o,l,d);var p=tc;if(p&&o&&l){var y='link[rel="preload"][as="'+dn(l)+'"]';l==="image"&&d&&d.imageSrcSet?(y+='[imagesrcset="'+dn(d.imageSrcSet)+'"]',typeof d.imageSizes=="string"&&(y+='[imagesizes="'+dn(d.imageSizes)+'"]')):y+='[href="'+dn(o)+'"]';var b=y;switch(l){case"style":b=ic(o);break;case"script":b=nc(o)}ir.has(b)||(o=g({rel:"preload",href:l==="image"&&d&&d.imageSrcSet?void 0:o,as:l},d),ir.set(b,o),p.querySelector(y)!==null||l==="style"&&p.querySelector(Lh(b))||l==="script"&&p.querySelector(Xh(b))||(l=p.createElement("link"),Mi(l,"link",o),ni(l),p.head.appendChild(l)))}}function $3(o,l){$s.m(o,l);var d=tc;if(d&&o){var p=l&&typeof l.as=="string"?l.as:"script",y='link[rel="modulepreload"][as="'+dn(p)+'"][href="'+dn(o)+'"]',b=y;switch(p){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":b=nc(o)}if(!ir.has(b)&&(o=g({rel:"modulepreload",href:o},l),ir.set(b,o),d.querySelector(y)===null)){switch(p){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(d.querySelector(Xh(b)))return}p=d.createElement("link"),Mi(p,"link",o),ni(p),d.head.appendChild(p)}}}function P3(o,l,d){$s.S(o,l,d);var p=tc;if(p&&o){var y=co(p).hoistableStyles,b=ic(o);l=l||"default";var k=y.get(b);if(!k){var A={loading:0,preload:null};if(k=p.querySelector(Lh(b)))A.loading=5;else{o=g({rel:"stylesheet",href:o,"data-precedence":l},d),(d=ir.get(b))&&X0(o,d);var Y=k=p.createElement("link");ni(Y),Mi(Y,"link",o),Y._p=new Promise(function(ne,ae){Y.onload=ne,Y.onerror=ae}),Y.addEventListener("load",function(){A.loading|=1}),Y.addEventListener("error",function(){A.loading|=2}),A.loading|=4,jf(k,l,p)}k={type:"stylesheet",instance:k,count:1,state:A},y.set(b,k)}}}function E3(o,l){$s.X(o,l);var d=tc;if(d&&o){var p=co(d).hoistableScripts,y=nc(o),b=p.get(y);b||(b=d.querySelector(Xh(y)),b||(o=g({src:o,async:!0},l),(l=ir.get(y))&&N0(o,l),b=d.createElement("script"),ni(b),Mi(b,"link",o),d.head.appendChild(b)),b={type:"script",instance:b,count:1,state:null},p.set(y,b))}}function R3(o,l){$s.M(o,l);var d=tc;if(d&&o){var p=co(d).hoistableScripts,y=nc(o),b=p.get(y);b||(b=d.querySelector(Xh(y)),b||(o=g({src:o,async:!0,type:"module"},l),(l=ir.get(y))&&N0(o,l),b=d.createElement("script"),ni(b),Mi(b,"link",o),d.head.appendChild(b)),b={type:"script",instance:b,count:1,state:null},p.set(y,b))}}function wk(o,l,d,p){var y=(y=fe.current)?zf(y):null;if(!y)throw Error(n(446));switch(o){case"meta":case"title":return null;case"style":return typeof d.precedence=="string"&&typeof d.href=="string"?(l=ic(d.href),d=co(y).hoistableStyles,p=d.get(l),p||(p={type:"style",instance:null,count:0,state:null},d.set(l,p)),p):{type:"void",instance:null,count:0,state:null};case"link":if(d.rel==="stylesheet"&&typeof d.href=="string"&&typeof d.precedence=="string"){o=ic(d.href);var b=co(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(Lh(o)))&&!b._p&&(k.instance=b,k.state.loading=5),ir.has(o)||(d={rel:"preload",as:"style",href:d.href,crossOrigin:d.crossOrigin,integrity:d.integrity,media:d.media,hrefLang:d.hrefLang,referrerPolicy:d.referrerPolicy},ir.set(o,d),b||A3(y,o,d,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=d.async,d=d.src,typeof d=="string"&&l&&typeof l!="function"&&typeof l!="symbol"?(l=nc(d),d=co(y).hoistableScripts,p=d.get(l),p||(p={type:"script",instance:null,count:0,state:null},d.set(l,p)),p):{type:"void",instance:null,count:0,state:null};default:throw Error(n(444,o))}}function ic(o){return'href="'+dn(o)+'"'}function Lh(o){return'link[rel="stylesheet"]['+o+"]"}function kk(o){return g({},o,{"data-precedence":o.precedence,precedence:null})}function A3(o,l,d,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}),Mi(l,"link",d),ni(l),o.head.appendChild(l))}function nc(o){return'[src="'+dn(o)+'"]'}function Xh(o){return"script[async]"+o}function Ck(o,l,d){if(l.count++,l.instance===null)switch(l.type){case"style":var p=o.querySelector('style[data-href~="'+dn(d.href)+'"]');if(p)return l.instance=p,ni(p),p;var y=g({},d,{"data-href":d.href,"data-precedence":d.precedence,href:null,precedence:null});return p=(o.ownerDocument||o).createElement("style"),ni(p),Mi(p,"style",y),jf(p,d.precedence,o),l.instance=p;case"stylesheet":y=ic(d.href);var b=o.querySelector(Lh(y));if(b)return l.state.loading|=4,l.instance=b,ni(b),b;p=kk(d),(y=ir.get(y))&&X0(p,y),b=(o.ownerDocument||o).createElement("link"),ni(b);var k=b;return k._p=new Promise(function(A,Y){k.onload=A,k.onerror=Y}),Mi(b,"link",p),l.state.loading|=4,jf(b,d.precedence,o),l.instance=b;case"script":return b=nc(d.src),(y=o.querySelector(Xh(b)))?(l.instance=y,ni(y),y):(p=d,(y=ir.get(b))&&(p=g({},d),N0(p,y)),o=o.ownerDocument||o,y=o.createElement("script"),ni(y),Mi(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,jf(p,d.precedence,o));return l.instance}function jf(o,l,d){for(var p=d.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 A=p[k];if(A.dataset.precedence===l)b=A;else if(b!==y)break}b?b.parentNode.insertBefore(o,b.nextSibling):(l=d.nodeType===9?d.head:d,l.insertBefore(o,l.firstChild))}function X0(o,l){o.crossOrigin==null&&(o.crossOrigin=l.crossOrigin),o.referrerPolicy==null&&(o.referrerPolicy=l.referrerPolicy),o.title==null&&(o.title=l.title)}function N0(o,l){o.crossOrigin==null&&(o.crossOrigin=l.crossOrigin),o.referrerPolicy==null&&(o.referrerPolicy=l.referrerPolicy),o.integrity==null&&(o.integrity=l.integrity)}var Df=null;function Tk(o,l,d){if(Df===null){var p=new Map,y=Df=new Map;y.set(d,p)}else y=Df,p=y.get(d),p||(p=new Map,y.set(d,p));if(p.has(o))return p;for(p.set(o,null),d=d.getElementsByTagName(o),y=0;y<d.length;y++){var b=d[y];if(!(b[va]||b[St]||o==="link"&&b.getAttribute("rel")==="stylesheet")&&b.namespaceURI!=="http://www.w3.org/2000/svg"){var k=b.getAttribute(l)||"";k=o+k;var A=p.get(k);A?A.push(b):p.set(k,[b])}}return p}function Qk(o,l,d){o=o.ownerDocument||o,o.head.insertBefore(d,l==="title"?o.querySelector("head > title"):null)}function M3(o,l,d){if(d===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 $k(o){return!(o.type==="stylesheet"&&(o.state.loading&3)===0)}function z3(o,l,d,p){if(d.type==="stylesheet"&&(typeof p.media!="string"||matchMedia(p.media).matches!==!1)&&(d.state.loading&4)===0){if(d.instance===null){var y=ic(p.href),b=l.querySelector(Lh(y));if(b){l=b._p,l!==null&&typeof l=="object"&&typeof l.then=="function"&&(o.count++,o=Bf.bind(o),l.then(o,o)),d.state.loading|=4,d.instance=b,ni(b);return}b=l.ownerDocument||l,p=kk(p),(y=ir.get(y))&&X0(p,y),b=b.createElement("link"),ni(b);var k=b;k._p=new Promise(function(A,Y){k.onload=A,k.onerror=Y}),Mi(b,"link",p),d.instance=b}o.stylesheets===null&&(o.stylesheets=new Map),o.stylesheets.set(d,l),(l=d.state.preload)&&(d.state.loading&3)===0&&(o.count++,d=Bf.bind(o),l.addEventListener("load",d),l.addEventListener("error",d))}}var Z0=0;function j3(o,l){return o.stylesheets&&o.count===0&&Xf(o,o.stylesheets),0<o.count||0<o.imgCount?function(d){var p=setTimeout(function(){if(o.stylesheets&&Xf(o,o.stylesheets),o.unsuspend){var b=o.unsuspend;o.unsuspend=null,b()}},6e4+l);0<o.imgBytes&&Z0===0&&(Z0=62500*m3());var y=setTimeout(function(){if(o.waitingForImages=!1,o.count===0&&(o.stylesheets&&Xf(o,o.stylesheets),o.unsuspend)){var b=o.unsuspend;o.unsuspend=null,b()}},(o.imgBytes>Z0?50:800)+l);return o.unsuspend=d,function(){o.unsuspend=null,clearTimeout(p),clearTimeout(y)}}:null}function Bf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var o=this.unsuspend;this.unsuspend=null,o()}}}var Lf=null;function Xf(o,l){o.stylesheets=null,o.unsuspend!==null&&(o.count++,Lf=new Map,l.forEach(D3,o),Lf=null,Bf.call(o))}function D3(o,l){if(!(l.state.loading&4)){var d=Lf.get(o);if(d)var p=d.get(null);else{d=new Map,Lf.set(o,d);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")&&(d.set(k.dataset.precedence,k),p=k)}p&&d.set(null,p)}y=l.instance,k=y.getAttribute("data-precedence"),b=d.get(k)||p,b===p&&d.set(null,y),d.set(k,y),this.count++,p=Bf.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 Nh={$$typeof:C,Provider:null,Consumer:null,_currentValue:z,_currentValue2:z,_threadCount:0};function B3(o,l,d,p,y,b,k,A,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=ga(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ga(0),this.hiddenUpdates=ga(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 Pk(o,l,d,p,y,b,k,A,Y,ne,ae,ue){return o=new B3(o,l,d,k,Y,ne,ae,ue,A),l=1,b===!0&&(l|=24),b=Qn(3,null,null,l),o.current=b,b.stateNode=o,l=bO(),l.refCount++,o.pooledCache=l,l.refCount++,b.memoizedState={element:p,isDehydrated:d,cache:l},kO(b),o}function Ek(o){return o?(o=Ml,o):Ml}function Rk(o,l,d,p,y,b){y=Ek(y),p.context===null?p.context=y:p.pendingContext=y,p=yo(l),p.payload={element:d},b=b===void 0?null:b,b!==null&&(p.callback=b),d=So(o,p,l),d!==null&&(vn(d,o,l),yh(d,o,l))}function Ak(o,l){if(o=o.memoizedState,o!==null&&o.dehydrated!==null){var d=o.retryLane;o.retryLane=d!==0&&d<l?d:l}}function W0(o,l){Ak(o,l),(o=o.alternate)&&Ak(o,l)}function Mk(o){if(o.tag===13||o.tag===31){var l=wa(o,67108864);l!==null&&vn(l,o,67108864),W0(o,67108864)}}function zk(o){if(o.tag===13||o.tag===31){var l=An();l=Oa(l);var d=wa(o,l);d!==null&&vn(d,o,l),W0(o,l)}}var Nf=!0;function L3(o,l,d,p){var y=$.T;$.T=null;var b=Z.p;try{Z.p=2,q0(o,l,d,p)}finally{Z.p=b,$.T=y}}function X3(o,l,d,p){var y=$.T;$.T=null;var b=Z.p;try{Z.p=8,q0(o,l,d,p)}finally{Z.p=b,$.T=y}}function q0(o,l,d,p){if(Nf){var y=I0(p);if(y===null)P0(o,l,p,Zf,d),Dk(o,p);else if(Z3(y,o,l,d,p))p.stopPropagation();else if(Dk(o,p),l&4&&-1<N3.indexOf(o)){for(;y!==null;){var b=ao(y);if(b!==null)switch(b.tag){case 3:if(b=b.stateNode,b.current.memoizedState.isDehydrated){var k=gr(b.pendingLanes);if(k!==0){var A=b;for(A.pendingLanes|=2,A.entangledLanes|=2;k;){var Y=1<<31-Wi(k);A.entanglements[1]|=Y,k&=~Y}Br(b),(ft&6)===0&&(wf=ii()+500,zh(0))}}break;case 31:case 13:A=wa(b,2),A!==null&&vn(A,b,2),Cf(),W0(b,2)}if(b=I0(p),b===null&&P0(o,l,p,Zf,d),b===y)break;y=b}y!==null&&p.stopPropagation()}else P0(o,l,p,null,d)}}function I0(o){return o=Ym(o),V0(o)}var Zf=null;function V0(o){if(Zf=null,o=oo(o),o!==null){var l=s(o);if(l===null)o=null;else{var d=l.tag;if(d===13){if(o=a(l),o!==null)return o;o=null}else if(d===31){if(o=c(l),o!==null)return o;o=null}else if(d===3){if(l.stateNode.current.memoizedState.isDehydrated)return l.tag===3?l.stateNode.containerInfo:null;o=null}else l!==o&&(o=null)}}return Zf=o,null}function jk(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(Js()){case Hn:return 2;case Rr:return 8;case ls:case eo:return 32;case hn:return 268435456;default:return 32}default:return 32}}var Y0=!1,Eo=null,Ro=null,Ao=null,Zh=new Map,Wh=new Map,Mo=[],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 Dk(o,l){switch(o){case"focusin":case"focusout":Eo=null;break;case"dragenter":case"dragleave":Ro=null;break;case"mouseover":case"mouseout":Ao=null;break;case"pointerover":case"pointerout":Zh.delete(l.pointerId);break;case"gotpointercapture":case"lostpointercapture":Wh.delete(l.pointerId)}}function qh(o,l,d,p,y,b){return o===null||o.nativeEvent!==b?(o={blockedOn:l,domEventName:d,eventSystemFlags:p,nativeEvent:b,targetContainers:[y]},l!==null&&(l=ao(l),l!==null&&Mk(l)),o):(o.eventSystemFlags|=p,l=o.targetContainers,y!==null&&l.indexOf(y)===-1&&l.push(y),o)}function Z3(o,l,d,p,y){switch(l){case"focusin":return Eo=qh(Eo,o,l,d,p,y),!0;case"dragenter":return Ro=qh(Ro,o,l,d,p,y),!0;case"mouseover":return Ao=qh(Ao,o,l,d,p,y),!0;case"pointerover":var b=y.pointerId;return Zh.set(b,qh(Zh.get(b)||null,o,l,d,p,y)),!0;case"gotpointercapture":return b=y.pointerId,Wh.set(b,qh(Wh.get(b)||null,o,l,d,p,y)),!0}return!1}function Bk(o){var l=oo(o.target);if(l!==null){var d=s(l);if(d!==null){if(l=d.tag,l===13){if(l=a(d),l!==null){o.blockedOn=l,lt(o.priority,function(){zk(d)});return}}else if(l===31){if(l=c(d),l!==null){o.blockedOn=l,lt(o.priority,function(){zk(d)});return}}else if(l===3&&d.stateNode.current.memoizedState.isDehydrated){o.blockedOn=d.tag===3?d.stateNode.containerInfo:null;return}}}o.blockedOn=null}function Wf(o){if(o.blockedOn!==null)return!1;for(var l=o.targetContainers;0<l.length;){var d=I0(o.nativeEvent);if(d===null){d=o.nativeEvent;var p=new d.constructor(d.type,d);Vm=p,d.target.dispatchEvent(p),Vm=null}else return l=ao(d),l!==null&&Mk(l),o.blockedOn=d,!1;l.shift()}return!0}function Lk(o,l,d){Wf(o)&&d.delete(l)}function W3(){Y0=!1,Eo!==null&&Wf(Eo)&&(Eo=null),Ro!==null&&Wf(Ro)&&(Ro=null),Ao!==null&&Wf(Ao)&&(Ao=null),Zh.forEach(Lk),Wh.forEach(Lk)}function qf(o,l){o.blockedOn===l&&(o.blockedOn=null,Y0||(Y0=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,W3)))}var If=null;function Xk(o){If!==o&&(If=o,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){If===o&&(If=null);for(var l=0;l<o.length;l+=3){var d=o[l],p=o[l+1],y=o[l+2];if(typeof p!="function"){if(V0(p||d)===null)continue;break}var b=ao(d);b!==null&&(o.splice(l,3),l-=3,IO(b,{pending:!0,data:y,method:d.method,action:p},p,y))}}))}function rc(o){function l(Y){return qf(Y,o)}Eo!==null&&qf(Eo,o),Ro!==null&&qf(Ro,o),Ao!==null&&qf(Ao,o),Zh.forEach(l),Wh.forEach(l);for(var d=0;d<Mo.length;d++){var p=Mo[d];p.blockedOn===o&&(p.blockedOn=null)}for(;0<Mo.length&&(d=Mo[0],d.blockedOn===null);)Bk(d),d.blockedOn===null&&Mo.shift();if(d=(o.ownerDocument||o).$$reactFormReplay,d!=null)for(p=0;p<d.length;p+=3){var y=d[p],b=d[p+1],k=y[Pt]||null;if(typeof b=="function")k||Xk(d);else if(k){var A=null;if(b&&b.hasAttribute("formAction")){if(y=b,k=b[Pt]||null)A=k.formAction;else if(V0(y)!==null)continue}else A=k.action;typeof A=="function"?d[p+1]=A:(d.splice(p,3),p-=3),Xk(d)}}}function Nk(){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(d,20)}function d(){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(d,100),function(){p=!0,navigation.removeEventListener("navigate",o),navigation.removeEventListener("navigatesuccess",l),navigation.removeEventListener("navigateerror",l),y!==null&&(y(),y=null)}}}function H0(o){this._internalRoot=o}Vf.prototype.render=H0.prototype.render=function(o){var l=this._internalRoot;if(l===null)throw Error(n(409));var d=l.current,p=An();Rk(d,p,o,l,null,null)},Vf.prototype.unmount=H0.prototype.unmount=function(){var o=this._internalRoot;if(o!==null){this._internalRoot=null;var l=o.containerInfo;Rk(o.current,2,null,o,null,null),Cf(),l[qi]=null}};function Vf(o){this._internalRoot=o}Vf.prototype.unstable_scheduleHydration=function(o){if(o){var l=Ne();o={blockedOn:null,target:o,priority:l};for(var d=0;d<Mo.length&&l!==0&&l<Mo[d].priority;d++);Mo.splice(d,0,o),d===0&&Bk(o)}};var Zk=e.version;if(Zk!=="19.2.4")throw Error(n(527,Zk,"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=u(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 Yf=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Yf.isDisabled&&Yf.supportsFiber)try{Ar=Yf.inject(q3),qt=Yf}catch{}}return Vh.createRoot=function(o,l){if(!r(o))throw Error(n(299));var d=!1,p="",y=U_,b=G_,k=F_;return l!=null&&(l.unstable_strictMode===!0&&(d=!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=Pk(o,1,!1,null,null,d,p,null,y,b,k,Nk),o[qi]=l.current,$0(o),new H0(l)},Vh.hydrateRoot=function(o,l,d){if(!r(o))throw Error(n(299));var p=!1,y="",b=U_,k=G_,A=F_,Y=null;return d!=null&&(d.unstable_strictMode===!0&&(p=!0),d.identifierPrefix!==void 0&&(y=d.identifierPrefix),d.onUncaughtError!==void 0&&(b=d.onUncaughtError),d.onCaughtError!==void 0&&(k=d.onCaughtError),d.onRecoverableError!==void 0&&(A=d.onRecoverableError),d.formState!==void 0&&(Y=d.formState)),l=Pk(o,1,!0,l,d??null,p,y,Y,b,k,A,Nk),l.context=Ek(null),d=l.current,p=An(),p=Oa(p),y=yo(p),y.callback=null,So(d,y,p),d=p,l.current.lanes=d,Mr(l,d),Br(l),o[qi]=l.current,$0(o),new Vf(l)},Vh.version="19.2.4",Vh}var Kk;function J3(){if(Kk)return F0.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(),F0.exports=K3(),F0.exports}var eD=J3();const Jk=t=>{let e;const i=new Set,n=(u,f)=>{const g=typeof u=="function"?u(e):u;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:u=>(i.add(u),()=>i.delete(u))},h=e=t(n,r,c);return c},tD=(t=>t?Jk(t):Jk),iD=t=>t;function nD(t,e=iD){const i=Wn.useSyncExternalStore(t.subscribe,Wn.useCallback(()=>e(t.getState()),[t,e]),Wn.useCallback(()=>e(t.getInitialState()),[t,e]));return Wn.useDebugValue(i),i}const eC=t=>{const e=tD(t),i=n=>nD(e,n);return Object.assign(i,e),i},rD=(t=>t?eC(t):eC),sD=`ws://${window.location.hostname}:${window.location.port||31415}`,en="",$e=rD((t,e)=>({agents:[],connected:!1,ws:null,daemonHost:null,tunneled:!1,activeTab:"agents",detailPanel:null,activityLog:(()=>{try{return JSON.parse(localStorage.getItem("groove:activityLog")||"{}")}catch{return{}}})(),statusMessage:null,commandHistory:[],chatHistory:(()=>{try{return JSON.parse(localStorage.getItem("groove:chatHistory")||"{}")}catch{return{}}})(),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(`${en}/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],u=h[h.length-1];(!u||c.tokensUsed!==u.v||a-u.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});try{localStorage.setItem("groove:activityLog",JSON.stringify(c))}catch{}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),setTimeout(()=>{const h=e().agents,u=h.filter(m=>m.status==="running"||m.status==="starting"),f=h.filter(m=>m.status==="completed"||m.status==="crashed"),g=h.some(m=>m.role==="fullstack"&&(m.status==="running"||m.status==="starting"));u.length===0&&f.length>=2&&!g&&e().showStatus("All agents finished — no QC agent. Consider spawning a fullstack to audit and integrate.")},2e3);break}case"phase2:spawned":{e().showStatus(`QC agent ${r.name} auto-spawned — auditing phase 1 work`);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},u=c[r.oldAgentId]||[],f=h[r.oldAgentId]||[];return u.length>0&&(c[r.newAgentId]=[...u]),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(`${en}/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(`${en}/api/agents/${i}?purge=${n}`,{method:"DELETE"})},async rotateAgent(i){const n=await fetch(`${en}/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(`${en}/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};c[i]||(c[i]=[]),c[i]=[...c[i].slice(-100),{from:n,text:r,timestamp:Date.now(),isQuery:s}];try{localStorage.setItem("groove:chatHistory",JSON.stringify(c))}catch{}return{chatHistory:c}})},async instructAgent(i,n){const r=e().agents.find(g=>g.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(`${en}/api/agents/${i}/instruct`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:n})});if(!a.ok){const g=await a.json().catch(()=>({}));throw e().addChatMessage(i,"system",`failed: ${g.error||"unknown error"}`),new Error(g.error||"Instruction failed")}const c=await a.json(),h=e().chatHistory[i]||[];h.length>0&&t(g=>{const m={...g.chatHistory};m[c.id]=[...h];try{localStorage.setItem("groove:chatHistory",JSON.stringify(m))}catch{}return{chatHistory:m}});const u=e().activityLog[i]||[];u.length>0&&t(g=>{const m={...g.activityLog};m[c.id]=[...u];try{localStorage.setItem("groove:activityLog",JSON.stringify(m))}catch{}return{activityLog:m}});const f=e().tokenTimeline[i]||[];return f.length>0&&t(g=>{const m={...g.tokenTimeline};return m[c.id]=[...f],{tokenTimeline:m}}),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(`${en}/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(`${en}/api/files/read?path=${encodeURIComponent(i)}`);if(!a.ok){const u=await a.json().catch(()=>({}));e().showStatus(u.error||"Failed to read file");return}const c=await a.json();if(c.binary){e().showStatus("Binary file — cannot open");return}t(u=>({editorFiles:{...u.editorFiles,[i]:{content:c.content,originalContent:c.content,language:c.language,loadedAt:Date.now()}},editorActiveFile:i,editorOpenTabs:u.editorOpenTabs.includes(i)?u.editorOpenTabs:[...u.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(u=>u!==i),a={...r.editorFiles};delete a[i];const c={...r.editorChangedFiles};delete c[i];let h=r.editorActiveFile;if(h===i){const u=r.editorOpenTabs.indexOf(i);h=s[Math.min(u,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(`${en}/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(`${en}/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(`${en}/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(`${en}/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(`${en}/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(`${en}/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(`${en}/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),u={...c.editorFiles};u[i]&&(u[n]=u[i],delete u[i]);const f=c.editorActiveFile===i?n:c.editorActiveFile;return{editorOpenTabs:h,editorFiles:u,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 di(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=di(t[i]))!==""&&(e+=(e&&" ")+n);else for(let i in t)t[i]&&(e+=(e&&" ")+i);return e}var oD={value:()=>{}};function lm(){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 Lp(i)}function Lp(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}})}Lp.prototype=lm.prototype={constructor:Lp,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]=tC(i[r],t.name,e);else if(e==null)for(r in i)i[r]=tC(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 Lp(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 tC(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 xy="http://www.w3.org/1999/xhtml";const iC={svg:"http://www.w3.org/2000/svg",xhtml:xy,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function cm(t){var e=t+="",i=e.indexOf(":");return i>=0&&(e=t.slice(0,i))!=="xmlns"&&(t=t.slice(i+1)),iC.hasOwnProperty(e)?{space:iC[e],local:t}:t}function cD(t){return function(){var e=this.ownerDocument,i=this.namespaceURI;return i===xy&&e.documentElement.namespaceURI===xy?e.createElement(t):e.createElementNS(i,t)}}function hD(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function H$(t){var e=cm(t);return(e.local?hD:cD)(e)}function uD(){}function x1(t){return t==null?uD:function(){return this.querySelector(t)}}function dD(t){typeof t!="function"&&(t=x1(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,u,f=0;f<a;++f)(h=s[f])&&(u=t.call(h,h.__data__,f,s))&&("__data__"in h&&(u.__data__=h.__data__),c[f]=u);return new Vn(n,this._parents)}function fD(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function pD(){return[]}function U$(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=U$(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,u=0;u<c;++u)(h=a[u])&&(n.push(t.call(h,h.__data__,u,a)),r.push(h));return new Vn(n,r)}function G$(t){return function(){return this.matches(t)}}function F$(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:F$(t)))}var bD=Array.prototype.filter;function xD(){return Array.from(this.children)}function _D(t){return function(){return bD.call(this.children,t)}}function wD(t){return this.selectAll(t==null?xD:_D(typeof t=="function"?t:F$(t)))}function kD(t){typeof t!="function"&&(t=G$(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,u=0;u<a;++u)(h=s[u])&&t.call(h,h.__data__,u,s)&&c.push(h);return new Vn(n,this._parents)}function K$(t){return new Array(t.length)}function CD(){return new Vn(this._enter||this._groups.map(K$),this._parents)}function ug(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}ug.prototype={constructor:ug,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,u=s.length;a<u;++a)(c=e[a])?(c.__data__=s[a],n[a]=c):i[a]=new ug(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,u=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)+"",u.has(v)?r[c]=h:u.set(v,h));for(c=0;c<g;++c)v=a.call(t,s[c],c,s)+"",(h=u.get(v))?(n[c]=h,h.__data__=s[c],u.delete(v)):i[c]=new ug(t,s[c]);for(c=0;c<f;++c)(h=e[c])&&u.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),u=0;u<s;++u){var f=n[u],g=r[u],m=g.length,v=RD(t.call(f,f&&f.__data__,u,n)),S=v.length,x=c[u]=new Array(S),w=a[u]=new Array(S),_=h[u]=new Array(m);i(f,g,x,w,_,v,e);for(var T=0,C=0,Q,M;T<S;++T)if(Q=x[T]){for(T>=C&&(C=T+1);!(M=w[C])&&++C<S;);Q._next=M||null}}return a=new Vn(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 Vn(this._exit||this._groups.map(K$),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 u=i[h],f=n[h],g=u.length,m=c[h]=new Array(g),v,S=0;S<g;++S)(v=u[S]||f[S])&&(m[S]=v);for(;h<r;++h)c[h]=i[h];return new Vn(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),u,f=0;f<c;++f)(u=a[f])&&(h[f]=u);h.sort(e)}return new Vn(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=cm(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 J$(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??"")):Pc(this.node(),t)}function Pc(t,e){return t.style.getPropertyValue(e)||J$(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 eP(t){return t.trim().split(/^|\s+/)}function _1(t){return t.classList||new tP(t)}function tP(t){this._node=t,this._names=eP(t.getAttribute("class")||"")}tP.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 iP(t,e){for(var i=_1(t),n=-1,r=e.length;++n<r;)i.add(e[n])}function nP(t,e){for(var i=_1(t),n=-1,r=e.length;++n<r;)i.remove(e[n])}function oB(t){return function(){iP(this,t)}}function aB(t){return function(){nP(this,t)}}function lB(t,e){return function(){(e.apply(this,arguments)?iP:nP)(this,t)}}function cB(t,e){var i=eP(t+"");if(arguments.length<2){for(var n=_1(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 xB(t){var e=typeof t=="function"?t:H$(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function _B(){return null}function wB(t,e){var i=typeof t=="function"?t:H$(t),n=e==null?_B:typeof e=="function"?e:x1(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,u=c.length,f;h<u;++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 rP(t,e,i){var n=J$(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 rP(this,t,e)}}function DB(t,e){return function(){return rP(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 sP=[null];function Vn(t,e){this._groups=t,this._parents=e}function hd(){return new Vn([[document.documentElement]],sP)}function XB(){return this}Vn.prototype=hd.prototype={constructor:Vn,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:xB,insert:wB,remove:CB,clone:$B,datum:PB,on:zB,dispatch:BB,[Symbol.iterator]:LB};function qn(t){return typeof t=="string"?new Vn([[document.querySelector(t)]],[document.documentElement]):new Vn([[t]],sP)}function NB(t){let e;for(;e=t.sourceEvent;)t=e;return t}function xr(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},Au={capture:!0,passive:!1};function tv(t){t.stopImmediatePropagation()}function yc(t){t.preventDefault(),t.stopImmediatePropagation()}function oP(t){var e=t.document.documentElement,i=qn(t).on("dragstart.drag",yc,Au);"onselectstart"in e?i.on("selectstart.drag",yc,Au):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function aP(t,e){var i=t.document.documentElement,n=qn(t).on("dragstart.drag",null);e&&(n.on("click.drag",yc,Au),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 Hf=t=>()=>t;function _y(t,{sourceEvent:e,subject:i,target:n,identifier:r,active:s,x:a,y:c,dx:h,dy:u,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:u,enumerable:!0,configurable:!0},_:{value:f}})}_y.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 lP(){var t=WB,e=qB,i=IB,n=VB,r={},s=lm("start","drag","end"),a=0,c,h,u,f,g=0;function m(Q){Q.on("mousedown.drag",v).filter(n).on("touchstart.drag",w).on("touchmove.drag",_,ZB).on("touchend.drag touchcancel.drag",T).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function v(Q,M){if(!(f||!t.call(this,Q,M))){var E=C(this,e.call(this,Q,M),Q,M,"mouse");E&&(qn(Q.view).on("mousemove.drag",S,Au).on("mouseup.drag",x,Au),oP(Q.view),tv(Q),u=!1,c=Q.clientX,h=Q.clientY,E("start",Q))}}function S(Q){if(yc(Q),!u){var M=Q.clientX-c,E=Q.clientY-h;u=M*M+E*E>g}r.mouse("drag",Q)}function x(Q){qn(Q.view).on("mousemove.drag mouseup.drag",null),aP(Q.view,u),yc(Q),r.mouse("end",Q)}function w(Q,M){if(t.call(this,Q,M)){var E=Q.changedTouches,L=e.call(this,Q,M),V=E.length,H,U;for(H=0;H<V;++H)(U=C(this,L,Q,M,E[H].identifier,E[H]))&&(tv(Q),U("start",Q,E[H]))}}function _(Q){var M=Q.changedTouches,E=M.length,L,V;for(L=0;L<E;++L)(V=r[M[L].identifier])&&(yc(Q),V("drag",Q,M[L]))}function T(Q){var M=Q.changedTouches,E=M.length,L,V;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),L=0;L<E;++L)(V=r[M[L].identifier])&&(tv(Q),V("end",Q,M[L]))}function C(Q,M,E,L,V,H){var U=s.copy(),X=xr(H||E,M),R,j,P;if((P=i.call(Q,new _y("beforestart",{sourceEvent:E,target:m,identifier:V,active:a,x:X[0],y:X[1],dx:0,dy:0,dispatch:U}),L))!=null)return R=P.x-X[0]||0,j=P.y-X[1]||0,function N($,Z,z){var q=X,F;switch($){case"start":r[V]=N,F=a++;break;case"end":delete r[V],--a;case"drag":X=xr(z||Z,M),F=a;break}U.call($,Q,new _y($,{sourceEvent:Z,subject:P,target:m,identifier:V,active:F,x:X[0]+R,y:X[1]+j,dx:X[0]-q[0],dy:X[1]-q[1],dispatch:U}),L)}}return m.filter=function(Q){return arguments.length?(t=typeof Q=="function"?Q:Hf(!!Q),m):t},m.container=function(Q){return arguments.length?(e=typeof Q=="function"?Q:Hf(Q),m):e},m.subject=function(Q){return arguments.length?(i=typeof Q=="function"?Q:Hf(Q),m):i},m.touchable=function(Q){return arguments.length?(n=typeof Q=="function"?Q:Hf(!!Q),m):n},m.on=function(){var Q=s.on.apply(s,arguments);return Q===s?m:Q},m.clickDistance=function(Q){return arguments.length?(g=(Q=+Q)*Q,m):Math.sqrt(g)},m}function w1(t,e,i){t.prototype=e.prototype=i,i.constructor=t}function cP(t,e){var i=Object.create(t.prototype);for(var n in e)i[n]=e[n];return i}function ud(){}var Mu=.7,dg=1/Mu,Sc="\\s*([+-]?\\d+)\\s*",zu="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",es="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",YB=/^#([0-9a-f]{3,8})$/,HB=new RegExp(`^rgb\\(${Sc},${Sc},${Sc}\\)$`),UB=new RegExp(`^rgb\\(${es},${es},${es}\\)$`),GB=new RegExp(`^rgba\\(${Sc},${Sc},${Sc},${zu}\\)$`),FB=new RegExp(`^rgba\\(${es},${es},${es},${zu}\\)$`),KB=new RegExp(`^hsl\\(${zu},${es},${es}\\)$`),JB=new RegExp(`^hsla\\(${zu},${es},${es},${zu}\\)$`),nC={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};w1(ud,nl,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:rC,formatHex:rC,formatHex8:e4,formatHsl:t4,formatRgb:sC,toString:sC});function rC(){return this.rgb().formatHex()}function e4(){return this.rgb().formatHex8()}function t4(){return hP(this).formatHsl()}function sC(){return this.rgb().formatRgb()}function nl(t){var e,i;return t=(t+"").trim().toLowerCase(),(e=YB.exec(t))?(i=e[1].length,e=parseInt(e[1],16),i===6?oC(e):i===3?new _n(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):i===8?Uf(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):i===4?Uf(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 _n(e[1],e[2],e[3],1):(e=UB.exec(t))?new _n(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=GB.exec(t))?Uf(e[1],e[2],e[3],e[4]):(e=FB.exec(t))?Uf(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=KB.exec(t))?cC(e[1],e[2]/100,e[3]/100,1):(e=JB.exec(t))?cC(e[1],e[2]/100,e[3]/100,e[4]):nC.hasOwnProperty(t)?oC(nC[t]):t==="transparent"?new _n(NaN,NaN,NaN,0):null}function oC(t){return new _n(t>>16&255,t>>8&255,t&255,1)}function Uf(t,e,i,n){return n<=0&&(t=e=i=NaN),new _n(t,e,i,n)}function i4(t){return t instanceof ud||(t=nl(t)),t?(t=t.rgb(),new _n(t.r,t.g,t.b,t.opacity)):new _n}function wy(t,e,i,n){return arguments.length===1?i4(t):new _n(t,e,i,n??1)}function _n(t,e,i,n){this.r=+t,this.g=+e,this.b=+i,this.opacity=+n}w1(_n,wy,cP(ud,{brighter(t){return t=t==null?dg:Math.pow(dg,t),new _n(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Mu:Math.pow(Mu,t),new _n(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new _n(Ka(this.r),Ka(this.g),Ka(this.b),fg(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:aC,formatHex:aC,formatHex8:n4,formatRgb:lC,toString:lC}));function aC(){return`#${Ya(this.r)}${Ya(this.g)}${Ya(this.b)}`}function n4(){return`#${Ya(this.r)}${Ya(this.g)}${Ya(this.b)}${Ya((isNaN(this.opacity)?1:this.opacity)*255)}`}function lC(){const t=fg(this.opacity);return`${t===1?"rgb(":"rgba("}${Ka(this.r)}, ${Ka(this.g)}, ${Ka(this.b)}${t===1?")":`, ${t})`}`}function fg(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Ka(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Ya(t){return t=Ka(t),(t<16?"0":"")+t.toString(16)}function cC(t,e,i,n){return n<=0?t=e=i=NaN:i<=0||i>=1?t=e=NaN:e<=0&&(t=NaN),new _r(t,e,i,n)}function hP(t){if(t instanceof _r)return new _r(t.h,t.s,t.l,t.opacity);if(t instanceof ud||(t=nl(t)),!t)return new _r;if(t instanceof _r)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 _r(a,c,h,t.opacity)}function r4(t,e,i,n){return arguments.length===1?hP(t):new _r(t,e,i,n??1)}function _r(t,e,i,n){this.h=+t,this.s=+e,this.l=+i,this.opacity=+n}w1(_r,r4,cP(ud,{brighter(t){return t=t==null?dg:Math.pow(dg,t),new _r(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Mu:Math.pow(Mu,t),new _r(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 _n(iv(t>=240?t-240:t+120,r,n),iv(t,r,n),iv(t<120?t+240:t-120,r,n),this.opacity)},clamp(){return new _r(hC(this.h),Gf(this.s),Gf(this.l),fg(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=fg(this.opacity);return`${t===1?"hsl(":"hsla("}${hC(this.h)}, ${Gf(this.s)*100}%, ${Gf(this.l)*100}%${t===1?")":`, ${t})`}`}}));function hC(t){return t=(t||0)%360,t<0?t+360:t}function Gf(t){return Math.max(0,Math.min(1,t||0))}function iv(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 k1=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?uP:function(e,i){return i-e?o4(e,i,t):k1(isNaN(e)?i:e)}}function uP(t,e){var i=e-t;return i?s4(t,i):k1(isNaN(t)?e:t)}const pg=(function t(e){var i=a4(e);function n(r,s){var a=i((r=wy(r)).r,(s=wy(s)).r),c=i(r.g,s.g),h=i(r.b,s.b),u=uP(r.opacity,s.opacity);return function(f){return r.r=a(f),r.g=c(f),r.b=h(f),r.opacity=u(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 Vr(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 ky=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,nv=new RegExp(ky.source,"g");function f4(t){return function(){return t}}function p4(t){return function(e){return t(e)+""}}function dP(t,e){var i=ky.lastIndex=nv.lastIndex=0,n,r,s,a=-1,c=[],h=[];for(t=t+"",e=e+"";(n=ky.exec(t))&&(r=nv.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:Vr(n,r)})),i=nv.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(u){for(var f=0,g;f<e;++f)c[(g=h[f]).i]=g.x(u);return c.join("")})}function xu(t,e){var i=typeof e,n;return e==null||i==="boolean"?k1(e):(i==="number"?Vr:i==="string"?(n=nl(e))?(e=n,pg):dP:e instanceof nl?pg:e instanceof Date?u4:c4(e)?l4:Array.isArray(e)?h4:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?d4:Vr)(t,e)}var uC=180/Math.PI,Cy={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function fP(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)*uC,skewX:Math.atan(h)*uC,scaleX:a,scaleY:c}}var Ff;function g4(t){const e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?Cy:fP(e.a,e.b,e.c,e.d,e.e,e.f)}function m4(t){return t==null||(Ff||(Ff=document.createElementNS("http://www.w3.org/2000/svg","g")),Ff.setAttribute("transform",t),!(t=Ff.transform.baseVal.consolidate()))?Cy:(t=t.matrix,fP(t.a,t.b,t.c,t.d,t.e,t.f))}function pP(t,e,i,n){function r(u){return u.length?u.pop()+" ":""}function s(u,f,g,m,v,S){if(u!==g||f!==m){var x=v.push("translate(",null,e,null,i);S.push({i:x-4,x:Vr(u,g)},{i:x-2,x:Vr(f,m)})}else(g||m)&&v.push("translate("+g+e+m+i)}function a(u,f,g,m){u!==f?(u-f>180?f+=360:f-u>180&&(u+=360),m.push({i:g.push(r(g)+"rotate(",null,n)-2,x:Vr(u,f)})):f&&g.push(r(g)+"rotate("+f+n)}function c(u,f,g,m){u!==f?m.push({i:g.push(r(g)+"skewX(",null,n)-2,x:Vr(u,f)}):f&&g.push(r(g)+"skewX("+f+n)}function h(u,f,g,m,v,S){if(u!==g||f!==m){var x=v.push(r(v)+"scale(",null,",",null,")");S.push({i:x-4,x:Vr(u,g)},{i:x-2,x:Vr(f,m)})}else(g!==1||m!==1)&&v.push(r(v)+"scale("+g+","+m+")")}return function(u,f){var g=[],m=[];return u=t(u),f=t(f),s(u.translateX,u.translateY,f.translateX,f.translateY,g,m),a(u.rotate,f.rotate,g,m),c(u.skewX,f.skewX,g,m),h(u.scaleX,u.scaleY,f.scaleX,f.scaleY,g,m),u=f=null,function(v){for(var S=-1,x=m.length,w;++S<x;)g[(w=m[S]).i]=w.x(v);return g.join("")}}}var O4=pP(g4,"px, ","px)","deg)"),v4=pP(m4,", ",")",")"),y4=1e-12;function dC(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 Xp=(function t(e,i,n){function r(s,a){var c=s[0],h=s[1],u=s[2],f=a[0],g=a[1],m=a[2],v=f-c,S=g-h,x=v*v+S*S,w,_;if(x<y4)_=Math.log(m/u)/e,w=function(L){return[c+L*v,h+L*S,u*Math.exp(e*L*_)]};else{var T=Math.sqrt(x),C=(m*m-u*u+n*x)/(2*u*i*T),Q=(m*m-u*u-n*x)/(2*m*i*T),M=Math.log(Math.sqrt(C*C+1)-C),E=Math.log(Math.sqrt(Q*Q+1)-Q);_=(E-M)/e,w=function(L){var V=L*_,H=dC(M),U=u/(i*T)*(H*b4(e*V+M)-S4(M));return[c+U*v,h+U*S,u*H/dC(e*V+M)]}}return w.duration=_*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 Ec=0,du=0,Yh=0,gP=1e3,gg,fu,mg=0,rl=0,hm=0,ju=typeof performance=="object"&&performance.now?performance:Date,mP=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function C1(){return rl||(mP(x4),rl=ju.now()+hm)}function x4(){rl=0}function Og(){this._call=this._time=this._next=null}Og.prototype=OP.prototype={constructor:Og,restart:function(t,e,i){if(typeof t!="function")throw new TypeError("callback is not a function");i=(i==null?C1():+i)+(e==null?0:+e),!this._next&&fu!==this&&(fu?fu._next=this:gg=this,fu=this),this._call=t,this._time=i,Ty()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ty())}};function OP(t,e,i){var n=new Og;return n.restart(t,e,i),n}function _4(){C1(),++Ec;for(var t=gg,e;t;)(e=rl-t._time)>=0&&t._call.call(void 0,e),t=t._next;--Ec}function fC(){rl=(mg=ju.now())+hm,Ec=du=0;try{_4()}finally{Ec=0,k4(),rl=0}}function w4(){var t=ju.now(),e=t-mg;e>gP&&(hm-=e,mg=t)}function k4(){for(var t,e=gg,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:gg=i);fu=t,Ty(n)}function Ty(t){if(!Ec){du&&(du=clearTimeout(du));var e=t-rl;e>24?(t<1/0&&(du=setTimeout(fC,t-ju.now()-hm)),Yh&&(Yh=clearInterval(Yh))):(Yh||(mg=ju.now(),Yh=setInterval(w4,gP)),Ec=1,mP(fC))}}function pC(t,e,i){var n=new Og;return e=e==null?0:+e,n.restart(r=>{n.stop(),t(r+e)},e,i),n}var C4=lm("start","end","cancel","interrupt"),T4=[],vP=0,gC=1,Qy=2,Np=3,mC=4,$y=5,Zp=6;function um(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:vP})}function T1(t,e){var i=$r(t,e);if(i.state>vP)throw new Error("too late; already scheduled");return i}function os(t,e){var i=$r(t,e);if(i.state>Np)throw new Error("too late; already running");return i}function $r(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=OP(s,0,i.time);function s(u){i.state=gC,i.timer.restart(a,i.delay,i.time),i.delay<=u&&a(u-i.delay)}function a(u){var f,g,m,v;if(i.state!==gC)return h();for(f in n)if(v=n[f],v.name===i.name){if(v.state===Np)return pC(a);v.state===mC?(v.state=Zp,v.timer.stop(),v.on.call("interrupt",t,t.__data__,v.index,v.group),delete n[f]):+f<e&&(v.state=Zp,v.timer.stop(),v.on.call("cancel",t,t.__data__,v.index,v.group),delete n[f])}if(pC(function(){i.state===Np&&(i.state=mC,i.timer.restart(c,i.delay,i.time),c(u))}),i.state=Qy,i.on.call("start",t,t.__data__,i.index,i.group),i.state===Qy){for(i.state=Np,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(u){for(var f=u<i.duration?i.ease.call(null,u/i.duration):(i.timer.restart(h),i.state=$y,1),g=-1,m=r.length;++g<m;)r[g].call(t,f);i.state===$y&&(i.on.call("end",t,t.__data__,i.index,i.group),h())}function h(){i.state=Zp,i.timer.stop(),delete n[e];for(var u in n)return;delete t.__transition}}function Wp(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>Qy&&n.state<$y,n.state=Zp,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(){Wp(this,t)})}function P4(t,e){var i,n;return function(){var r=os(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=os(this,t),a=s.tween;if(a!==n){r=(n=a).slice();for(var c={name:e,value:i},h=0,u=r.length;h<u;++h)if(r[h].name===e){r[h]=c;break}h===u&&r.push(c)}s.tween=r}}function R4(t,e){var i=this._id;if(t+="",arguments.length<2){for(var n=$r(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 Q1(t,e,i){var n=t._id;return t.each(function(){var r=os(this,n);(r.value||(r.value={}))[e]=i.apply(this,arguments)}),function(r){return $r(r,n).value[e]}}function yP(t,e){var i;return(typeof e=="number"?Vr:e instanceof nl?pg:(i=nl(e))?(e=i,pg):dP)(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=cm(t),n=i==="transform"?v4:yP;return this.attrTween(t,typeof e=="function"?(i.local?B4:D4)(i,n,Q1(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=cm(t);return this.tween(i,(n.local?Z4:W4)(n,e))}function I4(t,e){return function(){T1(this,t).delay=+e.apply(this,arguments)}}function V4(t,e){return e=+e,function(){T1(this,t).delay=e}}function Y4(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?I4:V4)(e,t)):$r(this.node(),e).delay}function H4(t,e){return function(){os(this,t).duration=+e.apply(this,arguments)}}function U4(t,e){return e=+e,function(){os(this,t).duration=e}}function G4(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?H4:U4)(e,t)):$r(this.node(),e).duration}function F4(t,e){if(typeof e!="function")throw new Error;return function(){os(this,t).ease=e}}function K4(t){var e=this._id;return arguments.length?this.each(F4(e,t)):$r(this.node(),e).ease}function J4(t,e){return function(){var i=e.apply(this,arguments);if(typeof i!="function")throw new Error;os(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=G$(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,u=0;u<a;++u)(h=s[u])&&t.call(h,h.__data__,u,s)&&c.push(h);return new qs(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],u=i[c],f=h.length,g=a[c]=new Array(f),m,v=0;v<f;++v)(m=h[v]||u[v])&&(g[v]=m);for(;c<n;++c)a[c]=e[c];return new qs(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)?T1:os;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?$r(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=x1(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,u=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__),u[m]=g,um(u[m],e,i,m,u,$r(f,i)));return new qs(s,this._parents,e,i)}function cL(t){var e=this._name,i=this._id;typeof t!="function"&&(t=U$(t));for(var n=this._groups,r=n.length,s=[],a=[],c=0;c<r;++c)for(var h=n[c],u=h.length,f,g=0;g<u;++g)if(f=h[g]){for(var m=t.call(f,f.__data__,g,h),v,S=$r(f,i),x=0,w=m.length;x<w;++x)(v=m[x])&&um(v,e,i,x,m,S);s.push(m),a.push(f)}return new qs(s,a,e,i)}var hL=hd.prototype.constructor;function uL(){return new hL(this._groups,this._parents)}function dL(t,e){var i,n,r;return function(){var s=Pc(this,t),a=(this.style.removeProperty(t),Pc(this,t));return s===a?null:s===i&&a===n?r:r=e(i=s,n=a)}}function SP(t){return function(){this.style.removeProperty(t)}}function fL(t,e,i){var n,r=i+"",s;return function(){var a=Pc(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=Pc(this,t),c=i(this),h=c+"";return c==null&&(h=c=(this.style.removeProperty(t),Pc(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=os(this,t),u=h.on,f=h.value[s]==null?c||(c=SP(e)):void 0;(u!==i||r!==f)&&(n=(i=u).copy()).on(a,r=f),h.on=n}}function mL(t,e,i){var n=(t+="")=="transform"?O4:yP;return e==null?this.styleTween(t,dL(t,n)).on("end.style."+t,SP(t)):typeof e=="function"?this.styleTween(t,pL(t,n,Q1(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 xL(t){return this.tween("text",typeof t=="function"?bL(Q1(this,"text",t)):SL(t==null?"":t+""))}function _L(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)&&_L(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=bP(),n=this._groups,r=n.length,s=0;s<r;++s)for(var a=n[s],c=a.length,h,u=0;u<c;++u)if(h=a[u]){var f=$r(h,e);um(h,t,i,u,a,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new qs(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 u=os(this,n),f=u.on;f!==t&&(e=(t=f).copy(),e._.cancel.push(c),e._.interrupt.push(c),e._.end.push(h)),u.on=e}),r===0&&s()})}var QL=0;function qs(t,e,i,n){this._groups=t,this._parents=e,this._name=i,this._id=n}function bP(){return++QL}var Ps=hd.prototype;qs.prototype={constructor:qs,select:lL,selectAll:cL,selectChild:Ps.selectChild,selectChildren:Ps.selectChildren,filter:tL,merge:iL,selection:uL,transition:CL,call:Ps.call,nodes:Ps.nodes,node:Ps.node,size:Ps.size,empty:Ps.empty,each:Ps.each,on:sL,attr:L4,attrTween:q4,style:mL,styleTween:yL,text:xL,textTween:kL,remove:aL,tween:R4,delay:Y4,duration:G4,ease:K4,easeVarying:eL,end:TL,[Symbol.iterator]:Ps[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 qs?(e=t._id,t=t._name):(e=bP(),(i=PL).time=C1(),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,u=0;u<c;++u)(h=a[u])&&um(h,t,e,u,a,i||EL(h,e));return new qs(n,this._parents,t,e)}hd.prototype.interrupt=$4;hd.prototype.transition=RL;const Kf=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 Xs(t,e,i){this.k=t,this.x=e,this.y=i}Xs.prototype={constructor:Xs,scale:function(t){return t===1?this:new Xs(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Xs(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 dm=new Xs(1,0,0);xP.prototype=Xs.prototype;function xP(t){for(;!t.__zoom;)if(!(t=t.parentNode))return dm;return t.__zoom}function rv(t){t.stopImmediatePropagation()}function Hh(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 OC(){return this.__zoom||dm}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 _P(){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=Xp,u=lm("start","zoom","end"),f,g,m,v=500,S=150,x=0,w=10;function _(P){P.property("__zoom",OC).on("wheel.zoom",V,{passive:!1}).on("mousedown.zoom",H).on("dblclick.zoom",U).filter(r).on("touchstart.zoom",X).on("touchmove.zoom",R).on("touchend.zoom touchcancel.zoom",j).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(P,N,$,Z){var z=P.selection?P.selection():P;z.property("__zoom",OC),P!==z?M(P,N,$,Z):z.interrupt().each(function(){E(this,arguments).event(Z).start().zoom(null,typeof N=="function"?N.apply(this,arguments):N).end()})},_.scaleBy=function(P,N,$,Z){_.scaleTo(P,function(){var z=this.__zoom.k,q=typeof N=="function"?N.apply(this,arguments):N;return z*q},$,Z)},_.scaleTo=function(P,N,$,Z){_.transform(P,function(){var z=e.apply(this,arguments),q=this.__zoom,F=$==null?Q(z):typeof $=="function"?$.apply(this,arguments):$,D=q.invert(F),I=typeof N=="function"?N.apply(this,arguments):N;return i(C(T(q,I),F,D),z,a)},$,Z)},_.translateBy=function(P,N,$,Z){_.transform(P,function(){return i(this.__zoom.translate(typeof N=="function"?N.apply(this,arguments):N,typeof $=="function"?$.apply(this,arguments):$),e.apply(this,arguments),a)},null,Z)},_.translateTo=function(P,N,$,Z,z){_.transform(P,function(){var q=e.apply(this,arguments),F=this.__zoom,D=Z==null?Q(q):typeof Z=="function"?Z.apply(this,arguments):Z;return i(dm.translate(D[0],D[1]).scale(F.k).translate(typeof N=="function"?-N.apply(this,arguments):-N,typeof $=="function"?-$.apply(this,arguments):-$),q,a)},Z,z)};function T(P,N){return N=Math.max(s[0],Math.min(s[1],N)),N===P.k?P:new Xs(N,P.x,P.y)}function C(P,N,$){var Z=N[0]-$[0]*P.k,z=N[1]-$[1]*P.k;return Z===P.x&&z===P.y?P:new Xs(P.k,Z,z)}function Q(P){return[(+P[0][0]+ +P[1][0])/2,(+P[0][1]+ +P[1][1])/2]}function M(P,N,$,Z){P.on("start.zoom",function(){E(this,arguments).event(Z).start()}).on("interrupt.zoom end.zoom",function(){E(this,arguments).event(Z).end()}).tween("zoom",function(){var z=this,q=arguments,F=E(z,q).event(Z),D=e.apply(z,q),I=$==null?Q(D):typeof $=="function"?$.apply(z,q):$,ee=Math.max(D[1][0]-D[0][0],D[1][1]-D[0][1]),re=z.__zoom,ce=typeof N=="function"?N.apply(z,q):N,fe=h(re.invert(I).concat(ee/re.k),ce.invert(I).concat(ee/ce.k));return function(ge){if(ge===1)ge=ce;else{var pe=fe(ge),te=ee/pe[2];ge=new Xs(te,I[0]-pe[0]*te,I[1]-pe[1]*te)}F.zoom(null,ge)}})}function E(P,N,$){return!$&&P.__zooming||new L(P,N)}function L(P,N){this.that=P,this.args=N,this.active=0,this.sourceEvent=null,this.extent=e.apply(P,N),this.taps=0}L.prototype={event:function(P){return P&&(this.sourceEvent=P),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(P,N){return this.mouse&&P!=="mouse"&&(this.mouse[1]=N.invert(this.mouse[0])),this.touch0&&P!=="touch"&&(this.touch0[1]=N.invert(this.touch0[0])),this.touch1&&P!=="touch"&&(this.touch1[1]=N.invert(this.touch1[0])),this.that.__zoom=N,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(P){var N=qn(this.that).datum();u.call(P,this.that,new AL(P,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:u}),N)}};function V(P,...N){if(!t.apply(this,arguments))return;var $=E(this,N).event(P),Z=this.__zoom,z=Math.max(s[0],Math.min(s[1],Z.k*Math.pow(2,n.apply(this,arguments)))),q=xr(P);if($.wheel)($.mouse[0][0]!==q[0]||$.mouse[0][1]!==q[1])&&($.mouse[1]=Z.invert($.mouse[0]=q)),clearTimeout($.wheel);else{if(Z.k===z)return;$.mouse=[q,Z.invert(q)],Wp(this),$.start()}Hh(P),$.wheel=setTimeout(F,S),$.zoom("mouse",i(C(T(Z,z),$.mouse[0],$.mouse[1]),$.extent,a));function F(){$.wheel=null,$.end()}}function H(P,...N){if(m||!t.apply(this,arguments))return;var $=P.currentTarget,Z=E(this,N,!0).event(P),z=qn(P.view).on("mousemove.zoom",I,!0).on("mouseup.zoom",ee,!0),q=xr(P,$),F=P.clientX,D=P.clientY;oP(P.view),rv(P),Z.mouse=[q,this.__zoom.invert(q)],Wp(this),Z.start();function I(re){if(Hh(re),!Z.moved){var ce=re.clientX-F,fe=re.clientY-D;Z.moved=ce*ce+fe*fe>x}Z.event(re).zoom("mouse",i(C(Z.that.__zoom,Z.mouse[0]=xr(re,$),Z.mouse[1]),Z.extent,a))}function ee(re){z.on("mousemove.zoom mouseup.zoom",null),aP(re.view,Z.moved),Hh(re),Z.event(re).end()}}function U(P,...N){if(t.apply(this,arguments)){var $=this.__zoom,Z=xr(P.changedTouches?P.changedTouches[0]:P,this),z=$.invert(Z),q=$.k*(P.shiftKey?.5:2),F=i(C(T($,q),Z,z),e.apply(this,N),a);Hh(P),c>0?qn(this).transition().duration(c).call(M,F,Z,P):qn(this).call(_.transform,F,Z,P)}}function X(P,...N){if(t.apply(this,arguments)){var $=P.touches,Z=$.length,z=E(this,N,P.changedTouches.length===Z).event(P),q,F,D,I;for(rv(P),F=0;F<Z;++F)D=$[F],I=xr(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,q=!0,z.taps=1+!!f);f&&(f=clearTimeout(f)),q&&(z.taps<2&&(g=I[0],f=setTimeout(function(){f=null},v)),Wp(this),z.start())}}function R(P,...N){if(this.__zooming){var $=E(this,N).event(P),Z=P.changedTouches,z=Z.length,q,F,D,I;for(Hh(P),q=0;q<z;++q)F=Z[q],D=xr(F,this),$.touch0&&$.touch0[2]===F.identifier?$.touch0[0]=D:$.touch1&&$.touch1[2]===F.identifier&&($.touch1[0]=D);if(F=$.that.__zoom,$.touch1){var ee=$.touch0[0],re=$.touch0[1],ce=$.touch1[0],fe=$.touch1[1],ge=(ge=ce[0]-ee[0])*ge+(ge=ce[1]-ee[1])*ge,pe=(pe=fe[0]-re[0])*pe+(pe=fe[1]-re[1])*pe;F=T(F,Math.sqrt(ge/pe)),D=[(ee[0]+ce[0])/2,(ee[1]+ce[1])/2],I=[(re[0]+fe[0])/2,(re[1]+fe[1])/2]}else if($.touch0)D=$.touch0[0],I=$.touch0[1];else return;$.zoom("touch",i(C(F,D,I),$.extent,a))}}function j(P,...N){if(this.__zooming){var $=E(this,N).event(P),Z=P.changedTouches,z=Z.length,q,F;for(rv(P),m&&clearTimeout(m),m=setTimeout(function(){m=null},v),q=0;q<z;++q)F=Z[q],$.touch0&&$.touch0[2]===F.identifier?delete $.touch0:$.touch1&&$.touch1[2]===F.identifier&&delete $.touch1;if($.touch1&&!$.touch0&&($.touch0=$.touch1,delete $.touch1),$.touch0)$.touch0[1]=this.__zoom.invert($.touch0[0]);else if($.end(),$.taps===2&&(F=xr(F,this),Math.hypot(g[0]-F[0],g[1]-F[1])<w)){var D=qn(this).on("dblclick.zoom");D&&D.apply(this,arguments)}}}return _.wheelDelta=function(P){return arguments.length?(n=typeof P=="function"?P:Kf(+P),_):n},_.filter=function(P){return arguments.length?(t=typeof P=="function"?P:Kf(!!P),_):t},_.touchable=function(P){return arguments.length?(r=typeof P=="function"?P:Kf(!!P),_):r},_.extent=function(P){return arguments.length?(e=typeof P=="function"?P:Kf([[+P[0][0],+P[0][1]],[+P[1][0],+P[1][1]]]),_):e},_.scaleExtent=function(P){return arguments.length?(s[0]=+P[0],s[1]=+P[1],_):[s[0],s[1]]},_.translateExtent=function(P){return arguments.length?(a[0][0]=+P[0][0],a[1][0]=+P[1][0],a[0][1]=+P[0][1],a[1][1]=+P[1][1],_):[[a[0][0],a[0][1]],[a[1][0],a[1][1]]]},_.constrain=function(P){return arguments.length?(i=P,_):i},_.duration=function(P){return arguments.length?(c=+P,_):c},_.interpolate=function(P){return arguments.length?(h=P,_):h},_.on=function(){var P=u.on.apply(u,arguments);return P===u?_:P},_.clickDistance=function(P){return arguments.length?(x=(P=+P)*P,_):Math.sqrt(x)},_.tapDistance=function(P){return arguments.length?(w=+P,_):w},_}const rs={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."},Du=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],wP=["Enter"," ","Escape"],kP={"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 Rc;(function(t){t.Strict="strict",t.Loose="loose"})(Rc||(Rc={}));var Ja;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(Ja||(Ja={}));var Bu;(function(t){t.Partial="partial",t.Full="full"})(Bu||(Bu={}));const CP={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Uo;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Uo||(Uo={}));var vg;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(vg||(vg={}));var Te;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(Te||(Te={}));const vC={[Te.Left]:Te.Right,[Te.Right]:Te.Left,[Te.Top]:Te.Bottom,[Te.Bottom]:Te.Top};function TP(t){return t===null?null:t?"valid":"invalid"}const QP=t=>"id"in t&&"source"in t&&"target"in t,LL=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),$1=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),dd=(t,e=[0,0])=>{const{width:i,height:n}=Hs(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):$1(r)?r:e.nodeLookup.get(r.id));const c=a?yg(a,e.nodeOrigin):{x:0,y:0,x2:0,y2:0};return fm(n,c)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return pm(i)},fd=(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=fm(i,yg(r)),n=!0)}),n?pm(i):{x:0,y:0,width:0,height:0}},P1=(t,e,[i,n,r]=[0,0,1],s=!1,a=!1)=>{const c={...gd(e,[i,n,r]),width:e.width/r,height:e.height/r},h=[];for(const u of t.values()){const{measured:f,selectable:g=!0,hidden:m=!1}=u;if(a&&!g||m)continue;const v=f.width??u.width??u.initialWidth??null,S=f.height??u.height??u.initialHeight??null,x=Lu(c,Mc(u)),w=(v??0)*(S??0),_=s&&x>0;(!u.internals.handleBounds||_||x>=w||u.dragging)&&h.push(u)}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=fd(c),u=E1(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(u,{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 $P({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:u}=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",rs.error005());else{const v=c.measured.width,S=c.measured.height;v&&S&&(g=[[h,u],[h+v,u+S]])}else c&&zc(a.extent)&&(g=[[a.extent[0][0]+h,a.extent[0][1]+u],[a.extent[1][0]+h,a.extent[1][1]+u]]);const m=zc(g)?sl(e,g,a.measured):e;return(a.measured.width===void 0||a.measured.height===void 0)&&(s==null||s("015",rs.error015())),{position:{x:m.x-h+(a.measured.width??0)*f[0],y:m.y-u+(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(x=>x.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 Ac=(t,e=0,i=1)=>Math.min(Math.max(t,e),i),sl=(t={x:0,y:0},e,i)=>({x:Ac(t.x,e[0][0],e[1][0]-((i==null?void 0:i.width)??0)),y:Ac(t.y,e[0][1],e[1][1]-((i==null?void 0:i.height)??0))});function PP(t,e,i){const{width:n,height:r}=Hs(i),{x:s,y:a}=i.internals.positionAbsolute;return sl(t,[[s,a],[s+n,a+r]],e)}const yC=(t,e,i)=>t<e?Ac(Math.abs(t-e),1,e)/e:t>i?-Ac(Math.abs(t-i),1,e)/e:0,EP=(t,e,i=15,n=40)=>{const r=yC(t.x,n,e.width-n)*i,s=yC(t.y,n,e.height-n)*i;return[r,s]},fm=(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)}),Py=({x:t,y:e,width:i,height:n})=>({x:t,y:e,x2:t+i,y2:e+n}),pm=({x:t,y:e,x2:i,y2:n})=>({x:t,y:e,width:i-t,height:n-e}),Mc=(t,e=[0,0])=>{var r,s;const{x:i,y:n}=$1(t)?t.internals.positionAbsolute:dd(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}},yg=(t,e=[0,0])=>{var r,s;const{x:i,y:n}=$1(t)?t.internals.positionAbsolute:dd(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)}},RP=(t,e)=>pm(fm(Py(t),Py(e))),Lu=(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)},SC=t=>kr(t.width)&&kr(t.height)&&kr(t.x)&&kr(t.y),kr=t=>!isNaN(t)&&isFinite(t),IL=(t,e)=>{},pd=(t,e=[1,1])=>({x:e[0]*Math.round(t.x/e[0]),y:e[1]*Math.round(t.y/e[1])}),gd=({x:t,y:e},[i,n,r],s=!1,a=[1,1])=>{const c={x:(t-i)/r,y:(e-n)/r};return s?pd(c,a):c},Sg=({x:t,y:e},[i,n,r])=>({x:t*r+i,y:e*r+n});function sc(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=sc(t,i),r=sc(t,e);return{top:n,right:r,bottom:n,left:r,x:r*2,y:n*2}}if(typeof t=="object"){const n=sc(t.top??t.y??0,i),r=sc(t.bottom??t.y??0,i),s=sc(t.left??t.x??0,e),a=sc(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}=Sg(t,[e,i,n]),{x:h,y:u}=Sg({x:t.x+t.width,y:t.y+t.height},[e,i,n]),f=r-h,g=s-u;return{left:Math.floor(a),top:Math.floor(c),right:Math.floor(f),bottom:Math.floor(g)}}const E1=(t,e,i,n,r,s)=>{const a=VL(s,e,i),c=(e-a.x)/t.width,h=(i-a.y)/t.height,u=Math.min(c,h),f=Ac(u,n,r),g=t.x+t.width/2,m=t.y+t.height/2,v=e/2-g*f,S=i/2-m*f,x=YL(t,v,S,f,e,i),w={left:Math.min(x.left-a.left,0),top:Math.min(x.top-a.top,0),right:Math.min(x.right-a.right,0),bottom:Math.min(x.bottom-a.bottom,0)};return{x:v-w.left+w.right,y:S-w.top+w.bottom,zoom:f}},Xu=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0};function zc(t){return t!=null&&t!=="parent"}function Hs(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 AP(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 MP(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 bC(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{...kP,...t||{}}}function _u(t,{snapGrid:e=[0,0],snapToGrid:i=!1,transform:n,containerBounds:r}){const{x:s,y:a}=Cr(t),c=gd({x:s-((r==null?void 0:r.left)??0),y:a-((r==null?void 0:r.top)??0)},n),{x:h,y:u}=i?pd(c,e):c;return{xSnapped:h,ySnapped:u,...c}}const R1=t=>({width:t.offsetWidth,height:t.offsetHeight}),zP=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 jP(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 DP=t=>"clientX"in t,Cr=(t,e)=>{var s,a;const i=DP(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)}},xC=(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,...R1(a)}})};function BP({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,u=e*.125+s*.375+c*.375+n*.125,f=Math.abs(h-t),g=Math.abs(u-e);return[h,u,f,g]}function Jf(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function _C({pos:t,x1:e,y1:i,x2:n,y2:r,c:s}){switch(t){case Te.Left:return[e-Jf(e-n,s),i];case Te.Right:return[e+Jf(n-e,s),i];case Te.Top:return[e,i-Jf(i-r,s)];case Te.Bottom:return[e,i+Jf(r-i,s)]}}function LP({sourceX:t,sourceY:e,sourcePosition:i=Te.Bottom,targetX:n,targetY:r,targetPosition:s=Te.Top,curvature:a=.25}){const[c,h]=_C({pos:i,x1:t,y1:e,x2:n,y2:r,c:a}),[u,f]=_C({pos:s,x1:n,y1:r,x2:t,y2:e,c:a}),[g,m,v,S]=BP({sourceX:t,sourceY:e,targetX:n,targetY:r,sourceControlX:c,sourceControlY:h,targetControlX:u,targetControlY:f});return[`M${t},${e} C${c},${h} ${u},${f} ${n},${r}`,g,m,v,S]}function XP({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=fm(yg(t),yg(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 Lu(a,pm(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 QP(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 NP({sourceX:t,sourceY:e,targetX:i,targetY:n}){const[r,s,a,c]=XP({sourceX:t,sourceY:e,targetX:i,targetY:n});return[`M ${t},${e}L ${i},${n}`,r,s,a,c]}const wC={[Te.Left]:{x:-1,y:0},[Te.Right]:{x:1,y:0},[Te.Top]:{x:0,y:-1},[Te.Bottom]:{x:0,y:1}},i6=({source:t,sourcePosition:e=Te.Bottom,target:i})=>e===Te.Left||e===Te.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},kC=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function n6({source:t,sourcePosition:e=Te.Bottom,target:i,targetPosition:n=Te.Top,center:r,offset:s,stepPosition:a}){const c=wC[e],h=wC[n],u={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:u,sourcePosition:e,target:f}),m=g.x!==0?"x":"y",v=g[m];let S=[],x,w;const _={x:0,y:0},T={x:0,y:0},[,,C,Q]=XP({sourceX:t.x,sourceY:t.y,targetX:i.x,targetY:i.y});if(c[m]*h[m]===-1){m==="x"?(x=r.x??u.x+(f.x-u.x)*a,w=r.y??(u.y+f.y)/2):(x=r.x??(u.x+f.x)/2,w=r.y??u.y+(f.y-u.y)*a);const V=[{x,y:u.y},{x,y:f.y}],H=[{x:u.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:u.x,y:f.y}],H=[{x:f.x,y:u.y}];if(m==="x"?S=c.x===v?H:V:S=c.y===v?V:H,e===n){const P=Math.abs(t[m]-i[m]);if(P<=s){const N=Math.min(s-1,s-P);c[m]===v?_[m]=(u[m]>t[m]?-1:1)*N:T[m]=(f[m]>i[m]?-1:1)*N}}if(e!==n){const P=m==="x"?"y":"x",N=c[m]===h[P],$=u[P]>f[P],Z=u[P]<f[P];(c[m]===1&&(!N&&$||N&&Z)||c[m]!==1&&(!N&&Z||N&&$))&&(S=m==="x"?V:H)}const U={x:u.x+_.x,y:u.y+_.y},X={x:f.x+T.x,y:f.y+T.y},R=Math.max(Math.abs(U.x-S[0].x),Math.abs(X.x-S[0].x)),j=Math.max(Math.abs(U.y-S[0].y),Math.abs(X.y-S[0].y));R>=j?(x=(U.x+X.x)/2,w=S[0].y):(x=S[0].x,w=(U.y+X.y)/2)}const M={x:u.x+_.x,y:u.y+_.y},E={x:f.x+T.x,y:f.y+T.y};return[[t,...M.x!==S[0].x||M.y!==S[0].y?[M]:[],...S,...E.x!==S[S.length-1].x||E.y!==S[S.length-1].y?[E]:[],i],x,w,C,Q]}function r6(t,e,i,n){const r=Math.min(kC(t,e)/2,kC(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 u=t.x<i.x?-1:1,f=t.y<i.y?1:-1;return`L ${s+r*u},${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 Ey({sourceX:t,sourceY:e,sourcePosition:i=Te.Bottom,targetX:n,targetY:r,targetPosition:s=Te.Top,borderRadius:a=5,centerX:c,centerY:h,offset:u=20,stepPosition:f=.5}){const[g,m,v,S,x]=n6({source:{x:t,y:e},sourcePosition:i,target:{x:n,y:r},targetPosition:s,center:{x:c,y:h},offset:u,stepPosition:f});let w=`M${g[0].x} ${g[0].y}`;for(let _=1;_<g.length-1;_++)w+=r6(g[_-1],g[_],g[_+1],a);return w+=`L${g[g.length-1].x} ${g[g.length-1].y}`,[w,m,v,S,x]}function CC(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(!CC(e)||!CC(i))return null;const n=e.internals.handleBounds||TC(e.handles),r=i.internals.handleBounds||TC(i.handles),s=QC((n==null?void 0:n.source)??[],t.sourceHandle),a=QC(t.connectionMode===Rc.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",rs.error008(s?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;const c=(s==null?void 0:s.position)||Te.Bottom,h=(a==null?void 0:a.position)||Te.Top,u=ol(e,s,c),f=ol(i,a,h);return{sourceX:u.x,sourceY:u.y,targetX:f.x,targetY:f.y,sourcePosition:c,targetPosition:h}}function TC(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 ol(t,e,i=Te.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??Hs(t);if(n)return{x:r+a/2,y:s+c/2};switch((e==null?void 0:e.position)??i){case Te.Top:return{x:r+a/2,y:s};case Te.Right:return{x:r+a,y:s+c/2};case Te.Bottom:return{x:r+a/2,y:s+c};case Te.Left:return{x:r,y:s+c/2}}}function QC(t,e){return t&&(e?t.find(i=>i.id===e):t[0])||null}function Ry(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 u=Ry(h,e);s.has(u)||(a.push({id:u,color:h.color||i,...h}),s.add(u))}}),a),[]).sort((a,c)=>a.id.localeCompare(c.id))}const ZP=1e3,a6=10,A1={nodeOrigin:[0,0],nodeExtent:Du,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},l6={...A1,checkEquality:!0};function M1(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=M1(A1,i);for(const r of t.values())if(r.parentId)j1(r,t,e,n);else{const s=dd(r,n.nodeOrigin),a=zc(r.extent)?r.extent:n.nodeExtent,c=sl(s,a,Hs(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 z1(t){return t==="manual"}function Ay(t,e,i,n={}){var f,g;const r=M1(l6,n),s={i:0},a=new Map(e),c=r!=null&&r.elevateNodesOnSelect&&!z1(r.zIndexMode)?ZP:0;let h=t.length>0,u=!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=dd(m,r.nodeOrigin),x=zc(m.extent)?m.extent:r.nodeExtent,w=sl(S,x,Hs(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:WP(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&&j1(v,e,i,n,s),u||(u=m.selected??!1)}return{nodesInitialized:h,hasSelectedNodes:u}}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 j1(t,e,i,n,r){const{elevateNodesOnSelect:s,nodeOrigin:a,nodeExtent:c,zIndexMode:h}=M1(A1,n),u=t.parentId,f=e.get(u);if(!f){console.warn(`Parent node ${u} 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&&!z1(h)?ZP:0,{x:m,y:v,z:S}=d6(t,f,a,c,g,h),{positionAbsolute:x}=t.internals,w=m!==x.x||v!==x.y;(w||S!==t.internals.z)&&e.set(t.id,{...t,internals:{...t.internals,positionAbsolute:w?{x:m,y:v}:x,z:S}})}function WP(t,e,i){const n=kr(t.zIndex)?t.zIndex:0;return z1(i)?n:n+(t.selected?e:0)}function d6(t,e,i,n,r,s){const{x:a,y:c}=e.internals.positionAbsolute,h=Hs(t),u=dd(t,i),f=zc(t.extent)?sl(u,t.extent,h):u;let g=sl({x:a+f.x,y:c+f.y},n,h);t.extent==="parent"&&(g=PP(g,h,e));const m=WP(t,r,s),v=e.internals.z??0;return{x:g.x,y:g.y,z:v>=m?v+1:m}}function D1(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 u=((a=s.get(c.parentId))==null?void 0:a.expandedRect)??Mc(h),f=RP(u,c.rect);s.set(c.parentId,{expandedRect:f,parent:h})}return s.size>0&&s.forEach(({expandedRect:c,parent:h},u)=>{var C;const f=h.internals.positionAbsolute,g=Hs(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,x=Math.max(g.width,Math.round(c.width)),w=Math.max(g.height,Math.round(c.height)),_=(x-g.width)*m[0],T=(w-g.height)*m[1];(v>0||S>0||_||T)&&(r.push({id:u,type:"position",position:{x:h.position.x-v+_,y:h.position.y-S+T}}),(C=i.get(u))==null||C.forEach(Q=>{t.some(M=>M.id===Q.id)||r.push({id:Q.id,type:"position",position:{x:Q.position.x+v,y:Q.position.y+S}})})),(g.width<c.width||g.height<c.height||v||S)&&r.push({id:u,type:"dimensions",setAttributes:!0,dimensions:{width:x+(v?m[0]*v-_:0),height:w+(S?m[1]*S-T: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 u=[],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 x=R1(v.nodeElement),w=S.measured.width!==x.width||S.measured.height!==x.height;if(!!(x.width&&x.height&&(w||!S.internals.handleBounds||v.force))){const T=v.nodeElement.getBoundingClientRect(),C=zc(S.extent)?S.extent:s;let{positionAbsolute:Q}=S.internals;S.parentId&&S.extent==="parent"?Q=PP(Q,x,e.get(S.parentId)):C&&(Q=sl(Q,C,x));const M={...S,measured:x,internals:{...S.internals,positionAbsolute:Q,handleBounds:{source:xC("source",v.nodeElement,T,g,S.id),target:xC("target",v.nodeElement,T,g,S.id)}}};e.set(S.id,M),S.parentId&&j1(M,e,i,{nodeOrigin:r,zIndexMode:a}),h=!0,w&&(u.push({id:S.id,type:"dimensions",dimensions:x}),S.expandParent&&S.parentId&&m.push({id:S.id,parentId:S.parentId,rect:Mc(M,r)}))}}if(m.length>0){const v=D1(m,e,i,r);u.push(...v)}return{changes:u,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 $C(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 u=n.get(a)||new Map;n.set(a,u.set(i,e))}}function qP(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},u=`${r}-${a}--${s}-${c}`,f=`${s}-${c}--${r}-${a}`;$C("source",h,f,t,r,a),$C("target",h,u,t,s,c),e.set(n.id,n)}}function IP(t,e){if(!t.parentId)return!1;const i=e.get(t.parentId);return i?i.selected?!0:IP(i,e):!1}function PC(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||!IP(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 sv({nodeId:t,dragItems:e,nodeLookup:i,dragging:n=!0}){var a,c,h;const r=[];for(const[u,f]of e){const g=(a=i.get(u))==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=pd(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,u={x:0,y:0},f=null,g=!1,m=null,v=!1,S=!1,x=null;function w({noDragClassName:T,handleSelector:C,domNode:Q,isSelectable:M,nodeId:E,nodeClickDistance:L=0}){m=qn(Q);function V({x:R,y:j}){const{nodeLookup:P,nodeExtent:N,snapGrid:$,snapToGrid:Z,nodeOrigin:z,onNodeDrag:q,onSelectionDrag:F,onError:D,updateNodePositions:I}=e();s={x:R,y:j};let ee=!1;const re=c.size>1,ce=re&&N?Py(fd(c)):null,fe=re&&Z?m6({dragItems:c,snapGrid:$,x:R,y:j}):null;for(const[ge,pe]of c){if(!P.has(ge))continue;let te={x:R-pe.distance.x,y:j-pe.distance.y};Z&&(te=fe?{x:Math.round(te.x+fe.x),y:Math.round(te.y+fe.y)}:pd(te,$));let we=null;if(re&&N&&!pe.extent&&ce){const{positionAbsolute:Oe}=pe.internals,Xe=Oe.x-ce.x+N[0][0],st=Oe.x+pe.measured.width-ce.x2+N[1][0],Fe=Oe.y-ce.y+N[0][1],Lt=Oe.y+pe.measured.height-ce.y2+N[1][1];we=[[Xe,Fe],[st,Lt]]}const{position:Re,positionAbsolute:Ce}=$P({nodeId:ge,nextPosition:te,nodeLookup:P,nodeExtent:we||N,nodeOrigin:z,onError:D});ee=ee||pe.position.x!==Re.x||pe.position.y!==Re.y,pe.position=Re,pe.internals.positionAbsolute=Ce}if(S=S||ee,!!ee&&(I(c,!0),x&&(n||q||!E&&F))){const[ge,pe]=sv({nodeId:E,dragItems:c,nodeLookup:P});n==null||n(x,c,ge,pe),q==null||q(x,ge,pe),E||F==null||F(x,pe)}}async function H(){if(!f)return;const{transform:R,panBy:j,autoPanSpeed:P,autoPanOnNodeDrag:N}=e();if(!N){h=!1,cancelAnimationFrame(a);return}const[$,Z]=EP(u,f,P);($!==0||Z!==0)&&(s.x=(s.x??0)-$/R[2],s.y=(s.y??0)-Z/R[2],await j({x:$,y:Z})&&V(s)),a=requestAnimationFrame(H)}function U(R){var re;const{nodeLookup:j,multiSelectionActive:P,nodesDraggable:N,transform:$,snapGrid:Z,snapToGrid:z,selectNodesOnDrag:q,onNodeDragStart:F,onSelectionDragStart:D,unselectNodesAndEdges:I}=e();g=!0,(!q||!M)&&!P&&E&&((re=j.get(E))!=null&&re.selected||I()),M&&q&&E&&(t==null||t(E));const ee=_u(R.sourceEvent,{transform:$,snapGrid:Z,snapToGrid:z,containerBounds:f});if(s=ee,c=g6(j,N,ee,E),c.size>0&&(i||F||!E&&D)){const[ce,fe]=sv({nodeId:E,dragItems:c,nodeLookup:j});i==null||i(R.sourceEvent,c,ce,fe),F==null||F(R.sourceEvent,ce,fe),E||D==null||D(R.sourceEvent,fe)}}const X=lP().clickDistance(L).on("start",R=>{const{domNode:j,nodeDragThreshold:P,transform:N,snapGrid:$,snapToGrid:Z}=e();f=(j==null?void 0:j.getBoundingClientRect())||null,v=!1,S=!1,x=R.sourceEvent,P===0&&U(R),s=_u(R.sourceEvent,{transform:N,snapGrid:$,snapToGrid:Z,containerBounds:f}),u=Cr(R.sourceEvent,f)}).on("drag",R=>{const{autoPanOnNodeDrag:j,transform:P,snapGrid:N,snapToGrid:$,nodeDragThreshold:Z,nodeLookup:z}=e(),q=_u(R.sourceEvent,{transform:P,snapGrid:N,snapToGrid:$,containerBounds:f});if(x=R.sourceEvent,(R.sourceEvent.type==="touchmove"&&R.sourceEvent.touches.length>1||E&&!z.has(E))&&(v=!0),!v){if(!h&&j&&g&&(h=!0,H()),!g){const F=Cr(R.sourceEvent,f),D=F.x-u.x,I=F.y-u.y;Math.sqrt(D*D+I*I)>Z&&U(R)}(s.x!==q.xSnapped||s.y!==q.ySnapped)&&c&&g&&(u=Cr(R.sourceEvent,f),V(q))}}).on("end",R=>{if(!(!g||v)&&(h=!1,g=!1,cancelAnimationFrame(a),c.size>0)){const{nodeLookup:j,updateNodePositions:P,onNodeDragStop:N,onSelectionDragStop:$}=e();if(S&&(P(c,!1),S=!1),r||N||!E&&$){const[Z,z]=sv({nodeId:E,dragItems:c,nodeLookup:j,dragging:!1});r==null||r(R.sourceEvent,c,Z,z),N==null||N(R.sourceEvent,Z,z),E||$==null||$(R.sourceEvent,z)}}}).filter(R=>{const j=R.target;return!R.button&&(!T||!PC(j,`.${T}`,Q))&&(!C||PC(j,C,Q))});m.call(X)}function _(){m==null||m.on(".drag",null)}return{update:w,destroy:_}}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())Lu(r,Mc(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 u of a){const f=[...((c=u.internals.handleBounds)==null?void 0:c.source)??[],...((h=u.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}=ol(u,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 u=n.type==="source"?"target":"source";return r.find(f=>f.type===u)??r[0]}return r[0]}function VP(t,e,i,n,r,s=!1){var u,f,g;const a=n.get(t);if(!a)return null;const c=r==="strict"?(u=a.internals.handleBounds)==null?void 0:u[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,...ol(a,h,h.position,!0)}:h}function YP(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 HP=()=>!0;function x6(t,{connectionMode:e,connectionRadius:i,handleId:n,nodeId:r,edgeUpdaterType:s,isTarget:a,domNode:c,nodeLookup:h,lib:u,autoPanOnConnect:f,flowId:g,panBy:m,cancelConnection:v,onConnectStart:S,onConnect:x,onConnectEnd:w,isValidConnection:_=HP,onReconnectEnd:T,updateConnection:C,getTransform:Q,getFromHandle:M,autoPanSpeed:E,dragThreshold:L=1,handleDomNode:V}){const H=zP(t.target);let U=0,X;const{x:R,y:j}=Cr(t),P=YP(s,V),N=c==null?void 0:c.getBoundingClientRect();let $=!1;if(!N||!P)return;const Z=VP(r,P,n,h,e);if(!Z)return;let z=Cr(t,N),q=!1,F=null,D=!1,I=null;function ee(){if(!f||!N)return;const[Re,Ce]=EP(z,N,E);m({x:Re,y:Ce}),U=requestAnimationFrame(ee)}const re={...Z,nodeId:r,type:P,position:Z.position},ce=h.get(r);let ge={inProgress:!0,isValid:null,from:ol(ce,re,Te.Left,!0),fromHandle:re,fromPosition:re.position,fromNode:ce,to:z,toHandle:null,toPosition:vC[re.position],toNode:null,pointer:z};function pe(){$=!0,C(ge),S==null||S(t,{nodeId:r,handleId:n,handleType:P})}L===0&&pe();function te(Re){if(!$){const{x:Lt,y:Si}=Cr(Re),Pi=Lt-R,ln=Si-j;if(!(Pi*Pi+ln*ln>L*L))return;pe()}if(!M()||!re){we(Re);return}const Ce=Q();z=Cr(Re,N),X=S6(gd(z,Ce,!1,[1,1]),i,h,re),q||(ee(),q=!0);const Oe=UP(Re,{handle:X,connectionMode:e,fromNodeId:r,fromHandleId:n,fromType:a?"target":"source",isValidConnection:_,doc:H,lib:u,flowId:g,nodeLookup:h});I=Oe.handleDomNode,F=Oe.connection,D=b6(!!X,Oe.isValid);const Xe=h.get(r),st=Xe?ol(Xe,re,Te.Left,!0):ge.from,Fe={...ge,from:st,isValid:D,to:Oe.toHandle&&D?Sg({x:Oe.toHandle.x,y:Oe.toHandle.y},Ce):z,toHandle:Oe.toHandle,toPosition:D&&Oe.toHandle?Oe.toHandle.position:vC[re.position],toNode:Oe.toHandle?h.get(Oe.toHandle.nodeId):null,pointer:z};C(Fe),ge=Fe}function we(Re){if(!("touches"in Re&&Re.touches.length>0)){if($){(X||I)&&F&&D&&(x==null||x(F));const{inProgress:Ce,...Oe}=ge,Xe={...Oe,toPosition:ge.toHandle?ge.toPosition:null};w==null||w(Re,Xe),s&&(T==null||T(Re,Xe))}v(),cancelAnimationFrame(U),q=!1,D=!1,F=null,I=null,H.removeEventListener("mousemove",te),H.removeEventListener("mouseup",we),H.removeEventListener("touchmove",te),H.removeEventListener("touchend",we)}}H.addEventListener("mousemove",te),H.addEventListener("mouseup",we),H.addEventListener("touchmove",te),H.addEventListener("touchend",we)}function UP(t,{handle:e,connectionMode:i,fromNodeId:n,fromHandleId:r,fromType:s,doc:a,lib:c,flowId:h,isValidConnection:u=HP,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}=Cr(t),x=a.elementFromPoint(v,S),w=x!=null&&x.classList.contains(`${c}-flow__handle`)?x:m,_={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const T=YP(void 0,w),C=w.getAttribute("data-nodeid"),Q=w.getAttribute("data-handleid"),M=w.classList.contains("connectable"),E=w.classList.contains("connectableend");if(!C||!T)return _;const L={source:g?C:n,sourceHandle:g?Q:r,target:g?n:C,targetHandle:g?r:Q};_.connection=L;const H=M&&E&&(i===Rc.Strict?g&&T==="source"||!g&&T==="target":C!==n||Q!==r);_.isValid=H&&u(L),_.toHandle=VP(C,T,Q,f,i,!0)}return _}const My={onPointerDown:x6,isValid:UP};function _6({domNode:t,panZoom:e,getTransform:i,getViewScale:n}){const r=qn(t);function s({translateExtent:c,width:h,height:u,zoomStep:f=1,pannable:g=!0,zoomable:m=!0,inversePan:v=!1}){const S=C=>{if(C.sourceEvent.type!=="wheel"||!e)return;const Q=i(),M=C.sourceEvent.ctrlKey&&Xu()?10:1,E=-C.sourceEvent.deltaY*(C.sourceEvent.deltaMode===1?.05:C.sourceEvent.deltaMode?1:.002)*f,L=Q[2]*Math.pow(2,E*M);e.scaleTo(L)};let x=[0,0];const w=C=>{(C.sourceEvent.type==="mousedown"||C.sourceEvent.type==="touchstart")&&(x=[C.sourceEvent.clientX??C.sourceEvent.touches[0].clientX,C.sourceEvent.clientY??C.sourceEvent.touches[0].clientY])},_=C=>{const Q=i();if(C.sourceEvent.type!=="mousemove"&&C.sourceEvent.type!=="touchmove"||!e)return;const M=[C.sourceEvent.clientX??C.sourceEvent.touches[0].clientX,C.sourceEvent.clientY??C.sourceEvent.touches[0].clientY],E=[M[0]-x[0],M[1]-x[1]];x=M;const L=n()*Math.max(Q[2],Math.log(Q[2]))*(v?-1:1),V={x:Q[0]-E[0]*L,y:Q[1]-E[1]*L},H=[[0,0],[h,u]];e.setViewportConstrained({x:V.x,y:V.y,zoom:Q[2]},H,c)},T=_P().on("start",w).on("zoom",g?_:null).on("zoom.wheel",m?S:null);r.call(T,{})}function a(){r.on("zoom",null)}return{update:s,destroy:a,pointer:xr}}const gm=t=>({x:t.x,y:t.y,zoom:t.k}),ov=({x:t,y:e,zoom:i})=>dm.translate(t,e).scale(i),dc=(t,e)=>t.target.closest(`.${e}`),GP=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),w6=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,av=(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},FP=t=>{const e=t.ctrlKey&&Xu()?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:u}){return f=>{if(dc(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=xr(f),_=FP(f),T=g*Math.pow(2,_);n.scaleTo(i,T,w,f);return}const m=f.deltaMode===1?20:1;let v=r===Ja.Vertical?0:f.deltaX*m,S=r===Ja.Horizontal?0:f.deltaY*m;!Xu()&&f.shiftKey&&r!==Ja.Vertical&&(v=f.deltaY*m,S=0),n.translateBy(i,-(v/g)*s,-(S/g)*s,{internal:!0});const x=gm(i.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling?(h==null||h(f,x),t.panScrollTimeout=setTimeout(()=>{u==null||u(f,x),t.isPanScrolling=!1},150)):(t.isPanScrolling=!0,c==null||c(f,x))}}function C6({noWheelClassName:t,preventScrolling:e,d3ZoomHandler:i}){return function(n,r){const s=n.type==="wheel",a=!e&&s&&!n.ctrlKey,c=dc(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=gm(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&&GP(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,gm(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&&GP(e,t.mouseButton??0)&&!t.usedRightMouseButton&&a.sourceEvent&&s(a.sourceEvent),t.usedRightMouseButton=!1,n(!1),r)){const h=gm(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:u,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"&&(dc(g,`${u}-flow__node`)||dc(g,`${u}-flow__edge`)))return!0;if(!n&&!m&&!r&&!s&&!i||a||f&&!S||dc(g,c)&&S||dc(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 x=Array.isArray(n)&&n.includes(g.button)||!g.button||g.button<=1;return(!g.ctrlKey||S)&&x}}function E6({domNode:t,minZoom:e,maxZoom:i,translateExtent:n,viewport:r,onPanZoom:s,onPanZoomStart:a,onPanZoomEnd:c,onDraggingChange:h}){const u={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},f=t.getBoundingClientRect(),g=_P().scaleExtent([e,i]).translateExtent(n),m=qn(t).call(g);T({x:r.x,y:r.y,zoom:Ac(r.zoom,e,i)},[[0,0],[f.width,f.height]],n);const v=m.on("wheel.zoom"),S=m.on("dblclick.zoom");g.wheelDelta(FP);function x(X,R){return m?new Promise(j=>{g==null||g.interpolate((R==null?void 0:R.interpolate)==="linear"?xu:Xp).transform(av(m,R==null?void 0:R.duration,R==null?void 0:R.ease,()=>j(!0)),X)}):Promise.resolve(!1)}function w({noWheelClassName:X,noPanClassName:R,onPaneContextMenu:j,userSelectionActive:P,panOnScroll:N,panOnDrag:$,panOnScrollMode:Z,panOnScrollSpeed:z,preventScrolling:q,zoomOnPinch:F,zoomOnScroll:D,zoomOnDoubleClick:I,zoomActivationKeyPressed:ee,lib:re,onTransformChange:ce,connectionInProgress:fe,paneClickDistance:ge,selectionOnDrag:pe}){P&&!u.isZoomingOrPanning&&_();const te=N&&!ee&&!P;g.clickDistance(pe?1/0:!kr(ge)||ge<0?0:ge);const we=te?k6({zoomPanValues:u,noWheelClassName:X,d3Selection:m,d3Zoom:g,panOnScrollMode:Z,panOnScrollSpeed:z,zoomOnPinch:F,onPanZoomStart:a,onPanZoom:s,onPanZoomEnd:c}):C6({noWheelClassName:X,preventScrolling:q,d3ZoomHandler:v});if(m.on("wheel.zoom",we,{passive:!1}),!P){const Ce=T6({zoomPanValues:u,onDraggingChange:h,onPanZoomStart:a});g.on("start",Ce);const Oe=Q6({zoomPanValues:u,panOnDrag:$,onPaneContextMenu:!!j,onPanZoom:s,onTransformChange:ce});g.on("zoom",Oe);const Xe=$6({zoomPanValues:u,panOnDrag:$,panOnScroll:N,onPaneContextMenu:j,onPanZoomEnd:c,onDraggingChange:h});g.on("end",Xe)}const Re=P6({zoomActivationKeyPressed:ee,panOnDrag:$,zoomOnScroll:D,panOnScroll:N,zoomOnDoubleClick:I,zoomOnPinch:F,userSelectionActive:P,noPanClassName:R,noWheelClassName:X,lib:re,connectionInProgress:fe});g.filter(Re),I?m.on("dblclick.zoom",S):m.on("dblclick.zoom",null)}function _(){g.on("zoom",null)}async function T(X,R,j){const P=ov(X),N=g==null?void 0:g.constrain()(P,R,j);return N&&await x(N),new Promise($=>$(N))}async function C(X,R){const j=ov(X);return await x(j,R),new Promise(P=>P(j))}function Q(X){if(m){const R=ov(X),j=m.property("__zoom");(j.k!==X.zoom||j.x!==X.x||j.y!==X.y)&&(g==null||g.transform(m,R,null,{sync:!0}))}}function M(){const X=m?xP(m.node()):{x:0,y:0,k:1};return{x:X.x,y:X.y,zoom:X.k}}function E(X,R){return m?new Promise(j=>{g==null||g.interpolate((R==null?void 0:R.interpolate)==="linear"?xu:Xp).scaleTo(av(m,R==null?void 0:R.duration,R==null?void 0:R.ease,()=>j(!0)),X)}):Promise.resolve(!1)}function L(X,R){return m?new Promise(j=>{g==null||g.interpolate((R==null?void 0:R.interpolate)==="linear"?xu:Xp).scaleBy(av(m,R==null?void 0:R.duration,R==null?void 0:R.ease,()=>j(!0)),X)}):Promise.resolve(!1)}function V(X){g==null||g.scaleExtent(X)}function H(X){g==null||g.translateExtent(X)}function U(X){const R=!kr(X)||X<0?0:X;g==null||g.clickDistance(R)}return{update:w,destroy:_,setViewport:C,setViewportConstrained:T,getViewport:M,scaleTo:E,scaleBy:L,setScaleExtent:V,setTranslateExtent:H,syncViewport:Q,setClickDistance:U}}var jc;(function(t){t.Line="line",t.Handle="handle"})(jc||(jc={}));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 EC(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 jo(t,e){return Math.max(0,e-t)}function Do(t,e){return Math.max(0,t-e)}function ep(t,e,i){return Math.max(0,e-t,t-i)}function RC(t,e){return t?!e:e}function A6(t,e,i,n,r,s,a,c){let{affectsX:h,affectsY:u}=e;const{isHorizontal:f,isVertical:g}=e,m=f&&g,{xSnapped:v,ySnapped:S}=i,{minWidth:x,maxWidth:w,minHeight:_,maxHeight:T}=n,{x:C,y:Q,width:M,height:E,aspectRatio:L}=t;let V=Math.floor(f?v-t.pointerX:0),H=Math.floor(g?S-t.pointerY:0);const U=M+(h?-V:V),X=E+(u?-H:H),R=-s[0]*M,j=-s[1]*E;let P=ep(U,x,w),N=ep(X,_,T);if(a){let z=0,q=0;h&&V<0?z=jo(C+V+R,a[0][0]):!h&&V>0&&(z=Do(C+U+R,a[1][0])),u&&H<0?q=jo(Q+H+j,a[0][1]):!u&&H>0&&(q=Do(Q+X+j,a[1][1])),P=Math.max(P,z),N=Math.max(N,q)}if(c){let z=0,q=0;h&&V>0?z=Do(C+V,c[0][0]):!h&&V<0&&(z=jo(C+U,c[1][0])),u&&H>0?q=Do(Q+H,c[0][1]):!u&&H<0&&(q=jo(Q+X,c[1][1])),P=Math.max(P,z),N=Math.max(N,q)}if(r){if(f){const z=ep(U/L,_,T)*L;if(P=Math.max(P,z),a){let q=0;!h&&!u||h&&!u&&m?q=Do(Q+j+U/L,a[1][1])*L:q=jo(Q+j+(h?V:-V)/L,a[0][1])*L,P=Math.max(P,q)}if(c){let q=0;!h&&!u||h&&!u&&m?q=jo(Q+U/L,c[1][1])*L:q=Do(Q+(h?V:-V)/L,c[0][1])*L,P=Math.max(P,q)}}if(g){const z=ep(X*L,x,w)/L;if(N=Math.max(N,z),a){let q=0;!h&&!u||u&&!h&&m?q=Do(C+X*L+R,a[1][0])/L:q=jo(C+(u?H:-H)*L+R,a[0][0])/L,N=Math.max(N,q)}if(c){let q=0;!h&&!u||u&&!h&&m?q=jo(C+X*L,c[1][0])/L:q=Do(C+(u?H:-H)*L,c[0][0])/L,N=Math.max(N,q)}}}H=H+(H<0?N:-N),V=V+(V<0?P:-P),r&&(m?U>X*L?H=(RC(h,u)?-V:V)/L:V=(RC(h,u)?-H:H)*L:f?(H=V/L,u=h):(V=H*L,h=u));const $=h?C+V:C,Z=u?Q+H:Q;return{width:M+(h?-V:V),height:E+(u?-H:H),x:s[0]*V*(h?-1:1)+$,y:s[1]*H*(u?-1:1)+Z}}const KP={width:0,height:0,x:0,y:0},M6={...KP,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=qn(t);let a={controlDirection:EC("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function c({controlPosition:u,boundaries:f,keepAspectRatio:g,resizeDirection:m,onResizeStart:v,onResize:S,onResizeEnd:x,shouldResize:w}){let _={...KP},T={...M6};a={boundaries:f,resizeDirection:m,keepAspectRatio:g,controlDirection:EC(u)};let C,Q=null,M=[],E,L,V,H=!1;const U=lP().on("start",X=>{const{nodeLookup:R,transform:j,snapGrid:P,snapToGrid:N,nodeOrigin:$,paneDomNode:Z}=i();if(C=R.get(e),!C)return;Q=(Z==null?void 0:Z.getBoundingClientRect())??null;const{xSnapped:z,ySnapped:q}=_u(X.sourceEvent,{transform:j,snapGrid:P,snapToGrid:N,containerBounds:Q});_={width:C.measured.width??0,height:C.measured.height??0,x:C.position.x??0,y:C.position.y??0},T={..._,pointerX:z,pointerY:q,aspectRatio:_.width/_.height},E=void 0,C.parentId&&(C.extent==="parent"||C.expandParent)&&(E=R.get(C.parentId),L=E&&C.extent==="parent"?z6(E):void 0),M=[],V=void 0;for(const[F,D]of R)if(D.parentId===e&&(M.push({id:F,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(X,{..._})}).on("drag",X=>{const{transform:R,snapGrid:j,snapToGrid:P,nodeOrigin:N}=i(),$=_u(X.sourceEvent,{transform:R,snapGrid:j,snapToGrid:P,containerBounds:Q}),Z=[];if(!C)return;const{x:z,y:q,width:F,height:D}=_,I={},ee=C.origin??N,{width:re,height:ce,x:fe,y:ge}=A6(T,a.controlDirection,$,a.boundaries,a.keepAspectRatio,ee,L,V),pe=re!==F,te=ce!==D,we=fe!==z&&pe,Re=ge!==q&&te;if(!we&&!Re&&!pe&&!te)return;if((we||Re||ee[0]===1||ee[1]===1)&&(I.x=we?fe:_.x,I.y=Re?ge:_.y,_.x=I.x,_.y=I.y,M.length>0)){const st=fe-z,Fe=ge-q;for(const Lt of M)Lt.position={x:Lt.position.x-st+ee[0]*(re-F),y:Lt.position.y-Fe+ee[1]*(ce-D)},Z.push(Lt)}if((pe||te)&&(I.width=pe&&(!a.resizeDirection||a.resizeDirection==="horizontal")?re:_.width,I.height=te&&(!a.resizeDirection||a.resizeDirection==="vertical")?ce:_.height,_.width=I.width,_.height=I.height),E&&C.expandParent){const st=ee[0]*(I.width??0);I.x&&I.x<st&&(_.x=st,T.x=T.x-(I.x-st));const Fe=ee[1]*(I.height??0);I.y&&I.y<Fe&&(_.y=Fe,T.y=T.y-(I.y-Fe))}const Ce=R6({width:_.width,prevWidth:F,height:_.height,prevHeight:D,affectsX:a.controlDirection.affectsX,affectsY:a.controlDirection.affectsY}),Oe={..._,direction:Ce};(w==null?void 0:w(X,Oe))!==!1&&(H=!0,S==null||S(X,Oe),n(I,Z))}).on("end",X=>{H&&(x==null||x(X,{..._}),r==null||r({..._}),H=!1)});s.call(U)}function h(){s.on(".drag",null)}return{update:c,destroy:h}}var lv={exports:{}},cv={},hv={exports:{}},uv={};/**
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 AC;function B6(){if(AC)return uv;AC=1;var t=cd();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}}),x=S[0].inst,w=S[1];return s(function(){x.value=v,x.getSnapshot=m,h(x)&&w({inst:x})},[g,v,m]),r(function(){return h(x)&&w({inst:x}),g(function(){h(x)&&w({inst:x})})},[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 u(g,m){return m()}var f=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?u:c;return uv.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:f,uv}var MC;function L6(){return MC||(MC=1,hv.exports=B6()),hv.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 zC;function X6(){if(zC)return cv;zC=1;var t=cd(),e=L6();function i(u,f){return u===f&&(u!==0||1/u===1/f)||u!==u&&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 cv.useSyncExternalStoreWithSelector=function(u,f,g,m,v){var S=s(null);if(S.current===null){var x={hasValue:!1,value:null};S.current=x}else x=S.current;S=c(function(){function _(E){if(!T){if(T=!0,C=E,E=m(E),v!==void 0&&x.hasValue){var L=x.value;if(v(L,E))return Q=L}return Q=E}if(L=Q,n(C,E))return L;var V=m(E);return v!==void 0&&v(L,V)?(C=E,L):(C=E,Q=V)}var T=!1,C,Q,M=g===void 0?null:g;return[function(){return _(f())},M===null?void 0:function(){return _(M())}]},[f,g,m,v]);var w=r(u,S[0],S[1]);return a(function(){x.hasValue=!0,x.value=w},[w]),h(w),w},cv}var jC;function N6(){return jC||(jC=1,lv.exports=X6()),lv.exports}var Z6=N6();const W6=V$(Z6),q6={},DC=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:()=>u,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()}},u=e=t(n,r,h);return h},I6=t=>t?DC(t):DC,{useDebugValue:V6}=Wn,{useSyncExternalStoreWithSelector:Y6}=W6,H6=t=>t;function JP(t,e=H6,i){const n=Y6(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,i);return V6(n),n}const BC=(t,e)=>{const i=I6(t),n=(r,s=e)=>JP(i,r,s);return Object.assign(n,i),n},U6=(t,e)=>t?BC(t,e):BC;function jt(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}Y$();const mm=B.createContext(null),G6=mm.Provider,eE=rs.error001();function at(t,e){const i=B.useContext(mm);if(i===null)throw new Error(eE);return JP(i,t,e)}function Bt(){const t=B.useContext(mm);if(t===null)throw new Error(eE);return B.useMemo(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe}),[t])}const LC={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%)"},tE="react-flow__node-desc",iE="react-flow__edge-desc",K6="react-flow__aria-live",J6=t=>t.ariaLiveMessage,eX=t=>t.ariaLabelConfig;function tX({rfId:t}){const e=at(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=at(eX);return O.jsxs(O.Fragment,{children:[O.jsx("div",{id:`${tE}-${t}`,style:LC,children:e?i["node.a11yDescription.default"]:i["node.a11yDescription.keyboardDisabled"]}),O.jsx("div",{id:`${iE}-${t}`,style:LC,children:i["edge.a11yDescription.default"]}),!e&&O.jsx(tX,{rfId:t})]})}const Om=B.forwardRef(({position:t="top-left",children:e,className:i,style:n,...r},s)=>{const a=`${t}`.split("-");return O.jsx("div",{className:di(["react-flow__panel",i,...a]),style:n,ref:s,...r,children:e})});Om.displayName="Panel";function nX({proOptions:t,position:e="bottom-right"}){return t!=null&&t.hideAttribution?null:O.jsx(Om,{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}},tp=t=>t.id;function sX(t,e){return jt(t.selectedNodes.map(tp),e.selectedNodes.map(tp))&&jt(t.selectedEdges.map(tp),e.selectedEdges.map(tp))}function oX({onSelectionChange:t}){const e=Bt(),{selectedNodes:i,selectedEdges:n}=at(rX,sX);return B.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=at(aX);return t||e?O.jsx(oX,{onSelectionChange:t}):null}const zy=typeof window<"u"?B.useLayoutEffect:B.useEffect,nE=[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"],XC=[...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}),NC={translateExtent:Du,nodeOrigin:nE,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}=at(uX,jt),u=Bt();zy(()=>(h(t.defaultNodes,t.defaultEdges),()=>{f.current=NC,c()}),[]);const f=B.useRef(NC);return zy(()=>{for(const g of XC){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"?u.setState({ariaLabelConfig:UL(m)}):g==="fitView"?u.setState({fitViewQueued:m}):g==="fitViewOptions"?u.setState({fitViewOptions:m}):u.setState({[g]:m})))}f.current=t},XC.map(g=>t[g])),null}function ZC(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function fX(t){var n;const[e,i]=B.useState(t==="system"?null:t);return B.useEffect(()=>{if(t!=="system"){i(t);return}const r=ZC(),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=ZC())!=null&&n.matches?"dark":"light"}const WC=typeof document<"u"?document:null;function Nu(t=null,e={target:WC,actInsideInputWithModifier:!0}){const[i,n]=B.useState(!1),r=B.useRef(!1),s=B.useRef(new Set([])),[a,c]=B.useMemo(()=>{if(t!==null){const u=(Array.isArray(t)?t:[t]).filter(g=>typeof g=="string").map(g=>g.replace("+",`
66
+ `).replace(`
67
+
68
+ `,`
69
+ +`).split(`
70
+ `)),f=u.reduce((g,m)=>g.concat(...m),[]);return[u,f]}return[[],[]]},[t]);return B.useEffect(()=>{const h=(e==null?void 0:e.target)??WC,u=(e==null?void 0:e.actInsideInputWithModifier)??!0;if(t!==null){const f=v=>{var w,_;if(r.current=v.ctrlKey||v.metaKey||v.shiftKey||v.altKey,(!r.current||r.current&&!u)&&jP(v))return!1;const x=IC(v.code,c);if(s.current.add(v[x]),qC(a,s.current,!1)){const T=((_=(w=v.composedPath)==null?void 0:w.call(v))==null?void 0:_[0])||v.target,C=(T==null?void 0:T.nodeName)==="BUTTON"||(T==null?void 0:T.nodeName)==="A";e.preventDefault!==!1&&(r.current||!C)&&v.preventDefault(),n(!0)}},g=v=>{const S=IC(v.code,c);qC(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 qC(t,e,i){return t.filter(n=>i||n.length===e.size).some(n=>n.every(r=>e.has(r)))}function IC(t,e){return e.includes(t)?"code":"key"}const pX=()=>{const t=Bt();return B.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=E1(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(),u={x:e.x-c,y:e.y-h},f=i.snapGrid??r,g=i.snapToGrid??s;return gd(u,n,g,f)},flowToScreenPosition:e=>{const{transform:i,domNode:n}=t.getState();if(!n)return e;const{x:r,y:s}=n.getBoundingClientRect(),a=Sg(e,i);return{x:a.x+r,y:a.y+s}}}),[])};function rE(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 sE(t,e){return rE(t,e)}function mX(t,e){return rE(t,e)}function La(t,e){return{id:t,type:"select",selected:e}}function fc(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(La(s.id,a)))}return n}function VC({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 YC(t){return{id:t.id,type:"remove"}}const HC=t=>LL(t),OX=t=>QP(t);function oE(t){return B.forwardRef(t)}function UC(t){const[e,i]=B.useState(BigInt(0)),[n]=B.useState(()=>vX(()=>i(r=>r+BigInt(1))));return zy(()=>{const r=n.get();r.length&&(t(r),n.reset())},[e]),n}function vX(t){let e=[];return{get:()=>e,reset:()=>{e=[]},push:i=>{e.push(i),t()}}}const aE=B.createContext(null);function yX({children:t}){const e=Bt(),i=B.useCallback(c=>{const{nodes:h=[],setNodes:u,hasDefaultNodes:f,onNodesChange:g,nodeLookup:m,fitViewQueued:v,onNodesChangeMiddlewareMap:S}=e.getState();let x=h;for(const _ of c)x=typeof _=="function"?_(x):_;let w=VC({items:x,lookup:m});for(const _ of S.values())w=_(w);f&&u(x),w.length>0?g==null||g(w):v&&window.requestAnimationFrame(()=>{const{fitViewQueued:_,nodes:T,setNodes:C}=e.getState();_&&C(T)})},[]),n=UC(i),r=B.useCallback(c=>{const{edges:h=[],setEdges:u,hasDefaultEdges:f,onEdgesChange:g,edgeLookup:m}=e.getState();let v=h;for(const S of c)v=typeof S=="function"?S(v):S;f?u(v):g&&g(VC({items:v,lookup:m}))},[]),s=UC(r),a=B.useMemo(()=>({nodeQueue:n,edgeQueue:s}),[]);return O.jsx(aE.Provider,{value:a,children:t})}function SX(){const t=B.useContext(aE);if(!t)throw new Error("useBatchContext must be used within a BatchProvider");return t}const bX=t=>!!t.panZoom;function vm(){const t=pX(),e=Bt(),i=SX(),n=at(bX),r=B.useMemo(()=>{const s=g=>e.getState().nodeLookup.get(g),a=g=>{i.nodeQueue.push(g)},c=g=>{i.edgeQueue.push(g)},h=g=>{var _,T;const{nodeLookup:m,nodeOrigin:v}=e.getState(),S=HC(g)?g:m.get(g.id),x=S.parentId?MP(S.position,S.measured,S.parentId,m,v):S.position,w={...S,position:x,width:((_=S.measured)==null?void 0:_.width)??S.width,height:((T=S.measured)==null?void 0:T.height)??S.height};return Mc(w)},u=(g,m,v={replace:!1})=>{a(S=>S.map(x=>{if(x.id===g){const w=typeof m=="function"?m(x):m;return v.replace&&HC(w)?w:{...x,...w}}return x}))},f=(g,m,v={replace:!1})=>{c(S=>S.map(x=>{if(x.id===g){const w=typeof m=="function"?m(x):m;return v.replace&&OX(w)?w:{...x,...w}}return x}))};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,x,w]=v;return{nodes:g.map(_=>({..._})),edges:m.map(_=>({..._})),viewport:{x:S,y:x,zoom:w}}},deleteElements:async({nodes:g=[],edges:m=[]})=>{const{nodes:v,edges:S,onNodesDelete:x,onEdgesDelete:w,triggerNodeChanges:_,triggerEdgeChanges:T,onDelete:C,onBeforeDelete:Q}=e.getState(),{nodes:M,edges:E}=await qL({nodesToRemove:g,edgesToRemove:m,nodes:v,edges:S,onBeforeDelete:Q}),L=E.length>0,V=M.length>0;if(L){const H=E.map(YC);w==null||w(E),T(H)}if(V){const H=M.map(YC);x==null||x(M),_(H)}return(V||L)&&(C==null||C({nodes:M,edges:E})),{deletedNodes:M,deletedEdges:E}},getIntersectingNodes:(g,m=!0,v)=>{const S=SC(g),x=S?g:h(g),w=v!==void 0;return x?(v||e.getState().nodes).filter(_=>{const T=e.getState().nodeLookup.get(_.id);if(T&&!S&&(_.id===g.id||!T.internals.positionAbsolute))return!1;const C=Mc(w?_:T),Q=Lu(C,x);return m&&Q>0||Q>=C.width*C.height||Q>=x.width*x.height}):[]},isNodeIntersecting:(g,m,v=!0)=>{const x=SC(g)?g:h(g);if(!x)return!1;const w=Lu(x,m);return v&&w>0||w>=m.width*m.height||w>=x.width*x.height},updateNode:u,updateNodeData:(g,m,v={replace:!1})=>{u(g,S=>{const x=typeof m=="function"?m(S):m;return v.replace?{...S,data:x}:{...S,data:{...S.data,...x}}},v)},updateEdge:f,updateEdgeData:(g,m,v={replace:!1})=>{f(g,S=>{const x=typeof m=="function"?m(S):m;return v.replace?{...S,data:x}:{...S,data:{...S.data,...x}}},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 B.useMemo(()=>({...r,...t,viewportInitialized:n}),[n])}const GC=t=>t.selected,xX=typeof window<"u"?window:void 0;function _X({deleteKeyCode:t,multiSelectionKeyCode:e}){const i=Bt(),{deleteElements:n}=vm(),r=Nu(t,{actInsideInputWithModifier:!1}),s=Nu(e,{target:xX});B.useEffect(()=>{if(r){const{edges:a,nodes:c}=i.getState();n({nodes:c.filter(GC),edges:a.filter(GC)}),i.setState({nodesSelectionActive:!1})}},[r]),B.useEffect(()=>{i.setState({multiSelectionActive:s})},[s])}function wX(t){const e=Bt();B.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=R1(t.current);(n.height===0||n.width===0)&&((c=(a=e.getState()).onError)==null||c.call(a,"004",rs.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 ym={position:"absolute",width:"100%",height:"100%",top:0,left:0},kX=t=>({userSelectionActive:t.userSelectionActive,lib:t.lib,connectionInProgress:t.connection.inProgress});function CX({onPaneContextMenu:t,zoomOnScroll:e=!0,zoomOnPinch:i=!0,panOnScroll:n=!1,panOnScrollSpeed:r=.5,panOnScrollMode:s=Ja.Free,zoomOnDoubleClick:a=!0,panOnDrag:c=!0,defaultViewport:h,translateExtent:u,minZoom:f,maxZoom:g,zoomActivationKeyCode:m,preventScrolling:v=!0,children:S,noWheelClassName:x,noPanClassName:w,onViewportChange:_,isControlledViewport:T,paneClickDistance:C,selectionOnDrag:Q}){const M=Bt(),E=B.useRef(null),{userSelectionActive:L,lib:V,connectionInProgress:H}=at(kX,jt),U=Nu(m),X=B.useRef();wX(E);const R=B.useCallback(j=>{_==null||_({x:j[0],y:j[1],zoom:j[2]}),T||M.setState({transform:j})},[_,T]);return B.useEffect(()=>{if(E.current){X.current=E6({domNode:E.current,minZoom:f,maxZoom:g,translateExtent:u,viewport:h,onDraggingChange:$=>M.setState(Z=>Z.paneDragging===$?Z:{paneDragging:$}),onPanZoomStart:($,Z)=>{const{onViewportChangeStart:z,onMoveStart:q}=M.getState();q==null||q($,Z),z==null||z(Z)},onPanZoom:($,Z)=>{const{onViewportChange:z,onMove:q}=M.getState();q==null||q($,Z),z==null||z(Z)},onPanZoomEnd:($,Z)=>{const{onViewportChangeEnd:z,onMoveEnd:q}=M.getState();q==null||q($,Z),z==null||z(Z)}});const{x:j,y:P,zoom:N}=X.current.getViewport();return M.setState({panZoom:X.current,transform:[j,P,N],domNode:E.current.closest(".react-flow")}),()=>{var $;($=X.current)==null||$.destroy()}}},[]),B.useEffect(()=>{var j;(j=X.current)==null||j.update({onPaneContextMenu:t,zoomOnScroll:e,zoomOnPinch:i,panOnScroll:n,panOnScrollSpeed:r,panOnScrollMode:s,zoomOnDoubleClick:a,panOnDrag:c,zoomActivationKeyPressed:U,preventScrolling:v,noPanClassName:w,userSelectionActive:L,noWheelClassName:x,lib:V,onTransformChange:R,connectionInProgress:H,selectionOnDrag:Q,paneClickDistance:C})},[t,e,i,n,r,s,a,c,U,v,w,L,x,V,R,H,Q,C]),O.jsx("div",{className:"react-flow__renderer",ref:E,style:ym,children:S})}const TX=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function QX(){const{userSelectionActive:t,userSelectionRect:e}=at(TX,jt);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 dv=(t,e)=>i=>{i.target===e.current&&(t==null||t(i))},$X=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,connectionInProgress:t.connection.inProgress,dragging:t.paneDragging});function PX({isSelecting:t,selectionKeyPressed:e,selectionMode:i=Bu.Full,panOnDrag:n,paneClickDistance:r,selectionOnDrag:s,onSelectionStart:a,onSelectionEnd:c,onPaneClick:h,onPaneContextMenu:u,onPaneScroll:f,onPaneMouseEnter:g,onPaneMouseMove:m,onPaneMouseLeave:v,children:S}){const x=Bt(),{userSelectionActive:w,elementsSelectable:_,dragging:T,connectionInProgress:C}=at($X,jt),Q=_&&(t||w),M=B.useRef(null),E=B.useRef(),L=B.useRef(new Set),V=B.useRef(new Set),H=B.useRef(!1),U=z=>{if(H.current||C){H.current=!1;return}h==null||h(z),x.getState().resetSelectedElements(),x.setState({nodesSelectionActive:!1})},X=z=>{if(Array.isArray(n)&&(n!=null&&n.includes(2))){z.preventDefault();return}u==null||u(z)},R=f?z=>f(z):void 0,j=z=>{H.current&&(z.stopPropagation(),H.current=!1)},P=z=>{var ce,fe;const{domNode:q}=x.getState();if(E.current=q==null?void 0:q.getBoundingClientRect(),!E.current)return;const F=z.target===M.current;if(!F&&!!z.target.closest(".nokey")||!t||!(s&&F||e)||z.button!==0||!z.isPrimary)return;(fe=(ce=z.target)==null?void 0:ce.setPointerCapture)==null||fe.call(ce,z.pointerId),H.current=!1;const{x:ee,y:re}=Cr(z.nativeEvent,E.current);x.setState({userSelectionRect:{width:0,height:0,startX:ee,startY:re,x:ee,y:re}}),F||(z.stopPropagation(),z.preventDefault())},N=z=>{const{userSelectionRect:q,transform:F,nodeLookup:D,edgeLookup:I,connectionLookup:ee,triggerNodeChanges:re,triggerEdgeChanges:ce,defaultEdgeOptions:fe,resetSelectedElements:ge}=x.getState();if(!E.current||!q)return;const{x:pe,y:te}=Cr(z.nativeEvent,E.current),{startX:we,startY:Re}=q;if(!H.current){const Fe=e?0:r;if(Math.hypot(pe-we,te-Re)<=Fe)return;ge(),a==null||a(z)}H.current=!0;const Ce={startX:we,startY:Re,x:pe<we?pe:we,y:te<Re?te:Re,width:Math.abs(pe-we),height:Math.abs(te-Re)},Oe=L.current,Xe=V.current;L.current=new Set(P1(D,Ce,F,i===Bu.Partial,!0).map(Fe=>Fe.id)),V.current=new Set;const st=(fe==null?void 0:fe.selectable)??!0;for(const Fe of L.current){const Lt=ee.get(Fe);if(Lt)for(const{edgeId:Si}of Lt.values()){const Pi=I.get(Si);Pi&&(Pi.selectable??st)&&V.current.add(Si)}}if(!bC(Oe,L.current)){const Fe=fc(D,L.current,!0);re(Fe)}if(!bC(Xe,V.current)){const Fe=fc(I,V.current);ce(Fe)}x.setState({userSelectionRect:Ce,userSelectionActive:!0,nodesSelectionActive:!1})},$=z=>{var q,F;z.button===0&&((F=(q=z.target)==null?void 0:q.releasePointerCapture)==null||F.call(q,z.pointerId),!w&&z.target===M.current&&x.getState().userSelectionRect&&(U==null||U(z)),x.setState({userSelectionActive:!1,userSelectionRect:null}),H.current&&(c==null||c(z),x.setState({nodesSelectionActive:L.current.size>0})))},Z=n===!0||Array.isArray(n)&&n.includes(0);return O.jsxs("div",{className:di(["react-flow__pane",{draggable:Z,dragging:T,selection:t}]),onClick:Q?void 0:dv(U,M),onContextMenu:dv(X,M),onWheel:dv(R,M),onPointerEnter:Q?void 0:g,onPointerMove:Q?N:m,onPointerUp:Q?$:void 0,onPointerDownCapture:Q?P:void 0,onClickCapture:Q?j:void 0,onPointerLeave:v,ref:M,style:ym,children:[S,O.jsx(QX,{})]})}function jy({id:t,store:e,unselect:i=!1,nodeRef:n}){const{addSelectedNodes:r,unselectNodesAndEdges:s,multiSelectionActive:a,nodeLookup:c,onError:h}=e.getState(),u=c.get(t);if(!u){h==null||h("012",rs.error012(t));return}e.setState({nodesSelectionActive:!1}),u.selected?(i||u.selected&&a)&&(s({nodes:[u],edges:[]}),requestAnimationFrame(()=>{var f;return(f=n==null?void 0:n.current)==null?void 0:f.blur()})):r([t])}function lE({nodeRef:t,disabled:e=!1,noDragClassName:i,handleSelector:n,nodeId:r,isSelectable:s,nodeClickDistance:a}){const c=Bt(),[h,u]=B.useState(!1),f=B.useRef();return B.useEffect(()=>{f.current=O6({getStoreItems:()=>c.getState(),onNodeMouseDown:g=>{jy({id:g,store:c,nodeRef:t})},onDragStart:()=>{u(!0)},onDragStop:()=>{u(!1)}})},[]),B.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 EX=t=>e=>e.selected&&(e.draggable||t&&typeof e.draggable>"u");function cE(){const t=Bt();return B.useCallback(i=>{const{nodeExtent:n,snapToGrid:r,snapGrid:s,nodesDraggable:a,onError:c,updateNodePositions:h,nodeLookup:u,nodeOrigin:f}=t.getState(),g=new Map,m=EX(a),v=r?s[0]:5,S=r?s[1]:5,x=i.direction.x*v*i.factor,w=i.direction.y*S*i.factor;for(const[,_]of u){if(!m(_))continue;let T={x:_.internals.positionAbsolute.x+x,y:_.internals.positionAbsolute.y+w};r&&(T=pd(T,s));const{position:C,positionAbsolute:Q}=$P({nodeId:_.id,nextPosition:T,nodeLookup:u,nodeExtent:n,nodeOrigin:f,onError:c});_.position=C,_.internals.positionAbsolute=Q,g.set(_.id,_)}h(g)},[])}const B1=B.createContext(null),RX=B1.Provider;B1.Consumer;const hE=()=>B.useContext(B1),AX=t=>({connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName,rfId:t.rfId}),MX=(t,e,i)=>n=>{const{connectionClickStartHandle:r,connectionMode:s,connection:a}=n,{fromHandle:c,toHandle:h,isValid:u}=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===Rc.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&&u}};function zX({type:t="source",position:e=Te.Top,isValidConnection:i,isConnectable:n=!0,isConnectableStart:r=!0,isConnectableEnd:s=!0,id:a,onConnect:c,children:h,className:u,onMouseDown:f,onTouchStart:g,...m},v){var N,$;const S=a||null,x=t==="target",w=Bt(),_=hE(),{connectOnClick:T,noPanClassName:C,rfId:Q}=at(AX,jt),{connectingFrom:M,connectingTo:E,clickConnecting:L,isPossibleEndHandle:V,connectionInProcess:H,clickConnectionInProcess:U,valid:X}=at(MX(_,S,t),jt);_||($=(N=w.getState()).onError)==null||$.call(N,"010",rs.error010());const R=Z=>{const{defaultEdgeOptions:z,onConnect:q,hasDefaultEdges:F}=w.getState(),D={...z,...Z};if(F){const{edges:I,setEdges:ee}=w.getState();ee(t6(D,I))}q==null||q(D),c==null||c(D)},j=Z=>{if(!_)return;const z=DP(Z.nativeEvent);if(r&&(z&&Z.button===0||!z)){const q=w.getState();My.onPointerDown(Z.nativeEvent,{handleDomNode:Z.currentTarget,autoPanOnConnect:q.autoPanOnConnect,connectionMode:q.connectionMode,connectionRadius:q.connectionRadius,domNode:q.domNode,nodeLookup:q.nodeLookup,lib:q.lib,isTarget:x,handleId:S,nodeId:_,flowId:q.rfId,panBy:q.panBy,cancelConnection:q.cancelConnection,onConnectStart:q.onConnectStart,onConnectEnd:(...F)=>{var D,I;return(I=(D=w.getState()).onConnectEnd)==null?void 0:I.call(D,...F)},updateConnection:q.updateConnection,onConnect:R,isValidConnection:i||((...F)=>{var D,I;return((I=(D=w.getState()).isValidConnection)==null?void 0:I.call(D,...F))??!0}),getTransform:()=>w.getState().transform,getFromHandle:()=>w.getState().connection.fromHandle,autoPanSpeed:q.autoPanSpeed,dragThreshold:q.connectionDragThreshold})}z?f==null||f(Z):g==null||g(Z)},P=Z=>{const{onClickConnectStart:z,onClickConnectEnd:q,connectionClickStartHandle:F,connectionMode:D,isValidConnection:I,lib:ee,rfId:re,nodeLookup:ce,connection:fe}=w.getState();if(!_||!F&&!r)return;if(!F){z==null||z(Z.nativeEvent,{nodeId:_,handleId:S,handleType:t}),w.setState({connectionClickStartHandle:{nodeId:_,type:t,id:S}});return}const ge=zP(Z.target),pe=i||I,{connection:te,isValid:we}=My.isValid(Z.nativeEvent,{handle:{nodeId:_,id:S,type:t},connectionMode:D,fromNodeId:F.nodeId,fromHandleId:F.id||null,fromType:F.type,isValidConnection:pe,flowId:re,doc:ge,lib:ee,nodeLookup:ce});we&&te&&R(te);const Re=structuredClone(fe);delete Re.inProgress,Re.toPosition=Re.toHandle?Re.toHandle.position:null,q==null||q(Z,Re),w.setState({connectionClickStartHandle:null})};return O.jsx("div",{"data-handleid":S,"data-nodeid":_,"data-handlepos":e,"data-id":`${Q}-${_}-${S}-${t}`,className:di(["react-flow__handle",`react-flow__handle-${e}`,"nodrag",C,u,{source:!x,target:x,connectable:n,connectablestart:r,connectableend:s,clickconnecting:L,connectingfrom:M,connectingto:E,valid:X,connectionindicator:n&&(!H||V)&&(H||U?s:r)}]),onMouseDown:j,onTouchStart:j,onClick:T?P:void 0,ref:v,...m,children:h})}const Hi=B.memo(oE(zX));function jX({data:t,isConnectable:e,sourcePosition:i=Te.Bottom}){return O.jsxs(O.Fragment,{children:[t==null?void 0:t.label,O.jsx(Hi,{type:"source",position:i,isConnectable:e})]})}function DX({data:t,isConnectable:e,targetPosition:i=Te.Top,sourcePosition:n=Te.Bottom}){return O.jsxs(O.Fragment,{children:[O.jsx(Hi,{type:"target",position:i,isConnectable:e}),t==null?void 0:t.label,O.jsx(Hi,{type:"source",position:n,isConnectable:e})]})}function BX(){return null}function LX({data:t,isConnectable:e,targetPosition:i=Te.Top}){return O.jsxs(O.Fragment,{children:[O.jsx(Hi,{type:"target",position:i,isConnectable:e}),t==null?void 0:t.label]})}const bg={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},FC={input:jX,default:DX,output:LX,group:BX};function XX(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 NX=t=>{const{width:e,height:i,x:n,y:r}=fd(t.nodeLookup,{filter:s=>!!s.selected});return{width:kr(e)?e:null,height:kr(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 ZX({onSelectionContextMenu:t,noPanClassName:e,disableKeyboardA11y:i}){const n=Bt(),{width:r,height:s,transformString:a,userSelectionActive:c}=at(NX,jt),h=cE(),u=B.useRef(null);B.useEffect(()=>{var v;i||(v=u.current)==null||v.focus({preventScroll:!0})},[i]);const f=!c&&r!==null&&s!==null;if(lE({nodeRef:u,disabled:!f}),!f)return null;const g=t?v=>{const S=n.getState().nodes.filter(x=>x.selected);t(v,S)}:void 0,m=v=>{Object.prototype.hasOwnProperty.call(bg,v.key)&&(v.preventDefault(),h({direction:bg[v.key],factor:v.shiftKey?4:1}))};return O.jsx("div",{className:di(["react-flow__nodesselection","react-flow__container",e]),style:{transform:a},children:O.jsx("div",{ref:u,className:"react-flow__nodesselection-rect",onContextMenu:g,tabIndex:i?void 0:-1,onKeyDown:i?void 0:m,style:{width:r,height:s}})})}const KC=typeof window<"u"?window:void 0,WX=t=>({nodesSelectionActive:t.nodesSelectionActive,userSelectionActive:t.userSelectionActive});function uE({children:t,onPaneClick:e,onPaneMouseEnter:i,onPaneMouseMove:n,onPaneMouseLeave:r,onPaneContextMenu:s,onPaneScroll:a,paneClickDistance:c,deleteKeyCode:h,selectionKeyCode:u,selectionOnDrag:f,selectionMode:g,onSelectionStart:m,onSelectionEnd:v,multiSelectionKeyCode:S,panActivationKeyCode:x,zoomActivationKeyCode:w,elementsSelectable:_,zoomOnScroll:T,zoomOnPinch:C,panOnScroll:Q,panOnScrollSpeed:M,panOnScrollMode:E,zoomOnDoubleClick:L,panOnDrag:V,defaultViewport:H,translateExtent:U,minZoom:X,maxZoom:R,preventScrolling:j,onSelectionContextMenu:P,noWheelClassName:N,noPanClassName:$,disableKeyboardA11y:Z,onViewportChange:z,isControlledViewport:q}){const{nodesSelectionActive:F,userSelectionActive:D}=at(WX,jt),I=Nu(u,{target:KC}),ee=Nu(x,{target:KC}),re=ee||V,ce=ee||Q,fe=f&&re!==!0,ge=I||D||fe;return _X({deleteKeyCode:h,multiSelectionKeyCode:S}),O.jsx(CX,{onPaneContextMenu:s,elementsSelectable:_,zoomOnScroll:T,zoomOnPinch:C,panOnScroll:ce,panOnScrollSpeed:M,panOnScrollMode:E,zoomOnDoubleClick:L,panOnDrag:!I&&re,defaultViewport:H,translateExtent:U,minZoom:X,maxZoom:R,zoomActivationKeyCode:w,preventScrolling:j,noWheelClassName:N,noPanClassName:$,onViewportChange:z,isControlledViewport:q,paneClickDistance:c,selectionOnDrag:fe,children:O.jsxs(PX,{onSelectionStart:m,onSelectionEnd:v,onPaneClick:e,onPaneMouseEnter:i,onPaneMouseMove:n,onPaneMouseLeave:r,onPaneContextMenu:s,onPaneScroll:a,panOnDrag:re,isSelecting:!!ge,selectionMode:g,selectionKeyPressed:I,paneClickDistance:c,selectionOnDrag:fe,children:[t,F&&O.jsx(ZX,{onSelectionContextMenu:P,noPanClassName:$,disableKeyboardA11y:Z})]})})}uE.displayName="FlowRenderer";const qX=B.memo(uE),IX=t=>e=>t?P1(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 VX(t){return at(B.useCallback(IX(t),[t]),jt)}const YX=t=>t.updateNodeInternals;function HX(){const t=at(YX),[e]=B.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 B.useEffect(()=>()=>{e==null||e.disconnect()},[e]),e}function UX({node:t,nodeType:e,hasDimensions:i,resizeObserver:n}){const r=Bt(),s=B.useRef(null),a=B.useRef(null),c=B.useRef(t.sourcePosition),h=B.useRef(t.targetPosition),u=B.useRef(e),f=i&&!!t.internals.handleBounds;return B.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]),B.useEffect(()=>()=>{a.current&&(n==null||n.unobserve(a.current),a.current=null)},[]),B.useEffect(()=>{if(s.current){const g=u.current!==e,m=c.current!==t.sourcePosition,v=h.current!==t.targetPosition;(g||m||v)&&(u.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 GX({id:t,onClick:e,onMouseEnter:i,onMouseMove:n,onMouseLeave:r,onContextMenu:s,onDoubleClick:a,nodesDraggable:c,elementsSelectable:h,nodesConnectable:u,nodesFocusable:f,resizeObserver:g,noDragClassName:m,noPanClassName:v,disableKeyboardA11y:S,rfId:x,nodeTypes:w,nodeClickDistance:_,onError:T}){const{node:C,internals:Q,isParent:M}=at(pe=>{const te=pe.nodeLookup.get(t),we=pe.parentLookup.has(t);return{node:te,internals:te.internals,isParent:we}},jt);let E=C.type||"default",L=(w==null?void 0:w[E])||FC[E];L===void 0&&(T==null||T("003",rs.error003(E)),E="default",L=(w==null?void 0:w.default)||FC.default);const V=!!(C.draggable||c&&typeof C.draggable>"u"),H=!!(C.selectable||h&&typeof C.selectable>"u"),U=!!(C.connectable||u&&typeof C.connectable>"u"),X=!!(C.focusable||f&&typeof C.focusable>"u"),R=Bt(),j=AP(C),P=UX({node:C,nodeType:E,hasDimensions:j,resizeObserver:g}),N=lE({nodeRef:P,disabled:C.hidden||!V,noDragClassName:m,handleSelector:C.dragHandle,nodeId:t,isSelectable:H,nodeClickDistance:_}),$=cE();if(C.hidden)return null;const Z=Hs(C),z=XX(C),q=H||V||e||i||n||r,F=i?pe=>i(pe,{...Q.userNode}):void 0,D=n?pe=>n(pe,{...Q.userNode}):void 0,I=r?pe=>r(pe,{...Q.userNode}):void 0,ee=s?pe=>s(pe,{...Q.userNode}):void 0,re=a?pe=>a(pe,{...Q.userNode}):void 0,ce=pe=>{const{selectNodesOnDrag:te,nodeDragThreshold:we}=R.getState();H&&(!te||!V||we>0)&&jy({id:t,store:R,nodeRef:P}),e&&e(pe,{...Q.userNode})},fe=pe=>{if(!(jP(pe.nativeEvent)||S)){if(wP.includes(pe.key)&&H){const te=pe.key==="Escape";jy({id:t,store:R,unselect:te,nodeRef:P})}else if(V&&C.selected&&Object.prototype.hasOwnProperty.call(bg,pe.key)){pe.preventDefault();const{ariaLabelConfig:te}=R.getState();R.setState({ariaLiveMessage:te["node.a11yDescription.ariaLiveMessage"]({direction:pe.key.replace("Arrow","").toLowerCase(),x:~~Q.positionAbsolute.x,y:~~Q.positionAbsolute.y})}),$({direction:bg[pe.key],factor:pe.shiftKey?4:1})}}},ge=()=>{var Xe;if(S||!((Xe=P.current)!=null&&Xe.matches(":focus-visible")))return;const{transform:pe,width:te,height:we,autoPanOnNodeFocus:Re,setCenter:Ce}=R.getState();if(!Re)return;P1(new Map([[t,C]]),{x:0,y:0,width:te,height:we},pe,!0).length>0||Ce(C.position.x+Z.width/2,C.position.y+Z.height/2,{zoom:pe[2]})};return O.jsx("div",{className:di(["react-flow__node",`react-flow__node-${E}`,{[v]:V},C.className,{selected:C.selected,selectable:H,parent:M,draggable:V,dragging:N}]),ref:P,style:{zIndex:Q.z,transform:`translate(${Q.positionAbsolute.x}px,${Q.positionAbsolute.y}px)`,pointerEvents:q?"all":"none",visibility:j?"visible":"hidden",...C.style,...z},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:F,onMouseMove:D,onMouseLeave:I,onContextMenu:ee,onClick:ce,onDoubleClick:re,onKeyDown:X?fe:void 0,tabIndex:X?0:void 0,onFocus:X?ge:void 0,role:C.ariaRole??(X?"group":void 0),"aria-roledescription":"node","aria-describedby":S?void 0:`${tE}-${x}`,"aria-label":C.ariaLabel,...C.domAttributes,children:O.jsx(RX,{value:t,children:O.jsx(L,{id:t,data:C.data,type:E,positionAbsoluteX:Q.positionAbsolute.x,positionAbsoluteY:Q.positionAbsolute.y,selected:C.selected??!1,selectable:H,draggable:V,deletable:C.deletable??!0,isConnectable:U,sourcePosition:C.sourcePosition,targetPosition:C.targetPosition,dragging:N,dragHandle:C.dragHandle,zIndex:Q.z,parentId:C.parentId,...Z})})})}var FX=B.memo(GX);const KX=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,onError:t.onError});function dE(t){const{nodesDraggable:e,nodesConnectable:i,nodesFocusable:n,elementsSelectable:r,onError:s}=at(KX,jt),a=VX(t.onlyRenderVisibleElements),c=HX();return O.jsx("div",{className:"react-flow__nodes",style:ym,children:a.map(h=>O.jsx(FX,{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))})}dE.displayName="NodeRenderer";const JX=B.memo(dE);function eN(t){return at(B.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]),jt)}const tN=({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"})},iN=({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"})},JC={[vg.Arrow]:tN,[vg.ArrowClosed]:iN};function nN(t){const e=Bt();return B.useMemo(()=>{var r,s;return Object.prototype.hasOwnProperty.call(JC,t)?JC[t]:((s=(r=e.getState()).onError)==null||s.call(r,"009",rs.error009(t)),null)},[t])}const rN=({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=nN(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},fE=({defaultColor:t,rfId:e})=>{const i=at(s=>s.edges),n=at(s=>s.defaultEdgeOptions),r=B.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(rN,{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};fE.displayName="MarkerDefinitions";var sN=B.memo(fE);function pE({x:t,y:e,label:i,labelStyle:n,labelShowBg:r=!0,labelBgStyle:s,labelBgPadding:a=[2,4],labelBgBorderRadius:c=2,children:h,className:u,...f}){const[g,m]=B.useState({x:1,y:0,width:0,height:0}),v=di(["react-flow__edge-textwrapper",u]),S=B.useRef(null);return B.useEffect(()=>{if(S.current){const x=S.current.getBBox();m({x:x.x,y:x.y,width:x.width,height:x.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}pE.displayName="EdgeText";const oN=B.memo(pE);function Sm({path:t,labelX:e,labelY:i,label:n,labelStyle:r,labelShowBg:s,labelBgStyle:a,labelBgPadding:c,labelBgBorderRadius:h,interactionWidth:u=20,...f}){return O.jsxs(O.Fragment,{children:[O.jsx("path",{...f,d:t,fill:"none",className:di(["react-flow__edge-path",f.className])}),u?O.jsx("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:u,className:"react-flow__edge-interaction"}):null,n&&kr(e)&&kr(i)?O.jsx(oN,{x:e,y:i,label:n,labelStyle:r,labelShowBg:s,labelBgStyle:a,labelBgPadding:c,labelBgBorderRadius:h}):null]})}function e2({pos:t,x1:e,y1:i,x2:n,y2:r}){return t===Te.Left||t===Te.Right?[.5*(e+n),i]:[e,.5*(i+r)]}function gE({sourceX:t,sourceY:e,sourcePosition:i=Te.Bottom,targetX:n,targetY:r,targetPosition:s=Te.Top}){const[a,c]=e2({pos:i,x1:t,y1:e,x2:n,y2:r}),[h,u]=e2({pos:s,x1:n,y1:r,x2:t,y2:e}),[f,g,m,v]=BP({sourceX:t,sourceY:e,targetX:n,targetY:r,sourceControlX:a,sourceControlY:c,targetControlX:h,targetControlY:u});return[`M${t},${e} C${a},${c} ${h},${u} ${n},${r}`,f,g,m,v]}function mE(t){return B.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,sourcePosition:a,targetPosition:c,label:h,labelStyle:u,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:x,markerStart:w,interactionWidth:_})=>{const[T,C,Q]=gE({sourceX:i,sourceY:n,sourcePosition:a,targetX:r,targetY:s,targetPosition:c}),M=t.isInternal?void 0:e;return O.jsx(Sm,{id:M,path:T,labelX:C,labelY:Q,label:h,labelStyle:u,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:x,markerStart:w,interactionWidth:_})})}const aN=mE({isInternal:!1}),OE=mE({isInternal:!0});aN.displayName="SimpleBezierEdge";OE.displayName="SimpleBezierEdgeInternal";function vE(t){return B.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:g,style:m,sourcePosition:v=Te.Bottom,targetPosition:S=Te.Top,markerEnd:x,markerStart:w,pathOptions:_,interactionWidth:T})=>{const[C,Q,M]=Ey({sourceX:i,sourceY:n,sourcePosition:v,targetX:r,targetY:s,targetPosition:S,borderRadius:_==null?void 0:_.borderRadius,offset:_==null?void 0:_.offset,stepPosition:_==null?void 0:_.stepPosition}),E=t.isInternal?void 0:e;return O.jsx(Sm,{id:E,path:C,labelX:Q,labelY:M,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:g,style:m,markerEnd:x,markerStart:w,interactionWidth:T})})}const yE=vE({isInternal:!1}),SE=vE({isInternal:!0});yE.displayName="SmoothStepEdge";SE.displayName="SmoothStepEdgeInternal";function bE(t){return B.memo(({id:e,...i})=>{var r;const n=t.isInternal?void 0:e;return O.jsx(yE,{...i,id:n,pathOptions:B.useMemo(()=>{var s;return{borderRadius:0,offset:(s=i.pathOptions)==null?void 0:s.offset}},[(r=i.pathOptions)==null?void 0:r.offset])})})}const lN=bE({isInternal:!1}),xE=bE({isInternal:!0});lN.displayName="StepEdge";xE.displayName="StepEdgeInternal";function _E(t){return B.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:g,style:m,markerEnd:v,markerStart:S,interactionWidth:x})=>{const[w,_,T]=NP({sourceX:i,sourceY:n,targetX:r,targetY:s}),C=t.isInternal?void 0:e;return O.jsx(Sm,{id:C,path:w,labelX:_,labelY:T,label:a,labelStyle:c,labelShowBg:h,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:g,style:m,markerEnd:v,markerStart:S,interactionWidth:x})})}const cN=_E({isInternal:!1}),wE=_E({isInternal:!0});cN.displayName="StraightEdge";wE.displayName="StraightEdgeInternal";function kE(t){return B.memo(({id:e,sourceX:i,sourceY:n,targetX:r,targetY:s,sourcePosition:a=Te.Bottom,targetPosition:c=Te.Top,label:h,labelStyle:u,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:x,markerStart:w,pathOptions:_,interactionWidth:T})=>{const[C,Q,M]=LP({sourceX:i,sourceY:n,sourcePosition:a,targetX:r,targetY:s,targetPosition:c,curvature:_==null?void 0:_.curvature}),E=t.isInternal?void 0:e;return O.jsx(Sm,{id:E,path:C,labelX:Q,labelY:M,label:h,labelStyle:u,labelShowBg:f,labelBgStyle:g,labelBgPadding:m,labelBgBorderRadius:v,style:S,markerEnd:x,markerStart:w,interactionWidth:T})})}const hN=kE({isInternal:!1}),CE=kE({isInternal:!0});hN.displayName="BezierEdge";CE.displayName="BezierEdgeInternal";const t2={default:CE,straight:wE,step:xE,smoothstep:SE,simplebezier:OE},i2={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},uN=(t,e,i)=>i===Te.Left?t-e:i===Te.Right?t+e:t,dN=(t,e,i)=>i===Te.Top?t-e:i===Te.Bottom?t+e:t,n2="react-flow__edgeupdater";function r2({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:di([n2,`${n2}-${c}`]),cx:uN(e,n,t),cy:dN(i,n,t),r:n,stroke:"transparent",fill:"transparent"})}function fN({isReconnectable:t,reconnectRadius:e,edge:i,sourceX:n,sourceY:r,targetX:s,targetY:a,sourcePosition:c,targetPosition:h,onReconnect:u,onReconnectStart:f,onReconnectEnd:g,setReconnecting:m,setUpdateHover:v}){const S=Bt(),x=(Q,M)=>{if(Q.button!==0)return;const{autoPanOnConnect:E,domNode:L,connectionMode:V,connectionRadius:H,lib:U,onConnectStart:X,cancelConnection:R,nodeLookup:j,rfId:P,panBy:N,updateConnection:$}=S.getState(),Z=M.type==="target",z=(D,I)=>{m(!1),g==null||g(D,i,M.type,I)},q=D=>u==null?void 0:u(i,D),F=(D,I)=>{m(!0),f==null||f(Q,i,M.type),X==null||X(D,I)};My.onPointerDown(Q.nativeEvent,{autoPanOnConnect:E,connectionMode:V,connectionRadius:H,domNode:L,handleId:M.id,nodeId:M.nodeId,nodeLookup:j,isTarget:Z,edgeUpdaterType:M.type,lib:U,flowId:P,cancelConnection:R,panBy:N,isValidConnection:(...D)=>{var I,ee;return((ee=(I=S.getState()).isValidConnection)==null?void 0:ee.call(I,...D))??!0},onConnect:q,onConnectStart:F,onConnectEnd:(...D)=>{var I,ee;return(ee=(I=S.getState()).onConnectEnd)==null?void 0:ee.call(I,...D)},onReconnectEnd:z,updateConnection:$,getTransform:()=>S.getState().transform,getFromHandle:()=>S.getState().connection.fromHandle,dragThreshold:S.getState().connectionDragThreshold,handleDomNode:Q.currentTarget})},w=Q=>x(Q,{nodeId:i.target,id:i.targetHandle??null,type:"target"}),_=Q=>x(Q,{nodeId:i.source,id:i.sourceHandle??null,type:"source"}),T=()=>v(!0),C=()=>v(!1);return O.jsxs(O.Fragment,{children:[(t===!0||t==="source")&&O.jsx(r2,{position:c,centerX:n,centerY:r,radius:e,onMouseDown:w,onMouseEnter:T,onMouseOut:C,type:"source"}),(t===!0||t==="target")&&O.jsx(r2,{position:h,centerX:s,centerY:a,radius:e,onMouseDown:_,onMouseEnter:T,onMouseOut:C,type:"target"})]})}function pN({id:t,edgesFocusable:e,edgesReconnectable:i,elementsSelectable:n,onClick:r,onDoubleClick:s,onContextMenu:a,onMouseEnter:c,onMouseMove:h,onMouseLeave:u,reconnectRadius:f,onReconnect:g,onReconnectStart:m,onReconnectEnd:v,rfId:S,edgeTypes:x,noPanClassName:w,onError:_,disableKeyboardA11y:T}){let C=at(Ce=>Ce.edgeLookup.get(t));const Q=at(Ce=>Ce.defaultEdgeOptions);C=Q?{...Q,...C}:C;let M=C.type||"default",E=(x==null?void 0:x[M])||t2[M];E===void 0&&(_==null||_("011",rs.error011(M)),M="default",E=(x==null?void 0:x.default)||t2.default);const L=!!(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"),U=B.useRef(null),[X,R]=B.useState(!1),[j,P]=B.useState(!1),N=Bt(),{zIndex:$,sourceX:Z,sourceY:z,targetX:q,targetY:F,sourcePosition:D,targetPosition:I}=at(B.useCallback(Ce=>{const Oe=Ce.nodeLookup.get(C.source),Xe=Ce.nodeLookup.get(C.target);if(!Oe||!Xe)return{zIndex:C.zIndex,...i2};const st=s6({id:t,sourceNode:Oe,targetNode:Xe,sourceHandle:C.sourceHandle||null,targetHandle:C.targetHandle||null,connectionMode:Ce.connectionMode,onError:_});return{zIndex:FL({selected:C.selected,zIndex:C.zIndex,sourceNode:Oe,targetNode:Xe,elevateOnSelect:Ce.elevateEdgesOnSelect,zIndexMode:Ce.zIndexMode}),...st||i2}},[C.source,C.target,C.sourceHandle,C.targetHandle,C.selected,C.zIndex]),jt),ee=B.useMemo(()=>C.markerStart?`url('#${Ry(C.markerStart,S)}')`:void 0,[C.markerStart,S]),re=B.useMemo(()=>C.markerEnd?`url('#${Ry(C.markerEnd,S)}')`:void 0,[C.markerEnd,S]);if(C.hidden||Z===null||z===null||q===null||F===null)return null;const ce=Ce=>{var Fe;const{addSelectedEdges:Oe,unselectNodesAndEdges:Xe,multiSelectionActive:st}=N.getState();H&&(N.setState({nodesSelectionActive:!1}),C.selected&&st?(Xe({nodes:[],edges:[C]}),(Fe=U.current)==null||Fe.blur()):Oe([t])),r&&r(Ce,C)},fe=s?Ce=>{s(Ce,{...C})}:void 0,ge=a?Ce=>{a(Ce,{...C})}:void 0,pe=c?Ce=>{c(Ce,{...C})}:void 0,te=h?Ce=>{h(Ce,{...C})}:void 0,we=u?Ce=>{u(Ce,{...C})}:void 0,Re=Ce=>{var Oe;if(!T&&wP.includes(Ce.key)&&H){const{unselectNodesAndEdges:Xe,addSelectedEdges:st}=N.getState();Ce.key==="Escape"?((Oe=U.current)==null||Oe.blur(),Xe({edges:[C]})):st([t])}};return O.jsx("svg",{style:{zIndex:$},children:O.jsxs("g",{className:di(["react-flow__edge",`react-flow__edge-${M}`,C.className,w,{selected:C.selected,animated:C.animated,inactive:!H&&!r,updating:X,selectable:H}]),onClick:ce,onDoubleClick:fe,onContextMenu:ge,onMouseEnter:pe,onMouseMove:te,onMouseLeave:we,onKeyDown:L?Re:void 0,tabIndex:L?0:void 0,role:C.ariaRole??(L?"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":L?`${iE}-${S}`:void 0,ref:U,...C.domAttributes,children:[!j&&O.jsx(E,{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:q,targetY:F,sourcePosition:D,targetPosition:I,data:C.data,style:C.style,sourceHandleId:C.sourceHandle,targetHandleId:C.targetHandle,markerStart:ee,markerEnd:re,pathOptions:"pathOptions"in C?C.pathOptions:void 0,interactionWidth:C.interactionWidth}),V&&O.jsx(fN,{edge:C,isReconnectable:V,reconnectRadius:f,onReconnect:g,onReconnectStart:m,onReconnectEnd:v,sourceX:Z,sourceY:z,targetX:q,targetY:F,sourcePosition:D,targetPosition:I,setUpdateHover:R,setReconnecting:P})]})})}var gN=B.memo(pN);const mN=t=>({edgesFocusable:t.edgesFocusable,edgesReconnectable:t.edgesReconnectable,elementsSelectable:t.elementsSelectable,connectionMode:t.connectionMode,onError:t.onError});function TE({defaultMarkerColor:t,onlyRenderVisibleElements:e,rfId:i,edgeTypes:n,noPanClassName:r,onReconnect:s,onEdgeContextMenu:a,onEdgeMouseEnter:c,onEdgeMouseMove:h,onEdgeMouseLeave:u,onEdgeClick:f,reconnectRadius:g,onEdgeDoubleClick:m,onReconnectStart:v,onReconnectEnd:S,disableKeyboardA11y:x}){const{edgesFocusable:w,edgesReconnectable:_,elementsSelectable:T,onError:C}=at(mN,jt),Q=eN(e);return O.jsxs("div",{className:"react-flow__edges",children:[O.jsx(sN,{defaultColor:t,rfId:i}),Q.map(M=>O.jsx(gN,{id:M,edgesFocusable:w,edgesReconnectable:_,elementsSelectable:T,noPanClassName:r,onReconnect:s,onContextMenu:a,onMouseEnter:c,onMouseMove:h,onMouseLeave:u,onClick:f,reconnectRadius:g,onDoubleClick:m,onReconnectStart:v,onReconnectEnd:S,rfId:i,onError:C,edgeTypes:n,disableKeyboardA11y:x},M))]})}TE.displayName="EdgeRenderer";const ON=B.memo(TE),vN=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function yN({children:t}){const e=at(vN);return O.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:e},children:t})}function SN(t){const e=vm(),i=B.useRef(!1);B.useEffect(()=>{!i.current&&e.viewportInitialized&&t&&(setTimeout(()=>t(e),1),i.current=!0)},[t,e.viewportInitialized])}const bN=t=>{var e;return(e=t.panZoom)==null?void 0:e.syncViewport};function xN(t){const e=at(bN),i=Bt();return B.useEffect(()=>{t&&(e==null||e(t),i.setState({transform:[t.x,t.y,t.zoom]}))},[t,e]),null}function _N(t){return t.connection.inProgress?{...t.connection,to:gd(t.connection.to,t.transform)}:{...t.connection}}function wN(t){return _N}function kN(t){const e=wN();return at(e,jt)}const CN=t=>({nodesConnectable:t.nodesConnectable,isValid:t.connection.isValid,inProgress:t.connection.inProgress,width:t.width,height:t.height});function TN({containerStyle:t,style:e,type:i,component:n}){const{nodesConnectable:r,width:s,height:a,isValid:c,inProgress:h}=at(CN,jt);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:di(["react-flow__connection",TP(c)]),children:O.jsx(QE,{style:e,type:i,CustomComponent:n,isValid:c})})})}const QE=({style:t,type:e=Uo.Bezier,CustomComponent:i,isValid:n})=>{const{inProgress:r,from:s,fromNode:a,fromHandle:c,fromPosition:h,to:u,toNode:f,toHandle:g,toPosition:m,pointer:v}=kN();if(!r)return;if(i)return O.jsx(i,{connectionLineType:e,connectionLineStyle:t,fromNode:a,fromHandle:c,fromX:s.x,fromY:s.y,toX:u.x,toY:u.y,fromPosition:h,toPosition:m,connectionStatus:TP(n),toNode:f,toHandle:g,pointer:v});let S="";const x={sourceX:s.x,sourceY:s.y,sourcePosition:h,targetX:u.x,targetY:u.y,targetPosition:m};switch(e){case Uo.Bezier:[S]=LP(x);break;case Uo.SimpleBezier:[S]=gE(x);break;case Uo.Step:[S]=Ey({...x,borderRadius:0});break;case Uo.SmoothStep:[S]=Ey(x);break;default:[S]=NP(x)}return O.jsx("path",{d:S,fill:"none",className:"react-flow__connection-path",style:t})};QE.displayName="ConnectionLine";const QN={};function s2(t=QN){B.useRef(t),Bt(),B.useEffect(()=>{},[t])}function $N(){Bt(),B.useRef(!1),B.useEffect(()=>{},[])}function $E({nodeTypes:t,edgeTypes:e,onInit:i,onNodeClick:n,onEdgeClick:r,onNodeDoubleClick:s,onEdgeDoubleClick:a,onNodeMouseEnter:c,onNodeMouseMove:h,onNodeMouseLeave:u,onNodeContextMenu:f,onSelectionContextMenu:g,onSelectionStart:m,onSelectionEnd:v,connectionLineType:S,connectionLineStyle:x,connectionLineComponent:w,connectionLineContainerStyle:_,selectionKeyCode:T,selectionOnDrag:C,selectionMode:Q,multiSelectionKeyCode:M,panActivationKeyCode:E,zoomActivationKeyCode:L,deleteKeyCode:V,onlyRenderVisibleElements:H,elementsSelectable:U,defaultViewport:X,translateExtent:R,minZoom:j,maxZoom:P,preventScrolling:N,defaultMarkerColor:$,zoomOnScroll:Z,zoomOnPinch:z,panOnScroll:q,panOnScrollSpeed:F,panOnScrollMode:D,zoomOnDoubleClick:I,panOnDrag:ee,onPaneClick:re,onPaneMouseEnter:ce,onPaneMouseMove:fe,onPaneMouseLeave:ge,onPaneScroll:pe,onPaneContextMenu:te,paneClickDistance:we,nodeClickDistance:Re,onEdgeContextMenu:Ce,onEdgeMouseEnter:Oe,onEdgeMouseMove:Xe,onEdgeMouseLeave:st,reconnectRadius:Fe,onReconnect:Lt,onReconnectStart:Si,onReconnectEnd:Pi,noDragClassName:ln,noWheelClassName:cn,noPanClassName:Zi,disableKeyboardA11y:as,nodeExtent:ii,rfId:Js,viewport:Hn,onViewportChange:Rr}){return s2(t),s2(e),$N(),SN(i),xN(Hn),O.jsx(qX,{onPaneClick:re,onPaneMouseEnter:ce,onPaneMouseMove:fe,onPaneMouseLeave:ge,onPaneContextMenu:te,onPaneScroll:pe,paneClickDistance:we,deleteKeyCode:V,selectionKeyCode:T,selectionOnDrag:C,selectionMode:Q,onSelectionStart:m,onSelectionEnd:v,multiSelectionKeyCode:M,panActivationKeyCode:E,zoomActivationKeyCode:L,elementsSelectable:U,zoomOnScroll:Z,zoomOnPinch:z,zoomOnDoubleClick:I,panOnScroll:q,panOnScrollSpeed:F,panOnScrollMode:D,panOnDrag:ee,defaultViewport:X,translateExtent:R,minZoom:j,maxZoom:P,onSelectionContextMenu:g,preventScrolling:N,noDragClassName:ln,noWheelClassName:cn,noPanClassName:Zi,disableKeyboardA11y:as,onViewportChange:Rr,isControlledViewport:!!Hn,children:O.jsxs(yN,{children:[O.jsx(ON,{edgeTypes:e,onEdgeClick:r,onEdgeDoubleClick:a,onReconnect:Lt,onReconnectStart:Si,onReconnectEnd:Pi,onlyRenderVisibleElements:H,onEdgeContextMenu:Ce,onEdgeMouseEnter:Oe,onEdgeMouseMove:Xe,onEdgeMouseLeave:st,reconnectRadius:Fe,defaultMarkerColor:$,noPanClassName:Zi,disableKeyboardA11y:as,rfId:Js}),O.jsx(TN,{style:x,type:S,component:w,containerStyle:_}),O.jsx("div",{className:"react-flow__edgelabel-renderer"}),O.jsx(JX,{nodeTypes:t,onNodeClick:n,onNodeDoubleClick:s,onNodeMouseEnter:c,onNodeMouseMove:h,onNodeMouseLeave:u,onNodeContextMenu:f,nodeClickDistance:Re,onlyRenderVisibleElements:H,noPanClassName:Zi,noDragClassName:ln,disableKeyboardA11y:as,nodeExtent:ii,rfId:Js}),O.jsx("div",{className:"react-flow__viewport-portal"})]})})}$E.displayName="GraphView";const PN=B.memo($E),o2=({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,width:r,height:s,fitView:a,fitViewOptions:c,minZoom:h=.5,maxZoom:u=2,nodeOrigin:f,nodeExtent:g,zIndexMode:m="basic"}={})=>{const v=new Map,S=new Map,x=new Map,w=new Map,_=n??e??[],T=i??t??[],C=f??[0,0],Q=g??Du;qP(x,w,_);const{nodesInitialized:M}=Ay(T,v,S,{nodeOrigin:C,nodeExtent:Q,zIndexMode:m});let E=[0,0,1];if(a&&r&&s){const L=fd(v,{filter:X=>!!((X.width||X.initialWidth)&&(X.height||X.initialHeight))}),{x:V,y:H,zoom:U}=E1(L,r,s,h,u,(c==null?void 0:c.padding)??.1);E=[V,H,U]}return{rfId:"1",width:r??0,height:s??0,transform:E,nodes:T,nodesInitialized:M,nodeLookup:v,parentLookup:S,edges:_,edgeLookup:w,connectionLookup:x,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:i!==void 0,hasDefaultEdges:n!==void 0,panZoom:null,minZoom:h,maxZoom:u,translateExtent:Du,nodeExtent:Q,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:Rc.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:{...CP},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:kP,zIndexMode:m,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},EN=({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,width:r,height:s,fitView:a,fitViewOptions:c,minZoom:h,maxZoom:u,nodeOrigin:f,nodeExtent:g,zIndexMode:m})=>U6((v,S)=>{async function x(){const{nodeLookup:w,panZoom:_,fitViewOptions:T,fitViewResolver:C,width:Q,height:M,minZoom:E,maxZoom:L}=S();_&&(await WL({nodes:w,width:Q,height:M,panZoom:_,minZoom:E,maxZoom:L},T),C==null||C.resolve(!0),v({fitViewResolver:null}))}return{...o2({nodes:t,edges:e,width:r,height:s,fitView:a,fitViewOptions:c,minZoom:h,maxZoom:u,nodeOrigin:f,nodeExtent:g,defaultNodes:i,defaultEdges:n,zIndexMode:m}),setNodes:w=>{const{nodeLookup:_,parentLookup:T,nodeOrigin:C,elevateNodesOnSelect:Q,fitViewQueued:M,zIndexMode:E,nodesSelectionActive:L}=S(),{nodesInitialized:V,hasSelectedNodes:H}=Ay(w,_,T,{nodeOrigin:C,nodeExtent:g,elevateNodesOnSelect:Q,checkEquality:!0,zIndexMode:E}),U=L&&H;M&&V?(x(),v({nodes:w,nodesInitialized:V,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:U})):v({nodes:w,nodesInitialized:V,nodesSelectionActive:U})},setEdges:w=>{const{connectionLookup:_,edgeLookup:T}=S();qP(_,T,w),v({edges:w})},setDefaultNodesAndEdges:(w,_)=>{if(w){const{setNodes:T}=S();T(w),v({hasDefaultNodes:!0})}if(_){const{setEdges:T}=S();T(_),v({hasDefaultEdges:!0})}},updateNodeInternals:w=>{const{triggerNodeChanges:_,nodeLookup:T,parentLookup:C,domNode:Q,nodeOrigin:M,nodeExtent:E,debug:L,fitViewQueued:V,zIndexMode:H}=S(),{changes:U,updatedInternals:X}=f6(w,T,C,Q,M,E,H);X&&(c6(T,C,{nodeOrigin:M,nodeExtent:E,zIndexMode:H}),V?(x(),v({fitViewQueued:!1,fitViewOptions:void 0})):v({}),(U==null?void 0:U.length)>0&&(L&&console.log("React Flow: trigger node changes",U),_==null||_(U)))},updateNodePositions:(w,_=!1)=>{const T=[];let C=[];const{nodeLookup:Q,triggerNodeChanges:M,connection:E,updateConnection:L,onNodesChangeMiddlewareMap:V}=S();for(const[H,U]of w){const X=Q.get(H),R=!!(X!=null&&X.expandParent&&(X!=null&&X.parentId)&&(U!=null&&U.position)),j={id:H,type:"position",position:R?{x:Math.max(0,U.position.x),y:Math.max(0,U.position.y)}:U.position,dragging:_};if(X&&E.inProgress&&E.fromNode.id===X.id){const P=ol(X,E.fromHandle,Te.Left,!0);L({...E,from:P})}R&&X.parentId&&T.push({id:H,parentId:X.parentId,rect:{...U.internals.positionAbsolute,width:U.measured.width??0,height:U.measured.height??0}}),C.push(j)}if(T.length>0){const{parentLookup:H,nodeOrigin:U}=S(),X=D1(T,Q,H,U);C.push(...X)}for(const H of V.values())C=H(C);M(C)},triggerNodeChanges:w=>{const{onNodesChange:_,setNodes:T,nodes:C,hasDefaultNodes:Q,debug:M}=S();if(w!=null&&w.length){if(Q){const E=sE(w,C);T(E)}M&&console.log("React Flow: trigger node changes",w),_==null||_(w)}},triggerEdgeChanges:w=>{const{onEdgesChange:_,setEdges:T,edges:C,hasDefaultEdges:Q,debug:M}=S();if(w!=null&&w.length){if(Q){const E=mX(w,C);T(E)}M&&console.log("React Flow: trigger edge changes",w),_==null||_(w)}},addSelectedNodes:w=>{const{multiSelectionActive:_,edgeLookup:T,nodeLookup:C,triggerNodeChanges:Q,triggerEdgeChanges:M}=S();if(_){const E=w.map(L=>La(L,!0));Q(E);return}Q(fc(C,new Set([...w]),!0)),M(fc(T))},addSelectedEdges:w=>{const{multiSelectionActive:_,edgeLookup:T,nodeLookup:C,triggerNodeChanges:Q,triggerEdgeChanges:M}=S();if(_){const E=w.map(L=>La(L,!0));M(E);return}M(fc(T,new Set([...w]))),Q(fc(C,new Set,!0))},unselectNodesAndEdges:({nodes:w,edges:_}={})=>{const{edges:T,nodes:C,nodeLookup:Q,triggerNodeChanges:M,triggerEdgeChanges:E}=S(),L=w||C,V=_||T,H=[];for(const X of L){if(!X.selected)continue;const R=Q.get(X.id);R&&(R.selected=!1),H.push(La(X.id,!1))}const U=[];for(const X of V)X.selected&&U.push(La(X.id,!1));M(H),E(U)},setMinZoom:w=>{const{panZoom:_,maxZoom:T}=S();_==null||_.setScaleExtent([w,T]),v({minZoom:w})},setMaxZoom:w=>{const{panZoom:_,minZoom:T}=S();_==null||_.setScaleExtent([T,w]),v({maxZoom:w})},setTranslateExtent:w=>{var _;(_=S().panZoom)==null||_.setTranslateExtent(w),v({translateExtent:w})},resetSelectedElements:()=>{const{edges:w,nodes:_,triggerNodeChanges:T,triggerEdgeChanges:C,elementsSelectable:Q}=S();if(!Q)return;const M=_.reduce((L,V)=>V.selected?[...L,La(V.id,!1)]:L,[]),E=w.reduce((L,V)=>V.selected?[...L,La(V.id,!1)]:L,[]);T(M),C(E)},setNodeExtent:w=>{const{nodes:_,nodeLookup:T,parentLookup:C,nodeOrigin:Q,elevateNodesOnSelect:M,nodeExtent:E,zIndexMode:L}=S();w[0][0]===E[0][0]&&w[0][1]===E[0][1]&&w[1][0]===E[1][0]&&w[1][1]===E[1][1]||(Ay(_,T,C,{nodeOrigin:Q,nodeExtent:w,elevateNodesOnSelect:M,checkEquality:!1,zIndexMode:L}),v({nodeExtent:w}))},panBy:w=>{const{transform:_,width:T,height:C,panZoom:Q,translateExtent:M}=S();return p6({delta:w,panZoom:Q,transform:_,translateExtent:M,width:T,height:C})},setCenter:async(w,_,T)=>{const{width:C,height:Q,maxZoom:M,panZoom:E}=S();if(!E)return Promise.resolve(!1);const L=typeof(T==null?void 0:T.zoom)<"u"?T.zoom:M;return await E.setViewport({x:C/2-w*L,y:Q/2-_*L,zoom:L},{duration:T==null?void 0:T.duration,ease:T==null?void 0:T.ease,interpolate:T==null?void 0:T.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{v({connection:{...CP}})},updateConnection:w=>{v({connection:w})},reset:()=>v({...o2()})}},Object.is);function PE({initialNodes:t,initialEdges:e,defaultNodes:i,defaultEdges:n,initialWidth:r,initialHeight:s,initialMinZoom:a,initialMaxZoom:c,initialFitViewOptions:h,fitView:u,nodeOrigin:f,nodeExtent:g,zIndexMode:m,children:v}){const[S]=B.useState(()=>EN({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,width:r,height:s,fitView:u,minZoom:a,maxZoom:c,fitViewOptions:h,nodeOrigin:f,nodeExtent:g,zIndexMode:m}));return O.jsx(G6,{value:S,children:O.jsx(yX,{children:v})})}function RN({children:t,nodes:e,edges:i,defaultNodes:n,defaultEdges:r,width:s,height:a,fitView:c,fitViewOptions:h,minZoom:u,maxZoom:f,nodeOrigin:g,nodeExtent:m,zIndexMode:v}){return B.useContext(mm)?O.jsx(O.Fragment,{children:t}):O.jsx(PE,{initialNodes:e,initialEdges:i,defaultNodes:n,defaultEdges:r,initialWidth:s,initialHeight:a,fitView:c,initialFitViewOptions:h,initialMinZoom:u,initialMaxZoom:f,nodeOrigin:g,nodeExtent:m,zIndexMode:v,children:t})}const AN={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function MN({nodes:t,edges:e,defaultNodes:i,defaultEdges:n,className:r,nodeTypes:s,edgeTypes:a,onNodeClick:c,onEdgeClick:h,onInit:u,onMove:f,onMoveStart:g,onMoveEnd:m,onConnect:v,onConnectStart:S,onConnectEnd:x,onClickConnectStart:w,onClickConnectEnd:_,onNodeMouseEnter:T,onNodeMouseMove:C,onNodeMouseLeave:Q,onNodeContextMenu:M,onNodeDoubleClick:E,onNodeDragStart:L,onNodeDrag:V,onNodeDragStop:H,onNodesDelete:U,onEdgesDelete:X,onDelete:R,onSelectionChange:j,onSelectionDragStart:P,onSelectionDrag:N,onSelectionDragStop:$,onSelectionContextMenu:Z,onSelectionStart:z,onSelectionEnd:q,onBeforeDelete:F,connectionMode:D,connectionLineType:I=Uo.Bezier,connectionLineStyle:ee,connectionLineComponent:re,connectionLineContainerStyle:ce,deleteKeyCode:fe="Backspace",selectionKeyCode:ge="Shift",selectionOnDrag:pe=!1,selectionMode:te=Bu.Full,panActivationKeyCode:we="Space",multiSelectionKeyCode:Re=Xu()?"Meta":"Control",zoomActivationKeyCode:Ce=Xu()?"Meta":"Control",snapToGrid:Oe,snapGrid:Xe,onlyRenderVisibleElements:st=!1,selectNodesOnDrag:Fe,nodesDraggable:Lt,autoPanOnNodeFocus:Si,nodesConnectable:Pi,nodesFocusable:ln,nodeOrigin:cn=nE,edgesFocusable:Zi,edgesReconnectable:as,elementsSelectable:ii=!0,defaultViewport:Js=cX,minZoom:Hn=.5,maxZoom:Rr=2,translateExtent:ls=Du,preventScrolling:eo=!0,nodeExtent:hn,defaultMarkerColor:cs="#b1b1b7",zoomOnScroll:hs=!0,zoomOnPinch:Ar=!0,panOnScroll:qt=!1,panOnScrollSpeed:Ki=.5,panOnScrollMode:Wi=Ja.Free,zoomOnDoubleClick:yl=!0,panOnDrag:Sl=!0,onPaneClick:bl,onPaneMouseEnter:to,onPaneMouseMove:io,onPaneMouseLeave:no,onPaneScroll:gr,onPaneContextMenu:ro,paneClickDistance:Cn=1,nodeClickDistance:pa=0,children:so,onReconnect:ga,onReconnectStart:Mr,onReconnectEnd:eh,onEdgeContextMenu:xl,onEdgeDoubleClick:ma,onEdgeMouseEnter:_l,onEdgeMouseMove:Oa,onEdgeMouseLeave:J,reconnectRadius:Ne=10,onNodesChange:lt,onEdgesChange:Mt,noDragClassName:St="nodrag",noWheelClassName:Pt="nowheel",noPanClassName:qi="nopan",fitView:wl,fitViewOptions:Pd,connectOnClick:Xm,attributionPosition:Ed,proOptions:va,defaultEdgeOptions:th,elevateNodesOnSelect:oo=!0,elevateEdgesOnSelect:ao=!1,disableKeyboardA11y:lo=!1,autoPanOnConnect:co,autoPanOnNodeDrag:ni,autoPanSpeed:Rd,connectionRadius:Ad,isValidConnection:us,onError:ho,style:Nm,id:ih,nodeDragThreshold:Md,connectionDragThreshold:Zm,viewport:kl,onViewportChange:Cl,width:mr,height:un,colorMode:zd="light",debug:Wm,onScroll:uo,ariaLabelConfig:jd,zIndexMode:ya="basic",...qm},dn){const Sa=ih||"1",Dd=fX(zd),nh=B.useCallback(ds=>{ds.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),uo==null||uo(ds)},[uo]);return O.jsx("div",{"data-testid":"rf__wrapper",...qm,onScroll:nh,style:{...Nm,...AN},ref:dn,className:di(["react-flow",r,Dd]),id:ih,role:"application",children:O.jsxs(RN,{nodes:t,edges:e,width:mr,height:un,fitView:wl,fitViewOptions:Pd,minZoom:Hn,maxZoom:Rr,nodeOrigin:cn,nodeExtent:hn,zIndexMode:ya,children:[O.jsx(dX,{nodes:t,edges:e,defaultNodes:i,defaultEdges:n,onConnect:v,onConnectStart:S,onConnectEnd:x,onClickConnectStart:w,onClickConnectEnd:_,nodesDraggable:Lt,autoPanOnNodeFocus:Si,nodesConnectable:Pi,nodesFocusable:ln,edgesFocusable:Zi,edgesReconnectable:as,elementsSelectable:ii,elevateNodesOnSelect:oo,elevateEdgesOnSelect:ao,minZoom:Hn,maxZoom:Rr,nodeExtent:hn,onNodesChange:lt,onEdgesChange:Mt,snapToGrid:Oe,snapGrid:Xe,connectionMode:D,translateExtent:ls,connectOnClick:Xm,defaultEdgeOptions:th,fitView:wl,fitViewOptions:Pd,onNodesDelete:U,onEdgesDelete:X,onDelete:R,onNodeDragStart:L,onNodeDrag:V,onNodeDragStop:H,onSelectionDrag:N,onSelectionDragStart:P,onSelectionDragStop:$,onMove:f,onMoveStart:g,onMoveEnd:m,noPanClassName:qi,nodeOrigin:cn,rfId:Sa,autoPanOnConnect:co,autoPanOnNodeDrag:ni,autoPanSpeed:Rd,onError:ho,connectionRadius:Ad,isValidConnection:us,selectNodesOnDrag:Fe,nodeDragThreshold:Md,connectionDragThreshold:Zm,onBeforeDelete:F,debug:Wm,ariaLabelConfig:jd,zIndexMode:ya}),O.jsx(PN,{onInit:u,onNodeClick:c,onEdgeClick:h,onNodeMouseEnter:T,onNodeMouseMove:C,onNodeMouseLeave:Q,onNodeContextMenu:M,onNodeDoubleClick:E,nodeTypes:s,edgeTypes:a,connectionLineType:I,connectionLineStyle:ee,connectionLineComponent:re,connectionLineContainerStyle:ce,selectionKeyCode:ge,selectionOnDrag:pe,selectionMode:te,deleteKeyCode:fe,multiSelectionKeyCode:Re,panActivationKeyCode:we,zoomActivationKeyCode:Ce,onlyRenderVisibleElements:st,defaultViewport:Js,translateExtent:ls,minZoom:Hn,maxZoom:Rr,preventScrolling:eo,zoomOnScroll:hs,zoomOnPinch:Ar,zoomOnDoubleClick:yl,panOnScroll:qt,panOnScrollSpeed:Ki,panOnScrollMode:Wi,panOnDrag:Sl,onPaneClick:bl,onPaneMouseEnter:to,onPaneMouseMove:io,onPaneMouseLeave:no,onPaneScroll:gr,onPaneContextMenu:ro,paneClickDistance:Cn,nodeClickDistance:pa,onSelectionContextMenu:Z,onSelectionStart:z,onSelectionEnd:q,onReconnect:ga,onReconnectStart:Mr,onReconnectEnd:eh,onEdgeContextMenu:xl,onEdgeDoubleClick:ma,onEdgeMouseEnter:_l,onEdgeMouseMove:Oa,onEdgeMouseLeave:J,reconnectRadius:Ne,defaultMarkerColor:cs,noDragClassName:St,noWheelClassName:Pt,noPanClassName:qi,rfId:Sa,disableKeyboardA11y:lo,nodeExtent:hn,viewport:kl,onViewportChange:Cl}),O.jsx(lX,{onSelectionChange:j}),so,O.jsx(nX,{proOptions:va,position:Ed}),O.jsx(iX,{rfId:Sa,disableKeyboardA11y:lo})]})})}var zN=oE(MN);function jN({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:di(["react-flow__background-pattern",i,n])})}function DN({radius:t,className:e}){return O.jsx("circle",{cx:t,cy:t,r:t,className:di(["react-flow__background-pattern","dots",e])})}var Jo;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(Jo||(Jo={}));const BN={[Jo.Dots]:1,[Jo.Lines]:1,[Jo.Cross]:6},LN=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function EE({id:t,variant:e=Jo.Dots,gap:i=20,size:n,lineWidth:r=1,offset:s=0,color:a,bgColor:c,style:h,className:u,patternClassName:f}){const g=B.useRef(null),{transform:m,patternId:v}=at(LN,jt),S=n||BN[e],x=e===Jo.Dots,w=e===Jo.Cross,_=Array.isArray(i)?i:[i,i],T=[_[0]*m[2]||1,_[1]*m[2]||1],C=S*m[2],Q=Array.isArray(s)?s:[s,s],M=w?[C,C]:T,E=[Q[0]*m[2]||1+M[0]/2,Q[1]*m[2]||1+M[1]/2],L=`${v}${t||""}`;return O.jsxs("svg",{className:di(["react-flow__background",u]),style:{...h,...ym,"--xy-background-color-props":c,"--xy-background-pattern-color-props":a},ref:g,"data-testid":"rf__background",children:[O.jsx("pattern",{id:L,x:m[0]%T[0],y:m[1]%T[1],width:T[0],height:T[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${E[0]},-${E[1]})`,children:x?O.jsx(DN,{radius:C/2,className:f}):O.jsx(jN,{dimensions:M,lineWidth:r,variant:e,className:f})}),O.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${L})`})]})}EE.displayName="Background";const XN=B.memo(EE);function NN(){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 ZN(){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 WN(){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 qN(){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 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 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 ip({children:t,className:e,...i}){return O.jsx("button",{type:"button",className:di(["react-flow__controls-button",e]),...i,children:t})}const VN=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom,ariaLabelConfig:t.ariaLabelConfig});function RE({style:t,showZoom:e=!0,showFitView:i=!0,showInteractive:n=!0,fitViewOptions:r,onZoomIn:s,onZoomOut:a,onFitView:c,onInteractiveChange:h,className:u,children:f,position:g="bottom-left",orientation:m="vertical","aria-label":v}){const S=Bt(),{isInteractive:x,minZoomReached:w,maxZoomReached:_,ariaLabelConfig:T}=at(VN,jt),{zoomIn:C,zoomOut:Q,fitView:M}=vm(),E=()=>{C(),s==null||s()},L=()=>{Q(),a==null||a()},V=()=>{M(r),c==null||c()},H=()=>{S.setState({nodesDraggable:!x,nodesConnectable:!x,elementsSelectable:!x}),h==null||h(!x)},U=m==="horizontal"?"horizontal":"vertical";return O.jsxs(Om,{className:di(["react-flow__controls",U,u]),position:g,style:t,"data-testid":"rf__controls","aria-label":v??T["controls.ariaLabel"],children:[e&&O.jsxs(O.Fragment,{children:[O.jsx(ip,{onClick:E,className:"react-flow__controls-zoomin",title:T["controls.zoomIn.ariaLabel"],"aria-label":T["controls.zoomIn.ariaLabel"],disabled:_,children:O.jsx(NN,{})}),O.jsx(ip,{onClick:L,className:"react-flow__controls-zoomout",title:T["controls.zoomOut.ariaLabel"],"aria-label":T["controls.zoomOut.ariaLabel"],disabled:w,children:O.jsx(ZN,{})})]}),i&&O.jsx(ip,{className:"react-flow__controls-fitview",onClick:V,title:T["controls.fitView.ariaLabel"],"aria-label":T["controls.fitView.ariaLabel"],children:O.jsx(WN,{})}),n&&O.jsx(ip,{className:"react-flow__controls-interactive",onClick:H,title:T["controls.interactive.ariaLabel"],"aria-label":T["controls.interactive.ariaLabel"],children:x?O.jsx(IN,{}):O.jsx(qN,{})}),f]})}RE.displayName="Controls";B.memo(RE);function YN({id:t,x:e,y:i,width:n,height:r,style:s,color:a,strokeColor:c,strokeWidth:h,className:u,borderRadius:f,shapeRendering:g,selected:m,onClick:v}){const{background:S,backgroundColor:x}=s||{},w=a||S||x;return O.jsx("rect",{className:di(["react-flow__minimap-node",{selected:m},u]),x:e,y:i,rx:f,ry:f,width:n,height:r,style:{fill:w,stroke:c,strokeWidth:h},shapeRendering:g,onClick:v?_=>v(_,t):void 0})}const HN=B.memo(YN),UN=t=>t.nodes.map(e=>e.id),fv=t=>t instanceof Function?t:()=>t;function GN({nodeStrokeColor:t,nodeColor:e,nodeClassName:i="",nodeBorderRadius:n=5,nodeStrokeWidth:r,nodeComponent:s=HN,onClick:a}){const c=at(UN,jt),h=fv(e),u=fv(t),f=fv(i),g=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return O.jsx(O.Fragment,{children:c.map(m=>O.jsx(KN,{id:m,nodeColorFunc:h,nodeStrokeColorFunc:u,nodeClassNameFunc:f,nodeBorderRadius:n,nodeStrokeWidth:r,NodeComponent:s,onClick:a,shapeRendering:g},m))})}function FN({id:t,nodeColorFunc:e,nodeStrokeColorFunc:i,nodeClassNameFunc:n,nodeBorderRadius:r,nodeStrokeWidth:s,shapeRendering:a,NodeComponent:c,onClick:h}){const{node:u,x:f,y:g,width:m,height:v}=at(S=>{const x=S.nodeLookup.get(t);if(!x)return{node:void 0,x:0,y:0,width:0,height:0};const w=x.internals.userNode,{x:_,y:T}=x.internals.positionAbsolute,{width:C,height:Q}=Hs(w);return{node:w,x:_,y:T,width:C,height:Q}},jt);return!u||u.hidden||!AP(u)?null:O.jsx(c,{x:f,y:g,width:m,height:v,style:u.style,selected:!!u.selected,className:n(u),color:e(u),borderRadius:r,strokeColor:i(u),strokeWidth:s,shapeRendering:a,onClick:h,id:u.id})}const KN=B.memo(FN);var JN=B.memo(GN);const e8=200,t8=150,i8=t=>!t.hidden,n8=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?RP(fd(t.nodeLookup,{filter:i8}),e):e,rfId:t.rfId,panZoom:t.panZoom,translateExtent:t.translateExtent,flowWidth:t.width,flowHeight:t.height,ariaLabelConfig:t.ariaLabelConfig}},r8="react-flow__minimap-desc";function AE({style:t,className:e,nodeStrokeColor:i,nodeColor:n,nodeClassName:r="",nodeBorderRadius:s=5,nodeStrokeWidth:a,nodeComponent:c,bgColor:h,maskColor:u,maskStrokeColor:f,maskStrokeWidth:g,position:m="bottom-right",onClick:v,onNodeClick:S,pannable:x=!1,zoomable:w=!1,ariaLabel:_,inversePan:T,zoomStep:C=1,offsetScale:Q=5}){const M=Bt(),E=B.useRef(null),{boundingRect:L,viewBB:V,rfId:H,panZoom:U,translateExtent:X,flowWidth:R,flowHeight:j,ariaLabelConfig:P}=at(n8,jt),N=(t==null?void 0:t.width)??e8,$=(t==null?void 0:t.height)??t8,Z=L.width/N,z=L.height/$,q=Math.max(Z,z),F=q*N,D=q*$,I=Q*q,ee=L.x-(F-L.width)/2-I,re=L.y-(D-L.height)/2-I,ce=F+I*2,fe=D+I*2,ge=`${r8}-${H}`,pe=B.useRef(0),te=B.useRef();pe.current=q,B.useEffect(()=>{if(E.current&&U)return te.current=_6({domNode:E.current,panZoom:U,getTransform:()=>M.getState().transform,getViewScale:()=>pe.current}),()=>{var Oe;(Oe=te.current)==null||Oe.destroy()}},[U]),B.useEffect(()=>{var Oe;(Oe=te.current)==null||Oe.update({translateExtent:X,width:R,height:j,inversePan:T,pannable:x,zoomStep:C,zoomable:w})},[x,w,T,C,X,R,j]);const we=v?Oe=>{var Fe;const[Xe,st]=((Fe=te.current)==null?void 0:Fe.pointer(Oe))||[0,0];v(Oe,{x:Xe,y:st})}:void 0,Re=S?B.useCallback((Oe,Xe)=>{const st=M.getState().nodeLookup.get(Xe).internals.userNode;S(Oe,st)},[]):void 0,Ce=_??P["minimap.ariaLabel"];return O.jsx(Om,{position:m,style:{...t,"--xy-minimap-background-color-props":typeof h=="string"?h:void 0,"--xy-minimap-mask-background-color-props":typeof u=="string"?u:void 0,"--xy-minimap-mask-stroke-color-props":typeof f=="string"?f:void 0,"--xy-minimap-mask-stroke-width-props":typeof g=="number"?g*q: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:di(["react-flow__minimap",e]),"data-testid":"rf__minimap",children:O.jsxs("svg",{width:N,height:$,viewBox:`${ee} ${re} ${ce} ${fe}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":ge,ref:E,onClick:we,children:[Ce&&O.jsx("title",{id:ge,children:Ce}),O.jsx(JN,{onClick:Re,nodeColor:n,nodeStrokeColor:i,nodeBorderRadius:s,nodeClassName:r,nodeStrokeWidth:a,nodeComponent:c}),O.jsx("path",{className:"react-flow__minimap-mask",d:`M${ee-I},${re-I}h${ce+I*2}v${fe+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"})]})})}AE.displayName="MiniMap";B.memo(AE);const s8=t=>e=>t?`${Math.max(1/e.transform[2],1)}`:void 0,o8={[jc.Line]:"right",[jc.Handle]:"bottom-right"};function a8({nodeId:t,position:e,variant:i=jc.Handle,className:n,style:r=void 0,children:s,color:a,minWidth:c=10,minHeight:h=10,maxWidth:u=Number.MAX_VALUE,maxHeight:f=Number.MAX_VALUE,keepAspectRatio:g=!1,resizeDirection:m,autoScale:v=!0,shouldResize:S,onResizeStart:x,onResize:w,onResizeEnd:_}){const T=hE(),C=typeof t=="string"?t:T,Q=Bt(),M=B.useRef(null),E=i===jc.Handle,L=at(B.useCallback(s8(E&&v),[E,v]),jt),V=B.useRef(null),H=e??o8[i];B.useEffect(()=>{if(!(!M.current||!C))return V.current||(V.current=D6({domNode:M.current,nodeId:C,getStoreItems:()=>{const{nodeLookup:X,transform:R,snapGrid:j,snapToGrid:P,nodeOrigin:N,domNode:$}=Q.getState();return{nodeLookup:X,transform:R,snapGrid:j,snapToGrid:P,nodeOrigin:N,paneDomNode:$}},onChange:(X,R)=>{const{triggerNodeChanges:j,nodeLookup:P,parentLookup:N,nodeOrigin:$}=Q.getState(),Z=[],z={x:X.x,y:X.y},q=P.get(C);if(q&&q.expandParent&&q.parentId){const F=q.origin??$,D=X.width??q.measured.width??0,I=X.height??q.measured.height??0,ee={id:q.id,parentId:q.parentId,rect:{width:D,height:I,...MP({x:X.x??q.position.x,y:X.y??q.position.y},{width:D,height:I},q.parentId,P,F)}},re=D1([ee],P,N,$);Z.push(...re),z.x=X.x?Math.max(F[0]*D,X.x):void 0,z.y=X.y?Math.max(F[1]*I,X.y):void 0}if(z.x!==void 0&&z.y!==void 0){const F={id:C,type:"position",position:{...z}};Z.push(F)}if(X.width!==void 0&&X.height!==void 0){const D={id:C,type:"dimensions",resizing:!0,setAttributes:m?m==="horizontal"?"width":"height":!0,dimensions:{width:X.width,height:X.height}};Z.push(D)}for(const F of R){const D={...F,type:"position"};Z.push(D)}j(Z)},onEnd:({width:X,height:R})=>{const j={id:C,type:"dimensions",resizing:!1,dimensions:{width:X,height:R}};Q.getState().triggerNodeChanges([j])}})),V.current.update({controlPosition:H,boundaries:{minWidth:c,minHeight:h,maxWidth:u,maxHeight:f},keepAspectRatio:g,resizeDirection:m,onResizeStart:x,onResize:w,onResizeEnd:_,shouldResize:S}),()=>{var X;(X=V.current)==null||X.destroy()}},[H,c,h,u,f,g,x,w,_,S]);const U=H.split("-");return O.jsx("div",{className:di(["react-flow__resize-control","nodrag",...U,i,n]),ref:M,style:{...r,scale:L,...a&&{[E?"backgroundColor":"borderColor"]:a}},children:s})}B.memo(a8);const a2={running:"#4ae168",starting:"#e5c07b",stopped:"#5c6370",crashed:"#e06c75",completed:"#33afbc",killed:"#5c6370"},l2={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 l8({data:t}){var u;const e=a2[t.status]||a2.stopped,i=l2[t.role]||l2.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(/^\.\//,""):((u=t.scope)==null?void 0:u.length)>0?t.scope[0].replace(/\/\*\*$/,"").replace(/^src\//,""):t.role,h=r?"#1a1e24":"#282c34";return O.jsxs("div",{style:{background:h,border:"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(Hi,{id:"top",type:"target",position:Te.Top,style:{background:"#282c34",border:"2px solid #3e4451",width:6,height:6,borderRadius:"50%",top:-3,opacity:0}}),O.jsx(Hi,{id:"bottom",type:"target",position:Te.Bottom,style:{background:"#282c34",border:"2px solid #3e4451",width:6,height:6,borderRadius:"50%",bottom:-3,opacity:0}}),O.jsx(Hi,{id:"left",type:"target",position:Te.Left,style:{background:"#282c34",border:"2px solid #3e4451",width:6,height:6,borderRadius:"50%",left:-3,opacity:0}}),O.jsx(Hi,{id:"right",type:"target",position:Te.Right,style:{background:"#282c34",border:"2px solid #3e4451",width:6,height:6,borderRadius:"50%",right:-3,opacity:0}}),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})]}),O.jsx(Hi,{id:"s-top",type:"source",position:Te.Top,style:{opacity:0,width:1,height:1,top:-1}}),O.jsx(Hi,{id:"s-bottom",type:"source",position:Te.Bottom,style:{opacity:0,width:1,height:1,bottom:-1}}),O.jsx(Hi,{id:"s-left",type:"source",position:Te.Left,style:{opacity:0,width:1,height:1,left:-1}}),O.jsx(Hi,{id:"s-right",type:"source",position:Te.Right,style:{opacity:0,width:1,height:1,right:-1}})]})}function c8({data:t}){return O.jsxs("div",{style:t.style,children:[t.label,O.jsx(Hi,{id:"s-top",type:"source",position:Te.Top,style:{opacity:0,width:1,height:1}}),O.jsx(Hi,{id:"s-bottom",type:"source",position:Te.Bottom,style:{opacity:0,width:1,height:1}}),O.jsx(Hi,{id:"s-left",type:"source",position:Te.Left,style:{opacity:0,width:1,height:1}}),O.jsx(Hi,{id:"s-right",type:"source",position:Te.Right,style:{opacity:0,width:1,height:1}})]})}const h8={agent:l8,grooveRoot:c8},pv=4,gv=250,u8=140;function d8(){const t=$e(w=>w.agents),e=$e(w=>w.detailPanel),i=$e(w=>w.selectAgent),n=$e(w=>w.clearSelection),{fitView:r}=vm(),s=(e==null?void 0:e.type)==="agent"?e.agentId:null,a=B.useRef(0),c=B.useRef(()=>{try{return JSON.parse(localStorage.getItem("groove:nodePositions")||"{}")}catch{return{}}});typeof c.current=="function"&&(c.current=c.current());const h=B.useRef(Object.keys(c.current).length),[u,f]=B.useState([]),{targetNodes:g}=B.useMemo(()=>{const w=t.map(Q=>{const M=Q.name||Q.id;if(!c.current[M]){const E=h.current;c.current[M]={x:E%pv*gv,y:160+Math.floor(E/pv)*u8},h.current+=1}return{id:Q.id,type:"agent",position:c.current[M],data:{...Q,selected:Q.id===s},draggable:!0}});return{targetNodes:[{id:"groove-root",type:"grooveRoot",position:{x:(Math.min(Math.max(t.length,1),pv)*gv-gv)/2+25,y:0},data:{label:"GROOVE",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",position:"relative"}},selectable:!1,draggable:!1},...w]}},[t,s]),m=B.useMemo(()=>{const w=u.find(M=>M.id==="groove-root");if(!w)return[];const _=140,T=36,C=w.position.x+_/2,Q=w.position.y+T/2;return u.filter(M=>M.id!=="groove-root").map(M=>{var N;const V=M.position.x+105,H=M.position.y+120/2,U=V-C,X=H-Q;let R,j;Math.abs(X)>Math.abs(U)?X>0?(R="s-bottom",j="top"):(R="s-top",j="bottom"):U>0?(R="s-right",j="left"):(R="s-left",j="right");const P=((N=M.data)==null?void 0:N.status)==="running";return{id:`groove-${M.id}`,source:"groove-root",target:M.id,sourceHandle:R,targetHandle:j,type:"default",style:{stroke:P?"#5c6370":"#2c313a",strokeWidth:1},animated:P}})},[u]);B.useEffect(()=>{f(w=>{const _=new Map(w.map(T=>[T.id,T]));return g.map(T=>{const C=_.get(T.id);return C?{...C,data:T.data}:T})})},[g]);const v=B.useCallback(w=>{f(_=>{var C;const T=sE(w,_);for(const Q of w)if(Q.type==="position"&&Q.position&&!Q.dragging){const M=T.find(L=>L.id===Q.id),E=((C=M==null?void 0:M.data)==null?void 0:C.name)||Q.id;c.current[E]=Q.position;try{localStorage.setItem("groove:nodePositions",JSON.stringify(c.current))}catch{}}return T})},[]);B.useEffect(()=>{const w=t.length;a.current===0&&w===1&&setTimeout(()=>r({padding:.3,maxZoom:.85,duration:200}),50),a.current=w},[t.length,r]),B.useEffect(()=>{setTimeout(()=>r({padding:.3,maxZoom:.85,duration:0}),100)},[]);const S=B.useCallback((w,_)=>{_.id!=="groove-root"&&i(_.id)},[i]),x=B.useCallback(()=>{n()},[n]);return O.jsx(zN,{nodes:u,edges:m,nodeTypes:h8,onNodeClick:S,onNodesChange:v,onPaneClick:x,proOptions:{hideAttribution:!0},nodesConnectable:!1,elementsSelectable:!0,minZoom:.3,maxZoom:2,fitView:!0,fitViewOptions:{padding:.3,maxZoom:.85},children:O.jsx(XN,{color:"#3e4451",gap:20,size:1})})}function f8(){return O.jsx(PE,{children:O.jsx(d8,{})})}function p8({agent:t}){const[e,i]=B.useState(""),[n,r]=B.useState(null),s=B.useRef(),a=$e(_=>_.activityLog),c=$e(_=>_.instructAgent),h=$e(_=>_.queryAgent),u=$e(_=>_.showStatus),f=$e(_=>_.chatHistory),g=a[t.id]||[],m=f[t.id]||[],v=v8(m,g),S=t.status==="running"||t.status==="starting";B.useEffect(()=>{s.current&&(s.current.scrollTop=s.current.scrollHeight)},[v.length]);async function x(){const _=e.trim();if(!_||n)return;const T=_.startsWith("?"),C=T?_.slice(1).trim():_;if(C)if(i(""),T&&S){r("querying...");try{await h(t.id,C)}catch{}r(null)}else{r(S?"sending...":"continuing...");try{await c(t.id,C)}catch(Q){u(`failed: ${Q.message}`)}r(null)}}function w(_){_.key==="Enter"&&!_.shiftKey&&(_.preventDefault(),_.stopPropagation(),x())}return O.jsxs("div",{style:yt.container,children:[O.jsxs("div",{ref:s,style:yt.timeline,children:[v.length===0&&O.jsx("div",{style:yt.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((_,T)=>O.jsxs("div",{style:yt.entry,children:[_.from==="user"&&O.jsxs("div",{style:yt.userMsg,children:[O.jsx("span",{style:yt.userLabel,children:_.isQuery?"? you":"> you"}),O.jsx("div",{style:yt.userText,children:_.text})]}),_.from==="agent"&&O.jsxs("div",{style:yt.agentMsg,children:[O.jsx("span",{style:yt.agentLabel,children:t.name}),O.jsx("div",{style:yt.agentText,children:T===v.length-1&&_.from==="agent"&&Date.now()-_.timestamp<5e3?O.jsx(g8,{text:_.text}):O.jsx(L1,{text:_.text})})]}),_.from==="system"&&O.jsx("div",{style:yt.systemMsg,children:_.text}),O.jsx("span",{style:yt.time,children:new Date(_.timestamp).toLocaleTimeString()})]},T)),n&&O.jsx("div",{style:yt.statusMsg,children:n})]}),t.role==="planner"&&(t.status==="completed"||t.status==="crashed"||t.status==="stopped")&&O.jsx(m8,{showStatus:u}),O.jsxs("div",{style:yt.inputRow,children:[O.jsx("input",{style:yt.input,value:e,onChange:_=>i(_.target.value),onKeyDown:w,placeholder:S?"message or ?query...":"reply to continue...",disabled:!!n,spellCheck:!1}),O.jsx("button",{type:"button",onClick:x,disabled:!!n||!e.trim(),style:{...yt.sendBtn,opacity:n||!e.trim()?.3:1},children:"Send"}),O.jsx("button",{type:"button",onClick:()=>{const{chatHistory:_,activityLog:T}=$e.getState(),C={..._};delete C[t.id];const Q={...T};delete Q[t.id],$e.setState({chatHistory:C,activityLog:Q});try{localStorage.setItem("groove:chatHistory",JSON.stringify(C))}catch{}try{localStorage.setItem("groove:activityLog",JSON.stringify(Q))}catch{}},title:"Clear chat history",style:{background:"none",border:"none",color:"var(--text-muted)",fontSize:11,cursor:"pointer",fontFamily:"var(--font)",padding:"4px 6px",flexShrink:0},children:"Clear"})]})]})}function g8({text:t}){const[e,i]=B.useState(0),n=B.useRef(t);B.useEffect(()=>{n.current=t,i(0)},[t]),B.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(L1,{text:r}),!s&&O.jsx("span",{style:yt.cursor,children:"|"})]})}function m8({showStatus:t}){const[e,i]=B.useState(null),[n,r]=B.useState(!1),[s,a]=B.useState(!1);B.useEffect(()=>{const f=()=>fetch("/api/recommended-team").then(m=>m.json()).then(m=>{i(m.exists&&m.agents.length>0?m.agents:null)}).catch(()=>{});f();const g=setInterval(f,5e3);return()=>clearInterval(g)},[]);async function c(){r(!0);try{const g=await(await fetch("/api/recommended-team/launch",{method:"POST"})).json();g.launched?(t(`Launched ${g.launched} agents`),a(!0)):t(`Launch failed: ${g.error||"unknown"}`)}catch(f){t(`Launch failed: ${f.message}`)}r(!1)}if(!e||s)return null;const h=e.filter(f=>!f.phase||f.phase===1),u=e.filter(f=>f.phase===2);return O.jsxs("div",{style:yt.launchBox,children:[O.jsx("div",{style:yt.launchHeader,children:"Recommended Team"}),O.jsxs("div",{style:yt.launchList,children:[h.map((f,g)=>O.jsxs("div",{style:yt.launchAgent,children:[O.jsx("span",{style:yt.launchPhase,children:"1"}),O.jsx("span",{style:yt.launchRole,children:f.role}),O.jsxs("span",{style:yt.launchPrompt,children:[(f.prompt||"").slice(0,80),(f.prompt||"").length>80?"...":""]})]},`p1-${g}`)),u.map((f,g)=>O.jsxs("div",{style:{...yt.launchAgent,opacity:.7},children:[O.jsx("span",{style:{...yt.launchPhase,background:"var(--bg-active)",color:"var(--text-dim)"},children:"2"}),O.jsxs("span",{style:yt.launchRole,children:[f.role," ",O.jsx("span",{style:{fontWeight:400,color:"var(--text-dim)",fontSize:9},children:"auto after phase 1"})]}),O.jsxs("span",{style:yt.launchPrompt,children:[(f.prompt||"").slice(0,80),(f.prompt||"").length>80?"...":""]})]},`p2-${g}`))]}),O.jsx("button",{type:"button",onClick:c,disabled:n,style:{...yt.launchBtn,opacity:n?.5:1},children:n?"Launching...":"Launch Team"})]})}function L1({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:np(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:"-"}),np(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,"."]}),np(a)]},n)}return i.trim()?O.jsx("div",{children:np(i)},n):O.jsx("div",{style:{height:4}},n)}):null}function np(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 yt={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"},launchPhase:{width:16,height:16,borderRadius:3,flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center",fontSize:9,fontWeight:700,background:"rgba(51, 175, 188, 0.15)",color:"var(--accent)"},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=$e(u=>u.activityLog),i=$e(u=>u.tokenTimeline),n=e[t.id]||[],r=i[t.id]||[],s=Math.round((t.contextUsage||0)*100),a=t.spawnedAt?x8(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:li.container,children:[O.jsxs("div",{style:li.metricsGrid,children:[O.jsx(rp,{label:"Tokens",value:((h=t.tokensUsed)==null?void 0:h.toLocaleString())||"0"}),O.jsx(rp,{label:"Burn Rate",value:`${c}/min`}),O.jsx(rp,{label:"Uptime",value:a}),O.jsx(rp,{label:"Activity",value:`${n.length} events`})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:li.sectionLabel,children:"TOKEN HEARTBEAT"}),O.jsx(S8,{data:r,isAlive:t.status==="running"})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:li.sectionLabel,children:"CONTEXT USAGE"}),O.jsxs("div",{style:li.gaugeRow,children:[O.jsx("div",{style:li.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:li.gaugeLabel,children:[s,"%"]})]})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:li.sectionLabel,children:"ACTIVITY PULSE"}),O.jsx(b8,{activity:n})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:li.sectionLabel,children:"DETAILS"}),O.jsxs("div",{style:li.infoList,children:[O.jsx(Bo,{label:"ID",value:t.id}),O.jsx(Bo,{label:"Role",value:t.role}),O.jsx(Bo,{label:"Provider",value:t.provider}),O.jsx(Bo,{label:"Model",value:t.model||"default"}),t.workingDir&&O.jsx(Bo,{label:"Directory",value:t.workingDir}),O.jsx(Bo,{label:"Scope",value:(t.scope||[]).join(", ")||"unrestricted"}),O.jsx(Bo,{label:"Spawned",value:t.spawnedAt?new Date(t.spawnedAt).toLocaleTimeString():"-"}),O.jsx(Bo,{label:"Last Active",value:t.lastActivity?new Date(t.lastActivity).toLocaleTimeString():"-"})]})]}),t.prompt&&O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:li.sectionLabel,children:"ORIGINAL PROMPT"}),O.jsx("div",{style:li.promptBox,children:t.prompt})]}),O.jsxs("div",{style:{marginTop:16},children:[O.jsxs("div",{style:li.sectionLabel,children:["RECENT LOG (",n.length,")"]}),O.jsxs("div",{style:li.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((u,f)=>{var g;return O.jsxs("div",{style:li.logEntry,children:[O.jsx("span",{style:li.logTime,children:new Date(u.timestamp).toLocaleTimeString()}),O.jsx("span",{style:li.logText,children:(g=u.text)==null?void 0:g.slice(0,200)})]},f)})]})]})]})}function S8({data:t,isAlive:e}){const i=B.useRef();return B.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),u=Math.max(...c),f=u-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,x=a-4-(c[v]-h)/f*(a-8);r.lineTo(S,x)}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,x=a-4-(c[v]-h)/f*(a-8);v===0?r.moveTo(S,x):r.lineTo(S,x)}r.stroke();for(const v of g){const S=v/(t.length-1)*s,x=a-4-(c[v]-h)/f*(a-8);r.fillStyle="#e5c07b",r.beginPath(),r.arc(S,x,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(u.toLocaleString(),4,10),r.fillText(h.toLocaleString(),4,a-2)},[t,e]),O.jsx("div",{style:li.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 u=i-h.timestamp;if(u>n)continue;const f=Math.min(Math.floor((n-u)/r),39);s[f]++}const a=Math.max(...s,1),c=s.map((h,u)=>{const f=u/39*300,g=28-h/a*24;return`${f},${g}`}).join(" ");return O.jsx("div",{style:li.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 rp({label:t,value:e}){return O.jsxs("div",{style:li.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 Bo({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 x8(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 li={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 _8({initial:t,onSelect:e,onClose:i}){const[n,r]=B.useState(t||""),[s,a]=B.useState([]),[c,h]=B.useState(null);return B.useEffect(()=>{fetch(`/api/browse-system?path=${encodeURIComponent(n||"")}`).then(u=>u.json()).then(u=>{a(u.dirs||[]),h(u.parent),u.current&&r(u.current)}).catch(()=>{})},[n]),O.jsxs("div",{style:{border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-base)",marginTop:6,maxHeight:200,display:"flex",flexDirection:"column"},children:[O.jsxs("div",{style:{padding:"4px 8px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",flexShrink:0},children:[O.jsx("span",{style:{fontSize:10,color:"var(--text-dim)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:n}),O.jsx("button",{onClick:i,style:{background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",fontSize:12,fontFamily:"var(--font)"},children:"×"})]}),O.jsxs("div",{style:{flex:1,overflowY:"auto",minHeight:0},children:[c!==null&&O.jsx("button",{onClick:()=>r(c),style:{width:"100%",padding:"4px 8px",background:"none",border:"none",borderBottom:"1px solid var(--border)",textAlign:"left",cursor:"pointer",fontFamily:"var(--font)",fontSize:11,color:"var(--text-muted)"},children:".."}),s.map(u=>O.jsxs("button",{onClick:()=>r(u.path),style:{width:"100%",padding:"4px 8px",background:"none",border:"none",borderBottom:"1px solid var(--border)",textAlign:"left",cursor:"pointer",fontFamily:"var(--font)",fontSize:11,color:"var(--text-primary)"},children:[u.name,u.hasChildren?"/":""]},u.path))]}),O.jsx("div",{style:{padding:"4px 8px",borderTop:"1px solid var(--border)",flexShrink:0},children:O.jsx("button",{onClick:()=>{e(n),i()},style:{width:"100%",padding:"4px 8px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:3,fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},children:"Select This Directory"})})]})}function w8({agent:t}){const e=$e(te=>te.killAgent),i=$e(te=>te.rotateAgent),n=$e(te=>te.spawnAgent),r=$e(te=>te.instructAgent),s=$e(te=>te.showStatus),a=$e(te=>te.closeDetail),[c,h]=B.useState(!1),[u,f]=B.useState(!1),[g,m]=B.useState(""),[v,S]=B.useState(!1),[x,w]=B.useState(t.model||""),[_,T]=B.useState(!1),[C,Q]=B.useState(t.workingDir||""),[M,E]=B.useState(!1),[L,V]=B.useState([]),[H,U]=B.useState([]),[X,R]=B.useState(!1),j=t.status==="running"||t.status==="starting";B.useEffect(()=>{fetch("/api/providers").then(te=>te.json()).then(V).catch(()=>{}),fetch("/api/skills/installed").then(te=>te.json()).then(U).catch(()=>{})},[]);const P=L.find(te=>te.id===t.provider),N=(P==null?void 0:P.models)||[];async function $(){try{await i(t.id)}catch(te){s(`rotate failed: ${te.message}`)}}async function Z(){if(!c){h(!0),setTimeout(()=>h(!1),3e3);return}try{await e(t.id),s(`${t.name} killed`)}catch(te){s(`kill failed: ${te.message}`)}h(!1)}async function z(){if(!u){f(!0),setTimeout(()=>f(!1),3e3);return}try{await e(t.id,!0),a(),s(`${t.name} deleted`)}catch(te){s(`delete failed: ${te.message}`)}f(!1)}async function q(te){try{await fetch(`/api/agents/${t.id}/skills/${te}`,{method:"POST"}),s(`skill attached to ${t.name}`)}catch(we){s(`attach failed: ${we.message}`)}}async function F(te){try{await fetch(`/api/agents/${t.id}/skills/${te}`,{method:"DELETE"}),s(`skill detached from ${t.name}`)}catch(we){s(`detach failed: ${we.message}`)}}async function D(){try{const te=await n({role:t.role,scope:t.scope,prompt:t.prompt,provider:t.provider,model:t.model,skills:t.skills});s(`cloned as ${te.name}`)}catch(te){s(`clone failed: ${te.message}`)}}async function I(te){w(te);try{await fetch(`/api/agents/${t.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:te||null})}),s(`model set to ${te||"default"} (takes effect on next rotation)`)}catch(we){s(`model change failed: ${we.message}`)}}async function ee(){if(g.trim())try{await r(t.id,g.trim()),S(!1),m("")}catch(te){s(`prompt update failed: ${te.message}`)}}async function re(){try{await e(t.id,!0);const te=await n({role:t.role,scope:t.scope,prompt:t.prompt,provider:t.provider,model:t.model,skills:t.skills});s(`restarted as ${te.name}`)}catch(te){s(`restart failed: ${te.message}`)}}const[ce,fe]=B.useState(!1),[ge,pe]=B.useState(t.name||"");return O.jsxs("div",{style:Ie.container,children:[O.jsx("div",{style:Ie.sectionLabel,children:"NAME"}),ce?O.jsxs("div",{children:[O.jsx("input",{style:Ie.textarea,value:ge,onChange:te=>pe(te.target.value),placeholder:"Agent name...",autoFocus:!0,onKeyDown:te=>{te.key==="Enter"&&ge.trim()&&(fetch(`/api/agents/${t.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:ge.trim()})}),s("renamed"),fe(!1))}}),O.jsxs("div",{style:{display:"flex",gap:6,marginTop:6},children:[O.jsx("button",{onClick:()=>{fetch(`/api/agents/${t.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:ge.trim()})}),s("renamed"),fe(!1)},style:Ie.saveBtn,disabled:!ge.trim(),children:"Save"}),O.jsx("button",{onClick:()=>fe(!1),style:Ie.cancelBtn,children:"Cancel"})]})]}):O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[O.jsx("span",{style:{flex:1,fontSize:13,fontWeight:600,color:"var(--text-bright)"},children:t.name}),O.jsx("button",{onClick:()=>{fe(!0),pe(t.name||"")},style:Ie.editBtn,children:"Rename"})]}),O.jsx("div",{style:{...Ie.sectionLabel,marginTop:20},children:"LIFECYCLE"}),O.jsxs("div",{style:Ie.btnGrid,children:[j&&O.jsxs(O.Fragment,{children:[O.jsx(Uh,{icon:"~",label:"Rotate",desc:"Fresh context + handoff brief",onClick:$,color:"var(--accent)"}),O.jsx(Uh,{icon:"||",label:c?"Confirm Kill":"Stop",desc:"Stop the agent process",onClick:Z,color:c?"var(--red)":"var(--amber)"})]}),!j&&O.jsx(Uh,{icon:">",label:"Restart",desc:"Spawn fresh with same config",onClick:re,color:"var(--green)"}),O.jsx(Uh,{icon:"+",label:"Clone",desc:"Spawn duplicate agent",onClick:D,color:"var(--accent)"}),O.jsx(Uh,{icon:"x",label:u?"Confirm Delete":"Delete",desc:"Kill and remove permanently",onClick:z,color:u?"var(--red)":"var(--text-dim)"})]}),O.jsxs("div",{style:{...Ie.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:Ie.select,value:x,onChange:te=>I(te.target.value),children:[O.jsx("option",{value:"",children:"Default"}),N.map(te=>O.jsxs("option",{value:te.id,children:[te.name," (",te.tier,")"]},te.id))]}),O.jsx("div",{style:Ie.fieldHint,children:"Changes take effect on next rotation"}),O.jsx("div",{style:{...Ie.sectionLabel,marginTop:20},children:"DIRECTORY"}),_?O.jsxs("div",{children:[O.jsxs("div",{style:{display:"flex",gap:6},children:[O.jsx("input",{style:{...Ie.textarea,flex:1},value:C,onChange:te=>Q(te.target.value),placeholder:"/absolute/path/to/project",autoFocus:!0}),O.jsx("button",{onClick:()=>E(!0),style:{...Ie.editBtn,flexShrink:0,marginTop:0},children:"Browse"})]}),M&&O.jsx(_8,{initial:C,onSelect:te=>{Q(te),E(!1)},onClose:()=>E(!1)}),O.jsxs("div",{style:{display:"flex",gap:6,marginTop:6},children:[O.jsx("button",{onClick:async()=>{try{await fetch(`/api/agents/${t.id}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({workingDir:C.trim()||null})}),s("directory set — takes effect on next rotation/restart"),T(!1)}catch(te){s(`failed: ${te.message}`)}},style:Ie.saveBtn,children:"Save"}),O.jsx("button",{onClick:()=>{T(!1),E(!1)},style:Ie.cancelBtn,children:"Cancel"})]}),O.jsx("div",{style:Ie.fieldHint,children:"Takes effect on next rotation or restart"})]}):O.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[O.jsx("div",{style:{flex:1,fontSize:11,color:t.workingDir?"var(--text-primary)":"var(--text-muted)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t.workingDir||"project root"}),O.jsx("button",{onClick:()=>{T(!0),Q(t.workingDir||"")},style:Ie.editBtn,children:"Change"})]}),O.jsx("div",{style:{...Ie.sectionLabel,marginTop:20},children:"PROMPT"}),t.prompt&&!v&&O.jsxs("div",{style:Ie.currentPrompt,children:[O.jsx("div",{style:Ie.promptText,children:t.prompt}),j&&O.jsx("button",{onClick:()=>{S(!0),m("")},style:Ie.editBtn,children:"Send New Instruction"})]}),!t.prompt&&!v&&O.jsx("div",{style:Ie.noPrompt,children:"No prompt set"}),v&&O.jsxs("div",{children:[O.jsx("textarea",{style:Ie.textarea,value:g,onChange:te=>m(te.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:ee,style:Ie.saveBtn,disabled:!g.trim(),children:"Send (rotates agent)"}),O.jsx("button",{onClick:()=>S(!1),style:Ie.cancelBtn,children:"Cancel"})]})]}),O.jsxs("div",{style:{...Ie.sectionLabel,marginTop:20},children:["SKILLS (",(t.skills||[]).length,")"]}),(t.skills||[]).length>0?O.jsx("div",{style:Ie.skillsList,children:(t.skills||[]).map(te=>{const we=H.find(Re=>Re.id===te);return O.jsxs("div",{style:Ie.skillRow,children:[O.jsx("span",{style:Ie.skillRowIcon,children:(we==null?void 0:we.icon)||te.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:(we==null?void 0:we.name)||te}),O.jsx("div",{style:{fontSize:9,color:"var(--text-muted)"},children:(we==null?void 0:we.author)||"unknown"})]}),O.jsx("button",{onClick:()=>F(te),style:Ie.detachBtn,title:"Detach skill",children:"✕"})]},te)})}):O.jsx("div",{style:Ie.noPrompt,children:"No skills attached"}),!X&&H.length>0&&O.jsx("button",{onClick:()=>R(!0),style:{...Ie.editBtn,marginTop:6},children:"+ Attach Skill"}),X&&O.jsxs("div",{style:Ie.skillPicker,children:[H.filter(te=>!(t.skills||[]).includes(te.id)).map(te=>O.jsxs("button",{onClick:()=>{q(te.id),R(!1)},style:Ie.skillPickerItem,children:[O.jsx("span",{style:Ie.skillRowIcon,children:te.icon||te.name.charAt(0)}),O.jsxs("div",{style:{flex:1},children:[O.jsx("div",{style:{fontSize:11,color:"var(--text-primary)"},children:te.name}),O.jsx("div",{style:{fontSize:9,color:"var(--text-muted)"},children:te.author})]})]},te.id)),H.filter(te=>!(t.skills||[]).includes(te.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:()=>R(!1),style:Ie.cancelBtn,children:"cancel"})]}),O.jsx("div",{style:{...Ie.sectionLabel,marginTop:20},children:"CONFIGURATION"}),O.jsx(oc,{label:"ID",value:t.id}),O.jsx(oc,{label:"Role",value:t.role}),O.jsx(oc,{label:"Provider",value:t.provider}),O.jsx(oc,{label:"Model",value:t.routingMode==="auto"?`auto (${t.model||"pending"})`:t.model||"default"}),O.jsx(oc,{label:"Scope",value:(t.scope||[]).join(", ")||"unrestricted"}),O.jsx(oc,{label:"Status",value:t.status})]})}function Uh({icon:t,label:e,desc:i,onClick:n,color:r}){return O.jsxs("button",{onClick:n,style:{...Ie.actionBtn,borderColor:r},children:[O.jsx("span",{style:{...Ie.actionIcon,color:r},children:t}),O.jsxs("div",{children:[O.jsx("div",{style:Ie.actionTitle,children:e}),O.jsx("div",{style:Ie.actionDesc,children:i})]})]})}function oc({label:t,value:e}){return O.jsxs("div",{style:Ie.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 Ie={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"}},k8=[{id:"chat",label:"Chat"},{id:"stats",label:"Stats"},{id:"actions",label:"Actions"}],C8={running:"var(--green)",starting:"var(--amber)",stopped:"var(--text-dim)",crashed:"var(--red)",completed:"var(--accent)",killed:"var(--text-dim)"};function T8(){const[t,e]=B.useState("chat"),i=$e(c=>c.detailPanel),r=$e(c=>c.agents).find(c=>c.id===(i==null?void 0:i.agentId));if(!r)return O.jsx("div",{style:Lo.empty,children:"Agent not found"});const s=C8[r.status]||"var(--text-dim)",a=r.status==="running"||r.status==="starting";return O.jsxs("div",{style:Lo.container,children:[O.jsxs("div",{style:Lo.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:Lo.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:Lo.agentMeta,children:[r.role," / ",r.provider]})]}),O.jsx("div",{style:Lo.tabBar,children:k8.map(c=>O.jsx("button",{onClick:()=>e(c.id),style:{...Lo.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:Lo.tabContent,children:[t==="chat"&&O.jsx(p8,{agent:r}),t==="stats"&&O.jsx(y8,{agent:r}),t==="actions"&&O.jsx(w8,{agent:r})]})]})}const Lo={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 Q8(){const t=$e(i=>i.openDetail),e=$e(i=>i.connected);return O.jsx("div",{style:Sr.container,children:O.jsx("div",{style:Sr.inner,children:e?O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Sr.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:Sr.title,children:"Ready to orchestrate"}),O.jsx("div",{style:Sr.hint,children:"Spawn your first agent to start building"}),O.jsx("button",{onClick:()=>t({type:"spawn"}),style:Sr.spawnBtn,children:"Spawn Agent"})]}):O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Sr.pulseRing,children:O.jsx("div",{style:Sr.pulseCore})}),O.jsx("div",{style:Sr.title,children:"Connecting to daemon..."}),O.jsx("div",{style:Sr.hint,children:"Make sure the GROOVE daemon is running"}),O.jsx("code",{style:Sr.code,children:"groove start"})]})})})}const Sr={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 $8({initial:t,onSelect:e,onClose:i}){const[n,r]=B.useState(t||""),[s,a]=B.useState([]),[c,h]=B.useState(null);return B.useEffect(()=>{fetch(`/api/browse-system?path=${encodeURIComponent(n||"")}`).then(u=>u.json()).then(u=>{a(u.dirs||[]),h(u.parent),u.current&&r(u.current)}).catch(()=>{})},[n]),O.jsxs("div",{style:{border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-base)",marginTop:6,maxHeight:200,display:"flex",flexDirection:"column"},children:[O.jsxs("div",{style:{padding:"4px 8px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",justifyContent:"space-between",flexShrink:0},children:[O.jsx("span",{style:{fontSize:10,color:"var(--text-dim)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:n}),O.jsx("button",{type:"button",onClick:i,style:{background:"none",border:"none",color:"var(--text-dim)",cursor:"pointer",fontSize:12,fontFamily:"var(--font)"},children:"×"})]}),O.jsxs("div",{style:{flex:1,overflowY:"auto",minHeight:0},children:[c!==null&&O.jsx("button",{type:"button",onClick:()=>r(c),style:{width:"100%",padding:"4px 8px",background:"none",border:"none",borderBottom:"1px solid var(--border)",textAlign:"left",cursor:"pointer",fontFamily:"var(--font)",fontSize:11,color:"var(--text-muted)"},children:".."}),s.map(u=>O.jsxs("button",{type:"button",onClick:()=>r(u.path),style:{width:"100%",padding:"4px 8px",background:"none",border:"none",borderBottom:"1px solid var(--border)",textAlign:"left",cursor:"pointer",fontFamily:"var(--font)",fontSize:11,color:"var(--text-primary)"},children:[u.name,u.hasChildren?"/":""]},u.path))]}),O.jsx("div",{style:{padding:"4px 8px",borderTop:"1px solid var(--border)",flexShrink:0},children:O.jsx("button",{type:"button",onClick:()=>{e(n),i()},style:{width:"100%",padding:"4px 8px",background:"var(--accent)",color:"var(--bg-base)",border:"none",borderRadius:3,fontSize:11,fontWeight:600,cursor:"pointer",fontFamily:"var(--font)"},children:"Select This Directory"})})]})}const sp=[{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"]}],P8=[{id:"auto",label:"Auto",desc:"AI PM reviews risky operations",icon:"~"},{id:"full",label:"Full Send",desc:"No reviews, max speed",icon:">"}],E8=[{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 R8(){const t=$e(J=>J.spawnAgent),e=$e(J=>J.closeDetail),[i,n]=B.useState(""),[r,s]=B.useState(""),[a,c]=B.useState(""),[h,u]=B.useState(""),[f,g]=B.useState(""),[m,v]=B.useState("auto"),[S,x]=B.useState("claude-code"),[w,_]=B.useState("auto"),[T,C]=B.useState("high"),[Q,M]=B.useState([]),[E,L]=B.useState(!1),[V,H]=B.useState(""),[U,X]=B.useState(!1),[R,j]=B.useState(""),[P,N]=B.useState(""),[$,Z]=B.useState([]),[z,q]=B.useState(null),[F,D]=B.useState(""),[I,ee]=B.useState(!1),[re,ce]=B.useState(!1),[fe,ge]=B.useState([]),[pe,te]=B.useState([]),[we,Re]=B.useState([]),[Ce,Oe]=B.useState([]),[Xe,st]=B.useState(!1),[Fe,Lt]=B.useState(!1),[Si,Pi]=B.useState(""),[ln,cn]=B.useState(!1),[Zi,as]=B.useState(!1),[ii,Js]=B.useState("0 9 * * *"),[Hn,Rr]=B.useState(""),[ls,eo]=B.useState(!1),[hn,cs]=B.useState([]),[hs,Ar]=B.useState(""),[qt,Ki]=B.useState(!1),[Wi,yl]=B.useState(!1),Sl=B.useRef(null);B.useEffect(()=>{bl(),to(),io(),no(),fetch("/api/anthropic-key/status").then(J=>J.json()).then(J=>st(J.configured)).catch(()=>{}),fetch("/api/config").then(J=>J.json()).then(J=>{J.defaultWorkingDir&&(j(J.defaultWorkingDir),N(J.defaultWorkingDir))}).catch(()=>{})},[]),B.useEffect(()=>{var J;(J=Sl.current)==null||J.scrollIntoView({behavior:"smooth"})},[hn,qt]);async function bl(){try{const J=await fetch("/api/providers");M(await J.json())}catch{}}async function to(){try{const Ne=await(await fetch("/api/indexer/workspaces")).json();Z(Ne.workspaces||[])}catch{}}async function io(){try{const J=await fetch("/api/skills/installed");ge(await J.json())}catch{}}async function no(){try{const J=await fetch("/api/integrations/installed");Re(await J.json())}catch{}}function gr(J){te(Ne=>Ne.includes(J)?Ne.filter(lt=>lt!==J):[...Ne,J])}function ro(J){Oe(Ne=>Ne.includes(J)?Ne.filter(lt=>lt!==J):[...Ne,J])}B.useEffect(()=>{const J=sp.find(Ne=>Ne.id===i);if(J!=null&&J.integrations&&we.length>0){const Ne=J.integrations.filter(lt=>we.some(Mt=>Mt.id===lt&&Mt.configured));Oe(Ne)}},[i,we]);const Cn=sp.find(J=>J.id===i),pa=i==="custom"?h:(Cn==null?void 0:Cn.scope.join(", "))||"",so=i==="planner";function ga(J){if(J.installed&&(J.authType==="subscription"||J.authType==="local"||J.hasKey)){x(J.id),_("auto"),q(null);return}q(J.id),D("")}async function Mr(){if(!(!F.trim()||!z)){ee(!0);try{await fetch(`/api/credentials/${z}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:F.trim()})}),D(""),q(null),x(z),_("auto"),await bl()}catch{}ee(!1)}}function eh(J){return J.installed?J.authType==="api-key"&&!J.hasKey?"needs key":J.authType==="subscription"?"subscription":J.authType==="local"?"local":"ready":"not installed"}function xl(J){return!(!J.installed||J.authType==="api-key"&&!J.hasKey)}async function ma(){if(!hs.trim()||qt)return;const J=hs.trim();Ar(""),cs(Ne=>[...Ne,{from:"user",text:J}]),Ki(!0),yl(!1);try{const Ne=i==="custom"?r:i,lt=[Ne?`Agent role: ${Ne}`:null,f?`Current task prompt: ${f}`:null].filter(Boolean).join(`
74
+ `),Mt=hn.map(qi=>`${qi.from==="user"?"User":"AI"}: ${qi.text}`).join(`
75
+ `),Pt=await(await fetch("/api/journalist/query",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:`${lt}
76
+
77
+ ${Mt}
78
+ User: ${J}
79
+
80
+ Respond helpfully:`})})).json();Pt.mode==="research"?cs(qi=>[...qi,{from:"ai",text:Pt.response||"No response",mode:"research"}]):cs(qi=>[...qi,{from:"ai",text:Pt.response||Pt.error||"No response"}])}catch{cs(Ne=>[...Ne,{from:"ai",text:"Failed to reach AI. Write your prompt directly."}])}Ki(!1),yl(!1)}async function _l(){Ki(!0);try{const J=hn.map(St=>`${St.from==="user"?"User":"AI"}: ${St.text}`).join(`
81
+
82
+ `),Mt=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
+ ${J}`})})).json();Mt.response&&(g(Mt.response),eo(!1))}catch{const J=[...hn].reverse().find(Ne=>Ne.from==="ai");J&&g(J.text),eo(!1)}Ki(!1)}async function Oa(J){J.preventDefault();const Ne=i==="custom"?r:i;if(!Ne){H("Select a role");return}L(!0),H("");try{const lt=pa?pa.split(",").map(St=>St.trim()).filter(Boolean):[],Mt={role:Ne,scope:lt,prompt:f||null,...a.trim()?{name:a.trim()}:{},model:w||"auto",provider:S,permission:m,effort:T,...P.trim()?{workingDir:P.trim()}:{},...pe.length>0?{skills:pe}:{},...Ce.length>0?{integrations:Ce}:{}};Zi&&await fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:Hn.trim()||`${Ne}-schedule`,cron:ii,agentConfig:{role:Ne,prompt:f||null}})}),await t(Mt),e()}catch(lt){H(lt.message)}finally{L(!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:[V&&O.jsx("span",{style:Se.headerError,children:V}),O.jsx("button",{onClick:Oa,disabled:E||!i,style:{...Se.spawnBtn,opacity:E||!i?.4:1},children:E?"Spawning...":Zi?"Spawn + Schedule":so?"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(nr,{label:"Role",children:[O.jsx("div",{style:Se.roleGrid,children:sp.filter(J=>J.category==="coding").map(J=>O.jsx(h2,{preset:J,active:i===J.id,onClick:()=>n(J.id)},J.id))}),O.jsx("div",{style:{...Se.sectionSub,marginTop:8},children:"Business"}),O.jsxs("div",{style:Se.roleGrid,children:[sp.filter(J=>J.category==="business").map(J=>O.jsx(h2,{preset:J,active:i===J.id,onClick:()=>n(J.id)},J.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:J=>s(J.target.value),autoFocus:!0}),Cn&&O.jsx("div",{style:Se.hint,children:Cn.desc})]}),O.jsx(nr,{label:"Name (optional)",children:O.jsx("input",{style:Se.input,placeholder:"e.g. Skills Developer, Node Manager...",value:a,onChange:J=>c(J.target.value)})}),O.jsxs(nr,{label:"Directory",children:[R&&O.jsxs("div",{style:{fontSize:10,color:"var(--text-dim)",marginBottom:6},children:["Global: ",O.jsx("span",{style:{color:"var(--text-primary)"},children:R.split("/").pop()}),O.jsx("button",{type:"button",onClick:async()=>{await fetch("/api/config",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({defaultWorkingDir:""})}),j(""),N("")},style:{background:"none",border:"none",color:"var(--text-muted)",fontSize:9,cursor:"pointer",fontFamily:"var(--font)",marginLeft:6},children:"clear"})]}),O.jsxs("div",{style:Se.chipRow,children:[O.jsx(op,{label:"project root",active:!P,onClick:()=>N("")}),R&&O.jsx(op,{label:R.split("/").pop(),active:P===R,onClick:()=>N(R)}),$.map(J=>O.jsx(op,{label:J.path,active:P===J.path,onClick:()=>N(J.path)},J.path)),O.jsx("button",{type:"button",onClick:()=>ce(!0),style:Se.browseBtn,children:"Browse..."})]}),re&&O.jsx($8,{initial:P,onSelect:J=>{N(J),!R&&J&&(fetch("/api/config",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({defaultWorkingDir:J})}),j(J))},onClose:()=>ce(!1)}),P&&P!==R&&O.jsx("button",{type:"button",onClick:async()=>{await fetch("/api/config",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({defaultWorkingDir:P})}),j(P)},style:{...Se.chip,marginTop:4,fontSize:9,color:"var(--accent)",borderColor:"var(--accent)"},children:"Set as default for all agents"})]}),O.jsx(nr,{label:"Permissions",children:O.jsx("div",{style:{display:"flex",gap:6},children:P8.map(J=>O.jsxs("button",{type:"button",onClick:()=>v(J.id),style:{...Se.permBtn,...m===J.id?Se.permBtnActive:{}},children:[O.jsx("span",{style:Se.permIcon,children:J.icon}),O.jsxs("div",{children:[O.jsx("div",{style:{fontSize:11,fontWeight:600,color:m===J.id?"var(--text-bright)":"var(--text-primary)"},children:J.label}),O.jsx("div",{style:{fontSize:9,color:"var(--text-dim)"},children:J.desc})]})]},J.id))})}),O.jsx(nr,{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(J=>O.jsx("button",{type:"button",onClick:()=>C(J.id),title:J.desc,style:{...Se.chip,flex:1,textAlign:"center",padding:"5px 4px",...T===J.id?{borderColor:"var(--accent)",color:"var(--text-bright)",background:"rgba(51, 175, 188, 0.08)"}:{}},children:J.label},J.id))})}),we.length>0&&O.jsx(nr,{label:`Integrations (${Ce.length})`,children:O.jsx("div",{style:Se.itemList,children:we.map(J=>{const Ne=Ce.includes(J.id),lt=J.configured;return O.jsx(u2,{name:J.name,active:Ne,sub:lt?"connected":"needs setup",subColor:lt?"var(--green)":"var(--amber)",disabled:!lt,onClick:()=>lt&&ro(J.id)},J.id)})})}),fe.length>0&&O.jsx(nr,{label:`Skills (${pe.length})`,children:O.jsx("div",{style:Se.itemList,children:fe.map(J=>{const Ne=pe.includes(J.id);return O.jsx(u2,{name:J.name,active:Ne,sub:J.author||"local",onClick:()=>gr(J.id)},J.id)})})}),O.jsxs(nr,{label:"Schedule",children:[O.jsxs("button",{type:"button",onClick:()=>as(!Zi),style:{...Se.toggleBtn,borderColor:Zi?"var(--accent)":"var(--border)"},children:[O.jsx("span",{style:{...Se.checkbox,background:Zi?"var(--accent)":"transparent",borderColor:Zi?"var(--accent)":"var(--border)"},children:Zi?"✓":""}),O.jsx("span",{style:{fontSize:11,color:"var(--text-primary)"},children:"Recurring schedule"})]}),Zi&&O.jsxs("div",{style:{marginTop:8,display:"flex",flexDirection:"column",gap:6},children:[O.jsx("input",{style:Se.input,placeholder:`${i||"agent"}-daily`,value:Hn,onChange:J=>Rr(J.target.value)}),O.jsx("div",{style:Se.chipRow,children:E8.map(J=>O.jsx(op,{label:J.label,active:ii===J.value,onClick:()=>Js(J.value)},J.value))})]})]}),O.jsx(nr,{label:"Anthropic API Key",children:Xe?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"}),st(!1)},style:{...Se.cancelBtn,fontSize:9},children:"remove"})]}):Fe?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:Si,onChange:J=>Pi(J.target.value),onKeyDown:J=>J.key==="Enter"&&Si&&(async()=>{cn(!0),await fetch("/api/credentials/anthropic-api",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:Si})}),st(!0),Lt(!1),Pi(""),cn(!1)})()}),O.jsx("button",{type:"button",disabled:!Si||ln,onClick:async()=>{cn(!0),await fetch("/api/credentials/anthropic-api",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:Si})}),st(!0),Lt(!1),Pi(""),cn(!1)},style:{...Se.saveKeyBtn,opacity:Si?1:.4},children:ln?"...":"Save"})]}),O.jsx("button",{type:"button",onClick:()=>Lt(!1),style:Se.cancelBtn,children:"cancel"})]}):O.jsx("button",{type:"button",onClick:()=>Lt(!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:()=>X(!U),style:Se.advToggle,children:U?"- hide advanced":"+ advanced"}),U&&O.jsxs(O.Fragment,{children:[O.jsx(nr,{label:"Provider",children:Q.map(J=>{const Ne=xl(J),lt=eh(J),Mt=S===J.id,St=z===J.id;return O.jsxs("div",{style:{marginBottom:3},children:[O.jsxs("button",{type:"button",onClick:()=>ga(J),style:{...Se.providerBtn,borderColor:Mt?"var(--accent)":"var(--border)",opacity:Ne||St?1:.5},children:[O.jsx("span",{style:{fontSize:11,fontWeight:600,color:Mt?"var(--text-bright)":"var(--text-primary)"},children:J.name}),O.jsx("span",{style:{fontSize:10,color:Ne?"var(--green)":"var(--text-dim)",marginLeft:"auto"},children:Ne?Mt?"active":"ready":lt})]}),St&&O.jsxs("div",{style:Se.connectBox,children:[!J.installed&&O.jsx("div",{children:O.jsx("code",{style:Se.code,children:J.installCommand})}),J.installed&&J.authType==="api-key"&&!J.hasKey&&O.jsxs("div",{style:{display:"flex",gap:4},children:[O.jsx("input",{type:"password",style:{...Se.input,flex:1},placeholder:`${J.envKey||"API key"}...`,value:F,onChange:Pt=>D(Pt.target.value),onKeyDown:Pt=>Pt.key==="Enter"&&Mr()}),O.jsx("button",{type:"button",onClick:Mr,style:Se.saveKeyBtn,children:I?"...":"Save"})]}),O.jsx("button",{type:"button",onClick:()=>q(null),style:Se.cancelBtn,children:"cancel"})]})]},J.id)})}),O.jsx(nr,{label:"Model",children:(()=>{var Ne;const J=((Ne=Q.find(lt=>lt.id===S))==null?void 0:Ne.models)||[];return J.length?O.jsxs("select",{style:Se.input,value:w,onChange:lt=>_(lt.target.value),children:[O.jsx("option",{value:"auto",children:"Auto (recommended)"}),J.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(nr,{label:"File Scope",children:[O.jsx("input",{style:Se.input,placeholder:"e.g. src/api/**, src/lib/**",value:i==="custom"?h:pa,onChange:J=>{i==="custom"&&u(J.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:ls?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:[hn.length>0&&!qt&&O.jsxs(O.Fragment,{children:[O.jsx("button",{type:"button",onClick:_l,style:Se.usePlanBtn,children:"Generate Prompt"}),O.jsx("button",{type:"button",onClick:()=>cs([]),style:Se.closePlanBtn,children:"Clear"})]}),O.jsx("button",{type:"button",onClick:()=>eo(!1),style:Se.closePlanBtn,children:"Back to Prompt"})]})]}),O.jsxs("div",{style:Se.chatMessages,children:[hn.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})]})]})]}),hn.map((J,Ne)=>O.jsxs("div",{style:{...Se.chatBubble,...J.from==="user"?Se.chatUser:Se.chatAI},children:[O.jsx("div",{style:Se.chatFrom,children:J.from==="user"?"You":"AI"}),O.jsx("div",{style:Se.chatText,children:J.from==="ai"?O.jsx(L1,{text:J.text}):J.text})]},Ne)),qt&&(Xe?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(A8,{})),O.jsx("div",{ref:Sl})]}),O.jsxs("div",{style:Se.chatInputBar,children:[O.jsx("input",{style:Se.chatInput,placeholder:"Describe your idea, ask questions, refine the plan...",value:hs,onChange:J=>Ar(J.target.value),onKeyDown:J=>{J.key==="Enter"&&!J.shiftKey&&(J.preventDefault(),ma())},autoFocus:!0}),O.jsx("button",{type:"button",onClick:ma,disabled:qt||!hs.trim(),style:{...Se.sendBtn,opacity:qt||!hs.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:so?"WHAT TO PLAN":"TASK PROMPT"}),O.jsx("button",{type:"button",onClick:()=>eo(!0),style:Se.planBtn,children:"Plan with AI"})]}),O.jsx("textarea",{style:Se.promptArea,placeholder:so?`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:f,onChange:J=>g(J.target.value)})]})})]})]})})}const c2=["Analyzing request","Evaluating approach","Considering scope","Identifying constraints","Crafting plan"];function A8(){const[t,e]=B.useState(0),[i,n]=B.useState(1);return B.useEffect(()=>{const r=setInterval(()=>e(a=>(a+1)%c2.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:c2.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 nr({label:t,children:e}){return O.jsxs("div",{style:{marginBottom:14},children:[O.jsx("div",{style:Se.sectionLabel,children:t}),e]})}function h2({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 op({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 u2({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 M8(){var a;const[t,e]=B.useState(null),[i,n]=B.useState(!0);B.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:Vi.header,children:[O.jsx("span",{style:Vi.title,children:"THE JOURNALIST"}),O.jsx("button",{onClick:s,disabled:i,style:Vi.btn,children:i?"synthesizing...":"Run Cycle"})]}),O.jsxs("div",{style:Vi.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:Vi.sectionLabel,children:"SUMMARY"}),O.jsx("div",{style:Vi.textBox,children:t.lastSynthesis.summary}),t.lastSynthesis.projectMap&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Vi.sectionLabel,children:"PROJECT MAP"}),O.jsx("pre",{style:Vi.codeBox,children:t.lastSynthesis.projectMap})]}),t.lastSynthesis.decisions&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Vi.sectionLabel,children:"DECISIONS"}),O.jsx("pre",{style:Vi.codeBox,children:t.lastSynthesis.decisions})]})]}):O.jsx("div",{style:Vi.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:Vi.sectionLabel,children:"HISTORY"}),O.jsx("div",{style:Vi.historyList,children:t.history.slice().reverse().map((c,h)=>{var u;return O.jsxs("div",{style:Vi.historyEntry,children:[O.jsx("span",{style:Vi.historyTime,children:new Date(c.timestamp).toLocaleTimeString()}),O.jsxs("span",{style:Vi.historyText,children:["Cycle ",c.cycle,": ",c.agentCount," agent",c.agentCount!==1?"s":""," — ",(u=c.summary)==null?void 0:u.slice(0,80)]})]},h)})})]})]})}const Vi={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 z8(){const[t,e]=B.useState([]),[i,n]=B.useState(null),[r,s]=B.useState(!1),[a,c]=B.useState(""),h=$e(v=>v.showStatus);B.useEffect(()=>{u();const v=setInterval(u,5e3);return()=>clearInterval(v)},[]);async function u(){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}"`),u()}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),u()}catch{h("failed to save team")}}async function m(v){await fetch(`/api/teams/${encodeURIComponent(v)}`,{method:"DELETE"}),h(`deleted "${v}"`),u()}return O.jsxs("div",{style:yn.container,children:[O.jsx("div",{style:yn.title,children:"SAVED TEAMS"}),t.length===0?O.jsx("div",{style:yn.empty,children:"No saved teams"}):t.map(v=>O.jsxs("div",{style:{...yn.item,background:v.name===i?"var(--bg-hover)":"transparent"},children:[O.jsxs("div",{style:{flex:1},children:[O.jsxs("div",{style:yn.teamName,children:[">"," ",v.name]}),O.jsxs("div",{style:yn.teamMeta,children:[v.agents," agents"]})]}),O.jsxs("div",{style:{display:"flex",gap:8},children:[O.jsx("button",{onClick:()=>f(v.name),style:yn.loadBtn,children:"Load"}),O.jsx("button",{onClick:()=>m(v.name),style:yn.deleteBtn,children:"x"})]})]},v.name)),O.jsx("div",{style:yn.divider}),r?O.jsxs("div",{style:yn.saveRow,children:[O.jsx("input",{style:yn.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:yn.saveBtn,children:"Save"}),O.jsx("button",{onClick:()=>s(!1),style:yn.cancelBtn,children:"x"})]}):O.jsx("button",{onClick:()=>s(!0),style:yn.saveTeamBtn,children:"Save Current as Team"})]})}const yn={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)"}},Wa="#4ae168",X1="#33afbc",N1="#e5c07b",Z1="#e06c75",j8="#c678dd",D8="#61afef",pc=[X1,N1,Wa,j8,Z1,D8,"#d19a66"],B8={medium:.009};function L8(){const[t,e]=B.useState(null),i=$e(v=>v.agents),n=$e(v=>v.dashTelemetry);B.useEffect(()=>{r();const v=setInterval(r,4e3);return()=>clearInterval(v)},[]);async function r(){try{const S=await(await fetch("/api/dashboard")).json();e(S),$e.setState(x=>{const w={...x.dashTelemetry},_=Date.now();for(const T of S.agents.breakdown){w[T.id]||(w[T.id]=[]);const C=w[T.id],Q=C[C.length-1];(!Q||T.tokens!==Q.v||_-Q.t>1e4)&&(C.push({t:_,v:T.tokens||0,name:T.name}),C.length>200&&(w[T.id]=C.slice(-200)))}return{dashTelemetry:w}})}catch{}}if(!t)return O.jsxs("div",{style:mt.loadingRoot,children:[O.jsx("div",{style:mt.loadingText,children:"COMMAND CENTER"}),O.jsx("div",{style:mt.loadingBar,children:O.jsx("div",{style:mt.loadingFill})})]});const{tokens:s,routing:a,rotation:c,adaptive:h,journalist:u,uptime:f}=t,g=t.agents.breakdown,m=s.savings.total/1e3*B8.medium;return O.jsxs("div",{style:mt.root,children:[O.jsxs("div",{style:mt.statBar,children:[O.jsx(Gh,{label:"Total Tokens",value:qo(s.totalTokens),sub:`${t.agents.total} agent${t.agents.total!==1?"s":""}`}),O.jsx(Gh,{label:"Tokens Saved",value:qo(s.savings.total),sub:`${s.savings.percentage||0}% efficiency`,color:Wa}),O.jsx(Gh,{label:"Est. Savings",value:m>0?`$${m.toFixed(2)}`:"$0.00",sub:"based on token costs",color:Wa}),O.jsx(Gh,{label:"Rotations",value:c.totalRotations,sub:`${qo(c.totalTokensSaved)} tok recovered`}),O.jsx(Gh,{label:"Uptime",value:Z8(f),sub:`${t.agents.running} running`})]}),O.jsxs("div",{style:mt.midRow,children:[O.jsxs("div",{style:mt.chartPanel,children:[O.jsxs("div",{style:mt.panelHead,children:[O.jsx("span",{children:"Token Usage"}),O.jsx("span",{style:mt.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:pc[S%pc.length],display:"inline-block",borderRadius:1}}),O.jsx("span",{style:{fontSize:9},children:v.name})]},v.id))})]}),O.jsx(N8,{tokenTimeline:n,agents:i})]}),O.jsxs("div",{style:mt.donutPanel,children:[O.jsx("div",{style:mt.panelHead,children:"Model Routing"}),O.jsx(X8,{routing:a})]})]}),O.jsxs("div",{style:mt.bottomRow,children:[O.jsxs("div",{style:mt.panel,children:[O.jsx("div",{style:mt.panelHead,children:"Savings Breakdown"}),O.jsxs("div",{style:mt.scrollInner,children:[O.jsx(ap,{label:"Rotation",value:s.savings.fromRotation,max:s.savings.total||1,color:X1}),O.jsx(ap,{label:"Conflict Prevention",value:s.savings.fromConflictPrevention,max:s.savings.total||1,color:N1}),O.jsx(ap,{label:"Cold-Start Skip",value:s.savings.fromColdStartSkip,max:s.savings.total||1,color:Wa}),O.jsx("div",{style:mt.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:Z1,fontWeight:600},children:qo(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:Wa,fontWeight:600},children:qo(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)."}),u.lastSummary&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:mt.divider}),O.jsx("div",{style:mt.panelHead,children:"Journalist"}),O.jsx("div",{style:mt.journSummary,children:u.lastSummary})]})]})]}),O.jsxs("div",{style:mt.panel,children:[O.jsx("div",{style:mt.panelHead,children:"Agent Fleet"}),O.jsxs("div",{style:mt.scrollInner,children:[g.length===0?O.jsx("div",{style:mt.empty,children:"No agents spawned"}):g.map((v,S)=>O.jsx(ap,{label:v.name,value:v.tokens,max:Math.max(...g.map(x=>x.tokens),1),color:pc[S%pc.length],sub:`${v.role} · ${v.model||"auto"}`},v.id)),c.history.length>0&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:mt.divider}),O.jsx("div",{style:mt.panelHead,children:"Rotation History"}),c.history.slice().reverse().slice(0,8).map((v,S)=>O.jsxs("div",{style:mt.rotEntry,children:[O.jsx("span",{style:mt.rotName,children:v.agentName}),O.jsxs("span",{style:{color:Wa,fontSize:9},children:[qo(v.oldTokens)," saved"]}),O.jsx("span",{style:mt.rotTime,children:W8(v.timestamp)})]},S))]})]})]})]})]})}function Gh({label:t,value:e,sub:i,color:n}){return O.jsxs("div",{style:mt.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 ap({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:qo(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 X8({routing:t}){const e=[{label:"Heavy",color:Z1,count:t.byTier.heavy,cost:"$0.045/1k"},{label:"Medium",color:N1,count:t.byTier.medium,cost:"$0.009/1k"},{label:"Light",color:Wa,count:t.byTier.light,cost:"$0.002/1k"}],i=e.reduce((h,u)=>h+u.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 N8({tokenTimeline:t,agents:e}){const i=B.useRef(),n=B.useRef(),r=B.useCallback(()=>{const s=i.current,a=n.current;if(!s||!a)return;const c=window.devicePixelRatio||1,h=s.clientWidth,u=s.clientHeight;if(h===0||u===0)return;a.width=h*c,a.height=u*c,a.style.width=h+"px",a.style.height=u+"px";const f=a.getContext("2d");f.scale(c,c),f.clearRect(0,0,h,u);const g=40,m=10,v=10,S=20,x=h-g-m,w=u-v-S;f.strokeStyle="#1e222a",f.lineWidth=.5;for(let E=0;E<=4;E++){const L=v+E/4*w;f.beginPath(),f.moveTo(g,L),f.lineTo(h-m,L),f.stroke()}const _=Object.keys(t);if(_.length===0){f.fillStyle="#3e4451",f.font="10px monospace",f.textAlign="center",f.fillText("Waiting for agent telemetry...",h/2,u/2);return}let T=1/0,C=0,Q=0;for(const E of _)for(const L of t[E]||[])L.t<T&&(T=L.t),L.t>C&&(C=L.t),L.v>Q&&(Q=L.v);C===T&&(C=T+6e4),Q===0&&(Q=100);const M=C-T;f.fillStyle="#3e4451",f.font="8px monospace",f.textAlign="right";for(let E=0;E<=4;E++){const L=Q*(1-E/4);f.fillText(qo(Math.round(L)),g-4,v+E/4*w+3)}f.textAlign="center";for(let E=0;E<=4;E++){const L=T+E/4*M,V=new Date(L);f.fillText(`${V.getHours()}:${String(V.getMinutes()).padStart(2,"0")}`,g+E/4*x,u-4)}_.forEach((E,L)=>{const V=t[E]||[];if(V.length<2)return;const H=pc[L%pc.length],U=V.map(j=>({x:g+(j.t-T)/M*x,y:v+(1-j.v/Q)*w}));f.beginPath(),f.moveTo(U[0].x,v+w);for(const j of U)f.lineTo(j.x,j.y);f.lineTo(U[U.length-1].x,v+w),f.closePath();const X=f.createLinearGradient(0,v,0,v+w);X.addColorStop(0,H+"20"),X.addColorStop(1,H+"03"),f.fillStyle=X,f.fill(),f.beginPath();for(let j=0;j<U.length;j++)j===0?f.moveTo(U[j].x,U[j].y):f.lineTo(U[j].x,U[j].y);f.strokeStyle=H,f.lineWidth=1,f.stroke();const R=U[U.length-1];f.beginPath(),f.arc(R.x,R.y,2,0,Math.PI*2),f.fillStyle=H,f.fill()})},[t,e]);return B.useEffect(()=>{r()},[r]),B.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 qo(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t||0)}function Z8(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 W8(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 mt={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:X1,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 q8(){const[t,e]=B.useState(null);B.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(lp,{label:"REVIEWS",value:r.totalReviews||0}),O.jsx(lp,{label:"APPROVED",value:r.approved||0,color:"var(--green)"}),O.jsx(lp,{label:"REJECTED",value:r.rejected||0,color:"var(--red)"}),O.jsx(lp,{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:I8(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 lp({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 I8(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"}},W1={all:"All Skills",design:"Design",quality:"Quality",devtools:"Dev Tools",workflow:"Workflow",security:"Security",specialized:"Specialized"},q1={design:"✨",quality:"✔",devtools:"⚙",workflow:"↻",security:"⛨",specialized:"☆"},V8=[{id:"popular",label:"Popular"},{id:"rating",label:"Top Rated"},{id:"newest",label:"Newest"},{id:"name",label:"A–Z"}];function Y8(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 I1({skill:t,size:e="small"}){const i=Y8(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 V1(t){return t?t>=1e3?(t/1e3).toFixed(1).replace(/\.0$/,"")+"k":String(t):"0"}function Dy(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 d2(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 H8({current:t,onRate:e,disabled:i}){const[n,r]=B.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 U8({skill:t,content:e,installing:i,onInstall:n,onUninstall:r,onRate:s,onClose:a}){const[c,h]=B.useState(0),[u,f]=B.useState(!1),[g,m]=B.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:Be.overlay,onClick:a,children:O.jsxs("div",{style:Be.container,onClick:S=>S.stopPropagation(),children:[O.jsxs("div",{style:Be.topBar,children:[O.jsx(I1,{skill:t,size:"large"}),O.jsx("button",{onClick:a,style:Be.closeBtn,children:"×"})]}),O.jsxs("div",{style:Be.header,children:[O.jsx("div",{style:{...Be.icon,background:t.installed?"var(--green)":t.price>0?"var(--purple)":"var(--accent)"},children:t.icon||t.name.charAt(0)}),O.jsxs("div",{style:Be.headerInfo,children:[O.jsx("div",{style:Be.name,children:t.name}),O.jsxs("div",{style:Be.author,children:["by ",t.author]}),O.jsxs("div",{style:Be.meta,children:[t.rating>0&&O.jsxs("span",{style:Be.metaItem,children:[O.jsx("span",{style:{color:"var(--amber)"},children:Dy(t.rating)})," ",t.rating," (",t.ratingCount||0,")"]}),t.downloads>0&&O.jsxs("span",{style:Be.metaItem,children:["⤓"," ",V1(t.downloads)]}),O.jsxs("span",{style:Be.metaItem,children:[q1[t.category]||""," ",W1[t.category]||t.category]})]})]})]}),O.jsxs("div",{style:Be.actionBar,children:[t.installed?O.jsx("button",{onClick:()=>r(t.id),disabled:i===t.id,style:Be.uninstallBtn,children:i===t.id?"Removing...":"Uninstall"}):O.jsx("button",{onClick:()=>n(t.id),disabled:i===t.id,style:t.price>0?Be.buyBtn:Be.installBtn,children:i===t.id?"Installing...":t.price>0?`$${t.price.toFixed(2)}`:"Install"}),t.price===0&&!t.installed&&O.jsx("span",{style:Be.freeLabel,children:"Free"})]}),O.jsxs("div",{style:Be.section,children:[O.jsx("div",{style:Be.sectionTitle,children:"Rating"}),O.jsxs("div",{style:Be.ratingRow,children:[O.jsxs("div",{style:Be.ratingLeft,children:[O.jsx("div",{style:Be.ratingBig,children:t.rating||"-"}),O.jsx("div",{style:{color:"var(--amber)",fontSize:13},children:Dy(t.rating)}),O.jsxs("div",{style:Be.ratingCount,children:[t.ratingCount||0," ratings"]})]}),O.jsxs("div",{style:Be.ratingRight,children:[O.jsx("div",{style:Be.rateLabel,children:u?"Thanks for rating!":"Rate this skill"}),O.jsx(H8,{current:c,onRate:v,disabled:g||u}),g&&O.jsx("div",{style:{fontSize:10,color:"var(--text-muted)",marginTop:4},children:"Submitting..."})]})]})]}),O.jsxs("div",{style:Be.section,children:[O.jsx("div",{style:Be.sectionTitle,children:"About"}),O.jsx("div",{style:Be.description,children:t.description})]}),O.jsxs("div",{style:Be.section,children:[O.jsx("div",{style:Be.sectionTitle,children:"Tags"}),O.jsxs("div",{style:Be.tagRow,children:[(t.tags||[]).map(S=>O.jsx("span",{style:Be.tag,children:S},S)),(t.roles||[]).map(S=>O.jsx("span",{style:Be.roleTag,children:S},S))]})]}),t.authorProfile&&O.jsxs("div",{style:Be.section,children:[O.jsx("div",{style:Be.sectionTitle,children:"Developer"}),O.jsxs("div",{style:Be.authorCard,children:[O.jsx("div",{style:Be.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:Be.authorDetails,children:[O.jsx("div",{style:Be.authorName,children:t.author}),O.jsxs("div",{style:Be.authorLinks,children:[t.authorProfile.website&&O.jsx("a",{href:t.authorProfile.website,target:"_blank",rel:"noopener noreferrer",style:Be.authorLink,children:"Website"}),t.authorProfile.github&&O.jsx("a",{href:`https://github.com/${t.authorProfile.github}`,target:"_blank",rel:"noopener noreferrer",style:Be.authorLink,children:"GitHub"}),t.authorProfile.twitter&&O.jsxs("a",{href:`https://x.com/${t.authorProfile.twitter}`,target:"_blank",rel:"noopener noreferrer",style:Be.authorLink,children:["@",t.authorProfile.twitter]})]})]})]})]}),e&&O.jsxs("div",{style:Be.section,children:[O.jsx("div",{style:Be.sectionTitle,children:"Skill Instructions"}),O.jsxs("pre",{style:Be.contentPre,children:[e.replace(/^---[\s\S]*?---\n/,"").trim().slice(0,2e3),e.length>2e3?`
100
+ ...`:""]})]})]})})}function G8({skills: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"}),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?"var(--green)":"var(--accent)"},children:n.icon||n.name.charAt(0)})}),O.jsxs("div",{style:ze.featuredInfo,children:[O.jsx("div",{style:ze.featuredName,children:n.name}),O.jsxs("div",{style:ze.featuredAuthorRow,children:[O.jsx("span",{style:ze.featuredAuthor,children:n.author}),O.jsx(I1,{skill:n})]}),O.jsx("div",{style:ze.featuredDesc,children:n.description}),O.jsxs("div",{style:ze.featuredMeta,children:[n.rating>0&&O.jsxs("span",{style:{color:"var(--amber)",fontSize:10},children:[Dy(n.rating)," ",n.rating]}),O.jsxs("span",{style:{color:"var(--text-muted)",fontSize:10},children:["⤓"," ",V1(n.downloads)]})]})]}),n.installed&&O.jsx("div",{style:ze.featuredBadge,children:"installed"})]},n.id))})]})}function F8({skill: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?"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:ze.cardTop,children:[O.jsx("div",{style:{...ze.cardIcon,background:t.installed?"var(--green)":t.price>0?"var(--purple)":"var(--accent)"},children:t.icon||t.name.charAt(0)}),O.jsxs("div",{style:ze.cardInfo,children:[O.jsx("div",{style:ze.cardName,children:t.name}),O.jsxs("div",{style:ze.cardAuthorRow,children:[O.jsx("span",{style:ze.cardAuthor,children:t.author}),O.jsx(I1,{skill:t})]})]}),t.installed&&O.jsx("div",{style:ze.installedBadge,children:"installed"}),t.price>0&&!t.installed&&O.jsxs("div",{style:ze.priceBadge,children:["$",t.price.toFixed(2)]}),t.price===0&&!t.installed&&O.jsx("div",{style:ze.freeBadge,children:"Free"})]}),O.jsx("div",{style:ze.cardDesc,children:t.description}),O.jsxs("div",{style:ze.cardBottom,children:[O.jsxs("div",{style:ze.cardStats,children:[t.rating>0&&O.jsxs("span",{style:ze.cardRating,children:[O.jsx("span",{style:{color:"var(--amber)"},children:"★"})," ",t.rating]}),t.downloads>0&&O.jsxs("span",{style:ze.cardDownloads,children:["⤓"," ",V1(t.downloads)]})]}),O.jsxs("span",{style:ze.catTag,children:[q1[t.category]||""," ",W1[t.category]||t.category]})]})]})}function K8(){const[t,e]=B.useState([]),[i,n]=B.useState([]),[r,s]=B.useState(""),[a,c]=B.useState("all"),[h,u]=B.useState("popular"),[f,g]=B.useState("browse"),[m,v]=B.useState(!0),[S,x]=B.useState(null),[w,_]=B.useState(null),[T,C]=B.useState(null),[Q,M]=B.useState(null),E=B.useCallback(async()=>{v(!0);try{const j=new URLSearchParams;r&&j.set("search",r),a!=="all"&&j.set("category",a);const N=await(await fetch(`/api/skills/registry?${j}`)).json();e(N.skills||[]),n(N.categories||[])}catch{}v(!1)},[r,a]);B.useEffect(()=>{E()},[E]);async function L(j){x(j);try{await fetch(`/api/skills/${j}/install`,{method:"POST"}),await E(),e(P=>{const N=P.find($=>$.id===j);return N&&(w==null?void 0:w.id)===j&&_({...N,installed:!0}),P})}catch{}x(null)}async function V(j){x(j);try{await fetch(`/api/skills/${j}`,{method:"DELETE"}),await E(),(w==null?void 0:w.id)===j&&(_(P=>P?{...P,installed:!1}:null),C(null))}catch{}x(null)}async function H(j,P){const N=await fetch(`/api/skills/${j}/rate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rating:P})});if(!N.ok)throw new Error("Rating failed");const $=await N.json();e(Z=>Z.map(z=>z.id===j?{...z,rating:$.rating,ratingCount:$.rating_count??$.ratingCount}:z)),(w==null?void 0:w.id)===j&&_(Z=>Z?{...Z,rating:$.rating,ratingCount:$.rating_count??$.ratingCount}:null)}async function U(j){if(_(j),C(null),j.installed)try{const N=await(await fetch(`/api/skills/${j.id}/content`)).json();C(N.content)}catch{}}const X=t.filter(j=>j.installed),R=d2(f==="installed"?X: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:"Skills Store"}),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:["My Skills (",X.length,")"]})]})]}),O.jsx("div",{style:ze.headerRight,children:O.jsxs("span",{style:ze.headerCount,children:[t.length," skills"]})})]}),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 skills...",value:r,onChange:j=>s(j.target.value)})]}),O.jsx("div",{style:ze.sortWrap,children:V8.map(j=>O.jsx("button",{onClick:()=>u(j.id),style:{...ze.sortBtn,color:h===j.id?"var(--text-bright)":"var(--text-muted)",background:h===j.id?"var(--bg-active)":"transparent"},children:j.label},j.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(j=>O.jsxs("button",{onClick:()=>c(j.id),style:{...ze.catBtn,...a===j.id?ze.catBtnActive:{}},children:[q1[j.id]||""," ",W1[j.id]||j.id," (",j.count,")"]},j.id))]})]}),O.jsxs("div",{style:ze.scrollArea,children:[f==="browse"&&!r&&a==="all"&&O.jsx(G8,{skills:t,onSelect:U}),m&&t.length===0&&O.jsx("div",{style:ze.empty,children:"Loading skills..."}),!m&&R.length===0&&O.jsx("div",{style:ze.empty,children:f==="installed"?"No skills installed yet. Browse the store to find skills.":"No skills match your search."}),O.jsx("div",{style:ze.grid,children:R.map(j=>O.jsx(F8,{skill:j,onSelect:U,hovered:Q===j.id,onHover:M},j.id))})]}),O.jsx(U8,{skill:w,content:T,installing:S,onInstall:L,onUninstall:V,onRate:H,onClose:()=>{_(null),C(null)}})]})}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},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}},Be={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}},Y1={all:"All",communication:"Communication",productivity:"Productivity",finance:"Finance",developer:"Developer",database:"Database","smart-home":"Smart Home",analytics:"Analytics"},H1={communication:"✉",productivity:"⚙",finance:"⚖",developer:"⌘",database:"≡","smart-home":"⌂",analytics:"⌕"},U1={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"},J8=[{id:"popular",label:"Popular"},{id:"name",label:"A–Z"},{id:"category",label:"Category"}];function eZ(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 G1({item:t,size:e="small"}){const i=eZ(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 f2(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 tZ({integration:t,onClose:e}){const[i,n]=B.useState({}),[r,s]=B.useState(!1),[a,c]=B.useState({}),[h,u]=B.useState(null),[f,g]=B.useState(""),[m,v]=B.useState(""),[S,x]=B.useState(!1),[w,_]=B.useState("");if(B.useEffect(()=>{((t==null?void 0:t.authType)==="oauth-google"||(t==null?void 0:t.authType)==="google-autoauth"||t!=null&&t._googleSetupNeeded)&&(u("checking"),x((t==null?void 0:t._googleSetupNeeded)||!1),fetch("/api/integrations/google-oauth/status").then(U=>U.json()).then(U=>u(U.configured?"ready":"not-configured")).catch(()=>u("not-configured")))},[t]),!t)return null;const T=t.authType==="oauth-google",C=t.authType==="google-autoauth"||t._googleSetupNeeded,Q=(t.envKeys||[]).filter(U=>!U.hidden),M=t.setupSteps||[];async function E(U){if(i[U]){s(!0),_("");try{const X=await fetch(`/api/integrations/${t.id}/credentials`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:U,value:i[U]})});if(X.ok)c(R=>({...R,[U]:!0})),n(R=>({...R,[U]:""}));else{const R=await X.json();_(R.error||`Failed to save ${U}`)}}catch{_("Could not reach the server")}s(!1)}}async function L(){if(!(!f||!m)){s(!0),_("");try{const U=await fetch("/api/integrations/google-oauth/setup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({clientId:f,clientSecret:m})});if(U.ok)u("ready"),x(!1);else{const X=await U.json();_(X.error||"Failed to save credentials")}}catch{_("Could not reach the server")}s(!1)}}async function V(){u("connecting"),_("");try{const X=await(await fetch(`/api/integrations/${t.id}/authenticate`,{method:"POST"})).json();X.ok?setTimeout(()=>e(),3e3):(_(X.error||"Authentication failed"),u("ready"))}catch{_("Could not reach the server"),u("ready")}}async function H(){u("connecting"),_("");try{const X=await(await fetch(`/api/integrations/${t.id}/oauth/start`,{method:"POST"})).json();if(X.url){window.open(X.url,"_blank","width=600,height=700");const R=setInterval(async()=>{try{(await(await fetch(`/api/integrations/${t.id}/status`)).json()).configured&&(clearInterval(R),u("ready"),e())}catch{}},2e3);setTimeout(()=>clearInterval(R),3e5)}else _(X.error||"Failed to start OAuth flow"),u("ready")}catch{_("Could not reach the server"),u("ready")}}return O.jsx("div",{style:He.overlay,onClick:e,children:O.jsxs("div",{style:He.container,onClick:U=>U.stopPropagation(),children:[O.jsxs("div",{style:He.topBar,children:[O.jsxs("span",{style:{fontSize:13,fontWeight:600,color:"var(--text-bright)"},children:["Connect ",t.name]}),O.jsx("button",{onClick:e,style:He.closeBtn,children:"×"})]}),O.jsxs("div",{style:{padding:"16px 0"},children:[M.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"}),M.map((U,X)=>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:X+1}),O.jsx("span",{children:U})]},X))]}),t.setupUrl&&!T&&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}),(T||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:U=>g(U.target.value),placeholder:"Client ID (e.g. 123456.apps.googleusercontent.com)",style:He.input}),O.jsx("input",{type:"password",value:m,onChange:U=>v(U.target.value),placeholder:"Client Secret (e.g. GOCSPX-...)",style:He.input}),O.jsx("button",{onClick:async()=>{await L(),f&&m&&setTimeout(()=>{C?V():H()},500)},disabled:r||!f||!m,style:{...He.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."})]})]}),Q.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."}),Q.map(U=>O.jsxs("div",{style:{marginBottom:14},children:[O.jsxs("label",{style:He.label,children:[U.label||U.key,U.required&&O.jsx("span",{style:{color:"var(--red)",marginLeft:4},children:"*"}),a[U.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[U.key]||"",placeholder:U.placeholder||U.key,onChange:X=>n(R=>({...R,[U.key]:X.target.value})),onKeyDown:X=>X.key==="Enter"&&E(U.key),style:He.input}),O.jsx("button",{onClick:()=>E(U.key),disabled:r||!i[U.key],style:{...He.saveBtn,opacity:r||!i[U.key]?.4:1},children:"Save"})]})]},U.key))]})]})]})})}function iZ({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(u=>!u.hidden).length>0||t.authType==="oauth-google";return O.jsx("div",{style:He.overlay,onClick:a,children:O.jsxs("div",{style:He.container,onClick:u=>u.stopPropagation(),children:[O.jsxs("div",{style:He.topBar,children:[O.jsx(G1,{item:t,size:"large"}),O.jsx("button",{onClick:a,style:He.closeBtn,children:"×"})]}),O.jsxs("div",{style:He.header,children:[O.jsx("div",{style:{...He.icon,background:t.installed&&t.configured?"var(--green)":t.installed?"var(--amber)":"var(--accent)"},children:U1[t.icon]||t.name.charAt(0)}),O.jsxs("div",{style:He.headerInfo,children:[O.jsx("div",{style:He.name,children:t.name}),O.jsxs("div",{style:He.meta,children:[O.jsxs("span",{style:He.metaItem,children:[H1[t.category]||""," ",Y1[t.category]||t.category]}),O.jsx("span",{style:He.metaItem,children:"MCP Server"})]})]})]}),O.jsx("div",{style:He.actionBar,children:t.installed?O.jsxs("div",{style:{display:"flex",gap:8,flex:1},children:[c&&O.jsxs("button",{onClick:()=>s(t),style:He.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:He.configureBtn,children:t.configured?"Reconfigure":"Configure"}),O.jsx("button",{onClick:()=>n(t.id),disabled:e===t.id,style:He.uninstallBtn,children:e===t.id?"Removing...":"Uninstall"})]}):O.jsx("button",{onClick:()=>i(t.id),disabled:e===t.id,style:He.installBtn,children:e===t.id?"Installing...":"Install"})}),t.installed&&O.jsxs("div",{style:He.section,children:[O.jsx("div",{style:He.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:He.section,children:[O.jsx("div",{style:He.sectionTitle,children:"About"}),O.jsx("div",{style:He.description,children:t.description})]}),(t.envKeys||[]).length>0&&O.jsxs("div",{style:He.section,children:[O.jsx("div",{style:He.sectionTitle,children:"Required Credentials"}),O.jsx("div",{style:{display:"flex",flexDirection:"column",gap:4},children:t.envKeys.map(u=>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:u.key}),O.jsx("span",{children:u.label}),u.required&&O.jsx("span",{style:{color:"var(--amber)",fontSize:9},children:"required"})]},u.key))})]}),O.jsxs("div",{style:He.section,children:[O.jsx("div",{style:He.sectionTitle,children:"Tags"}),O.jsxs("div",{style:He.tagRow,children:[(t.tags||[]).map(u=>O.jsx("span",{style:He.tag,children:u},u)),(t.roles||[]).map(u=>O.jsx("span",{style:He.roleTag,children:u},u))]})]}),t.npmPackage&&O.jsxs("div",{style:He.section,children:[O.jsx("div",{style:He.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 nZ({integrations:t,onSelect:e}){const i=t.filter(n=>n.featured).slice(0,3);return i.length===0?null:O.jsxs("div",{style:je.featuredSection,children:[O.jsx("div",{style:je.featuredLabel,children:"Featured Integrations"}),O.jsx("div",{style:je.featuredRow,children:i.map(n=>O.jsxs("div",{onClick:()=>e(n),style:je.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:je.featuredGradient,children:O.jsx("div",{style:{...je.featuredIcon,background:n.installed&&n.configured?"var(--green)":n.installed?"var(--amber)":"var(--accent)"},children:U1[n.icon]||n.name.charAt(0)})}),O.jsxs("div",{style:je.featuredInfo,children:[O.jsx("div",{style:je.featuredName,children:n.name}),O.jsx("div",{style:je.featuredAuthorRow,children:O.jsx(G1,{item:n})}),O.jsx("div",{style:je.featuredDesc,children:n.description})]}),n.installed&&n.authType!=="none"&&n.configured&&O.jsx("div",{style:je.connectedBadge,children:"connected"}),n.installed&&n.authType==="none"&&O.jsx("div",{style:je.installedBadge,children:"installed"}),n.installed&&!n.configured&&n.authType!=="none"&&O.jsx("div",{style:je.setupBadge,children:"needs setup"})]},n.id))})]})}function rZ({item:t,onSelect:e,hovered:i,onHover:n}){return O.jsxs("div",{onClick:()=>e(t),onMouseEnter:()=>n(t.id),onMouseLeave:()=>n(null),style:{...je.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:je.cardTop,children:[O.jsx("div",{style:{...je.cardIcon,background:t.installed&&t.authType==="none"?"var(--blue)":t.installed&&t.configured?"var(--green)":t.installed?"var(--amber)":"var(--accent)"},children:U1[t.icon]||t.name.charAt(0)}),O.jsxs("div",{style:je.cardInfo,children:[O.jsx("div",{style:je.cardName,children:t.name}),O.jsx("div",{style:je.cardAuthorRow,children:O.jsx(G1,{item:t})})]}),t.installed&&t.configured&&t.authType!=="none"&&O.jsx("div",{style:je.connectedBadgeSm,children:"connected"}),t.installed&&t.authType==="none"&&O.jsx("div",{style:je.installedBadgeSm,children:"installed"}),t.installed&&!t.configured&&t.authType!=="none"&&O.jsx("div",{style:je.setupBadgeSm,children:"setup"}),!t.installed&&O.jsx("div",{style:je.freeBadge,children:"MCP"})]}),O.jsx("div",{style:je.cardDesc,children:t.description}),O.jsxs("div",{style:je.cardBottom,children:[O.jsx("div",{style:je.cardStats,children:(t.envKeys||[]).length>0&&O.jsxs("span",{style:je.cardCredCount,children:[t.envKeys.length," credential",t.envKeys.length>1?"s":""]})}),O.jsxs("span",{style:je.catTag,children:[H1[t.category]||""," ",Y1[t.category]||t.category]})]})]})}function sZ(){const[t,e]=B.useState([]),[i,n]=B.useState([]),[r,s]=B.useState(""),[a,c]=B.useState("all"),[h,u]=B.useState("popular"),[f,g]=B.useState("browse"),[m,v]=B.useState(!0),[S,x]=B.useState(null),[w,_]=B.useState(null),[T,C]=B.useState(null),[Q,M]=B.useState(null),[E,L]=B.useState(""),V=B.useCallback(async()=>{v(!0);try{const z=new URLSearchParams;r&&z.set("search",r),a!=="all"&&z.set("category",a);const F=await(await fetch(`/api/integrations/registry?${z}`)).json();e(F.integrations||[]),n(F.categories||[])}catch{}v(!1)},[r,a]);B.useEffect(()=>{V()},[V]);async function H(z){x(z);try{const q=await fetch(`/api/integrations/${z}/install`,{method:"POST"}),F=await q.json();if(!q.ok){P(F.error||"Install failed","error"),x(null);return}if(await V(),(w==null?void 0:w.id)===z){const D=t.find(I=>I.id===z);D&&_({...D,installed:!0})}}catch{P("Install failed — check daemon logs","error")}x(null)}async function U(z){x(z);try{const q=await fetch(`/api/integrations/${z}`,{method:"DELETE"});if(!q.ok){const F=await q.json();P(F.error||"Uninstall failed","error"),x(null);return}await V(),(w==null?void 0:w.id)===z&&_(F=>F?{...F,installed:!1,configured:!1}:null)}catch{P("Uninstall failed","error")}x(null)}function X(z){_(z)}function R(z){_(null),C(z)}async function j(z){if(z.authType==="google-autoauth")try{if(!(await(await fetch("/api/integrations/google-oauth/status")).json()).configured){_(null),C({...z,_googleSetupNeeded:!0});return}}catch{_(null),C({...z,_googleSetupNeeded:!0});return}_(null),C({...z});try{const F=await(await fetch(`/api/integrations/${z.id}/authenticate`,{method:"POST"})).json();F.ok?P("Sign-in window opened — check your browser"):P(F.error||"Authentication failed","error")}catch{P("Authentication failed — check daemon logs","error")}}function P(z,q="info"){L({text:z,type:q}),setTimeout(()=>L(""),6e3)}function N(){C(null),V()}const $=t.filter(z=>z.installed),Z=f2(f==="installed"?$:t,h);return O.jsxs("div",{style:je.root,children:[O.jsxs("div",{style:je.headerBar,children:[O.jsxs("div",{style:je.headerLeft,children:[O.jsx("div",{style:je.title,children:"Integrations"}),O.jsxs("div",{style:je.headerTabs,children:[O.jsx("button",{onClick:()=>g("browse"),style:{...je.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:{...je.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:je.headerRight,children:O.jsxs("span",{style:je.headerCount,children:[t.length," integrations"]})})]}),E&&O.jsx("div",{style:{padding:"8px 20px",fontSize:12,fontWeight:500,flexShrink:0,color:E.type==="error"?"var(--red)":"var(--accent)",background:E.type==="error"?"rgba(224, 108, 117, 0.06)":"transparent"},children:E.text||E}),O.jsxs("div",{style:je.toolbar,children:[O.jsxs("div",{style:je.searchRow,children:[O.jsxs("div",{style:je.searchWrap,children:[O.jsx("span",{style:je.searchIcon,children:"⌕"}),O.jsx("input",{style:je.search,placeholder:"Search integrations...",value:r,onChange:z=>s(z.target.value)})]}),O.jsx("div",{style:je.sortWrap,children:J8.map(z=>O.jsx("button",{onClick:()=>u(z.id),style:{...je.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:je.catRow,children:[O.jsx("button",{onClick:()=>c("all"),style:{...je.catBtn,...a==="all"?je.catBtnActive:{}},children:"All"}),i.map(z=>O.jsxs("button",{onClick:()=>c(z.id),style:{...je.catBtn,...a===z.id?je.catBtnActive:{}},children:[H1[z.id]||""," ",Y1[z.id]||z.id," (",z.count,")"]},z.id))]})]}),O.jsxs("div",{style:je.scrollArea,children:[f==="browse"&&!r&&a==="all"&&O.jsx(nZ,{integrations:t,onSelect:X}),m&&t.length===0&&O.jsx("div",{style:je.empty,children:"Loading integrations..."}),!m&&Z.length===0&&O.jsx("div",{style:je.empty,children:f==="installed"?"No integrations installed yet. Browse to connect your tools.":"No integrations match your search."}),O.jsx("div",{style:je.grid,children:Z.map(z=>O.jsx(rZ,{item:z,onSelect:X,hovered:Q===z.id,onHover:M},z.id))})]}),O.jsx(iZ,{integration:w,installing:S,onInstall:H,onUninstall:U,onConfigure:R,onAuthenticate:j,onClose:()=>_(null)}),O.jsx(tZ,{integration:T,onClose:N})]})}const je={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}},He={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)"}},oZ=[{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 * *"}],aZ=[{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 ME(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 zE({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 lZ({onSubmit:t,onCancel:e}){const[i,n]=B.useState(""),[r,s]=B.useState("0 9 * * *"),[a,c]=B.useState("fullstack"),[h,u]=B.useState(""),[f,g]=B.useState(!1),[m,v]=B.useState("");async function S(x){if(x.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:Ae.form,children:[O.jsx("div",{style:Ae.formTitle,children:"New Schedule"}),O.jsx("label",{style:Ae.label,children:"NAME"}),O.jsx("input",{value:i,onChange:x=>n(x.target.value),placeholder:"e.g., Daily standup summary",style:Ae.input}),O.jsx("label",{style:Ae.label,children:"FREQUENCY"}),O.jsx("div",{style:Ae.presetRow,children:oZ.map(x=>O.jsx("button",{type:"button",onClick:()=>s(x.cron),style:{...Ae.presetBtn,borderColor:r===x.cron?"var(--accent)":"var(--border)",color:r===x.cron?"var(--accent)":"var(--text-dim)",background:r===x.cron?"rgba(51, 175, 188, 0.08)":"transparent"},children:x.label},x.cron))}),O.jsx("input",{value:r,onChange:x=>s(x.target.value),placeholder:"* * * * * (min hr day mon wkday)",style:{...Ae.input,fontFamily:"var(--font)",fontSize:11}}),O.jsx("label",{style:Ae.label,children:"AGENT ROLE"}),O.jsx("div",{style:Ae.presetRow,children:aZ.map(x=>O.jsx("button",{type:"button",onClick:()=>c(x.id),style:{...Ae.presetBtn,borderColor:a===x.id?"var(--accent)":"var(--border)",color:a===x.id?"var(--accent)":"var(--text-dim)",background:a===x.id?"rgba(51, 175, 188, 0.08)":"transparent"},children:x.label},x.id))}),O.jsx("label",{style:Ae.label,children:"TASK"}),O.jsx("textarea",{value:h,onChange:x=>u(x.target.value),placeholder:"What should this agent do each time it runs?",rows:3,style:Ae.textarea}),m&&O.jsx("div",{style:Ae.error,children:m}),O.jsxs("div",{style:Ae.formActions,children:[O.jsx("button",{type:"button",onClick:e,style:Ae.cancelBtn,children:"Cancel"}),O.jsx("button",{type:"submit",disabled:f,style:Ae.submitBtn,children:f?"Creating...":"Create Schedule"})]})]})}function cZ({schedule:t,onToggle:e,onRun:i,onDelete:n,onSelect:r}){var c;const[s,a]=B.useState(!1);return O.jsxs("div",{style:Ae.scheduleRow,onMouseEnter:h=>{h.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:h=>{h.currentTarget.style.background="var(--bg-surface)"},children:[O.jsxs("div",{style:Ae.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:Ae.scheduleName,children:t.name}),O.jsxs("div",{style:Ae.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(zE,{status:t.lastRun.status}),ME(t.lastRun.timestamp)]})]})]})]}),O.jsxs("div",{style:Ae.scheduleActions,children:[O.jsx("button",{onClick:()=>e(t.id,!t.enabled),title:t.enabled?"Disable":"Enable",style:{...Ae.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:{...Ae.actionBtn,color:"var(--accent)"},children:"▶"}),s?O.jsx("button",{onClick:()=>{n(t.id),a(!1)},style:{...Ae.actionBtn,color:"var(--red)"},children:"confirm"}):O.jsx("button",{onClick:()=>a(!0),style:{...Ae.actionBtn,color:"var(--text-muted)"},children:"✕"})]})]})}function hZ({schedule:t,onClose:e}){var i,n;return t?O.jsxs("div",{style:Ae.detailPanel,children:[O.jsxs("div",{style:Ae.detailHeader,children:[O.jsx("div",{style:Ae.detailTitle,children:t.name}),O.jsx("button",{onClick:e,style:Ae.detailClose,children:"×"})]}),O.jsxs("div",{style:Ae.detailGrid,children:[O.jsx("div",{style:Ae.detailLabel,children:"Cron"}),O.jsx("div",{style:Ae.detailValue,children:t.cron}),O.jsx("div",{style:Ae.detailLabel,children:"Description"}),O.jsx("div",{style:Ae.detailValue,children:t.cronDescription}),O.jsx("div",{style:Ae.detailLabel,children:"Role"}),O.jsx("div",{style:Ae.detailValue,children:(i=t.agentConfig)==null?void 0:i.role}),O.jsx("div",{style:Ae.detailLabel,children:"Status"}),O.jsx("div",{style:Ae.detailValue,children:O.jsx("span",{style:{color:t.enabled?"var(--green)":"var(--text-muted)"},children:t.enabled?"Enabled":"Disabled"})}),O.jsx("div",{style:Ae.detailLabel,children:"Created"}),O.jsx("div",{style:Ae.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:Ae.detailLabel,children:"Task Prompt"}),O.jsx("pre",{style:Ae.promptPre,children:t.agentConfig.prompt})]}),(t.history||[]).length>0&&O.jsxs("div",{style:{marginTop:16},children:[O.jsx("div",{style:{...Ae.detailLabel,marginBottom:8},children:"Execution History"}),O.jsx("div",{style:Ae.historyList,children:t.history.slice(0,20).map((r,s)=>O.jsxs("div",{style:Ae.historyEntry,children:[O.jsx(zE,{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:ME(r.timestamp)})]},s))})]})]}):null}function uZ(){const[t,e]=B.useState([]),[i,n]=B.useState(!0),[r,s]=B.useState(!1),[a,c]=B.useState(null),[h,u]=B.useState(""),f=B.useCallback(async()=>{try{const _=await fetch("/api/schedules");e(await _.json())}catch{}n(!1)},[]);B.useEffect(()=>{f();const _=setInterval(f,1e4);return()=>clearInterval(_)},[f]);async function g(_){const T=await fetch("/api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(_)});if(!T.ok){const C=await T.json();throw new Error(C.error||"Failed to create schedule")}s(!1),await f(),w("Schedule created")}async function m(_,T){await fetch(`/api/schedules/${_}/${T?"enable":"disable"}`,{method:"POST"}),await f()}async function v(_){try{await fetch(`/api/schedules/${_}/run`,{method:"POST"}),w("Agent spawned"),await f()}catch{w("Failed to run")}}async function S(_){await fetch(`/api/schedules/${_}`,{method:"DELETE"}),(a==null?void 0:a.id)===_&&c(null),await f(),w("Schedule deleted")}async function x(_){try{const T=await fetch(`/api/schedules/${_.id}`);c(await T.json())}catch{c(_)}}function w(_){u(_),setTimeout(()=>u(""),3e3)}return O.jsxs("div",{style:Ae.root,children:[O.jsxs("div",{style:Ae.headerBar,children:[O.jsxs("div",{style:Ae.headerLeft,children:[O.jsx("div",{style:Ae.title,children:"Schedules"}),O.jsxs("span",{style:Ae.headerCount,children:[t.length," schedule",t.length!==1?"s":""," • ",t.filter(_=>_.enabled).length," active"]})]}),O.jsx("button",{onClick:()=>{s(!0),c(null)},style:Ae.createBtn,children:"+ New Schedule"})]}),h&&O.jsx("div",{style:Ae.statusMsg,children:h}),O.jsxs("div",{style:Ae.mainRow,children:[O.jsxs("div",{style:Ae.listArea,children:[r&&O.jsx(lZ,{onSubmit:g,onCancel:()=>s(!1)}),i&&t.length===0&&O.jsx("div",{style:Ae.empty,children:"Loading schedules..."}),!i&&t.length===0&&!r&&O.jsxs("div",{style:Ae.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(_=>O.jsx(cZ,{schedule:_,onToggle:m,onRun:v,onDelete:S,onSelect:x},_.id))]}),a&&O.jsx(hZ,{schedule:a,onClose:()=>c(null)})]})]})}const Ae={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)"}},p2={javascript:"#e5c07b",typescript:"#61afef",css:"#c678dd",html:"#e06c75",json:"#4ae168",markdown:"#c678dd",python:"#61afef",rust:"#e06c75",go:"#33afbc",shell:"#4ae168",text:"#abb2bf"};function jE({entry:t,depth:e,activeFile:i,expandedDirs:n,onToggleDir:r,onFileClick:s,onContextMenu:a,renamingPath:c,renameValue:h,onRenameChange:u,onRenameSubmit:f,onRenameCancel:g}){const m=t.type==="dir",v=n.has(t.path),S=!m&&t.path===i,x=c===t.path,_=$e(T=>T.editorTreeCache)[t.path]||[];return O.jsxs(O.Fragment,{children:[O.jsxs("div",{onClick:()=>m?r(t.path,t.hasChildren):s(t.path),onContextMenu:T=>a(T,t),style:{...Jt.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:Jt.arrow,children:v?"▾":"▸"}):O.jsx("span",{style:{...Jt.fileDot,background:p2[t.language]||p2.text}}),x?O.jsx("input",{autoFocus:!0,value:h,onChange:T=>u(T.target.value),onKeyDown:T=>{T.key==="Enter"&&f(),T.key==="Escape"&&g()},onBlur:g,onClick:T=>T.stopPropagation(),style:Jt.renameInput}):O.jsx("span",{style:{...Jt.name,color:m?"var(--text-primary)":S?"var(--text-bright)":"var(--text-primary)",fontWeight:m?600:400},children:t.name}),!m&&!x&&t.size>0&&O.jsx("span",{style:Jt.size,children:dZ(t.size)})]}),m&&v&&_.map(T=>O.jsx(jE,{entry:T,depth:e+1,activeFile:i,expandedDirs:n,onToggleDir:r,onFileClick:s,onContextMenu:a,renamingPath:c,renameValue:h,onRenameChange:u,onRenameSubmit:f,onRenameCancel:g},T.path))]})}function dZ(t){return t<1024?`${t}B`:t<1024*1024?`${(t/1024).toFixed(0)}K`:`${(t/(1024*1024)).toFixed(1)}M`}function fZ({x:t,y:e,entry:i,onClose:n,onAction:r}){const s=B.useRef(null);B.useEffect(()=>{const h=u=>{s.current&&!s.current.contains(u.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:{...Jt.contextMenu,left:t,top:e},children:c.map((h,u)=>h.sep?O.jsx("div",{style:Jt.contextSep},u):O.jsx("div",{onClick:()=>{r(h.action,i),n()},style:{...Jt.contextItem,color:h.danger?"var(--red)":"var(--text-primary)"},children:h.label},h.action))})}function g2({placeholder:t,onSubmit:e,onCancel:i,depth:n}){const[r,s]=B.useState("");return O.jsx("div",{style:{...Jt.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:Jt.renameInput})})}function pZ(){const t=$e(R=>R.editorTreeCache),e=$e(R=>R.editorActiveFile),i=$e(R=>R.fetchTreeDir),n=$e(R=>R.openFile),r=$e(R=>R.createFile),s=$e(R=>R.createDir),a=$e(R=>R.deleteFile),c=$e(R=>R.renameFile),[h,u]=B.useState(new Set([""])),[f,g]=B.useState(""),[m,v]=B.useState(null),[S,x]=B.useState(null),[w,_]=B.useState(null),[T,C]=B.useState("");B.useEffect(()=>{i("")},[i]);const Q=B.useCallback((R,j)=>{u(P=>{const N=new Set(P);return N.has(R)?N.delete(R):(N.add(R),(j||!t[R])&&i(R)),N})},[i,t]),M=B.useCallback((R,j)=>{R.preventDefault(),R.stopPropagation(),v({x:R.clientX,y:R.clientY,entry:j})},[]),E=B.useCallback(async(R,j)=>{const P=j.path.includes("/")?j.path.split("/").slice(0,-1).join("/"):"";switch(R){case"newFileIn":x({type:"file",parentPath:j.path}),u(N=>{const $=new Set(N);return $.add(j.path),t[j.path]||i(j.path),$});break;case"newDirIn":x({type:"dir",parentPath:j.path}),u(N=>{const $=new Set(N);return $.add(j.path),t[j.path]||i(j.path),$});break;case"newFileSibling":x({type:"file",parentPath:P});break;case"newDirSibling":x({type:"dir",parentPath:P});break;case"rename":_(j.path),C(j.name);break;case"delete":confirm(`Delete "${j.name}"?`)&&await a(j.path);break}},[a,i,t]),L=B.useCallback(async R=>{if(!S)return;const j=S.parentPath?`${S.parentPath}/${R}`:R,P=S.type==="file"?await r(j):await s(j);x(null),P&&S.type==="file"&&n(j)},[S,r,s,n]),V=B.useCallback(async()=>{if(!w||!T.trim()){_(null);return}const R=w.includes("/")?w.split("/").slice(0,-1).join("/"):"",j=R?`${R}/${T.trim()}`:T.trim();j!==w&&await c(w,j),_(null)},[w,T,c]),H=B.useCallback(R=>{R.target===R.currentTarget&&(R.preventDefault(),v({x:R.clientX,y:R.clientY,entry:{type:"dir",path:"",name:"root"}}))},[]),U=t[""]||[],X=f?U.filter(R=>R.name.toLowerCase().includes(f.toLowerCase())):U;return S&&(S.parentPath===""||S.parentPath.split("/").length),O.jsxs("div",{style:Jt.container,children:[O.jsxs("div",{style:Jt.toolbar,children:[O.jsx("span",{style:Jt.toolbarTitle,children:"FILES"}),O.jsxs("div",{style:Jt.toolbarActions,children:[O.jsx("button",{onClick:()=>x({type:"file",parentPath:""}),title:"New File",style:Jt.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:()=>x({type:"dir",parentPath:""}),title:"New Folder",style:Jt.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:Jt.searchWrap,children:O.jsx("input",{type:"text",placeholder:"Filter...",value:f,onChange:R=>g(R.target.value),style:Jt.searchInput})}),O.jsxs("div",{style:Jt.tree,onContextMenu:H,children:[X.length===0&&!S&&O.jsx("div",{style:Jt.empty,children:U.length===0?"Loading...":"No matches"}),S&&S.parentPath===""&&O.jsx(g2,{placeholder:S.type==="file"?"filename.ext":"folder-name",onSubmit:L,onCancel:()=>x(null),depth:0}),X.map(R=>O.jsxs(Wn.Fragment,{children:[O.jsx(jE,{entry:R,depth:0,activeFile:e,expandedDirs:h,onToggleDir:Q,onFileClick:n,onContextMenu:M,renamingPath:w,renameValue:T,onRenameChange:C,onRenameSubmit:V,onRenameCancel:()=>_(null)}),S&&S.parentPath===R.path&&h.has(R.path)&&O.jsx(g2,{placeholder:S.type==="file"?"filename.ext":"folder-name",onSubmit:L,onCancel:()=>x(null),depth:1})]},R.path))]}),m&&O.jsx(fZ,{x:m.x,y:m.y,entry:m.entry,onClose:()=>v(null),onAction:E})]})}const Jt={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 gZ(){const t=$e(s=>s.editorOpenTabs),e=$e(s=>s.editorActiveFile),i=$e(s=>s.editorFiles),n=$e(s=>s.setActiveFile),r=$e(s=>s.closeFile);return t.length===0?null:O.jsx("div",{style:Fh.container,children:t.map(s=>{const a=i[s],c=s===e,h=a&&a.content!==a.originalContent,u=s.split("/").pop();return O.jsxs("div",{onClick:()=>n(s),title:s,style:{...Fh.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:Fh.dirtyDot}),O.jsx("span",{style:Fh.tabName,children:u}),O.jsx("button",{onClick:f=>{f.stopPropagation(),r(s)},style:Fh.closeBtn,children:"x"})]},s)})})}const Fh={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 By=[],DE=[];(()=>{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?DE:By).push(i=i+t[e])})();function mZ(t){if(t<768)return!1;for(let e=0,i=By.length;;){let n=e+i>>1;if(t<By[n])i=n;else if(t>=DE[n])e=n+1;else return!0;if(e==i)return!1}}function m2(t){return t>=127462&&t<=127487}const O2=8205;function OZ(t,e,i=!0,n=!0){return(i?BE:vZ)(t,e,n)}function BE(t,e,i){if(e==t.length)return e;e&&LE(t.charCodeAt(e))&&XE(t.charCodeAt(e-1))&&e--;let n=mv(t,e);for(e+=v2(n);e<t.length;){let r=mv(t,e);if(n==O2||r==O2||i&&mZ(r))e+=v2(r),n=r;else if(m2(r)){let s=0,a=e-2;for(;a>=0&&m2(mv(t,a));)s++,a-=2;if(s%2==0)break;e+=2}else break}return e}function vZ(t,e,i){for(;e>0;){let n=BE(t,e-2,i);if(n<e)return n;e--}return 0}function mv(t,e){let i=t.charCodeAt(e);if(!XE(i)||e+1==t.length)return i;let n=t.charCodeAt(e+1);return LE(n)?(i-55296<<10)+(n-56320)+65536:i}function LE(t){return t>=56320&&t<57344}function XE(t){return t>=55296&&t<56320}function v2(t){return t<65536?1:2}let dt=class NE{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]=Dc(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),Yr.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]=Dc(this,e,i);let n=[];return this.decompose(e,i,n,0),Yr.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 wu(this),s=new wu(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 wu(this,e)}iterRange(e,i=this.length){return new ZE(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 WE(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]?NE.empty:e.length<=32?new ei(e):Yr.from(ei.split(e,[]))}};class ei extends dt{constructor(e,i=yZ(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 SZ(r,c,n,a);r=c+1,n++}}decompose(e,i,n,r){let s=e<=0&&i>=this.length?this:new ei(y2(this.text,e,i),Math.min(i,this.length)-Math.max(0,e));if(r&1){let a=n.pop(),c=qp(s.text,a.text.slice(),0,s.length);if(c.length<=32)n.push(new ei(c,a.length+s.length));else{let h=c.length>>1;n.push(new ei(c.slice(0,h)),new ei(c.slice(h)))}}else n.push(s)}replace(e,i,n){if(!(n instanceof ei))return super.replace(e,i,n);[e,i]=Dc(this,e,i);let r=qp(this.text,qp(n.text,y2(this.text,0,e)),i),s=this.length+n.length-(i-e);return r.length<=32?new ei(r,s):Yr.from(ei.split(r,[]),s)}sliceString(e,i=this.length,n=`
104
+ `){[e,i]=Dc(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 ei(n,r)),n=[],r=-1);return r>-1&&i.push(new ei(n,r)),i}}class Yr 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 u=r&((a<=e?1:0)|(h>=i?2:0));a>=e&&h<=i&&!u?n.push(c):c.decompose(e-a,i-a,n,u)}a=h+1}}replace(e,i,n){if([e,i]=Dc(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),u=this.lines-a.lines+h.lines;if(h.lines<u>>4&&h.lines>u>>6){let f=this.children.slice();return f[r]=h,new Yr(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]=Dc(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 Yr))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],u=e.children[s];if(h!=u)return n+h.scanIdentical(u,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 ei(v,i)}let r=Math.max(32,n>>5),s=r<<1,a=r>>1,c=[],h=0,u=-1,f=[];function g(v){let S;if(v.lines>s&&v instanceof Yr)for(let x of v.children)g(x);else v.lines>a&&(h>a||!h)?(m(),c.push(v)):v instanceof ei&&h&&(S=f[f.length-1])instanceof ei&&v.lines+S.lines<=32?(h+=v.lines,u+=v.length+1,f[f.length-1]=new ei(S.text.concat(v.text),S.length+1+v.length)):(h+v.lines>r&&m(),h+=v.lines,u+=v.length+1,f.push(v))}function m(){h!=0&&(c.push(f.length==1?f[0]:Yr.from(f,u)),u=-1,h=f.length=0)}for(let v of e)g(v);return m(),c.length==1?c[0]:new Yr(c,i)}}dt.empty=new ei([""],0);function yZ(t){let e=-1;for(let i of t)e+=i.length+1;return e}function qp(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 y2(t,e,i){return qp(t,[""],e,i)}class wu{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 ei?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 ei?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 ei){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 ei?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 ZE{constructor(e,i,n){this.value="",this.done=!1,this.cursor=new wu(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 WE{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()},wu.prototype[Symbol.iterator]=ZE.prototype[Symbol.iterator]=WE.prototype[Symbol.iterator]=function(){return this});let SZ=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 Dc(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 OZ(t,e,i,n)}function bZ(t){return t>=56320&&t<57344}function xZ(t){return t>=55296&&t<56320}function Io(t,e){let i=t.charCodeAt(e);if(!xZ(i)||e+1==t.length)return i;let n=t.charCodeAt(e+1);return bZ(n)?(i-55296<<10)+(n-56320)+65536:i}function qE(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode((t>>10)+55296,(t&1023)+56320))}function qa(t){return t<65536?1:2}const Ly=/\r\n?|\n/;var rn=(function(t){return t[t.Simple=0]="Simple",t[t.TrackDel=1]="TrackDel",t[t.TrackBefore=2]="TrackBefore",t[t.TrackAfter=3]="TrackAfter",t})(rn||(rn={}));class ts{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){Xy(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 ts(e)}composeDesc(e){return this.empty?e:e.empty?this:IE(this,e)}mapDesc(e,i=!1){return e.empty?this:Ny(this,e,i)}mapPos(e,i=-1,n=rn.Simple){let r=0,s=0;for(let a=0;a<this.sections.length;){let c=this.sections[a++],h=this.sections[a++],u=r+c;if(h<0){if(u>e)return s+(e-r);s+=c}else{if(n!=rn.Simple&&u>=e&&(n==rn.TrackDel&&r<e&&u>e||n==rn.TrackBefore&&r<e||n==rn.TrackAfter&&u>e))return null;if(u>e||u==e&&i<0&&!c)return e==r||i<0?s:s+h;s+=h}r=u}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 ts(e)}static create(e){return new ts(e)}}class Oi extends ts{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 Xy(this,(i,n,r,s,a)=>e=e.replace(r,r+(n-i),a),!1),e}mapDesc(e,i=!1){return Ny(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:IE(this,e,!0)}map(e,i=!1){return e.empty?this:Ny(this,e,i,!0)}iterChanges(e,i=!1){Xy(this,e,i)}get desc(){return ts.create(this.sections)}filter(e){let i=[],n=[],r=[],s=new Zu(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);Ui(r,f,-1);let g=s.ins==-1?-1:s.off==0?s.ins:0;Ui(i,f,g),g>0&&Fo(n,i,s.text),s.forward(f),c+=f}let u=e[a++];for(;c<u;){if(s.done)break e;let f=Math.min(s.len,u-c);Ui(i,f,-1),Ui(r,f,s.ins==-1?-1:s.off==0?s.ins:0),s.forward(f),c+=f}}return{changes:new Oi(i,n),filtered:ts.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&&Ui(r,i-a,-1);let g=new Oi(r,s);c=c?c.compose(g.map(c)):g,r=[],s=[],a=0}function u(f){if(Array.isArray(f))for(let g of f)u(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||Ly)):v:dt.empty,x=S.length;if(g==m&&x==0)return;g<a&&h(),g>a&&Ui(r,g-a,-1),Ui(r,m-g,x),Fo(s,r,S),a=m}}return u(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 Ui(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 Fo(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 Xy(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 u=r,f=s,g=dt.empty;for(;u+=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,u,s,f,g),r=u,s=f}}}function Ny(t,e,i,n=!1){let r=[],s=n?[]:null,a=new Zu(t),c=new Zu(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 u=Math.min(a.len,c.len);Ui(r,u,-1),a.forward(u),c.forward(u)}else if(c.ins>=0&&(a.ins<0||h==a.i||a.off==0&&(c.len<a.len||c.len==a.len&&!i))){let u=c.len;for(Ui(r,c.ins,-1);u;){let f=Math.min(a.len,u);a.ins>=0&&h<a.i&&a.len<=f&&(Ui(r,0,a.ins),s&&Fo(s,r,a.text),h=a.i),a.forward(f),u-=f}c.next()}else if(a.ins>=0){let u=0,f=a.len;for(;f;)if(c.ins==-1){let g=Math.min(f,c.len);u+=g,f-=g,c.forward(g)}else if(c.ins==0&&c.len<f)f-=c.len,c.next();else break;Ui(r,u,h<a.i?a.ins:0),s&&h<a.i&&Fo(s,r,a.text),h=a.i,a.forward(a.len-f)}else{if(a.done&&c.done)return s?Oi.createSet(r,s):ts.create(r);throw new Error("Mismatched change set lengths")}}}function IE(t,e,i=!1){let n=[],r=i?[]:null,s=new Zu(t),a=new Zu(e);for(let c=!1;;){if(s.done&&a.done)return r?Oi.createSet(n,r):ts.create(n);if(s.ins==0)Ui(n,s.len,0,c),s.next();else if(a.len==0&&!a.done)Ui(n,0,a.ins,c),r&&Fo(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),u=n.length;if(s.ins==-1){let f=a.ins==-1?-1:a.off?0:a.ins;Ui(n,h,f,c),r&&f&&Fo(r,n,a.text)}else a.ins==-1?(Ui(n,s.off?0:s.len,h,c),r&&Fo(r,n,s.textBit(h))):(Ui(n,s.off?0:s.len,a.off?0:a.ins,c),r&&!a.off&&Fo(r,n,a.text));c=(s.ins>h||a.ins>=0&&a.len>h)&&(c||n.length>u),s.forward2(h),a.forward(h)}}}}class Zu{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 Ha{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 Ha(n,r,this.flags)}extend(e,i=e,n=0){if(e<=this.anchor&&i>=this.anchor)return he.range(e,i,void 0,void 0,n);let r=Math.abs(e-this.anchor)>Math.abs(i-this.anchor)?e:i;return he.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 he.range(e.anchor,e.head)}static create(e,i,n){return new Ha(e,i,n)}}class he{constructor(e,i){this.ranges=e,this.mainIndex=i}map(e,i=-1){return e.empty?this:he.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 he([this.main],0)}addRange(e,i=!0){return he.create([e].concat(this.ranges),i?0:this.mainIndex+1)}replaceRange(e,i=this.mainIndex){let n=this.ranges.slice();return n[i]=e,he.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 he(e.ranges.map(i=>Ha.fromJSON(i)),e.main)}static single(e,i=e){return new he([he.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 he.normalized(e.slice(),i);n=s.to}return new he(e,i)}static cursor(e,i=0,n,r){return Ha.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?Ha.create(i,e,48|a):Ha.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?he.range(h,c):he.range(c,h))}}return new he(e,i)}}function VE(t,e){for(let i of t.ranges)if(i.to>e)throw new RangeError("Selection points outside of document")}let F1=0;class ke{constructor(e,i,n,r,s){this.combine=e,this.compareInput=i,this.compare=n,this.isStatic=r,this.id=F1++,this.default=e([]),this.extensions=typeof s=="function"?s(this):s}get reader(){return this}static define(e={}){return new ke(e.combine||(i=>i),e.compareInput||((i,n)=>i===n),e.compare||(e.combine?(i,n)=>i===n:K1),!!e.static,e.enables)}of(e){return new Ip([],this,0,e)}compute(e,i){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ip(e,this,1,i)}computeN(e,i){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ip(e,this,2,i)}from(e,i){return i||(i=n=>n),this.compute([e],n=>i(n.field(e)))}}function K1(t,e){return t==e||t.length==e.length&&t.every((i,n)=>i===e[n])}class Ip{constructor(e,i,n,r){this.dependencies=e,this.facet=i,this.type=n,this.value=r,this.id=F1++}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,u=!1,f=[];for(let g of this.dependencies)g=="doc"?h=!0:g=="selection"?u=!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||u&&(m.docChanged||m.selection)||Zy(g,f)){let v=n(g);if(c?!S2(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 x=_g(m,S);if(this.dependencies.every(w=>w instanceof ke?m.facet(w)===g.facet(w):w instanceof Yn?m.field(w,!1)==g.field(w,!1):!0)||(c?S2(v=n(g),x,r):r(v=n(g),x)))return g.values[a]=x,0}else v=n(g);return g.values[a]=v,1}}}}function S2(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 Zy(t,e){let i=!1;for(let n of e)ku(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 u=[];for(let f=0;f<n.length;f++){let g=_g(h,n[f]);if(r[f]==2)for(let m of g)u.push(m);else u.push(g)}return e.combine(u)}return{create(h){for(let u of n)ku(h,u);return h.values[a]=c(h),1},update(h,u){if(!Zy(h,s))return 0;let f=c(h);return e.compare(f,h.values[a])?0:(h.values[a]=f,1)},reconfigure(h,u){let f=Zy(h,n),g=u.config.facets[e.id],m=u.facet(e);if(g&&!f&&K1(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 cp=ke.define({static:!0});class Yn{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 Yn(F1++,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(cp).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(cp),a=r.facet(cp),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,cp.of({field:this,create:e})]}get extension(){return this}}const Ia={lowest:4,low:3,default:2,high:1,highest:0};function Kh(t){return e=>new YE(e,t)}const Us={highest:Kh(Ia.highest),high:Kh(Ia.high),default:Kh(Ia.default),low:Kh(Ia.low),lowest:Kh(Ia.lowest)};class YE{constructor(e,i){this.inner=e,this.prec=i}}class md{of(e){return new Wy(this,e)}reconfigure(e){return md.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Wy{constructor(e,i){this.compartment=e,this.inner=i}}class xg{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 wZ(e,i,a))m instanceof Yn?r.push(m):(s[m.facet.id]||(s[m.facet.id]=[])).push(m);let c=Object.create(null),h=[],u=[];for(let m of r)c[m.id]=u.length<<1,u.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,x=f&&f[m]||[];if(v.every(w=>w.type==0))if(c[S.id]=h.length<<1|1,K1(x,v))h.push(n.facet(S));else{let w=S.combine(v.map(_=>_.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]=u.length<<1,u.push(_=>w.dynamicSlot(_)));c[S.id]=u.length<<1,u.push(w=>_Z(w,S,v))}}let g=u.map(m=>m(c));return new xg(e,a,g,c,h,s)}}function wZ(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 u=n[h].indexOf(a);u>-1&&n[h].splice(u,1),a instanceof Wy&&i.delete(a.compartment)}if(r.set(a,c),Array.isArray(a))for(let u of a)s(u,c);else if(a instanceof Wy){if(i.has(a.compartment))throw new RangeError("Duplicate use of compartment in extensions");let u=e.get(a.compartment)||a.inner;i.set(a.compartment,u),s(u,c)}else if(a instanceof YE)s(a.inner,a.prec);else if(a instanceof Yn)n[c].push(a),a.provides&&s(a.provides,c);else if(a instanceof Ip)n[c].push(a),a.facet.extensions&&s(a.facet.extensions,Ia.default);else{let u=a.extension;if(!u)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(u,c)}}return s(t,Ia.default),n.reduce((a,c)=>a.concat(c))}function ku(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 _g(t,e){return e&1?t.config.staticValues[e>>1]:t.values[e>>1]}const HE=ke.define(),qy=ke.define({combine:t=>t.some(e=>e),static:!0}),UE=ke.define({combine:t=>t.length?t[0]:void 0,static:!0}),GE=ke.define(),FE=ke.define(),KE=ke.define(),JE=ke.define({combine:t=>t.length?t[0]:!1});class Gs{constructor(e,i){this.type=e,this.value=i}static define(){return new kZ}}class kZ{of(e){return new Gs(this,e)}}class CZ{constructor(e){this.map=e}of(e){return new et(this,e)}}class et{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 et(this.type,i)}is(e){return this.type==e}static define(e={}){return new CZ(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}}et.reconfigure=et.define();et.appendConfig=et.define();class ui{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&&VE(n,i.newLength),s.some(c=>c.type==ui.time)||(this.annotations=s.concat(ui.time.of(Date.now())))}static create(e,i,n,r,s,a){return new ui(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(ui.userEvent);return!!(i&&(i==e||i.length>e.length&&i.slice(0,e.length)==e&&i[e.length]=="."))}}ui.time=Gs.define();ui.userEvent=Gs.define();ui.addToHistory=Gs.define();ui.remote=Gs.define();function TZ(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 eR(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:et.mapEffects(t.effects,r).concat(et.mapEffects(e.effects,s)),annotations:t.annotations.length?t.annotations.concat(e.annotations):e.annotations,scrollIntoView:t.scrollIntoView||e.scrollIntoView}}function Iy(t,e,i){let n=e.selection,r=bc(e.annotations);return e.userEvent&&(r=r.concat(ui.userEvent.of(e.userEvent))),{changes:e.changes instanceof Oi?e.changes:Oi.of(e.changes||[],i,t.facet(UE)),selection:n&&(n instanceof he?n:he.single(n.anchor,n.head)),effects:bc(e.effects),annotations:r,scrollIntoView:!!e.scrollIntoView}}function tR(t,e,i){let n=Iy(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=eR(n,Iy(t,e[s],a?n.changes.newLength:t.doc.length),a)}let r=ui.create(t,n.changes,n.selection,n.effects,n.annotations,n.scrollIntoView);return $Z(i?QZ(r):r)}function QZ(t){let e=t.startState,i=!0;for(let r of e.facet(GE)){let s=r(t);if(s===!1){i=!1;break}Array.isArray(s)&&(i=i===!0?s:TZ(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=ui.create(e,r,t.selection&&t.selection.map(s),et.mapEffects(t.effects,s),t.annotations,t.scrollIntoView)}let n=e.facet(FE);for(let r=n.length-1;r>=0;r--){let s=n[r](t);s instanceof ui?t=s:Array.isArray(s)&&s.length==1&&s[0]instanceof ui?t=s[0]:t=tR(e,bc(s),!1)}return t}function $Z(t){let e=t.startState,i=e.facet(KE),n=t;for(let r=i.length-1;r>=0;r--){let s=i[r](t);s&&Object.keys(s).length&&(n=eR(n,Iy(e,s,t.changes.newLength),!0))}return n==t?t:ui.create(e,t.changes,t.selection,n.effects,n.annotations,n.scrollIntoView)}const PZ=[];function bc(t){return t==null?PZ:Array.isArray(t)?t:[t]}var ti=(function(t){return t[t.Word=0]="Word",t[t.Space=1]="Space",t[t.Other=2]="Other",t})(ti||(ti={}));const EZ=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let Vy;try{Vy=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function RZ(t){if(Vy)return Vy.test(t);for(let e=0;e<t.length;e++){let i=t[e];if(/\w/.test(i)||i>"€"&&(i.toUpperCase()!=i.toLowerCase()||EZ.test(i)))return!0}return!1}function AZ(t){return e=>{if(!/\S/.test(e))return ti.Space;if(RZ(e))return ti.Word;for(let i=0;i<t.length;i++)if(e.indexOf(t[i])>-1)return ti.Word;return ti.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++)ku(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 ku(this,n),_g(this,n)}update(...e){return tR(this,e,!0)}applyTransaction(e){let i=this.config,{base:n,compartments:r}=i;for(let c of e.effects)c.is(md.reconfigure)?(i&&(r=new Map,i.compartments.forEach((h,u)=>r.set(u,h)),i=null),r.set(c.value.compartment,c.value.extension)):c.is(et.reconfigure)?(i=null,n=c.value):c.is(et.appendConfig)&&(i=null,n=bc(n).concat(c.value));let s;i?s=e.startState.values.slice():(i=xg.resolve(n,r,this),s=new ct(i,this.doc,this.selection,i.dynamicSlots.map(()=>null),(h,u)=>u.reconfigure(h,this),null).values);let a=e.startState.facet(qy)?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:he.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=bc(n.effects);for(let c=1;c<i.ranges.length;c++){let h=e(i.ranges[c]),u=this.changes(h.changes),f=u.map(r);for(let m=0;m<c;m++)s[m]=s[m].map(f);let g=r.mapDesc(u,!0);s.push(h.range.map(g)),r=r.compose(f),a=et.mapEffects(a,f).concat(et.mapEffects(bc(h.effects),g))}return{changes:r,selection:he.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)||Ly))}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:(ku(this,i),_g(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 Yn&&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:he.fromJSON(e.selection),extensions:i.extensions?r.concat([i.extensions]):r})}static create(e={}){let i=xg.resolve(e.extensions||[],new Map),n=e.doc instanceof dt?e.doc:dt.of((e.doc||"").split(i.staticFacet(ct.lineSeparator)||Ly)),r=e.selection?e.selection instanceof he?e.selection:he.single(e.selection.anchor,e.selection.head):he.single(0);return VE(r,n.length),i.staticFacet(qy)||(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(JE)}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(HE))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 AZ(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))!=ti.Word)break;a=h}for(;c<r;){let h=Qi(i,c);if(s(i.slice(c,h))!=ti.Word)break;c=h}return a==c?null:he.range(a+n,c+n)}}ct.allowMultipleSelections=qy;ct.tabSize=ke.define({combine:t=>t.length?t[0]:4});ct.lineSeparator=UE;ct.readOnly=JE;ct.phrases=ke.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=HE;ct.changeFilter=GE;ct.transactionFilter=FE;ct.transactionExtender=KE;md.reconfigure=et.define();function ha(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 ia{eq(e){return this==e}range(e,i=e){return Yy.create(e,i,this)}}ia.prototype.startSide=ia.prototype.endSide=0;ia.prototype.point=!1;ia.prototype.mapMode=rn.TrackDel;function J1(t,e){return t==e||t.constructor==e.constructor&&t.eq(e)}let Yy=class iR{constructor(e,i,n){this.from=e,this.to=i,this.value=n}static create(e,i,n){return new iR(e,i,n)}};function Hy(t,e){return t.from-e.from||t.value.startSide-e.value.startSide}class eb{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,u=s[h]-e||(n?this.value[h].endSide:this.value[h].startSide)-i;if(h==a)return u>=0?a:c;u>=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 u=this.value[h],f=this.from[h]+e,g=this.to[h]+e,m,v;if(f==g){let S=i.mapPos(f,u.startSide,u.mapMode);if(S==null||(m=v=S,u.startSide!=u.endSide&&(v=i.mapPos(f,u.endSide),v<m)))continue}else if(m=i.mapPos(f,u.startSide),v=i.mapPos(g,u.endSide),m>v||m==v&&u.startSide>0&&u.endSide<=0)continue;(v-m||u.endSide-u.startSide)<0||(a<0&&(a=m),u.point&&(c=Math.max(c,v-m)),n.push(u),r.push(m-a),s.push(v-a))}return{mapped:n.length?new eb(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(Hy)),this.isEmpty)return i.length?nt.of(i):this;let c=new nR(this,null,-1).goto(0),h=0,u=[],f=new al;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)||u.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)||u.push(Yy.create(c.from,c.to,c.value))),c.next());return f.finishInner(this.nextLayer.isEmpty&&!u.length?nt.empty:this.nextLayer.update({add:u,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],u=e.touchesRange(c,c+h.length);if(u===!1)r=Math.max(r,h.maxPoint),i.push(h),n.push(e.mapPos(c));else if(u===!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 Wu.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,i=0){return Wu.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=b2(a,c,n),u=new Jh(a,h,s),f=new Jh(c,h,s);n.iterGaps((g,m,v)=>x2(u,g,f,m,v,r)),n.empty&&n.length==0&&x2(u,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=b2(s,a),h=new Jh(s,c,0).goto(n),u=new Jh(a,c,0).goto(n);for(;;){if(h.to!=u.to||!Uy(h.active,u.active)||h.point&&(!u.point||!J1(h.point,u.point)))return!1;if(h.to>r)return!0;h.next(),u.next()}}static spans(e,i,n,r,s=-1){let a=new Jh(e,null,s).goto(i),c=i,h=a.openStart;for(;;){let u=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,u,a.point,f,g,a.pointRank),h=Math.min(a.openEnd(u),f.length)}else u>c&&(r.span(c,u,a.active,h),h=a.openEnd(u));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 al;for(let r of e instanceof Yy?[e]:i?MZ(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 MZ(t){if(t.length>1)for(let e=t[0],i=1;i<t.length;i++){let n=t[i];if(Hy(e,n)>0)return t.slice().sort(Hy);e=n}return t}nt.empty.nextLayer=nt.empty;class al{finishChunk(e){this.chunks.push(new eb(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 al)).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 b2(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 nR{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 Wu{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 nR(a,i,n,s));return r.length==1?r[0]:new Wu(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--)Ov(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--)Ov(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(),Ov(this.heap,0)}}}function Ov(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 Jh{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=Wu.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){hp(this.active,e),hp(this.activeTo,e),hp(this.activeRank,e),this.minActive=_2(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++;up(this.active,i,n),up(this.activeTo,i,r),up(this.activeRank,i,s),e&&up(e,i,this.cursor.from),this.minActive=_2(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&&hp(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 x2(t,e,i,n,r,s){t.goto(e),i.goto(n);let a=n+r,c=n,h=n-e,u=!!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&&J1(t.point,i.point)&&Uy(t.activeForPoint(t.to),i.activeForPoint(i.to))||s.comparePoint(c,S,t.point,i.point),f=!1):(f&&s.boundChange(c),S>c&&!Uy(t.active,i.active)&&s.compareRange(c,S,t.active,i.active),u&&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 Uy(t,e){if(t.length!=e.length)return!1;for(let i=0;i<t.length;i++)if(t[i]!=e[i]&&!J1(t[i],e[i]))return!1;return!0}function hp(t,e){for(let i=e,n=t.length-1;i<n;i++)t[i]=t[i+1];t.pop()}function up(t,e,i){for(let n=t.length-1;n>=e;n--)t[n+1]=t[n];t[e]=i}function _2(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 Is(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 zZ(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 Gy="ͼ",w2=typeof Symbol>"u"?"__"+Gy:Symbol.for(Gy),Fy=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),k2=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class na{constructor(e,i){this.rules=[];let{finish:n}=i||{};function r(a){return/^@/.test(a)?[a]:a.split(/,\s*/)}function s(a,c,h,u){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(x=>a.map(w=>x.replace(/&/,w))).reduce((x,w)=>x.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,x=>"-"+x.toLowerCase())+": "+S+";")}(f.length||m)&&h.push((n&&!g&&!u?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=k2[w2]||1;return k2[w2]=e+1,Gy+e.toString(36)}static mount(e,i,n){let r=e[Fy],s=n&&n.nonce;r?s&&r.setNonce(s):r=new jZ(e,s),r.mount(Array.isArray(i)?i:[i],e)}}let C2=new Map;class jZ{constructor(e,i){let n=e.ownerDocument||e,r=n.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let s=C2.get(n);if(s)return e[Fy]=s;this.sheet=new r.CSSStyleSheet,C2.set(n,this)}else this.styleTag=n.createElement("style"),i&&this.styleTag.setAttribute("nonce",i);this.modules=[],e[Fy]=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 u=0;u<c.rules.length;u++)n.insertRule(c.rules[u],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 ra={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:"'"},qu={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},DZ=typeof navigator<"u"&&/Mac/.test(navigator.platform),BZ=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Di=0;Di<10;Di++)ra[48+Di]=ra[96+Di]=String(Di);for(var Di=1;Di<=24;Di++)ra[Di+111]="F"+Di;for(var Di=65;Di<=90;Di++)ra[Di]=String.fromCharCode(Di+32),qu[Di]=String.fromCharCode(Di);for(var vv in ra)qu.hasOwnProperty(vv)||(qu[vv]=ra[vv]);function LZ(t){var e=DZ&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||BZ&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified",i=!e&&t.key||(t.shiftKey?qu:ra)[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 xi(){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++)rR(t,arguments[e]);return t}function rR(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++)rR(t,e[i]);else throw new RangeError("Unsupported child node: "+e)}let nn=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},Ky=typeof document<"u"?document:{documentElement:{style:{}}};const Jy=/Edge\/(\d+)/.exec(nn.userAgent),sR=/MSIE \d/.test(nn.userAgent),eS=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(nn.userAgent),bm=!!(sR||eS||Jy),T2=!bm&&/gecko\/(\d+)/i.test(nn.userAgent),yv=!bm&&/Chrome\/(\d+)/.exec(nn.userAgent),Q2="webkitFontSmoothing"in Ky.documentElement.style,tS=!bm&&/Apple Computer/.test(nn.vendor),$2=tS&&(/Mobile\/\w+/.test(nn.userAgent)||nn.maxTouchPoints>2);var be={mac:$2||/Mac/.test(nn.platform),windows:/Win/.test(nn.platform),linux:/Linux|X11/.test(nn.platform),ie:bm,ie_version:sR?Ky.documentMode||6:eS?+eS[1]:Jy?+Jy[1]:0,gecko:T2,gecko_version:T2?+(/Firefox\/(\d+)/.exec(nn.userAgent)||[0,0])[1]:0,chrome:!!yv,chrome_version:yv?+yv[1]:0,ios:$2,android:/Android\b/.test(nn.userAgent),webkit:Q2,webkit_version:Q2?+(/\bAppleWebKit\/(\d+)/.exec(nn.userAgent)||[0,0])[1]:0,safari:tS,safari_version:tS?+(/\bVersion\/(\d+(\.\d+)?)/.exec(nn.userAgent)||[0,0])[1]:0,tabSize:Ky.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function tb(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 wg=Object.create(null);function ib(t,e,i){if(t==e)return!0;t||(t=wg),e||(e=wg);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 XZ(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 P2(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 NZ(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 ml{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 Li=(function(t){return t[t.Text=0]="Text",t[t.WidgetBefore=1]="WidgetBefore",t[t.WidgetAfter=2]="WidgetAfter",t[t.WidgetRange=3]="WidgetRange",t})(Li||(Li={}));class qe extends ia{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 Od(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 ll(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}=oR(e,i);n=(s?i?-3e8:-1:5e8)-1,r=(a?i?2e8:1:-6e8)+1}return new ll(e,n,r,i,e.widget||null,!0)}static line(e){return new vd(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 Od extends qe{constructor(e){let{start:i,end:n}=oR(e);super(i?-1:5e8,n?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?tb(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||wg}eq(e){return this==e||e instanceof Od&&this.tagName==e.tagName&&ib(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)}}Od.prototype.point=!1;class vd extends qe{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof vd&&this.spec.class==e.spec.class&&ib(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)}}vd.prototype.mapMode=rn.TrackBefore;vd.prototype.point=!0;class ll 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?rn.TrackBefore:rn.TrackAfter:rn.TrackDel}get type(){return this.startSide!=this.endSide?Li.WidgetRange:this.startSide<=0?Li.WidgetBefore:Li.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof ll&&ZZ(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)}}ll.prototype.point=!0;function oR(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 ZZ(t,e){return t==e||!!(t&&e&&t.compare(e))}function xc(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 Iu extends ia{constructor(e,i){super(),this.tagName=e,this.attributes=i}eq(e){return e==this||e instanceof Iu&&this.tagName==e.tagName&&ib(this.attributes,e.attributes)}static create(e){return new Iu(e.tagName,e.attributes||wg)}static set(e,i=!1){return nt.of(e,i)}}Iu.prototype.startSide=Iu.prototype.endSide=-1;function Vu(t){let e;return t.nodeType==11?e=t.getSelection?t:t.ownerDocument:e=t,e.getSelection()}function iS(t,e){return e?t==e||t.contains(e.nodeType!=1?e.parentNode:e):!1}function Cu(t,e){if(!e.anchorNode)return!1;try{return iS(t,e.anchorNode)}catch{return!1}}function Vp(t){return t.nodeType==3?Yu(t,0,t.nodeValue.length).getClientRects():t.nodeType==1?t.getClientRects():[]}function Tu(t,e,i,n){return i?E2(t,e,i,n,-1)||E2(t,e,i,n,1):!1}function sa(t){for(var e=0;;e++)if(t=t.previousSibling,!t)return e}function kg(t){return t.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(t.nodeName)}function E2(t,e,i,n,r){for(;;){if(t==i&&e==n)return!0;if(e==(r<0?0:Vs(t))){if(t.nodeName=="DIV")return!1;let s=t.parentNode;if(!s||s.nodeType!=1)return!1;e=sa(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?Vs(t):0}else return!1}}function Vs(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Cg(t,e){let i=e?t.left:t.right;return{left:i,right:i,top:t.top,bottom:t.bottom}}function WZ(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 aR(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 qZ(t,e,i,n,r,s,a,c){let h=t.ownerDocument,u=h.defaultView||window;for(let f=t,g=!1;f&&!g;)if(f.nodeType==1){let m,v=f==h.body,S=1,x=1;if(v)m=WZ(u);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 T=f.getBoundingClientRect();({scaleX:S,scaleY:x}=aR(f,T)),m={left:T.left,right:T.left+f.clientWidth*S,top:T.top,bottom:T.top+f.clientHeight*x}}let w=0,_=0;if(r=="nearest")e.top<m.top+a?(_=e.top-(m.top+a),i>0&&e.bottom>m.bottom+_&&(_=e.bottom-m.bottom+a)):e.bottom>m.bottom-a&&(_=e.bottom-m.bottom+a,i<0&&e.top-_<m.top&&(_=e.top-(m.top+a)));else{let T=e.bottom-e.top,C=m.bottom-m.top;_=(r=="center"&&T<=C?e.top+T/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||_)if(v)u.scrollBy(w,_);else{let T=0,C=0;if(_){let Q=f.scrollTop;f.scrollTop+=_/x,C=(f.scrollTop-Q)*x}if(w){let Q=f.scrollLeft;f.scrollLeft+=w/S,T=(f.scrollLeft-Q)*S}e={left:e.left-T,top:e.top-C,right:e.right-T,bottom:e.bottom-C},T&&Math.abs(T-w)<1&&(n="nearest"),C&&Math.abs(C-_)<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 lR(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 IZ{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?Vs(i):0),n,Math.min(e.focusOffset,n?Vs(n):0))}set(e,i,n,r){this.anchorNode=e,this.anchorOffset=i,this.focusNode=n,this.focusOffset=r}}let Xa=null;be.safari&&be.safari_version>=26&&(Xa=!1);function cR(t){if(t.setActive)return t.setActive();if(Xa)return t.focus(Xa);let e=[];for(let i=t;i&&(e.push(i,i.scrollTop,i.scrollLeft),i!=i.ownerDocument);i=i.parentNode);if(t.focus(Xa==null?{get preventScroll(){return Xa={preventScroll:!0},!0}}:void 0),!Xa){Xa=!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 R2;function Yu(t,e,i=e){let n=R2||(R2=document.createRange());return n.setEnd(t,i),n.setStart(t,e),n}function _c(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 VZ(t){for(;t;){if(t&&(t.nodeType==9||t.nodeType==11&&t.host))return t;t=t.assignedSlot||t.parentNode}return null}function YZ(t,e){let i=e.focusNode,n=e.focusOffset;if(!i||e.anchorNode!=i||e.anchorOffset!=n)return!1;for(n=Math.min(n,Vs(i));;)if(n){if(i.nodeType!=1)return!1;let r=i.childNodes[n-1];r.contentEditable=="false"?n--:(i=r,n=Vs(i))}else{if(i==t)return!0;n=sa(i),i=i.parentNode}}function hR(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 uR(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=Vs(i)}else if(i.parentNode&&!kg(i))n=sa(i),i=i.parentNode;else return null}}function dR(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&&!kg(i))n=sa(i)+1,i=i.parentNode;else return null}}class Tr{constructor(e,i,n=!0){this.node=e,this.offset=i,this.precise=n}static before(e,i){return new Tr(e.parentNode,sa(e),i)}static after(e,i){return new Tr(e.parentNode,sa(e)+1,i)}}var Qt=(function(t){return t[t.LTR=0]="LTR",t[t.RTL=1]="RTL",t})(Qt||(Qt={}));const cl=Qt.LTR,nb=Qt.RTL;function fR(t){let e=[];for(let i=0;i<t.length;i++)e.push(1<<+t[i]);return e}const HZ=fR("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),UZ=fR("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),nS=Object.create(null),Lr=[];for(let t of["()","[]","{}"]){let e=t.charCodeAt(0),i=t.charCodeAt(1);nS[e]=i,nS[i]=-e}function pR(t){return t<=247?HZ[t]:1424<=t&&t<=1524?2:1536<=t&&t<=1785?UZ[t-1536]:1774<=t&&t<=2220?4:8192<=t&&t<=8204?256:64336<=t&&t<=65023?4:1}const GZ=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class Ur{get dir(){return this.level%2?nb:cl}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 gR(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||!gR(n.inner,r.inner))return!1}return!0}const Ct=[];function FZ(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 u=a,f=h,g=h;u<c;u++){let m=pR(t.charCodeAt(u));m==512?m=f:m==8&&g==4&&(m=16),Ct[u]=m==4?2:m,m&7&&(g=m),f=m}for(let u=a,f=h,g=h;u<c;u++){let m=Ct[u];if(m==128)u<c-1&&f==Ct[u+1]&&f&24?m=Ct[u]=f:Ct[u]=256;else if(m==64){let v=u+1;for(;v<c&&Ct[v]==64;)v++;let S=u&&f==8||v<i&&Ct[v]==8?g==1?1:8:256;for(let x=u;x<v;x++)Ct[x]=S;u=v-1}else m==8&&g==1&&(Ct[u]=1);f=m,m&7&&(g=m)}}}function KZ(t,e,i,n,r){let s=r==1?2:1;for(let a=0,c=0,h=0;a<=n.length;a++){let u=a?n[a-1].to:e,f=a<n.length?n[a].from:i;for(let g=u,m,v,S;g<f;g++)if(v=nS[m=t.charCodeAt(g)])if(v<0){for(let x=c-3;x>=0;x-=3)if(Lr[x+1]==-v){let w=Lr[x+2],_=w&2?r:w&4?w&1?s:r:0;_&&(Ct[g]=Ct[Lr[x]]=_),c=x;break}}else{if(Lr.length==189)break;Lr[c++]=g,Lr[c++]=m,Lr[c++]=h}else if((S=Ct[g])==2||S==1){let x=S==r;h=x?0:1;for(let w=c-3;w>=0;w-=3){let _=Lr[w+2];if(_&2)break;if(x)Lr[w+2]|=2;else{if(_&4)break;Lr[w+2]|=4}}}}}function JZ(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 u=Ct[h];if(u==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(Ct[f]==256)f++;else break;let g=s==1,m=(f<e?Ct[f]:n)==1,v=g==m?g?1:2:n;for(let S=f,x=r,w=x?i[x-1].to:t;S>h;)S==w&&(S=i[--x].from,w=x?i[x-1].to:t),Ct[--S]=v;h=f}else s=u,h++}}}function rS(t,e,i,n,r,s,a){let c=n%2?2:1;if(n%2==r%2)for(let h=e,u=0;h<i;){let f=!0,g=!1;if(u==s.length||h<s[u].from){let x=Ct[h];x!=c&&(f=!1,g=x==16)}let m=!f&&c==1?[]:null,v=f?n:n+1,S=h;e:for(;;)if(u<s.length&&S==s[u].from){if(g)break e;let x=s[u];if(!f)for(let w=x.to,_=u+1;;){if(w==i)break e;if(_<s.length&&s[_].from==w)w=s[_++].to;else{if(Ct[w]==c)break e;break}}if(u++,m)m.push(x);else{x.from>h&&a.push(new Ur(h,x.from,v));let w=x.direction==cl!=!(v%2);sS(t,w?n+1:n,r,x.inner,x.from,x.to,a),h=x.to}S=x.to}else{if(S==i||(f?Ct[S]!=c:Ct[S]==c))break;S++}m?rS(t,h,S,n+1,r,m,a):h<S&&a.push(new Ur(h,S,v)),h=S}else for(let h=i,u=s.length;h>e;){let f=!0,g=!1;if(!u||h>s[u-1].to){let x=Ct[h-1];x!=c&&(f=!1,g=x==16)}let m=!f&&c==1?[]:null,v=f?n:n+1,S=h;e:for(;;)if(u&&S==s[u-1].to){if(g)break e;let x=s[--u];if(!f)for(let w=x.from,_=u;;){if(w==e)break e;if(_&&s[_-1].to==w)w=s[--_].from;else{if(Ct[w-1]==c)break e;break}}if(m)m.push(x);else{x.to<h&&a.push(new Ur(x.to,h,v));let w=x.direction==cl!=!(v%2);sS(t,w?n+1:n,r,x.inner,x.from,x.to,a),h=x.from}S=x.from}else{if(S==e||(f?Ct[S-1]!=c:Ct[S-1]==c))break;S--}m?rS(t,S,h,n+1,r,m,a):S<h&&a.push(new Ur(S,h,v)),h=S}}function sS(t,e,i,n,r,s,a){let c=e%2?2:1;FZ(t,r,s,n,c),KZ(t,r,s,n,c),JZ(r,s,n,c),rS(t,r,s,e,i,n,a)}function eW(t,e,i){if(!t)return[new Ur(0,0,e==nb?1:0)];if(e==cl&&!i.length&&!GZ.test(t))return mR(t.length);if(i.length)for(;t.length>Ct.length;)Ct[Ct.length]=256;let n=[],r=e==cl?0:1;return sS(t,r,r,i,0,t.length,n),n}function mR(t){return[new Ur(0,t,0)]}let OR="";function tW(t,e,i,n,r){var s;let a=n.head-t.from,c=Ur.find(e,a,(s=n.bidiLevel)!==null&&s!==void 0?s:-1,n.assoc),h=e[c],u=h.side(r,i);if(a==u){let m=c+=r?1:-1;if(m<0||m>=e.length)return null;h=e[c=m],a=h.side(!r,i),u=h.side(r,i)}let f=Qi(t.text,a,h.forward(r,i));(f<h.from||f>h.to)&&(f=u),OR=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==u&&g.level+(r?0:1)<h.level?he.cursor(g.side(!r,i)+t.from,g.forward(r,i)?1:-1,g.level):he.cursor(f+t.from,h.forward(r,i)?-1:1,h.level)}function iW(t,e,i){for(let n=e;n<i;n++){let r=pR(t.charCodeAt(n));if(r==1)return cl;if(r==2||r==4)return nb}return cl}const vR=ke.define(),yR=ke.define(),SR=ke.define(),bR=ke.define(),oS=ke.define(),xR=ke.define(),_R=ke.define(),rb=ke.define(),sb=ke.define(),wR=ke.define({combine:t=>t.some(e=>e)}),kR=ke.define({combine:t=>t.some(e=>e)}),CR=ke.define();class wc{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 wc(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 wc(he.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const dp=et.define({map:(t,e)=>t.map(e)}),TR=et.define();function In(t,e,i){let n=t.facet(bR);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 Ls=ke.define({combine:t=>t.length?t[0]:!0});let nW=0;const gc=ke.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 Xi{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(gc.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(gc.of({plugin:this,arg:e}))}static define(e,i){const{eventHandlers:n,eventObservers:r,provide:s,decorations:a}=i||{};return new Xi(nW++,e,n,r,c=>{let h=[];return a&&h.push(xm.of(u=>{let f=u.plugin(c);return f?a(f):qe.none})),s&&h.push(s(c)),h})}static fromClass(e,i){return Xi.define((n,r)=>new e(n,r),i)}}class Sv{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(In(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){In(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){In(e.state,n,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const QR=ke.define(),ob=ke.define(),xm=ke.define(),$R=ke.define(),ab=ke.define(),yd=ke.define(),PR=ke.define();function A2(t,e){let i=t.state.facet(PR);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 u=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=iW(e.text,u,f)),h>0&&g.length&&(S=g[g.length-1]).to==u&&S.direction==v)S.to=f,g=S.inner;else{let x={from:u,to:f,direction:v,inner:[]};g.push(x),g=x.inner}}}}),r}const ER=ke.define();function lb(t){let e=0,i=0,n=0,r=0;for(let s of t.state.facet(ER)){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 pu=ke.define();class ar{constructor(e,i,n,r){this.fromA=e,this.toA=i,this.fromB=n,this.toB=r}join(e){return new ar(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,u=Math.min(c,h);if(u==1e9)break;let f=u+a,g=u,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 ar(f,m,u,g))}return n}}class Tg{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 ar(s,a,c,h))),this.changedRanges=r}static create(e,i,n){return new Tg(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 rW=[];class Ht{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 rW}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&&XZ(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=sa(this.dom),r=this.length?e>0:i>0;return new Tr(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 wm)return e;return null}static get(e){return e.cmTile}}class _m extends Ht{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=M2(r);else i.insertBefore(c.dom,r);n=c.dom}for(r=n?n.nextSibling:i.firstChild,s&&r&&(s.written=!0);r;)r=M2(r);this.length=a}}function M2(t){let e=t.nextSibling;return t.parentNode.removeChild(t),e}class wm extends _m{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=Ht.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 Zs)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 u=h+c.length;if(e>=h&&e<=u){if(c.isWidget()&&i>=-1&&i<=1){if(c.flags&32)return!0;c.flags&16&&(n=void 0)}(h<e||e==u&&(i<-1?c.length:c.covers(1)))&&(!n||!c.isWidget()&&n.isWidget())&&(n=c,r=e-h),(u>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 Zs extends _m{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 Zs(i||document.createElement(e.tagName),e);return i||(n.flags|=4),n}}class Bc extends _m{constructor(e,i){super(e),this.attrs=i}isLine(){return!0}static start(e,i,n){let r=new Bc(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],x=v+S.length;x>=g&&(S.isComposite()?h(S,g-v):(!a||a.isHidden&&(i>0||n&&oW(a,S)))&&(x>g||S.flags&32)?(a=S,c=g-v):(v<g||S.flags&16&&!S.isHidden)&&(r=S,s=g-v)),v=x}}h(this,e);let u=(i<0?r:a)||r||a;return u?{tile:u,offset:u==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):sW(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 Tr(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 Tr(h.dom,0);h==n.tile&&(c=!0)}}return new Tr(this.dom,0)}}function sW(t){let e=t.dom.lastChild;if(!e)return t.dom.getBoundingClientRect();let i=Vp(e);return i[i.length-1]||null}function oW(t,e){let i=t.coordsIn(0,1),n=e.coordsIn(0,1);return i&&n&&n.top<i.bottom}class xn extends _m{constructor(e,i){super(e),this.mark=i}get domAttrs(){return this.mark.attrs}static of(e,i){let n=new xn(i||document.createElement(e.tagName),e);return i||(n.flags|=4),n}}class Ua extends Ht{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=Yu(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,u=>u.width)||h),a?Cg(h,a<0):h||null}static of(e,i){let n=new Ua(i||document.createTextNode(e),e);return i||(n.flags|=2),n}}class hl extends Ht{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 Cg(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 Cg(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 hl(s,n,e,r)}}class Qg extends Ht{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 aW{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],u=h.breakAfter;(i>0?h.length<=e:h.length<e)&&(!n||n.skip(h,0,h.length)!==!1||!h.isComposite)?(a=!!u,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 lW{constructor(e,i,n,r){this.from=e,this.to=i,this.wrapper=n,this.rank=r}}class cW{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 Ua(c.dom,c.text+e);h.parent=a}else a.append(r||Ua.of(e,(s=this.cache.find(Ua))===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)?bv(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],u=r.lastChild;if(u instanceof xn&&u.mark.eq(h.mark))u.dom!=h.dom&&u.setDOM(bv(h.dom)),r=u;else{if(this.cache.reused.get(h)){let g=Ht.get(h.dom);g&&g.setDOM(bv(h.dom))}let f=xn.of(h.mark,h.dom);r.append(f),r=f}this.cache.reused.set(h,2)}let s=Ht.get(e.text);s&&this.cache.reused.set(s,2);let a=new Ua(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=RR);let r=Bc.start(e,i||((n=this.cache.find(Bc))===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 xn&&c.mark.eq(a))r=c,i--;else{let h=xn.of(a,(n=this.cache.find(xn,u=>u.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||!z2(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(be.ios&&z2(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(xv,0,32)||new hl(xv.toDOM(),0,xv,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 lW(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 Zs&&r.wrapper.eq(n.wrapper))i=r;else{let s=Zs.of(n.wrapper,(e=this.cache.find(Zs,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(Qg,void 0,1);return n&&(n.flags=i),n||new Qg(i)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}}class hW{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 $g=[hl,Bc,Ua,xn,Qg,Zs,wm];for(let t=0;t<$g.length;t++)$g[t].bucket=t;class uW{constructor(e){this.view=e,this.buckets=$g.map(()=>[]),this.index=$g.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,u=s[h];if((!i||i(u))&&!this.reused.has(u))return s.splice(h,1),h<a&&this.index[r]--,this.reused.set(u,n),u}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 hl(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 dW{constructor(e,i,n,r,s){this.view=e,this.decorations=r,this.disallowBlockEffectsFor=s,this.openWidget=!1,this.openMarks=0,this.cache=new uW(e),this.text=new hW(e.state.doc),this.builder=new cW(this.cache,new wm(e,e.contentDOM),nt.iter(n)),this.cache.reused.set(i,2),this.old=new aW(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 u=h-r;this.preserve(u,!a,!c),r=h,s+=u}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=gW(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 u=h>0||c<a.length?hl.of(a.widget,this.view,h-c,a.flags&496,this.cache.maybeReuse(a)):this.cache.reuse(a);u.flags&256?(u.flags&=-2,this.builder.addBlockWidget(u)):(this.builder.ensureLine(null),this.builder.addInlineWidget(u,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 Qg)this.cache.add(a);else if(a instanceof xn)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 xn&&r.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?r.length&&(r.length=s=0):a instanceof xn&&(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,u,f,g,m)=>{if(u instanceof ll){if(this.disallowBlockEffectsFor[m]){if(u.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=u.widget||(u.block?Lc.block:Lc.inline),S=fW(u),x=this.cache.findWidget(v,h-c,S)||hl.of(v,this.view,h-c,S);u.block?(u.startSide>0&&r.addLineStartIfNotCovered(n),r.addBlockWidget(x)):(r.ensureLine(n),r.addInlineWidget(x,f,g))}n=null}else n=pW(n,u);h>c&&this.text.skip(h-c)},span:(c,h,u,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,u,g==c?f:u.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=Ht.get(r);if(r==this.view.contentDOM)break;s instanceof xn?i.push(s):s!=null&&s.isLine()?n=s:s instanceof Zs||(r.nodeName=="DIV"&&!n&&r!=this.view.contentDOM?n=new Bc(r,RR):n||i.push(xn.of(new Od({tagName:r.nodeName.toLowerCase(),attributes:NZ(r)}),r)))}return{line:n,marks:i}}}function z2(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 fW(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 RR={class:"cm-line"};function pW(t,e){let i=e.spec.attributes,n=e.spec.class;return!i&&!n||(t||(t={class:"cm-line"}),i&&tb(i,t),n&&(t.class+=" "+n)),t}function gW(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 xn&&e.push(n.mark)}return e}function bv(t){let e=Ht.get(t);return e&&e.setDOM(t.cloneNode()),t}class Lc extends ml{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}}Lc.inline=new Lc("span");Lc.block=new Lc("div");const xv=new class extends ml{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}};class j2{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 wm(e,e.contentDOM),this.updateInner([new ar(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:!wW(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let s=r>-1?OW(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){let{from:f,to:g}=this.hasComposition;n=new ar(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=SW(a,this.decorations,e.changes);h.length&&(n=ar.extendWithRanges(n,h));let u=xW(c,this.blockWrappers,e.changes);return u.length&&(n=ar.extendWithRanges(n,u)),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 dW(this.view,a,this.blockWrappers,this.decorations,this.dynamicDecorationMap);i&&Ht.get(i.text)&&c.cache.reused.set(Ht.get(i.text),2),this.tile=c.run(e,i),aS(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 _v&&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(TR)&&(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(Ls)||n.tabIndex>-1)&&Cu(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,u,f;if(h.empty?f=u=this.inlineDOMNearPos(h.anchor,h.assoc||1):(f=this.inlineDOMNearPos(h.head,h.head==h.from?1:-1),u=this.inlineDOMNearPos(h.anchor,h.anchor==h.from?1:-1)),be.gecko&&h.empty&&!this.hasComposition&&mW(u)){let m=document.createTextNode("");this.view.observer.ignore(()=>u.node.insertBefore(m,u.node.childNodes[u.offset]||null)),u=f=new Tr(m,0),c=!0}let g=this.view.observer.selectionRange;(c||!g.focusNode||(!Tu(u.node,u.offset,g.anchorNode,g.anchorOffset)||!Tu(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=Vu(this.view.root);if(m)if(h.empty){if(be.gecko){let v=vW(u.node,u.offset);if(v&&v!=3){let S=(v==1?uR:dR)(u.node,u.offset);S&&(u=new Tr(S.node,S.offset))}}m.collapse(u.node,u.offset),h.bidiLevel!=null&&m.caretBidiLevel!==void 0&&(m.caretBidiLevel=h.bidiLevel)}else if(m.extend){m.collapse(u.node,u.offset);try{m.extend(f.node,f.offset)}catch{}}else{let v=document.createRange();h.anchor>h.head&&([u,f]=[f,u]),v.setEnd(f.node,f.offset),v.setStart(u.node,u.offset),m.removeAllRanges(),m.addRange(v)}a&&this.view.root.activeElement==n&&(n.blur(),r&&r.focus())}),this.view.observer.setSelectionRange(u,f)),this.impreciseAnchor=u.precise?null:new Tr(g.anchorNode,g.anchorOffset),this.impreciseHead=f.precise?null:new Tr(g.focusNode,g.focusOffset)}suppressWidgetCursorChange(e,i){return this.hasComposition&&i.empty&&Tu(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=Vu(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),u=this.coordsAt(i.head,1);if(!h||!u||h.bottom>u.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=Vs(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&&!Ht.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((u,f)=>{if(u.isWidget()){if(u.flags&32&&f>=e)return!0;u.flags&16&&(s=!0)}else{let g=f+u.length;if(f<=e&&(n=u,r=e-f,s=g<e),g>=e&&!a&&(a=u,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 _v?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=Yu(s.dom,a,c).getClientRects();for(let u=0;u<h.length;u++){let f=h[u];if(u==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==Qt.LTR,u=0,f=(g,m,v)=>{for(let S=0;S<g.children.length&&!(m>r);S++){let x=g.children[S],w=m+x.length,_=x.dom.getBoundingClientRect(),{height:T}=_;if(v&&!S&&(u+=_.top-v.top),x instanceof Zs)w>n&&f(x,m,_);else if(m>=n&&(u>0&&i.push(-u),i.push(T+u),u=0,a)){let C=x.dom.lastChild,Q=C?Vp(C):[];if(Q.length){let M=Q[Q.length-1],E=h?M.right-_.left:_.right-M.left;E>c&&(c=E,this.minWidth=s,this.minWidthFrom=m,this.minWidthTo=w)}}v&&S==g.children.length-1&&(u+=v.bottom-_.bottom),m=w+x.breakAfter}};return f(this.tile,0,null),i}textDirectionAt(e){let{tile:i}=this.tile.resolveBlock(e,1);return getComputedStyle(i.dom).direction=="rtl"?Qt.RTL:Qt.LTR}measureTextSize(){let e=this.tile.blockTiles(a=>{if(a.isLine()&&a.children.length&&a.length<=20){let c=0,h;for(let u of a.children){if(!u.isText()||/[^ -~]/.test(u.text))return;let f=Vp(u.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=Vp(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 _v(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(xm).map(s=>(this.dynamicDecorationMap[e++]=typeof s=="function")?s(this.view):s),n=!1,r=this.view.state.facet(ab).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($R).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(CR))try{if(f(this.view,e.range,e))return!0}catch(g){In(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=lb(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:u}=this.view.scrollDOM;if(qZ(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,u),-u),this.view.textDirection==Qt.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(){aS(this.tile)}}function aS(t,e){let i=e==null?void 0:e.get(t);if(i!=1){i==null&&t.destroy();for(let n of t.children)aS(n,e)}}function mW(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 AR(t,e){let i=t.observer.selectionRange;if(!i.focusNode)return null;let n=uR(i.focusNode,i.focusOffset),r=dR(i.focusNode,i.focusOffset),s=n||r;if(r&&n&&r.node!=n.node){let c=Ht.get(r.node);if(!c||c.isText()&&c.text!=r.node.nodeValue)s=r;else if(t.docView.lastCompositionAfterCursor){let h=Ht.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 OW(t,e,i){let n=AR(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 ar(h.mapPos(s),h.mapPos(a),s,a),text:r}}function vW(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 yW=class{constructor(){this.changes=[]}compareRange(e,i){xc(e,i,this.changes)}comparePoint(e,i){xc(e,i,this.changes)}boundChange(e){xc(e,e,this.changes)}};function SW(t,e,i){let n=new yW;return nt.compare(t,e,i,n),n.changes}class bW{constructor(){this.changes=[]}compareRange(e,i){xc(e,i,this.changes)}comparePoint(){}boundChange(e){xc(e,e,this.changes)}}function xW(t,e,i){let n=new bW;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 wW(t,e){let i=!1;return e&&t.iterChangedRanges((n,r)=>{n<e.to&&r>e.from&&(i=!0)}),i}class _v extends ml{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 kW(t,e,i=1){let n=t.charCategorizer(e),r=t.doc.lineAt(e),s=e-r.from;if(r.length==0)return he.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 u=Qi(r.text,a,!1);if(n(r.text.slice(u,a))!=h)break;a=u}for(;c<r.length;){let u=Qi(r.text,c);if(n(r.text.slice(c,u))!=h)break;c=u}return he.range(a+r.from,c+r.from)}function CW(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+zZ(a,s,t.state.tabSize)}function lS(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==Li.Text&&(r.type!=s.type||(i<0?s.from<e:s.to>e)))&&(r=s)}}return r||n}return n}function TW(t,e,i,n){let r=lS(t,e.head,e.assoc||-1),s=!n||r.type!=Li.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==Qt.LTR)?a.right-1:a.left+1,y:(s.top+s.bottom)/2});if(h!=null)return he.cursor(h,i?-1:1)}return he.cursor(i?r.to:r.from,i?-1:1)}function D2(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 u=tW(r,s,a,c,i),f=OR;if(!u){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),u=t.visualLineSide(r,!i)}if(h){if(!h(f))return c}else{if(!n)return u;h=n(f)}c=u}}function QW(t,e,i){let n=t.state.charCategorizer(e),r=n(i);return s=>{let a=n(s);return r==ti.Space&&(r=a),r==a}}function $W(t,e,i,n){let r=e.head,s=i?1:-1;if(r==(i?t.state.doc.length:0))return he.cursor(r,e.assoc);let a=e.goalColumn,c,h=t.contentDOM.getBoundingClientRect(),u=t.coordsAtPos(r,e.assoc||((e.empty?i:e.head==e.from)?1:-1)),f=t.documentTop;if(u)a==null&&(a=u.left-h.left),c=s<0?u.top:u.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 x=c+(v+S)*s,w=cS(t,{x:g,y:x},!1,s);if(i?x>h.bottom:x<h.top)return he.cursor(w.pos,w.assoc);let _=t.coordsAtPos(w.pos,w.assoc),T=_?(_.top+_.bottom)/2:0;if(!_||(i?T>c:T<c))return he.cursor(w.pos,w.assoc,void 0,a)}}function Qu(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 MR(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=Qu(t,r.from,0);a!=r.from&&(s=he.cursor(a,-1))}else{let a=Qu(t,r.from,-1),c=Qu(t,r.to,1);(a!=r.from||c!=r.to)&&(s=he.range(r.from==r.anchor?a:c,r.from==r.head?a:c))}s&&(i||(i=e.ranges.slice()),i[n]=s)}return i?he.create(i,e.mainIndex):e}function wv(t,e,i){let n=Qu(t.state.facet(yd).map(r=>r(t)),i.from,e.head>i.from?-1:1);return n==i.from?i:he.cursor(n,n<i.from?1:-1)}class Hr{constructor(e,i){this.pos=e,this.assoc=i}}function cS(t,e,i,n){let r=t.contentDOM.getBoundingClientRect(),s=r.top+t.viewState.paddingTop,{x:a,y:c}=e,h=c-s,u;for(;;){if(h<0)return new Hr(0,1);if(h>t.viewState.docHeight)return new Hr(t.state.doc.length,-1);if(u=t.elementAtHeight(h),n==null)break;if(u.type==Li.Text){if(n<0?u.to<t.viewport.from:u.from>t.viewport.to)break;let m=t.docView.coordsAt(n<0?u.from:u.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?u.bottom+g:u.top-g}if(t.viewport.from>=u.to||t.viewport.to<=u.from){if(i)return null;if(u.type==Li.Text){let g=CW(t,r,u,a,c);return new Hr(g,g==u.from?1:-1)}}if(u.type!=Li.Text)return h<(u.top+u.bottom)/2?new Hr(u.from,1):new Hr(u.to,-1);let f=t.docView.lineAt(u.from,2);return(!f||f.length!=u.length)&&(f=t.docView.lineAt(u.from,-2)),new PW(t,a,c,t.textDirectionAt(u.from)).scanTile(f,u.from)}class PW{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[Ur.find(r,e-n.from,-1,i)].level==this.baseDir}dirAt(e,i){let{line:n,spans:r}=this.bidiSpansAt(e);return r[Ur.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,u=-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 _=0;_<v;_++){if(!s.has(w)){S=w;break t}w++,w==r&&(w=n)}break e}s.add(S);let x=i(S);if(x)for(let w=0;w<x.length;w++){let _=x[w],T=0;if(!(_.width==0&&x.length>1)){if(_.bottom<this.y)(!c||c.bottom<_.bottom)&&(c=_),T=1;else if(_.top>this.y)(!h||h.top>_.top)&&(h=_),T=-1;else{let C=_.left>this.x?this.x-_.left:_.right<this.x?this.x-_.right:0,Q=Math.abs(C);Q<f&&(u=S,f=Q,g=_),C&&(T=C<0==(this.baseDir==Qt.LTR)?-1:1)}T==-1&&(!a||this.baseDirAt(e[S],1))?r=S:T==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[u],1):this.baseDir)==Qt.LTR;return{i:u,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 Yu(e.dom,a,c).getClientRects()});return r.after?new Hr(n[r.i+1],-1):new Hr(n[r.i],1)}scanTile(e,i){if(!e.length)return new Hr(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:Yu(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 Hr(n[r.i+1],-1):new Hr(a,1)}}const cc="￿";class EW{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+=cc}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=Ht.get(r),c=r.nextSibling;if(c==i){a!=null&&a.breakAfter&&!c&&n!=this.view.contentDOM&&this.lineBreak();break}let h=Ht.get(c);(a&&h?a.breakAfter:(a?a.breakAfter:kg(r))||kg(c)&&(r.nodeName!="BR"||a!=null&&a.isWidget())&&this.text.length>s)&&!AW(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=Ht.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+(RW(e,n.node,n.offset)?i:0))}}function RW(t,e,i){for(;;){if(!e||i<Vs(e))return!1;if(e==t)return!0;i=sa(e)+1,e=e.parentNode}}function AW(t,e){let i;for(;!(t==e||!t);t=t.nextSibling){let n=Ht.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 B2{constructor(e,i){this.node=e,this.offset=i,this.pos=-1}}class MW{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=zR(e.docView.tile,i,n,0))){let h=s||a?[]:jW(e),u=new EW(h,e);u.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=u.text,this.newSel=DW(h,this.bounds.from)}else{let h=e.observer.selectionRange,u=s&&s.node==h.focusNode&&s.offset==h.focusOffset||!iS(e.contentDOM,h.focusNode)?c.main.head:e.docView.posFromDOM(h.focusNode,h.focusOffset),f=a&&a.node==h.anchorNode&&a.offset==h.anchorOffset||!iS(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&&u!=f&&(g.from>0||g.to<e.state.doc.length)){let m=Math.min(u,f),v=Math.max(u,f),S=g.from-m,x=g.to-v;(S==0||S==1||m==0)&&(x==0||x==-1||v==e.state.doc.length)&&(u=0,f=e.state.doc.length)}if(e.inputState.composing>-1&&c.ranges.length>1)this.newSel=c.replaceRange(he.range(f,u));else if(e.lineWrapping&&f==u&&!(c.main.empty&&c.main.head==u)&&e.inputState.lastTouchTime>Date.now()-100){let m=e.coordsAtPos(u,-1),v=0;m&&(v=e.inputState.lastTouchY<=m.bottom?-1:1),this.newSel=he.create([he.cursor(u,v)])}else this.newSel=he.single(f,u)}}}function zR(t,e,i,n){if(t.isComposite()){let r=-1,s=-1,a=-1,c=-1;for(let h=0,u=n,f=n;h<t.children.length;h++){let g=t.children[h],m=u+g.length;if(u<e&&m>i)return zR(g,e,i,u);if(m>=e&&r==-1&&(r=h,s=u),u>i&&g.dom.parentNode==t.dom){a=h,c=f;break}f=m,u=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 jR(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,u=s.from,f=null;(a===8||be.android&&e.text.length<h-c)&&(u=s.to,f="end");let g=r.doc.sliceString(c,h,cc),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(cc))}:(v=DR(g,e.text,u-c,f))&&(be.chrome&&a==13&&v.toB==v.from+2&&e.text.slice(v.from,v.toB)==cc+cc&&v.toB--,i={from:c+v.from,to:c+v.toA,insert:dt.of(e.text.slice(v.from,v.toB).split(cc))})}else n&&(!t.hasFocus&&r.facet(Ls)||Pg(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=he.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=he.single(n.main.anchor-1,n.main.head-1)),i={from:s.from,to:s.to,insert:dt.of([" "])}),i)return cb(t,i,n,a);if(n&&!Pg(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=MR(r.facet(yd).map(u=>u(t)),n))),t.dispatch({selection:n,scrollIntoView:c,userEvent:h}),!0}else return!1}function cb(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&&_c(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)&&_c(t.contentDOM,"Backspace",8)||e.from==r.from&&e.to==r.to+1&&e.insert.length==0&&_c(t.contentDOM,"Delete",46)))return!0;let s=e.insert.toString();t.inputState.composing>=0&&t.inputState.composing++;let a,c=()=>a||(a=zW(t,e,i));return t.state.facet(xR).some(h=>h(t,e.from,e.to,s,c))||t.dispatch(c()),!0}function zW(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,u=h<0?s.from:s.to,f=Qu(r.facet(yd).map(g=>g(t)),u,h);e.from==f&&(a=f)}if(a>-1)n={changes:e,selection:he.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):"",u=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)+u))}else{let h=r.changes(e),u=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&&AR(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:u||S.map(h)};let x=S.to-v,w=x-f.length;if(t.state.sliceDoc(w,x)!=f||x>=g.from&&w<=g.to)return{range:S};let _=r.changes({from:w,to:x,insert:e.insert}),T=S.to-s.to;return{changes:_,range:u?he.range(Math.max(0,u.anchor+T),Math.max(0,u.head+T)):S.map(_)}})}else n={changes:h,selection:u&&r.selection.replaceRange(u)}}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 DR(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 jW(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 B2(i,n)),(r!=i||s!=n)&&e.push(new B2(r,s))),e}function DW(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?he.single(i+e,n+e):null}function Pg(t,e){return e.head==t.main.head&&e.anchor==t.main.anchor}class BW{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&&JW(e.contentDOM.ownerDocument)}handleEvent(e){!VW(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=LW(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&&LR.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=BR.find(n=>n.keyCode==e.keyCode))&&!e.ctrlKey||XW.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,_c(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 L2(t,e){return(i,n)=>{try{return e.call(t,n,i)}catch(r){In(i.state,r)}}}function LW(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(L2(n.value,h))}if(a)for(let c in a){let h=a[c];h&&i(c).observers.push(L2(n.value,h))}}for(let n in Qr)i(n).handlers.push(Qr[n]);for(let n in kn)i(n).observers.push(kn[n]);return e}const BR=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],XW="dthko",LR=[16,17,18,20,91,92,224,225],fp=6;function pp(t){return Math.max(0,t)*.7+8}function NW(t,e){return Math.max(Math.abs(t.clientX-e.clientX),Math.abs(t.clientY-e.clientY))}class ZW{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=lR(e.contentDOM),this.atoms=e.state.facet(yd).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)&&WW(e,i),this.dragging=IW(e,i)&&ZR(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&&NW(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=lb(this.view);e.clientX-h.left<=r+fp?i=-pp(r-e.clientX):e.clientX+h.right>=a-fp&&(i=pp(e.clientX-a)),e.clientY-h.top<=s+fp?n=-pp(s-e.clientY):e.clientY+h.bottom>=c-fp&&(n=pp(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=MR(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 WW(t,e){let i=t.state.facet(vR);return i.length?i[0](e):be.mac?e.metaKey:e.ctrlKey}function qW(t,e){let i=t.state.facet(yR);return i.length?i[0](e):be.mac?!e.altKey:!e.ctrlKey}function IW(t,e){let{main:i}=t.state.selection;if(i.empty)return!1;let n=Vu(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 VW(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=Ht.get(i))&&n.isWidget()&&!n.isHidden&&n.widget.ignoreEvent(e))return!1;return!0}const Qr=Object.create(null),kn=Object.create(null),XR=be.ie&&be.ie_version<15||be.ios&&be.webkit_version<604;function YW(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(),NR(t,i.value)},50)}function km(t,e,i){for(let n of t.facet(e))i=n(i,t);return i}function NR(t,e){e=km(t.state,rb,e);let{state:i}=t,n,r=1,s=i.toText(e),a=s.lines==i.selection.ranges.length;if(hS!=null&&i.selection.ranges.every(h=>h.empty)&&hS==s.toString()){let h=-1;n=i.changeByRange(u=>{let f=i.doc.lineAt(u.from);if(f.from==h)return{range:u};h=f.from;let g=i.toText((a?s.line(r++).text:e)+i.lineBreak);return{changes:{from:f.from,insert:g},range:he.cursor(u.from+g.length)}})}else a?n=i.changeByRange(h=>{let u=s.line(r++);return{changes:{from:h.from,to:h.to,insert:u.text},range:he.cursor(h.from+u.length)}}):n=i.replaceSelection(s);t.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}kn.scroll=t=>{t.inputState.lastScrollTop=t.scrollDOM.scrollTop,t.inputState.lastScrollLeft=t.scrollDOM.scrollLeft};kn.wheel=kn.mousewheel=t=>{t.inputState.lastWheelEvent=Date.now()};Qr.keydown=(t,e)=>(t.inputState.setSelectionOrigin("select"),e.keyCode==27&&t.inputState.tabFocusMode!=0&&(t.inputState.tabFocusMode=Date.now()+2e3),!1);kn.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")};kn.touchmove=t=>{t.inputState.setSelectionOrigin("select.pointer")};Qr.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(SR))if(i=n(t,e),i)break;if(!i&&e.button==0&&(i=UW(t,e)),i){let n=!t.hasFocus;t.inputState.startMouseSelection(new ZW(t,e,i,n)),n&&t.observer.ignore(()=>{cR(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 X2(t,e,i,n){if(n==1)return he.cursor(e,i);if(n==2)return kW(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++,he.range(a,c)}}const HW=be.ie&&be.ie_version<=11;let N2=null,Z2=0,W2=0;function ZR(t){if(!HW)return t.detail;let e=N2,i=W2;return N2=t,W2=Date.now(),Z2=!e||i>Date.now()-400&&Math.abs(e.clientX-t.clientX)<2&&Math.abs(e.clientY-t.clientY)<2?(Z2+1)%3:1}function UW(t,e){let i=t.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),n=ZR(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),u,f=X2(t,h.pos,h.assoc,n);if(i.pos!=h.pos&&!a){let g=X2(t,i.pos,i.assoc,n),m=Math.min(g.from,f.from),v=Math.max(g.to,f.to);f=m<f.from?he.range(m,v,f.assoc):he.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&&(u=GW(r,h.pos))?u:c?r.addRange(f):he.create([f])}}}function GW(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 he.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}Qr.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=he.range(s,a))}}let{inputState:n}=t;return n.mouseSelection&&(n.mouseSelection.dragging=!0),n.draggedContent=i,e.dataTransfer&&(e.dataTransfer.setData("Text",km(t.state,sb,t.state.sliceDoc(i.from,i.to))),e.dataTransfer.effectAllowed="copyMove"),!1};Qr.dragend=t=>(t.inputState.draggedContent=null,!1);function q2(t,e,i,n){if(i=km(t.state,rb,i),!i)return;let r=t.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:s}=t.inputState,a=n&&s&&qW(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}Qr.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&&q2(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 q2(t,e,n,!0),!0}return!1};Qr.paste=(t,e)=>{if(t.state.readOnly)return!0;t.observer.flush();let i=XR?null:e.clipboardData;return i?(NR(t,i.getData("text/plain")||i.getData("text/uri-list")),!0):(YW(t),!1)};function FW(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 KW(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:km(t,sb,e.join(t.lineBreak)),ranges:i,linewise:n}}let hS=null;Qr.copy=Qr.cut=(t,e)=>{if(!Cu(t.contentDOM,t.observer.selectionRange))return!1;let{text:i,ranges:n,linewise:r}=KW(t.state);if(!i&&!r)return!1;hS=r?i:null,e.type=="cut"&&!t.state.readOnly&&t.dispatch({changes:n,scrollIntoView:!0,userEvent:"delete.cut"});let s=XR?null:e.clipboardData;return s?(s.clearData(),s.setData("text/plain",i),!0):(FW(t,i),!1)};const WR=Gs.define();function qR(t,e){let i=[];for(let n of t.facet(_R)){let r=n(t,e);r&&i.push(r)}return i.length?t.update({effects:i,annotations:WR.of(!0)}):null}function IR(t){setTimeout(()=>{let e=t.hasFocus;if(e!=t.inputState.notifiedFocused){let i=qR(t.state,e);i?t.dispatch(i):t.update([])}},10)}kn.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),IR(t)};kn.blur=t=>{t.observer.clearSelectionRange(),IR(t)};kn.compositionstart=kn.compositionupdate=t=>{t.observer.editContext||(t.inputState.compositionFirstChange==null&&(t.inputState.compositionFirstChange=!0),t.inputState.composing<0&&(t.inputState.composing=0))};kn.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))};kn.contextmenu=t=>{t.inputState.lastContextMenu=Date.now()};Qr.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),u=t.posAtDOM(c.endContainer,c.endOffset);return cb(t,{from:h,to:u,insert:t.state.toText(s)},null),!0}}let r;if(be.chrome&&be.android&&(r=BR.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(()=>kn.compositionend(t,e),20),!1};const I2=new Set;function JW(t){I2.has(t)||(I2.add(t),t.addEventListener("copy",()=>{}),t.addEventListener("cut",()=>{}))}const V2=["pre-wrap","normal","pre-line","break-spaces"];let Xc=!1;function Y2(){Xc=!1}class e7{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 V2.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=V2.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 u=0;u<a.length;u++){let f=a[u];f<0?u++:this.heightSamples[Math.floor(f*10)]=!0}}return h}}class t7{constructor(e,i){this.from=e,this.heights=i,this.index=0}get more(){return this.index<this.heights.length}}class wr{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"?Li.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 ll?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 wr(this.from,this.length+e.length,this.top,this.height+e.height,i)}}var Tt=(function(t){return t[t.ByPos=0]="ByPos",t[t.ByHeight=1]="ByHeight",t[t.ByPosNoHeight=2]="ByPosNoHeight",t})(Tt||(Tt={}));const Yp=.001;class sn{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)>Yp&&(Xc=!0),this.height=e)}replace(e,i,n){return sn.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:u,fromB:f,toB:g}=r[c],m=s.lineAt(h,Tt.ByPosNoHeight,n.setDoc(i),0,0),v=m.to>=u?m:s.lineAt(u,Tt.ByPosNoHeight,n,0,0);for(g+=v.to-u,u=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,Tt.ByPosNoHeight,n,0,0));f+=m.from-h,h=m.from;let S=hb.build(n.setDoc(a),e,f,g);s=Eg(s,s.replace(h,u,S))}return s.updateHeight(n,0)}static empty(){return new Xn(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 n7(sn.of(e.slice(0,i)),a,sn.of(e.slice(n)))}}function Eg(t,e){return t==e?t:(t.constructor!=e.constructor&&(Xc=!0),e)}sn.prototype.size=1;const i7=qe.replace({});class VR extends sn{constructor(e,i,n){super(e,i),this.deco=n,this.spaceAbove=0}mainBlock(e,i){return new wr(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 wr(r,0,n,this.spaceAbove,i7):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,Tt.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 Xn extends VR{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 wr(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 Xn||r instanceof zi&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof zi?r=new Xn(r.length,this.height,this.spaceAbove):r.height=this.height,this.outdated||(r.outdated=!1),r):sn.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 zi extends sn{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 u=r+(e<i.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-n)/this.height))*this.length)),f=i.doc.lineAt(u),g=c+f.length*h,m=Math.max(n,e-g/2);return new wr(f.from,f.length,m,g,0)}else{let u=Math.max(0,Math.min(a-s,Math.floor((e-n)/c))),{from:f,length:g}=i.doc.line(s+u);return new wr(f,g,n+c*u,c,0)}}lineAt(e,i,n,r,s){if(i==Tt.ByHeight)return this.blockAt(e,n,r,s);if(i==Tt.ByPosNoHeight){let{from:v,to:S}=n.doc.lineAt(e);return new wr(v,S-v,0,0,0)}let{firstLine:a,perLine:c,perChar:h}=this.heightMetrics(n,s),u=n.doc.lineAt(e),f=c+u.length*h,g=u.number-a,m=r+c*g+h*(u.from-s-g);return new wr(u.from,u.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:u}=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+u*(e-s-S)}let v=h+u*m.length;a(new wr(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 zi?n[n.length-1]=new zi(s.length+r):n.push(null,new zi(r-1))}if(e>0){let s=n[0];s instanceof zi?n[0]=new zi(e+s.length):n.unshift(new zi(e-1),null)}return sn.of(n)}decomposeLeft(e,i){i.push(new zi(e-1),null)}decomposeRight(e,i){i.push(null,new zi(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 zi(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)>=Yp&&(h=-2);let v=new Xn(f,g,m);v.outdated=!1,a.push(v),c+=f+1}c<=s&&a.push(null,new zi(s-c).updateHeight(e,c));let u=sn.of(a);return(h<0||Math.abs(u.height-this.height)>=Yp||Math.abs(h-this.heightMetrics(e,i).perLine)>=Yp)&&(Xc=!0),Eg(this,u)}else(n||this.outdated)&&(this.setHeight(e.heightForGap(i,i+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class n7 extends sn{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==Tt.ByHeight?e<a:e<c,u=h?this.left.lineAt(e,i,n,r,s):this.right.lineAt(e,i,n,a,c);if(this.break||(h?u.to<c:u.from>c))return u;let f=i==Tt.ByPosNoHeight?Tt.ByPosNoHeight:Tt.ByPos;return h?u.join(this.right.lineAt(c,f,n,a,c)):this.left.lineAt(c,f,n,r,s).join(u)}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 u=this.lineAt(h,Tt.ByPos,n,r,s);e<u.from&&this.left.forEachLine(e,u.from-1,n,r,s,a),u.to>=e&&u.from<=i&&a(u),i>u.to&&this.right.forEachLine(u.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&&H2(s,a-1),i<this.length){let c=s.length;this.decomposeRight(i,s),H2(s,c)}return sn.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?sn.of(this.break?[e,null,i]:[e,i]):(this.left=Eg(this.left,e),this.right=Eg(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 H2(t,e){let i,n;t[e]==null&&(i=t[e-1])instanceof zi&&(n=t[e+1])instanceof zi&&t.splice(e-1,3,new zi(i.length+1+n.length))}const r7=5;class hb{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 Xn?r.length+=n-this.pos:(n>this.pos||!this.isCovered)&&this.nodes.push(new Xn(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 VR(a,r,n)):(a||s||r>=r7)&&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 Xn(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,i){let n=new zi(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 Xn)return e;let i=new Xn(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 Xn)&&!this.isCovered?this.nodes.push(new Xn(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 Xn&&r.updateHeight(this.oracle,n),n+=r?r.length:1;return this.nodes}static build(e,i,n,r){let s=new hb(n,e);return nt.spans(i,n,r,s,0),s.finish(n)}}function s7(t,e,i){let n=new o7;return nt.compare(t,e,i,n,0),n.changes}class o7{constructor(){this.changes=[]}compareRange(){}comparePoint(e,i,n,r){(e<i||n&&n.heightRelevant||r&&r.heightRelevant)&&xc(e,i,this.changes,5)}}function a7(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 u=t.parentNode;u&&u!=n.body;)if(u.nodeType==1){let f=u,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(u==t.parentNode?r.innerHeight:h,m.bottom)}u=g.position=="absolute"||g.position=="fixed"?f.offsetParent:f.parentNode}else if(u.nodeType==11)u=u.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 l7(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 c7(t,e){let i=t.getBoundingClientRect();return{left:0,right:i.right-i.left,top:e,bottom:i.bottom-(i.top+e)}}class kv{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 h7(this.displaySize*(i?e.scaleY:e.scaleX),i)}).range(this.from,this.to)}}class h7 extends ml{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 U2{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=G2,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=Qt.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let n=i.facet(ob).some(r=>typeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new e7(n),this.stateDeco=F2(i),this.heightMap=sn.empty().applyChanges(this.stateDeco,dt.empty,this.heightOracle.setDoc(i.doc),[new ar(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 gp(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?G2:new ub(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(gu(e,this.scaler))})}update(e,i=null){this.state=e.state;let n=this.stateDeco;this.stateDeco=F2(this.state);let r=e.changedRanges,s=ar.extendWithRanges(r,s7(n,this.stateDeco,e?e.changes:Oi.empty(this.state.doc.length))),a=this.heightMap.height,c=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);Y2(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),(this.heightMap.height!=a||Xc)&&(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 u=h.from!=this.viewport.from||h.to!=this.viewport.to;this.viewport=h,e.flags|=this.updateForViewport(),(u||!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(kR)&&(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"?Qt.RTL:Qt.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 u=0,f=0;if(c.width&&c.height){let{scaleX:M,scaleY:E}=aR(i,c);(M>.005&&Math.abs(this.scaleX-M)>.005||E>.005&&Math.abs(this.scaleY-E)>.005)&&(this.scaleX=M,this.scaleY=E,u|=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,u|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(h=!0),this.editorWidth=e.scrollDOM.clientWidth,u|=16);let v=lR(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=hR(this.scrollParent||e.win);let x=(this.printing?c7:a7)(i,this.paddingTop),w=x.top-this.pixelViewport.top,_=x.bottom-this.pixelViewport.bottom;this.pixelViewport=x;let T=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(T!=this.inView&&(this.inView=T,T&&(h=!0)),!this.inView&&!this.scrollTarget&&!l7(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,u|=16),h){let M=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(M)&&(a=!0),a||r.lineWrapping&&Math.abs(C-this.contentDOMWidth)>r.charWidth){let{lineHeight:E,charWidth:L,textHeight:V}=e.docView.measureTextSize();a=E>0&&r.refresh(s,E,L,V,Math.max(5,C/L),M),a&&(e.docView.minWidth=0,u|=16)}w>0&&_>0?f=Math.max(w,_):w<0&&_<0&&(f=Math.min(w,_)),Y2();for(let E of this.viewports){let L=E.from==this.viewport.from?M:e.docView.measureVisibleLineHeights(E);this.heightMap=(a?sn.empty().applyChanges(this.stateDeco,dt.empty,this.heightOracle,[new ar(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,a,new t7(E.from,L))}Xc&&(u|=2)}let Q=!this.viewportIsAppropriate(this.viewport,f)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return Q&&(u&2&&(u|=this.updateScaler()),this.viewport=this.getViewport(f,this.scrollTarget),u|=this.updateForViewport()),(u&2||Q)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(a?[]:this.lineGaps,e)),u|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),u}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 gp(r.lineAt(a-n*1e3,Tt.ByHeight,s,0,0).from,r.lineAt(c+(1-n)*1e3,Tt.ByHeight,s,0,0).to);if(i){let{head:u}=i.range;if(u<h.from||u>h.to){let f=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),g=r.lineAt(u,Tt.ByPos,s,0,0),m;i.y=="center"?m=(g.top+g.bottom)/2-f/2:i.y=="start"||i.y=="nearest"&&u<h.from?m=g.top:m=g.bottom-f,h=new gp(r.lineAt(m-1e3/2,Tt.ByHeight,s,0,0).from,r.lineAt(m+f+1e3/2,Tt.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 gp(this.heightMap.lineAt(n,Tt.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(r,Tt.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,Tt.ByPos,this.heightOracle,0,0),{bottom:s}=this.heightMap.lineAt(i,Tt.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 kv(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!=Qt.LTR&&!n)return[];let c=[],h=(f,g,m,v)=>{if(g-f<s)return;let S=this.state.selection.main,x=[S.from];S.empty||x.push(S.to);for(let _ of x)if(_>f&&_<g){h(f,_-10,m,v),h(_+10,g,m,v);return}let w=d7(e,_=>_.from>=m.from&&_.to<=m.to&&Math.abs(_.from-f)<s&&Math.abs(_.to-g)<s&&!x.some(T=>_.from<T&&_.to>T));if(!w){if(g<m.to&&i&&n&&i.visibleRanges.some(C=>C.from<=g&&C.to>=g)){let C=i.moveToLineBoundary(he.cursor(g),!1,!0).head;C>f&&(g=C)}let _=this.gapSize(m,f,g,v),T=n||_<2e6?_:2e6;w=new kv(f,g,_,T)}c.push(w)},u=f=>{if(f.length<a||f.type!=Li.Text)return;let g=u7(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 x=r/this.heightOracle.lineLength*this.heightOracle.lineHeight,w,_;if(m!=null){let T=Op(g,m),C=((this.visibleBottom-this.visibleTop)/2+x)/f.height;w=T-C,_=T+C}else w=(this.visibleTop-f.top-x)/f.height,_=(this.visibleBottom-f.top+x)/f.height;v=mp(g,w),S=mp(g,_)}else{let x=g.total*this.heightOracle.charWidth,w=r*this.heightOracle.charWidth,_=0;if(x>2e6)for(let E of e)E.from>=f.from&&E.from<f.to&&E.size!=E.displaySize&&E.from*this.heightOracle.charWidth+_<this.pixelViewport.left&&(_=E.size-E.displaySize);let T=this.pixelViewport.left+_,C=this.pixelViewport.right+_,Q,M;if(m!=null){let E=Op(g,m),L=((C-T)/2+w)/x;Q=E-L,M=E+L}else Q=(T-w)/x,M=(C+w)/x;v=mp(g,Q),S=mp(g,M)}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(u):u(f);return c}gapSize(e,i,n,r){let s=Op(r,n)-Op(r,i);return this.heightOracle.lineWrapping?e.height*s:r.total*this.heightOracle.charWidth*s}updateLineGaps(e){kv.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)||gu(this.heightMap.lineAt(e,Tt.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)||gu(this.heightMap.lineAt(this.scaler.fromDOM(e),Tt.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 gu(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 gp{constructor(e,i){this.from=e,this.to=i}}function u7(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 mp({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 Op(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 d7(t,e){for(let i of t)if(e(i))return i}const G2={toDOM(t){return t},fromDOM(t){return t},scale:1,eq(t){return t==this}};function F2(t){let e=t.facet(xm).filter(n=>typeof n!="function"),i=t.facet(ab).filter(n=>typeof n!="function");return i.length&&e.push(nt.join(i)),e}class ub{constructor(e,i,n){let r=0,s=0,a=0;this.viewports=n.map(({from:c,to:h})=>{let u=i.lineAt(c,Tt.ByPos,e,0,0).top,f=i.lineAt(h,Tt.ByPos,e,0,0).bottom;return r+=f-u,{from:c,to:h,top:u,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 ub?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 gu(t,e){if(e.scale==1)return t;let i=e.toDOM(t.top),n=e.toDOM(t.bottom);return new wr(t.from,t.length,i,n-i,Array.isArray(t._content)?t._content.map(r=>gu(r,e)):t._content)}const vp=ke.define({combine:t=>t.join(" ")}),uS=ke.define({combine:t=>t.indexOf(!0)>-1}),dS=na.newName(),YR=na.newName(),HR=na.newName(),UR={"&light":"."+YR,"&dark":"."+HR};function fS(t,e,i){return new na(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 f7=fS("."+dS,{"&":{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"}},UR),p7={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Cv=be.ie&&be.ie_version<=11;class g7{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new IZ,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 O7(e),e.state.facet(Ls)&&(e.contentDOM.editContext=this.editContext.editContext)),Cv&&(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(Ls)?n.root.activeElement!=this.dom:!Cu(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&&Tu(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,i=Vu(e.root);if(!i)return!1;let n=be.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&m7(this.view,i)||i;if(!n||this.selectionRange.eq(n))return!1;let r=Cu(this.dom,n);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&YZ(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,p7),Cv&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),Cv&&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&&_c(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&&Cu(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 MW(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=jR(this.view,i);return this.view.state==n&&(i.domChanged||i.newSel&&!Pg(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=K2(i,e.previousSibling||e.target.previousSibling,-1),r=K2(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(Ls)!=e.state.facet(Ls)&&(e.view.contentDOM.editContext=e.state.facet(Ls)?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 K2(t,e,i){for(;e;){let n=Ht.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 J2(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 Tu(a.node,a.offset,r,s)&&([i,n,r,s]=[r,s,i,n]),{anchorNode:i,anchorOffset:n,focusNode:r,focusOffset:s}}function m7(t,e){if(e.getComposedRanges){let r=e.getComposedRanges(t.root)[0];if(r)return J2(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?J2(t,i):null}class O7{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 u=h-c>n.text.length;c==this.from&&s<this.from?c=s:h==this.to&&s>this.to&&(h=s);let f=DR(e.state.sliceDoc(c,h),n.text,(u?r.from:r.to)-c,u?"end":null);if(!f){let m=he.single(this.toEditorPos(n.selectionStart),this.toEditorPos(n.selectionEnd));Pg(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);cb(e,g,he.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),u=this.toEditorPos(s.rangeEnd);if(h<u){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,u))}}}e.dispatch({effects:TR.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=Vu(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,u)=>{if(n)return;let f=u.length-(a-s);if(r&&a>=r.to)if(r.from==s&&r.to==a&&r.insert.eq(u)){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+u.length>3e4){n=!0;return}this.editContext.updateText(this.toContextPos(s),this.toContextPos(a),u.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 _e{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||VZ(e.parent)||document,this.viewState=new U2(this,e.state||ct.create(e)),e.scrollTo&&e.scrollTo.is(dp)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(gc).map(r=>new Sv(r));for(let r of this.plugins)r.update(this);this.observer=new g7(this),this.inputState=new BW(this),this.inputState.ensureHandlers(this.plugins),this.docView=new j2(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 ui?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(WR))?(this.inputState.notifiedFocused=a,c=1):a!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=a,h=qR(s,a),h||(c=1));let u=this.observer.delayedAndroidKey,f=null;if(u?(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=Tg.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:x}=this.state.facet(_e.cursorScrollMargin);g=new wc(v.empty?v:he.cursor(v.head,v.head>v.anchor?-1:1),"nearest","nearest",x,S)}for(let v of m.effects)v.is(dp)&&(g=v.value.clip(this.state))}this.viewState.update(r,g),this.bidiCache=Rg.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),i=this.docView.update(r),this.state.facet(pu)!=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(vp)!=r.state.facet(vp)&&(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(oS))try{m(r)}catch(v){In(this.state,v,"update listener")}(h||f)&&Promise.resolve().then(()=>{h&&this.state==h.startState&&this.dispatch(h),f&&!jR(this,f)&&u.force&&_c(this.contentDOM,u.key,u.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 U2(this,e),this.plugins=e.facet(gc).map(n=>new Sv(n)),this.pluginMap.clear();for(let n of this.plugins)n.update(this);this.docView.destroy(),this.docView=new j2(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(gc),n=e.state.facet(gc);if(i!=n){let r=[];for(let s of n){let a=i.indexOf(s);if(a<0)r.push(new Sv(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){In(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(hR(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 u=[];h&4||([this.measureRequests,u]=[u,this.measureRequests]);let f=u.map(v=>{try{return v.read(this)}catch(S){return In(this.state,S),eT}}),g=Tg.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<u.length;v++)if(f[v]!=eT)try{let S=u[v];S.write&&S.write(f[v],this)}catch(S){In(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(oS))c(i)}get themeClasses(){return dS+" "+(this.state.facet(uS)?HR:YR)+" "+this.state.facet(vp)}updateAttrs(){let e=tT(this,QR,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),i={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Ls)?"true":"false",class:"cm-content",style:`${be.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(i["aria-readonly"]="true"),tT(this,ob,i);let n=this.observer.ignore(()=>{let r=P2(this.contentDOM,this.contentAttrs,i),s=P2(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(_e.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(pu);let e=this.state.facet(_e.cspNonce);na.mount(this.root,this.styleModules.concat(f7).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 wv(this,e,D2(this,e,i,n))}moveByGroup(e,i){return wv(this,e,D2(this,e,i,n=>QW(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 he.cursor(s.side(i,r)+e.from,s.forward(!i,r)?1:-1)}moveToLineBoundary(e,i,n=!0){return TW(this,e,i,n)}moveVertically(e,i,n){return wv(this,e,$W(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=cS(this,e,i);return n&&n.pos}posAndSideAtCoords(e,i=!0){return this.readMeasured(),cS(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[Ur.find(s,e-r.from,-1,i)];return Cg(n,a.dir==Qt.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(wR)||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>v7)return mR(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||gR(s.isolates,n=A2(this,e))))return s.order;n||(n=A2(this,e));let r=eW(e.text,i,n);return this.bidiCache.push(new Rg(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(()=>{cR(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 dp.of(new wc(typeof e=="number"?he.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 dp.of(new wc(he.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 Xi.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return Xi.define(()=>({}),{eventObservers:e})}static theme(e,i){let n=na.newName(),r=[vp.of(n),pu.of(fS(`.${n}`,e))];return i&&i.dark&&r.push(uS.of(!0)),r}static baseTheme(e){return Us.lowest(pu.of(fS("."+dS,e,UR)))}static findFromDOM(e){var i;let n=e.querySelector(".cm-content"),r=n&&Ht.get(n)||Ht.get(e);return((i=r==null?void 0:r.root)===null||i===void 0?void 0:i.view)||null}}_e.styleModule=pu;_e.inputHandler=xR;_e.clipboardInputFilter=rb;_e.clipboardOutputFilter=sb;_e.scrollHandler=CR;_e.focusChangeEffect=_R;_e.perLineTextDirection=wR;_e.exceptionSink=bR;_e.updateListener=oS;_e.editable=Ls;_e.mouseSelectionStyle=SR;_e.dragMovesSelection=yR;_e.clickAddsSelectionRange=vR;_e.decorations=xm;_e.blockWrappers=$R;_e.outerDecorations=ab;_e.atomicRanges=yd;_e.bidiIsolatedRanges=PR;_e.cursorScrollMargin=ke.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}}});_e.scrollMargins=ER;_e.darkTheme=uS;_e.cspNonce=ke.define({combine:t=>t.length?t[0]:""});_e.contentAttributes=ob;_e.editorAttributes=QR;_e.lineWrapping=_e.contentAttributes.of({class:"cm-lineWrapping"});_e.announce=et.define();const v7=4096,eT={};class Rg{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:Qt.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 Rg(i.mapPos(a.from,1),i.mapPos(a.to,-1),a.dir,a.isolates,!1,a.order))}return n}}function tT(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&&tb(a,i)}return i}const y7=be.mac?"mac":be.windows?"win":be.linux?"linux":"key";function S7(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 u=i[h];if(/^(cmd|meta|m)$/i.test(u))c=!0;else if(/^a(lt)?$/i.test(u))r=!0;else if(/^(c|ctrl|control)$/i.test(u))s=!0;else if(/^s(hift)?$/i.test(u))a=!0;else if(/^mod$/i.test(u))e=="mac"?c=!0:s=!0;else throw new Error("Unrecognized modifier name: "+u)}return r&&(n="Alt-"+n),s&&(n="Ctrl-"+n),c&&(n="Meta-"+n),a&&(n="Shift-"+n),n}function yp(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 b7=Us.default(_e.domEventHandlers({keydown(t,e){return FR(GR(e.state),t,e,"editor")}})),Nc=ke.define({enables:b7}),iT=new WeakMap;function GR(t){let e=t.facet(Nc),i=iT.get(e);return i||iT.set(e,i=w7(e.reduce((n,r)=>n.concat(r),[]))),i}function x7(t,e,i){return FR(GR(t.state),e,t,i)}let Go=null;const _7=4e3;function w7(t,e=y7){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,u,f)=>{var g,m;let v=i[a]||(i[a]=Object.create(null)),S=c.split(/ (?!$)/).map(_=>S7(_,e));for(let _=1;_<S.length;_++){let T=S.slice(0,_).join(" ");r(T,!0),v[T]||(v[T]={preventDefault:!0,stopPropagation:!1,run:[C=>{let Q=Go={view:C,prefix:T,scope:a};return setTimeout(()=>{Go==Q&&(Go=null)},_7),!0}]})}let x=S.join(" ");r(x,!1);let w=v[x]||(v[x]={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),u&&(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 u of c){let f=i[u]||(i[u]=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,pS))}let h=a[e]||a.key;if(h)for(let u of c)s(u,h,a.run,a.preventDefault,a.stopPropagation),a.shift&&s(u,"Shift-"+h,a.shift,a.preventDefault,a.stopPropagation)}return i}let pS=null;function FR(t,e,i,n){pS=e;let r=LZ(e),s=Io(r,0),a=qa(s)==r.length&&r!=" ",c="",h=!1,u=!1,f=!1;Go&&Go.view==i&&Go.scope==n&&(c=Go.prefix+" ",LR.indexOf(e.keyCode)<0&&(u=!0,Go=null));let g=new Set,m=w=>{if(w){for(let _ of w.run)if(!g.has(_)&&(g.add(_),_(i)))return w.stopPropagation&&(f=!0),!0;w.preventDefault&&(w.stopPropagation&&(f=!0),u=!0)}return!1},v=t[n],S,x;return v&&(m(v[c+yp(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=ra[e.keyCode])&&S!=r?(m(v[c+yp(S,e,!0)])||e.shiftKey&&(x=qu[e.keyCode])!=r&&x!=S&&m(v[c+yp(x,e,!1)]))&&(h=!0):a&&e.shiftKey&&m(v[c+yp(r,e,!0)])&&(h=!0),!h&&m(v._any)&&(h=!0)),u&&(h=!0),h&&f&&e.stopPropagation(),pS=null,h}class el{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=KR(e);return[new el(i,r.left-s.left,r.top-s.top,null,r.bottom-r.top)]}else return k7(e,i,n)}}function KR(t){let e=t.scrollDOM.getBoundingClientRect();return{left:(t.textDirection==Qt.LTR?e.left:e.right-t.scrollDOM.clientWidth*t.scaleX)-t.scrollDOM.scrollLeft*t.scaleX,top:e.top-t.scrollDOM.scrollTop*t.scaleY}}function nT(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 k7(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==Qt.LTR,a=t.contentDOM,c=a.getBoundingClientRect(),h=KR(t),u=a.querySelector(".cm-line"),f=u&&window.getComputedStyle(u),g=c.left+(f?parseInt(f.paddingLeft)+Math.min(0,parseInt(f.textIndent)):0),m=c.right-(f?parseInt(f.paddingRight):0),v=lS(t,n,1),S=lS(t,r,-1),x=v.type==Li.Text?v:null,w=S.type==Li.Text?S:null;if(x&&(t.lineWrapping||v.widgetLineBreaks)&&(x=nT(t,n,1,x)),w&&(t.lineWrapping||S.widgetLineBreaks)&&(w=nT(t,r,-1,w)),x&&w&&x.from==w.from&&x.to==w.to)return T(C(i.from,i.to,x));{let M=x?C(i.from,null,x):Q(v,!1),E=w?C(null,i.to,w):Q(S,!0),L=[];return(x||v).to<(w||S).from-(x&&w?1:0)||v.widgetLineBreaks>1&&M.bottom+t.defaultLineHeight/2<E.top?L.push(_(g,M.bottom,m,E.top)):M.bottom<E.top&&t.elementAtHeight((M.bottom+E.top)/2).type==Li.Text&&(M.bottom=E.top=(M.bottom+E.top)/2),T(M).concat(L).concat(T(E))}function _(M,E,L,V){return new el(e,M-h.left,E-h.top,Math.max(0,L-M),V-E)}function T({top:M,bottom:E,horizontal:L}){let V=[];for(let H=0;H<L.length;H+=2)V.push(_(L[H],M,L[H+1],E));return V}function C(M,E,L){let V=1e9,H=-1e9,U=[];function X(P,N,$,Z,z){let q=t.coordsAtPos(P,P==L.to?-2:2),F=t.coordsAtPos($,$==L.from?2:-2);!q||!F||(V=Math.min(q.top,F.top,V),H=Math.max(q.bottom,F.bottom,H),z==Qt.LTR?U.push(s&&N?g:q.left,s&&Z?m:F.right):U.push(!s&&Z?g:F.left,!s&&N?m:q.right))}let R=M??L.from,j=E??L.to;for(let P of t.visibleRanges)if(P.to>R&&P.from<j)for(let N=Math.max(P.from,R),$=Math.min(P.to,j);;){let Z=t.state.doc.lineAt(N);for(let z of t.bidiSpans(Z)){let q=z.from+Z.from,F=z.to+Z.from;if(q>=$)break;F>N&&X(Math.max(q,N),M==null&&q<=R,Math.min(F,$),E==null&&F>=j,z.dir)}if(N=Z.to+1,N>=$)break}return U.length==0&&X(R,M==null,j,E==null,t.textDirection),{top:V,bottom:H,horizontal:U}}function Q(M,E){let L=c.top+(E?M.top:M.bottom);return{top:L,bottom:L,horizontal:[]}}}function C7(t,e){return t.constructor==e.constructor&&t.eq(e)}class T7{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(Hp)!=e.state.facet(Hp)&&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(Hp);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)=>!C7(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 Hp=ke.define();function JR(t){return[Xi.define(e=>new T7(e,t)),Hp.of(t)]}const Zc=ke.define({combine(t){return ha(t,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(e,i)=>Math.min(e,i),drawRangeCursor:(e,i)=>e||i})}});function Q7(t={}){return[Zc.of(t),$7,P7,E7,kR.of(!0)]}function e5(t){return t.startState.facet(Zc)!=t.state.facet(Zc)}const $7=JR({above:!0,markers(t){let{state:e}=t,i=e.facet(Zc),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:he.cursor(r.head,r.assoc);for(let h of el.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=e5(t);return i&&rT(t.state,e),t.docChanged||t.selectionSet||i},mount(t,e){rT(e.state,t)},class:"cm-cursorLayer"});function rT(t,e){e.style.animationDuration=t.facet(Zc).cursorBlinkRate+"ms"}const P7=JR({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 el.forRange(t,"cm-selectionBackground",r))e.push(s);if(be.ios&&!i.empty&&t.state.facet(Zc).iosSelectionHandles){for(let r of el.forRange(t,"cm-selectionHandle cm-selectionHandle-start",he.cursor(i.from,1)))e.push(r);for(let r of el.forRange(t,"cm-selectionHandle cm-selectionHandle-end",he.cursor(i.to,1)))e.push(r)}return e},update(t,e){return t.docChanged||t.selectionSet||t.viewportChanged||e5(t)},class:"cm-selectionLayer"}),E7=Us.highest(_e.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 R7(){return M7}const A7=qe.line({class:"cm-activeLine"}),M7=Xi.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(A7.range(r.from)),e=r.from)}return qe.set(i)}},{decorations:t=>t.decorations}),Sp="-10000px";class z7{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 u=s[h],f=-1;if(u){for(let g=0;g<this.tooltips.length;g++){let m=this.tooltips[g];m&&m.create==u.create&&(f=g)}if(f<0)a[h]=this.createTooltipView(u,h?a[h-1]:null),c&&(c[h]=!!u.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,u)=>i[u]=h),i.length=c.length),this.input=r,this.tooltips=s,this.tooltipViews=a,!0}}function j7(t){let e=t.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}const Tv=ke.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)||j7}}}),sT=new WeakMap,t5=Xi.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(Tv);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 z7(t,i5,(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(Tv);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=Sp,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=lb(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(Tv).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],u=this.manager.tooltipViews[c],{dom:f}=u,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=Sp;continue}let v=h.arrow?u.dom.querySelector(".cm-tooltip-arrow"):null,S=v?7:0,x=m.right-m.left,w=(e=sT.get(u))!==null&&e!==void 0?e:m.bottom-m.top,_=u.offset||B7,T=this.view.textDirection==Qt.LTR,C=m.width>n.right-n.left?T?n.left:n.right-m.width:T?Math.max(n.left,Math.min(g.left-(v?14:0)+_.x,n.right-x)):Math.min(Math.max(n.left,g.left-x+(v?14:0)-_.x),n.right-x),Q=this.above[c];!h.strictSide&&(Q?g.top-w-S-_.y<n.top:g.bottom+w+S+_.y>n.bottom)&&Q==n.bottom-g.bottom>g.top-n.top&&(Q=this.above[c]=!Q);let M=(Q?g.top-n.top:n.bottom-g.bottom)-S;if(M<w&&u.resize!==!1){if(M<this.view.defaultLineHeight){f.style.top=Sp;continue}sT.set(u,w),f.style.height=(w=M)/s+"px"}else f.style.height&&(f.style.height="");let E=Q?g.top-w-S-_.y:g.bottom+S+_.y,L=C+x;if(u.overlap!==!0)for(let V of a)V.left<L&&V.right>C&&V.top<E+w&&V.bottom>E&&(E=Q?V.top-w-2-S:V.bottom+S+2);if(this.position=="absolute"?(f.style.top=(E-t.parent.top)/s+"px",oT(f,(C-t.parent.left)/r)):(f.style.top=E/s+"px",oT(f,C/r)),v){let V=g.left+(T?_.x:-_.x)-(C+14-7);v.style.left=V/r+"px"}u.overlap!==!0&&a.push({left:C,top:E,right:L,bottom:E+w}),f.classList.toggle("cm-tooltip-above",Q),f.classList.toggle("cm-tooltip-below",!Q),u.positioned&&u.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=Sp}},{eventObservers:{scroll(){this.maybeMeasure()}}});function oT(t,e){let i=parseInt(t.style.left,10);(isNaN(i)||Math.abs(e-i)>1)&&(t.style.left=e+"px")}const D7=_e.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"}}}),B7={x:0,y:0},i5=ke.define({enables:[t5,D7]});function n5(t,e){let i=t.plugin(t5);if(!i)return null;let n=i.manager.tooltips.indexOf(e);return n<0?null:i.manager.tooltipViews[n]}const aT=ke.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 r5(t,e){let i=t.plugin(s5),n=i?i.specs.indexOf(e):-1;return n>-1?i.panels[n]:null}const s5=Xi.fromClass(class{constructor(t){this.input=t.state.facet(Ag),this.specs=this.input.filter(i=>i),this.panels=this.specs.map(i=>i(t));let e=t.state.facet(aT);this.top=new bp(t,!0,e.topContainer),this.bottom=new bp(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(aT);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new bp(t.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new bp(t.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let i=t.state.facet(Ag);if(i!=this.input){let n=i.filter(h=>h),r=[],s=[],a=[],c=[];for(let h of n){let u=this.specs.indexOf(h),f;u<0?(f=h(t.view),c.push(f)):(f=this.panels[u],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=>_e.scrollMargins.of(e=>{let i=e.plugin(t);return i&&{top:i.top.scrollMargin(),bottom:i.bottom.scrollMargin()}})});class bp{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=lT(e);e=e.nextSibling}else this.dom.insertBefore(i.dom,e);for(;e;)e=lT(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 lT(t){let e=t.nextSibling;return t.remove(),e}const Ag=ke.define({enables:s5});function L7(t,e){let i,n=new Promise(a=>i=a),r=a=>X7(a,e,i);t.state.field(Qv,!1)?t.dispatch({effects:o5.of(r)}):t.dispatch({effects:et.appendConfig.of(Qv.init(()=>[r]))});let s=a5.of(r);return{close:s,result:n.then(a=>((t.win.queueMicrotask||(h=>t.win.setTimeout(h,10)))(()=>{t.state.field(Qv).indexOf(r)>-1&&t.dispatch({effects:s})}),a))}}const Qv=Yn.define({create(){return[]},update(t,e){for(let i of e.effects)i.is(o5)?t=[i.value].concat(t):i.is(a5)&&(t=t.filter(n=>n!=i.value));return t},provide:t=>Ag.computeN([t],e=>e.field(t))}),o5=et.define(),a5=et.define();function X7(t,e,i){let n=e.content?e.content(t,()=>a(null)):null;if(!n){if(n=xi("form"),e.input){let c=xi("input",e.input);/^(text|password|number|email|tel|url)$/.test(c.type)&&c.classList.add("cm-textfield"),c.name||(c.name="input"),n.appendChild(xi("label",(e.label||"")+": ",c))}else n.appendChild(document.createTextNode(e.label||""));n.appendChild(document.createTextNode(" ")),n.appendChild(xi("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",u=>{u.keyCode==27?(u.preventDefault(),a(null)):u.keyCode==13&&(u.preventDefault(),a(h))}),h.addEventListener("submit",u=>{u.preventDefault(),a(h)})}let s=xi("div",n,xi("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 Ys extends ia{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}Ys.prototype.elementClass="";Ys.prototype.toDOM=void 0;Ys.prototype.mapMode=rn.TrackBefore;Ys.prototype.startSide=Ys.prototype.endSide=-1;Ys.prototype.point=!0;const Up=ke.define(),N7=ke.define(),Z7={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>nt.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},$u=ke.define();function W7(t){return[l5(),$u.of({...Z7,...t})]}const cT=ke.define({combine:t=>t.some(e=>e)});function l5(t){return[q7]}const q7=Xi.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($u).map(e=>new uT(t,e)),this.fixed=!t.state.facet(cT);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(cT)!=!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(Up),this.view.viewport.from),n=[],r=this.gutters.map(s=>new I7(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==Li.Text&&a){gS(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==Li.Text){gS(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($u),i=t.state.facet($u),n=t.docChanged||t.heightChanged||t.viewportChanged||!nt.eq(t.startState.facet(Up),t.state.facet(Up),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 uT(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=>_e.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==Qt.LTR?{left:n,right:r}:{right:n,left:r}})});function hT(t){return Array.isArray(t)?t:[t]}function gS(t,e,i){for(;t.value&&t.from<=i;)t.from==i&&e.push(t.value),t.next()}class I7{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 c5(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=[];gS(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(N7)){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 uT{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=hT(i.markers(e)),i.initialSpacer&&(this.spacer=new c5(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=hT(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 c5{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":""),V7(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,u=!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,u=!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&&(u?r=r.nextSibling:this.dom.insertBefore(h.toDOM(e),r)),u&&a++}this.dom.className=n,this.markers=i}destroy(){this.setMarkers(null,[])}}function V7(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 Y7=ke.define(),H7=ke.define(),mc=ke.define({combine(t){return ha(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,u)=>s(c,h,u)||a(c,h,u):a}return n}})}});class $v extends Ys{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function Pv(t,e){return t.state.facet(mc).formatNumber(e,t.state)}const U7=$u.compute([mc],t=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(Y7)},lineMarker(e,i,n){return n.some(r=>r.toDOM)?null:new $v(Pv(e,e.state.doc.lineAt(i.from).number))},widgetMarker:(e,i,n)=>{for(let r of e.state.facet(H7)){let s=r(e,i,n);if(s)return s}return null},lineMarkerChange:e=>e.startState.facet(mc)!=e.state.facet(mc),initialSpacer(e){return new $v(Pv(e,dT(e.state.doc.lines)))},updateSpacer(e,i){let n=Pv(i.view,dT(i.view.state.doc.lines));return n==e.number?e:new $v(n)},domEventHandlers:t.facet(mc).domEventHandlers,side:"before"}));function G7(t={}){return[mc.of(t),l5(),U7]}function dT(t){let e=9;for(;e<t;)e=e*10+9;return e}const F7=new class extends Ys{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},K7=Up.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(F7.range(r)))}return nt.of(e)});function J7(){return K7}const h5=1024;let eq=0;class lr{constructor(e,i){this.from=e,this.to=i}}class Ze{constructor(e={}){this.id=eq++,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 kc{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 tq=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):tq,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 Sd{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 Sd(i)}}const xp=new WeakMap,fT=new WeakMap;var pt;(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"})(pt||(pt={}));class gt{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=kc.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 Mg(this.topNode,e)}cursorAt(e,i=0,n=0){let r=xp.get(this)||this.topNode,s=new Mg(r);return s.moveTo(e,i),xp.set(this,s._tree),s}get topNode(){return new Gi(this,0,0,null)}resolve(e,i=0){let n=Hu(xp.get(this)||this.topNode,e,i,!1);return xp.set(this,n),n}resolveInner(e,i=0){let n=Hu(fT.get(this)||this.topNode,e,i,!0);return fT.set(this,n),n}resolveStack(e,i=0){return rq(this,e,i)}iterate(e){let{enter:i,leave:n,from:r=0,to:s=this.length}=e,a=e.mode||0,c=(a&pt.IncludeAnonymous)>0;for(let h=this.cursor(a|pt.IncludeAnonymous);;){let u=!1;if(h.from<=s&&h.to>=r&&(!c&&h.type.isAnonymous||i(h)!==!1)){if(h.firstChild())continue;u=!0}for(;u&&n&&(c||!h.type.isAnonymous)&&n(h),!h.nextSibling();){if(!h.parent())return;u=!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:pb(vi.none,this.children,this.positions,0,this.children.length,0,this.length,(i,n,r)=>new gt(this.type,i,n,r,this.propValues),e.makeTree||((i,n,r)=>new gt(vi.none,i,n,r)))}static build(e){return sq(e)}}gt.empty=new gt(vi.none,[],[],0);class db{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 db(this.buffer,this.index)}}class oa{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&&!(u5(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 u=s[h++]=r[c++]-n;s[h++]=r[c++]-e,a=Math.max(a,u)}return new oa(s,a,this.set)}}function u5(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 Hu(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 Gi&&t.index<0?null:t.parent;if(!a)return t;t=a}let s=n?0:pt.IgnoreOverlays;if(n)for(let a=t,c=a.parent;c;a=c,c=a.parent)a instanceof Gi&&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 d5{cursor(e=0){return new Mg(this,e)}getChild(e,i=null,n=null){let r=pT(this,e,i,n);return r.length?r[0]:null}getChildren(e,i=null,n=null){return pT(this,e,i,n)}resolve(e,i=0){return Hu(this,e,i,!1)}resolveInner(e,i=0){return Hu(this,e,i,!0)}matchContext(e){return mS(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 Gi extends d5{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,u=i>0?c.length:-1;e!=u;e+=i){let f=c[e],g=h[e]+a.from,m;if(!(!(s&pt.EnterBracketed&&f instanceof gt&&(m=kc.get(f))&&!m.overlay&&m.bracketed&&n>=g&&n<=g+f.length)&&!u5(r,n,g,g+f.length))){if(f instanceof oa){if(s&pt.ExcludeBuffers)continue;let v=f.findChild(0,f.buffer.length,i,n-g,r);if(v>-1)return new Gr(new iq(a,f,e,g),null,v)}else if(s&pt.IncludeAnonymous||!f.type.isAnonymous||fb(f)){let v;if(!(s&pt.IgnoreMounts)&&(v=kc.get(f))&&!v.overlay)return new Gi(v.tree,g,e,a);let S=new Gi(f,g,e,a);return s&pt.IncludeAnonymous||!S.type.isAnonymous?S:S.nextChild(i<0?f.children.length-1:0,i,n,r,s)}}}if(s&pt.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&pt.IgnoreOverlays)&&(r=kc.get(this._tree))&&r.overlay){let s=e-this.from,a=n&pt.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 Gi(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 pT(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 mS(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 iq{constructor(e,i,n,r){this.parent=e,this.buffer=i,this.index=n,this.start=r}}class Gr extends d5{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 Gr(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&pt.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 Gr(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 Gr(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 Gr(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 gt(this.type,e,i,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function f5(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 Gi&&i.index<0?null:i.parent,r=t.slice();return n?r[e]=n:r.splice(e,1),new nq(r,i)}class nq{constructor(e,i){this.heads=e,this.node=i}get next(){return f5(this.heads)}}function rq(t,e,i){let n=t.resolveInner(e,i),r=null;for(let s=n instanceof Gi?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=kc.get(s.tree);if(a&&a.overlay&&a.overlay[0].from<=e&&a.overlay[a.overlay.length-1].to>=e){let c=new Gi(a.tree,a.overlay[0].from+s.from,-1,s);(r||(r=[n])).push(Hu(c,e,i,!1))}}return r?f5(r):n}class Mg{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&~pt.EnterBracketed,e instanceof Gi)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 Gi?(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&pt.ExcludeBuffers?!1:this.enterChild(1,e,i):this.yield(this._tree.enter(e,i,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&pt.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&pt.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&pt.IncludeAnonymous||c instanceof oa||!c.type.isAnonymous||fb(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 Gr(this.buffer,i,this.stack[r]);return this.bufferNode=new Gr(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 mS(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 mS(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 fb(t){return t.children.some(e=>e instanceof oa||!e.type.isAnonymous||fb(e))}function sq(t){var e;let{buffer:i,nodeSet:n,maxBufferLength:r=h5,reused:s=[],minRepeatType:a=n.types.length}=t,c=Array.isArray(i)?new db(i,i.length):i,h=n.types,u=0,f=0;function g(M,E,L,V,H,U){let{id:X,start:R,end:j,size:P}=c,N=f,$=u;if(P<0)if(c.next(),P==-1){let D=s[X];L.push(D),V.push(R-M);return}else if(P==-3){u=X;return}else if(P==-4){f=X;return}else throw new RangeError(`Unrecognized record size: ${P}`);let Z=h[X],z,q,F=R-M;if(j-R<=r&&(q=w(c.pos-E,H))){let D=new Uint16Array(q.size-q.skip),I=c.pos-q.size,ee=D.length;for(;c.pos>I;)ee=_(q.start,D,ee);z=new oa(D,j-q.start,n),F=q.start-M}else{let D=c.pos-P;c.next();let I=[],ee=[],re=X>=a?X:-1,ce=0,fe=j;for(;c.pos>D;)re>=0&&c.id==re&&c.size>=0?(c.end<=fe-r&&(S(I,ee,R,ce,c.end,fe,re,N,$),ce=I.length,fe=c.end),c.next()):U>2500?m(R,D,I,ee):g(R,D,I,ee,re,U+1);if(re>=0&&ce>0&&ce<I.length&&S(I,ee,R,ce,R,fe,re,N,$),I.reverse(),ee.reverse(),re>-1&&ce>0){let ge=v(Z,$);z=pb(Z,I,ee,0,I.length,0,j-R,ge,ge)}else z=x(Z,I,ee,j-R,N-j,$)}L.push(z),V.push(F)}function m(M,E,L,V){let H=[],U=0,X=-1;for(;c.pos>E;){let{id:R,start:j,end:P,size:N}=c;if(N>4)c.next();else{if(X>-1&&j<X)break;X<0&&(X=P-r),H.push(R,j,P),U++,c.next()}}if(U){let R=new Uint16Array(U*4),j=H[H.length-2];for(let P=H.length-3,N=0;P>=0;P-=3)R[N++]=H[P],R[N++]=H[P+1]-j,R[N++]=H[P+2]-j,R[N++]=N;L.push(new oa(R,H[2]-j,n)),V.push(j-M)}}function v(M,E){return(L,V,H)=>{let U=0,X=L.length-1,R,j;if(X>=0&&(R=L[X])instanceof gt){if(!X&&R.type==M&&R.length==H)return R;(j=R.prop(Ze.lookAhead))&&(U=V[X]+R.length+j)}return x(M,L,V,H,U,E)}}function S(M,E,L,V,H,U,X,R,j){let P=[],N=[];for(;M.length>V;)P.push(M.pop()),N.push(E.pop()+L-H);M.push(x(n.types[X],P,N,U-H,R-U,j)),E.push(H-L)}function x(M,E,L,V,H,U,X){if(U){let R=[Ze.contextHash,U];X=X?[R].concat(X):[R]}if(H>25){let R=[Ze.lookAhead,H];X=X?[R].concat(X):[R]}return new gt(M,E,L,V,X)}function w(M,E){let L=c.fork(),V=0,H=0,U=0,X=L.end-r,R={size:0,start:0,skip:0};e:for(let j=L.pos-M;L.pos>j;){let P=L.size;if(L.id==E&&P>=0){R.size=V,R.start=H,R.skip=U,U+=4,V+=4,L.next();continue}let N=L.pos-P;if(P<0||N<j||L.start<X)break;let $=L.id>=a?4:0,Z=L.start;for(L.next();L.pos>N;){if(L.size<0)if(L.size==-3||L.size==-4)$+=4;else break e;else L.id>=a&&($+=4);L.next()}H=Z,V+=P,U+=$}return(E<0||V==M)&&(R.size=V,R.start=H,R.skip=U),R.size>4?R:void 0}function _(M,E,L){let{id:V,start:H,end:U,size:X}=c;if(c.next(),X>=0&&V<a){let R=L;if(X>4){let j=c.pos-(X-4);for(;c.pos>j;)L=_(M,E,L)}E[--L]=R,E[--L]=U-M,E[--L]=H-M,E[--L]=V}else X==-3?u=V:X==-4&&(f=V);return L}let T=[],C=[];for(;c.pos>0;)g(t.start||0,t.bufferStart||0,T,C,-1,0);let Q=(e=t.length)!==null&&e!==void 0?e:T.length?C[0]+T[0].length:0;return new gt(h[t.topID],T.reverse(),C.reverse(),Q)}const gT=new WeakMap;function Gp(t,e){if(!t.isAnonymous||e instanceof oa||e.type!=t)return 1;let i=gT.get(e);if(i==null){i=1;for(let n of e.children){if(n.type!=t||!(n instanceof gt)){i=1;break}i+=Gp(t,n)}gT.set(e,i)}return i}function pb(t,e,i,n,r,s,a,c,h){let u=0;for(let S=n;S<r;S++)u+=Gp(t,e[S]);let f=Math.ceil(u*1.5/8),g=[],m=[];function v(S,x,w,_,T){for(let C=w;C<_;){let Q=C,M=x[C],E=Gp(t,S[C]);for(C++;C<_;C++){let L=Gp(t,S[C]);if(E+L>=f)break;E+=L}if(C==Q+1){if(E>f){let L=S[Q];v(L.children,L.positions,0,L.children.length,x[Q]+T);continue}g.push(S[Q])}else{let L=x[C-1]+S[C-1].length-M;g.push(pb(t,S,x,Q,C,M,L,null,h))}m.push(M+T-s)}}return v(e,i,n,r,0),(c||h)(g,m,a)}class gb{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 Gr?this.setBuffer(e.context.buffer,e.index,i):e instanceof Gi&&this.map.set(e.tree,i)}get(e){return e instanceof Gr?this.getBuffer(e.context.buffer,e.index):e instanceof Gi?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 Ws{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 Ws(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,u=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||u){let v=Math.max(m.from,h)-u,S=Math.min(m.to,g)-u;m=v>=S?null:new Ws(v,S,m.tree,m.offset+u,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,u=f.toA-f.toB}return r}}class mb{startParse(e,i,n){return typeof e=="string"&&(e=new oq(e)),n=n?n.length?n.map(r=>new lr(r.from,r.to)):[new lr(0,0)]:[new lr(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 oq{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 p5(t){return(e,i,n,r)=>new lq(e,t,i,n,r)}class mT{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 OT(t){if(!t.length||t.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(t))}class aq{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 OS=new Ze({perNode:!0});class lq{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 gt(n.type,n.children,n.positions,n.length,n.propValues.concat([[OS,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 kc(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 uq(this.fragments),i=null,n=null,r=new Mg(new Gi(this.baseTree,this.ranges[0].from,0,null),pt.IncludeAnonymous|pt.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 u=i.mounts.find(f=>f.frag.from<=r.from&&f.frag.to>=r.to&&f.mount.overlay);if(u)for(let f of u.mount.overlay){let g=f.from+u.pos,m=f.to+u.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=cq(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||(hq(r),i&&i.depth++,n&&n.depth++);let u=e.findMounts(r.from,s.parser);if(typeof s.overlay=="function")i=new aq(s.parser,s.overlay,u,this.inner.length,r.from,!!s.bracketed,r.tree,i);else{let f=ST(this.ranges,s.overlay||(r.from<r.to?[new lr(r.from,r.to)]:[]));f.length&&OT(f),(f.length||!s.overlay)&&this.inner.push(new mT(s.parser,f.length?s.parser.startParse(this.input,bT(u,f),f):s.parser.startParse(""),s.overlay?s.overlay.map(g=>new lr(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 lr(r.from,r.to)),h.from<h.to)){let u=i.ranges.length-1;u>=0&&i.ranges[u].to==h.from?i.ranges[u]={from:i.ranges[u].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 u=ST(this.ranges,i.ranges);u.length&&(OT(u),this.inner.splice(i.index,0,new mT(i.parser,i.parser.startParse(this.input,bT(i.mounts,u),u),i.ranges.map(f=>new lr(f.from-i.start,f.to-i.start)),i.bracketed,i.target,u[0].from))),i=i.prev}n&&!--n.depth&&(n=n.prev)}}}}function cq(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 vT(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 hq(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 u(f,g,m,v,S,x){let w=i[x],_=[],T=[];vT(a,f,w,_,T,v);let C=c[w+1],Q=c[w+2];h.push(_.length);let M=x?u(w+4,c[w+3],a.set.types[c[w]],C,Q-C,x-1):e.toTree();return _.push(M),T.push(C-v),vT(a,c[w+3],g,_,T,v),new gt(m,_,T,S)}r.children[s]=u(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 Gi(g,m+t.from,f,t._tree))}}class yT{constructor(e,i){this.offset=i,this.done=!1,this.cursor=e.cursor(pt.IncludeAnonymous|pt.IgnoreMounts)}moveTo(e){let{cursor:i}=this,n=e-this.offset;for(;!this.done&&i.from<n;)i.to>=e&&i.enter(n,1,pt.IgnoreOverlays|pt.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 gt)i=i.children[0];else break}return!1}}let uq=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(OS))!==null&&i!==void 0?i:n.to,this.inner=new yT(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(OS))!==null&&e!==void 0?e:i.to,this.inner=new yT(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 ST(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 lr(h.from,a),h.to>c&&i.splice(s+1,0,new lr(c,h.to))):h.to>c?i[s--]=new lr(c,h.to):i.splice(s--,1))}}return n}function dq(t,e,i,n){let r=0,s=0,a=!1,c=!1,h=-1e9,u=[];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&&u.push(new lr(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 u}function bT(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),u=Math.min(s.to,c);if(r.overlay){let f=r.overlay.map(m=>new lr(m.from+n,m.to+n)),g=dq(e,f,h,u);for(let m=0,v=h;;m++){let S=m==g.length,x=S?u:g[m].from;if(x>v&&i.push(new Ws(v,x,r.tree,-a,s.from>=v||s.openStart,s.to<=x||s.openEnd)),S)break;v=g[m].to}}else i.push(new Ws(h,u,r.tree,-a,s.from>=a||s.openStart,s.to<=c||s.openEnd))}return i}let fq=0;class Zn{constructor(e,i,n,r){this.name=e,this.set=i,this.base=n,this.modified=r,this.id=fq++}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 Zn&&(i=e),i!=null&&i.base)throw new Error("Can not derive from a modified tag");let r=new Zn(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 zg(e);return n=>n.modified.indexOf(i)>-1?n:zg.get(n.base||n,n.modified.concat(i).sort((r,s)=>r.id-s.id))}}let pq=0;class zg{constructor(e){this.name=e,this.instances=[],this.id=pq++}static get(e,i){if(!i.length)return e;let n=i[0].instances.find(c=>c.base==e&&gq(i,c.modified));if(n)return n;let r=[],s=new Zn(e.name,r,e,i);for(let c of i)c.instances.push(s);let a=mq(i);for(let c of e.set)if(!c.modified.length)for(let h of a)r.push(zg.get(c,h));return s}}function gq(t,e){return t.length==e.length&&t.every((i,n)=>i==e[n])}function mq(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 ua(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,u=s[h];if(!u)throw new RangeError("Invalid path: "+r);let f=new Uu(n,a,h>0?s.slice(0,h):null);e[u]=f.sort(e[u])}}return g5.add(e)}const g5=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 Uu(r.tags,r.mode,r.context);i?i.next=s:n=s,i=s}return n}});class Uu{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}}Uu.empty=new Uu([],2,null);function m5(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 u=i[h.id];if(u){a=a?a+" "+u:u;break}}return a},scope:n}}function Oq(t,e){let i=null;for(let n of t){let r=n.style(e);r&&(i=i?i+" "+r:r)}return i}function vq(t,e,i,n=0,r=t.length){let s=new yq(n,Array.isArray(e)?e:[e],i);s.highlightRange(t.cursor(),n,r,"",s.highlighters),s.flush(r)}class yq{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 u=r,f=Sq(e)||Uu.empty,g=Oq(s,f.tags);if(g&&(u&&(u+=" "),u+=g,f.mode==1&&(r+=(r?" ":"")+g)),this.startSpan(Math.max(i,c),u),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)),x=e.firstChild();for(let w=0,_=c;;w++){let T=w<m.overlay.length?m.overlay[w]:null,C=T?T.from+c:h,Q=Math.max(i,_),M=Math.min(n,C);if(Q<M&&x)for(;e.from<M&&(this.highlightRange(e,Q,M,r,s),this.startSpan(Math.min(M,e.to),u),!(e.to>=C||!e.nextSibling())););if(!T||C>n)break;_=T.to+c,_>i&&(this.highlightRange(v.cursor(),Math.max(i,T.from+c),Math.min(n,_),"",S),this.startSpan(Math.min(n,_),u))}x&&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),u)}while(e.nextSibling());e.parent()}}}function Sq(t){let e=t.type.prop(g5);for(;e&&e.context&&!t.matchContext(e.context);)e=e.next;return e||null}const ye=Zn.define,_p=ye(),Vo=ye(),xT=ye(Vo),_T=ye(Vo),Yo=ye(),wp=ye(Yo),Ev=ye(Yo),qr=ye(),Da=ye(qr),Xr=ye(),Nr=ye(),vS=ye(),eu=ye(vS),kp=ye(),W={comment:_p,lineComment:ye(_p),blockComment:ye(_p),docComment:ye(_p),name:Vo,variableName:ye(Vo),typeName:xT,tagName:ye(xT),propertyName:_T,attributeName:ye(_T),className:ye(Vo),labelName:ye(Vo),namespace:ye(Vo),macroName:ye(Vo),literal:Yo,string:wp,docString:ye(wp),character:ye(wp),attributeValue:ye(wp),number:Ev,integer:ye(Ev),float:ye(Ev),bool:ye(Yo),regexp:ye(Yo),escape:ye(Yo),color:ye(Yo),url:ye(Yo),keyword:Xr,self:ye(Xr),null:ye(Xr),atom:ye(Xr),unit:ye(Xr),modifier:ye(Xr),operatorKeyword:ye(Xr),controlKeyword:ye(Xr),definitionKeyword:ye(Xr),moduleKeyword:ye(Xr),operator:Nr,derefOperator:ye(Nr),arithmeticOperator:ye(Nr),logicOperator:ye(Nr),bitwiseOperator:ye(Nr),compareOperator:ye(Nr),updateOperator:ye(Nr),definitionOperator:ye(Nr),typeOperator:ye(Nr),controlOperator:ye(Nr),punctuation:vS,separator:ye(vS),bracket:eu,angleBracket:ye(eu),squareBracket:ye(eu),paren:ye(eu),brace:ye(eu),content:qr,heading:Da,heading1:ye(Da),heading2:ye(Da),heading3:ye(Da),heading4:ye(Da),heading5:ye(Da),heading6:ye(Da),contentSeparator:ye(qr),list:ye(qr),quote:ye(qr),emphasis:ye(qr),strong:ye(qr),link:ye(qr),monospace:ye(qr),strikethrough:ye(qr),inserted:ye(),deleted:ye(),changed:ye(),invalid:ye(),meta:kp,documentMeta:ye(kp),annotation:ye(kp),processingInstruction:ye(kp),definition:Zn.defineModifier("definition"),constant:Zn.defineModifier("constant"),function:Zn.defineModifier("function"),standard:Zn.defineModifier("standard"),local:Zn.defineModifier("local"),special:Zn.defineModifier("special")};for(let t in W){let e=W[t];e instanceof Zn&&(e.name=t)}m5([{tag:W.link,class:"tok-link"},{tag:W.heading,class:"tok-heading"},{tag:W.emphasis,class:"tok-emphasis"},{tag:W.strong,class:"tok-strong"},{tag:W.keyword,class:"tok-keyword"},{tag:W.atom,class:"tok-atom"},{tag:W.bool,class:"tok-bool"},{tag:W.url,class:"tok-url"},{tag:W.labelName,class:"tok-labelName"},{tag:W.inserted,class:"tok-inserted"},{tag:W.deleted,class:"tok-deleted"},{tag:W.literal,class:"tok-literal"},{tag:W.string,class:"tok-string"},{tag:W.number,class:"tok-number"},{tag:[W.regexp,W.escape,W.special(W.string)],class:"tok-string2"},{tag:W.variableName,class:"tok-variableName"},{tag:W.local(W.variableName),class:"tok-variableName tok-local"},{tag:W.definition(W.variableName),class:"tok-variableName tok-definition"},{tag:W.special(W.variableName),class:"tok-variableName2"},{tag:W.definition(W.propertyName),class:"tok-propertyName tok-definition"},{tag:W.typeName,class:"tok-typeName"},{tag:W.namespace,class:"tok-namespace"},{tag:W.className,class:"tok-className"},{tag:W.macroName,class:"tok-macroName"},{tag:W.propertyName,class:"tok-propertyName"},{tag:W.operator,class:"tok-operator"},{tag:W.comment,class:"tok-comment"},{tag:W.meta,class:"tok-meta"},{tag:W.invalid,class:"tok-invalid"},{tag:W.punctuation,class:"tok-punctuation"}]);var Rv;const Ga=new Ze;function Ob(t){return ke.define({combine:t?e=>e.concat(t):void 0})}const vb=new Ze;class cr{constructor(e,i,n=[],r=""){this.data=e,this.name=r,ct.prototype.hasOwnProperty("tree")||Object.defineProperty(ct.prototype,"tree",{get(){return $t(this)}}),this.parser=i,this.extension=[la.of(this),ct.languageData.of((s,a,c)=>{let h=wT(s,a,c),u=h.type.prop(Ga);if(!u)return[];let f=s.facet(u),g=h.type.prop(vb);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 wT(e,i,n).type.prop(Ga)==this.data}findRegions(e){let i=e.facet(la);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(Ga)==this.data){n.push({from:a,to:a+s.length});return}let c=s.prop(Ze.mounted);if(c){if(c.tree.prop(Ga)==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 u=s.children[h];u instanceof gt&&r(u,s.positions[h]+a)}};return r($t(e),0),n}get allowsNesting(){return!0}}cr.setState=et.define();function wT(t,e,i){let n=t.facet(la),r=$t(t).topNode;if(!n||n.allowsNesting)for(let s=r;s;s=s.enter(e,i,pt.ExcludeBuffers|pt.EnterBracketed))s.type.isTop&&(r=s);return r}class aa extends cr{constructor(e,i,n){super(e,i,[],n),this.parser=i}static define(e){let i=Ob(e.languageData);return new aa(i,e.parser.configure({props:[Ga.add(n=>n.isTop?i:void 0)]}),e.name)}configure(e,i){return new aa(this.data,this.parser.configure(e),i||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function $t(t){let e=t.field(cr.state,!1);return e?e.tree:gt.empty}class bq{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 tu=null;class Gu{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 Gu(e,i,[],gt.empty,0,n,[],null)}startParse(){return this.parser.startParse(new bq(this.state.doc),this.fragments)}work(e,i){return i!=null&&i>=this.state.doc.length&&(i=void 0),this.tree!=gt.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(Ws.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(Ws.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let i=tu;tu=this;try{return e()}finally{tu=i}}withoutTempSkipped(e){for(let i;i=this.tempSkipped.pop();)e=kT(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((u,f,g,m)=>h.push({fromA:u,toA:f,fromB:g,toB:m})),n=Ws.applyChanges(n,h),r=gt.empty,s=0,a={from:e.mapPos(a.from,-1),to:e.mapPos(a.to,1)},this.skipped.length){c=[];for(let u of this.skipped){let f=e.mapPos(u.from,1),g=e.mapPos(u.to,-1);f<g&&c.push({from:f,to:g})}}}return new Gu(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=kT(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 mb{createParse(i,n,r){let s=r[0].from,a=r[r.length-1].to;return{parsedPos:s,advance(){let h=tu;if(h){for(let u of r)h.tempSkipped.push(u);e&&(h.scheduleOn=h.scheduleOn?Promise.all([h.scheduleOn,e]):e)}return this.parsedPos=a,new gt(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 tu}}function kT(t,e,i){return Ws.applyChanges(t,[{fromA:e,toA:i,fromB:e,toB:i}])}class Wc{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 Wc(i)}static init(e){let i=Math.min(3e3,e.doc.length),n=Gu.create(e.facet(la).parser,e,{from:0,to:i});return n.work(20,i)||n.takeTree(),new Wc(n)}}cr.state=Yn.define({create:Wc.init,update(t,e){for(let i of e.effects)if(i.is(cr.setState))return i.value;return e.startState.facet(la)!=e.state.facet(la)?Wc.init(e.state):t.apply(e)}});let O5=t=>{let e=setTimeout(()=>t(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(O5=t=>{let e=-1,i=setTimeout(()=>{e=requestIdleCallback(t,{timeout:400})},100);return()=>e<0?clearTimeout(i):cancelIdleCallback(e)});const Av=typeof navigator<"u"&&(!((Rv=navigator.scheduling)===null||Rv===void 0)&&Rv.isInputPending)?()=>navigator.scheduling.isInputPending():null,xq=Xi.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(cr.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(cr.state);(i.tree!=i.context.tree||!i.context.isDone(e.doc.length))&&(this.working=O5(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(cr.state);if(s.tree==s.context.tree&&s.context.isDone(r+1e5))return;let a=Date.now()+Math.min(this.chunkBudget,100,e&&!Av?Math.max(25,e.timeRemaining()-5):1e9),c=s.context.treeLen<r&&n.doc.length>r+1e3,h=s.context.work(()=>Av&&Av()||Date.now()>a,r+(c?0:1e5));this.chunkBudget-=Date.now()-i,(h||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:cr.setState.of(new Wc(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=>In(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()}}}),la=ke.define({combine(t){return t.length?t[0]:null},enables:t=>[cr.state,xq,_e.contentAttributes.compute([t],e=>{let i=e.facet(t);return i&&i.name?{"data-language":i.name}:{}})]});class ul{constructor(e,i=[]){this.language=e,this.support=i,this.extension=[e,i]}}class jg{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 jg(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=ke.define(),bd=ke.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 Dg(t){let e=t.facet(bd);return e.charCodeAt(0)==9?t.tabSize*e.length:e.length}function Fu(t,e){let i="",n=t.tabSize,r=t.facet(bd)[0];if(r==" "){for(;e>=n;)i+=" ",e-=n;r=" "}for(let s=0;s<e;s++)i+=r;return i}function yb(t,e){t instanceof ct&&(t=new Cm(t));for(let n of t.state.facet(_q)){let r=n(t,e);if(r!==void 0)return r}let i=$t(t.state);return i.length>=e?wq(t,i,e):null}class Cm{constructor(e,i={}){this.state=e,this.options=i,this.unit=Dg(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 Is(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 Ol=new Ze;function wq(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 v5(n,t,i)}function v5(t,e,i){for(let n=t;n;n=n.next){let r=Cq(n.node);if(r)return r(Sb.create(e,i,n))}return 0}function kq(t){return t.pos==t.options.simulateBreak&&t.options.simulateDoubleBreak}function Cq(t){let e=t.type.prop(Ol);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=>y5(a,!0,1,void 0,s&&!kq(a)?r.from:void 0)}return t.parent==null?Tq:null}function Tq(){return 0}class Sb extends Cm{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 Sb(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(Qq(n,e))break;i=this.state.doc.lineAt(n.from)}return this.lineIndent(i.from)}continue(){return v5(this.context.next,this.base,this.pos)}}function Qq(t,e){for(let i=e;i;i=i.parent)if(t==i)return!0;return!1}function $q(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 u=/^ */.exec(s.text.slice(i.to-s.from))[0].length;return{from:i.from,to:i.to+u}}c=h.to}}function Fp({closing:t,align:e=!0,units:i=1}){return n=>y5(n,e,i,t)}function y5(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?$q(t):null;return h?c?t.column(h.from):t.column(h.to):t.baseIndent+(c?0:t.unit*i)}const Pq=t=>t.baseIndent;function Cc({except:t,units:e=1}={}){return i=>{let n=t&&t.test(i.textAfter);return i.baseIndent+(n?0:e*i.unit)}}const Eq=200;function Rq(){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+Eq)return t;let s=i.sliceString(r.from,n);if(!e.some(u=>u.test(s)))return t;let{state:a}=t,c=-1,h=[];for(let{head:u}of a.selection.ranges){let f=a.doc.lineAt(u);if(f.from==c)continue;c=f.from;let g=yb(a,f.from);if(g==null)continue;let m=/^\s*/.exec(f.text)[0],v=Fu(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 S5=ke.define(),da=new Ze;function Tm(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 Aq(t,e,i){let n=$t(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(da);if(h&&(c.to<n.length-50||n.length==t.doc.length||!Mq(c))){let u=h(c,t);u&&u.from<=i&&u.from>=e&&u.to>i&&(s=u)}}return s}function Mq(t){let e=t.lastChild;return e&&e.to==t.to&&e.type.isError}function Bg(t,e,i){for(let n of t.facet(S5)){let r=n(t,e,i);if(r)return r}return Aq(t,e,i)}function b5(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 Qm=et.define({map:b5}),xd=et.define({map:b5});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 dl=Yn.define({create(){return qe.none},update(t,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((i,n)=>t=CT(t,i,n)),t=t.map(e.changes);for(let i of e.effects)if(i.is(Qm)&&!zq(t,i.value.from,i.value.to)){let{preparePlaceholder:n}=e.state.facet(k5),r=n?qe.replace({widget:new Zq(n(e.state,i.value))}):TT;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=CT(t,e.selection.main.head)),t},provide:t=>_e.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(TT.range(n,r))}return qe.set(e,!0)}});function CT(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 Lg(t,e,i){var n;let r=null;return(n=t.field(dl,!1))===null||n===void 0||n.between(e,i,(s,a)=>{(!r||r.from>s)&&(r={from:s,to:a})}),r}function zq(t,e,i){let n=!1;return t.between(e,e,(r,s)=>{r==e&&s==i&&(n=!0)}),n}function _5(t,e){return t.field(dl,!1)?e:e.concat(et.appendConfig.of(C5()))}const jq=t=>{for(let e of x5(t)){let i=Bg(t.state,e.from,e.to);if(i)return t.dispatch({effects:_5(t.state,[Qm.of(i),w5(t,i)])}),!0}return!1},Dq=t=>{if(!t.state.field(dl,!1))return!1;let e=[];for(let i of x5(t)){let n=Lg(t.state,i.from,i.to);n&&e.push(xd.of(n),w5(t,n,!1))}return e.length&&t.dispatch({effects:e}),e.length>0};function w5(t,e,i=!0){let n=t.state.doc.lineAt(e.from).number,r=t.state.doc.lineAt(e.to).number;return _e.announce.of(`${t.state.phrase(i?"Folded lines":"Unfolded lines")} ${n} ${t.state.phrase("to")} ${r}.`)}const Bq=t=>{let{state:e}=t,i=[];for(let n=0;n<e.doc.length;){let r=t.lineBlockAt(n),s=Bg(e,r.from,r.to);s&&i.push(Qm.of(s)),n=(s?t.lineBlockAt(s.to):r).to+1}return i.length&&t.dispatch({effects:_5(t.state,i)}),!!i.length},Lq=t=>{let e=t.state.field(dl,!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},Xq=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:jq},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:Dq},{key:"Ctrl-Alt-[",run:Bq},{key:"Ctrl-Alt-]",run:Lq}],Nq={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},k5=ke.define({combine(t){return ha(t,Nq)}});function C5(t){return[dl,Iq]}function T5(t,e){let{state:i}=t,n=i.facet(k5),r=a=>{let c=t.lineBlockAt(t.posAtDOM(a.target)),h=Lg(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 TT=qe.replace({widget:new class extends ml{toDOM(t){return T5(t,null)}}});class Zq extends ml{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return T5(e,this.value)}}const Wq={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class Mv extends Ys{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 qq(t={}){let e={...Wq,...t},i=new Mv(e,!0),n=new Mv(e,!1),r=Xi.fromClass(class{constructor(a){this.from=a.viewport.from,this.markers=this.buildMarkers(a)}update(a){(a.docChanged||a.viewportChanged||a.startState.facet(la)!=a.state.facet(la)||a.startState.field(dl,!1)!=a.state.field(dl,!1)||$t(a.startState)!=$t(a.state)||e.foldingChanged(a))&&(this.markers=this.buildMarkers(a.view))}buildMarkers(a){let c=new al;for(let h of a.viewportLineBlocks){let u=Lg(a.state,h.from,h.to)?n:Bg(a.state,h.from,h.to)?i:null;u&&c.add(h.from,h.from,u)}return c.finish()}}),{domEventHandlers:s}=e;return[r,W7({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 Mv(e,!1)},domEventHandlers:{...s,click:(a,c,h)=>{if(s.click&&s.click(a,c,h))return!0;let u=Lg(a.state,c.from,c.to);if(u)return a.dispatch({effects:xd.of(u)}),!0;let f=Bg(a.state,c.from,c.to);return f?(a.dispatch({effects:Qm.of(f)}),!0):!1}}}),C5()]}const Iq=_e.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 $m{constructor(e,i){this.specs=e;let n;function r(c){let h=na.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 cr?c=>c.prop(Ga)==a.data:a?c=>c==a:void 0,this.style=m5(e.map(c=>({tag:c.tag,class:c.class||r(Object.assign({},c,{tag:null}))})),{all:s}).style,this.module=n?new na(n):null,this.themeType=i.themeType}static define(e,i){return new $m(e,i||{})}}const yS=ke.define(),Vq=ke.define({combine(t){return t.length?[t[0]]:null}});function zv(t){let e=t.facet(yS);return e.length?e:t.facet(Vq)}function Yq(t,e){let i=[Uq],n;return t instanceof $m&&(t.module&&i.push(_e.styleModule.of(t.module)),n=t.themeType),n?i.push(yS.computeN([_e.darkTheme],r=>r.facet(_e.darkTheme)==(n=="dark")?[t]:[])):i.push(yS.of(t)),i}class Hq{constructor(e){this.markCache=Object.create(null),this.tree=$t(e.state),this.decorations=this.buildDeco(e,zv(e.state)),this.decoratedTo=e.viewport.to}update(e){let i=$t(e.state),n=zv(e.state),r=n!=zv(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 al;for(let{from:r,to:s}of e.visibleRanges)vq(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 Uq=Us.high(Xi.fromClass(Hq,{decorations:t=>t.decorations})),Gq=_e.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Q5=1e4,$5="()[]{}",P5=ke.define({combine(t){return ha(t,{afterCursor:!0,brackets:$5,maxScanDistance:Q5,renderMatch:Jq})}}),Fq=qe.mark({class:"cm-matchingBracket"}),Kq=qe.mark({class:"cm-nonmatchingBracket"});function Jq(t){let e=[],i=t.matched?Fq:Kq;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 QT(t){let e=[],i=t.facet(P5);for(let n of t.selection.ranges){if(!n.empty)continue;let r=Fr(t,n.head,-1,i)||n.head>0&&Fr(t,n.head-1,1,i)||i.afterCursor&&(Fr(t,n.head,1,i)||n.head<t.doc.length&&Fr(t,n.head+1,-1,i));r&&(e=e.concat(i.renderMatch(r,t)))}return qe.set(e,!0)}const eI=Xi.fromClass(class{constructor(t){this.paused=!1,this.decorations=QT(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=QT(t.state),this.paused=!1))}},{decorations:t=>t.decorations}),tI=[eI,Gq];function iI(t={}){return[P5.of(t),tI]}const E5=new Ze;function SS(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 bS(t){let e=t.type.prop(E5);return e?e(t.node):t}function Fr(t,e,i,n={}){let r=n.maxScanDistance||Q5,s=n.brackets||$5,a=$t(t),c=a.resolveInner(e,i);for(let h=c;h;h=h.parent){let u=SS(h.type,i,s);if(u&&h.from<h.to){let f=bS(h);if(f&&(i>0?e>=f.from&&e<f.to:e>f.from&&e<=f.to))return nI(t,e,i,h,f,u,s)}}return rI(t,e,i,a,c.type,r,s)}function nI(t,e,i,n,r,s,a){let c=n.parent,h={from:r.from,to:r.to},u=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(u==0&&s.indexOf(f.type.name)>-1&&f.from<f.to){let g=bS(f);return{start:h,end:g?{from:g.from,to:g.to}:void 0,matched:!0}}else if(SS(f.type,i,a))u++;else if(SS(f.type,-i,a)){if(u==0){let g=bS(f);return{start:h,end:g&&g.from<g.to?{from:g.from,to:g.to}:void 0,matched:!1}}u--}}while(i<0?f.prevSibling():f.nextSibling());return{start:h,matched:!1}}function rI(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 u={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 x=i>0?0:v.length-1,w=i>0?v.length:-1;x!=w;x+=i){let _=a.indexOf(v[x]);if(!(_<0||n.resolveInner(S+x,1).type!=r))if(_%2==0==i>0)g++;else{if(g==1)return{start:u,end:{from:S+x,to:S+x+1},matched:_>>1==h>>1};g--}}i>0&&(m+=v.length)}return f.done?{start:u,matched:!1}:null}const sI=Object.create(null),$T=[vi.none],PT=[],ET=Object.create(null),oI=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"]])oI[t]=aI(sI,e);function jv(t,e){PT.indexOf(t)>-1||(PT.push(t),console.warn(e))}function aI(t,e){let i=[];for(let c of e.split(" ")){let h=[];for(let u of c.split(".")){let f=t[u]||W[u];f?typeof f=="function"?h.length?h=h.map(f):jv(u,`Modifier ${u} used at start of tag`):h.length?jv(u,`Tag ${u} used as modifier`):h=Array.isArray(f)?f:[f]:jv(u,`Unknown highlighting tag ${u}`)}for(let u of h)i.push(u)}if(!i.length)return 0;let n=e.replace(/ /g,"_"),r=n+" "+i.map(c=>c.id),s=ET[r];if(s)return s.id;let a=ET[r]=vi.define({id:$T.length,name:n,props:[ua({[n]:i})]});return $T.push(a),a.id}Qt.RTL,Qt.LTR;const lI=t=>{let{state:e}=t,i=e.doc.lineAt(e.selection.main.from),n=xb(t.state,i.from);return n.line?cI(t):n.block?uI(t):!1};function bb(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 cI=bb(pI,0),hI=bb(R5,0),uI=bb((t,e)=>R5(t,e,fI(e)),0);function xb(t,e){let i=t.languageDataAt("commentTokens",e,1);return i.length?i[0]:{}}const iu=50;function dI(t,{open:e,close:i},n,r){let s=t.sliceDoc(n-iu,n),a=t.sliceDoc(r,r+iu),c=/\s*$/.exec(s)[0].length,h=/^\s*/.exec(a)[0].length,u=s.length-c;if(s.slice(u-e.length,u)==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*iu?f=g=t.sliceDoc(n,r):(f=t.sliceDoc(n,n+iu),g=t.sliceDoc(r-iu,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 fI(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 R5(t,e,i=e.selection.ranges){let n=i.map(s=>xb(e,s.from).block);if(!n.every(s=>s))return null;let r=i.map((s,a)=>dI(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:u,close:f}=c;s.push({from:u.pos-h.open.length,to:u.pos+u.margin},{from:f.pos-f.margin,to:f.pos+h.close.length})}return{changes:s}}return null}function pI(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,u;for(let f=s;f<=a;){let g=e.doc.lineAt(f);if(u==null&&(u=xb(e,g.from).line,!u))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+u.length)==u?m:-1;m<g.text.length&&m<h&&(h=m),n.push({line:g,comment:S,token:u,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:u,empty:f,single:g}of n)(g||!f)&&s.push({from:c.from+u,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 u=a.from+c,f=u+h.length;a.text[f-a.from]==" "&&f++,s.push({from:u,to:f})}return{changes:s}}return null}const xS=Gs.define(),gI=Gs.define(),mI=ke.define(),A5=ke.define({combine(t){return ha(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)})}}),M5=Yn.define({create(){return Kr.empty},update(t,e){let i=e.state.facet(A5),n=e.annotation(xS);if(n){let h=wn.fromTransaction(e,n.selection),u=n.side,f=u==0?t.undone:t.done;return h?f=Xg(f,f.length,i.minDepth,h):f=D5(f,e.startState.selection),new Kr(u==0?n.rest:f,u==0?f:n.rest)}let r=e.annotation(gI);if((r=="full"||r=="before")&&(t=t.isolate()),e.annotation(ui.addToHistory)===!1)return e.changes.empty?t:t.addMapping(e.changes.desc);let s=wn.fromTransaction(e),a=e.annotation(ui.time),c=e.annotation(ui.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 Kr(t.done.map(wn.fromJSON),t.undone.map(wn.fromJSON))}});function OI(t={}){return[M5,A5.of(t),_e.domEventHandlers({beforeinput(e,i){let n=e.inputType=="historyUndo"?z5:e.inputType=="historyRedo"?_S:null;return n?(e.preventDefault(),n(i)):!1}})]}function Pm(t,e){return function({state:i,dispatch:n}){if(!e&&i.readOnly)return!1;let r=i.field(M5,!1);if(!r)return!1;let s=r.pop(t,i,e);return s?(n(s),!0):!1}}const z5=Pm(0,!1),_S=Pm(1,!1),vI=Pm(0,!0),yI=Pm(1,!0);class wn{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 wn(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 wn(e.changes&&Oi.fromJSON(e.changes),[],e.mapped&&ts.fromJSON(e.mapped),e.startSelection&&he.fromJSON(e.startSelection),e.selectionsAfter.map(he.fromJSON))}static fromTransaction(e,i){let n=hr;for(let r of e.startState.facet(mI)){let s=r(e);s.length&&(n=n.concat(s))}return!n.length&&e.changes.empty?null:new wn(e.changes.invert(e.startState.doc),n,void 0,i||e.startState.selection,hr)}static selection(e){return new wn(void 0,hr,void 0,void 0,e)}}function Xg(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 SI(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 u=i[h++],f=i[h++];c>=u&&a<=f&&(n=!0)}}),n}function bI(t,e){return t.ranges.length==e.ranges.length&&t.ranges.filter((i,n)=>i.empty!=e.ranges[n].empty).length===0}function j5(t,e){return t.length?e.length?t.concat(e):t:e}const hr=[],xI=200;function D5(t,e){if(t.length){let i=t[t.length-1],n=i.selectionsAfter.slice(Math.max(0,i.selectionsAfter.length-xI));return n.length&&n[n.length-1].eq(e)?t:(n.push(e),Xg(t,t.length-1,1e9,i.setSelAfter(n)))}else return[wn.selection([e])]}function _I(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 Dv(t,e){if(!t.length)return t;let i=t.length,n=hr;for(;i;){let r=wI(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?[wn.selection(n)]:hr}function wI(t,e,i){let n=j5(t.selectionsAfter.length?t.selectionsAfter.map(c=>c.map(e)):hr,i);if(!t.changes)return wn.selection(n);let r=t.changes.map(e),s=e.mapDesc(t.changes,!0),a=t.mapped?t.mapped.composeDesc(s):s;return new wn(r,et.mapEffects(t.effects,e),a,t.startSelection.map(s),n)}const kI=/^(input\.type|delete)($|\.)/;class Kr{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 Kr(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||kI.test(n))&&(!c.selectionsAfter.length&&i-this.prevTime<r.newGroupDelay&&r.joinToEvent(s,SI(c.changes,e.changes))||n=="input.type.compose")?a=Xg(a,a.length-1,r.minDepth,new wn(e.changes.compose(c.changes),j5(et.mapEffects(e.effects,c.changes),c.effects),c.mapped,c.startSelection,hr)):a=Xg(a,a.length,r.minDepth,e),new Kr(a,hr,i,n)}addSelection(e,i,n,r){let s=this.done.length?this.done[this.done.length-1].selectionsAfter:hr;return s.length>0&&i-this.prevTime<r&&n==this.prevUserEvent&&n&&/^select($|\.)/.test(n)&&bI(s[s.length-1],e)?this:new Kr(D5(this.done,e),this.undone,i,n)}addMapping(e){return new Kr(Dv(this.done,e),Dv(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:xS.of({side:e,rest:_I(r),selection:a}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(s.changes){let c=r.length==1?hr:r.slice(0,r.length-1);return s.mapped&&(c=Dv(c,s.mapped)),i.update({changes:s.changes,selection:s.startSelection,effects:s.effects,annotations:xS.of({side:e,rest:c,selection:a}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}Kr.empty=new Kr(hr,hr);const CI=[{key:"Mod-z",run:z5,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:_S,preventDefault:!0},{linux:"Ctrl-Shift-z",run:_S,preventDefault:!0},{key:"Mod-u",run:vI,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:yI,preventDefault:!0}];function Uc(t,e){return he.create(t.ranges.map(e),t.mainIndex)}function Pr(t,e){return t.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function Er({state:t,dispatch:e},i){let n=Uc(t.selection,i);return n.eq(t.selection,!0)?!1:(e(Pr(t,n)),!0)}function Em(t,e){return he.cursor(e?t.to:t.from)}function B5(t,e){return Er(t,i=>i.empty?t.moveByChar(i,e):Em(i,e))}function Fi(t){return t.textDirectionAt(t.state.selection.main.head)==Qt.LTR}const L5=t=>B5(t,!Fi(t)),X5=t=>B5(t,Fi(t));function N5(t,e){return Er(t,i=>i.empty?t.moveByGroup(i,e):Em(i,e))}const TI=t=>N5(t,!Fi(t)),QI=t=>N5(t,Fi(t));function $I(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 Rm(t,e,i){let n=$t(t).resolveInner(e.head),r=i?Ze.closedBy:Ze.openedBy;for(let h=e.head;;){let u=i?n.childAfter(h):n.childBefore(h);if(!u)break;$I(t,u,r)?n=u:h=i?u.to:u.from}let s=n.type.prop(r),a,c;return s&&(a=i?Fr(t,n.from,1):Fr(t,n.to,-1))&&a.matched?c=i?a.end.to:a.end.from:c=i?n.to:n.from,he.cursor(c,i?-1:1)}const PI=t=>Er(t,e=>Rm(t.state,e,!Fi(t))),EI=t=>Er(t,e=>Rm(t.state,e,Fi(t)));function Z5(t,e){return Er(t,i=>{if(!i.empty)return Em(i,e);let n=t.moveVertically(i,e);return n.head!=i.head?n:t.moveToLineBoundary(i,e)})}const W5=t=>Z5(t,!1),q5=t=>Z5(t,!0);function I5(t){let e=t.scrollDOM.clientHeight<t.scrollDOM.scrollHeight-2,i=0,n=0,r;if(e){for(let s of t.state.facet(_e.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 V5(t,e){let i=I5(t),{state:n}=t,r=Uc(n.selection,a=>a.empty?t.moveVertically(a,e,i.height):Em(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,u=c.bottom-i.marginBottom;a&&a.top>h&&a.bottom<u&&(s=_e.scrollIntoView(r.main.head,{y:"start",yMargin:a.top-h}))}return t.dispatch(Pr(n,r),{effects:s}),!0}const RT=t=>V5(t,!1),wS=t=>V5(t,!0);function fa(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=he.cursor(n.from+s))}return r}const RI=t=>Er(t,e=>fa(t,e,!0)),AI=t=>Er(t,e=>fa(t,e,!1)),MI=t=>Er(t,e=>fa(t,e,!Fi(t))),zI=t=>Er(t,e=>fa(t,e,Fi(t))),jI=t=>Er(t,e=>he.cursor(t.lineBlockAt(e.head).from,1)),DI=t=>Er(t,e=>he.cursor(t.lineBlockAt(e.head).to,-1));function BI(t,e,i){let n=!1,r=Uc(t.selection,s=>{let a=Fr(t,s.head,-1)||Fr(t,s.head,1)||s.head>0&&Fr(t,s.head-1,1)||s.head<t.doc.length&&Fr(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 he.cursor(c)});return n?(e(Pr(t,r)),!0):!1}const LI=({state:t,dispatch:e})=>BI(t,e);function fr(t,e){let i=Uc(t.state.selection,n=>{let r=e(n);return he.range(n.anchor,r.head,r.goalColumn,r.bidiLevel||void 0,r.assoc)});return i.eq(t.state.selection)?!1:(t.dispatch(Pr(t.state,i)),!0)}function Y5(t,e){return fr(t,i=>t.moveByChar(i,e))}const H5=t=>Y5(t,!Fi(t)),U5=t=>Y5(t,Fi(t));function G5(t,e){return fr(t,i=>t.moveByGroup(i,e))}const XI=t=>G5(t,!Fi(t)),NI=t=>G5(t,Fi(t)),ZI=t=>fr(t,e=>Rm(t.state,e,!Fi(t))),WI=t=>fr(t,e=>Rm(t.state,e,Fi(t)));function F5(t,e){return fr(t,i=>t.moveVertically(i,e))}const K5=t=>F5(t,!1),J5=t=>F5(t,!0);function eA(t,e){return fr(t,i=>t.moveVertically(i,e,I5(t).height))}const AT=t=>eA(t,!1),MT=t=>eA(t,!0),qI=t=>fr(t,e=>fa(t,e,!0)),II=t=>fr(t,e=>fa(t,e,!1)),VI=t=>fr(t,e=>fa(t,e,!Fi(t))),YI=t=>fr(t,e=>fa(t,e,Fi(t))),HI=t=>fr(t,e=>he.cursor(t.lineBlockAt(e.head).from)),UI=t=>fr(t,e=>he.cursor(t.lineBlockAt(e.head).to)),zT=({state:t,dispatch:e})=>(e(Pr(t,{anchor:0})),!0),jT=({state:t,dispatch:e})=>(e(Pr(t,{anchor:t.doc.length})),!0),DT=({state:t,dispatch:e})=>(e(Pr(t,{anchor:t.selection.main.anchor,head:0})),!0),BT=({state:t,dispatch:e})=>(e(Pr(t,{anchor:t.selection.main.anchor,head:t.doc.length})),!0),GI=({state:t,dispatch:e})=>(e(t.update({selection:{anchor:0,head:t.doc.length},userEvent:"select"})),!0),FI=({state:t,dispatch:e})=>{let i=Am(t).map(({from:n,to:r})=>he.range(n,Math.min(r+1,t.doc.length)));return e(t.update({selection:he.create(i),userEvent:"select"})),!0},KI=({state:t,dispatch:e})=>{let i=Uc(t.selection,n=>{let r=$t(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 he.range(c.to,c.from)}return n});return i.eq(t.selection)?!1:(e(Pr(t,i)),!0)};function tA(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(u=>u.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(Pr(i,he.create(r,r.length-1))),!0)}const JI=t=>tA(t,!1),e9=t=>tA(t,!0),t9=({state:t,dispatch:e})=>{let i=t.selection,n=null;return i.ranges.length>1?n=he.create([i.main]):i.main.empty||(n=he.create([he.cursor(i.main.head)])),n?(e(Pr(t,n)),!0):!1};function _d(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=Cp(t,h,!1)):h>a&&(i="delete.forward",h=Cp(t,h,!0)),a=Math.min(a,h),c=Math.max(c,h)}else a=Cp(t,a,!1),c=Cp(t,c,!0);return a==c?{range:s}:{changes:{from:a,to:c},range:he.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"?_e.announce.of(n.phrase("Selection deleted")):void 0})),!0)}function Cp(t,e,i){if(t instanceof _e)for(let n of t.state.facet(_e.atomicRanges).map(r=>r(t)))n.between(e,e,(r,s)=>{r<e&&s>e&&(e=i?s:r)});return e}const iA=(t,e,i)=>_d(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 u=Is(c,s.tabSize),f=u%Dg(s)||Dg(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}),kS=t=>iA(t,!1,!0),nA=t=>iA(t,!0,!1),rA=(t,e)=>_d(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,u=s.text.slice(Math.min(n,h)-s.from,Math.max(n,h)-s.from),f=a(u);if(c!=null&&f!=c)break;(u!=" "||n!=i.head)&&(c=f),n=h}return n}),sA=t=>rA(t,!1),i9=t=>rA(t,!0),n9=t=>_d(t,e=>{let i=t.lineBlockAt(e.head).to;return e.head<i?i:Math.min(t.state.doc.length,e.head+1)}),r9=t=>_d(t,e=>{let i=t.moveToLineBoundary(e,!1).head;return e.head>i?i:Math.max(0,e.head-1)}),s9=t=>_d(t,e=>{let i=t.moveToLineBoundary(e,!0).head;return e.head<i?i:Math.min(t.state.doc.length,e.head+1)}),o9=({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:he.cursor(n.from)}));return e(t.update(i,{scrollIntoView:!0,userEvent:"input"})),!0},a9=({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:he.cursor(c)}});return i.changes.empty?!1:(e(t.update(i,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Am(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 oA(t,e,i){if(t.readOnly)return!1;let n=[],r=[];for(let s of Am(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(he.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(he.range(h.anchor-c,h.head-c))}}return n.length?(e(t.update({changes:n,scrollIntoView:!0,selection:he.create(r,t.selection.mainIndex),userEvent:"move.line"})),!0):!1}const l9=({state:t,dispatch:e})=>oA(t,e,!1),c9=({state:t,dispatch:e})=>oA(t,e,!0);function aA(t,e,i){if(t.readOnly)return!1;let n=[];for(let s of Am(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 h9=({state:t,dispatch:e})=>aA(t,e,!1),u9=({state:t,dispatch:e})=>aA(t,e,!0),d9=t=>{if(t.state.readOnly)return!1;let{state:e}=t,i=e.changes(Am(e).map(({from:r,to:s})=>(r>0?r--:s<e.doc.length&&s++,{from:r,to:s}))),n=Uc(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 f9(t,e){if(/\(\)|\[\]|\{\}/.test(t.sliceDoc(e-1,e+1)))return{from:e,to:e};let i=$t(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 LT=lA(!1),p9=lA(!0);function lA(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&&f9(e,s);t&&(s=a=(a<=c.to?c:e.doc.lineAt(a)).to);let u=new Cm(e,{simulateBreak:s,simulateDoubleBreak:!!h}),f=yb(u,s);for(f==null&&(f=Is(/^\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=["",Fu(e,f)];return h&&g.push(Fu(e,u.lineIndent(c.from,-1))),{changes:{from:s,to:a,insert:dt.of(g)},range:he.cursor(s+1+g[1].length)}});return i(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}}function _b(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:he.range(s.mapPos(n.anchor,1),s.mapPos(n.head,1))}})}const g9=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let i=Object.create(null),n=new Cm(t,{overrideIndentation:s=>{let a=i[s];return a??-1}}),r=_b(t,(s,a,c)=>{let h=yb(n,s.from);if(h==null)return;/\S/.test(s.text)||(h=0);let u=/^\s*/.exec(s.text)[0],f=Fu(t,h);(u!=f||c.from<s.from+u.length)&&(i[s.from]=h,a.push({from:s.from,to:s.from+u.length,insert:f}))});return r.changes.empty||e(t.update(r,{userEvent:"indent"})),!0},cA=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(_b(t,(i,n)=>{n.push({from:i.from,insert:t.facet(bd)})}),{userEvent:"input.indent"})),!0),hA=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(_b(t,(i,n)=>{let r=/^\s*/.exec(i.text)[0];if(!r)return;let s=Is(r,t.tabSize),a=0,c=Fu(t,Math.max(0,s-Dg(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),m9=t=>(t.setTabFocusMode(),!0),O9=[{key:"Ctrl-b",run:L5,shift:H5,preventDefault:!0},{key:"Ctrl-f",run:X5,shift:U5},{key:"Ctrl-p",run:W5,shift:K5},{key:"Ctrl-n",run:q5,shift:J5},{key:"Ctrl-a",run:jI,shift:HI},{key:"Ctrl-e",run:DI,shift:UI},{key:"Ctrl-d",run:nA},{key:"Ctrl-h",run:kS},{key:"Ctrl-k",run:n9},{key:"Ctrl-Alt-h",run:sA},{key:"Ctrl-o",run:o9},{key:"Ctrl-t",run:a9},{key:"Ctrl-v",run:wS}],v9=[{key:"ArrowLeft",run:L5,shift:H5,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:TI,shift:XI,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:MI,shift:VI,preventDefault:!0},{key:"ArrowRight",run:X5,shift:U5,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:QI,shift:NI,preventDefault:!0},{mac:"Cmd-ArrowRight",run:zI,shift:YI,preventDefault:!0},{key:"ArrowUp",run:W5,shift:K5,preventDefault:!0},{mac:"Cmd-ArrowUp",run:zT,shift:DT},{mac:"Ctrl-ArrowUp",run:RT,shift:AT},{key:"ArrowDown",run:q5,shift:J5,preventDefault:!0},{mac:"Cmd-ArrowDown",run:jT,shift:BT},{mac:"Ctrl-ArrowDown",run:wS,shift:MT},{key:"PageUp",run:RT,shift:AT},{key:"PageDown",run:wS,shift:MT},{key:"Home",run:AI,shift:II,preventDefault:!0},{key:"Mod-Home",run:zT,shift:DT},{key:"End",run:RI,shift:qI,preventDefault:!0},{key:"Mod-End",run:jT,shift:BT},{key:"Enter",run:LT,shift:LT},{key:"Mod-a",run:GI},{key:"Backspace",run:kS,shift:kS,preventDefault:!0},{key:"Delete",run:nA,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:sA,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:i9,preventDefault:!0},{mac:"Mod-Backspace",run:r9,preventDefault:!0},{mac:"Mod-Delete",run:s9,preventDefault:!0}].concat(O9.map(t=>({mac:t.key,run:t.run,shift:t.shift}))),y9=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:PI,shift:ZI},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:EI,shift:WI},{key:"Alt-ArrowUp",run:l9},{key:"Shift-Alt-ArrowUp",run:h9},{key:"Alt-ArrowDown",run:c9},{key:"Shift-Alt-ArrowDown",run:u9},{key:"Mod-Alt-ArrowUp",run:JI},{key:"Mod-Alt-ArrowDown",run:e9},{key:"Escape",run:t9},{key:"Mod-Enter",run:p9},{key:"Alt-l",mac:"Ctrl-l",run:FI},{key:"Mod-i",run:KI,preventDefault:!0},{key:"Mod-[",run:hA},{key:"Mod-]",run:cA},{key:"Mod-Alt-\\",run:g9},{key:"Shift-Mod-k",run:d9},{key:"Shift-Mod-\\",run:LI},{key:"Mod-/",run:lI},{key:"Alt-A",run:hI},{key:"Ctrl-m",mac:"Shift-Alt-m",run:m9}].concat(v9),S9={key:"Tab",run:cA,shift:hA},XT=typeof String.prototype.normalize=="function"?t=>t.normalize("NFKD"):t=>t;class qc{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(XT(c)):XT,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 Io(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=qE(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=qa(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"&&(qc.prototype[Symbol.iterator]=function(){return this});const uA={from:-1,to:-1,match:/.*/.exec("")},wb="gm"+(/x/.unicode==null?"":"u");class dA{constructor(e,i,n,r=0,s=e.length){if(this.text=e,this.to=s,this.curLine="",this.done=!1,this.value=uA,/\\[sWDnr]|\n|\r|\[\^/.test(i))return new fA(e,i,n,r,s);this.re=new RegExp(i,wb+(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=Ng(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=Ng(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 Bv=new WeakMap;class Tc{constructor(e,i){this.from=e,this.text=i}get to(){return this.from+this.text.length}static get(e,i,n){let r=Bv.get(e);if(!r||r.from>=n||r.to<=i){let c=new Tc(i,e.sliceString(i,n));return Bv.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)),Bv.set(e,new Tc(a,s)),new Tc(i,s.slice(i-a,n-a))}}class fA{constructor(e,i,n,r,s){this.text=e,this.to=s,this.done=!1,this.value=uA,this.matchPos=Ng(e,r),this.re=new RegExp(i,wb+(n!=null&&n.ignoreCase?"i":"")),this.test=n==null?void 0:n.test,this.flat=Tc.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=Ng(this.text,r+(n==r?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=Tc.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(dA.prototype[Symbol.iterator]=fA.prototype[Symbol.iterator]=function(){return this});function b9(t){try{return new RegExp(t,wb),!0}catch{return!1}}function Ng(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 x9=t=>{let{state:e}=t,i=String(e.doc.lineAt(t.state.selection.main.head).number),{close:n,result:r}=L7(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,u,f,g]=a,m=f?+f.slice(1):0,v=u?+u:c.number;if(u&&g){let w=v/100;h&&(w=w*(h=="-"?-1:1)+c.number/e.doc.lines),v=Math.round(e.doc.lines*w)}else u&&h&&(v=v*(h=="-"?-1:1)+c.number);let S=e.doc.line(Math.max(1,Math.min(e.doc.lines,v))),x=he.cursor(S.from+Math.max(0,Math.min(m,S.length)));t.dispatch({effects:[n,_e.scrollIntoView(x.from,{y:"center"})],selection:x})}),!0},_9={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},w9=ke.define({combine(t){return ha(t,_9,{highlightWordAroundCursor:(e,i)=>e||i,minSelectionLength:Math.min,maxMatches:Math.min})}});function k9(t){return[P9,$9]}const C9=qe.mark({class:"cm-selectionMatch"}),T9=qe.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function NT(t,e,i,n){return(i==0||t(e.sliceDoc(i-1,i))!=ti.Word)&&(n==e.doc.length||t(e.sliceDoc(n,n+1))!=ti.Word)}function Q9(t,e,i,n){return t(e.sliceDoc(i,i+1))==ti.Word&&t(e.sliceDoc(n-1,n))==ti.Word}const $9=Xi.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(w9),{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),!(NT(a,i,r.from,r.to)&&Q9(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 u=new qc(i.doc,s,h.from,h.to);for(;!u.next().done;){let{from:f,to:g}=u.value;if((!a||NT(a,i,f,g))&&(r.empty&&f<=r.from&&g>=r.to?c.push(T9.range(f,g)):(f>=r.to||g<=r.from)&&c.push(C9.range(f,g)),c.length>e.maxMatches))return qe.none}}return qe.set(c)}},{decorations:t=>t.decorations}),P9=_e.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),E9=({state:t,dispatch:e})=>{let{selection:i}=t,n=he.create(i.ranges.map(r=>t.wordAt(r.head)||he.cursor(r.head)),i.mainIndex);return n.eq(i)?!1:(e(t.update({selection:n})),!0)};function R9(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 qc(t.doc,e,n[n.length-1].to);;)if(c.next(),c.done){if(a)return null;c=new qc(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 A9=({state:t,dispatch:e})=>{let{ranges:i}=t.selection;if(i.some(s=>s.from===s.to))return E9({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=R9(t,n);return r?(e(t.update({selection:t.selection.addRange(he.range(r.from,r.to),!1),effects:_e.scrollIntoView(r.to)})),!0):!1},Gc=ke.define({combine(t){return ha(t,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new Y9(e),scrollToMatch:e=>_e.scrollIntoView(e)})}});class pA{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||b9(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 L9(this):new j9(this)}getCursor(e,i=0,n){let r=e.doc?e:ct.create({doc:e});return n==null&&(n=r.doc.length),this.regexp?uc(this,r,i,n):hc(this,r,i,n)}}class gA{constructor(e){this.spec=e}}function M9(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 hc(t,e,i,n){let r;return t.wholeWord&&(r=z9(e.doc,e.charCategorizer(e.selection.main.head))),t.test&&(r=M9(t.test,e,r)),new qc(e.doc,t.unquoted,i,n,t.caseSensitive?void 0:s=>s.toLowerCase(),r)}function z9(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(Zg(r,i-s))!=ti.Word||e(Wg(r,i-s))!=ti.Word)&&(e(Wg(r,n-s))!=ti.Word||e(Zg(r,n-s))!=ti.Word))}class j9 extends gA{constructor(e){super(e)}nextMatch(e,i,n){let r=hc(this.spec,e,n,e.doc.length).nextOverlapping();if(r.done){let s=Math.min(e.doc.length,i+this.spec.unquoted.length);r=hc(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=hc(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=hc(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=hc(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 D9(t,e,i){return(n,r,s)=>(!i||i(n,r,s))&&t(s[0],e,n,r)}function uc(t,e,i,n){let r;return t.wholeWord&&(r=B9(e.charCategorizer(e.selection.main.head))),t.test&&(r=D9(t.test,e,r)),new dA(e.doc,t.search,{ignoreCase:!t.caseSensitive,test:r},i,n)}function Zg(t,e){return t.slice(Qi(t,e,!1),e)}function Wg(t,e){return t.slice(e,Qi(t,e))}function B9(t){return(e,i,n)=>!n[0].length||(t(Zg(n.input,n.index))!=ti.Word||t(Wg(n.input,n.index))!=ti.Word)&&(t(Wg(n.input,n.index+n[0].length))!=ti.Word||t(Zg(n.input,n.index+n[0].length))!=ti.Word)}class L9 extends gA{nextMatch(e,i,n){let r=uc(this.spec,e,n,e.doc.length).next();return r.done&&(r=uc(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=uc(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=uc(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=uc(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 Ku=et.define(),kb=et.define(),ea=Yn.define({create(t){return new Lv(CS(t).create(),null)},update(t,e){for(let i of e.effects)i.is(Ku)?t=new Lv(i.value.create(),t.panel):i.is(kb)&&(t=new Lv(t.query,i.value?Cb:null));return t},provide:t=>Ag.from(t,e=>e.panel)});class Lv{constructor(e,i){this.query=e,this.panel=i}}const X9=qe.mark({class:"cm-searchMatch"}),N9=qe.mark({class:"cm-searchMatch cm-searchMatch-selected"}),Z9=Xi.fromClass(class{constructor(t){this.view=t,this.decorations=this.highlight(t.state.field(ea))}update(t){let e=t.state.field(ea);(e!=t.startState.field(ea)||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 al;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,(u,f)=>{let g=i.state.selection.ranges.some(m=>m.from==u&&m.to==f);n.add(u,f,g?N9:X9)})}return n.finish()}},{decorations:t=>t.decorations});function wd(t){return e=>{let i=e.state.field(ea,!1);return i&&i.query.spec.valid?t(e,i):vA(e)}}const qg=wd((t,{query:e})=>{let{to:i}=t.state.selection.main,n=e.nextMatch(t.state,i,i);if(!n)return!1;let r=he.single(n.from,n.to),s=t.state.facet(Gc);return t.dispatch({selection:r,effects:[Tb(t,n),s.scrollToMatch(r.main,t)],userEvent:"select.search"}),OA(t),!0}),Ig=wd((t,{query:e})=>{let{state:i}=t,{from:n}=i.selection.main,r=e.prevMatch(i,n,n);if(!r)return!1;let s=he.single(r.from,r.to),a=t.state.facet(Gc);return t.dispatch({selection:s,effects:[Tb(t,r),a.scrollToMatch(s.main,t)],userEvent:"select.search"}),OA(t),!0}),W9=wd((t,{query:e})=>{let i=e.matchAll(t.state,1e3);return!i||!i.length?!1:(t.dispatch({selection:he.create(i.map(n=>he.range(n.from,n.to))),userEvent:"select.search.matches"}),!0)}),q9=({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 qc(t.doc,t.sliceDoc(n,r));!c.next().done;){if(s.length>1e3)return!1;c.value.from==n&&(a=s.length),s.push(he.range(c.value.from,c.value.to))}return e(t.update({selection:he.create(s,a),userEvent:"select.search.matches"})),!0},ZT=wd((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,u,f=[];a.from==n&&a.to==r&&(u=i.toText(e.getReplacement(a)),c.push({from:a.from,to:a.to,insert:u}),a=e.nextMatch(i,a.from,a.to),f.push(_e.announce.of(i.phrase("replaced match on line $",i.doc.lineAt(n).number)+".")));let g=t.state.changes(c);return a&&(h=he.single(a.from,a.to).map(g),f.push(Tb(t,a)),f.push(i.facet(Gc).scrollToMatch(h.main,t))),t.dispatch({changes:g,selection:h,effects:f,userEvent:"input.replace"}),!0}),I9=wd((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:_e.announce.of(n),userEvent:"input.replace.all"}),!0});function Cb(t){return t.state.facet(Gc).createPanel(t)}function CS(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 u=t.facet(Gc);return new pA({search:((i=e==null?void 0:e.literal)!==null&&i!==void 0?i:u.literal)?h:h.replace(/\n/g,"\\n"),caseSensitive:(n=e==null?void 0:e.caseSensitive)!==null&&n!==void 0?n:u.caseSensitive,literal:(r=e==null?void 0:e.literal)!==null&&r!==void 0?r:u.literal,regexp:(s=e==null?void 0:e.regexp)!==null&&s!==void 0?s:u.regexp,wholeWord:(a=e==null?void 0:e.wholeWord)!==null&&a!==void 0?a:u.wholeWord})}function mA(t){let e=r5(t,Cb);return e&&e.dom.querySelector("[main-field]")}function OA(t){let e=mA(t);e&&e==t.root.activeElement&&e.select()}const vA=t=>{let e=t.state.field(ea,!1);if(e&&e.panel){let i=mA(t);if(i&&i!=t.root.activeElement){let n=CS(t.state,e.query.spec);n.valid&&t.dispatch({effects:Ku.of(n)}),i.focus(),i.select()}}else t.dispatch({effects:[kb.of(!0),e?Ku.of(CS(t.state,e.query.spec)):et.appendConfig.of(U9)]});return!0},yA=t=>{let e=t.state.field(ea,!1);if(!e||!e.panel)return!1;let i=r5(t,Cb);return i&&i.dom.contains(t.root.activeElement)&&t.focus(),t.dispatch({effects:kb.of(!1)}),!0},V9=[{key:"Mod-f",run:vA,scope:"editor search-panel"},{key:"F3",run:qg,shift:Ig,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:qg,shift:Ig,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:yA,scope:"editor search-panel"},{key:"Mod-Shift-l",run:q9},{key:"Mod-Alt-g",run:x9},{key:"Mod-d",run:A9,preventDefault:!0}];class Y9{constructor(e){this.view=e;let i=this.query=e.state.field(ea).query.spec;this.commit=this.commit.bind(this),this.searchField=xi("input",{value:i.search,placeholder:Mn(e,"Find"),"aria-label":Mn(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=xi("input",{value:i.replace,placeholder:Mn(e,"Replace"),"aria-label":Mn(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=xi("input",{type:"checkbox",name:"case",form:"",checked:i.caseSensitive,onchange:this.commit}),this.reField=xi("input",{type:"checkbox",name:"re",form:"",checked:i.regexp,onchange:this.commit}),this.wordField=xi("input",{type:"checkbox",name:"word",form:"",checked:i.wholeWord,onchange:this.commit});function n(r,s,a){return xi("button",{class:"cm-button",name:r,onclick:s,type:"button"},a)}this.dom=xi("div",{onkeydown:r=>this.keydown(r),class:"cm-search"},[this.searchField,n("next",()=>qg(e),[Mn(e,"next")]),n("prev",()=>Ig(e),[Mn(e,"previous")]),n("select",()=>W9(e),[Mn(e,"all")]),xi("label",null,[this.caseField,Mn(e,"match case")]),xi("label",null,[this.reField,Mn(e,"regexp")]),xi("label",null,[this.wordField,Mn(e,"by word")]),...e.state.readOnly?[]:[xi("br"),this.replaceField,n("replace",()=>ZT(e),[Mn(e,"replace")]),n("replaceAll",()=>I9(e),[Mn(e,"replace all")])],xi("button",{name:"close",onclick:()=>yA(e),"aria-label":Mn(e,"close"),type:"button"},["×"])])}commit(){let e=new pA({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:Ku.of(e)}))}keydown(e){x7(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?Ig:qg)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),ZT(this.view))}update(e){for(let i of e.transactions)for(let n of i.effects)n.is(Ku)&&!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(Gc).top}}function Mn(t,e){return t.state.phrase(e)}const Tp=30,Qp=/[\s\.,:;?!]/;function Tb(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-Tp),a=Math.min(r,i+Tp),c=t.state.sliceDoc(s,a);if(s!=n.from){for(let h=0;h<Tp;h++)if(!Qp.test(c[h+1])&&Qp.test(c[h])){c=c.slice(h);break}}if(a!=r){for(let h=c.length-1;h>c.length-Tp;h--)if(!Qp.test(c[h-1])&&Qp.test(c[h])){c=c.slice(0,h);break}}return _e.announce.of(`${t.state.phrase("current match")}. ${c} ${t.state.phrase("on line")} ${n.number}.`)}const H9=_e.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"}}),U9=[ea,Us.low(Z9),H9];class Qb{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=$t(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(bA(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 WT(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 G9(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=WT(e)+WT(i)+"*$";return[new RegExp("^"+n),new RegExp(n)]}function $b(t){let e=t.map(r=>typeof r=="string"?{label:r}:r),[i,n]=e.every(r=>/^\w+$/.test(r.label))?[/\w*$/,/\w+$/]:G9(e);return r=>{let s=r.matchBefore(n);return s||r.explicit?{from:s?s.from:r.pos,options:e,validFor:i}:null}}function SA(t,e){return i=>{for(let n=$t(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 qT{constructor(e,i,n,r){this.completion=e,this.source=i,this.match=n,this.score=r}}function tl(t){return t.selection.main.from}function bA(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 Pb=Gs.define();function F9(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:he.cursor(c.from+s+h.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const IT=new WeakMap;function K9(t){if(!Array.isArray(t))return t;let e=IT.get(t);return e||IT.set(t,e=$b(t)),e}const Vg=et.define(),Ju=et.define();class J9{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=Io(e,i),r=qa(n);this.chars.push(n);let s=e.slice(i,i+r),a=s.toUpperCase();this.folded.push(Io(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 T=Io(e,0),C=qa(T),Q=C==e.length?0:-100;if(T!=i[0])if(T==n[0])Q+=-200;else return null;return this.ret(Q,[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,u=0;if(c<0){for(let T=0,C=Math.min(e.length,200);T<C&&u<h;){let Q=Io(e,T);(Q==i[u]||Q==n[u])&&(r[u++]=T),T+=qa(Q)}if(u<h)return null}let f=0,g=0,m=!1,v=0,S=-1,x=-1,w=/[a-z]/.test(e),_=!0;for(let T=0,C=Math.min(e.length,200),Q=0;T<C&&g<h;){let M=Io(e,T);c<0&&(f<h&&M==i[f]&&(s[f++]=T),v<h&&(M==i[v]||M==n[v]?(v==0&&(S=T),x=T+1,v++):v=0));let E,L=M<255?M>=48&&M<=57||M>=97&&M<=122?2:M>=65&&M<=90?1:0:(E=qE(M))!=E.toLowerCase()?1:E!=E.toUpperCase()?2:0;(!T||L==1&&w||Q==0&&L!=0)&&(i[g]==M||n[g]==M&&(m=!0)?a[g++]=T:a.length&&(_=!1)),Q=L,T+=qa(M)}return g==h&&a[0]==0&&_?this.result(-100+(m?-200:0),a,e):v==h&&S==0?this.ret(-200-e.length+(x==e.length?0:-100),[0,x]):c>-1?this.ret(-700-e.length,[c,c+this.pattern.length]):v==h?this.ret(-900-e.length,[S,x]):g==h?this.result(-100+(m?-200:0)+-700+(_?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?qa(Io(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 eV{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=ke.define({combine(t){return ha(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:tV,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=>VT(e(n),i(n)),optionClass:(e,i)=>n=>VT(e(n),i(n)),addToOptions:(e,i)=>e.concat(i),filterStrict:(e,i)=>e||i})}});function VT(t,e){return t?e?t+" "+e:t:e}function tV(t,e,i,n,r,s){let a=t.textDirection==Qt.RTL,c=a,h=!1,u="top",f,g,m=e.left-r.left,v=r.right-e.right,S=n.right-n.left,x=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-x))-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 T=r.bottom-e.bottom;T>=x||T>e.top?f=i.bottom-e.top:(u="bottom",f=e.bottom-i.top)}let w=(e.bottom-e.top)/s.offsetHeight,_=(e.right-e.left)/s.offsetWidth;return{style:`${u}: ${f/w}px; max-width: ${g/_}px`,class:"cm-completionInfo-"+(h?a?"left-narrow":"right-narrow":c?"left":"right")}}const Eb=et.define();function iV(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 u=0;u<s.length;){let f=s[u++],g=s[u++];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 Xv(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 nV{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=iV(c),this.optionClass=c.optionClass,this.tooltipClass=c.tooltipClass,this.range=Xv(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:u}=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]<u.length){this.applyCompletion(e,u[+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:Eb.of(f)}),h.preventDefault())}}),this.dom.addEventListener("focusout",h=>{let u=e.state.field(this.stateField,!1);u&&u.tooltip&&e.state.facet(Ti).closeOnBlur&&h.relatedTarget!=e.contentDOM&&e.dispatch({effects:Ju.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=Xv(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=Xv(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=>In(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&&sV(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:u}=c;if(u){let m=typeof u=="string"?u:u.name;if(m!=s&&(a>n.from||n.from==0))if(s=m,typeof u!="string"&&u.header)r.appendChild(u.header(u));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 rV(t,e){return i=>new nV(i,t,e)}function sV(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 YT(t){return(t.boost||0)*100+(t.apply?10:0)+(t.info?5:0)+(t.type?1:0)}function oV(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 qT(m,f.source,g?g(m):[],1e9-i.length));else{let m=e.sliceDoc(f.from,f.to),v,S=a.filterStrict?new eV(m):new J9(m);for(let x of f.result.options)if(v=S.match(x.label)){let w=x.displayLabel?g?g(x,v.matched):[]:v.matched,_=v.score+(x.boost||0);if(s(new qT(x,f.source,w,_)),typeof x.section=="object"&&x.section.rank==="dynamic"){let{name:T}=x.section;r||(r=Object.create(null)),r[T]=Math.max(_,r[T]||-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,u=a.compareCompletions;for(let f of i.sort((g,m)=>m.score-g.score||u(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):YT(f.completion)>YT(h)&&(c[c.length-1]=f),h=f.completion}return c}class Oc{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 Oc(this.options,HT(i,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,i,n,r,s,a){if(r&&!a&&e.some(u=>u.isPending))return r.setDisabled();let c=oV(e,i);if(!c.length)return r&&e.some(u=>u.isPending)?r.setDisabled():null;let h=i.facet(Ti).selectOnOpen?0:-1;if(r&&r.selected!=h&&r.selected!=-1){let u=r.options[r.selected].completion;for(let f=0;f<c.length;f++)if(c[f].completion==u){h=f;break}}return new Oc(c,HT(n,h),{pos:e.reduce((u,f)=>f.hasResult()?Math.min(u,f.from):u,1e8),create:dV,above:s.aboveCursor},r?r.timestamp:Date.now(),h,!1)}map(e){return new Oc(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new Oc(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class Yg{constructor(e,i,n){this.active=e,this.id=i,this.open=n}static start(){return new Yg(hV,"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",tl(i)).map(K9)).map(h=>(this.active.find(f=>f.source==h)||new ur(h,this.active.some(f=>f.state!=0)?1:0)).update(e,n));s.length==this.active.length&&s.every((h,u)=>h==this.active[u])&&(s=this.active);let a=this.open,c=e.effects.some(h=>h.is(Rb));a&&e.docChanged&&(a=a.map(e.changes)),e.selection||s.some(h=>h.hasResult()&&e.changes.touchesRange(h.from,h.to))||!aV(s,this.active)||c?a=Oc.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 ur(h.source,0):h));for(let h of e.effects)h.is(Eb)&&(a=a&&a.setSelected(h.value,this.id));return s==this.active&&a==this.open?this:new Yg(s,this.id,a)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?lV:cV}}function aV(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 lV={"aria-autocomplete":"list"},cV={};function HT(t,e){let i={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":t};return e>-1&&(i["aria-activedescendant"]=t+"-"+e),i}const hV=[];function xA(t,e){if(t.isUserEvent("input.complete")){let n=t.annotation(Pb);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 ur{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 ur(r.source,0)),n&4&&r.state==0&&(r=new ur(this.source,1)),r=r.updateFor(e,n);for(let s of e.effects)if(s.is(Vg))r=new ur(r.source,1,s.value);else if(s.is(Ju))r=new ur(r.source,0);else if(s.is(Rb))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(tl(e.state))}}class Qc extends ur{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=tl(e.state);if(c>a||!r||i&2&&(tl(e.startState)==this.from||c<this.limit))return new ur(this.source,i&4?1:0);let h=e.changes.mapPos(this.limit);return uV(r.validFor,e.state,s,a)?new Qc(this.source,this.explicit,h,r,s,a):r.update&&(r=r.update(r,s,a,new Qb(e.state,c,!1)))?new Qc(this.source,this.explicit,h,r,r.from,(n=r.to)!==null&&n!==void 0?n:tl(e.state)):new ur(this.source,1,this.explicit)}map(e){return e.empty?this:(this.result.map?this.result.map(this.result,e):this.result)?new Qc(this.source,this.explicit,e.mapPos(this.limit),this.result,e.mapPos(this.from),e.mapPos(this.to,1)):new ur(this.source,0)}touches(e){return e.changes.touchesRange(this.from,this.to)}}function uV(t,e,i,n){if(!t)return!1;let r=e.sliceDoc(i,n);return typeof t=="function"?t(r,i,n,e):bA(t,!0).test(r)}const Rb=et.define({map(t,e){return t.map(i=>i.map(e))}}),bn=Yn.define({create(){return Yg.start()},update(t,e){return t.update(e)},provide:t=>[i5.from(t,e=>e.tooltip),_e.contentAttributes.from(t,e=>e.attrs)]});function Ab(t,e){const i=e.completion.apply||e.completion.label;let n=t.state.field(bn).active.find(r=>r.source==e.source);return n instanceof Qc?(typeof i=="string"?t.dispatch({...F9(t.state,i,n.from,n.to),annotations:Pb.of(e.completion)}):i(t,e.completion,n.from,n.to),!0):!1}const dV=rV(bn,Ab);function $p(t,e="option"){return i=>{let n=i.state.field(bn,!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=n5(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:Eb.of(c)}),!0}}const fV=t=>{let e=t.state.field(bn,!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:Ab(t,e.open.options[e.open.selected])},Nv=t=>t.state.field(bn,!1)?(t.dispatch({effects:Vg.of(!0)}),!0):!1,pV=t=>{let e=t.state.field(bn,!1);return!e||!e.active.some(i=>i.state!=0)?!1:(t.dispatch({effects:Ju.of(null)}),!0)};class gV{constructor(e,i){this.active=e,this.context=i,this.time=Date.now(),this.updates=[],this.done=void 0}}const mV=50,OV=1e3,vV=Xi.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(bn).active)e.isPending&&this.startQuery(e)}update(t){let e=t.state.field(bn),i=t.state.facet(Ti);if(!t.selectionSet&&!t.docChanged&&t.startState.field(bn)==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>mV&&Date.now()-a.time>OV){for(let c of a.context.abortListeners)try{c()}catch(h){In(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(Vg)))&&(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(bn);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=tl(e),n=new Qb(e,i,t.explicit,this.view),r=new gV(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:Ju.of(null)}),In(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(bn);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=tl(s.updates.length?s.updates[0].startState:this.view.state),h=Math.min(c,s.done.from+(s.active.explicit?0:1)),u=new Qc(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)u=u.update(f,i);if(u.hasResult()){e.push(u);continue}}let a=n.active.find(c=>c.source==s.active.source);if(a&&a.isPending)if(s.done==null){let c=new ur(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:Rb.of(e)})}},{eventHandlers:{blur(t){let e=this.view.state.field(bn,!1);if(e&&e.tooltip&&this.view.state.facet(Ti).closeOnBlur){let i=e.open&&n5(this.view,e.open.tooltip);(!i||!i.dom.contains(t.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:Ju.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Vg.of(!1)}),20),this.composing=0}}}),yV=typeof navigator=="object"&&/Win/.test(navigator.platform),SV=Us.highest(_e.domEventHandlers({keydown(t,e){let i=e.state.field(bn,!1);if(!i||!i.open||i.open.disabled||i.open.selected<0||t.key.length>1||t.ctrlKey&&!(yV&&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&&Ab(e,n),!1}})),_A=_e.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 bV{constructor(e,i,n,r){this.field=e,this.line=i,this.from=n,this.to=r}}class Mb{constructor(e,i,n){this.field=e,this.from=i,this.to=n}map(e){let i=e.mapPos(this.from,-1,rn.TrackDel),n=e.mapPos(this.to,1,rn.TrackDel);return i==null||n==null?null:new Mb(this.field,i,n)}}class zb{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 u=a,f=/^\t*/.exec(h)[0].length;for(let g=0;g<f;g++)u+=e.facet(bd);r.push(i+u.length-f),h=u+h.slice(f)}n.push(h),i+=h.length+1}let c=this.fieldPositions.map(h=>new Mb(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]||"",u=-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)&&(u=g);if(u<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}),u=g;for(let m of r)m.field>=u&&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 bV(u,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,u)=>{for(let f of r)f.line==n.length&&f.from>u&&(f.from--,f.to--);return h}),n.push(a)}return new zb(n,r)}}let xV=qe.widget({widget:new class extends ml{toDOM(){let t=document.createElement("span");return t.className="cm-snippetFieldPosition",t}ignoreEvent(){return!1}}}),_V=qe.mark({class:"cm-snippetField"});class Fc{constructor(e,i){this.ranges=e,this.active=i,this.deco=qe.set(e.map(n=>(n.from==n.to?xV:_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 Fc(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 kd=et.define({map(t,e){return t&&t.map(e)}}),wV=et.define(),ed=Yn.define({create(){return null},update(t,e){for(let i of e.effects){if(i.is(kd))return i.value;if(i.is(wV)&&t)return new Fc(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=>_e.decorations.from(t,e=>e?e.deco:qe.none)});function jb(t,e){return he.create(t.filter(i=>i.field==e).map(i=>he.range(i.from,i.to)))}function kV(t){let e=zb.parse(t);return(i,n,r,s)=>{let{text:a,ranges:c}=e.instantiate(i.state,r),{main:h}=i.state.selection,u={changes:{from:r,to:s==h.from?h.to:s,insert:dt.of(a)},scrollIntoView:!0,annotations:n?[Pb.of(n),ui.userEvent.of("input.complete")]:void 0};if(c.length&&(u.selection=jb(c,0)),c.some(f=>f.field>0)){let f=new Fc(c,0),g=u.effects=[kd.of(f)];i.state.field(ed,!1)===void 0&&g.push(et.appendConfig.of([ed,PV,EV,_A]))}i.dispatch(i.state.update(u))}}function wA(t){return({state:e,dispatch:i})=>{let n=e.field(ed,!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:jb(n.ranges,r),effects:kd.of(s?null:new Fc(n.ranges,r)),scrollIntoView:!0})),!0}}const CV=({state:t,dispatch:e})=>t.field(ed,!1)?(e(t.update({effects:kd.of(null)})),!0):!1,TV=wA(1),QV=wA(-1),$V=[{key:"Tab",run:TV,shift:QV},{key:"Escape",run:CV}],UT=ke.define({combine(t){return t.length?t[0]:$V}}),PV=Us.highest(Nc.compute([UT],t=>t.facet(UT)));function Wt(t,e){return{...e,apply:kV(t)}}const EV=_e.domEventHandlers({mousedown(t,e){let i=e.state.field(ed,!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:jb(i.ranges,r.field),effects:kd.of(i.ranges.some(s=>s.field>r.field)?new Fc(i.ranges,r.field):null),scrollIntoView:!0}),!0)}}),kA=new class extends ia{};kA.startSide=1;kA.endSide=-1;function RV(t={}){return[SV,bn,Ti.of(t),vV,AV,_A]}const CA=[{key:"Ctrl-Space",run:Nv},{mac:"Alt-`",run:Nv},{mac:"Alt-i",run:Nv},{key:"Escape",run:pV},{key:"ArrowDown",run:$p(!0)},{key:"ArrowUp",run:$p(!1)},{key:"PageDown",run:$p(!0,"page")},{key:"PageUp",run:$p(!1,"page")},{key:"Enter",run:fV}],AV=Us.highest(Nc.computeN([Ti],t=>t.facet(Ti).defaultKeymap?[CA]:[])),MV="#e5c07b",GT="#e06c75",zV="#56b6c2",jV="#ffffff",Kp="#abb2bf",TS="#7d8799",DV="#61afef",BV="#98c379",FT="#d19a66",LV="#c678dd",XV="#21252b",KT="#2c313a",JT="#282c34",Zv="#353a42",NV="#3E4451",eQ="#528bff",ZV=_e.theme({"&":{color:Kp,backgroundColor:JT},".cm-content":{caretColor:eQ},".cm-cursor, .cm-dropCursor":{borderLeftColor:eQ},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:NV},".cm-panels":{backgroundColor:XV,color:Kp},".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:JT,color:TS,border:"none"},".cm-activeLineGutter":{backgroundColor:KT},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:Zv},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:Zv,borderBottomColor:Zv},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:KT,color:Kp}}},{dark:!0}),WV=$m.define([{tag:W.keyword,color:LV},{tag:[W.name,W.deleted,W.character,W.propertyName,W.macroName],color:GT},{tag:[W.function(W.variableName),W.labelName],color:DV},{tag:[W.color,W.constant(W.name),W.standard(W.name)],color:FT},{tag:[W.definition(W.name),W.separator],color:Kp},{tag:[W.typeName,W.className,W.number,W.changed,W.annotation,W.modifier,W.self,W.namespace],color:MV},{tag:[W.operator,W.operatorKeyword,W.url,W.escape,W.regexp,W.link,W.special(W.string)],color:zV},{tag:[W.meta,W.comment],color:TS},{tag:W.strong,fontWeight:"bold"},{tag:W.emphasis,fontStyle:"italic"},{tag:W.strikethrough,textDecoration:"line-through"},{tag:W.link,color:TS,textDecoration:"underline"},{tag:W.heading,fontWeight:"bold",color:GT},{tag:[W.atom,W.bool,W.special(W.variableName)],color:FT},{tag:[W.processingInstruction,W.string,W.inserted],color:BV},{tag:W.invalid,color:jV}]),qV=[ZV,Yq(WV)];var tQ={};class Hg{constructor(e,i,n,r,s,a,c,h,u,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=u,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 Hg(e,[],i,n,n,0,[],0,r?new iQ(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),u=h?this.stack[h-2]:this.p.ranges[0].from,f=this.reducePos-u;f>=2e3&&!(!((i=this.p.parser.nodeSet.types[r])===null||i===void 0)&&i.isAnonymous)&&(u==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=f):this.p.lastBigReductionSize<f&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=u,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,u,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,u)}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 Hg(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 IV(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,u=this.stack.length-c*3;if(u>=0&&e.getGoto(this.stack[u],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 iQ(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 iQ{constructor(e,i){this.tracker=e,this.context=i,this.hash=e.strict?e.hash(i):0}}class IV{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 Ug{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 Ug(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 Ug(this.stack,this.pos,this.index)}}function mu(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 Jp{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const nQ=new Jp;class VV{constructor(e,i){this.input=e,this.ranges=i,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=nQ,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=nQ,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 $c{constructor(e,i){this.data=e,this.id=i}token(e,i){let{parser:n}=i.p;TA(this.data,e,i,this.id,n.data,n.tokenPrecTable)}}$c.prototype.contextual=$c.prototype.fallback=$c.prototype.extend=!1;class Gg{constructor(e,i,n){this.precTable=i,this.elseToken=n,this.data=typeof e=="string"?mu(e):e}token(e,i){let n=e.pos,r=0;for(;;){let s=e.next<0,a=e.resolveOffset(1,1);if(TA(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))}}Gg.prototype.contextual=$c.prototype.fallback=$c.prototype.extend=!1;class Ni{constructor(e,i={}){this.token=e,this.contextual=!!i.contextual,this.fallback=!!i.fallback,this.extend=!!i.extend}}function TA(t,e,i,n,r,s){let a=0,c=1<<n,{dialect:h}=i.p.parser;e:for(;(c&t[a])!=0;){let u=t[a+1];for(let v=a+3;v<u;v+=2)if((t[v+1]&c)>0){let S=t[v];if(h.allows(S)&&(e.token.value==-1||e.token.value==S||YV(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[u+m*3-3]==65535){a=t[u+m*3-1];continue e}for(;g<m;){let v=g+m>>1,S=u+v+(v<<1),x=t[S],w=t[S+1]||65536;if(f<x)m=v;else if(f>=w)g=v+1;else{a=t[S+2],e.advance();continue e}}break}}function rQ(t,e,i){for(let n=e,r;(r=t[n])!=65535;n++)if(r==i)return n-e;return-1}function YV(t,e,i,n){let r=rQ(i,n,e);return r<0||rQ(i,n,t)<r}const zn=typeof process<"u"&&tQ&&/\bparse\b/.test(tQ.LOG);let Wv=null;function sQ(t,e,i){let n=t.cursor(pt.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 HV=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?sQ(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?sQ(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 gt){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 UV{constructor(e,i){this.stream=i,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(n=>new Jp)}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 u=0;u<s.length;u++){if((1<<u&a)==0)continue;let f=s[u],g=this.tokens[u];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 Jp,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 Jp,{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 u=a.stateSlot(s,h?2:1);;u+=3){if(c[u]==65535)if(c[u+1]==1)u=Bs(c,u+2);else{r==0&&c[u+1]==2&&(r=this.putAction(Bs(c,u+2),i,n,r));break}c[u]==i&&(r=this.putAction(Bs(c,u+1),i,n,r))}return r}}class GV{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 VV(i,r),this.tokens=new UV(e,this.stream),this.topTerm=e.top[1];let{from:s}=r[0];this.stacks=[Hg.start(this,e.top[0],s)],this.fragments=n.length&&this.stream.end-s>e.bufferLength*4?new HV(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&&KV(r);if(a)return zn&&console.log("Finish with "+this.stackID(a)),this.stackToTree(a);if(this.parser.strict)throw zn&&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 zn&&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 u=n[h];if(c.sameState(u)||c.buffer.length>500&&u.buffer.length>500)if((c.score-u.score||c.buffer.length-u.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=zn?this.stackID(e)+" -> ":"";if(this.stoppedAt!=null&&r>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let u=e.curContext&&e.curContext.tracker.strict,f=u?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&&(!u||(g.prop(Ze.contextHash)||0)==f))return e.useNode(g,m),zn&&console.log(a+this.stackID(e)+` (via reuse of ${s.getName(g.type.id)})`),!0;if(!(g instanceof gt)||g.children.length==0||g.positions[0]>0)break;let v=g.children[0];if(v instanceof gt&&g.positions[0]==0)g=v;else break}}let c=s.stateSlot(e.state,4);if(c>0)return e.reduce(c),zn&&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 u=0;u<h.length;){let f=h[u++],g=h[u++],m=h[u++],v=u==h.length||!n,S=v?e:e.split(),x=this.tokens.mainToken;if(S.apply(f,g,x?x.start:S.pos,m),zn&&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 oQ(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],u=i[(a<<1)+1],f=zn?this.stackID(c)+" -> ":"";if(c.deadEnd&&(s||(s=!0,c.restart(),zn&&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()&&(zn&&console.log(m+this.stackID(g)+" (via force-reduce)"),!this.advanceFully(g,n));v++)zn&&(m=this.stackID(g)+" -> ");for(let v of c.recoverByInsert(h))zn&&console.log(f+this.stackID(v)+" (via recover-insert)"),this.advanceFully(v,n);this.stream.end>c.pos?(u==c.pos&&(u++,h=0),c.recoverByDelete(h,u),zn&&console.log(f+this.stackID(c)+` (via recover-delete ${this.parser.getName(h)})`),oQ(c,n)):(!r||r.score<g.score)&&(r=g)}return r}stackToTree(e){return e.close(),gt.build({buffer:Ug.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=(Wv||(Wv=new WeakMap)).get(e);return i||Wv.set(e,i=String.fromCodePoint(this.nextStackID++)),i+e}}function oQ(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 FV{constructor(e,i,n){this.source=e,this.flags=i,this.disabled=n}allows(e){return!this.disabled||this.disabled[e]==0}}const qv=t=>t;class Db{constructor(e){this.start=e.start,this.shift=e.shift||qv,this.reduce=e.reduce||qv,this.reuse=e.reuse||qv,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class ca extends mb{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,u){r[c].push([h,h.deserialize(String(u))])}if(e.nodeProps)for(let c of e.nodeProps){let h=c[0];typeof h=="string"&&(h=Ze[h]);for(let u=1;u<c.length;){let f=c[u++];if(f>=0)s(f,h,c[u++]);else{let g=c[u+-f];for(let m=-f;m>0;m--)s(c[u++],h,g);u++}}}this.nodeSet=new Sd(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=h5;let a=mu(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(aQ),this.states=mu(e.states,Uint32Array),this.data=mu(e.stateData),this.goto=mu(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(c=>typeof c=="number"?new $c(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 GV(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 u=s+(a>>1);s<u;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=Bs(n,s+2)];else{if(n[s+1]==2)return Bs(n,s+2);break}if(a==i||a==0)return Bs(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=Bs(this.data,s+2);else break;r=i(Bs(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=Bs(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(ca.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]=aQ(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 FV(e,n,r)}static deserialize(e){return new ca(e)}}function Bs(t,e){return t[e]|t[e+1]<<16}function KV(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 aQ(t){if(t.external){let e=t.extend?1:0;return(i,n)=>t.external(i,n)<<1|e}return t.get}const JV=316,eY=317,lQ=1,tY=2,iY=3,nY=4,rY=318,sY=320,oY=321,aY=5,lY=6,cY=0,QS=[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],QA=125,hY=59,$S=47,uY=42,dY=43,fY=45,pY=60,gY=44,mY=63,OY=46,vY=91,yY=new Db({start:!1,shift(t,e){return e==aY||e==lY||e==sY?t:e==oY},strict:!1}),SY=new Ni((t,e)=>{let{next:i}=t;(i==QA||i==-1||e.context)&&t.acceptToken(rY)},{contextual:!0,fallback:!0}),bY=new Ni((t,e)=>{let{next:i}=t,n;QS.indexOf(i)>-1||i==$S&&((n=t.peek(1))==$S||n==uY)||i!=QA&&i!=hY&&i!=-1&&!e.context&&t.acceptToken(JV)},{contextual:!0}),xY=new Ni((t,e)=>{t.next==vY&&!e.context&&t.acceptToken(eY)},{contextual:!0}),_Y=new Ni((t,e)=>{let{next:i}=t;if(i==dY||i==fY){if(t.advance(),i==t.next){t.advance();let n=!e.context&&e.canShift(lQ);t.acceptToken(n?lQ:tY)}}else i==mY&&t.peek(1)==OY&&(t.advance(),t.advance(),(t.next<48||t.next>57)&&t.acceptToken(iY))},{contextual:!0});function Iv(t,e){return t>=65&&t<=90||t>=97&&t<=122||t==95||t>=192||!e&&t>=48&&t<=57}const wY=new Ni((t,e)=>{if(t.next!=pY||!e.dialectEnabled(cY)||(t.advance(),t.next==$S))return;let i=0;for(;QS.indexOf(t.next)>-1;)t.advance(),i++;if(Iv(t.next,!0)){for(t.advance(),i++;Iv(t.next,!1);)t.advance(),i++;for(;QS.indexOf(t.next)>-1;)t.advance(),i++;if(t.next==gY)return;for(let n=0;;n++){if(n==7){if(!Iv(t.next,!0))return;break}if(t.next!="extends".charCodeAt(n))break;t.advance(),i++}}t.acceptToken(nY,-i)}),kY=ua({"get set async static":W.modifier,"for while do if else switch try catch finally return throw break continue default case defer":W.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":W.operatorKeyword,"let var const using function class extends":W.definitionKeyword,"import export from":W.moduleKeyword,"with debugger new":W.keyword,TemplateString:W.special(W.string),super:W.atom,BooleanLiteral:W.bool,this:W.self,null:W.null,Star:W.modifier,VariableName:W.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":W.function(W.variableName),VariableDefinition:W.definition(W.variableName),Label:W.labelName,PropertyName:W.propertyName,PrivatePropertyName:W.special(W.propertyName),"CallExpression/MemberExpression/PropertyName":W.function(W.propertyName),"FunctionDeclaration/VariableDefinition":W.function(W.definition(W.variableName)),"ClassDeclaration/VariableDefinition":W.definition(W.className),"NewExpression/VariableName":W.className,PropertyDefinition:W.definition(W.propertyName),PrivatePropertyDefinition:W.definition(W.special(W.propertyName)),UpdateOp:W.updateOperator,"LineComment Hashbang":W.lineComment,BlockComment:W.blockComment,Number:W.number,String:W.string,Escape:W.escape,ArithOp:W.arithmeticOperator,LogicOp:W.logicOperator,BitOp:W.bitwiseOperator,CompareOp:W.compareOperator,RegExp:W.regexp,Equals:W.definitionOperator,Arrow:W.function(W.punctuation),": Spread":W.punctuation,"( )":W.paren,"[ ]":W.squareBracket,"{ }":W.brace,"InterpolationStart InterpolationEnd":W.special(W.brace),".":W.derefOperator,", ;":W.separator,"@":W.meta,TypeName:W.typeName,TypeDefinition:W.definition(W.typeName),"type enum interface implements namespace module declare":W.definitionKeyword,"abstract global Privacy readonly override":W.modifier,"is keyof unique infer asserts":W.operatorKeyword,JSXAttributeValue:W.attributeValue,JSXText:W.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":W.angleBracket,"JSXIdentifier JSXNameSpacedName":W.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":W.attributeName,"JSXBuiltin/JSXIdentifier":W.standard(W.tagName)}),CY={__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},TY={__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},QY={__proto__:null,"<":193},$Y=ca.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:yY,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:[kY],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:[bY,xY,_Y,wY,2,3,4,5,6,7,8,9,10,11,12,13,14,SY,new Gg("$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 Gg("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=>CY[t]||-1},{term:343,get:t=>TY[t]||-1},{term:95,get:t=>QY[t]||-1}],tokenPrec:15201}),$A=[Wt("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),Wt("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),Wt("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Wt("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),Wt("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),Wt(`try {
114
+ \${}
115
+ } catch (\${error}) {
116
+ \${}
117
+ }`,{label:"try",detail:"/ catch block",type:"keyword"}),Wt("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),Wt(`if (\${}) {
118
+ \${}
119
+ } else {
120
+ \${}
121
+ }`,{label:"if",detail:"/ else block",type:"keyword"}),Wt(`class \${name} {
122
+ constructor(\${params}) {
123
+ \${}
124
+ }
125
+ }`,{label:"class",detail:"definition",type:"keyword"}),Wt('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Wt('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],PY=$A.concat([Wt("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),Wt("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),Wt("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),cQ=new gb,PA=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function nu(t){return(e,i)=>{let n=e.node.getChild("VariableDefinition");return n&&i(n,t),!0}}const EY=["FunctionDeclaration"],RY={FunctionDeclaration:nu("function"),ClassDeclaration:nu("class"),ClassExpression:()=>!0,EnumDeclaration:nu("constant"),TypeAliasDeclaration:nu("type"),NamespaceDeclaration:nu("namespace"),VariableDefinition(t,e){t.matchContext(EY)||e(t,"variable")},TypeDefinition(t,e){e(t,"type")},__proto__:null};function EA(t,e){let i=cQ.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(pt.IncludeAnonymous).iterate(a=>{if(r)r=!1;else if(a.name){let c=RY[a.name];if(c&&c(a,s)||PA.has(a.name))return!1}else if(a.to-a.from>8192){for(let c of EA(t,a.node))n.push(c);return!1}}),cQ.set(e,n),n}const hQ=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,RA=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function AY(t){let e=$t(t.state).resolveInner(t.pos,-1);if(RA.indexOf(e.name)>-1)return null;let i=e.name=="VariableName"||e.to-e.from<20&&hQ.test(t.state.sliceDoc(e.from,e.to));if(!i&&!t.explicit)return null;let n=[];for(let r=e;r;r=r.parent)PA.has(r.name)&&(n=n.concat(EA(t.state.doc,r)));return{options:n,from:i?e.from:t.pos,validFor:hQ}}const is=aa.define({name:"javascript",parser:$Y.configure({props:[Ol.add({IfStatement:Cc({except:/^\s*({|else\b)/}),TryStatement:Cc({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:Pq,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:Fp({closing:"}"}),ArrowFunction:t=>t.baseIndent+t.unit,"TemplateString BlockComment":()=>null,"Statement Property":Cc({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}}),da.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":Tm,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:"$"}}),AA={test:t=>/^JSX/.test(t.name),facet:Ob({commentTokens:{block:{open:"{/*",close:"*/}"}}})},MA=is.configure({dialect:"ts"},"typescript"),zA=is.configure({dialect:"jsx",props:[vb.add(t=>t.isTop?[AA]:void 0)]}),jA=is.configure({dialect:"jsx ts",props:[vb.add(t=>t.isTop?[AA]:void 0)]},"typescript");let DA=t=>({label:t,type:"keyword"});const BA="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(DA),MY=BA.concat(["declare","implements","private","protected","public"].map(DA));function PS(t={}){let e=t.jsx?t.typescript?jA:zA:t.typescript?MA:is,i=t.typescript?PY.concat(MY):$A.concat(BA);return new ul(e,[is.data.of({autocomplete:SA(RA,$b(i))}),is.data.of({autocomplete:AY}),t.jsx?DY:[]])}function zY(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 uQ(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 jY=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),DY=_e.inputHandler.of((t,e,i,n,r)=>{if((jY?t.composing:t.compositionStarted)||t.state.readOnly||e!=i||n!=">"&&n!="/"||!is.isActiveAt(t.state,e,-1))return!1;let s=r(),{state:a}=s,c=a.changeByRange(h=>{var u;let{head:f}=h,g=$t(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=uQ(a.doc,S.firstChild,f))||((u=S.firstChild)===null||u===void 0?void 0:u.name)=="JSXFragmentTag")){let x=`${m}>`;return{range:he.cursor(f+x.length,-1),changes:{from:f,insert:x}}}}else if(n==">"){let v=zY(g);if(v&&v.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(a.doc.sliceString(f,f+2))&&(m=uQ(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)}),BY=135,dQ=1,LY=136,XY=137,LA=2,NY=138,ZY=3,WY=4,XA=[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],qY=58,IY=40,NA=95,VY=91,eg=45,YY=46,HY=35,UY=37,GY=38,FY=92,KY=10,JY=42;function td(t){return t>=65&&t<=90||t>=97&&t<=122||t>=161}function Bb(t){return t>=48&&t<=57}function fQ(t){return Bb(t)||t>=97&&t<=102||t>=65&&t<=70}const ZA=(t,e,i)=>(n,r)=>{for(let s=!1,a=0,c=0;;c++){let{next:h}=n;if(td(h)||h==eg||h==NA||s&&Bb(h))!s&&(h!=eg||c>0)&&(s=!0),a===c&&h==eg&&a++,n.advance();else if(h==FY&&n.peek(1)!=KY){if(n.advance(),fQ(n.next)){do n.advance();while(fQ(n.next));n.next==32&&n.advance()}else n.next>-1&&n.advance();s=!0}else{s&&n.acceptToken(a==2&&r.canShift(LA)?e:h==IY?i:t);break}}},eH=new Ni(ZA(LY,LA,XY),{contextual:!0}),tH=new Ni(ZA(NY,ZY,WY),{contextual:!0}),iH=new Ni(t=>{if(XA.includes(t.peek(-1))){let{next:e}=t;(td(e)||e==NA||e==HY||e==YY||e==JY||e==VY||e==qY&&td(t.peek(1))||e==eg||e==GY)&&t.acceptToken(BY)}}),nH=new Ni(t=>{if(!XA.includes(t.peek(-1))){let{next:e}=t;if(e==UY&&(t.advance(),t.acceptToken(dQ)),td(e)){do t.advance();while(td(t.next)||Bb(t.next));t.acceptToken(dQ)}}}),rH=ua({"AtKeyword import charset namespace keyframes media supports font-feature-values":W.definitionKeyword,"from to selector scope MatchFlag":W.keyword,NamespaceName:W.namespace,KeyframeName:W.labelName,KeyframeRangeName:W.operatorKeyword,TagName:W.tagName,ClassName:W.className,PseudoClassName:W.constant(W.className),IdName:W.labelName,"FeatureName PropertyName":W.propertyName,AttributeName:W.attributeName,NumberLiteral:W.number,KeywordQuery:W.keyword,UnaryQueryOp:W.operatorKeyword,"CallTag ValueName FontName":W.atom,VariableName:W.variableName,Callee:W.operatorKeyword,Unit:W.unit,"UniversalSelector NestingSelector":W.definitionOperator,"MatchOp CompareOp":W.compareOperator,"ChildOp SiblingOp, LogicOp":W.logicOperator,BinOp:W.arithmeticOperator,Important:W.modifier,Comment:W.blockComment,ColorLiteral:W.color,"ParenthesizedContent StringLiteral":W.string,":":W.punctuation,"PseudoOp #":W.derefOperator,"; , |":W.separator,"( )":W.paren,"[ ]":W.squareBracket,"{ }":W.brace}),sH={__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},oH={__proto__:null,or:104,and:104,not:112,only:112,layer:186},aH={__proto__:null,selector:118,layer:182},lH={__proto__:null,"@import":178,"@media":190,"@charset":194,"@namespace":198,"@keyframes":204,"@supports":216,"@scope":220,"@font-feature-values":226},cH={__proto__:null,to:223},hH=ca.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:[rH],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:[iH,nH,eH,tH,1,2,3,4,new Gg("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=>sH[t]||-1},{term:138,get:t=>oH[t]||-1},{term:4,get:t=>aH[t]||-1},{term:28,get:t=>lH[t]||-1},{term:136,get:t=>cH[t]||-1}],tokenPrec:2256});let Vv=null;function Yv(){if(!Vv&&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)));Vv=e.sort().map(n=>({type:"property",label:n,apply:n+": "}))}return Vv||[]}const pQ=["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})),gQ=["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}))),uH=["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})),dH=["@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})),Es=/^(\w[\w-]*|-\w[\w-]*|)$/,fH=/^-(-[\w-]*)?$/;function pH(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 mQ=new gb,gH=["Declaration"];function mH(t){for(let e=t;;){if(e.type.isTop)return e;if(!(e=e.parent))return t}}function WA(t,e,i){if(e.to-e.from>4096){let n=mQ.get(e);if(n)return n;let r=[],s=new Set,a=e.cursor(pt.IncludeAnonymous);if(a.firstChild())do for(let c of WA(t,a.node,i))s.has(c.label)||(s.add(c.label),r.push(c));while(a.nextSibling());return mQ.set(e,r),r}else{let n=[],r=new Set;return e.cursor().iterate(s=>{var a;if(i(s)&&s.matchContext(gH)&&((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 OH=t=>e=>{let{state:i,pos:n}=e,r=$t(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:Yv(),validFor:Es};if(r.name=="ValueName")return{from:r.from,options:gQ,validFor:Es};if(r.name=="PseudoClassName")return{from:r.from,options:pQ,validFor:Es};if(t(r)||(e.explicit||s)&&pH(r,i.doc))return{from:t(r)||s?r.from:n,options:WA(i.doc,mH(r),t),validFor:fH};if(r.name=="TagName"){for(let{parent:h}=r;h;h=h.parent)if(h.name=="Block")return{from:r.from,options:Yv(),validFor:Es};return{from:r.from,options:uH,validFor:Es}}if(r.name=="AtKeyword")return{from:r.from,options:dH,validFor:Es};if(!e.explicit)return null;let a=r.resolve(n),c=a.childBefore(n);return c&&c.name==":"&&a.name=="PseudoClassSelector"?{from:n,options:pQ,validFor:Es}:c&&c.name==":"&&a.name=="Declaration"||a.name=="ArgList"?{from:n,options:gQ,validFor:Es}:a.name=="Block"||a.name=="Styles"?{from:n,options:Yv(),validFor:Es}:null},vH=OH(t=>t.name=="VariableName"),Fg=aa.define({name:"css",parser:hH.configure({props:[Ol.add({Declaration:Cc()}),da.add({"Block KeyframeList":Tm})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function qA(){return new ul(Fg,Fg.data.of({autocomplete:vH}))}const yH=55,SH=1,bH=56,xH=2,_H=57,wH=3,OQ=4,kH=5,Lb=6,IA=7,VA=8,YA=9,HA=10,CH=11,TH=12,QH=13,Hv=58,$H=14,PH=15,vQ=59,UA=21,EH=23,GA=24,RH=25,ES=27,FA=28,AH=29,MH=32,zH=35,jH=37,DH=38,BH=0,LH=1,XH={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},NH={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},yQ={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 ZH(t){return t==45||t==46||t==58||t>=65&&t<=90||t==95||t>=97&&t<=122||t>=161}let SQ=null,bQ=null,xQ=0;function RS(t,e){let i=t.pos+e;if(xQ==i&&bQ==t)return SQ;let n=t.peek(e),r="";for(;ZH(n);)r+=String.fromCharCode(n),n=t.peek(++e);return bQ=t,xQ=i,SQ=r?r.toLowerCase():n==WH||n==qH?void 0:null}const KA=60,Kg=62,Xb=47,WH=63,qH=33,IH=45;function _Q(t,e){this.name=t,this.parent=e}const VH=[Lb,HA,IA,VA,YA],YH=new Db({start:null,shift(t,e,i,n){return VH.indexOf(e)>-1?new _Q(RS(n,1)||"",t):t},reduce(t,e){return e==UA&&t?t.parent:t},reuse(t,e,i,n){let r=e.type.id;return r==Lb||r==jH?new _Q(RS(n,1)||"",t):t},strict:!1}),HH=new Ni((t,e)=>{if(t.next!=KA){t.next<0&&e.context&&t.acceptToken(Hv);return}t.advance();let i=t.next==Xb;i&&t.advance();let n=RS(t,0);if(n===void 0)return;if(!n)return t.acceptToken(i?PH:$H);let r=e.context?e.context.name:null;if(i){if(n==r)return t.acceptToken(CH);if(r&&NH[r])return t.acceptToken(Hv,-2);if(e.dialectEnabled(BH))return t.acceptToken(TH);for(let s=e.context;s;s=s.parent)if(s.name==n)return;t.acceptToken(QH)}else{if(n=="script")return t.acceptToken(IA);if(n=="style")return t.acceptToken(VA);if(n=="textarea")return t.acceptToken(YA);if(XH.hasOwnProperty(n))return t.acceptToken(HA);r&&yQ[r]&&yQ[r][n]?t.acceptToken(Hv,-1):t.acceptToken(Lb)}},{contextual:!0}),UH=new Ni(t=>{for(let e=0,i=0;;i++){if(t.next<0){i&&t.acceptToken(vQ);break}if(t.next==IH)e++;else if(t.next==Kg&&e>=2){i>=3&&t.acceptToken(vQ,-2);break}else e=0;t.advance()}});function GH(t){for(;t;t=t.parent)if(t.name=="svg"||t.name=="math")return!0;return!1}const FH=new Ni((t,e)=>{if(t.next==Xb&&t.peek(1)==Kg){let i=e.dialectEnabled(LH)||GH(e.context);t.acceptToken(i?kH:OQ,2)}else t.next==Kg&&t.acceptToken(OQ,1)});function Nb(t,e,i){let n=2+t.length;return new Ni(r=>{for(let s=0,a=0,c=0;;c++){if(r.next<0){c&&r.acceptToken(e);break}if(s==0&&r.next==KA||s==1&&r.next==Xb||s>=2&&s<n&&r.next==t.charCodeAt(s-2))s++,a++;else if(s==n&&r.next==Kg){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 KH=Nb("script",yH,SH),JH=Nb("style",bH,xH),eU=Nb("textarea",_H,wH),tU=ua({"Text RawText IncompleteTag IncompleteCloseTag":W.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":W.angleBracket,TagName:W.tagName,"MismatchedCloseTag/TagName":[W.tagName,W.invalid],AttributeName:W.attributeName,"AttributeValue UnquotedAttributeValue":W.attributeValue,Is:W.definitionOperator,"EntityReference CharacterReference":W.character,Comment:W.blockComment,ProcessingInst:W.processingInstruction,DoctypeDecl:W.documentMeta}),iU=ca.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:YH,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:[tU],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:[KH,JH,eU,FH,HH,UH,0,1,2,3,4,5],topRules:{Document:[0,16]},dialects:{noMatch:0,selfClosing:515},tokenPrec:517});function JA(t,e){let i=Object.create(null);for(let n of t.getChildren(GA)){let r=n.getChild(RH),s=n.getChild(ES)||n.getChild(FA);r&&(i[e.read(r.from,r.to)]=s?s.type.id==ES?e.read(s.from+1,s.to-1):e.read(s.from,s.to):"")}return i}function wQ(t,e){let i=t.getChild(EH);return i?e.read(i.from,i.to):" "}function Uv(t,e,i){let n;for(let r of i)if(!r.attrs||r.attrs(n||(n=JA(t.node.parent.firstChild,e))))return{parser:r.parser,bracketed:!0};return null}function eM(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 p5((c,h)=>{let u=c.type.id;if(u==AH)return Uv(c,h,i);if(u==MH)return Uv(c,h,n);if(u==zH)return Uv(c,h,r);if(u==UA&&s.length){let f=c.node,g=f.firstChild,m=g&&wQ(g,h),v;if(m){for(let S of s)if(S.tag==m&&(!S.attrs||S.attrs(v||(v=JA(g,h))))){let x=f.lastChild,w=x.type.id==DH?x.from:f.to;if(w>g.to)return{parser:S.parser,overlay:[{from:g.to,to:w}]}}}}if(a&&u==GA){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!=wQ(f.parent,h))continue;let S=f.lastChild;if(S.type.id==ES){let x=S.from+1,w=S.lastChild,_=S.to-(w&&w.isError?0:1);if(_>x)return{parser:v.parser,overlay:[{from:x,to:_}],bracketed:!0}}else if(S.type.id==FA)return{parser:v.parser,overlay:[{from:S.from,to:S.to}]}}}}return null})}const ru=["_blank","_self","_top","_parent"],Gv=["ascii","utf-8","utf-16","latin1","latin1"],Fv=["get","post","put","delete"],Kv=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],jn=["true","false"],Ee={},nU={a:{attrs:{href:null,ping:null,type:null,media:null,target:ru,hreflang:null}},abbr:Ee,address:Ee,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:Ee,aside:Ee,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:Ee,base:{attrs:{href:null,target:ru}},bdi:Ee,bdo:Ee,blockquote:{attrs:{cite:null}},body:Ee,br:Ee,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:Kv,formmethod:Fv,formnovalidate:["novalidate"],formtarget:ru,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:Ee,center:Ee,cite:Ee,code:Ee,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:Ee,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:Ee,div:Ee,dl:Ee,dt:Ee,em:Ee,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:Ee,figure:Ee,footer:Ee,form:{attrs:{action:null,name:null,"accept-charset":Gv,autocomplete:["on","off"],enctype:Kv,method:Fv,novalidate:["novalidate"],target:ru}},h1:Ee,h2:Ee,h3:Ee,h4:Ee,h5:Ee,h6:Ee,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:Ee,hgroup:Ee,hr:Ee,html:{attrs:{manifest:null}},i:Ee,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:Kv,formmethod:Fv,formnovalidate:["novalidate"],formtarget:ru,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:Ee,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:Ee,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:Ee,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:Gv,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:Ee,noscript:Ee,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:Ee,param:{attrs:{name:null,value:null}},pre:Ee,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:Ee,rt:Ee,ruby:Ee,samp:Ee,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:Gv}},section:Ee,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:Ee,source:{attrs:{src:null,type:null,media:null}},span:Ee,strong:Ee,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:Ee,summary:Ee,sup:Ee,table:Ee,tbody:Ee,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:Ee,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:Ee,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:Ee,time:{attrs:{datetime:null}},title:Ee,tr:Ee,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:Ee,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:Ee},tM={accesskey:null,class:null,contenteditable:jn,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:jn,autocorrect:jn,autocapitalize:jn,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":jn,"aria-autocomplete":["inline","list","both","none"],"aria-busy":jn,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":jn,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":jn,"aria-hidden":jn,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":jn,"aria-multiselectable":jn,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":jn,"aria-relevant":null,"aria-required":jn,"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},iM="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 iM)tM[t]=null;class id{constructor(e,i){this.tags={...nU,...e},this.globalAttrs={...tM,...i},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}id.default=new id;function Ic(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 Vc(t,e=!1){for(;t;t=t.parent)if(t.name=="Element")if(e)e=!1;else return t;return null}function nM(t,e,i){let n=i.tags[Ic(t,Vc(e))];return(n==null?void 0:n.children)||i.allTags}function Zb(t,e){let i=[];for(let n=Vc(e);n&&!n.type.isTop;n=Vc(n.parent)){let r=Ic(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 rM=/^[:\-\.\w\u00b7-\uffff]*$/;function kQ(t,e,i,n,r){let s=/\s*>/.test(t.sliceDoc(r,r+5))?"":">",a=Vc(i,i.name=="StartTag"||i.name=="TagName");return{from:n,to:r,options:nM(t.doc,a,e).map(c=>({label:c,type:"type"})).concat(Zb(t.doc,i).map((c,h)=>({label:"/"+c,apply:"/"+c+s,type:"type",boost:99-h}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function CQ(t,e,i,n){let r=/\s*>/.test(t.sliceDoc(n,n+5))?"":">";return{from:i,to:n,options:Zb(t.doc,e).map((s,a)=>({label:s,apply:s+r,type:"type",boost:99-a})),validFor:rM}}function rU(t,e,i,n){let r=[],s=0;for(let a of nM(t.doc,i,e))r.push({label:"<"+a,type:"type"});for(let a of Zb(t.doc,i))r.push({label:"</"+a+">",type:"type",boost:99-s++});return{from:n,to:n,options:r,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function sU(t,e,i,n,r){let s=Vc(i),a=s?e.tags[Ic(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(u=>({label:u,type:"property"})),validFor:rM}}function oU(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 u=t.sliceDoc(a.from,a.to),f=e.globalAttrs[u];if(!f){let g=Vc(i),m=g?e.tags[Ic(t.doc,g)]:null;f=(m==null?void 0:m.attrs)&&m.attrs[u]}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 sM(t,e){let{state:i,pos:n}=e,r=$t(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)?CQ(i,r,r.from,n):kQ(i,t,r,r.from,n):r.name=="StartTag"||r.name=="IncompleteTag"?kQ(i,t,r,n,n):r.name=="StartCloseTag"||r.name=="IncompleteCloseTag"?CQ(i,r,n,n):r.name=="OpenTag"||r.name=="SelfClosingTag"||r.name=="AttributeName"?sU(i,t,r,r.name=="AttributeName"?r.from:n,n):r.name=="Is"||r.name=="AttributeValue"||r.name=="UnquotedAttributeValue"?oU(i,t,r,r.name=="Is"?n:r.from,n):e.explicit&&(s.name=="Element"||s.name=="Text"||s.name=="Document")?rU(i,t,r,n):null}function aU(t){return sM(id.default,t)}function lU(t){let{extraTags:e,extraGlobalAttributes:i}=t,n=i||e?new id(e,i):id.default;return r=>sM(n,r)}const cU=is.parser.configure({top:"SingleExpression"}),oM=[{tag:"script",attrs:t=>t.type=="text/typescript"||t.lang=="ts",parser:MA.parser},{tag:"script",attrs:t=>t.type=="text/babel"||t.type=="text/jsx",parser:zA.parser},{tag:"script",attrs:t=>t.type=="text/typescript-jsx",parser:jA.parser},{tag:"script",attrs(t){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(t.type)},parser:cU},{tag:"script",attrs(t){return!t.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(t.type)},parser:is.parser},{tag:"style",attrs(t){return(!t.lang||t.lang=="css")&&(!t.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(t.type))},parser:Fg.parser}],aM=[{name:"style",parser:Fg.parser.configure({top:"Styles"})}].concat(iM.map(t=>({name:t,parser:is.parser}))),lM=aa.define({name:"html",parser:iU.configure({props:[Ol.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}}),da.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}}}),E5.add({"OpenTag CloseTag":t=>t.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"<!--",close:"-->"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-_"}}),tg=lM.configure({wrap:eM(oM,aM)});function cM(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=eM((t.nestedLanguages||[]).concat(oM),(t.nestedAttributes||[]).concat(aM)));let n=i?lM.configure({wrap:i,dialect:e}):e?tg.configure({dialect:e}):tg;return new ul(n,[tg.data.of({autocomplete:lU(t)}),t.autoCloseTags!==!1?hU:[],PS().support,qA().support])}const TQ=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),hU=_e.inputHandler.of((t,e,i,n,r)=>{if(t.composing||t.state.readOnly||e!=i||n!=">"&&n!="/"||!tg.isActiveAt(t.state,e,-1))return!1;let s=r(),{state:a}=s,c=a.changeByRange(h=>{var u,f,g;let m=a.doc.sliceString(h.from-1,h.to)==n,{head:v}=h,S=$t(a).resolveInner(v,-1),x;if(m&&n==">"&&S.name=="EndTag"){let w=S.parent;if(((f=(u=w.parent)===null||u===void 0?void 0:u.lastChild)===null||f===void 0?void 0:f.name)!="CloseTag"&&(x=Ic(a.doc,w.parent,v))&&!TQ.has(x)){let _=v+(a.doc.sliceString(v,v+1)===">"?1:0),T=`</${x}>`;return{range:h,changes:{from:v,to:_,insert:T}}}}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"&&(x=Ic(a.doc,w,v))&&!TQ.has(x)){let _=v+(a.doc.sliceString(v,v+1)===">"?1:0),T=`${x}>`;return{range:he.cursor(v+T.length,-1),changes:{from:v,to:_,insert:T}}}}return{range:h}});return c.changes.empty?!1:(t.dispatch([s,a.update(c,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),uU=ua({String:W.string,Number:W.number,"True False":W.bool,PropertyName:W.propertyName,Null:W.null,", :":W.separator,"[ ]":W.squareBracket,"{ }":W.brace}),dU=ca.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:[uU],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}),fU=aa.define({name:"json",parser:dU.configure({props:[Ol.add({Object:Cc({except:/^\s*\}/}),Array:Cc({except:/^\s*\]/})}),da.add({"Object Array":Tm})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function pU(){return new ul(fU)}class Jg{static create(e,i,n,r,s){let a=r+(r<<8)+e+(i<<4)|0;return new Jg(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 gt(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 gt(e.types[this.type],this.children,this.positions,i-this.from).balance({makeTree:(r,s,a)=>new gt(vi.none,r,s,a,this.hashProp)})}}var me;(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"})(me||(me={}));class gU{constructor(e,i){this.start=e,this.content=i,this.marks=[],this.parsers=[]}}class mU{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 Pu(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 QQ(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==me.OrderedList?Ib:qb)(i,e,!1);return n>0&&(t.type!=me.BulletList||Wb(i,e,!1)<0)&&i.text.charCodeAt(i.pos+n-1)==t.value}const hM={[me.Blockquote](t,e,i){return i.next!=62?!1:(i.markers.push(ot(me.QuoteMark,e.lineStart+i.pos,e.lineStart+i.pos+1)),i.moveBase(i.pos+(pr(i.text.charCodeAt(i.pos+1))?2:1)),t.end=e.lineStart+i.text.length,!0)},[me.ListItem](t,e,i){return i.indent<i.baseIndent+t.value&&i.next>-1?!1:(i.moveBaseColumn(i.baseIndent+t.value),!0)},[me.OrderedList]:QQ,[me.BulletList]:QQ,[me.Document](){return!0}};function pr(t){return t==32||t==9||t==10||t==13}function Pu(t,e=0){for(;e<t.length&&pr(t.charCodeAt(e));)e++;return e}function $Q(t,e,i){for(;e>i&&pr(t.charCodeAt(e-1));)e--;return e}function uM(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 dM(t){return t.next!=62?-1:t.text.charCodeAt(t.pos+1)==32?2:1}function Wb(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(!pr(s))return-1}return i&&t.next==45&&gM(t)>-1&&t.depth==e.stack.length&&e.parser.leafBlockParsers.indexOf(yM.SetextHeading)>-1||n<3?-1:1}function fM(t,e){for(let i=t.stack.length-1;i>=0;i--)if(t.stack[i].type==e)return!0;return!1}function qb(t,e,i){return(t.next==45||t.next==43||t.next==42)&&(t.pos==t.text.length-1||pr(t.text.charCodeAt(t.pos+1)))&&(!i||fM(e,me.BulletList)||t.skipSpace(t.pos+2)<t.text.length)?1:-1}function Ib(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&&!pr(t.text.charCodeAt(n+1))||i&&!fM(e,me.OrderedList)&&(t.skipSpace(n+1)==t.text.length||n>t.pos+1||t.next!=49)?-1:n+1-t.pos}function pM(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 gM(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&&pr(t.text.charCodeAt(e));)e++;return e==t.text.length?i:-1}const AS=/^[ \t]*$/,mM=/-->/,OM=/\?>/,MS=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*<!--/,mM],[/^\s*<\?/,OM],[/^\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,AS],[/^\s*(?:<\/[a-z][\w-]*\s*>|<[a-z][\w-]*(\s+[a-z:_][\w-.]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*>)\s*$/i,AS]];function vM(t,e,i){if(t.next!=60)return-1;let n=t.text.slice(t.pos);for(let r=0,s=MS.length-(i?1:0);r<s;r++)if(MS[r][0].test(n))return r;return-1}function PQ(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 Xo(t,e,i){let n=t.length-1;n>=0&&t[n].to==e&&t[n].type==me.CodeText?t[n].to=i:t.push(ot(me.CodeText,e,i))}const Pp={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(Xo(a,r,s);t.nextLine()&&e.depth>=t.stack.length;)if(e.pos==e.text.length){Xo(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 u of c)u.type==me.CodeText?Xo(a,u.from,u.to):a.push(u);c=[]}Xo(a,t.lineStart-1,t.lineStart);for(let u of e.markers)a.push(u);s=t.lineStart+e.text.length;let h=t.lineStart+e.findColumn(e.baseIndent+4);h<s&&Xo(a,h,s)}}return c.length&&(c=c.filter(h=>h.type!=me.CodeText),c.length&&(e.markers=c.concat(e.markers))),t.addNode(t.buffer.writeElements(a,-r).finish(me.CodeBlock,s-r),r),!0},FencedCode(t,e){let i=uM(e);if(i<0)return!1;let n=t.lineStart+e.pos,r=e.next,s=i-e.pos,a=e.skipSpace(i),c=$Q(e.text,e.text.length,a),h=[ot(me.CodeMark,n,n+s)];a<c&&h.push(ot(me.CodeInfo,t.lineStart+a,t.lineStart+c));for(let u=!0,f=!0,g=!1;t.nextLine()&&e.depth>=t.stack.length;u=!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&&Xo(h,t.lineStart-1,t.lineStart),h.push(ot(me.CodeMark,t.lineStart+e.pos,t.lineStart+m)),t.nextLine();break}else{g=!0,u||(Xo(h,t.lineStart-1,t.lineStart),f=!1);for(let x of e.markers)h.push(x);let v=t.lineStart+e.basePos,S=t.lineStart+e.text.length;v<S&&(Xo(h,v,S),f=!1)}}return t.addNode(t.buffer.writeElements(h,-n).finish(me.FencedCode,t.prevLineEnd()-n),n),!0},Blockquote(t,e){let i=dM(e);return i<0?!1:(t.startContext(me.Blockquote,e.pos),t.addNode(me.QuoteMark,t.lineStart+e.pos,t.lineStart+e.pos+1),e.moveBase(e.pos+i),null)},HorizontalRule(t,e){if(Wb(e,t,!1)<0)return!1;let i=t.lineStart+e.pos;return t.nextLine(),t.addNode(me.HorizontalRule,i),!0},BulletList(t,e){let i=qb(e,t,!1);if(i<0)return!1;t.block.type!=me.BulletList&&t.startContext(me.BulletList,e.basePos,e.next);let n=PQ(e,e.pos+1);return t.startContext(me.ListItem,e.basePos,n-e.baseIndent),t.addNode(me.ListMark,t.lineStart+e.pos,t.lineStart+e.pos+i),e.moveBaseColumn(n),null},OrderedList(t,e){let i=Ib(e,t,!1);if(i<0)return!1;t.block.type!=me.OrderedList&&t.startContext(me.OrderedList,e.basePos,e.text.charCodeAt(e.pos+i-1));let n=PQ(e,e.pos+i);return t.startContext(me.ListItem,e.basePos,n-e.baseIndent),t.addNode(me.ListMark,t.lineStart+e.pos,t.lineStart+e.pos+i),e.moveBaseColumn(n),null},ATXHeading(t,e){let i=pM(e);if(i<0)return!1;let n=e.pos,r=t.lineStart+n,s=$Q(e.text,e.text.length,n),a=s;for(;a>n&&e.text.charCodeAt(a-1)==e.next;)a--;(a==s||a==n||!pr(e.text.charCodeAt(a-1)))&&(a=e.text.length);let c=t.buffer.write(me.HeaderMark,0,i).writeElements(t.parser.parseInline(e.text.slice(n+i+1,a),r+i+1),-r);a<e.text.length&&c.write(me.HeaderMark,a-n,s-n);let h=c.finish(me.ATXHeading1-1+i,e.text.length-n);return t.nextLine(),t.addNode(h,r),!0},HTMLBlock(t,e){let i=vM(e,t,!1);if(i<0)return!1;let n=t.lineStart+e.pos,r=MS[i][1],s=[],a=r!=AS;for(;!r.test(e.text)&&t.nextLine();){if(e.depth<t.stack.length){a=!1;break}for(let u of e.markers)s.push(u)}a&&t.nextLine();let c=r==mM?me.CommentBlock:r==OM?me.ProcessingInstructionBlock:me.HTMLBlock,h=t.prevLineEnd();return t.addNode(t.buffer.writeElements(s,-n).finish(c,h-n),n),!0},SetextHeading:void 0};class OU{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)&&Pu(i.content,this.pos)==i.content.length?this.complete(e,i,i.content.length):!1}complete(e,i,n){return e.addLeafElement(i,ot(me.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(QM(e,this.pos,this.start,!0)))return-1;if(e.charCodeAt(this.pos)!=58)return this.stage=-1;this.elts.push(ot(me.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else if(this.stage==1){if(!this.nextStage(CM(e,Pu(e,this.pos),this.start)))return-1}else if(this.stage==2){let i=Pu(e,this.pos),n=0;if(i>this.pos){let r=TM(e,i,this.start);if(r){let s=Jv(e,r.to-this.start);s>0&&(this.nextStage(r),n=s)}}return n||(n=Jv(e,this.pos)),n>0&&n<e.length?n:-1}else return Jv(e,this.pos)}}}function Jv(t,e){for(;e<t.length;e++){let i=t.charCodeAt(e);if(i==10)break;if(!pr(i))return-1}return e}class vU{nextLine(e,i,n){let r=i.depth<e.stack.length?-1:gM(i),s=i.next;if(r<0)return!1;let a=ot(me.HeaderMark,e.lineStart+i.pos,e.lineStart+r);return e.nextLine(),e.addLeafElement(n,ot(s==61?me.SetextHeading1:me.SetextHeading2,n.start,e.prevLineEnd(),[...e.parser.parseInline(n.content,n.start),a])),!0}finish(){return!1}}const yM={LinkReference(t,e){return e.content.charCodeAt(0)==91?new OU(e):null},SetextHeading(){return new vU}},yU=[(t,e)=>pM(e)>=0,(t,e)=>uM(e)>=0,(t,e)=>dM(e)>=0,(t,e)=>qb(e,t,!0)>=0,(t,e)=>Ib(e,t,!0)>=0,(t,e)=>Wb(e,t,!0)>=0,(t,e)=>vM(e,t,!0)>=0],SU={text:"",end:0};class bU{constructor(e,i,n,r){this.parser=e,this.input=i,this.ranges=r,this.line=new mU,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=Jg.create(me.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=n.length?new wU(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 gU(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=$M(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=SU;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 "+me[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=Jg.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 gt(this.parser.nodeSet.types[e],Yc,Yc,(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(jS(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?SM(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=jS(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(i,-e.start).finish(me.Paragraph,e.content.length),e.start)}elt(e,i,n,r){return typeof e=="string"?ot(this.parser.getNodeType(e),i,n,r):new _M(e,i)}get buffer(){return new xM(this.parser.nodeSet)}}function SM(t,e,i,n,r){let s=t[e].to,a=[],c=[],h=i.from+n;function u(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){u(f.from+n,!0);let g=f.from+n,m,v=r.get(f.tree);v?m=v:f.to+n>s?(m=SM(t,e,f,n,r),u(f.to+n,!1)):m=f.toTree(),a.push(m),c.push(g-h)}return u(i.to+n,!1),new gt(i.type,a,c,i.to+n-h,i.tree?i.tree.propValues:void 0)}class Mm extends mb{constructor(e,i,n,r,s,a,c,h,u){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=u,this.nodeTypes=Object.create(null);for(let f of e.types)this.nodeTypes[f.name]=f.id}createParse(e,i,n){let r=new bU(this,e,i,n);for(let s of this.wrappers)r=s(r,e,i,n);return r}configure(e){let i=zS(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(),u=this.inlineNames.slice(),f=this.endLeafBlock.slice(),g=this.wrappers;if(su(i.defineNodes)){r=Object.assign({},r);let m=n.types.slice(),v;for(let S of i.defineNodes){let{name:x,block:w,composite:_,style:T}=typeof S=="string"?{name:S}:S;if(m.some(M=>M.name==x))continue;_&&(r[m.length]=(M,E,L)=>_(E,L,M.value));let C=m.length,Q=_?["Block","BlockContext"]:w?C>=me.ATXHeading1&&C<=me.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;m.push(vi.define({id:C,name:x,props:Q&&[[Ze.group,Q]]})),T&&(v||(v={}),Array.isArray(T)||T instanceof Zn?v[x]=T:Object.assign(v,T))}n=new Sd(m),v&&(n=n.extend(ua(v)))}if(su(i.props)&&(n=n.extend(...i.props)),su(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(su(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?Ep(c,m.before):m.after?Ep(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(su(i.parseInline))for(let m of i.parseInline){let v=u.indexOf(m.name);if(v>-1)h[v]=m.parse;else{let S=m.before?Ep(u,m.before):m.after?Ep(u,m.after)+1:u.length-1;h.splice(S,0,m.parse),u.splice(S,0,m.name)}}return i.wrap&&(g=g.concat(i.wrap)),new Mm(n,s,a,c,f,r,h,u,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 Vb(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 su(t){return t!=null&&t.length>0}function zS(t){if(!Array.isArray(t))return t;if(t.length==0)return null;let e=zS(t[0]);if(t.length==1)return e;let i=zS(t.slice(1));if(!i||!e)return e||i;let n=(a,c)=>(a||Yc).concat(c||Yc),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,u)=>r(s(a,c,h,u),c,h,u):r:s}}function Ep(t,e){let i=t.indexOf(e);if(i<0)throw new RangeError(`Position specified relative to unknown parser ${e}`);return i}let bM=[vi.none];for(let t=1,e;e=me[t];t++)bM[t]=vi.define({id:t,name:e,props:t>=me.Escape?[]:[[Ze.group,t in hM?["Block","BlockContext"]:["Block","LeafBlock"]]],top:e=="Document"});const Yc=[];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 gt.build({buffer:this.content,nodeSet:this.nodeSet,reused:this.nodes,topID:e,length:i})}}let nd=class{constructor(e,i,n,r=Yc){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 _M{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 Yc}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 ot(t,e,i,n){return new nd(t,e,i,n)}const wM={resolve:"Emphasis",mark:"EmphasisMark"},kM={resolve:"Emphasis",mark:"EmphasisMark"},Va={},em={};class Nn{constructor(e,i,n,r){this.type=e,this.from=i,this.to=n,this.side=r}}const EQ="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~";let rd=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\u2010-\u2027]/;try{rd=new RegExp("[\\p{S}|\\p{P}]","u")}catch{}const ey={Escape(t,e,i){if(e!=92||i==t.end-1)return-1;let n=t.char(i+1);for(let r=0;r<EQ.length;r++)if(EQ.charCodeAt(r)==n)return t.append(ot(me.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(ot(me.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(ot(me.InlineCode,i,n+1,[ot(me.CodeMark,i,i+r),ot(me.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(ot(me.Autolink,i,i+1+r[0].length,[ot(me.LinkMark,i,i+1),ot(me.URL,i+1,i+r[0].length),ot(me.LinkMark,i+r[0].length,i+1+r[0].length)]));let s=/^!--[^>](?:-[^-]|[^-])*?-->/i.exec(n);if(s)return t.append(ot(me.Comment,i,i+1+s[0].length));let a=/^\?[^]*?\?>/.exec(n);if(a)return t.append(ot(me.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(ot(me.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=rd.test(r),c=rd.test(s),h=/\s|^$/.test(r),u=/\s|^$/.test(s),f=!u&&(!c||h||a),g=!h&&(!a||u||c),m=f&&(e==42||!g||a),v=g&&(e==42||!f||c);return t.append(new Nn(e==95?wM:kM,i,n,(m?1:0)|(v?2:0)))},HardBreak(t,e,i){if(e==92&&t.char(i+1)==10)return t.append(ot(me.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(ot(me.HardBreak,i,n+1))}return-1},Link(t,e,i){return e==91?t.append(new Nn(Va,i,i+1,1)):-1},Image(t,e,i){return e==33&&t.char(i+1)==91?t.append(new Nn(em,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 Nn&&(r.type==Va||r.type==em)){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]=xU(t,s,r.type==Va?me.Link:me.Image,r.from,i+1);if(r.type==Va)for(let c=0;c<n;c++){let h=t.parts[c];h instanceof Nn&&h.type==Va&&(h.side=0)}return a.to}}return-1}};function xU(t,e,i,n,r){let{text:s}=t,a=t.char(r),c=r;if(e.unshift(ot(me.LinkMark,n,n+(i==me.Image?2:1))),e.push(ot(me.LinkMark,r-1,r)),a==40){let h=t.skipSpace(r+1),u=CM(s,h-t.offset,t.offset),f;u&&(h=t.skipSpace(u.to),h!=u.to&&(f=TM(s,h-t.offset,t.offset),f&&(h=t.skipSpace(f.to)))),t.char(h)==41&&(e.push(ot(me.LinkMark,r,r+1)),c=h+1,u&&e.push(u),f&&e.push(f),e.push(ot(me.LinkMark,h,c)))}else if(a==91){let h=QM(s,r-t.offset,t.offset,!1);h&&(e.push(h),c=h.to)}return ot(i,n,c,e)}function CM(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 ot(me.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(pr(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?ot(me.URL,e+i,s+i):s==t.length?null:!1}}function TM(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 ot(me.LinkTitle,e+i,s+1+i);c==92&&(a=!0)}}return null}function QM(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:ot(me.LinkLabel,e+i,s+1+i);if(n&&!pr(c)&&(n=!1),c==91)return!1;c==92&&(r=!0)}}return null}class Vb{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 Nn(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 Nn&&(i.type==Va||i.type==em))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 Nn&&r.type.resolve&&r.side&2))continue;let s=r.type==wM||r.type==kM,a=r.to-r.from,c,h=n-1;for(;h>=e;h--){let x=this.parts[h];if(x instanceof Nn&&x.side&1&&x.type==r.type&&!(s&&(r.side&1||x.side&2)&&(x.to-x.from+a)%3==0&&((x.to-x.from)%3||a%3))){c=x;break}}if(!c)continue;let u=r.type.resolve,f=[],g=c.from,m=r.to;if(s){let x=Math.min(2,c.to-c.from,a);g=c.to-x,m=r.from+x,u=x==1?"Emphasis":"StrongEmphasis"}c.type.mark&&f.push(this.elt(c.type.mark,g,c.to));for(let x=h+1;x<n;x++)this.parts[x]instanceof nd&&f.push(this.parts[x]),this.parts[x]=null;r.type.mark&&f.push(this.elt(r.type.mark,r.from,m));let v=this.elt(u,g,m,f);this.parts[h]=s&&c.from!=g?new Nn(c.type,c.from,g,c.side):null,(this.parts[n]=s&&r.to!=m?new Nn(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 nd&&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 Nn&&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 Nn?i:null}skipSpace(e){return Pu(this.text,e-this.offset)+this.offset}elt(e,i,n,r){return typeof e=="string"?ot(this.parser.getNodeType(e),i,n,r):new _M(e,i)}}Vb.linkStart=Va;Vb.imageStart=em;function jS(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 nd&&(i[n]=new nd(s.type,s.from,s.to,jS(s.children,[r])))}else i.splice(n++,0,r)}return i}const _U=[me.CodeBlock,me.ListItem,me.OrderedList,me.BulletList];class wU{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,u=c;for(;;){if(i.to-n>r){if(i.type.isAnonymous&&i.firstChild())continue;break}let f=$M(i.from-n,e.ranges);if(i.to-n<=e.ranges[e.rangeI].to)e.addNode(i.tree,f);else{let g=new gt(e.parser.nodeSet.types[me.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=u),h=i.to-n,u=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 $M(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 kU=ua({"Blockquote/...":W.quote,HorizontalRule:W.contentSeparator,"ATXHeading1/... SetextHeading1/...":W.heading1,"ATXHeading2/... SetextHeading2/...":W.heading2,"ATXHeading3/...":W.heading3,"ATXHeading4/...":W.heading4,"ATXHeading5/...":W.heading5,"ATXHeading6/...":W.heading6,"Comment CommentBlock":W.comment,Escape:W.escape,Entity:W.character,"Emphasis/...":W.emphasis,"StrongEmphasis/...":W.strong,"Link/... Image/...":W.link,"OrderedList/... BulletList/...":W.list,"BlockQuote/...":W.quote,"InlineCode CodeText":W.monospace,"URL Autolink":W.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":W.processingInstruction,"CodeInfo LinkLabel":W.labelName,LinkTitle:W.string,Paragraph:W.content}),CU=new Mm(new Sd(bM).extend(kU),Object.keys(Pp).map(t=>Pp[t]),Object.keys(Pp).map(t=>yM[t]),Object.keys(Pp),yU,hM,Object.keys(ey).map(t=>ey[t]),Object.keys(ey),[]);function TU(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 QU(t){let{codeParser:e,htmlParser:i}=t;return{wrap:p5((r,s)=>{let a=r.type.id;if(e&&(a==me.CodeBlock||a==me.FencedCode)){let c="";if(a==me.FencedCode){let u=r.node.getChild(me.CodeInfo);u&&(c=s.read(u.from,u.to))}let h=e(c);if(h)return{parser:h,overlay:u=>u.type.id==me.CodeText,bracketed:a==me.FencedCode}}else if(i&&(a==me.HTMLBlock||a==me.HTMLTag||a==me.CommentBlock))return{parser:i,overlay:TU(r.node,r.from,r.to)};return null})}}const $U={resolve:"Strikethrough",mark:"StrikethroughMark"},PU={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":W.strikethrough}},{name:"StrikethroughMark",style:W.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=rd.test(n),h=rd.test(r);return t.addDelimiter($U,i,i+2,!a&&(!h||s||c),!s&&(!c||a||h))},after:"Emphasis"}]};function Eu(t,e,i=0,n,r=0){let s=0,a=!0,c=-1,h=-1,u=!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&&!u?((!a||c>-1)&&s++,a=!1,n&&(c>-1&&f(),n.push(t.elt("TableDelimiter",g+r,g+r+1))),c=h=-1):(u||m!=32&&m!=9)&&(c<0&&(c=g),h=g+1),u=!u&&m==92}return c>-1&&(s++,n&&f()),s}function RQ(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 PM=/^\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/;class AQ{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)&&PM.test(r=i.text.slice(i.pos))){let s=[];Eu(e,n.content,0,s,n.start)==Eu(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=[];Eu(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 EU={defineNodes:[{name:"Table",block:!0},{name:"TableHeader",style:{"TableHeader/...":W.heading}},"TableRow",{name:"TableCell",style:W.content},{name:"TableDelimiter",style:W.processingInstruction}],parseBlock:[{name:"Table",leaf(t,e){return RQ(e.content,0)?new AQ:null},endLeaf(t,e,i){if(i.parsers.some(r=>r instanceof AQ)||!RQ(e.text,e.basePos))return!1;let n=t.peekLine();return PM.test(n)&&Eu(t,e.text,e.basePos)==Eu(t,n,e.basePos)},before:"SetextHeading"}]};class RU{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 AU={defineNodes:[{name:"Task",block:!0,style:W.list},{name:"TaskMarker",style:W.atom}],parseBlock:[{name:"TaskList",leaf(t,e){return/^\[[ xX]\][ \t]/.test(e.content)&&t.parentType().name=="ListItem"?new RU:null},after:"SetextHeading"}]},MQ=/(www\.)|(https?:\/\/)|([\w.+-]{1,100}@)|(mailto:|xmpp:)/gy,zQ=/[\w-]+(\.[\w-]+)+(\/[^\s<]*)?/gy,MU=/[\w-]+\.[\w-]+($|\/)/,jQ=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,DQ=/\/[a-zA-Z\d@.]+/gy;function BQ(t,e,i,n){let r=0;for(let s=e;s<i;s++)t[s]==n&&r++;return r}function zU(t,e){zQ.lastIndex=e;let i=zQ.exec(t);if(!i||MU.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==")"&&BQ(t,e,n,")")>BQ(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 LQ(t,e){jQ.lastIndex=e;let i=jQ.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 jU={parseInline:[{name:"Autolink",parse(t,e,i){let n=i-t.offset;if(n&&/\w/.test(t.text[n-1]))return-1;MQ.lastIndex=n;let r=MQ.exec(t.text),s=-1;if(!r)return-1;if(r[1]||r[2]){if(s=zU(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=LQ(t.text,n):(s=LQ(t.text,n+r[0].length),s>-1&&r[0]=="xmpp:"&&(DQ.lastIndex=s,r=DQ.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)}}]},DU=[EU,AU,PU,jU];function EM(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)),pr(h))break}return-1}}const BU={defineNodes:[{name:"Superscript",style:W.special(W.content)},{name:"SuperscriptMark",style:W.processingInstruction}],parseInline:[{name:"Superscript",parse:EM(94,"Superscript","SuperscriptMark")}]},LU={defineNodes:[{name:"Subscript",style:W.special(W.content)},{name:"SubscriptMark",style:W.processingInstruction}],parseInline:[{name:"Subscript",parse:EM(126,"Subscript","SubscriptMark")}]},XU={defineNodes:[{name:"Emoji",style:W.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))}}]},RM=Ob({commentTokens:{block:{open:"<!--",close:"-->"}}}),AM=new Ze,MM=CU.configure({props:[da.add(t=>!t.is("Block")||t.is("Document")||DS(t)!=null||NU(t)?void 0:(e,i)=>({from:i.doc.lineAt(e.from).to,to:e.to})),AM.add(DS),Ol.add({Document:()=>null}),Ga.add({Document:RM})]});function DS(t){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(t.name);return e?+e[1]:void 0}function NU(t){return t.name=="OrderedList"||t.name=="BulletList"}function ZU(t,e){let i=t;for(;;){let n=i.nextSibling,r;if(!n||(r=DS(n.type))!=null&&r<=e)break;i=n}return i.to}const WU=S5.of((t,e,i)=>{for(let n=$t(t).resolveInner(i,-1);n&&!(n.from<e);n=n.parent){let r=n.type.prop(AM);if(r==null)continue;let s=ZU(n,r);if(s>i)return{from:i,to:s}}return null});function Yb(t){return new cr(RM,t,[],"markdown")}const qU=Yb(MM),IU=MM.configure([DU,LU,BU,XU,{props:[da.add({Table:(t,e)=>({from:e.doc.lineAt(t.from).to,to:t.to})})]}]),tm=Yb(IU);function VU(t,e){return i=>{if(i&&t){let n=null;if(i=/\S*/.exec(i)[0],typeof t=="function"?n=t(i):n=jg.matchLanguageName(t,i,!0),n instanceof jg)return n.support?n.support.language.parser:Gu.getSkippingParser(n.load());if(n)return n.parser}return e?e.parser:null}}let ty=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(+jM(this.item,e)[2]+i):"";return this.spaceBefore+n+this.type+this.spaceAfter}};function zM(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 ty(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 u=a[3],f=a[0].length;u.length>=4&&(u=u.slice(0,u.length-4),f-=4),n.push(new ty(s.parent,h,h+f,a[1],u,a[2],s))}else if(s.name=="ListItem"&&s.parent.name=="BulletList"&&(a=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(c.text.slice(h)))){let u=a[4],f=a[0].length;u.length>4&&(u=u.slice(0,u.length-4),f-=4);let g=a[2];a[3]&&(g+=a[3].replace(/[xX]/," ")),n.push(new ty(s.parent,h,h+f,a[1],u,g,s))}}return n}function jM(t,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(t.from,t.from+10))}function iy(t,e,i,n=0){for(let r=-1,s=t;;){if(s.name=="ListItem"){let c=jM(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 Hb(t,e){let i=/^[ \t]*/.exec(t)[0].length;if(!i||e.facet(bd)!=" ")return t;let n=Is(t,4,i),r="";for(let s=n;s>0;)s>=4?(r+=" ",s-=4):(r+=" ",s--);return r+t.slice(i)}const YU=(t={})=>({state:e,dispatch:i})=>{let n=$t(e),{doc:r}=e,s=null,a=e.changeByRange(c=>{if(!c.empty||!tm.isActiveAt(e,c.from,-1)&&!tm.isActiveAt(e,c.from,1))return s={range:c};let h=c.from,u=r.lineAt(h),f=zM(n.resolveInner(h,-1),r);for(;f.length&&f[f.length-1].from>h-u.from;)f.pop();if(!f.length)return s={range:c};let g=f[f.length-1];if(g.to-g.spaceAfter.length>h-u.from)return s={range:c};let m=h>=g.to-g.spaceAfter.length&&!/\S/.test(u.text.slice(g.to));if(g.item&&m){let _=g.node.firstChild,T=g.node.getChild("ListItem","ListItem");if(_.to>=h||T&&T.to<h||u.from>0&&!/[^\s>]/.test(r.lineAt(u.from-1).text)||t.nonTightLists===!1){let C=f.length>1?f[f.length-2]:null,Q,M="";C&&C.item?(Q=u.from+C.from,M=C.marker(r,1)):Q=u.from+(C?C.to:0);let E=[{from:Q,to:h,insert:M}];return g.node.name=="OrderedList"&&iy(g.item,r,E,-2),C&&C.node.name=="OrderedList"&&iy(C.item,r,E),{range:he.cursor(Q+M.length),changes:E}}else{let C=NQ(f,e,u);return{range:he.cursor(h+C.length+1),changes:{from:u.from,insert:C+e.lineBreak}}}}if(g.node.name=="Blockquote"&&m&&u.from){let _=r.lineAt(u.from-1),T=/>\s*$/.exec(_.text);if(T&&T.index==g.from){let C=e.changes([{from:_.from+T.index,to:_.to},{from:u.from+g.from,to:u.to}]);return{range:c.map(C),changes:C}}}let v=[];g.node.name=="OrderedList"&&iy(g.item,r,v);let S=g.item&&g.item.from<u.from,x="";if(!S||/^[\s\d.)\-+*>]*/.exec(u.text)[0].length>=g.to)for(let _=0,T=f.length-1;_<=T;_++)x+=_==T&&!S?f[_].marker(r,1):f[_].blank(_<T?Is(u.text,4,f[_+1].from)-x.length:null);let w=h;for(;w>u.from&&/\s/.test(u.text.charAt(w-u.from-1));)w--;return x=Hb(x,e),UU(g.node,e.doc)&&(x=NQ(f,e,u)+e.lineBreak+x),v.push({from:w,to:h,insert:e.lineBreak+x}),{range:he.cursor(w+x.length+1),changes:v}});return s?!1:(i(e.update(a,{scrollIntoView:!0,userEvent:"input"})),!0)},HU=YU();function XQ(t){return t.name=="QuoteMark"||t.name=="ListMark"}function UU(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 NQ(t,e,i){let n="";for(let r=0,s=t.length-2;r<=s;r++)n+=t[r].blank(r<s?Is(i.text,4,t[r+1].from)-n.length:null,r<s);return Hb(n,e)}function GU(t,e){let i=t.resolveInner(e,-1),n=e;XQ(i)&&(n=i.from,i=i.parent);for(let r;r=i.childBefore(n);)if(XQ(r))n=r.from;else if(r.name=="OrderedList"||r.name=="BulletList")i=r.lastChild,n=i.to;else break;return i}const FU=({state:t,dispatch:e})=>{let i=$t(t),n=null,r=t.changeByRange(s=>{let a=s.from,{doc:c}=t;if(s.empty&&tm.isActiveAt(t,s.from)){let h=c.lineAt(a),u=zM(GU(i,a),c);if(u.length){let f=u[u.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:he.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(Is(h.text,4,f.to)-Is(h.text,4,f.from));return m==h.from&&(v=Hb(v,t)),{range:he.cursor(m+v.length),changes:{from:m,to:h.from+f.to,insert:v}}}if(m<a)return{range:he.cursor(m),changes:{from:m,to:a}}}}}return n={range:s}});return n?!1:(e(t.update(r,{scrollIntoView:!0,userEvent:"delete"})),!0)},KU=[{key:"Enter",run:HU},{key:"Backspace",run:FU}],DM=cM({matchClosingTags:!1});function JU(t={}){let{codeLanguages:e,defaultCodeLanguage:i,addKeymap:n=!0,base:{parser:r}=qU,completeHTMLTags:s=!0,pasteURLAsLink:a=!0,htmlTagLanguage:c=DM}=t;if(!(r instanceof Mm))throw new RangeError("Base parser provided to `markdown` should be a Markdown parser");let h=t.extensions?[t.extensions]:[],u=[c.support,WU],f;a&&u.push(nG),i instanceof ul?(u.push(i.support),f=i.language):i&&(f=i);let g=e||f?VU(e,f):void 0;h.push(QU({codeParser:g,htmlParser:c.language.parser})),n&&u.push(Us.high(Nc.of(KU)));let m=Yb(r.configure(h));return s&&u.push(m.data.of({autocomplete:eG})),new ul(m,u)}function eG(t){let{state:e,pos:i}=t,n=/<[:\-\.\w\u00b7-\uffff]*$/.exec(e.sliceDoc(i-25,i));if(!n)return null;let r=$t(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:tG(),validFor:/^<[:\-\.\w\u00b7-\uffff]*$/}}let ny=null;function tG(){if(ny)return ny;let t=aU(new Qb(ct.create({extensions:DM}),0,!0));return ny=t?t.options:[]}const iG=/code|horizontalrule|html|link|comment|processing|escape|entity|image|mark|url/i,nG=_e.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),!tm.isActiveAt(e.state,n.from,1)))return!1;let s=$t(e.state),a=!1;return s.iterate({from:n.from,to:n.to,enter:c=>{(c.from>n.from||iG.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)}}),rG=1,BM=194,LM=195,sG=196,ZQ=197,oG=198,aG=199,lG=200,cG=2,XM=3,WQ=201,hG=24,uG=25,dG=49,fG=50,pG=55,gG=56,mG=57,OG=59,vG=60,yG=61,SG=62,bG=63,xG=65,_G=238,wG=71,kG=241,CG=242,TG=243,QG=244,$G=245,PG=246,EG=247,RG=248,NM=72,AG=249,MG=250,zG=251,jG=252,DG=253,BG=254,LG=255,XG=256,NG=73,ZG=77,WG=263,qG=112,IG=130,VG=151,YG=152,HG=155,fl=10,sd=13,Ub=32,zm=9,Gb=35,UG=40,GG=46,BS=123,qQ=125,ZM=39,WM=34,IQ=92,FG=111,KG=120,JG=78,eF=117,tF=85,iF=new Set([uG,dG,fG,WG,xG,IG,gG,mG,_G,SG,bG,NM,NG,ZG,vG,yG,VG,YG,HG,qG]);function ry(t){return t==fl||t==sd}function sy(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}const nF=new Ni((t,e)=>{let i;if(t.next<0)t.acceptToken(aG);else if(e.context.flags&ig)ry(t.next)&&t.acceptToken(oG,1);else if(((i=t.peek(-1))<0||ry(i))&&e.canShift(ZQ)){let n=0;for(;t.next==Ub||t.next==zm;)t.advance(),n++;(t.next==fl||t.next==sd||t.next==Gb)&&t.acceptToken(ZQ,-n)}else ry(t.next)&&t.acceptToken(sG,1)},{contextual:!0}),rF=new Ni((t,e)=>{let i=e.context;if(i.flags)return;let n=t.peek(-1);if(n==fl||n==sd){let r=0,s=0;for(;;){if(t.next==Ub)r++;else if(t.next==zm)r+=8-r%8;else break;t.advance(),s++}r!=i.indent&&t.next!=fl&&t.next!=sd&&t.next!=Gb&&(r<i.indent?t.acceptToken(LM,-s):t.acceptToken(BM))}}),ig=1,qM=2,Ms=4,zs=8,js=16,Ds=32;function ng(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 sF=new ng(null,0,0);function oF(t){let e=0;for(let i=0;i<t.length;i++)e+=t.charCodeAt(i)==zm?8-e%8:1;return e}const VQ=new Map([[kG,0],[CG,Ms],[TG,zs],[QG,zs|Ms],[$G,js],[PG,js|Ms],[EG,js|zs],[RG,js|zs|Ms],[AG,Ds],[MG,Ds|Ms],[zG,Ds|zs],[jG,Ds|zs|Ms],[DG,Ds|js],[BG,Ds|js|Ms],[LG,Ds|js|zs],[XG,Ds|js|zs|Ms]].map(([t,e])=>[t,e|qM])),aF=new Db({start:sF,reduce(t,e,i,n){return t.flags&ig&&iF.has(e)||(e==wG||e==NM)&&t.flags&qM?t.parent:t},shift(t,e,i,n){return e==BM?new ng(t,oF(n.read(n.pos,i.pos)),0):e==LM?t.parent:e==hG||e==pG||e==OG||e==XM?new ng(t,0,ig):VQ.has(e)?new ng(t,0,VQ.get(e)|t.flags&ig):t},hash(t){return t.hash}}),lF=new Ni(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==Ub||i==zm)){i!=UG&&i!=GG&&i!=fl&&i!=sd&&i!=Gb&&t.acceptToken(rG);return}}}),cF=new Ni((t,e)=>{let{flags:i}=e.context,n=i&Ms?WM:ZM,r=(i&zs)>0,s=!(i&js),a=(i&Ds)>0,c=t.pos;for(;!(t.next<0);)if(a&&t.next==BS)if(t.peek(1)==BS)t.advance(2);else{if(t.pos==c){t.acceptToken(XM,1);return}break}else if(s&&t.next==IQ){if(t.pos==c){t.advance();let h=t.next;h>=0&&(t.advance(),hF(t,h)),t.acceptToken(cG);return}break}else if(t.next==IQ&&!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(WQ,r?3:1);return}break}else if(t.next==fl){if(r)t.advance();else if(t.pos==c){t.acceptToken(WQ);return}break}else t.advance();t.pos>c&&t.acceptToken(lG)});function hF(t,e){if(e==FG)for(let i=0;i<2&&t.next>=48&&t.next<=55;i++)t.advance();else if(e==KG)for(let i=0;i<2&&sy(t.next);i++)t.advance();else if(e==eF)for(let i=0;i<4&&sy(t.next);i++)t.advance();else if(e==tF)for(let i=0;i<8&&sy(t.next);i++)t.advance();else if(e==JG&&t.next==BS){for(t.advance();t.next>=0&&t.next!=qQ&&t.next!=ZM&&t.next!=WM&&t.next!=fl;)t.advance();t.next==qQ&&t.advance()}}const uF=ua({'async "*" "**" FormatConversion FormatSpec':W.modifier,"for while if elif else try except finally return raise break continue with pass assert await yield match case":W.controlKeyword,"in not and or is del":W.operatorKeyword,"from def class global nonlocal lambda":W.definitionKeyword,import:W.moduleKeyword,"with as print":W.keyword,Boolean:W.bool,None:W.null,VariableName:W.variableName,"CallExpression/VariableName":W.function(W.variableName),"FunctionDefinition/VariableName":W.function(W.definition(W.variableName)),"ClassDefinition/VariableName":W.definition(W.className),PropertyName:W.propertyName,"CallExpression/MemberExpression/PropertyName":W.function(W.propertyName),Comment:W.lineComment,Number:W.number,String:W.string,FormatString:W.special(W.string),Escape:W.escape,UpdateOp:W.updateOperator,"ArithOp!":W.arithmeticOperator,BitOp:W.bitwiseOperator,CompareOp:W.compareOperator,AssignOp:W.definitionOperator,Ellipsis:W.punctuation,At:W.meta,"( )":W.paren,"[ ]":W.squareBracket,"{ }":W.brace,".":W.derefOperator,", ;":W.separator}),dF={__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},fF=ca.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:aF,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:[uF],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:[lF,rF,nF,cF,0,1,2,3,4],topRules:{Script:[0,5]},specialized:[{term:221,get:t=>dF[t]||-1}],tokenPrec:7668}),YQ=new gb,IM=new Set(["Script","Body","FunctionDefinition","ClassDefinition","LambdaExpression","ForStatement","MatchClause"]);function Rp(t){return(e,i,n)=>{if(n)return!1;let r=e.node.getChild("VariableName");return r&&i(r,t),!0}}const pF={FunctionDefinition:Rp("function"),ClassDefinition:Rp("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:Rp("variable"),AsPattern:Rp("variable"),__proto__:null};function VM(t,e){let i=YQ.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(pt.IncludeAnonymous).iterate(a=>{if(a.name){let c=pF[a.name];if(c&&c(a,s,r)||!r&&IM.has(a.name))return!1;r=!1}else if(a.to-a.from>8192){for(let c of VM(t,a.node))n.push(c);return!1}}),YQ.set(e,n),n}const HQ=/^[\w\xa1-\uffff][\w\d\xa1-\uffff]*$/,YM=["String","FormatString","Comment","PropertyName"];function gF(t){let e=$t(t.state).resolveInner(t.pos,-1);if(YM.indexOf(e.name)>-1)return null;let i=e.name=="VariableName"||e.to-e.from<20&&HQ.test(t.state.sliceDoc(e.from,e.to));if(!i&&!t.explicit)return null;let n=[];for(let r=e;r;r=r.parent)IM.has(r.name)&&(n=n.concat(VM(t.state.doc,r)));return{options:n,from:i?e.from:t.pos,validFor:HQ}}const mF=["__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"}))),OF=[Wt("def ${name}(${params}):\n ${}",{label:"def",detail:"function",type:"keyword"}),Wt("for ${name} in ${collection}:\n ${}",{label:"for",detail:"loop",type:"keyword"}),Wt("while ${}:\n ${}",{label:"while",detail:"loop",type:"keyword"}),Wt("try:\n ${}\nexcept ${error}:\n ${}",{label:"try",detail:"/ except block",type:"keyword"}),Wt(`if \${}:
131
+
132
+ `,{label:"if",detail:"block",type:"keyword"}),Wt("if ${}:\n ${}\nelse:\n ${}",{label:"if",detail:"/ else block",type:"keyword"}),Wt("class ${name}:\n def __init__(self, ${params}):\n ${}",{label:"class",detail:"definition",type:"keyword"}),Wt("import ${module}",{label:"import",detail:"statement",type:"keyword"}),Wt("from ${module} import ${names}",{label:"from",detail:"import",type:"keyword"})],vF=SA(YM,$b(mF.concat(OF)));function oy(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 ay(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 ly=aa.define({name:"python",parser:fF.configure({props:[Ol.add({Body:t=>{var e;let i=/^\s*(#|$)/.test(t.textAfter)&&oy(t)||t.node;return(e=ay(t,i))!==null&&e!==void 0?e:t.continue()},MatchBody:t=>{var e;let i=oy(t);return(e=ay(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":Fp({closing:")"}),"DictionaryExpression DictionaryComprehensionExpression SetExpression SetComprehensionExpression":Fp({closing:"}"}),"ArrayExpression ArrayComprehensionExpression":Fp({closing:"]"}),MemberExpression:t=>t.baseIndent+t.unit,"String FormatString":()=>null,Script:t=>{var e;let i=oy(t);return(e=i&&ay(t,i))!==null&&e!==void 0?e:t.continue()}}),da.add({"ArrayExpression DictionaryExpression SetExpression TupleExpression":Tm,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 yF(){return new ul(ly,[ly.data.of({autocomplete:gF}),ly.data.of({autocomplete:vF})])}const SF={javascript:()=>PS({jsx:!0,typescript:!1}),typescript:()=>PS({jsx:!0,typescript:!0}),css:()=>qA(),html:()=>cM(),json:()=>pU(),markdown:()=>JU(),python:()=>yF()},bF=_e.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 xF({content:t,language:e,onContentChange:i,onSave:n}){const r=B.useRef(null),s=B.useRef(null),a=B.useRef(new md),c=B.useRef(i),h=B.useRef(n);c.current=i,h.current=n;const u=B.useCallback(f=>{const g=SF[f];return g?g():[]},[]);return B.useEffect(()=>{if(!r.current)return;const f=Nc.of([{key:"Mod-s",run:()=>{var S;return(S=h.current)==null||S.call(h),!0}}]),g=_e.updateListener.of(S=>{var x;S.docChanged&&((x=c.current)==null||x.call(c,S.state.doc.toString()))}),m=ct.create({doc:t||"",extensions:[G7(),R7(),J7(),Q7(),iI(),Rq(),qq(),OI(),RV(),k9(),a.current.of(u(e)),Nc.of([...y9,...CI,...V9,...Xq,...CA,S9]),f,qV,bF,g,_e.lineWrapping]}),v=new _e({state:m,parent:r.current});return s.current=v,()=>{v.destroy(),s.current=null}},[]),B.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]),B.useEffect(()=>{const f=s.current;f&&f.dispatch({effects:a.current.reconfigure(u(e))})},[e,u]),O.jsx("div",{ref:r,style:_F.container})}const _F={container:{flex:1,overflow:"hidden",display:"flex",flexDirection:"column"}},HM=new Set(["png","jpg","jpeg","gif","svg","webp","ico","bmp","avif"]),UM=new Set(["mp4","webm","mov","avi","mkv","ogv"]);function wF(t){var i;const e=(i=t.split(".").pop())==null?void 0:i.toLowerCase();return HM.has(e)||UM.has(e)}function kF({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=HM.has(e),s=UM.has(e);return O.jsxs("div",{style:Rs.container,children:[O.jsxs("div",{style:Rs.header,children:[O.jsx("span",{style:Rs.filename,children:n}),O.jsx("span",{style:Rs.badge,children:e.toUpperCase()})]}),O.jsxs("div",{style:Rs.preview,children:[r&&O.jsx("img",{src:i,alt:n,style:Rs.image,draggable:!1}),s&&O.jsx("video",{src:i,controls:!0,style:Rs.video,children:"Your browser does not support this video format."})]}),O.jsx("div",{style:Rs.footer,children:O.jsx("a",{href:i,target:"_blank",rel:"noopener noreferrer",style:Rs.link,children:"Open in new tab"})})]})}const Rs={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 GM=Object.defineProperty,CF=Object.getOwnPropertyDescriptor,TF=(t,e)=>{for(var i in e)GM(t,i,{get:e[i],enumerable:!0})},Ut=(t,e,i,n)=>{for(var r=n>1?void 0:n?CF(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&&GM(e,i,r),r},xe=(t,e)=>(i,n)=>e(i,n,t),UQ="Terminal input",LS={get:()=>UQ,set:t=>UQ=t},GQ="Too much output to announce, navigate to rows manually to read",XS={get:()=>GQ,set:t=>GQ=t};function QF(t){return t.replace(/\r?\n/g,"\r")}function $F(t,e){return e?"\x1B[200~"+t+"\x1B[201~":t}function PF(t,e){t.clipboardData&&t.clipboardData.setData("text/plain",e.selectionText),t.preventDefault()}function EF(t,e,i,n){if(t.stopPropagation(),t.clipboardData){let r=t.clipboardData.getData("text/plain");FM(r,e,i,n)}}function FM(t,e,i,n){t=QF(t),t=$F(t,i.decPrivateModes.bracketedPasteMode&&n.rawOptions.ignoreBracketedPasteMode!==!0),i.triggerDataEvent(t,!0),e.value=""}function KM(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 FQ(t,e,i,n,r){KM(t,e,i),r&&n.rightClickSelect(t),e.value=n.selectionText,e.select()}function Ho(t){return t>65535?(t-=65536,String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)}function jm(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 RF=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}},AF=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,u=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,x;for(;(x=this.interim[++S]&63)&&S<4;)v<<=6,v|=x;let w=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,_=w-S;for(;u<_;){if(u>=i)return 0;if(x=t[u++],(x&192)!==128){u--,m=!0;break}else this.interim[S++]=x,v<<=6,v|=x&63}m||(w===2?v<128?u--: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=u;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}},JM="",Ko=" ",Cd=class ez{constructor(){this.fg=0,this.bg=0,this.extended=new im}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 ez;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}},im=class tz{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 tz(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},dr=class iz extends Cd{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new im,this.combinedData=""}static fromCharData(e){let i=new iz;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?Ho(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()]}},KQ="di$target",NS="di$dependencies",cy=new Map;function MF(t){return t[NS]||[]}function $i(t){if(cy.has(t))return cy.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");zF(e,i,r)};return e._id=t,cy.set(t,e),e}function zF(t,e,i){e[KQ]===e?e[NS].push({id:t,index:i}):(e[NS]=[{id:t,index:i}],e[KQ]=e)}var on=$i("BufferService"),nz=$i("CoreMouseService"),vl=$i("CoreService"),jF=$i("CharsetService"),Fb=$i("InstantiationService"),rz=$i("LogService"),an=$i("OptionsService"),sz=$i("OscLinkService"),DF=$i("UnicodeService"),Td=$i("DecorationService"),ZS=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 dr,a=i.getTrimmedLength(),c=-1,h=-1,u=!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 u=s.extended.urlId!==c;else h!==-1&&(u=!0);if(u||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+(!u&&g===a-1?1:0),y:t}},S=!1;if(!(r!=null&&r.allowNonHttpProtocols))try{let x=new URL(m);["http:","https:"].includes(x.protocol)||(S=!0)}catch{S=!0}S||n.push({text:m,range:v,activate:(x,w)=>r?r.activate(x,w,v):BF(x,w),hover:(x,w)=>{var _;return(_=r==null?void 0:r.hover)==null?void 0:_.call(r,x,w,v)},leave:(x,w)=>{var _;return(_=r==null?void 0:r.leave)==null?void 0:_.call(r,x,w,v)}})}u=!1,s.hasExtendedAttrs()&&s.extended.urlId?(h=g,c=s.extended.urlId):(h=-1,c=-1)}}e(n)}};ZS=Ut([xe(0,on),xe(1,an),xe(2,sz)],ZS);function BF(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 Dm=$i("CharSizeService"),Fs=$i("CoreBrowserService"),Kb=$i("MouseService"),Ks=$i("RenderService"),LF=$i("SelectionService"),oz=$i("CharacterJoinerService"),Kc=$i("ThemeService"),az=$i("LinkProviderService"),XF=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(t){setTimeout(()=>{throw t.stack?JQ.isErrorNoTelemetry(t)?new JQ(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)}},NF=new XF;function rg(t){ZF(t)||NF.onUnexpectedError(t)}var WS="Canceled";function ZF(t){return t instanceof WF?!0:t instanceof Error&&t.name===WS&&t.message===WS}var WF=class extends Error{constructor(){super(WS),this.name=this.message}};function qF(t){return new Error(`Illegal argument: ${t}`)}var JQ=class qS extends Error{constructor(e){super(e),this.name="CodeExpectedError"}static fromError(e){if(e instanceof qS)return e;let i=new qS;return i.message=e.message,i.stack=e.stack,i}static isErrorNoTelemetry(e){return e.name==="CodeExpectedError"}},IS=class lz extends Error{constructor(e){super(e||"An unexpected bug occurred."),Object.setPrototypeOf(this,lz.prototype)}};function Dn(t,e=0){return t[t.length-(1+e)]}var IF;(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})(IF||(IF={}));function VF(t,e){let i=this,n=!1,r;return function(){return n||(n=!0,e||(r=t.apply(i,arguments))),r}}var cz;(t=>{function e(Q){return Q&&typeof Q=="object"&&typeof Q[Symbol.iterator]=="function"}t.is=e;let i=Object.freeze([]);function n(){return i}t.empty=n;function*r(Q){yield Q}t.single=r;function s(Q){return e(Q)?Q:r(Q)}t.wrap=s;function a(Q){return Q||i}t.from=a;function*c(Q){for(let M=Q.length-1;M>=0;M--)yield Q[M]}t.reverse=c;function h(Q){return!Q||Q[Symbol.iterator]().next().done===!0}t.isEmpty=h;function u(Q){return Q[Symbol.iterator]().next().value}t.first=u;function f(Q,M){let E=0;for(let L of Q)if(M(L,E++))return!0;return!1}t.some=f;function g(Q,M){for(let E of Q)if(M(E))return E}t.find=g;function*m(Q,M){for(let E of Q)M(E)&&(yield E)}t.filter=m;function*v(Q,M){let E=0;for(let L of Q)yield M(L,E++)}t.map=v;function*S(Q,M){let E=0;for(let L of Q)yield*M(L,E++)}t.flatMap=S;function*x(...Q){for(let M of Q)yield*M}t.concat=x;function w(Q,M,E){let L=E;for(let V of Q)L=M(L,V);return L}t.reduce=w;function*_(Q,M,E=Q.length){for(M<0&&(M+=Q.length),E<0?E+=Q.length:E>Q.length&&(E=Q.length);M<E;M++)yield Q[M]}t.slice=_;function T(Q,M=Number.POSITIVE_INFINITY){let E=[];if(M===0)return[E,Q];let L=Q[Symbol.iterator]();for(let V=0;V<M;V++){let H=L.next();if(H.done)return[E,t.empty()];E.push(H.value)}return[E,{[Symbol.iterator](){return L}}]}t.consume=T;async function C(Q){let M=[];for await(let E of Q)M.push(E);return Promise.resolve(M)}t.asyncToArray=C})(cz||(cz={}));function pl(t){if(cz.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 YF(...t){return Dt(()=>pl(t))}function Dt(t){return{dispose:VF(()=>{t()})}}var hz=class uz{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{pl(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?uz.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)}};hz.DISABLE_DISPOSED_WARNING=!1;var ta=hz,Ge=class{constructor(){this._store=new ta,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 Hc=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}},Ns=typeof window=="object"?window:globalThis,VS=class YS{constructor(e){this.element=e,this.next=YS.Undefined,this.prev=YS.Undefined}};VS.Undefined=new VS(void 0);var Xt=VS,e$=class{constructor(){this._first=Xt.Undefined,this._last=Xt.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Xt.Undefined}clear(){let t=this._first;for(;t!==Xt.Undefined;){let e=t.next;t.prev=Xt.Undefined,t.next=Xt.Undefined,t=e}this._first=Xt.Undefined,this._last=Xt.Undefined,this._size=0}unshift(t){return this._insert(t,!1)}push(t){return this._insert(t,!0)}_insert(t,e){let i=new Xt(t);if(this._first===Xt.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!==Xt.Undefined){let t=this._first.element;return this._remove(this._first),t}}pop(){if(this._last!==Xt.Undefined){let t=this._last.element;return this._remove(this._last),t}}_remove(t){if(t.prev!==Xt.Undefined&&t.next!==Xt.Undefined){let e=t.prev;e.next=t.next,t.next.prev=e}else t.prev===Xt.Undefined&&t.next===Xt.Undefined?(this._first=Xt.Undefined,this._last=Xt.Undefined):t.next===Xt.Undefined?(this._last=this._last.prev,this._last.next=Xt.Undefined):t.prev===Xt.Undefined&&(this._first=this._first.next,this._first.prev=Xt.Undefined);this._size-=1}*[Symbol.iterator](){let t=this._first;for(;t!==Xt.Undefined;)yield t.element,t=t.next}},HF=globalThis.performance&&typeof globalThis.performance.now=="function",UF=class dz{static create(e){return new dz(e)}constructor(e){this._now=HF&&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}},Bi;(t=>{t.None=()=>Ge.None;function e(R,j){return g(R,()=>{},0,void 0,!0,void 0,j)}t.defer=e;function i(R){return(j,P=null,N)=>{let $=!1,Z;return Z=R(z=>{if(!$)return Z?Z.dispose():$=!0,j.call(P,z)},null,N),$&&Z.dispose(),Z}}t.once=i;function n(R,j,P){return u((N,$=null,Z)=>R(z=>N.call($,j(z)),null,Z),P)}t.map=n;function r(R,j,P){return u((N,$=null,Z)=>R(z=>{j(z),N.call($,z)},null,Z),P)}t.forEach=r;function s(R,j,P){return u((N,$=null,Z)=>R(z=>j(z)&&N.call($,z),null,Z),P)}t.filter=s;function a(R){return R}t.signal=a;function c(...R){return(j,P=null,N)=>{let $=YF(...R.map(Z=>Z(z=>j.call(P,z))));return f($,N)}}t.any=c;function h(R,j,P,N){let $=P;return n(R,Z=>($=j($,Z),$),N)}t.reduce=h;function u(R,j){let P,N={onWillAddFirstListener(){P=R($.fire,$)},onDidRemoveLastListener(){P==null||P.dispose()}},$=new ve(N);return j==null||j.add($),$.event}function f(R,j){return j instanceof Array?j.push(R):j&&j.add(R),R}function g(R,j,P=100,N=!1,$=!1,Z,z){let q,F,D,I=0,ee,re={leakWarningThreshold:Z,onWillAddFirstListener(){q=R(fe=>{I++,F=j(F,fe),N&&!D&&(ce.fire(F),F=void 0),ee=()=>{let ge=F;F=void 0,D=void 0,(!N||I>1)&&ce.fire(ge),I=0},typeof P=="number"?(clearTimeout(D),D=setTimeout(ee,P)):D===void 0&&(D=0,queueMicrotask(ee))})},onWillRemoveListener(){$&&I>0&&(ee==null||ee())},onDidRemoveLastListener(){ee=void 0,q.dispose()}},ce=new ve(re);return z==null||z.add(ce),ce.event}t.debounce=g;function m(R,j=0,P){return t.debounce(R,(N,$)=>N?(N.push($),N):[$],j,void 0,!0,void 0,P)}t.accumulate=m;function v(R,j=(N,$)=>N===$,P){let N=!0,$;return s(R,Z=>{let z=N||!j(Z,$);return N=!1,$=Z,z},P)}t.latch=v;function S(R,j,P){return[t.filter(R,j,P),t.filter(R,N=>!j(N),P)]}t.split=S;function x(R,j=!1,P=[],N){let $=P.slice(),Z=R(F=>{$?$.push(F):q.fire(F)});N&&N.add(Z);let z=()=>{$==null||$.forEach(F=>q.fire(F)),$=null},q=new ve({onWillAddFirstListener(){Z||(Z=R(F=>q.fire(F)),N&&N.add(Z))},onDidAddFirstListener(){$&&(j?setTimeout(z):z())},onDidRemoveLastListener(){Z&&Z.dispose(),Z=null}});return N&&N.add(q),q.event}t.buffer=x;function w(R,j){return(P,N,$)=>{let Z=j(new T);return R(function(z){let q=Z.evaluate(z);q!==_&&P.call(N,q)},void 0,$)}}t.chain=w;let _=Symbol("HaltChainable");class T{constructor(){this.steps=[]}map(j){return this.steps.push(j),this}forEach(j){return this.steps.push(P=>(j(P),P)),this}filter(j){return this.steps.push(P=>j(P)?P:_),this}reduce(j,P){let N=P;return this.steps.push($=>(N=j(N,$),N)),this}latch(j=(P,N)=>P===N){let P=!0,N;return this.steps.push($=>{let Z=P||!j($,N);return P=!1,N=$,Z?$:_}),this}evaluate(j){for(let P of this.steps)if(j=P(j),j===_)break;return j}}function C(R,j,P=N=>N){let N=(...q)=>z.fire(P(...q)),$=()=>R.on(j,N),Z=()=>R.removeListener(j,N),z=new ve({onWillAddFirstListener:$,onDidRemoveLastListener:Z});return z.event}t.fromNodeEventEmitter=C;function Q(R,j,P=N=>N){let N=(...q)=>z.fire(P(...q)),$=()=>R.addEventListener(j,N),Z=()=>R.removeEventListener(j,N),z=new ve({onWillAddFirstListener:$,onDidRemoveLastListener:Z});return z.event}t.fromDOMEventEmitter=Q;function M(R){return new Promise(j=>i(R)(j))}t.toPromise=M;function E(R){let j=new ve;return R.then(P=>{j.fire(P)},()=>{j.fire(void 0)}).finally(()=>{j.dispose()}),j.event}t.fromPromise=E;function L(R,j){return R(P=>j.fire(P))}t.forward=L;function V(R,j,P){return j(P),R(N=>j(N))}t.runAndSubscribe=V;class H{constructor(j,P){this._observable=j,this._counter=0,this._hasChanged=!1;let N={onWillAddFirstListener:()=>{j.addObserver(this)},onDidRemoveLastListener:()=>{j.removeObserver(this)}};this.emitter=new ve(N),P&&P.add(this.emitter)}beginUpdate(j){this._counter++}handlePossibleChange(j){}handleChange(j,P){this._hasChanged=!0}endUpdate(j){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function U(R,j){return new H(R,j).emitter.event}t.fromObservable=U;function X(R){return(j,P,N)=>{let $=0,Z=!1,z={beginUpdate(){$++},endUpdate(){$--,$===0&&(R.reportChanges(),Z&&(Z=!1,j.call(P)))},handlePossibleChange(){},handleChange(){Z=!0}};R.addObserver(z),R.reportChanges();let q={dispose(){R.removeObserver(z)}};return N instanceof ta?N.add(q):Array.isArray(N)&&N.push(q),q}}t.fromObservableLight=X})(Bi||(Bi={}));var HS=class US{constructor(e){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${e}_${US._idPool++}`,US.all.add(this)}start(e){this._stopWatch=new UF,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}}};HS.all=new Set,HS._idPool=0;var GF=HS,FF=-1,fz=class pz{constructor(e,i,n=(pz._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 eK(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}};fz._idPool=1;var KF=fz,JF=class gz{constructor(e){this.value=e}static create(){let e=new Error;return new gz(e.stack??"")}print(){console.warn(this.value.split(`
150
+ `).slice(2).join(`
151
+ `))}},eK=class extends Error{constructor(t,e){super(t),this.name="ListenerLeakError",this.stack=e}},tK=class extends Error{constructor(t,e){super(t),this.name="ListenerRefusalError",this.stack=e}},iK=0,hy=class{constructor(t){this.value=t,this.id=iK++}},nK=2,rK,ve=class{constructor(e){var i,n,r,s;this._size=0,this._options=e,this._leakageMon=(i=this._options)!=null&&i.leakWarningThreshold?new KF((e==null?void 0:e.onListenerError)??rg,((n=this._options)==null?void 0:n.leakWarningThreshold)??FF):void 0,this._perfMon=(r=this._options)!=null&&r._profName?new GF(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,u,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 tK(`${m}. HINT: Stack shows most frequent listener (${v[1]}-times)`,v[0]);return(((c=this._options)==null?void 0:c.onListenerError)||rg)(S),Ge.None}if(this._disposed)return Ge.None;i&&(e=e.bind(i));let r=new hy(e),s;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(r.stack=JF.create(),s=this._leakageMon.check(r.stack,this._size+1)),this._listeners?this._listeners instanceof hy?(this._deliveryQueue??(this._deliveryQueue=new sK),this._listeners=[this._listeners,r]):this._listeners.push(r):((u=(h=this._options)==null?void 0:h.onWillAddFirstListener)==null||u.call(h,this),this._listeners=r,(g=(f=this._options)==null?void 0:f.onDidAddFirstListener)==null||g.call(f,this)),this._size++;let a=Dt(()=>{s==null||s(),this._removeListener(r)});return n instanceof ta?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*nK<=i.length){let u=0;for(let f=0;f<i.length;f++)i[f]?i[u++]=i[f]:r&&(this._deliveryQueue.end--,u<this._deliveryQueue.i&&this._deliveryQueue.i--);i.length=u}}_deliver(e,i){var r;if(!e)return;let n=((r=this._options)==null?void 0:r.onListenerError)||rg;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 hy)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}},sK=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}},GS=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}};GS.INSTANCE=new GS;var Jb=GS;function oK(t,e,i){typeof e=="string"&&(e=t.matchMedia(e)),e.addEventListener("change",i)}Jb.INSTANCE.onDidChangeZoomLevel;function aK(t){return Jb.INSTANCE.getZoomFactor(t)}Jb.INSTANCE.onDidChangeFullscreen;var Jc=typeof navigator=="object"?navigator.userAgent:"",FS=Jc.indexOf("Firefox")>=0,lK=Jc.indexOf("AppleWebKit")>=0,ex=Jc.indexOf("Chrome")>=0,cK=!ex&&Jc.indexOf("Safari")>=0;Jc.indexOf("Electron/")>=0;Jc.indexOf("Android")>=0;var uy=!1;if(typeof Ns.matchMedia=="function"){let t=Ns.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),e=Ns.matchMedia("(display-mode: fullscreen)");uy=t.matches,oK(Ns,t,({matches:i})=>{uy&&e.matches||(uy=i)})}var vc="en",KS=!1,JS=!1,sg=!1,mz=!1,Ap,og=vc,t$=vc,hK,br,il=globalThis,ji,W$;typeof il.vscode<"u"&&typeof il.vscode.process<"u"?ji=il.vscode.process:typeof process<"u"&&typeof((W$=process==null?void 0:process.versions)==null?void 0:W$.node)=="string"&&(ji=process);var q$,uK=typeof((q$=ji==null?void 0:ji.versions)==null?void 0:q$.electron)=="string",dK=uK&&(ji==null?void 0:ji.type)==="renderer",I$;if(typeof ji=="object"){KS=ji.platform==="win32",JS=ji.platform==="darwin",sg=ji.platform==="linux",sg&&ji.env.SNAP&&ji.env.SNAP_REVISION,ji.env.CI||ji.env.BUILD_ARTIFACTSTAGINGDIRECTORY,Ap=vc,og=vc;let t=ji.env.VSCODE_NLS_CONFIG;if(t)try{let e=JSON.parse(t);Ap=e.userLocale,t$=e.osLocale,og=e.resolvedLanguage||vc,hK=(I$=e.languagePack)==null?void 0:I$.translationsConfigFile}catch{}mz=!0}else typeof navigator=="object"&&!dK?(br=navigator.userAgent,KS=br.indexOf("Windows")>=0,JS=br.indexOf("Macintosh")>=0,(br.indexOf("Macintosh")>=0||br.indexOf("iPad")>=0||br.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,sg=br.indexOf("Linux")>=0,(br==null?void 0:br.indexOf("Mobi"))>=0,og=globalThis._VSCODE_NLS_LANGUAGE||vc,Ap=navigator.language.toLowerCase(),t$=Ap):console.error("Unable to resolve platform.");var Oz=KS,ns=JS,fK=sg,i$=mz,ss=br,No=og,pK;(t=>{function e(){return No}t.value=e;function i(){return No.length===2?No==="en":No.length>=3?No[0]==="e"&&No[1]==="n"&&No[2]==="-":!1}t.isDefaultVariant=i;function n(){return No==="en"}t.isDefault=n})(pK||(pK={}));var gK=typeof il.postMessage=="function"&&!il.importScripts;(()=>{if(gK){let t=[];il.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}),il.postMessage({vscodeScheduleAsyncWork:n},"*")}}return t=>setTimeout(t)})();var mK=!!(ss&&ss.indexOf("Chrome")>=0);ss&&ss.indexOf("Firefox")>=0;!mK&&ss&&ss.indexOf("Safari")>=0;ss&&ss.indexOf("Edg/")>=0;ss&&ss.indexOf("Android")>=0;var ac=typeof navigator=="object"?navigator:{};i$||document.queryCommandSupported&&document.queryCommandSupported("copy")||ac&&ac.clipboard&&ac.clipboard.writeText,i$||ac&&ac.clipboard&&ac.clipboard.readText;var tx=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}},dy=new tx,n$=new tx,r$=new tx,OK=new Array(230),vz;(t=>{function e(c){return dy.keyCodeToStr(c)}t.toString=e;function i(c){return dy.strToKeyCode(c)}t.fromString=i;function n(c){return n$.keyCodeToStr(c)}t.toUserSettingsUS=n;function r(c){return r$.keyCodeToStr(c)}t.toUserSettingsGeneral=r;function s(c){return n$.strToKeyCode(c)||r$.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 dy.keyCodeToStr(c)}t.toElectronAccelerator=a})(vz||(vz={}));var vK=class yz{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 yz&&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 yK([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},yK=class{constructor(t){if(t.length===0)throw qF("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 SK(t){if(t.charCode){let i=String.fromCharCode(t.charCode).toUpperCase();return vz.fromString(i)}let e=t.keyCode;if(e===3)return 7;if(FS)switch(e){case 59:return 85;case 60:if(fK)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(ns)return 57;break}else if(lK&&(ns&&e===93||!ns&&e===92))return 57;return OK[e]||0}var bK=ns?256:2048,xK=512,_K=1024,wK=ns?2048:256,s$=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=SK(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|=bK),this.altKey&&(e|=xK),this.shiftKey&&(e|=_K),this.metaKey&&(e|=wK),e|=t,e}_computeKeyCodeChord(){let t=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(t=this.keyCode),new vK(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,t)}},o$=new WeakMap;function kK(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 CK=class{static getSameOriginWindowChain(t){let e=o$.get(t);if(!e){e=[],o$.set(t,e);let i=t,n;do n=kK(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}}},Mp=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=CK.getPositionOfChildWindowRelativeToAncestorWindow(t,e.view);this.posx-=i.left,this.posy-=i.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},a$=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(ex){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?FS&&!ns?this.deltaY=-t.deltaY/3:this.deltaY=-t.deltaY:this.deltaY=-t.deltaY/40}if(typeof s.wheelDeltaX<"u")cK&&Oz?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?FS&&!ns?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()}},Sz=Object.freeze(function(t,e){let i=setTimeout(t.bind(e),0);return{dispose(){clearTimeout(i)}}}),TK;(t=>{function e(i){return i===t.None||i===t.Cancelled||i instanceof QK?!0:!i||typeof i!="object"?!1:typeof i.isCancellationRequested=="boolean"&&typeof i.onCancellationRequested=="function"}t.isCancellationToken=e,t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Bi.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Sz})})(TK||(TK={}));var QK=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?Sz:(this._emitter||(this._emitter=new ve),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},ix=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 IS("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,t()},e)}setIfNotSet(t,e){if(this._isDisposed)throw new IS("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,t()},e))}},$K=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 IS("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let n=i.setInterval(()=>{t()},e);this.disposable=Dt(()=>{i.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},PK;(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})(PK||(PK={}));var l$=class sr{static fromArray(e){return new sr(i=>{i.emitMany(e)})}static fromPromise(e){return new sr(async i=>{i.emitMany(await e)})}static fromPromises(e){return new sr(async i=>{await Promise.all(e.map(async n=>i.emitOne(await n)))})}static merge(e){return new sr(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 Bi.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 sr(async n=>{for await(let r of e)n.emitOne(i(r))})}map(e){return sr.map(this,e)}static filter(e,i){return new sr(async n=>{for await(let r of e)i(r)&&n.emitOne(r)})}filter(e){return sr.filter(this,e)}static coalesce(e){return sr.filter(e,i=>!!i)}coalesce(){return sr.coalesce(this)}static async toPromise(e){let i=[];for await(let n of e)i.push(n);return i}toPromise(){return sr.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())}};l$.EMPTY=l$.fromArray([]);var{getWindow:Jr,getWindowId:EK,onDidRegisterWindow:RK}=(function(){let t=new Map,e={window:Ns,disposables:new ta};t.set(Ns.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 ta,h={window:a,disposables:c.add(new ta)};return t.set(a.vscodeWindowId,h),c.add(Dt(()=>{t.delete(a.vscodeWindowId),n.fire(a)})),c.add(Le(a,_i.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 u;let c=a;if((u=c==null?void 0:c.ownerDocument)!=null&&u.defaultView)return c.ownerDocument.defaultView.window;let h=a;return h!=null&&h.view?h.view.window:Ns},getDocument(a){return Jr(a).document}}})(),AK=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 Le(t,e,i,n){return new AK(t,e,i,n)}var c$=function(t,e,i,n){return Le(t,e,i,n)},nx,MK=class extends $K{constructor(t){super(),this.defaultTarget=t&&Jr(t)}cancelAndSet(t,e,i){return super.cancelAndSet(t,e,i??this.defaultTarget)}},h$=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){rg(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(h$.sort),a.shift().execute();n.set(s,!1)};nx=(s,a,c=0)=>{let h=EK(s),u=new h$(a,c),f=t.get(h);return f||(f=[],t.set(h,f)),f.push(u),i.get(h)||(i.set(h,!0),s.requestAnimationFrame(()=>r(h))),u}})();function zK(t){let e=t.getBoundingClientRect(),i=Jr(t);return{left:e.left+i.scrollX,top:e.top+i.scrollY,width:e.width,height:e.height}}var _i={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"},jK=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=Sn(t);this._maxWidth!==e&&(this._maxWidth=e,this.domNode.style.maxWidth=this._maxWidth)}setWidth(t){let e=Sn(t);this._width!==e&&(this._width=e,this.domNode.style.width=this._width)}setHeight(t){let e=Sn(t);this._height!==e&&(this._height=e,this.domNode.style.height=this._height)}setTop(t){let e=Sn(t);this._top!==e&&(this._top=e,this.domNode.style.top=this._top)}setLeft(t){let e=Sn(t);this._left!==e&&(this._left=e,this.domNode.style.left=this._left)}setBottom(t){let e=Sn(t);this._bottom!==e&&(this._bottom=e,this.domNode.style.bottom=this._bottom)}setRight(t){let e=Sn(t);this._right!==e&&(this._right=e,this.domNode.style.right=this._right)}setPaddingTop(t){let e=Sn(t);this._paddingTop!==e&&(this._paddingTop=e,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(t){let e=Sn(t);this._paddingLeft!==e&&(this._paddingLeft=e,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(t){let e=Sn(t);this._paddingBottom!==e&&(this._paddingBottom=e,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(t){let e=Sn(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=Sn(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=Sn(t);this._lineHeight!==e&&(this._lineHeight=e,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(t){let e=Sn(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 Sn(t){return typeof t=="number"?`${t}px`:t}function Ru(t){return new jK(t)}var bz=class{constructor(){this._hooks=new ta,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(Dt(()=>{try{t.releasePointerCapture(e)}catch{}}))}catch{s=Jr(t)}this._hooks.add(Le(s,_i.POINTER_MOVE,a=>{if(a.buttons!==i){this.stopMonitoring(!0);return}a.preventDefault(),this._pointerMoveCallback(a)})),this._hooks.add(Le(s,_i.POINTER_UP,a=>this.stopMonitoring(!0)))}};function DK(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 Ir;(t=>(t.Tap="-xterm-gesturetap",t.Change="-xterm-gesturechange",t.Start="-xterm-gesturestart",t.End="-xterm-gesturesend",t.Contextmenu="-xterm-gesturecontextmenu"))(Ir||(Ir={}));var Ou=class Yi extends Ge{constructor(){super(),this.dispatched=!1,this.targets=new e$,this.ignoreTargets=new e$,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(Bi.runAndSubscribe(RK,({window:e,disposables:i})=>{i.add(Le(e.document,"touchstart",n=>this.onTouchStart(n),{passive:!1})),i.add(Le(e.document,"touchend",n=>this.onTouchEnd(e,n))),i.add(Le(e.document,"touchmove",n=>this.onTouchMove(n),{passive:!1}))},{window:Ns,disposables:this._store}))}static addTarget(e){if(!Yi.isTouchDevice())return Ge.None;Yi.INSTANCE||(Yi.INSTANCE=new Yi);let i=Yi.INSTANCE.targets.push(e);return Dt(i)}static ignoreTarget(e){if(!Yi.isTouchDevice())return Ge.None;Yi.INSTANCE||(Yi.INSTANCE=new Yi);let i=Yi.INSTANCE.ignoreTargets.push(e);return Dt(i)}static isTouchDevice(){return"ontouchstart"in Ns||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(Ir.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],u=Date.now()-h.initialTimeStamp;if(u<Yi.HOLD_DELAY&&Math.abs(h.initialPageX-Dn(h.rollingPageX))<30&&Math.abs(h.initialPageY-Dn(h.rollingPageY))<30){let f=this.newGestureEvent(Ir.Tap,h.initialTarget);f.pageX=Dn(h.rollingPageX),f.pageY=Dn(h.rollingPageY),this.dispatchEvent(f)}else if(u>=Yi.HOLD_DELAY&&Math.abs(h.initialPageX-Dn(h.rollingPageX))<30&&Math.abs(h.initialPageY-Dn(h.rollingPageY))<30){let f=this.newGestureEvent(Ir.Contextmenu,h.initialTarget);f.pageX=Dn(h.rollingPageX),f.pageY=Dn(h.rollingPageY),this.dispatchEvent(f)}else if(r===1){let f=Dn(h.rollingPageX),g=Dn(h.rollingPageY),m=Dn(h.rollingTimestamps)-h.rollingTimestamps[0],v=f-h.rollingPageX[0],S=g-h.rollingPageY[0],x=[...this.targets].filter(w=>h.initialTarget instanceof Node&&w.contains(h.initialTarget));this.inertia(e,x,n,Math.abs(v)/m,v>0?1:-1,f,Math.abs(S)/m,S>0?1:-1,g)}this.dispatchEvent(this.newGestureEvent(Ir.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===Ir.Tap){let i=new Date().getTime(),n=0;i-this._lastSetTapCountTime>Yi.CLEAR_TAP_COUNT_TIME?n=1:n=2,this._lastSetTapCountTime=i,e.tapCount=n}else(e.type===Ir.Change||e.type===Ir.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,u){this.handle=nx(e,()=>{let f=Date.now(),g=f-n,m=0,v=0,S=!0;r+=Yi.SCROLL_FRICTION*g,c+=Yi.SCROLL_FRICTION*g,r>0&&(S=!1,m=s*r*g),c>0&&(S=!1,v=h*c*g);let x=this.newGestureEvent(Ir.Change);x.translationX=m,x.translationY=v,i.forEach(w=>w.dispatchEvent(x)),S||this.inertia(e,i,f,r,s,a+m,c,h,u+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(Ir.Change,a.initialTarget);c.translationX=s.pageX-Dn(a.rollingPageX),c.translationY=s.pageY-Dn(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)}};Ou.SCROLL_FRICTION=-.005,Ou.HOLD_DELAY=700,Ou.CLEAR_TAP_COUNT_TIME=400,Ut([DK],Ou,"isTouchDevice",1);var BK=Ou,rx=class extends Ge{onclick(t,e){this._register(Le(t,_i.CLICK,i=>e(new Mp(Jr(t),i))))}onmousedown(t,e){this._register(Le(t,_i.MOUSE_DOWN,i=>e(new Mp(Jr(t),i))))}onmouseover(t,e){this._register(Le(t,_i.MOUSE_OVER,i=>e(new Mp(Jr(t),i))))}onmouseleave(t,e){this._register(Le(t,_i.MOUSE_LEAVE,i=>e(new Mp(Jr(t),i))))}onkeydown(t,e){this._register(Le(t,_i.KEY_DOWN,i=>e(new s$(i))))}onkeyup(t,e){this._register(Le(t,_i.KEY_UP,i=>e(new s$(i))))}oninput(t,e){this._register(Le(t,_i.INPUT,e))}onblur(t,e){this._register(Le(t,_i.BLUR,e))}onfocus(t,e){this._register(Le(t,_i.FOCUS,e))}onchange(t,e){this._register(Le(t,_i.CHANGE,e))}ignoreGesture(t){return BK.ignoreTarget(t)}},u$=11,LK=class extends rx{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=u$+"px",this.domNode.style.height=u$+"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 bz),this._register(c$(this.bgDomNode,_i.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._register(c$(this.domNode,_i.POINTER_DOWN,e=>this._arrowPointerDown(e))),this._pointerdownRepeatTimer=this._register(new MK),this._pointerdownScheduleRepeatTimer=this._register(new ix)}_arrowPointerDown(t){if(!t.target||!(t.target instanceof Element))return;let e=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,Jr(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()}},XK=class e1{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 e1(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 e1(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}}},NK=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 XK(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 f$(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=f$.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)))}},d$=class{constructor(t,e,i){this.scrollLeft=t,this.scrollTop=e,this.isDone=i}};function fy(t,e){let i=e-t;return function(n){return t+i*qK(n)}}function ZK(t,e,i){return function(n){return n<i?t(n/i):e((n-i)/(1-i))}}var f$=class t1{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),ZK(fy(e,r),fy(s,i),.33)}return fy(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 d$(n,r,!1)}return new d$(this.to.scrollLeft,this.to.scrollTop,!0)}combine(e,i,n){return t1.start(e,i,n)}static start(e,i,n){n=n+10;let r=Date.now()-10;return new t1(e,i,r,n)}};function WK(t){return Math.pow(t,3)}function qK(t){return 1-WK(1-t)}var IK=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 ix)}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":"")))}},VK=140,xz=class extends rx{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 IK(t.visibility,"visible scrollbar "+t.extraScrollbarClassName,"invisible scrollbar "+t.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new bz),this._shouldRender=!0,this.domNode=Ru(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(Le(this.domNode.domNode,_i.POINTER_DOWN,e=>this._domNodePointerDown(e)))}_createArrow(t){let e=this._register(new LK(t));this.domNode.domNode.appendChild(e.bgDomNode),this.domNode.domNode.appendChild(e.domNode)}_createSlider(t,e,i,n){this.slider=Ru(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(Le(this.slider.domNode,_i.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=zK(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(Oz&&a>VK){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()}},_z=class i1{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 i1(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 u=Math.round(Math.max(20,Math.floor(n*c/r))),f=(c-u)/(r-n),g=s*f;return{computedAvailableSize:Math.round(a),computedIsNeeded:h,computedSliderSize:Math.round(u),computedSliderRatio:f,computedSliderPosition:Math.round(g)}}_refreshComputedValues(){let e=i1._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)}},YK=class extends xz{constructor(t,e,i){let n=t.getScrollDimensions(),r=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:i,scrollbarState:new _z(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}},HK=class extends xz{constructor(t,e,i){let n=t.getScrollDimensions(),r=t.getCurrentScrollPosition();if(super({lazyRender:e.lazyRender,host:i,scrollbarState:new _z(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}},UK=500,p$=50,GK=class{constructor(t,e,i){this.timestamp=t,this.deltaX=e,this.deltaY=i,this.score=0}},n1=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(ex){let i=Jr(e.browserEvent),n=aK(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 GK(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),u=Math.max(Math.min(s,c),1),f=Math.max(r,a),g=Math.max(s,c);f%h===0&&g%u===0&&(n-=.5)}return Math.min(Math.max(n,0),1)}_isAlmostInt(e){return Math.abs(Math.round(e)-e)<.01}};n1.INSTANCE=new n1;var FK=n1,KK=class extends rx{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=eJ(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 HK(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new YK(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=Ru(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=Ru(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=Ru(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 ix),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=pl(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,ns&&(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 a$(t))}_setListeningToMouseWheel(t){if(this._mouseWheelToDispose.length>0!==t&&(this._mouseWheelToDispose=pl(this._mouseWheelToDispose),t)){let e=i=>{this._onMouseWheel(new a$(i))};this._mouseWheelToDispose.push(Le(this._listenOnDomNode,_i.MOUSE_WHEEL,e,{passive:!1}))}}_onMouseWheel(t){var r;if((r=t.browserEvent)!=null&&r.defaultPrevented)return;let e=FK.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=!ns&&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(),u={};if(s){let f=p$*s,g=h.scrollTop-(f<0?Math.floor(f):Math.ceil(f));this._verticalScrollbar.writeScrollPosition(u,g)}if(a){let f=p$*a,g=h.scrollLeft-(f<0?Math.floor(f):Math.ceil(f));this._horizontalScrollbar.writeScrollPosition(u,g)}u=this._scrollable.validateScrollPosition(u),(h.scrollLeft!==u.scrollLeft||h.scrollTop!==u.scrollTop)&&(this._options.mouseWheelSmoothScroll&&e.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(u):this._scrollable.setScrollPositionNow(u),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(),UK)}},JK=class extends KK{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 eJ(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,ns&&(e.className+=" mac"),e}var r1=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 NK({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:u=>nx(n.window,u)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{h.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new JK(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(u=>{this._scrollableElement.updateOptions({handleMouseWheel:!(u&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(Bi.runAndSubscribe(s.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=s.colors.background.css})),t.appendChild(this._scrollableElement.getDomNode()),this._register(Dt(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=n.mainDocument.createElement("style"),e.appendChild(this._styleElement),this._register(Dt(()=>this._styleElement.remove())),this._register(Bi.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(u=>this._handleScroll(u)))}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}};r1=Ut([xe(2,on),xe(3,Fs),xe(4,nz),xe(5,Kc),xe(6,an),xe(7,Ks)],r1);var s1=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(Dt(()=>{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()}};s1=Ut([xe(1,on),xe(2,Fs),xe(3,Td),xe(4,Ks)],s1);var tJ=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)}},Zr={full:0,left:0,center:0,right:0},Zo={full:0,left:0,center:0,right:0},ou={full:0,left:0,center:0,right:0},nm=class extends Ge{constructor(t,e,i,n,r,s,a,c){var u;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 tJ,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(),(u=this._viewportElement.parentElement)==null||u.insertBefore(this._canvas,this._viewportElement),this._register(Dt(()=>{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);Zo.full=this._canvas.width,Zo.left=t,Zo.center=e,Zo.right=t,this._refreshDrawHeightConstants(),ou.full=1,ou.left=1,ou.center=1+Zo.left,ou.right=1+Zo.left+Zo.center}_refreshDrawHeightConstants(){Zr.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);Zr.left=e,Zr.center=e,Zr.right=e}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Zr.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(ou[t.position||"full"],Math.round((this._canvas.height-1)*(t.startBufferLine/this._bufferService.buffers.active.lines.length)-Zr[t.position||"full"]/2),Zo[t.position||"full"],Math.round((this._canvas.height-1)*((t.endBufferLine-t.startBufferLine)/this._bufferService.buffers.active.lines.length)+Zr[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}))}};nm=Ut([xe(2,on),xe(3,Td),xe(4,Ks),xe(5,an),xe(6,Kc),xe(7,Fs)],nm);var de;(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=""))(de||(de={}));var ag;(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="Ÿ"))(ag||(ag={}));var wz;(t=>t.ST=`${de.ESC}\\`)(wz||(wz={}));var o1=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(`${de.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)}}};o1=Ut([xe(2,on),xe(3,an),xe(4,vl),xe(5,Ks)],o1);var wi=0,ki=0,Ci=0,Yt=0,g$={css:"#00000000",rgba:0},hi;(t=>{function e(r,s,a,c){return c!==void 0?`#${Ba(r)}${Ba(s)}${Ba(a)}${Ba(c)}`:`#${Ba(r)}${Ba(s)}${Ba(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})(hi||(hi={}));var At;(t=>{function e(h,u){if(Yt=(u.rgba&255)/255,Yt===1)return{css:u.css,rgba:u.rgba};let f=u.rgba>>24&255,g=u.rgba>>16&255,m=u.rgba>>8&255,v=h.rgba>>24&255,S=h.rgba>>16&255,x=h.rgba>>8&255;wi=v+Math.round((f-v)*Yt),ki=S+Math.round((g-S)*Yt),Ci=x+Math.round((m-x)*Yt);let w=hi.toCss(wi,ki,Ci),_=hi.toRgba(wi,ki,Ci);return{css:w,rgba:_}}t.blend=e;function i(h){return(h.rgba&255)===255}t.isOpaque=i;function n(h,u,f){let g=lg.ensureContrastRatio(h.rgba,u.rgba,f);if(g)return hi.toColor(g>>24&255,g>>16&255,g>>8&255)}t.ensureContrastRatio=n;function r(h){let u=(h.rgba|255)>>>0;return[wi,ki,Ci]=lg.toChannels(u),{css:hi.toCss(wi,ki,Ci),rgba:u}}t.opaque=r;function s(h,u){return Yt=Math.round(u*255),[wi,ki,Ci]=lg.toChannels(h.rgba),{css:hi.toCss(wi,ki,Ci,Yt),rgba:hi.toRgba(wi,ki,Ci,Yt)}}t.opacity=s;function a(h,u){return Yt=h.rgba&255,s(h,Yt*u/255)}t.multiplyOpacity=a;function c(h){return[h.rgba>>24&255,h.rgba>>16&255,h.rgba>>8&255]}t.toColorRGB=c})(At||(At={}));var Zt;(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),hi.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),Yt=parseInt(r.slice(4,5).repeat(2),16),hi.toColor(wi,ki,Ci,Yt);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]),Yt=Math.round((s[5]===void 0?1:parseFloat(s[5]))*255),hi.toColor(wi,ki,Ci,Yt);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,Yt]=e.getImageData(0,0,1,1).data,Yt!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:hi.toRgba(wi,ki,Ci,Yt),css:r}}t.toColor=n})(Zt||(Zt={}));var tn;(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,u=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 u*.2126+f*.7152+g*.0722}t.relativeLuminance2=i})(tn||(tn={}));var lg;(t=>{function e(a,c){if(Yt=(c&255)/255,Yt===1)return c;let h=c>>24&255,u=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)*Yt),ki=m+Math.round((u-m)*Yt),Ci=v+Math.round((f-v)*Yt),hi.toRgba(wi,ki,Ci)}t.blend=e;function i(a,c,h){let u=tn.relativeLuminance(a>>8),f=tn.relativeLuminance(c>>8);if(As(u,f)<h){if(f<u){let v=n(a,c,h),S=As(u,tn.relativeLuminance(v>>8));if(S<h){let x=r(a,c,h),w=As(u,tn.relativeLuminance(x>>8));return S>w?v:x}return v}let g=r(a,c,h),m=As(u,tn.relativeLuminance(g>>8));if(m<h){let v=n(a,c,h),S=As(u,tn.relativeLuminance(v>>8));return m>S?g:v}return g}}t.ensureContrastRatio=i;function n(a,c,h){let u=a>>24&255,f=a>>16&255,g=a>>8&255,m=c>>24&255,v=c>>16&255,S=c>>8&255,x=As(tn.relativeLuminance2(m,v,S),tn.relativeLuminance2(u,f,g));for(;x<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)),x=As(tn.relativeLuminance2(m,v,S),tn.relativeLuminance2(u,f,g));return(m<<24|v<<16|S<<8|255)>>>0}t.reduceLuminance=n;function r(a,c,h){let u=a>>24&255,f=a>>16&255,g=a>>8&255,m=c>>24&255,v=c>>16&255,S=c>>8&255,x=As(tn.relativeLuminance2(m,v,S),tn.relativeLuminance2(u,f,g));for(;x<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)),x=As(tn.relativeLuminance2(m,v,S),tn.relativeLuminance2(u,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})(lg||(lg={}));function Ba(t){let e=t.toString(16);return e.length<2?"0"+e:e}function As(t,e){return t<e?(e+.05)/(t+.05):(t+.05)/(e+.05)}var iJ=class extends Cd{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()]}},rm=class{constructor(t){this._bufferService=t,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new dr}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 u=0;u<e.getTrimmedLength();u++)if(e.loadCell(u,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==c||this._workCell.bg!==h){if(u-r>1){let f=this._getJoinedRanges(n,a,s,e,r);for(let g=0;g<f.length;g++)i.push(f[g])}r=u,a=s,c=this._workCell.fg,h=this._workCell.bg}s+=this._workCell.getChars().length||Ko.length}if(this._bufferService.cols-r>1){let u=this._getJoinedRanges(n,a,s,e,r);for(let f=0;f<u.length;f++)i.push(u[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 u=0;u<h.length;u++)rm._mergeRanges(a,h[u])}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),u=e.getString(c).length||Ko.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+=u}}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}};rm=Ut([xe(0,on)],rm);function nJ(t){return 57508<=t&&t<=57558}function rJ(t){return 9472<=t&&t<=9631}function sJ(t){return nJ(t)||rJ(t)}function oJ(){return{css:{canvas:zp(),cell:zp()},device:{canvas:zp(),cell:zp(),char:{width:0,height:0,left:0,top:0}}}}function zp(){return{width:0,height:0}}var a1=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 dr,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,u,f){let g=[],m=this._characterJoinerService.getJoinedCharacters(e),v=this._themeService.colors,S=t.getNoBgTrimmedLength();i&&S<s+1&&(S=s+1);let x,w=0,_="",T=0,C=0,Q=0,M=0,E=!1,L=0,V=!1,H=0,U=0,X=[],R=u!==-1&&f!==-1;for(let j=0;j<S;j++){t.loadCell(j,this._workCell);let P=this._workCell.getWidth();if(P===0)continue;let N=!1,$=j>=U,Z=j,z=this._workCell;if(m.length>0&&j===m[0][0]&&$){let Oe=m.shift(),Xe=this._isCellInSelection(Oe[0],e);for(T=Oe[0]+1;T<Oe[1];T++)$&&($=Xe===this._isCellInSelection(T,e));$&&($=!i||s<Oe[0]||s>=Oe[1]),$?(N=!0,z=new iJ(this._workCell,t.translateToString(!0,Oe[0],Oe[1]),Oe[1]-Oe[0]),Z=Oe[1]-1,P=z.getWidth()):U=Oe[1]}let q=this._isCellInSelection(j,e),F=i&&j===s,D=R&&j>=u&&j<=f,I=!1;this._decorationService.forEachDecorationAtCell(j,e,void 0,Oe=>{I=!0});let ee=z.getChars()||Ko;if(ee===" "&&(z.isUnderline()||z.isOverline())&&(ee=" "),H=P*c-h.get(ee,z.isBold(),z.isItalic()),!x)x=this._document.createElement("span");else if(w&&(q&&V||!q&&!V&&z.bg===C)&&(q&&V&&v.selectionForeground||z.fg===Q)&&z.extended.ext===M&&D===E&&H===L&&!F&&!N&&!I&&$){z.isInvisible()?_+=Ko:_+=ee,w++;continue}else w&&(x.textContent=_),x=this._document.createElement("span"),w=0,_="";if(C=z.bg,Q=z.fg,M=z.extended.ext,E=D,L=H,V=q,N&&s>=j&&s<=Z&&(s=j),!this._coreService.isCursorHidden&&F&&this._coreService.isCursorInitialized){if(X.push("xterm-cursor"),this._coreBrowserService.isFocused)a&&X.push("xterm-cursor-blink"),X.push(n==="bar"?"xterm-cursor-bar":n==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(r)switch(r){case"outline":X.push("xterm-cursor-outline");break;case"block":X.push("xterm-cursor-block");break;case"bar":X.push("xterm-cursor-bar");break;case"underline":X.push("xterm-cursor-underline");break}}if(z.isBold()&&X.push("xterm-bold"),z.isItalic()&&X.push("xterm-italic"),z.isDim()&&X.push("xterm-dim"),z.isInvisible()?_=Ko:_=z.getChars()||Ko,z.isUnderline()&&(X.push(`xterm-underline-${z.extended.underlineStyle}`),_===" "&&(_=" "),!z.isUnderlineColorDefault()))if(z.isUnderlineColorRGB())x.style.textDecorationColor=`rgb(${Cd.toColorRGB(z.getUnderlineColor()).join(",")})`;else{let Oe=z.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&z.isBold()&&Oe<8&&(Oe+=8),x.style.textDecorationColor=v.ansi[Oe].css}z.isOverline()&&(X.push("xterm-overline"),_===" "&&(_=" ")),z.isStrikethrough()&&X.push("xterm-strikethrough"),D&&(x.style.textDecoration="underline");let re=z.getFgColor(),ce=z.getFgColorMode(),fe=z.getBgColor(),ge=z.getBgColorMode(),pe=!!z.isInverse();if(pe){let Oe=re;re=fe,fe=Oe;let Xe=ce;ce=ge,ge=Xe}let te,we,Re=!1;this._decorationService.forEachDecorationAtCell(j,e,void 0,Oe=>{Oe.options.layer!=="top"&&Re||(Oe.backgroundColorRGB&&(ge=50331648,fe=Oe.backgroundColorRGB.rgba>>8&16777215,te=Oe.backgroundColorRGB),Oe.foregroundColorRGB&&(ce=50331648,re=Oe.foregroundColorRGB.rgba>>8&16777215,we=Oe.foregroundColorRGB),Re=Oe.options.layer==="top")}),!Re&&q&&(te=this._coreBrowserService.isFocused?v.selectionBackgroundOpaque:v.selectionInactiveBackgroundOpaque,fe=te.rgba>>8&16777215,ge=50331648,Re=!0,v.selectionForeground&&(ce=50331648,re=v.selectionForeground.rgba>>8&16777215,we=v.selectionForeground)),Re&&X.push("xterm-decoration-top");let Ce;switch(ge){case 16777216:case 33554432:Ce=v.ansi[fe],X.push(`xterm-bg-${fe}`);break;case 50331648:Ce=hi.toColor(fe>>16,fe>>8&255,fe&255),this._addStyle(x,`background-color:#${m$((fe>>>0).toString(16),"0",6)}`);break;case 0:default:pe?(Ce=v.foreground,X.push("xterm-bg-257")):Ce=v.background}switch(te||z.isDim()&&(te=At.multiplyOpacity(Ce,.5)),ce){case 16777216:case 33554432:z.isBold()&&re<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(re+=8),this._applyMinimumContrast(x,Ce,v.ansi[re],z,te,void 0)||X.push(`xterm-fg-${re}`);break;case 50331648:let Oe=hi.toColor(re>>16&255,re>>8&255,re&255);this._applyMinimumContrast(x,Ce,Oe,z,te,we)||this._addStyle(x,`color:#${m$(re.toString(16),"0",6)}`);break;case 0:default:this._applyMinimumContrast(x,Ce,v.foreground,z,te,we)||pe&&X.push("xterm-fg-257")}X.length&&(x.className=X.join(" "),X.length=0),!F&&!N&&!I&&$?w++:x.textContent=_,H!==this.defaultSpacing&&(x.style.letterSpacing=`${H}px`),g.push(x),j=Z}return x&&w&&(x.textContent=_),g}_applyMinimumContrast(t,e,i,n,r,s){if(this._optionsService.rawOptions.minimumContrastRatio===1||sJ(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=At.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]}};a1=Ut([xe(1,oz),xe(2,an),xe(3,Fs),xe(4,vl),xe(5,Td),xe(6,Kc)],a1);function m$(t,e,i){for(;t.length<i;)t=e+t;return t}var aJ=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}},lJ=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 cJ(){return new lJ}var py="xterm-dom-renderer-owner-",rr="xterm-rows",jp="xterm-fg-",O$="xterm-bg-",au="xterm-focus",Dp="xterm-selection",hJ=1,l1=class extends Ge{constructor(t,e,i,n,r,s,a,c,h,u,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=u,this._bufferService=f,this._coreService=g,this._coreBrowserService=m,this._themeService=v,this._terminalClass=hJ++,this._rowElements=[],this._selectionRenderModel=cJ(),this.onRequestRedraw=this._register(new ve).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(rr),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(Dp),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=oJ(),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(a1,document),this._element.classList.add(py+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(Dt(()=>{this._element.classList.remove(py+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new aJ(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} .${rr} 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} .${rr} { 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} .${rr} .xterm-dim { color: ${At.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} .${rr}.${au} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${i} 1s step-end infinite;}${this._terminalSelector} .${rr}.${au} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${n} 1s step-end infinite;}${this._terminalSelector} .${rr}.${au} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${r} 1s step-end infinite;}${this._terminalSelector} .${rr} .xterm-cursor.xterm-cursor-block { background-color: ${t.cursor.css}; color: ${t.cursorAccent.css};}${this._terminalSelector} .${rr} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${t.cursor.css} !important; color: ${t.cursorAccent.css} !important;}${this._terminalSelector} .${rr} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${t.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${rr} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${t.cursor.css} inset;}${this._terminalSelector} .${rr} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${t.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,e+=`${this._terminalSelector} .${Dp} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${Dp} div { position: absolute; background-color: ${t.selectionBackgroundOpaque.css};}${this._terminalSelector} .${Dp} div { position: absolute; background-color: ${t.selectionInactiveBackgroundOpaque.css};}`;for(let[s,a]of t.ansi.entries())e+=`${this._terminalSelector} .${jp}${s} { color: ${a.css}; }${this._terminalSelector} .${jp}${s}.xterm-dim { color: ${At.multiplyOpacity(a,.5).css}; }${this._terminalSelector} .${O$}${s} { background-color: ${a.css}; }`;e+=`${this._terminalSelector} .${jp}257 { color: ${At.opaque(t.background).css}; }${this._terminalSelector} .${jp}257.xterm-dim { color: ${At.multiplyOpacity(At.opaque(t.background),.5).css}; }${this._terminalSelector} .${O$}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(au),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(au),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,u=s===r?e[0]:this._bufferService.cols;c.appendChild(this._createSelectionElement(s,h,u));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 u=h+i.ydisp,f=this._rowElements[h],g=i.lines.get(u);if(!f||!g)break;f.replaceChildren(...this._rowFactory.createRow(g,u,u===n,a,c,r,s,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${py}${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,u=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,x=this._rowElements[v],w=c.lines.get(S);if(!x||!w)break;x.replaceChildren(...this._rowFactory.createRow(w,S,S===h,g,m,u,f,this.dimensions.css.cell.width,this._widthCache,s?v===i?t:0:-1,s?(v===n?e:r)-1:-1))}}};l1=Ut([xe(7,Fb),xe(8,Dm),xe(9,an),xe(10,on),xe(11,vl),xe(12,Fs),xe(13,Kc)],l1);var c1=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 dJ(this._optionsService))}catch{this._measureStrategy=this._register(new uJ(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())}};c1=Ut([xe(2,an)],c1);var kz=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)}},uJ=class extends kz{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}},dJ=class extends kz{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}},fJ=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 pJ(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(Bi.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(Le(this._textarea,"focus",()=>this._isFocused=!0)),this._register(Le(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}},pJ=class extends Ge{constructor(t){super(),this._parentWindow=t,this._windowResizeListener=this._register(new Hc),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(Dt(()=>this.clearListener()))}setWindow(t){this._parentWindow=t,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=Le(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)}},gJ=class extends Ge{constructor(){super(),this.linkProviders=[],this._register(Dt(()=>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 sx(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 mJ(t,e,i,n,r,s,a,c,h){if(!s)return;let u=sx(t,e,i);if(u)return u[0]=Math.ceil((u[0]+(h?a/2:0))/a),u[1]=Math.ceil(u[1]/c),u[0]=Math.min(Math.max(u[0],1),n+(h?1:0)),u[1]=Math.min(Math.max(u[1],1),r),u}var h1=class{constructor(t,e){this._renderService=t,this._charSizeService=e}getCoords(t,e,i,n,r){return mJ(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=sx(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])}}};h1=Ut([xe(0,Ks),xe(1,Dm)],h1);var OJ=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=[]}},Cz={};TF(Cz,{getSafariVersion:()=>yJ,isChromeOS:()=>Pz,isFirefox:()=>Tz,isIpad:()=>SJ,isIphone:()=>bJ,isLegacyEdge:()=>vJ,isLinux:()=>ox,isMac:()=>sm,isNode:()=>Bm,isSafari:()=>Qz,isWindows:()=>$z});var Bm=typeof process<"u"&&"title"in process,Qd=Bm?"node":navigator.userAgent,$d=Bm?"node":navigator.platform,Tz=Qd.includes("Firefox"),vJ=Qd.includes("Edge"),Qz=/^((?!chrome|android).)*safari/i.test(Qd);function yJ(){if(!Qz)return 0;let t=Qd.match(/Version\/(\d+)/);return t===null||t.length<2?0:parseInt(t[1])}var sm=["Macintosh","MacIntel","MacPPC","Mac68K"].includes($d),SJ=$d==="iPad",bJ=$d==="iPhone",$z=["Windows","Win16","Win32","WinCE"].includes($d),ox=$d.indexOf("Linux")>=0,Pz=/\bCrOS\b/.test(Qd),Ez=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()}},xJ=class extends Ez{_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 Ez{_requestCallback(t){return requestIdleCallback(t)}_cancelCallback(t){cancelIdleCallback(t)}},om=!Bm&&"requestIdleCallback"in window?_J:xJ,wJ=class{constructor(){this._queue=new om}set(t){this._queue.clear(),this._queue.enqueue(t)}flush(){this._queue.flush()}},u1=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 Hc),this._pausedResizeTask=new wJ,this._observerDisposable=this._register(new Hc),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 OJ((u,f)=>this._renderRows(u,f),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new kJ(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(Dt(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(a.onResize(()=>this._fullRefresh())),this._register(a.buffers.onBufferActivate(()=>{var u;return(u=this._renderer.value)==null?void 0:u.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(u=>this._registerIntersectionObserver(u,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=Dt(()=>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()}};u1=Ut([xe(2,an),xe(3,Dm),xe(4,vl),xe(5,Td),xe(6,on),xe(7,Fs),xe(8,Kc)],u1);var kJ=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 CJ(t,e,i,n){let r=i.buffer.x,s=i.buffer.y;if(!i.buffer.hasScrollback)return $J(r,s,t,e,i,n)+Lm(s,e,i,n)+PJ(r,s,t,e,i,n);let a;if(s===e)return a=r>t?"D":"C",ad(Math.abs(r-t),od(a,n));a=s>e?"D":"C";let c=Math.abs(s-e),h=QJ(s>e?t:r,i)+(c-1)*i.cols+1+TJ(s>e?r:t);return ad(h,od(a,n))}function TJ(t,e){return t-1}function QJ(t,e){return e.cols-t}function $J(t,e,i,n,r,s){return Lm(e,n,r,s).length===0?"":ad(Az(t,e,t,e-gl(e,r),!1,r).length,od("D",s))}function Lm(t,e,i,n){let r=t-gl(t,i),s=e-gl(e,i),a=Math.abs(r-s)-EJ(t,e,i);return ad(a,od(Rz(t,e),n))}function PJ(t,e,i,n,r,s){let a;Lm(e,n,r,s).length>0?a=n-gl(n,r):a=e;let c=n,h=RJ(t,e,i,n,r,s);return ad(Az(t,a,i,c,h==="C",r).length,od(h,s))}function EJ(t,e,i){var a;let n=0,r=t-gl(t,i),s=e-gl(e,i);for(let c=0;c<Math.abs(r-s);c++){let h=Rz(t,e)==="A"?-1:1;(a=i.buffer.lines.get(r+h*c))!=null&&a.isWrapped&&n++}return n}function gl(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 RJ(t,e,i,n,r,s){let a;return Lm(i,n,r,s).length>0?a=n-gl(n,r):a=e,t<i&&a<=n||t>=i&&a<n?"C":"D"}function Rz(t,e){return t>e?"A":"B"}function Az(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 od(t,e){let i=e?"O":"[";return de.ESC+i+t}function ad(t,e){t=Math.floor(t);let i="";for(let n=0;n<t;n++)i+=e;return i}var AJ=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 v$(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 gy=50,MJ=15,zJ=50,jJ=500,DJ=" ",BJ=new RegExp(DJ,"g"),d1=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 dr,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=u=>this._handleMouseMove(u),this._mouseUpListener=u=>this._handleMouseUp(u),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(u=>this._handleTrim(u)),this._register(this._bufferService.buffers.onBufferActivate(u=>this._handleBufferActivate(u))),this.enable(),this._model=new AJ(this._bufferService),this._activeSelectionMode=0,this._register(Dt(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(u=>{u.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(BJ," ")).join($z?`\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())),ox&&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=v$(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=sx(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,-gy),gy),e/=gy,e/Math.abs(e)+Math.round(e*(MJ-1)))}shouldForceSelection(t){return sm?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(),zJ)}_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&&!(sm&&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<jJ&&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=CJ(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,u=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],_=t[0];s.getWidth(w)===0&&(f++,w--),s.getWidth(_)===2&&(g++,_++);let T=s.getString(_).length;for(T>1&&(v+=T-1,h+=T-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(;_<s.length&&h+1<a.length&&!this._isCharWordSeparator(s.loadCell(_+1,this._workCell));){s.loadCell(_+1,this._workCell);let C=this._workCell.getChars().length;this._workCell.getWidth()===2?(g++,_++):C>1&&(v+=C-1,h+=C-1),h++,_++}}h++;let S=c+u-f+m,x=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 _=this._getWordAt([this._bufferService.cols-1,t[1]-1],!1,!0,!1);if(_){let T=this._bufferService.cols-_.start;S-=T,x+=T}}}if(n&&S+x===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 _=this._getWordAt([0,t[1]+1],!1,!1,!0);_&&(x+=_.length)}}return{start:S,length:x}}}_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=v$(i,this._bufferService.cols)}};d1=Ut([xe(3,on),xe(4,vl),xe(5,Kb),xe(6,an),xe(7,Ks),xe(8,Fs)],d1);var y$=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={}}},S$=class{constructor(){this._color=new y$,this._css=new y$}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=[Zt.toColor("#2e3436"),Zt.toColor("#cc0000"),Zt.toColor("#4e9a06"),Zt.toColor("#c4a000"),Zt.toColor("#3465a4"),Zt.toColor("#75507b"),Zt.toColor("#06989a"),Zt.toColor("#d3d7cf"),Zt.toColor("#555753"),Zt.toColor("#ef2929"),Zt.toColor("#8ae234"),Zt.toColor("#fce94f"),Zt.toColor("#729fcf"),Zt.toColor("#ad7fa8"),Zt.toColor("#34e2e2"),Zt.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:hi.toCss(n,r,s),rgba:hi.toRgba(n,r,s)})}for(let i=0;i<24;i++){let n=8+i*10;t.push({css:hi.toCss(n,n,n),rgba:hi.toRgba(n,n,n)})}return t})()),Na=Zt.toColor("#ffffff"),vu=Zt.toColor("#000000"),b$=Zt.toColor("#ffffff"),x$=vu,lu={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},LJ=Na,f1=class extends Ge{constructor(t){super(),this._optionsService=t,this._contrastCache=new S$,this._halfContrastCache=new S$,this._onChangeColors=this._register(new ve),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:Na,background:vu,cursor:b$,cursorAccent:x$,selectionForeground:void 0,selectionBackgroundTransparent:lu,selectionBackgroundOpaque:At.blend(vu,lu),selectionInactiveBackgroundTransparent:lu,selectionInactiveBackgroundOpaque:At.blend(vu,lu),scrollbarSliderBackground:At.opacity(Na,.2),scrollbarSliderHoverBackground:At.opacity(Na,.4),scrollbarSliderActiveBackground:At.opacity(Na,.5),overviewRulerBorder:Na,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=wt(t.foreground,Na),e.background=wt(t.background,vu),e.cursor=At.blend(e.background,wt(t.cursor,b$)),e.cursorAccent=At.blend(e.background,wt(t.cursorAccent,x$)),e.selectionBackgroundTransparent=wt(t.selectionBackground,lu),e.selectionBackgroundOpaque=At.blend(e.background,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundTransparent=wt(t.selectionInactiveBackground,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundOpaque=At.blend(e.background,e.selectionInactiveBackgroundTransparent),e.selectionForeground=t.selectionForeground?wt(t.selectionForeground,g$):void 0,e.selectionForeground===g$&&(e.selectionForeground=void 0),At.isOpaque(e.selectionBackgroundTransparent)&&(e.selectionBackgroundTransparent=At.opacity(e.selectionBackgroundTransparent,.3)),At.isOpaque(e.selectionInactiveBackgroundTransparent)&&(e.selectionInactiveBackgroundTransparent=At.opacity(e.selectionInactiveBackgroundTransparent,.3)),e.scrollbarSliderBackground=wt(t.scrollbarSliderBackground,At.opacity(e.foreground,.2)),e.scrollbarSliderHoverBackground=wt(t.scrollbarSliderHoverBackground,At.opacity(e.foreground,.4)),e.scrollbarSliderActiveBackground=wt(t.scrollbarSliderActiveBackground,At.opacity(e.foreground,.5)),e.overviewRulerBorder=wt(t.overviewRulerBorder,LJ),e.ansi=pi.slice(),e.ansi[0]=wt(t.black,pi[0]),e.ansi[1]=wt(t.red,pi[1]),e.ansi[2]=wt(t.green,pi[2]),e.ansi[3]=wt(t.yellow,pi[3]),e.ansi[4]=wt(t.blue,pi[4]),e.ansi[5]=wt(t.magenta,pi[5]),e.ansi[6]=wt(t.cyan,pi[6]),e.ansi[7]=wt(t.white,pi[7]),e.ansi[8]=wt(t.brightBlack,pi[8]),e.ansi[9]=wt(t.brightRed,pi[9]),e.ansi[10]=wt(t.brightGreen,pi[10]),e.ansi[11]=wt(t.brightYellow,pi[11]),e.ansi[12]=wt(t.brightBlue,pi[12]),e.ansi[13]=wt(t.brightMagenta,pi[13]),e.ansi[14]=wt(t.brightCyan,pi[14]),e.ansi[15]=wt(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]=wt(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()}}};f1=Ut([xe(0,an)],f1);function wt(t,e){if(t!==void 0)try{return Zt.toColor(t)}catch{}return e}var XJ=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)}},NJ=class{constructor(){this._services=new XJ,this._services.set(Fb,this)}setService(t,e){this._services.set(t,e)}getService(t){return this._services.get(t)}createInstance(t,...e){let i=MF(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)}},ZJ={trace:0,debug:1,info:2,warn:3,error:4,off:5},WJ="xterm.js: ",p1=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=ZJ[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?"":WJ)+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)}};p1=Ut([xe(0,an)],p1);var _$=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,ci=Object.freeze(new Cd),Bp=0,my=2,yu=class Mz{constructor(e,i,n=!1){this.isWrapped=n,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*Ue);let r=i||dr.fromCharData([0,JM,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?Ho(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?Ho(i&2097151):""}isProtected(e){return this._data[e*Ue+2]&536870912}loadCell(e,i){return Bp=e*Ue,i.content=this._data[Bp+0],i.fg=this._data[Bp+1],i.bg=this._data[Bp+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]+=Ho(i):r&2097151?(this._combined[e]=Ho(r&2097151)+Ho(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 dr;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 dr;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*my<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*my<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*my<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 Mz(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 u=0;u<Ue;u++)this._data[(n+h)*Ue+u]=a[(i+h)*Ue+u];a[(i+h)*Ue+2]&268435456&&(this._extendedAttrs[n+h]=e._extendedAttrs[i+h])}else for(let h=0;h<r;h++){for(let u=0;u<Ue;u++)this._data[(n+h)*Ue+u]=a[(i+h)*Ue+u];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 u=parseInt(c[h],10);u>=i&&(this._combined[u-i+n]=e._combined[u])}}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?Ho(c):Ko;if(s+=h,r)for(let u=0;u<h.length;++u)r.push(i);i+=a>>22||1}return r&&r.push(i),s}};function qJ(t,e,i,n,r,s){let a=[];for(let c=0;c<t.length-1;c++){let h=c,u=t.get(++h);if(!u.isWrapped)continue;let f=[t.get(c)];for(;h<t.length&&u.isWrapped;)f.push(u),u=t.get(++h);if(!s&&n>=c&&n<h){c+=f.length-1;continue}let g=0,m=ld(f,g,e),v=1,S=0;for(;v<f.length;){let w=ld(f,v,e),_=w-S,T=i-m,C=Math.min(_,T);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 x=0;for(let w=f.length-1;w>0&&(w>g||f[w].getTrimmedLength()===0);w--)x++;x>0&&(a.push(c+f.length-x),a.push(x)),c+=f.length-1}return a}function IJ(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 VJ(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 YJ(t,e,i){let n=[],r=t.map((h,u)=>ld(t,u,e)).reduce((h,u)=>h+u),s=0,a=0,c=0;for(;c<r;){if(r-c<i){n.push(r-c);break}s+=i;let h=ld(t,a,e);s>h&&(s-=h,a++);let u=t[a].getWidth(s-1)===2;u&&s--;let f=u?i-1:i;n.push(f),c+=f}return n}function ld(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 zz=class jz{constructor(e){this.line=e,this.isDisposed=!1,this._disposables=[],this._id=jz._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(),pl(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};zz._nextId=1;var HJ=zz,yi={},Za=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 w$=4294967295,k$=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=ci.clone(),this.savedCharset=Za,this.markers=[],this._nullCell=dr.fromCharData([0,JM,1,0]),this._whitespaceCell=dr.fromCharData([0,Ko,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new om,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new _$(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 im),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 im),this._whitespaceCell}getBlankLine(t,e){return new yu(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>w$?w$:e}fillViewportRows(t){if(this.lines.length===0){t===void 0&&(t=ci);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 _$(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(t,e){let i=this.getNullCell(ci),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 yu(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 yu(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=qJ(this.lines,this._cols,t,this.ybase+this.y,this.getNullCell(ci),i);if(n.length>0){let r=IJ(this.lines,n);VJ(this.lines,r.layout),this._reflowLargerAdjustViewport(t,e,r.countRemoved)}}_reflowLargerAdjustViewport(t,e,i){let n=this.getNullCell(ci),r=i;for(;r-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<e&&this.lines.push(new yu(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(ci),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 u=h[h.length-1].getTrimmedLength(),f=YJ(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 Q=this.getBlankLine(ci,!0);v.push(Q)}v.length>0&&(r.push({start:a+h.length+s,newLines:v}),s+=v.length),h.push(...v);let S=f.length-1,x=f[S];x===0&&(S--,x=f[S]);let w=h.length-g-1,_=u;for(;w>=0;){let C=Math.min(_,x);if(h[S]===void 0)break;if(h[S].copyCellsFrom(h[w],_-C,x-C,C,!0),x-=C,x===0&&(S--,x=f[S]),_-=C,_===0){w--;let Q=Math.max(w,0);_=ld(h,Q,this._cols)}}for(let C=0;C<h.length;C++)f[C]<t&&h[C].setCell(f[C],n);let T=g-m;for(;T-- >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 x=0;x<this.lines.length;x++)c.push(this.lines.get(x));let h=this.lines.length,u=h-1,f=0,g=r[f];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+s);let m=0;for(let x=Math.min(this.lines.maxLength-1,h+s-1);x>=0;x--)if(g&&g.start>u+m){for(let w=g.newLines.length-1;w>=0;w--)this.lines.set(x--,g.newLines[w]);x++,a.push({index:u+1,amount:g.newLines.length}),m+=g.newLines.length,g=r[++f]}else this.lines.set(x,c[u--]);let v=0;for(let x=a.length-1;x>=0;x--)a[x].index+=v,this.lines.onInsertEmitter.fire(a[x]),v+=a[x].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 HJ(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)}},UJ=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 k$(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new k$(!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)}},Dz=2,Bz=1,g1=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,Dz),this.rows=Math.max(t.rawOptions.rows||0,Bz),this.buffers=this._register(new UJ(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))}};g1=Ut([xe(0,an)],g1);var lc={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:sm,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},GJ=["normal","bold","100","200","300","400","500","600","700","800","900"],FJ=class extends Ge{constructor(t){super(),this._onOptionChange=this._register(new ve),this.onOptionChange=this._onOptionChange.event;let e={...lc};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(Dt(()=>{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 lc))throw new Error(`No option with key "${i}"`);return this.rawOptions[i]},e=(i,n)=>{if(!(i in lc))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=lc[t]),!KJ(e))throw new Error(`"${e}" is not a valid value for ${t}`);break;case"wordSeparator":e||(e=lc[t]);break;case"fontWeight":case"fontWeightBold":if(typeof e=="number"&&1<=e&&e<=1e3)break;e=GJ.includes(e)?e:lc[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 KJ(t){return t==="block"||t==="underline"||t==="bar"}function Su(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]&&Su(t[n],e-1);return i}var C$=Object.freeze({insertMode:!1}),T$=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),m1=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=Su(C$),this.decPrivateModes=Su(T$)}reset(){this.modes=Su(C$),this.decPrivateModes=Su(T$)}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))}};m1=Ut([xe(0,on),xe(1,rz),xe(2,an)],m1);var Q$={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 Oy(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 vy=String.fromCharCode,$$={DEFAULT:t=>{let e=[Oy(t,!1)+32,t.col+32,t.row+32];return e[0]>255||e[1]>255||e[2]>255?"":`\x1B[M${vy(e[0])}${vy(e[1])}${vy(e[2])}`},SGR:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${Oy(t,!0)};${t.col};${t.row}${e}`},SGR_PIXELS:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${Oy(t,!0)};${t.x};${t.y}${e}`}},O1=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(Q$))this.addProtocol(n,Q$[n]);for(let n of Object.keys($$))this.addEncoding(n,$$[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)}};O1=Ut([xe(0,on),xe(1,vl),xe(2,an)],O1);var yy=[[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]],JJ=[[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 eee(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 tee=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<yy.length;++t)gi.fill(0,yy[t][0],yy[t][1]+1)}}wcwidth(t){return t<32?0:t<127?1:t<65536?gi[t]:eee(t,JJ)?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=Fa.extractWidth(e);r===0?n=!1:r>i&&(i=r)}return Fa.createPropertyValue(0,i,n)}},Fa=class cg{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new ve,this.onChange=this._onChange.event;let e=new tee;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 u=e.charCodeAt(s);56320<=u&&u<=57343?a=(a-55296)*1024+u-56320+65536:i+=this.wcwidth(u)}let c=this.charProperties(a,n),h=cg.extractWidth(c);cg.extractShouldJoin(c)&&(h-=cg.extractWidth(n)),i+=h,n=c}return i}charProperties(e,i){return this._activeProvider.charProperties(e,i)}},iee=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 P$(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 cu=2147483647,nee=256,Lz=class v1{constructor(e=32,i=32){if(this.maxLength=e,this.maxSubParamsLength=i,i>nee)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 v1;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 v1(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>cu?cu: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>cu?cu: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,cu):e}},hu=[],ree=class{constructor(){this._state=0,this._active=hu,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=hu}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=hu,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||hu,!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",jm(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=hu,this._id=-1,this._state=0}}},Bn=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+=jm(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}},uu=[],see=class{constructor(){this._handlers=Object.create(null),this._active=uu,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=uu}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=uu,this._ident=0}hook(t,e){if(this.reset(),this._ident=t,this._active=this._handlers[t]||uu,!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",jm(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=uu,this._ident=0}},bu=new Lz;bu.addParam(0);var E$=class{constructor(t){this._handler=t,this._data="",this._params=bu,this._hitLimit=!1}hook(t){this._params=t.length>1||t.params[0]?t.clone():bu,this._data="",this._hitLimit=!1}put(t,e,i){this._hitLimit||(this._data+=jm(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=bu,this._data="",this._hitLimit=!1,i));return this._params=bu,this._data="",this._hitLimit=!1,e}},oee=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}},or=160,aee=(function(){let t=new oee(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(or,0,2,0),t.add(or,8,5,8),t.add(or,6,0,6),t.add(or,11,0,11),t.add(or,13,13,13),t})(),lee=class extends Ge{constructor(t=aee){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 Lz,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(Dt(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new ree),this._dcsParser=this._register(new see),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:or)],r>>4){case 2:for(let m=c+1;;++m){if(m>=e||(n=t[m])<32||n>126&&n<or){this._printHandler(t,c,m),c=m-1;break}if(++m>=e||(n=t[m])<32||n>126&&n<or){this._printHandler(t,c,m),c=m-1;break}if(++m>=e||(n=t[m])<32||n>126&&n<or){this._printHandler(t,c,m),c=m-1;break}if(++m>=e||(n=t[m])<32||n>126&&n<or){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],u=h?h.length-1:-1;for(;u>=0&&(a=h[u](this._params),a!==!0);u--)if(a instanceof Promise)return this._preserveStack(3,h,u,r,c),a;u<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<or){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<or){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}}},cee=/^([\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})$/,hee=/^[\da-f]+$/;function R$(t){if(!t)return;let e=t.toLowerCase();if(e.indexOf("rgb:")===0){e=e.slice(4);let i=cee.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),hee.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 Sy(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 uee(t,e=16){let[i,n,r]=t;return`rgb:${Sy(i,e)}/${Sy(n,e)}/${Sy(r,e)}`}var dee={"(":0,")":1,"*":2,"+":3,"-":1,".":2},Wo=131072,A$=10;function M$(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 z$=5e3,j$=0,fee=class extends Ge{constructor(t,e,i,n,r,s,a,c,h=new lee){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 RF,this._utf8Decoder=new AF,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=ci.clone(),this._eraseAttrDataInternal=ci.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 y1(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(u=>this._activeBuffer=u.activeBuffer)),this._parser.setCsiHandlerFallback((u,f)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(u),params:f.toArray()})}),this._parser.setEscHandlerFallback(u=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(u)})}),this._parser.setExecuteHandlerFallback(u=>{this._logService.debug("Unknown EXECUTE code: ",{code:u})}),this._parser.setOscHandlerFallback((u,f,g)=>{this._logService.debug("Unknown OSC code: ",{identifier:u,action:f,data:g})}),this._parser.setDcsHandlerFallback((u,f,g)=>{f==="HOOK"&&(g=g.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(u),action:f,payload:g})}),this._parser.setPrintHandler((u,f,g)=>this.print(u,f,g)),this._parser.registerCsiHandler({final:"@"},u=>this.insertChars(u)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},u=>this.scrollLeft(u)),this._parser.registerCsiHandler({final:"A"},u=>this.cursorUp(u)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},u=>this.scrollRight(u)),this._parser.registerCsiHandler({final:"B"},u=>this.cursorDown(u)),this._parser.registerCsiHandler({final:"C"},u=>this.cursorForward(u)),this._parser.registerCsiHandler({final:"D"},u=>this.cursorBackward(u)),this._parser.registerCsiHandler({final:"E"},u=>this.cursorNextLine(u)),this._parser.registerCsiHandler({final:"F"},u=>this.cursorPrecedingLine(u)),this._parser.registerCsiHandler({final:"G"},u=>this.cursorCharAbsolute(u)),this._parser.registerCsiHandler({final:"H"},u=>this.cursorPosition(u)),this._parser.registerCsiHandler({final:"I"},u=>this.cursorForwardTab(u)),this._parser.registerCsiHandler({final:"J"},u=>this.eraseInDisplay(u,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},u=>this.eraseInDisplay(u,!0)),this._parser.registerCsiHandler({final:"K"},u=>this.eraseInLine(u,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},u=>this.eraseInLine(u,!0)),this._parser.registerCsiHandler({final:"L"},u=>this.insertLines(u)),this._parser.registerCsiHandler({final:"M"},u=>this.deleteLines(u)),this._parser.registerCsiHandler({final:"P"},u=>this.deleteChars(u)),this._parser.registerCsiHandler({final:"S"},u=>this.scrollUp(u)),this._parser.registerCsiHandler({final:"T"},u=>this.scrollDown(u)),this._parser.registerCsiHandler({final:"X"},u=>this.eraseChars(u)),this._parser.registerCsiHandler({final:"Z"},u=>this.cursorBackwardTab(u)),this._parser.registerCsiHandler({final:"`"},u=>this.charPosAbsolute(u)),this._parser.registerCsiHandler({final:"a"},u=>this.hPositionRelative(u)),this._parser.registerCsiHandler({final:"b"},u=>this.repeatPrecedingCharacter(u)),this._parser.registerCsiHandler({final:"c"},u=>this.sendDeviceAttributesPrimary(u)),this._parser.registerCsiHandler({prefix:">",final:"c"},u=>this.sendDeviceAttributesSecondary(u)),this._parser.registerCsiHandler({final:"d"},u=>this.linePosAbsolute(u)),this._parser.registerCsiHandler({final:"e"},u=>this.vPositionRelative(u)),this._parser.registerCsiHandler({final:"f"},u=>this.hVPosition(u)),this._parser.registerCsiHandler({final:"g"},u=>this.tabClear(u)),this._parser.registerCsiHandler({final:"h"},u=>this.setMode(u)),this._parser.registerCsiHandler({prefix:"?",final:"h"},u=>this.setModePrivate(u)),this._parser.registerCsiHandler({final:"l"},u=>this.resetMode(u)),this._parser.registerCsiHandler({prefix:"?",final:"l"},u=>this.resetModePrivate(u)),this._parser.registerCsiHandler({final:"m"},u=>this.charAttributes(u)),this._parser.registerCsiHandler({final:"n"},u=>this.deviceStatus(u)),this._parser.registerCsiHandler({prefix:"?",final:"n"},u=>this.deviceStatusPrivate(u)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},u=>this.softReset(u)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},u=>this.setCursorStyle(u)),this._parser.registerCsiHandler({final:"r"},u=>this.setScrollRegion(u)),this._parser.registerCsiHandler({final:"s"},u=>this.saveCursor(u)),this._parser.registerCsiHandler({final:"t"},u=>this.windowOptions(u)),this._parser.registerCsiHandler({final:"u"},u=>this.restoreCursor(u)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},u=>this.insertColumns(u)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},u=>this.deleteColumns(u)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},u=>this.selectProtected(u)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},u=>this.requestMode(u,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},u=>this.requestMode(u,!1)),this._parser.setExecuteHandler(de.BEL,()=>this.bell()),this._parser.setExecuteHandler(de.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(de.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(de.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(de.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(de.BS,()=>this.backspace()),this._parser.setExecuteHandler(de.HT,()=>this.tab()),this._parser.setExecuteHandler(de.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(de.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(ag.IND,()=>this.index()),this._parser.setExecuteHandler(ag.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(ag.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new Bn(u=>(this.setTitle(u),this.setIconName(u),!0))),this._parser.registerOscHandler(1,new Bn(u=>this.setIconName(u))),this._parser.registerOscHandler(2,new Bn(u=>this.setTitle(u))),this._parser.registerOscHandler(4,new Bn(u=>this.setOrReportIndexedColor(u))),this._parser.registerOscHandler(8,new Bn(u=>this.setHyperlink(u))),this._parser.registerOscHandler(10,new Bn(u=>this.setOrReportFgColor(u))),this._parser.registerOscHandler(11,new Bn(u=>this.setOrReportBgColor(u))),this._parser.registerOscHandler(12,new Bn(u=>this.setOrReportCursorColor(u))),this._parser.registerOscHandler(104,new Bn(u=>this.restoreIndexedColor(u))),this._parser.registerOscHandler(110,new Bn(u=>this.restoreFgColor(u))),this._parser.registerOscHandler(111,new Bn(u=>this.restoreBgColor(u))),this._parser.registerOscHandler(112,new Bn(u=>this.restoreCursorColor(u))),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 u in yi)this._parser.registerEscHandler({intermediates:"(",final:u},()=>this.selectCharset("("+u)),this._parser.registerEscHandler({intermediates:")",final:u},()=>this.selectCharset(")"+u)),this._parser.registerEscHandler({intermediates:"*",final:u},()=>this.selectCharset("*"+u)),this._parser.registerEscHandler({intermediates:"+",final:u},()=>this.selectCharset("+"+u)),this._parser.registerEscHandler({intermediates:"-",final:u},()=>this.selectCharset("-"+u)),this._parser.registerEscHandler({intermediates:".",final:u},()=>this.selectCharset("."+u)),this._parser.registerEscHandler({intermediates:"/",final:u},()=>this.selectCharset("/"+u));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(u=>(this._logService.error("Parsing error: ",u),u)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new E$((u,f)=>this.requestStatusString(u,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"),z$))]).catch(e=>{if(e!=="#SLOW_TIMEOUT")throw e;console.warn(`async parser handler taking longer than ${z$} 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>Wo&&(s=this._parseStack.position+Wo)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof t=="string"?` "${t}"`:` "${Array.prototype.map.call(t,u=>String.fromCharCode(u)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof t=="string"?t.split("").map(u=>u.charCodeAt(0)):t),this._parseBuffer.length<t.length&&this._parseBuffer.length<Wo&&(this._parseBuffer=new Uint32Array(Math.min(t.length,Wo))),a||this._dirtyRowTracker.clearRange(),t.length>Wo)for(let u=s;u<t.length;u+=Wo){let f=u+Wo<t.length?u+Wo:t.length,g=typeof t=="string"?this._stringDecoder.decode(t.substring(u,f),this._parseBuffer):this._utf8Decoder.decode(t.subarray(u,f),this._parseBuffer);if(i=this._parser.parse(this._parseBuffer,g))return this._preserveStack(n,r,g,u),this._logSlowResolvingAsync(i),i}else if(!a){let u=typeof t=="string"?this._stringDecoder.decode(t,this._parseBuffer):this._utf8Decoder.decode(t,this._parseBuffer);if(i=this._parser.parse(this._parseBuffer,u))return this._preserveStack(n,r,u,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,u=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 _=s[String.fromCharCode(n)];_&&(n=_.charCodeAt(0))}let S=this._unicodeService.charProperties(n,m);r=Fa.extractWidth(S);let x=Fa.extractShouldJoin(S),w=x?Fa.extractWidth(m):0;if(m=S,a&&this._onA11yChar.fire(Ho(n)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+r-w>c){if(h){let _=g,T=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 yu&&g.copyCellsFrom(_,T,0,w,!1);T<c;)_.setCellFromCodepoint(T++,0,1,f)}else if(this._activeBuffer.x=c-1,r===2)continue}if(x&&this._activeBuffer.x){let _=g.getWidth(this._activeBuffer.x-1)?1:2;g.addCodepointToCell(this._activeBuffer.x-_,n,r);for(let T=r-w;--T>=0;)g.setCellFromCodepoint(this._activeBuffer.x++,0,0,f);continue}if(u&&(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=>M$(i.params[0],this._optionsService.rawOptions.windowOptions)?e(i):!0):this._parser.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._parser.registerDcsHandler(t,new E$(e))}registerEscHandler(t,e){return this._parser.registerEscHandler(t,e)}registerOscHandler(t,e){return this._parser.registerOscHandler(t,new Bn(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(ci));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=Fa.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 u=0;u<s.length;){let f=s.codePointAt(u)||0;a[c++]=f,u+=f>65535?2:1}let h=c;for(let u=1;u<i;++u)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(de.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(de.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(t){return t.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(de.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(de.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(t.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(de.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,Za),this._charsetService.setgCharset(1,Za),this._charsetService.setgCharset(2,Za),this._charsetService.setgCharset(3,Za);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){(x=>(x[x.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",x[x.SET=1]="SET",x[x.RESET=2]="RESET",x[x.PERMANENTLY_SET=3]="PERMANENTLY_SET",x[x.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:u,alt:f}=c,g=this._optionsService.rawOptions,m=(x,w)=>(a.triggerDataEvent(`${de.ESC}[${e?"":"?"}${x};${w}$y`),!0),v=x=>x?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(u===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|=Cd.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=ci.fg,t.bg=ci.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|=ci.fg&16777215):i===49?(n.bg&=-67108864,n.bg|=ci.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|=ci.fg&16777215,n.bg&=-67108864,n.bg|=ci.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",i);return!0}deviceStatus(t){switch(t.params[0]){case 5:this._coreService.triggerDataEvent(`${de.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,i=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${de.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(`${de.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=ci.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(!M$(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(`${de.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(e===0||e===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>A$&&this._windowTitleStack.shift()),(e===0||e===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>A$&&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(D$(s))if(r==="?")e.push({type:0,index:s});else{let a=R$(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=R$(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]);D$(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,Za),!0}selectCharset(t){return t.length!==2?(this.selectDefaultCharset(),!0):(t[0]==="/"||this._charsetService.setgCharset(dee[t[0]],yi[t[1]]||Za),!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=ci.clone(),this._eraseAttrDataInternal=ci.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 dr;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(`${de.ESC}${a}${de.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)}},y1=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&&(j$=t,t=e,e=j$),t<this.start&&(this.start=t),e>this.end&&(this.end=e)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};y1=Ut([xe(0,on)],y1);function D$(t){return 0<=t&&t<256}var pee=5e7,B$=12,gee=50,mee=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>pee)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>=B$?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>=B$)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>gee&&(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()}},S1=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)))}};S1=Ut([xe(0,on)],S1);var L$=!1,Oee=class extends Ge{constructor(t){super(),this._windowsWrappingHeuristics=this._register(new Hc),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 NJ,this.optionsService=this._register(new FJ(t)),this._instantiationService.setService(an,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(g1)),this._instantiationService.setService(on,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(p1)),this._instantiationService.setService(rz,this._logService),this.coreService=this._register(this._instantiationService.createInstance(m1)),this._instantiationService.setService(vl,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(O1)),this._instantiationService.setService(nz,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Fa)),this._instantiationService.setService(DF,this.unicodeService),this._charsetService=this._instantiationService.createInstance(iee),this._instantiationService.setService(jF,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(S1),this._instantiationService.setService(sz,this._oscLinkService),this._inputHandler=this._register(new fee(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(Bi.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(Bi.forward(this._bufferService.onResize,this._onResize)),this._register(Bi.forward(this.coreService.onData,this._onData)),this._register(Bi.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 mee((e,i)=>this._inputHandler.parse(e,i))),this._register(Bi.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&&!L$&&(this._logService.warn("writeSync is unreliable and will be removed soon."),L$=!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,Dz),e=Math.max(e,Bz),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(P$.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},()=>(P$(this._bufferService),!1))),this._windowsWrappingHeuristics.value=Dt(()=>{for(let e of t)e.dispose()})}}},vee={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 yee(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=de.ESC+"OA":r.key=de.ESC+"[A":t.key==="UIKeyInputLeftArrow"?e?r.key=de.ESC+"OD":r.key=de.ESC+"[D":t.key==="UIKeyInputRightArrow"?e?r.key=de.ESC+"OC":r.key=de.ESC+"[C":t.key==="UIKeyInputDownArrow"&&(e?r.key=de.ESC+"OB":r.key=de.ESC+"[B");break;case 8:r.key=t.ctrlKey?"\b":de.DEL,t.altKey&&(r.key=de.ESC+r.key);break;case 9:if(t.shiftKey){r.key=de.ESC+"[Z";break}r.key=de.HT,r.cancel=!0;break;case 13:r.key=t.altKey?de.ESC+de.CR:de.CR,r.cancel=!0;break;case 27:r.key=de.ESC,t.altKey&&(r.key=de.ESC+de.ESC),r.cancel=!0;break;case 37:if(t.metaKey)break;s?r.key=de.ESC+"[1;"+(s+1)+"D":e?r.key=de.ESC+"OD":r.key=de.ESC+"[D";break;case 39:if(t.metaKey)break;s?r.key=de.ESC+"[1;"+(s+1)+"C":e?r.key=de.ESC+"OC":r.key=de.ESC+"[C";break;case 38:if(t.metaKey)break;s?r.key=de.ESC+"[1;"+(s+1)+"A":e?r.key=de.ESC+"OA":r.key=de.ESC+"[A";break;case 40:if(t.metaKey)break;s?r.key=de.ESC+"[1;"+(s+1)+"B":e?r.key=de.ESC+"OB":r.key=de.ESC+"[B";break;case 45:!t.shiftKey&&!t.ctrlKey&&(r.key=de.ESC+"[2~");break;case 46:s?r.key=de.ESC+"[3;"+(s+1)+"~":r.key=de.ESC+"[3~";break;case 36:s?r.key=de.ESC+"[1;"+(s+1)+"H":e?r.key=de.ESC+"OH":r.key=de.ESC+"[H";break;case 35:s?r.key=de.ESC+"[1;"+(s+1)+"F":e?r.key=de.ESC+"OF":r.key=de.ESC+"[F";break;case 33:t.shiftKey?r.type=2:t.ctrlKey?r.key=de.ESC+"[5;"+(s+1)+"~":r.key=de.ESC+"[5~";break;case 34:t.shiftKey?r.type=3:t.ctrlKey?r.key=de.ESC+"[6;"+(s+1)+"~":r.key=de.ESC+"[6~";break;case 112:s?r.key=de.ESC+"[1;"+(s+1)+"P":r.key=de.ESC+"OP";break;case 113:s?r.key=de.ESC+"[1;"+(s+1)+"Q":r.key=de.ESC+"OQ";break;case 114:s?r.key=de.ESC+"[1;"+(s+1)+"R":r.key=de.ESC+"OR";break;case 115:s?r.key=de.ESC+"[1;"+(s+1)+"S":r.key=de.ESC+"OS";break;case 116:s?r.key=de.ESC+"[15;"+(s+1)+"~":r.key=de.ESC+"[15~";break;case 117:s?r.key=de.ESC+"[17;"+(s+1)+"~":r.key=de.ESC+"[17~";break;case 118:s?r.key=de.ESC+"[18;"+(s+1)+"~":r.key=de.ESC+"[18~";break;case 119:s?r.key=de.ESC+"[19;"+(s+1)+"~":r.key=de.ESC+"[19~";break;case 120:s?r.key=de.ESC+"[20;"+(s+1)+"~":r.key=de.ESC+"[20~";break;case 121:s?r.key=de.ESC+"[21;"+(s+1)+"~":r.key=de.ESC+"[21~";break;case 122:s?r.key=de.ESC+"[23;"+(s+1)+"~":r.key=de.ESC+"[23~";break;case 123:s?r.key=de.ESC+"[24;"+(s+1)+"~":r.key=de.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=de.NUL:t.keyCode>=51&&t.keyCode<=55?r.key=String.fromCharCode(t.keyCode-51+27):t.keyCode===56?r.key=de.DEL:t.keyCode===219?r.key=de.ESC:t.keyCode===220?r.key=de.FS:t.keyCode===221&&(r.key=de.GS);else if((!i||n)&&t.altKey&&!t.metaKey){let c=(a=vee[t.keyCode])==null?void 0:a[t.shiftKey?1:0];if(c)r.key=de.ESC+c;else if(t.keyCode>=65&&t.keyCode<=90){let h=t.ctrlKey?t.keyCode-64:t.keyCode+32,u=String.fromCharCode(h);t.shiftKey&&(u=u.toUpperCase()),r.key=de.ESC+u}else if(t.keyCode===32)r.key=de.ESC+(t.ctrlKey?de.NUL:" ");else if(t.key==="Dead"&&t.code.startsWith("Key")){let h=t.code.slice(3,4);t.shiftKey||(h=h.toLowerCase()),r.key=de.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=de.US),t.key==="@"&&(r.key=de.NUL));break}return r}var Kt=0,See=class{constructor(t){this._getKey=t,this._array=[],this._insertedValues=[],this._flushInsertedTask=new om,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new om,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||(Kt=this._search(e),Kt===-1)||this._getKey(this._array[Kt])!==e)return!1;do if(this._array[Kt]===t)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Kt),!0;while(++Kt<this._array.length&&this._getKey(this._array[Kt])===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&&(Kt=this._search(t),!(Kt<0||Kt>=this._array.length)&&this._getKey(this._array[Kt])===t))do yield this._array[Kt];while(++Kt<this._array.length&&this._getKey(this._array[Kt])===t)}forEachByKey(t,e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Kt=this._search(t),!(Kt<0||Kt>=this._array.length)&&this._getKey(this._array[Kt])===t))do e(this._array[Kt]);while(++Kt<this._array.length&&this._getKey(this._array[Kt])===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}},by=0,X$=0,bee=class extends Ge{constructor(){super(),this._decorations=new See(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(Dt(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(t){if(t.marker.isDisposed)return;let e=new xee(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=>{by=r.options.x??0,X$=by+(r.options.width??1),t>=by&&t<X$&&(!i||(r.options.layer??"bottom")===i)&&n(r)})}},xee=class extends ta{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=Zt.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=Zt.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},_ee=1e3,wee=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)}},N$=20,am=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 wee(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(Le(r,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(Dt(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(t){for(let e=0;e<t;e++)this._handleChar(" ")}_handleChar(t){this._liveRegionLineCount<N$+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==t&&(this._charsToAnnounce+=t):this._charsToAnnounce+=t,t===`
157
+ `&&(this._liveRegionLineCount++,this._liveRegionLineCount===N$+1&&(this._liveRegion.textContent+=XS.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(),u=this._rowElements[r];u&&(c.length===0?(u.textContent=" ",this._rowColumns.set(u,[0,1])):(u.textContent=c,this._rowColumns.set(u,a)),u.setAttribute("aria-posinset",h),u.setAttribute("aria-setsize",n),this._alignRowWidth(u))}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:u})=>{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=u<m.length?m[u]: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})`}};am=Ut([xe(1,Fb),xe(2,Fs),xe(3,Ks)],am);var b1=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(Dt(()=>{var s;pl(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(Le(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(Le(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(Le(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(Le(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 u,f;if(this._isMouseOut)return;let h=c==null?void 0:c.map(g=>({link:g}));(u=this._activeProviderReplies)==null||u.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 u=c;u<=h;u++){if(i.has(u)){r.splice(s--,1);break}i.add(u)}}}}_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&&kee(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,pl(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}}};b1=Ut([xe(1,Kb),xe(2,Ks),xe(3,on),xe(4,az)],b1);function kee(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 Cee=class extends Oee{constructor(t={}){super(t),this._linkifier=this._register(new Hc),this.browser=Cz,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new Hc),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(bee),this._instantiationService.setService(Td,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(gJ),this._instantiationService.setService(az,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(ZS)),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(Bi.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(Bi.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(Bi.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(Bi.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(Dt(()=>{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=At.toColorRGB(i==="ansi"?this._themeService.colors.ansi[e.index]:this._themeService.colors[i]);this.coreService.triggerDataEvent(`${de.ESC}]${n};${uee(r)}${wz.ST}`);break;case 1:if(i==="ansi")this._themeService.modifyColors(s=>s.ansi[e.index]=hi.toColor(...e.color));else{let s=i;this._themeService.modifyColors(a=>a[s]=hi.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(am,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(t){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(de.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(de.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(Le(this.element,"copy",e=>{this.hasSelection()&&PF(e,this._selectionService)}));let t=e=>EF(e,this.textarea,this.coreService,this.optionsService);this._register(Le(this.textarea,"paste",t)),this._register(Le(this.element,"paste",t)),Tz?this._register(Le(this.element,"mousedown",e=>{e.button===2&&FQ(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(Le(this.element,"contextmenu",e=>{FQ(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),ox&&this._register(Le(this.element,"auxclick",e=>{e.button===1&&KM(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(Le(this.textarea,"keyup",t=>this._keyUp(t),!0)),this._register(Le(this.textarea,"keydown",t=>this._keyDown(t),!0)),this._register(Le(this.textarea,"keypress",t=>this._keyPress(t),!0)),this._register(Le(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(Le(this.textarea,"compositionupdate",t=>this._compositionHelper.compositionupdate(t))),this._register(Le(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(Le(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(Le(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",LS.get()),Pz||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(fJ,this.textarea,t.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(Fs,this._coreBrowserService),this._register(Le(this.textarea,"focus",s=>this._handleTextAreaFocus(s))),this._register(Le(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(c1,this._document,this._helperContainer),this._instantiationService.setService(Dm,this._charSizeService),this._themeService=this._instantiationService.createInstance(f1),this._instantiationService.setService(Kc,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(rm),this._instantiationService.setService(oz,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(u1,this.rows,this.screenElement)),this._instantiationService.setService(Ks,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(o1,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(h1),this._instantiationService.setService(Kb,this._mouseService);let n=this._linkifier.value=this._register(this._instantiationService.createInstance(b1,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(r1,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(d1,this.element,this.screenElement,n)),this._instantiationService.setService(LF,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(Bi.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{var s;this._selectionService.refresh(),(s=this._viewport)==null||s.queueSync()})),this._register(this._instantiationService.createInstance(s1,this.screenElement)),this._register(Le(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(am,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",s=>this._handleScreenReaderModeOptionChange(s))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(nm,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",s=>{!this._overviewRulerRenderer&&s&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(nm,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(l1,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let t=this,e=this.element;function i(s){var u,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=(u=t._renderService)==null?void 0:u.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(Le(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(Le(e,"wheel",s=>{var a,c,h,u,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,(u=(h=(c=(a=t._renderService)==null?void 0:a.dimensions)==null?void 0:c.device)==null?void 0:h.cell)==null?void 0:u.height,(f=t._coreBrowserService)==null?void 0:f.dpr)===0)return this.cancel(s,!0);let g=de.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){FM(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=yee(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===de.ETX||i.key===de.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)&&(Tee(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(ci));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(de.ESC+"[I"):this.coreService.triggerDataEvent(de.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(`${de.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(`${de.ESC}[6;${r};${n}t`);break}}cancel(t,e){if(!(!this.options.cancelEvents&&!e))return t.preventDefault(),t.stopPropagation(),!1}};function Tee(t){return t.keyCode===16||t.keyCode===17||t.keyCode===18}var Qee=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)}},$ee=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 dr)}translateToString(t,e,i){return this._line.translateToString(t,e,i)}},Z$=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 $ee(e)}getNullCell(){return new dr}},Pee=class extends Ge{constructor(t){super(),this._core=t,this._onBufferChange=this._register(new ve),this.onBufferChange=this._onBufferChange.event,this._normal=new Z$(this._core.buffers.normal,"normal"),this._alternate=new Z$(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)}},Eee=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)}},Ree=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}},Aee=["cols","rows"],Wr=0,Mee=class extends Ge{constructor(t){super(),this._core=this._register(new Cee(t)),this._addonManager=this._register(new Qee),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(Aee.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 Eee(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new Ree(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 Pee(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 LS.get()},set promptLabel(t){LS.set(t)},get tooMuchOutput(){return XS.get()},set tooMuchOutput(t){XS.set(t)}}}_verifyIntegers(...t){for(Wr of t)if(Wr===1/0||isNaN(Wr)||Wr%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...t){for(Wr of t)if(Wr&&(Wr===1/0||isNaN(Wr)||Wr%1!==0||Wr<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 zee=2,jee=1,Dee=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,u=n-c,f=r-h-e;return{cols:Math.max(zee,Math.floor(f/t.css.cell.width)),rows:Math.max(jee,Math.floor(u/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 Bee=class{constructor(t,e,i,n={}){this._terminal=t,this._regex=e,this._handler=i,this._options=n}provideLinks(t,e){let i=Xee.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 Lee(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 Xee=class hg{static computeLink(e,i,n,r){let s=new RegExp(i.source,(i.flags||"")+"g"),[a,c]=hg._getWindowedLineStrings(e-1,n),h=a.join(""),u,f=[];for(;u=s.exec(h);){let g=u[0];if(!Lee(g))continue;let[m,v]=hg._mapStrIdx(n,c,0,u.index),[S,x]=hg._mapStrIdx(n,m,v,g.length);if(m===-1||v===-1||S===-1||x===-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 u=n.translateToString(!0);if(n.isWrapped&&u[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(u),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 u=c;u<h.length;++u){h.getCell(u,a);let f=a.getChars();if(a.getWidth()&&(r-=f.length||1,u===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,u]}i++,c=0}return[i,c]}},Nee=/(https?|HTTPS?):[/]{2}[^\s"'!*(){}|\\\^<>`]*[^\s"':,.!?{}|\\\^~\[\]`()<>]/;function Zee(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 Wee=class{constructor(t=Zee,e={}){this._handler=t,this._options=e}activate(t){this._terminal=t;let e=this._options,i=e.urlRegex||Nee;this._linkProvider=this._terminal.registerLinkProvider(new Bee(this._terminal,i,this._handler,e))}dispose(){var t;(t=this._linkProvider)==null||t.dispose()}};function qee({visible:t}){const e=B.useRef(null),i=B.useRef(null),n=B.useRef(null),r=B.useRef(null),s=B.useRef(!1),a=$e(c=>c.ws);return B.useEffect(()=>{if(!e.current)return;const c=new Mee({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 Dee,u=new Wee;return c.loadAddon(h),c.loadAddon(u),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}},[]),B.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 u=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),u.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]),B.useEffect(()=>{if(t&&n.current){const c=setTimeout(()=>{try{n.current.fit()}catch{}},80);return()=>clearTimeout(c)}},[t]),B.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:{...Iee.container,display:t?"block":"none"}})}const Iee={container:{width:"100%",height:"100%",padding:"4px 0 0 4px",background:"#1e2127",overflow:"hidden"}};function Vee(){const t=$e(X=>X.editorActiveFile),e=$e(X=>X.editorFiles),i=$e(X=>X.editorChangedFiles),n=$e(X=>X.editorOpenTabs),r=$e(X=>X.updateFileContent),s=$e(X=>X.saveFile),a=$e(X=>X.reloadFile),c=$e(X=>X.dismissFileChange),h=$e(X=>X.fetchTreeDir),[u,f]=B.useState(!1),[g,m]=B.useState(220),[v,S]=B.useState(""),[x,w]=B.useState(""),[_,T]=B.useState(!1);B.useEffect(()=>{fetch("/api/files/root").then(X=>X.json()).then(X=>{S(X.root||""),w(X.root||"")}).catch(()=>{})},[]);async function C(){if(x.trim())try{const R=await(await fetch("/api/files/root",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({root:x.trim()})})).json();R.ok&&(S(R.root),T(!1),$e.setState({editorTreeCache:{},editorOpenTabs:[],editorActiveFile:null,editorFiles:{}}),h(""))}catch{}}const Q=t?e[t]:null,M=t&&i[t],E=t&&wF(t),L=t&&n.includes(t)&&E,V=B.useCallback(X=>{t&&r(t,X)},[t,r]),H=B.useCallback(()=>{t&&s(t)},[t,s]),U=B.useCallback(X=>{X.preventDefault();const R=X.clientY,j=g,P=$=>{const Z=R-$.clientY;m(Math.max(100,Math.min(600,j+Z)))},N=()=>{document.removeEventListener("mousemove",P),document.removeEventListener("mouseup",N)};document.addEventListener("mousemove",P),document.addEventListener("mouseup",N)},[g]);return O.jsxs("div",{style:Nt.container,children:[O.jsxs("div",{style:Nt.dirBar,children:[O.jsx("span",{style:Nt.dirLabel,children:"DIR"}),_?O.jsxs("div",{style:{display:"flex",flex:1,gap:4},children:[O.jsx("input",{style:Nt.dirInput,value:x,onChange:X=>w(X.target.value),onKeyDown:X=>{X.key==="Enter"&&C(),X.key==="Escape"&&(T(!1),w(v))},placeholder:"/absolute/path/to/project",autoFocus:!0}),O.jsx("button",{onClick:C,style:Nt.dirOkBtn,children:"Open"}),O.jsx("button",{onClick:()=>{T(!1),w(v)},style:Nt.dirCancelBtn,children:"×"})]}):O.jsx("button",{onClick:()=>T(!0),style:Nt.dirPath,title:"Click to change directory",children:v||"..."})]}),O.jsx(gZ,{}),O.jsxs("div",{style:Nt.contentRow,children:[O.jsx("div",{style:Nt.sidebar,children:O.jsx(pZ,{})}),O.jsxs("div",{style:Nt.editorColumn,children:[O.jsxs("div",{style:Nt.editorArea,children:[M&&!E&&O.jsxs("div",{style:Nt.changeBanner,children:[O.jsx("span",{style:Nt.bannerText,children:"File modified externally"}),O.jsx("button",{onClick:()=>a(t),style:Nt.bannerBtn,children:"Reload"}),O.jsx("button",{onClick:()=>c(t),style:Nt.bannerDismiss,children:"Dismiss"})]}),L?O.jsx(kF,{path:t}):Q?O.jsx(xF,{content:Q.content,language:Q.language,onContentChange:V,onSave:H},t):O.jsxs("div",{style:Nt.emptyState,children:[O.jsx("div",{style:Nt.emptyIcon,children:"←"}),O.jsx("div",{style:Nt.emptyText,children:"Select a file from the tree"}),O.jsx("div",{style:Nt.emptyHint,children:"Cmd+S to save | right-click for options"})]})]}),u&&O.jsxs(O.Fragment,{children:[O.jsx("div",{style:Nt.resizeHandle,onMouseDown:U}),O.jsx("div",{style:{...Nt.terminalPane,height:g},children:O.jsx(qee,{visible:u})})]}),O.jsx("div",{style:Nt.terminalBar,children:O.jsxs("button",{onClick:()=>f(!u),style:{...Nt.terminalToggle,color:u?"var(--accent)":"var(--text-dim)"},children:[u?"▾":"▴"," Terminal"]})})]})]})]})}const Nt={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"}},Yee=[{id:"agents",label:"Agents"},{id:"editor",label:"Editor"},{id:"stats",label:"Stats"},{id:"teams",label:"Teams"},{id:"approvals",label:"Approvals"}],Xz=[{id:"journalist",label:"Journalist"},{id:"integrations",label:"Integrations"},{id:"skills",label:"Skills"},{id:"schedules",label:"Schedules"}],Hee=new Set(Xz.map(t=>t.id));class Uee extends Wn.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}render(){return this.state.error?Wn.createElement("div",{style:{padding:40,color:"#e06c75",fontFamily:"monospace",fontSize:13,background:"#1e2127",height:"100vh"}},Wn.createElement("h2",{style:{color:"#e6e6e6"}},"GROOVE — Render Error"),Wn.createElement("pre",{style:{whiteSpace:"pre-wrap",marginTop:16,color:"#e06c75"}},this.state.error.message),Wn.createElement("pre",{style:{whiteSpace:"pre-wrap",marginTop:8,color:"#7a8394",fontSize:11}},this.state.error.stack)):this.props.children}}function Gee(){const t=$e(_=>_.agents),e=$e(_=>_.connected),i=$e(_=>_.activeTab),n=$e(_=>_.detailPanel),r=$e(_=>_.statusMessage),s=$e(_=>_.daemonHost),a=$e(_=>_.tunneled),c=$e(_=>_.connect),h=$e(_=>_.setActiveTab),u=$e(_=>_.openDetail),f=$e(_=>_.closeDetail),[g,m]=B.useState(!1),v=B.useRef(null),S=B.useRef(null);B.useEffect(()=>{c()},[c]),B.useEffect(()=>{if(!g)return;const _=T=>{var C,Q;(C=v.current)!=null&&C.contains(T.target)||(Q=S.current)!=null&&Q.contains(T.target)||m(!1)};return document.addEventListener("mousedown",_),()=>document.removeEventListener("mousedown",_)},[g]);const x=t.length>0,w=Hee.has(i);return O.jsxs("div",{style:Ln.root,children:[O.jsxs("header",{style:Ln.header,children:[O.jsx("img",{src:"/groove-logo-short.png",alt:"GROOVE",style:{height:18,marginTop:3,opacity:.85}}),s&&O.jsx("span",{style:Ln.hostBadge,children:s}),O.jsx("div",{style:{flex:1}}),e&&Yee.map(_=>O.jsx("button",{onClick:()=>h(_.id),style:{...Ln.tabBtn,color:i===_.id?"var(--text-bright)":"var(--text-dim)"},children:_.label},_.id)),e&&O.jsxs("div",{style:{position:"relative"},children:[O.jsxs("button",{ref:S,onClick:()=>m(_=>!_),style:{...Ln.tabBtn,color:w||g?"var(--text-bright)":"var(--text-dim)"},children:["More ","▾"]}),g&&O.jsx("div",{ref:v,style:Ln.dropdown,children:Xz.map(_=>O.jsx("button",{onClick:()=>{_.id==="journalist"?(n==null?void 0:n.type)==="journalist"?f():u({type:"journalist"}):h(_.id),m(!1)},style:{...Ln.dropdownItem,color:(_.id==="journalist"?(n==null?void 0:n.type)==="journalist":i===_.id)?"var(--text-bright)":"var(--text-primary)"},children:_.label},_.id))})]}),r&&O.jsx("span",{style:Ln.statusText,children:r}),e&&O.jsx("button",{onClick:()=>u({type:"spawn"}),style:Ln.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:Ln.mainRow,children:[O.jsxs("main",{style:Ln.content,children:[i==="agents"&&(x?O.jsx(f8,{}):O.jsx(Q8,{})),i==="editor"&&O.jsx(Vee,{}),i==="integrations"&&O.jsx(sZ,{}),i==="skills"&&O.jsx(K8,{}),i==="stats"&&O.jsx(L8,{}),i==="schedules"&&O.jsx(uZ,{}),i==="teams"&&O.jsx(z8,{}),i==="approvals"&&O.jsx(q8,{})]}),n&&n.type!=="spawn"&&O.jsxs("aside",{style:{...Ln.detailPanel,width:n.type==="agent"?"45%":320},children:[O.jsx("button",{onClick:f,style:Ln.closeBtn,children:"x"}),n.type==="agent"&&O.jsx(T8,{}),n.type==="journalist"&&O.jsx(M8,{})]}),(n==null?void 0:n.type)==="spawn"&&O.jsx(R8,{})]})]})}function Fee(){return Wn.createElement(Uee,null,Wn.createElement(Gee))}const Ln={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",gap:2,background:"var(--bg-chrome)",flexShrink:0,position:"relative"},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)",marginRight:4},tabBtn:{padding:"0 10px",background:"transparent",border:"none",borderBottom:"2px solid transparent",fontSize:11,fontWeight:500,fontFamily:"var(--font)",cursor:"pointer",transition:"color 0.1s",alignSelf:"stretch",display:"flex",alignItems:"center",marginTop:2},dropdown:{position:"absolute",top:"100%",left:0,background:"#1e2228",border:"1px solid var(--border)",borderRadius:6,padding:"4px 0",zIndex:100,minWidth:160,boxShadow:"0 4px 16px rgba(0,0,0,0.4)"},dropdownItem:{display:"block",width:"100%",padding:"8px 16px",background:"transparent",border:"none",fontSize:11,fontWeight:500,fontFamily:"var(--font)",color:"var(--text-primary)",cursor:"pointer",textAlign:"left"},spawnBtn:{padding:"4px 12px",background:"transparent",border:"1px solid var(--accent)",borderRadius:2,color:"var(--accent)",fontSize:11,fontWeight:600,fontFamily:"var(--font)",cursor:"pointer",marginLeft:12},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(Fee,{}));