@bluelibs/runner-dev 4.5.0 → 4.5.1
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.
- package/dist/cli/generators/scaffold/templates/package.json.d.ts +1 -1
- package/dist/cli/generators/scaffold/templates/package.json.js +1 -1
- package/dist/cli/generators/scaffold/templates/package.json.js.map +1 -1
- package/dist/ui/.vite/manifest.json +1 -1
- package/dist/ui/assets/docs-cA7CIFv6.js +378 -0
- package/dist/ui/assets/docs-cA7CIFv6.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/dist/ui/assets/docs-BEJbZEmV.js +0 -417
- package/dist/ui/assets/docs-BEJbZEmV.js.map +0 -1
|
@@ -0,0 +1,378 @@
|
|
|
1
|
+
var ky=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function C0(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Zh={exports:{}},Ie={};var Sy;function A_(){if(Sy)return Ie;Sy=1;var n=Symbol.for("react.element"),e=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),r=Symbol.for("react.provider"),o=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),g=Symbol.iterator;function O(j){return j===null||typeof j!="object"?null:(j=g&&j[g]||j["@@iterator"],typeof j=="function"?j:null)}var v={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,k={};function S(j,I,le){this.props=j,this.context=I,this.refs=k,this.updater=le||v}S.prototype.isReactComponent={},S.prototype.setState=function(j,I){if(typeof j!="object"&&typeof j!="function"&&j!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,j,I,"setState")},S.prototype.forceUpdate=function(j){this.updater.enqueueForceUpdate(this,j,"forceUpdate")};function $(){}$.prototype=S.prototype;function b(j,I,le){this.props=j,this.context=I,this.refs=k,this.updater=le||v}var C=b.prototype=new $;C.constructor=b,w(C,S.prototype),C.isPureReactComponent=!0;var T=Array.isArray,P=Object.prototype.hasOwnProperty,N={current:null},A={key:!0,ref:!0,__self:!0,__source:!0};function X(j,I,le){var ee,re={},fe=null,me=null;if(I!=null)for(ee in I.ref!==void 0&&(me=I.ref),I.key!==void 0&&(fe=""+I.key),I)P.call(I,ee)&&!A.hasOwnProperty(ee)&&(re[ee]=I[ee]);var je=arguments.length-2;if(je===1)re.children=le;else if(1<je){for(var De=Array(je),Ye=0;Ye<je;Ye++)De[Ye]=arguments[Ye+2];re.children=De}if(j&&j.defaultProps)for(ee in je=j.defaultProps,je)re[ee]===void 0&&(re[ee]=je[ee]);return{$$typeof:n,type:j,key:fe,ref:me,props:re,_owner:N.current}}function F(j,I){return{$$typeof:n,type:j.type,key:I,ref:j.ref,props:j.props,_owner:j._owner}}function H(j){return typeof j=="object"&&j!==null&&j.$$typeof===n}function J(j){var I={"=":"=0",":":"=2"};return"$"+j.replace(/[=:]/g,function(le){return I[le]})}var R=/\/+/g;function V(j,I){return typeof j=="object"&&j!==null&&j.key!=null?J(""+j.key):I.toString(36)}function U(j,I,le,ee,re){var fe=typeof j;(fe==="undefined"||fe==="boolean")&&(j=null);var me=!1;if(j===null)me=!0;else switch(fe){case"string":case"number":me=!0;break;case"object":switch(j.$$typeof){case n:case e:me=!0}}if(me)return me=j,re=re(me),j=ee===""?"."+V(me,0):ee,T(re)?(le="",j!=null&&(le=j.replace(R,"$&/")+"/"),U(re,I,le,"",function(Ye){return Ye})):re!=null&&(H(re)&&(re=F(re,le+(!re.key||me&&me.key===re.key?"":(""+re.key).replace(R,"$&/")+"/")+j)),I.push(re)),1;if(me=0,ee=ee===""?".":ee+":",T(j))for(var je=0;je<j.length;je++){fe=j[je];var De=ee+V(fe,je);me+=U(fe,I,le,De,re)}else if(De=O(j),typeof De=="function")for(j=De.call(j),je=0;!(fe=j.next()).done;)fe=fe.value,De=ee+V(fe,je++),me+=U(fe,I,le,De,re);else if(fe==="object")throw I=String(j),Error("Objects are not valid as a React child (found: "+(I==="[object Object]"?"object with keys {"+Object.keys(j).join(", ")+"}":I)+"). If you meant to render a collection of children, use an array instead.");return me}function te(j,I,le){if(j==null)return j;var ee=[],re=0;return U(j,ee,"","",function(fe){return I.call(le,fe,re++)}),ee}function pe(j){if(j._status===-1){var I=j._result;I=I(),I.then(function(le){(j._status===0||j._status===-1)&&(j._status=1,j._result=le)},function(le){(j._status===0||j._status===-1)&&(j._status=2,j._result=le)}),j._status===-1&&(j._status=0,j._result=I)}if(j._status===1)return j._result.default;throw j._result}var ce={current:null},Y={transition:null},z={ReactCurrentDispatcher:ce,ReactCurrentBatchConfig:Y,ReactCurrentOwner:N};function Q(){throw Error("act(...) is not supported in production builds of React.")}return Ie.Children={map:te,forEach:function(j,I,le){te(j,function(){I.apply(this,arguments)},le)},count:function(j){var I=0;return te(j,function(){I++}),I},toArray:function(j){return te(j,function(I){return I})||[]},only:function(j){if(!H(j))throw Error("React.Children.only expected to receive a single React element child.");return j}},Ie.Component=S,Ie.Fragment=t,Ie.Profiler=i,Ie.PureComponent=b,Ie.StrictMode=s,Ie.Suspense=u,Ie.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=z,Ie.act=Q,Ie.cloneElement=function(j,I,le){if(j==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+j+".");var ee=w({},j.props),re=j.key,fe=j.ref,me=j._owner;if(I!=null){if(I.ref!==void 0&&(fe=I.ref,me=N.current),I.key!==void 0&&(re=""+I.key),j.type&&j.type.defaultProps)var je=j.type.defaultProps;for(De in I)P.call(I,De)&&!A.hasOwnProperty(De)&&(ee[De]=I[De]===void 0&&je!==void 0?je[De]:I[De])}var De=arguments.length-2;if(De===1)ee.children=le;else if(1<De){je=Array(De);for(var Ye=0;Ye<De;Ye++)je[Ye]=arguments[Ye+2];ee.children=je}return{$$typeof:n,type:j.type,key:re,ref:fe,props:ee,_owner:me}},Ie.createContext=function(j){return j={$$typeof:o,_currentValue:j,_currentValue2:j,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},j.Provider={$$typeof:r,_context:j},j.Consumer=j},Ie.createElement=X,Ie.createFactory=function(j){var I=X.bind(null,j);return I.type=j,I},Ie.createRef=function(){return{current:null}},Ie.forwardRef=function(j){return{$$typeof:c,render:j}},Ie.isValidElement=H,Ie.lazy=function(j){return{$$typeof:p,_payload:{_status:-1,_result:j},_init:pe}},Ie.memo=function(j,I){return{$$typeof:f,type:j,compare:I===void 0?null:I}},Ie.startTransition=function(j){var I=Y.transition;Y.transition={};try{j()}finally{Y.transition=I}},Ie.unstable_act=Q,Ie.useCallback=function(j,I){return ce.current.useCallback(j,I)},Ie.useContext=function(j){return ce.current.useContext(j)},Ie.useDebugValue=function(){},Ie.useDeferredValue=function(j){return ce.current.useDeferredValue(j)},Ie.useEffect=function(j,I){return ce.current.useEffect(j,I)},Ie.useId=function(){return ce.current.useId()},Ie.useImperativeHandle=function(j,I,le){return ce.current.useImperativeHandle(j,I,le)},Ie.useInsertionEffect=function(j,I){return ce.current.useInsertionEffect(j,I)},Ie.useLayoutEffect=function(j,I){return ce.current.useLayoutEffect(j,I)},Ie.useMemo=function(j,I){return ce.current.useMemo(j,I)},Ie.useReducer=function(j,I,le){return ce.current.useReducer(j,I,le)},Ie.useRef=function(j){return ce.current.useRef(j)},Ie.useState=function(j){return ce.current.useState(j)},Ie.useSyncExternalStore=function(j,I,le){return ce.current.useSyncExternalStore(j,I,le)},Ie.useTransition=function(){return ce.current.useTransition()},Ie.version="18.3.1",Ie}var by;function Eo(){return by||(by=1,Zh.exports=A_()),Zh.exports}var B=Eo();const se=C0(B);var yc={},zh={exports:{}},On={},Fh={exports:{}},Bh={};var _y;function M_(){return _y||(_y=1,(function(n){function e(Y,z){var Q=Y.length;Y.push(z);e:for(;0<Q;){var j=Q-1>>>1,I=Y[j];if(0<i(I,z))Y[j]=z,Y[Q]=I,Q=j;else break e}}function t(Y){return Y.length===0?null:Y[0]}function s(Y){if(Y.length===0)return null;var z=Y[0],Q=Y.pop();if(Q!==z){Y[0]=Q;e:for(var j=0,I=Y.length,le=I>>>1;j<le;){var ee=2*(j+1)-1,re=Y[ee],fe=ee+1,me=Y[fe];if(0>i(re,Q))fe<I&&0>i(me,re)?(Y[j]=me,Y[fe]=Q,j=fe):(Y[j]=re,Y[ee]=Q,j=ee);else if(fe<I&&0>i(me,Q))Y[j]=me,Y[fe]=Q,j=fe;else break e}}return z}function i(Y,z){var Q=Y.sortIndex-z.sortIndex;return Q!==0?Q:Y.id-z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var r=performance;n.unstable_now=function(){return r.now()}}else{var o=Date,c=o.now();n.unstable_now=function(){return o.now()-c}}var u=[],f=[],p=1,g=null,O=3,v=!1,w=!1,k=!1,S=typeof setTimeout=="function"?setTimeout:null,$=typeof clearTimeout=="function"?clearTimeout:null,b=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function C(Y){for(var z=t(f);z!==null;){if(z.callback===null)s(f);else if(z.startTime<=Y)s(f),z.sortIndex=z.expirationTime,e(u,z);else break;z=t(f)}}function T(Y){if(k=!1,C(Y),!w)if(t(u)!==null)w=!0,pe(P);else{var z=t(f);z!==null&&ce(T,z.startTime-Y)}}function P(Y,z){w=!1,k&&(k=!1,$(X),X=-1),v=!0;var Q=O;try{for(C(z),g=t(u);g!==null&&(!(g.expirationTime>z)||Y&&!J());){var j=g.callback;if(typeof j=="function"){g.callback=null,O=g.priorityLevel;var I=j(g.expirationTime<=z);z=n.unstable_now(),typeof I=="function"?g.callback=I:g===t(u)&&s(u),C(z)}else s(u);g=t(u)}if(g!==null)var le=!0;else{var ee=t(f);ee!==null&&ce(T,ee.startTime-z),le=!1}return le}finally{g=null,O=Q,v=!1}}var N=!1,A=null,X=-1,F=5,H=-1;function J(){return!(n.unstable_now()-H<F)}function R(){if(A!==null){var Y=n.unstable_now();H=Y;var z=!0;try{z=A(!0,Y)}finally{z?V():(N=!1,A=null)}}else N=!1}var V;if(typeof b=="function")V=function(){b(R)};else if(typeof MessageChannel<"u"){var U=new MessageChannel,te=U.port2;U.port1.onmessage=R,V=function(){te.postMessage(null)}}else V=function(){S(R,0)};function pe(Y){A=Y,N||(N=!0,V())}function ce(Y,z){X=S(function(){Y(n.unstable_now())},z)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(Y){Y.callback=null},n.unstable_continueExecution=function(){w||v||(w=!0,pe(P))},n.unstable_forceFrameRate=function(Y){0>Y||125<Y?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):F=0<Y?Math.floor(1e3/Y):5},n.unstable_getCurrentPriorityLevel=function(){return O},n.unstable_getFirstCallbackNode=function(){return t(u)},n.unstable_next=function(Y){switch(O){case 1:case 2:case 3:var z=3;break;default:z=O}var Q=O;O=z;try{return Y()}finally{O=Q}},n.unstable_pauseExecution=function(){},n.unstable_requestPaint=function(){},n.unstable_runWithPriority=function(Y,z){switch(Y){case 1:case 2:case 3:case 4:case 5:break;default:Y=3}var Q=O;O=Y;try{return z()}finally{O=Q}},n.unstable_scheduleCallback=function(Y,z,Q){var j=n.unstable_now();switch(typeof Q=="object"&&Q!==null?(Q=Q.delay,Q=typeof Q=="number"&&0<Q?j+Q:j):Q=j,Y){case 1:var I=-1;break;case 2:I=250;break;case 5:I=1073741823;break;case 4:I=1e4;break;default:I=5e3}return I=Q+I,Y={id:p++,callback:z,priorityLevel:Y,startTime:Q,expirationTime:I,sortIndex:-1},Q>j?(Y.sortIndex=Q,e(f,Y),t(u)===null&&Y===t(f)&&(k?($(X),X=-1):k=!0,ce(T,Q-j))):(Y.sortIndex=I,e(u,Y),w||v||(w=!0,pe(P))),Y},n.unstable_shouldYield=J,n.unstable_wrapCallback=function(Y){var z=O;return function(){var Q=O;O=z;try{return Y.apply(this,arguments)}finally{O=Q}}}})(Bh)),Bh}var $y;function R_(){return $y||($y=1,Fh.exports=M_()),Fh.exports}var Cy;function D_(){if(Cy)return On;Cy=1;var n=Eo(),e=R_();function t(l){for(var a="https://reactjs.org/docs/error-decoder.html?invariant="+l,h=1;h<arguments.length;h++)a+="&args[]="+encodeURIComponent(arguments[h]);return"Minified React error #"+l+"; visit "+a+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var s=new Set,i={};function r(l,a){o(l,a),o(l+"Capture",a)}function o(l,a){for(i[l]=a,l=0;l<a.length;l++)s.add(a[l])}var c=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),u=Object.prototype.hasOwnProperty,f=/^[: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]*$/,p={},g={};function O(l){return u.call(g,l)?!0:u.call(p,l)?!1:f.test(l)?g[l]=!0:(p[l]=!0,!1)}function v(l,a,h,m){if(h!==null&&h.type===0)return!1;switch(typeof a){case"function":case"symbol":return!0;case"boolean":return m?!1:h!==null?!h.acceptsBooleans:(l=l.toLowerCase().slice(0,5),l!=="data-"&&l!=="aria-");default:return!1}}function w(l,a,h,m){if(a===null||typeof a>"u"||v(l,a,h,m))return!0;if(m)return!1;if(h!==null)switch(h.type){case 3:return!a;case 4:return a===!1;case 5:return isNaN(a);case 6:return isNaN(a)||1>a}return!1}function k(l,a,h,m,y,x,_){this.acceptsBooleans=a===2||a===3||a===4,this.attributeName=m,this.attributeNamespace=y,this.mustUseProperty=h,this.propertyName=l,this.type=a,this.sanitizeURL=x,this.removeEmptyString=_}var S={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(l){S[l]=new k(l,0,!1,l,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(l){var a=l[0];S[a]=new k(a,1,!1,l[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(l){S[l]=new k(l,2,!1,l.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(l){S[l]=new k(l,2,!1,l,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(l){S[l]=new k(l,3,!1,l.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(l){S[l]=new k(l,3,!0,l,null,!1,!1)}),["capture","download"].forEach(function(l){S[l]=new k(l,4,!1,l,null,!1,!1)}),["cols","rows","size","span"].forEach(function(l){S[l]=new k(l,6,!1,l,null,!1,!1)}),["rowSpan","start"].forEach(function(l){S[l]=new k(l,5,!1,l.toLowerCase(),null,!1,!1)});var $=/[\-:]([a-z])/g;function b(l){return l[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(l){var a=l.replace($,b);S[a]=new k(a,1,!1,l,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(l){var a=l.replace($,b);S[a]=new k(a,1,!1,l,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(l){var a=l.replace($,b);S[a]=new k(a,1,!1,l,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(l){S[l]=new k(l,1,!1,l.toLowerCase(),null,!1,!1)}),S.xlinkHref=new k("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(l){S[l]=new k(l,1,!1,l.toLowerCase(),null,!0,!0)});function C(l,a,h,m){var y=S.hasOwnProperty(a)?S[a]:null;(y!==null?y.type!==0:m||!(2<a.length)||a[0]!=="o"&&a[0]!=="O"||a[1]!=="n"&&a[1]!=="N")&&(w(a,h,y,m)&&(h=null),m||y===null?O(a)&&(h===null?l.removeAttribute(a):l.setAttribute(a,""+h)):y.mustUseProperty?l[y.propertyName]=h===null?y.type===3?!1:"":h:(a=y.attributeName,m=y.attributeNamespace,h===null?l.removeAttribute(a):(y=y.type,h=y===3||y===4&&h===!0?"":""+h,m?l.setAttributeNS(m,a,h):l.setAttribute(a,h))))}var T=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,P=Symbol.for("react.element"),N=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),X=Symbol.for("react.strict_mode"),F=Symbol.for("react.profiler"),H=Symbol.for("react.provider"),J=Symbol.for("react.context"),R=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),U=Symbol.for("react.suspense_list"),te=Symbol.for("react.memo"),pe=Symbol.for("react.lazy"),ce=Symbol.for("react.offscreen"),Y=Symbol.iterator;function z(l){return l===null||typeof l!="object"?null:(l=Y&&l[Y]||l["@@iterator"],typeof l=="function"?l:null)}var Q=Object.assign,j;function I(l){if(j===void 0)try{throw Error()}catch(h){var a=h.stack.trim().match(/\n( *(at )?)/);j=a&&a[1]||""}return`
|
|
2
|
+
`+j+l}var le=!1;function ee(l,a){if(!l||le)return"";le=!0;var h=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(a)if(a=function(){throw Error()},Object.defineProperty(a.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(a,[])}catch(K){var m=K}Reflect.construct(l,[],a)}else{try{a.call()}catch(K){m=K}l.call(a.prototype)}else{try{throw Error()}catch(K){m=K}l()}}catch(K){if(K&&m&&typeof K.stack=="string"){for(var y=K.stack.split(`
|
|
3
|
+
`),x=m.stack.split(`
|
|
4
|
+
`),_=y.length-1,E=x.length-1;1<=_&&0<=E&&y[_]!==x[E];)E--;for(;1<=_&&0<=E;_--,E--)if(y[_]!==x[E]){if(_!==1||E!==1)do if(_--,E--,0>E||y[_]!==x[E]){var D=`
|
|
5
|
+
`+y[_].replace(" at new "," at ");return l.displayName&&D.includes("<anonymous>")&&(D=D.replace("<anonymous>",l.displayName)),D}while(1<=_&&0<=E);break}}}finally{le=!1,Error.prepareStackTrace=h}return(l=l?l.displayName||l.name:"")?I(l):""}function re(l){switch(l.tag){case 5:return I(l.type);case 16:return I("Lazy");case 13:return I("Suspense");case 19:return I("SuspenseList");case 0:case 2:case 15:return l=ee(l.type,!1),l;case 11:return l=ee(l.type.render,!1),l;case 1:return l=ee(l.type,!0),l;default:return""}}function fe(l){if(l==null)return null;if(typeof l=="function")return l.displayName||l.name||null;if(typeof l=="string")return l;switch(l){case A:return"Fragment";case N:return"Portal";case F:return"Profiler";case X:return"StrictMode";case V:return"Suspense";case U:return"SuspenseList"}if(typeof l=="object")switch(l.$$typeof){case J:return(l.displayName||"Context")+".Consumer";case H:return(l._context.displayName||"Context")+".Provider";case R:var a=l.render;return l=l.displayName,l||(l=a.displayName||a.name||"",l=l!==""?"ForwardRef("+l+")":"ForwardRef"),l;case te:return a=l.displayName||null,a!==null?a:fe(l.type)||"Memo";case pe:a=l._payload,l=l._init;try{return fe(l(a))}catch{}}return null}function me(l){var a=l.type;switch(l.tag){case 24:return"Cache";case 9:return(a.displayName||"Context")+".Consumer";case 10:return(a._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return l=a.render,l=l.displayName||l.name||"",a.displayName||(l!==""?"ForwardRef("+l+")":"ForwardRef");case 7:return"Fragment";case 5:return a;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return fe(a);case 8:return a===X?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof a=="function")return a.displayName||a.name||null;if(typeof a=="string")return a}return null}function je(l){switch(typeof l){case"boolean":case"number":case"string":case"undefined":return l;case"object":return l;default:return""}}function De(l){var a=l.type;return(l=l.nodeName)&&l.toLowerCase()==="input"&&(a==="checkbox"||a==="radio")}function Ye(l){var a=De(l)?"checked":"value",h=Object.getOwnPropertyDescriptor(l.constructor.prototype,a),m=""+l[a];if(!l.hasOwnProperty(a)&&typeof h<"u"&&typeof h.get=="function"&&typeof h.set=="function"){var y=h.get,x=h.set;return Object.defineProperty(l,a,{configurable:!0,get:function(){return y.call(this)},set:function(_){m=""+_,x.call(this,_)}}),Object.defineProperty(l,a,{enumerable:h.enumerable}),{getValue:function(){return m},setValue:function(_){m=""+_},stopTracking:function(){l._valueTracker=null,delete l[a]}}}}function Re(l){l._valueTracker||(l._valueTracker=Ye(l))}function Xe(l){if(!l)return!1;var a=l._valueTracker;if(!a)return!0;var h=a.getValue(),m="";return l&&(m=De(l)?l.checked?"true":"false":l.value),l=m,l!==h?(a.setValue(l),!0):!1}function gt(l){if(l=l||(typeof document<"u"?document:void 0),typeof l>"u")return null;try{return l.activeElement||l.body}catch{return l.body}}function Et(l,a){var h=a.checked;return Q({},a,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:h??l._wrapperState.initialChecked})}function Hs(l,a){var h=a.defaultValue==null?"":a.defaultValue,m=a.checked!=null?a.checked:a.defaultChecked;h=je(a.value!=null?a.value:h),l._wrapperState={initialChecked:m,initialValue:h,controlled:a.type==="checkbox"||a.type==="radio"?a.checked!=null:a.value!=null}}function gr(l,a){a=a.checked,a!=null&&C(l,"checked",a,!1)}function vl(l,a){gr(l,a);var h=je(a.value),m=a.type;if(h!=null)m==="number"?(h===0&&l.value===""||l.value!=h)&&(l.value=""+h):l.value!==""+h&&(l.value=""+h);else if(m==="submit"||m==="reset"){l.removeAttribute("value");return}a.hasOwnProperty("value")?Or(l,a.type,h):a.hasOwnProperty("defaultValue")&&Or(l,a.type,je(a.defaultValue)),a.checked==null&&a.defaultChecked!=null&&(l.defaultChecked=!!a.defaultChecked)}function Ku(l,a,h){if(a.hasOwnProperty("value")||a.hasOwnProperty("defaultValue")){var m=a.type;if(!(m!=="submit"&&m!=="reset"||a.value!==void 0&&a.value!==null))return;a=""+l._wrapperState.initialValue,h||a===l.value||(l.value=a),l.defaultValue=a}h=l.name,h!==""&&(l.name=""),l.defaultChecked=!!l._wrapperState.initialChecked,h!==""&&(l.name=h)}function Or(l,a,h){(a!=="number"||gt(l.ownerDocument)!==l)&&(h==null?l.defaultValue=""+l._wrapperState.initialValue:l.defaultValue!==""+h&&(l.defaultValue=""+h))}var M=Array.isArray;function q(l,a,h,m){if(l=l.options,a){a={};for(var y=0;y<h.length;y++)a["$"+h[y]]=!0;for(h=0;h<l.length;h++)y=a.hasOwnProperty("$"+l[h].value),l[h].selected!==y&&(l[h].selected=y),y&&m&&(l[h].defaultSelected=!0)}else{for(h=""+je(h),a=null,y=0;y<l.length;y++){if(l[y].value===h){l[y].selected=!0,m&&(l[y].defaultSelected=!0);return}a!==null||l[y].disabled||(a=l[y])}a!==null&&(a.selected=!0)}}function ne(l,a){if(a.dangerouslySetInnerHTML!=null)throw Error(t(91));return Q({},a,{value:void 0,defaultValue:void 0,children:""+l._wrapperState.initialValue})}function xe(l,a){var h=a.value;if(h==null){if(h=a.children,a=a.defaultValue,h!=null){if(a!=null)throw Error(t(92));if(M(h)){if(1<h.length)throw Error(t(93));h=h[0]}a=h}a==null&&(a=""),h=a}l._wrapperState={initialValue:je(h)}}function ge(l,a){var h=je(a.value),m=je(a.defaultValue);h!=null&&(h=""+h,h!==l.value&&(l.value=h),a.defaultValue==null&&l.defaultValue!==h&&(l.defaultValue=h)),m!=null&&(l.defaultValue=""+m)}function he(l){var a=l.textContent;a===l._wrapperState.initialValue&&a!==""&&a!==null&&(l.value=a)}function Qe(l){switch(l){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Ve(l,a){return l==null||l==="http://www.w3.org/1999/xhtml"?Qe(a):l==="http://www.w3.org/2000/svg"&&a==="foreignObject"?"http://www.w3.org/1999/xhtml":l}var Ge,en=(function(l){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(a,h,m,y){MSApp.execUnsafeLocalFunction(function(){return l(a,h,m,y)})}:l})(function(l,a){if(l.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in l)l.innerHTML=a;else{for(Ge=Ge||document.createElement("div"),Ge.innerHTML="<svg>"+a.valueOf().toString()+"</svg>",a=Ge.firstChild;l.firstChild;)l.removeChild(l.firstChild);for(;a.firstChild;)l.appendChild(a.firstChild)}});function us(l,a){if(a){var h=l.firstChild;if(h&&h===l.lastChild&&h.nodeType===3){h.nodeValue=a;return}}l.textContent=a}var dn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Ju=["Webkit","ms","Moz","O"];Object.keys(dn).forEach(function(l){Ju.forEach(function(a){a=a+l.charAt(0).toUpperCase()+l.substring(1),dn[a]=dn[l]})});function yr(l,a,h){return a==null||typeof a=="boolean"||a===""?"":h||typeof a!="number"||a===0||dn.hasOwnProperty(l)&&dn[l]?(""+a).trim():a+"px"}function vr(l,a){l=l.style;for(var h in a)if(a.hasOwnProperty(h)){var m=h.indexOf("--")===0,y=yr(h,a[h],m);h==="float"&&(h="cssFloat"),m?l.setProperty(h,y):l[h]=y}}var ed=Q({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function xr(l,a){if(a){if(ed[l]&&(a.children!=null||a.dangerouslySetInnerHTML!=null))throw Error(t(137,l));if(a.dangerouslySetInnerHTML!=null){if(a.children!=null)throw Error(t(60));if(typeof a.dangerouslySetInnerHTML!="object"||!("__html"in a.dangerouslySetInnerHTML))throw Error(t(61))}if(a.style!=null&&typeof a.style!="object")throw Error(t(62))}}function xl(l,a){if(l.indexOf("-")===-1)return typeof a.is=="string";switch(l){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 wr=null;function td(l){return l=l.target||l.srcElement||window,l.correspondingUseElement&&(l=l.correspondingUseElement),l.nodeType===3?l.parentNode:l}var nd=null,kr=null,Sr=null;function Lm(l){if(l=Fl(l)){if(typeof nd!="function")throw Error(t(280));var a=l.stateNode;a&&(a=Ea(a),nd(l.stateNode,l.type,a))}}function Zm(l){kr?Sr?Sr.push(l):Sr=[l]:kr=l}function zm(){if(kr){var l=kr,a=Sr;if(Sr=kr=null,Lm(l),a)for(l=0;l<a.length;l++)Lm(a[l])}}function Fm(l,a){return l(a)}function Bm(){}var sd=!1;function Xm(l,a,h){if(sd)return l(a,h);sd=!0;try{return Fm(l,a,h)}finally{sd=!1,(kr!==null||Sr!==null)&&(Bm(),zm())}}function wl(l,a){var h=l.stateNode;if(h===null)return null;var m=Ea(h);if(m===null)return null;h=m[a];e:switch(a){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(m=!m.disabled)||(l=l.type,m=!(l==="button"||l==="input"||l==="select"||l==="textarea")),l=!m;break e;default:l=!1}if(l)return null;if(h&&typeof h!="function")throw Error(t(231,a,typeof h));return h}var id=!1;if(c)try{var kl={};Object.defineProperty(kl,"passive",{get:function(){id=!0}}),window.addEventListener("test",kl,kl),window.removeEventListener("test",kl,kl)}catch{id=!1}function Zb(l,a,h,m,y,x,_,E,D){var K=Array.prototype.slice.call(arguments,3);try{a.apply(h,K)}catch(ae){this.onError(ae)}}var Sl=!1,da=null,ha=!1,rd=null,zb={onError:function(l){Sl=!0,da=l}};function Fb(l,a,h,m,y,x,_,E,D){Sl=!1,da=null,Zb.apply(zb,arguments)}function Bb(l,a,h,m,y,x,_,E,D){if(Fb.apply(this,arguments),Sl){if(Sl){var K=da;Sl=!1,da=null}else throw Error(t(198));ha||(ha=!0,rd=K)}}function Ai(l){var a=l,h=l;if(l.alternate)for(;a.return;)a=a.return;else{l=a;do a=l,(a.flags&4098)!==0&&(h=a.return),l=a.return;while(l)}return a.tag===3?h:null}function Vm(l){if(l.tag===13){var a=l.memoizedState;if(a===null&&(l=l.alternate,l!==null&&(a=l.memoizedState)),a!==null)return a.dehydrated}return null}function Wm(l){if(Ai(l)!==l)throw Error(t(188))}function Xb(l){var a=l.alternate;if(!a){if(a=Ai(l),a===null)throw Error(t(188));return a!==l?null:l}for(var h=l,m=a;;){var y=h.return;if(y===null)break;var x=y.alternate;if(x===null){if(m=y.return,m!==null){h=m;continue}break}if(y.child===x.child){for(x=y.child;x;){if(x===h)return Wm(y),l;if(x===m)return Wm(y),a;x=x.sibling}throw Error(t(188))}if(h.return!==m.return)h=y,m=x;else{for(var _=!1,E=y.child;E;){if(E===h){_=!0,h=y,m=x;break}if(E===m){_=!0,m=y,h=x;break}E=E.sibling}if(!_){for(E=x.child;E;){if(E===h){_=!0,h=x,m=y;break}if(E===m){_=!0,m=x,h=y;break}E=E.sibling}if(!_)throw Error(t(189))}}if(h.alternate!==m)throw Error(t(190))}if(h.tag!==3)throw Error(t(188));return h.stateNode.current===h?l:a}function Um(l){return l=Xb(l),l!==null?Ym(l):null}function Ym(l){if(l.tag===5||l.tag===6)return l;for(l=l.child;l!==null;){var a=Ym(l);if(a!==null)return a;l=l.sibling}return null}var qm=e.unstable_scheduleCallback,Gm=e.unstable_cancelCallback,Vb=e.unstable_shouldYield,Wb=e.unstable_requestPaint,Ot=e.unstable_now,Ub=e.unstable_getCurrentPriorityLevel,ld=e.unstable_ImmediatePriority,Hm=e.unstable_UserBlockingPriority,fa=e.unstable_NormalPriority,Yb=e.unstable_LowPriority,Km=e.unstable_IdlePriority,pa=null,ds=null;function qb(l){if(ds&&typeof ds.onCommitFiberRoot=="function")try{ds.onCommitFiberRoot(pa,l,void 0,(l.current.flags&128)===128)}catch{}}var Un=Math.clz32?Math.clz32:Kb,Gb=Math.log,Hb=Math.LN2;function Kb(l){return l>>>=0,l===0?32:31-(Gb(l)/Hb|0)|0}var ma=64,ga=4194304;function bl(l){switch(l&-l){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: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&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return l&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return l}}function Oa(l,a){var h=l.pendingLanes;if(h===0)return 0;var m=0,y=l.suspendedLanes,x=l.pingedLanes,_=h&268435455;if(_!==0){var E=_&~y;E!==0?m=bl(E):(x&=_,x!==0&&(m=bl(x)))}else _=h&~y,_!==0?m=bl(_):x!==0&&(m=bl(x));if(m===0)return 0;if(a!==0&&a!==m&&(a&y)===0&&(y=m&-m,x=a&-a,y>=x||y===16&&(x&4194240)!==0))return a;if((m&4)!==0&&(m|=h&16),a=l.entangledLanes,a!==0)for(l=l.entanglements,a&=m;0<a;)h=31-Un(a),y=1<<h,m|=l[h],a&=~y;return m}function Jb(l,a){switch(l){case 1:case 2:case 4:return a+250;case 8:case 16:case 32:case 64: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 a+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function e1(l,a){for(var h=l.suspendedLanes,m=l.pingedLanes,y=l.expirationTimes,x=l.pendingLanes;0<x;){var _=31-Un(x),E=1<<_,D=y[_];D===-1?((E&h)===0||(E&m)!==0)&&(y[_]=Jb(E,a)):D<=a&&(l.expiredLanes|=E),x&=~E}}function od(l){return l=l.pendingLanes&-1073741825,l!==0?l:l&1073741824?1073741824:0}function Jm(){var l=ma;return ma<<=1,(ma&4194240)===0&&(ma=64),l}function ad(l){for(var a=[],h=0;31>h;h++)a.push(l);return a}function _l(l,a,h){l.pendingLanes|=a,a!==536870912&&(l.suspendedLanes=0,l.pingedLanes=0),l=l.eventTimes,a=31-Un(a),l[a]=h}function t1(l,a){var h=l.pendingLanes&~a;l.pendingLanes=a,l.suspendedLanes=0,l.pingedLanes=0,l.expiredLanes&=a,l.mutableReadLanes&=a,l.entangledLanes&=a,a=l.entanglements;var m=l.eventTimes;for(l=l.expirationTimes;0<h;){var y=31-Un(h),x=1<<y;a[y]=0,m[y]=-1,l[y]=-1,h&=~x}}function cd(l,a){var h=l.entangledLanes|=a;for(l=l.entanglements;h;){var m=31-Un(h),y=1<<m;y&a|l[m]&a&&(l[m]|=a),h&=~y}}var Je=0;function eg(l){return l&=-l,1<l?4<l?(l&268435455)!==0?16:536870912:4:1}var tg,ud,ng,sg,ig,dd=!1,ya=[],Ks=null,Js=null,ei=null,$l=new Map,Cl=new Map,ti=[],n1="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 submit".split(" ");function rg(l,a){switch(l){case"focusin":case"focusout":Ks=null;break;case"dragenter":case"dragleave":Js=null;break;case"mouseover":case"mouseout":ei=null;break;case"pointerover":case"pointerout":$l.delete(a.pointerId);break;case"gotpointercapture":case"lostpointercapture":Cl.delete(a.pointerId)}}function Tl(l,a,h,m,y,x){return l===null||l.nativeEvent!==x?(l={blockedOn:a,domEventName:h,eventSystemFlags:m,nativeEvent:x,targetContainers:[y]},a!==null&&(a=Fl(a),a!==null&&ud(a)),l):(l.eventSystemFlags|=m,a=l.targetContainers,y!==null&&a.indexOf(y)===-1&&a.push(y),l)}function s1(l,a,h,m,y){switch(a){case"focusin":return Ks=Tl(Ks,l,a,h,m,y),!0;case"dragenter":return Js=Tl(Js,l,a,h,m,y),!0;case"mouseover":return ei=Tl(ei,l,a,h,m,y),!0;case"pointerover":var x=y.pointerId;return $l.set(x,Tl($l.get(x)||null,l,a,h,m,y)),!0;case"gotpointercapture":return x=y.pointerId,Cl.set(x,Tl(Cl.get(x)||null,l,a,h,m,y)),!0}return!1}function lg(l){var a=Mi(l.target);if(a!==null){var h=Ai(a);if(h!==null){if(a=h.tag,a===13){if(a=Vm(h),a!==null){l.blockedOn=a,ig(l.priority,function(){ng(h)});return}}else if(a===3&&h.stateNode.current.memoizedState.isDehydrated){l.blockedOn=h.tag===3?h.stateNode.containerInfo:null;return}}}l.blockedOn=null}function va(l){if(l.blockedOn!==null)return!1;for(var a=l.targetContainers;0<a.length;){var h=fd(l.domEventName,l.eventSystemFlags,a[0],l.nativeEvent);if(h===null){h=l.nativeEvent;var m=new h.constructor(h.type,h);wr=m,h.target.dispatchEvent(m),wr=null}else return a=Fl(h),a!==null&&ud(a),l.blockedOn=h,!1;a.shift()}return!0}function og(l,a,h){va(l)&&h.delete(a)}function i1(){dd=!1,Ks!==null&&va(Ks)&&(Ks=null),Js!==null&&va(Js)&&(Js=null),ei!==null&&va(ei)&&(ei=null),$l.forEach(og),Cl.forEach(og)}function Pl(l,a){l.blockedOn===a&&(l.blockedOn=null,dd||(dd=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,i1)))}function jl(l){function a(y){return Pl(y,l)}if(0<ya.length){Pl(ya[0],l);for(var h=1;h<ya.length;h++){var m=ya[h];m.blockedOn===l&&(m.blockedOn=null)}}for(Ks!==null&&Pl(Ks,l),Js!==null&&Pl(Js,l),ei!==null&&Pl(ei,l),$l.forEach(a),Cl.forEach(a),h=0;h<ti.length;h++)m=ti[h],m.blockedOn===l&&(m.blockedOn=null);for(;0<ti.length&&(h=ti[0],h.blockedOn===null);)lg(h),h.blockedOn===null&&ti.shift()}var br=T.ReactCurrentBatchConfig,xa=!0;function r1(l,a,h,m){var y=Je,x=br.transition;br.transition=null;try{Je=1,hd(l,a,h,m)}finally{Je=y,br.transition=x}}function l1(l,a,h,m){var y=Je,x=br.transition;br.transition=null;try{Je=4,hd(l,a,h,m)}finally{Je=y,br.transition=x}}function hd(l,a,h,m){if(xa){var y=fd(l,a,h,m);if(y===null)jd(l,a,m,wa,h),rg(l,m);else if(s1(y,l,a,h,m))m.stopPropagation();else if(rg(l,m),a&4&&-1<n1.indexOf(l)){for(;y!==null;){var x=Fl(y);if(x!==null&&tg(x),x=fd(l,a,h,m),x===null&&jd(l,a,m,wa,h),x===y)break;y=x}y!==null&&m.stopPropagation()}else jd(l,a,m,null,h)}}var wa=null;function fd(l,a,h,m){if(wa=null,l=td(m),l=Mi(l),l!==null)if(a=Ai(l),a===null)l=null;else if(h=a.tag,h===13){if(l=Vm(a),l!==null)return l;l=null}else if(h===3){if(a.stateNode.current.memoizedState.isDehydrated)return a.tag===3?a.stateNode.containerInfo:null;l=null}else a!==l&&(l=null);return wa=l,null}function ag(l){switch(l){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"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 1;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"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Ub()){case ld:return 1;case Hm:return 4;case fa:case Yb:return 16;case Km:return 536870912;default:return 16}default:return 16}}var ni=null,pd=null,ka=null;function cg(){if(ka)return ka;var l,a=pd,h=a.length,m,y="value"in ni?ni.value:ni.textContent,x=y.length;for(l=0;l<h&&a[l]===y[l];l++);var _=h-l;for(m=1;m<=_&&a[h-m]===y[x-m];m++);return ka=y.slice(l,1<m?1-m:void 0)}function Sa(l){var a=l.keyCode;return"charCode"in l?(l=l.charCode,l===0&&a===13&&(l=13)):l=a,l===10&&(l=13),32<=l||l===13?l:0}function ba(){return!0}function ug(){return!1}function $n(l){function a(h,m,y,x,_){this._reactName=h,this._targetInst=y,this.type=m,this.nativeEvent=x,this.target=_,this.currentTarget=null;for(var E in l)l.hasOwnProperty(E)&&(h=l[E],this[E]=h?h(x):x[E]);return this.isDefaultPrevented=(x.defaultPrevented!=null?x.defaultPrevented:x.returnValue===!1)?ba:ug,this.isPropagationStopped=ug,this}return Q(a.prototype,{preventDefault:function(){this.defaultPrevented=!0;var h=this.nativeEvent;h&&(h.preventDefault?h.preventDefault():typeof h.returnValue!="unknown"&&(h.returnValue=!1),this.isDefaultPrevented=ba)},stopPropagation:function(){var h=this.nativeEvent;h&&(h.stopPropagation?h.stopPropagation():typeof h.cancelBubble!="unknown"&&(h.cancelBubble=!0),this.isPropagationStopped=ba)},persist:function(){},isPersistent:ba}),a}var _r={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(l){return l.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},md=$n(_r),Ql=Q({},_r,{view:0,detail:0}),o1=$n(Ql),gd,Od,Nl,_a=Q({},Ql,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:vd,button:0,buttons:0,relatedTarget:function(l){return l.relatedTarget===void 0?l.fromElement===l.srcElement?l.toElement:l.fromElement:l.relatedTarget},movementX:function(l){return"movementX"in l?l.movementX:(l!==Nl&&(Nl&&l.type==="mousemove"?(gd=l.screenX-Nl.screenX,Od=l.screenY-Nl.screenY):Od=gd=0,Nl=l),gd)},movementY:function(l){return"movementY"in l?l.movementY:Od}}),dg=$n(_a),a1=Q({},_a,{dataTransfer:0}),c1=$n(a1),u1=Q({},Ql,{relatedTarget:0}),yd=$n(u1),d1=Q({},_r,{animationName:0,elapsedTime:0,pseudoElement:0}),h1=$n(d1),f1=Q({},_r,{clipboardData:function(l){return"clipboardData"in l?l.clipboardData:window.clipboardData}}),p1=$n(f1),m1=Q({},_r,{data:0}),hg=$n(m1),g1={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},O1={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"},y1={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function v1(l){var a=this.nativeEvent;return a.getModifierState?a.getModifierState(l):(l=y1[l])?!!a[l]:!1}function vd(){return v1}var x1=Q({},Ql,{key:function(l){if(l.key){var a=g1[l.key]||l.key;if(a!=="Unidentified")return a}return l.type==="keypress"?(l=Sa(l),l===13?"Enter":String.fromCharCode(l)):l.type==="keydown"||l.type==="keyup"?O1[l.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:vd,charCode:function(l){return l.type==="keypress"?Sa(l):0},keyCode:function(l){return l.type==="keydown"||l.type==="keyup"?l.keyCode:0},which:function(l){return l.type==="keypress"?Sa(l):l.type==="keydown"||l.type==="keyup"?l.keyCode:0}}),w1=$n(x1),k1=Q({},_a,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),fg=$n(k1),S1=Q({},Ql,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:vd}),b1=$n(S1),_1=Q({},_r,{propertyName:0,elapsedTime:0,pseudoElement:0}),$1=$n(_1),C1=Q({},_a,{deltaX:function(l){return"deltaX"in l?l.deltaX:"wheelDeltaX"in l?-l.wheelDeltaX:0},deltaY:function(l){return"deltaY"in l?l.deltaY:"wheelDeltaY"in l?-l.wheelDeltaY:"wheelDelta"in l?-l.wheelDelta:0},deltaZ:0,deltaMode:0}),T1=$n(C1),P1=[9,13,27,32],xd=c&&"CompositionEvent"in window,El=null;c&&"documentMode"in document&&(El=document.documentMode);var j1=c&&"TextEvent"in window&&!El,pg=c&&(!xd||El&&8<El&&11>=El),mg=" ",gg=!1;function Og(l,a){switch(l){case"keyup":return P1.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function yg(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var $r=!1;function Q1(l,a){switch(l){case"compositionend":return yg(a);case"keypress":return a.which!==32?null:(gg=!0,mg);case"textInput":return l=a.data,l===mg&&gg?null:l;default:return null}}function N1(l,a){if($r)return l==="compositionend"||!xd&&Og(l,a)?(l=cg(),ka=pd=ni=null,$r=!1,l):null;switch(l){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1<a.char.length)return a.char;if(a.which)return String.fromCharCode(a.which)}return null;case"compositionend":return pg&&a.locale!=="ko"?null:a.data;default:return null}}var E1={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 vg(l){var a=l&&l.nodeName&&l.nodeName.toLowerCase();return a==="input"?!!E1[l.type]:a==="textarea"}function xg(l,a,h,m){Zm(m),a=ja(a,"onChange"),0<a.length&&(h=new md("onChange","change",null,h,m),l.push({event:h,listeners:a}))}var Al=null,Ml=null;function A1(l){Ig(l,0)}function $a(l){var a=Qr(l);if(Xe(a))return l}function M1(l,a){if(l==="change")return a}var wg=!1;if(c){var wd;if(c){var kd="oninput"in document;if(!kd){var kg=document.createElement("div");kg.setAttribute("oninput","return;"),kd=typeof kg.oninput=="function"}wd=kd}else wd=!1;wg=wd&&(!document.documentMode||9<document.documentMode)}function Sg(){Al&&(Al.detachEvent("onpropertychange",bg),Ml=Al=null)}function bg(l){if(l.propertyName==="value"&&$a(Ml)){var a=[];xg(a,Ml,l,td(l)),Xm(A1,a)}}function R1(l,a,h){l==="focusin"?(Sg(),Al=a,Ml=h,Al.attachEvent("onpropertychange",bg)):l==="focusout"&&Sg()}function D1(l){if(l==="selectionchange"||l==="keyup"||l==="keydown")return $a(Ml)}function I1(l,a){if(l==="click")return $a(a)}function L1(l,a){if(l==="input"||l==="change")return $a(a)}function Z1(l,a){return l===a&&(l!==0||1/l===1/a)||l!==l&&a!==a}var Yn=typeof Object.is=="function"?Object.is:Z1;function Rl(l,a){if(Yn(l,a))return!0;if(typeof l!="object"||l===null||typeof a!="object"||a===null)return!1;var h=Object.keys(l),m=Object.keys(a);if(h.length!==m.length)return!1;for(m=0;m<h.length;m++){var y=h[m];if(!u.call(a,y)||!Yn(l[y],a[y]))return!1}return!0}function _g(l){for(;l&&l.firstChild;)l=l.firstChild;return l}function $g(l,a){var h=_g(l);l=0;for(var m;h;){if(h.nodeType===3){if(m=l+h.textContent.length,l<=a&&m>=a)return{node:h,offset:a-l};l=m}e:{for(;h;){if(h.nextSibling){h=h.nextSibling;break e}h=h.parentNode}h=void 0}h=_g(h)}}function Cg(l,a){return l&&a?l===a?!0:l&&l.nodeType===3?!1:a&&a.nodeType===3?Cg(l,a.parentNode):"contains"in l?l.contains(a):l.compareDocumentPosition?!!(l.compareDocumentPosition(a)&16):!1:!1}function Tg(){for(var l=window,a=gt();a instanceof l.HTMLIFrameElement;){try{var h=typeof a.contentWindow.location.href=="string"}catch{h=!1}if(h)l=a.contentWindow;else break;a=gt(l.document)}return a}function Sd(l){var a=l&&l.nodeName&&l.nodeName.toLowerCase();return a&&(a==="input"&&(l.type==="text"||l.type==="search"||l.type==="tel"||l.type==="url"||l.type==="password")||a==="textarea"||l.contentEditable==="true")}function z1(l){var a=Tg(),h=l.focusedElem,m=l.selectionRange;if(a!==h&&h&&h.ownerDocument&&Cg(h.ownerDocument.documentElement,h)){if(m!==null&&Sd(h)){if(a=m.start,l=m.end,l===void 0&&(l=a),"selectionStart"in h)h.selectionStart=a,h.selectionEnd=Math.min(l,h.value.length);else if(l=(a=h.ownerDocument||document)&&a.defaultView||window,l.getSelection){l=l.getSelection();var y=h.textContent.length,x=Math.min(m.start,y);m=m.end===void 0?x:Math.min(m.end,y),!l.extend&&x>m&&(y=m,m=x,x=y),y=$g(h,x);var _=$g(h,m);y&&_&&(l.rangeCount!==1||l.anchorNode!==y.node||l.anchorOffset!==y.offset||l.focusNode!==_.node||l.focusOffset!==_.offset)&&(a=a.createRange(),a.setStart(y.node,y.offset),l.removeAllRanges(),x>m?(l.addRange(a),l.extend(_.node,_.offset)):(a.setEnd(_.node,_.offset),l.addRange(a)))}}for(a=[],l=h;l=l.parentNode;)l.nodeType===1&&a.push({element:l,left:l.scrollLeft,top:l.scrollTop});for(typeof h.focus=="function"&&h.focus(),h=0;h<a.length;h++)l=a[h],l.element.scrollLeft=l.left,l.element.scrollTop=l.top}}var F1=c&&"documentMode"in document&&11>=document.documentMode,Cr=null,bd=null,Dl=null,_d=!1;function Pg(l,a,h){var m=h.window===h?h.document:h.nodeType===9?h:h.ownerDocument;_d||Cr==null||Cr!==gt(m)||(m=Cr,"selectionStart"in m&&Sd(m)?m={start:m.selectionStart,end:m.selectionEnd}:(m=(m.ownerDocument&&m.ownerDocument.defaultView||window).getSelection(),m={anchorNode:m.anchorNode,anchorOffset:m.anchorOffset,focusNode:m.focusNode,focusOffset:m.focusOffset}),Dl&&Rl(Dl,m)||(Dl=m,m=ja(bd,"onSelect"),0<m.length&&(a=new md("onSelect","select",null,a,h),l.push({event:a,listeners:m}),a.target=Cr)))}function Ca(l,a){var h={};return h[l.toLowerCase()]=a.toLowerCase(),h["Webkit"+l]="webkit"+a,h["Moz"+l]="moz"+a,h}var Tr={animationend:Ca("Animation","AnimationEnd"),animationiteration:Ca("Animation","AnimationIteration"),animationstart:Ca("Animation","AnimationStart"),transitionend:Ca("Transition","TransitionEnd")},$d={},jg={};c&&(jg=document.createElement("div").style,"AnimationEvent"in window||(delete Tr.animationend.animation,delete Tr.animationiteration.animation,delete Tr.animationstart.animation),"TransitionEvent"in window||delete Tr.transitionend.transition);function Ta(l){if($d[l])return $d[l];if(!Tr[l])return l;var a=Tr[l],h;for(h in a)if(a.hasOwnProperty(h)&&h in jg)return $d[l]=a[h];return l}var Qg=Ta("animationend"),Ng=Ta("animationiteration"),Eg=Ta("animationstart"),Ag=Ta("transitionend"),Mg=new Map,Rg="abort auxClick 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(" ");function si(l,a){Mg.set(l,a),r(a,[l])}for(var Cd=0;Cd<Rg.length;Cd++){var Td=Rg[Cd],B1=Td.toLowerCase(),X1=Td[0].toUpperCase()+Td.slice(1);si(B1,"on"+X1)}si(Qg,"onAnimationEnd"),si(Ng,"onAnimationIteration"),si(Eg,"onAnimationStart"),si("dblclick","onDoubleClick"),si("focusin","onFocus"),si("focusout","onBlur"),si(Ag,"onTransitionEnd"),o("onMouseEnter",["mouseout","mouseover"]),o("onMouseLeave",["mouseout","mouseover"]),o("onPointerEnter",["pointerout","pointerover"]),o("onPointerLeave",["pointerout","pointerover"]),r("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),r("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),r("onBeforeInput",["compositionend","keypress","textInput","paste"]),r("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),r("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),r("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Il="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(" "),V1=new Set("cancel close invalid load scroll toggle".split(" ").concat(Il));function Dg(l,a,h){var m=l.type||"unknown-event";l.currentTarget=h,Bb(m,a,void 0,l),l.currentTarget=null}function Ig(l,a){a=(a&4)!==0;for(var h=0;h<l.length;h++){var m=l[h],y=m.event;m=m.listeners;e:{var x=void 0;if(a)for(var _=m.length-1;0<=_;_--){var E=m[_],D=E.instance,K=E.currentTarget;if(E=E.listener,D!==x&&y.isPropagationStopped())break e;Dg(y,E,K),x=D}else for(_=0;_<m.length;_++){if(E=m[_],D=E.instance,K=E.currentTarget,E=E.listener,D!==x&&y.isPropagationStopped())break e;Dg(y,E,K),x=D}}}if(ha)throw l=rd,ha=!1,rd=null,l}function it(l,a){var h=a[Rd];h===void 0&&(h=a[Rd]=new Set);var m=l+"__bubble";h.has(m)||(Lg(a,l,2,!1),h.add(m))}function Pd(l,a,h){var m=0;a&&(m|=4),Lg(h,l,m,a)}var Pa="_reactListening"+Math.random().toString(36).slice(2);function Ll(l){if(!l[Pa]){l[Pa]=!0,s.forEach(function(h){h!=="selectionchange"&&(V1.has(h)||Pd(h,!1,l),Pd(h,!0,l))});var a=l.nodeType===9?l:l.ownerDocument;a===null||a[Pa]||(a[Pa]=!0,Pd("selectionchange",!1,a))}}function Lg(l,a,h,m){switch(ag(a)){case 1:var y=r1;break;case 4:y=l1;break;default:y=hd}h=y.bind(null,a,h,l),y=void 0,!id||a!=="touchstart"&&a!=="touchmove"&&a!=="wheel"||(y=!0),m?y!==void 0?l.addEventListener(a,h,{capture:!0,passive:y}):l.addEventListener(a,h,!0):y!==void 0?l.addEventListener(a,h,{passive:y}):l.addEventListener(a,h,!1)}function jd(l,a,h,m,y){var x=m;if((a&1)===0&&(a&2)===0&&m!==null)e:for(;;){if(m===null)return;var _=m.tag;if(_===3||_===4){var E=m.stateNode.containerInfo;if(E===y||E.nodeType===8&&E.parentNode===y)break;if(_===4)for(_=m.return;_!==null;){var D=_.tag;if((D===3||D===4)&&(D=_.stateNode.containerInfo,D===y||D.nodeType===8&&D.parentNode===y))return;_=_.return}for(;E!==null;){if(_=Mi(E),_===null)return;if(D=_.tag,D===5||D===6){m=x=_;continue e}E=E.parentNode}}m=m.return}Xm(function(){var K=x,ae=td(h),ue=[];e:{var oe=Mg.get(l);if(oe!==void 0){var ke=md,_e=l;switch(l){case"keypress":if(Sa(h)===0)break e;case"keydown":case"keyup":ke=w1;break;case"focusin":_e="focus",ke=yd;break;case"focusout":_e="blur",ke=yd;break;case"beforeblur":case"afterblur":ke=yd;break;case"click":if(h.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ke=dg;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ke=c1;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ke=b1;break;case Qg:case Ng:case Eg:ke=h1;break;case Ag:ke=$1;break;case"scroll":ke=o1;break;case"wheel":ke=T1;break;case"copy":case"cut":case"paste":ke=p1;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ke=fg}var $e=(a&4)!==0,yt=!$e&&l==="scroll",W=$e?oe!==null?oe+"Capture":null:oe;$e=[];for(var L=K,G;L!==null;){G=L;var de=G.stateNode;if(G.tag===5&&de!==null&&(G=de,W!==null&&(de=wl(L,W),de!=null&&$e.push(Zl(L,de,G)))),yt)break;L=L.return}0<$e.length&&(oe=new ke(oe,_e,null,h,ae),ue.push({event:oe,listeners:$e}))}}if((a&7)===0){e:{if(oe=l==="mouseover"||l==="pointerover",ke=l==="mouseout"||l==="pointerout",oe&&h!==wr&&(_e=h.relatedTarget||h.fromElement)&&(Mi(_e)||_e[Es]))break e;if((ke||oe)&&(oe=ae.window===ae?ae:(oe=ae.ownerDocument)?oe.defaultView||oe.parentWindow:window,ke?(_e=h.relatedTarget||h.toElement,ke=K,_e=_e?Mi(_e):null,_e!==null&&(yt=Ai(_e),_e!==yt||_e.tag!==5&&_e.tag!==6)&&(_e=null)):(ke=null,_e=K),ke!==_e)){if($e=dg,de="onMouseLeave",W="onMouseEnter",L="mouse",(l==="pointerout"||l==="pointerover")&&($e=fg,de="onPointerLeave",W="onPointerEnter",L="pointer"),yt=ke==null?oe:Qr(ke),G=_e==null?oe:Qr(_e),oe=new $e(de,L+"leave",ke,h,ae),oe.target=yt,oe.relatedTarget=G,de=null,Mi(ae)===K&&($e=new $e(W,L+"enter",_e,h,ae),$e.target=G,$e.relatedTarget=yt,de=$e),yt=de,ke&&_e)t:{for($e=ke,W=_e,L=0,G=$e;G;G=Pr(G))L++;for(G=0,de=W;de;de=Pr(de))G++;for(;0<L-G;)$e=Pr($e),L--;for(;0<G-L;)W=Pr(W),G--;for(;L--;){if($e===W||W!==null&&$e===W.alternate)break t;$e=Pr($e),W=Pr(W)}$e=null}else $e=null;ke!==null&&Zg(ue,oe,ke,$e,!1),_e!==null&&yt!==null&&Zg(ue,yt,_e,$e,!0)}}e:{if(oe=K?Qr(K):window,ke=oe.nodeName&&oe.nodeName.toLowerCase(),ke==="select"||ke==="input"&&oe.type==="file")var Te=M1;else if(vg(oe))if(wg)Te=L1;else{Te=D1;var Ne=R1}else(ke=oe.nodeName)&&ke.toLowerCase()==="input"&&(oe.type==="checkbox"||oe.type==="radio")&&(Te=I1);if(Te&&(Te=Te(l,K))){xg(ue,Te,h,ae);break e}Ne&&Ne(l,oe,K),l==="focusout"&&(Ne=oe._wrapperState)&&Ne.controlled&&oe.type==="number"&&Or(oe,"number",oe.value)}switch(Ne=K?Qr(K):window,l){case"focusin":(vg(Ne)||Ne.contentEditable==="true")&&(Cr=Ne,bd=K,Dl=null);break;case"focusout":Dl=bd=Cr=null;break;case"mousedown":_d=!0;break;case"contextmenu":case"mouseup":case"dragend":_d=!1,Pg(ue,h,ae);break;case"selectionchange":if(F1)break;case"keydown":case"keyup":Pg(ue,h,ae)}var Ee;if(xd)e:{switch(l){case"compositionstart":var Ae="onCompositionStart";break e;case"compositionend":Ae="onCompositionEnd";break e;case"compositionupdate":Ae="onCompositionUpdate";break e}Ae=void 0}else $r?Og(l,h)&&(Ae="onCompositionEnd"):l==="keydown"&&h.keyCode===229&&(Ae="onCompositionStart");Ae&&(pg&&h.locale!=="ko"&&($r||Ae!=="onCompositionStart"?Ae==="onCompositionEnd"&&$r&&(Ee=cg()):(ni=ae,pd="value"in ni?ni.value:ni.textContent,$r=!0)),Ne=ja(K,Ae),0<Ne.length&&(Ae=new hg(Ae,l,null,h,ae),ue.push({event:Ae,listeners:Ne}),Ee?Ae.data=Ee:(Ee=yg(h),Ee!==null&&(Ae.data=Ee)))),(Ee=j1?Q1(l,h):N1(l,h))&&(K=ja(K,"onBeforeInput"),0<K.length&&(ae=new hg("onBeforeInput","beforeinput",null,h,ae),ue.push({event:ae,listeners:K}),ae.data=Ee))}Ig(ue,a)})}function Zl(l,a,h){return{instance:l,listener:a,currentTarget:h}}function ja(l,a){for(var h=a+"Capture",m=[];l!==null;){var y=l,x=y.stateNode;y.tag===5&&x!==null&&(y=x,x=wl(l,h),x!=null&&m.unshift(Zl(l,x,y)),x=wl(l,a),x!=null&&m.push(Zl(l,x,y))),l=l.return}return m}function Pr(l){if(l===null)return null;do l=l.return;while(l&&l.tag!==5);return l||null}function Zg(l,a,h,m,y){for(var x=a._reactName,_=[];h!==null&&h!==m;){var E=h,D=E.alternate,K=E.stateNode;if(D!==null&&D===m)break;E.tag===5&&K!==null&&(E=K,y?(D=wl(h,x),D!=null&&_.unshift(Zl(h,D,E))):y||(D=wl(h,x),D!=null&&_.push(Zl(h,D,E)))),h=h.return}_.length!==0&&l.push({event:a,listeners:_})}var W1=/\r\n?/g,U1=/\u0000|\uFFFD/g;function zg(l){return(typeof l=="string"?l:""+l).replace(W1,`
|
|
6
|
+
`).replace(U1,"")}function Qa(l,a,h){if(a=zg(a),zg(l)!==a&&h)throw Error(t(425))}function Na(){}var Qd=null,Nd=null;function Ed(l,a){return l==="textarea"||l==="noscript"||typeof a.children=="string"||typeof a.children=="number"||typeof a.dangerouslySetInnerHTML=="object"&&a.dangerouslySetInnerHTML!==null&&a.dangerouslySetInnerHTML.__html!=null}var Ad=typeof setTimeout=="function"?setTimeout:void 0,Y1=typeof clearTimeout=="function"?clearTimeout:void 0,Fg=typeof Promise=="function"?Promise:void 0,q1=typeof queueMicrotask=="function"?queueMicrotask:typeof Fg<"u"?function(l){return Fg.resolve(null).then(l).catch(G1)}:Ad;function G1(l){setTimeout(function(){throw l})}function Md(l,a){var h=a,m=0;do{var y=h.nextSibling;if(l.removeChild(h),y&&y.nodeType===8)if(h=y.data,h==="/$"){if(m===0){l.removeChild(y),jl(a);return}m--}else h!=="$"&&h!=="$?"&&h!=="$!"||m++;h=y}while(h);jl(a)}function ii(l){for(;l!=null;l=l.nextSibling){var a=l.nodeType;if(a===1||a===3)break;if(a===8){if(a=l.data,a==="$"||a==="$!"||a==="$?")break;if(a==="/$")return null}}return l}function Bg(l){l=l.previousSibling;for(var a=0;l;){if(l.nodeType===8){var h=l.data;if(h==="$"||h==="$!"||h==="$?"){if(a===0)return l;a--}else h==="/$"&&a++}l=l.previousSibling}return null}var jr=Math.random().toString(36).slice(2),hs="__reactFiber$"+jr,zl="__reactProps$"+jr,Es="__reactContainer$"+jr,Rd="__reactEvents$"+jr,H1="__reactListeners$"+jr,K1="__reactHandles$"+jr;function Mi(l){var a=l[hs];if(a)return a;for(var h=l.parentNode;h;){if(a=h[Es]||h[hs]){if(h=a.alternate,a.child!==null||h!==null&&h.child!==null)for(l=Bg(l);l!==null;){if(h=l[hs])return h;l=Bg(l)}return a}l=h,h=l.parentNode}return null}function Fl(l){return l=l[hs]||l[Es],!l||l.tag!==5&&l.tag!==6&&l.tag!==13&&l.tag!==3?null:l}function Qr(l){if(l.tag===5||l.tag===6)return l.stateNode;throw Error(t(33))}function Ea(l){return l[zl]||null}var Dd=[],Nr=-1;function ri(l){return{current:l}}function rt(l){0>Nr||(l.current=Dd[Nr],Dd[Nr]=null,Nr--)}function st(l,a){Nr++,Dd[Nr]=l.current,l.current=a}var li={},Ut=ri(li),hn=ri(!1),Ri=li;function Er(l,a){var h=l.type.contextTypes;if(!h)return li;var m=l.stateNode;if(m&&m.__reactInternalMemoizedUnmaskedChildContext===a)return m.__reactInternalMemoizedMaskedChildContext;var y={},x;for(x in h)y[x]=a[x];return m&&(l=l.stateNode,l.__reactInternalMemoizedUnmaskedChildContext=a,l.__reactInternalMemoizedMaskedChildContext=y),y}function fn(l){return l=l.childContextTypes,l!=null}function Aa(){rt(hn),rt(Ut)}function Xg(l,a,h){if(Ut.current!==li)throw Error(t(168));st(Ut,a),st(hn,h)}function Vg(l,a,h){var m=l.stateNode;if(a=a.childContextTypes,typeof m.getChildContext!="function")return h;m=m.getChildContext();for(var y in m)if(!(y in a))throw Error(t(108,me(l)||"Unknown",y));return Q({},h,m)}function Ma(l){return l=(l=l.stateNode)&&l.__reactInternalMemoizedMergedChildContext||li,Ri=Ut.current,st(Ut,l),st(hn,hn.current),!0}function Wg(l,a,h){var m=l.stateNode;if(!m)throw Error(t(169));h?(l=Vg(l,a,Ri),m.__reactInternalMemoizedMergedChildContext=l,rt(hn),rt(Ut),st(Ut,l)):rt(hn),st(hn,h)}var As=null,Ra=!1,Id=!1;function Ug(l){As===null?As=[l]:As.push(l)}function J1(l){Ra=!0,Ug(l)}function oi(){if(!Id&&As!==null){Id=!0;var l=0,a=Je;try{var h=As;for(Je=1;l<h.length;l++){var m=h[l];do m=m(!0);while(m!==null)}As=null,Ra=!1}catch(y){throw As!==null&&(As=As.slice(l+1)),qm(ld,oi),y}finally{Je=a,Id=!1}}return null}var Ar=[],Mr=0,Da=null,Ia=0,Mn=[],Rn=0,Di=null,Ms=1,Rs="";function Ii(l,a){Ar[Mr++]=Ia,Ar[Mr++]=Da,Da=l,Ia=a}function Yg(l,a,h){Mn[Rn++]=Ms,Mn[Rn++]=Rs,Mn[Rn++]=Di,Di=l;var m=Ms;l=Rs;var y=32-Un(m)-1;m&=~(1<<y),h+=1;var x=32-Un(a)+y;if(30<x){var _=y-y%5;x=(m&(1<<_)-1).toString(32),m>>=_,y-=_,Ms=1<<32-Un(a)+y|h<<y|m,Rs=x+l}else Ms=1<<x|h<<y|m,Rs=l}function Ld(l){l.return!==null&&(Ii(l,1),Yg(l,1,0))}function Zd(l){for(;l===Da;)Da=Ar[--Mr],Ar[Mr]=null,Ia=Ar[--Mr],Ar[Mr]=null;for(;l===Di;)Di=Mn[--Rn],Mn[Rn]=null,Rs=Mn[--Rn],Mn[Rn]=null,Ms=Mn[--Rn],Mn[Rn]=null}var Cn=null,Tn=null,at=!1,qn=null;function qg(l,a){var h=Zn(5,null,null,0);h.elementType="DELETED",h.stateNode=a,h.return=l,a=l.deletions,a===null?(l.deletions=[h],l.flags|=16):a.push(h)}function Gg(l,a){switch(l.tag){case 5:var h=l.type;return a=a.nodeType!==1||h.toLowerCase()!==a.nodeName.toLowerCase()?null:a,a!==null?(l.stateNode=a,Cn=l,Tn=ii(a.firstChild),!0):!1;case 6:return a=l.pendingProps===""||a.nodeType!==3?null:a,a!==null?(l.stateNode=a,Cn=l,Tn=null,!0):!1;case 13:return a=a.nodeType!==8?null:a,a!==null?(h=Di!==null?{id:Ms,overflow:Rs}:null,l.memoizedState={dehydrated:a,treeContext:h,retryLane:1073741824},h=Zn(18,null,null,0),h.stateNode=a,h.return=l,l.child=h,Cn=l,Tn=null,!0):!1;default:return!1}}function zd(l){return(l.mode&1)!==0&&(l.flags&128)===0}function Fd(l){if(at){var a=Tn;if(a){var h=a;if(!Gg(l,a)){if(zd(l))throw Error(t(418));a=ii(h.nextSibling);var m=Cn;a&&Gg(l,a)?qg(m,h):(l.flags=l.flags&-4097|2,at=!1,Cn=l)}}else{if(zd(l))throw Error(t(418));l.flags=l.flags&-4097|2,at=!1,Cn=l}}}function Hg(l){for(l=l.return;l!==null&&l.tag!==5&&l.tag!==3&&l.tag!==13;)l=l.return;Cn=l}function La(l){if(l!==Cn)return!1;if(!at)return Hg(l),at=!0,!1;var a;if((a=l.tag!==3)&&!(a=l.tag!==5)&&(a=l.type,a=a!=="head"&&a!=="body"&&!Ed(l.type,l.memoizedProps)),a&&(a=Tn)){if(zd(l))throw Kg(),Error(t(418));for(;a;)qg(l,a),a=ii(a.nextSibling)}if(Hg(l),l.tag===13){if(l=l.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(t(317));e:{for(l=l.nextSibling,a=0;l;){if(l.nodeType===8){var h=l.data;if(h==="/$"){if(a===0){Tn=ii(l.nextSibling);break e}a--}else h!=="$"&&h!=="$!"&&h!=="$?"||a++}l=l.nextSibling}Tn=null}}else Tn=Cn?ii(l.stateNode.nextSibling):null;return!0}function Kg(){for(var l=Tn;l;)l=ii(l.nextSibling)}function Rr(){Tn=Cn=null,at=!1}function Bd(l){qn===null?qn=[l]:qn.push(l)}var e_=T.ReactCurrentBatchConfig;function Bl(l,a,h){if(l=h.ref,l!==null&&typeof l!="function"&&typeof l!="object"){if(h._owner){if(h=h._owner,h){if(h.tag!==1)throw Error(t(309));var m=h.stateNode}if(!m)throw Error(t(147,l));var y=m,x=""+l;return a!==null&&a.ref!==null&&typeof a.ref=="function"&&a.ref._stringRef===x?a.ref:(a=function(_){var E=y.refs;_===null?delete E[x]:E[x]=_},a._stringRef=x,a)}if(typeof l!="string")throw Error(t(284));if(!h._owner)throw Error(t(290,l))}return l}function Za(l,a){throw l=Object.prototype.toString.call(a),Error(t(31,l==="[object Object]"?"object with keys {"+Object.keys(a).join(", ")+"}":l))}function Jg(l){var a=l._init;return a(l._payload)}function eO(l){function a(W,L){if(l){var G=W.deletions;G===null?(W.deletions=[L],W.flags|=16):G.push(L)}}function h(W,L){if(!l)return null;for(;L!==null;)a(W,L),L=L.sibling;return null}function m(W,L){for(W=new Map;L!==null;)L.key!==null?W.set(L.key,L):W.set(L.index,L),L=L.sibling;return W}function y(W,L){return W=mi(W,L),W.index=0,W.sibling=null,W}function x(W,L,G){return W.index=G,l?(G=W.alternate,G!==null?(G=G.index,G<L?(W.flags|=2,L):G):(W.flags|=2,L)):(W.flags|=1048576,L)}function _(W){return l&&W.alternate===null&&(W.flags|=2),W}function E(W,L,G,de){return L===null||L.tag!==6?(L=Ah(G,W.mode,de),L.return=W,L):(L=y(L,G),L.return=W,L)}function D(W,L,G,de){var Te=G.type;return Te===A?ae(W,L,G.props.children,de,G.key):L!==null&&(L.elementType===Te||typeof Te=="object"&&Te!==null&&Te.$$typeof===pe&&Jg(Te)===L.type)?(de=y(L,G.props),de.ref=Bl(W,L,G),de.return=W,de):(de=uc(G.type,G.key,G.props,null,W.mode,de),de.ref=Bl(W,L,G),de.return=W,de)}function K(W,L,G,de){return L===null||L.tag!==4||L.stateNode.containerInfo!==G.containerInfo||L.stateNode.implementation!==G.implementation?(L=Mh(G,W.mode,de),L.return=W,L):(L=y(L,G.children||[]),L.return=W,L)}function ae(W,L,G,de,Te){return L===null||L.tag!==7?(L=Wi(G,W.mode,de,Te),L.return=W,L):(L=y(L,G),L.return=W,L)}function ue(W,L,G){if(typeof L=="string"&&L!==""||typeof L=="number")return L=Ah(""+L,W.mode,G),L.return=W,L;if(typeof L=="object"&&L!==null){switch(L.$$typeof){case P:return G=uc(L.type,L.key,L.props,null,W.mode,G),G.ref=Bl(W,null,L),G.return=W,G;case N:return L=Mh(L,W.mode,G),L.return=W,L;case pe:var de=L._init;return ue(W,de(L._payload),G)}if(M(L)||z(L))return L=Wi(L,W.mode,G,null),L.return=W,L;Za(W,L)}return null}function oe(W,L,G,de){var Te=L!==null?L.key:null;if(typeof G=="string"&&G!==""||typeof G=="number")return Te!==null?null:E(W,L,""+G,de);if(typeof G=="object"&&G!==null){switch(G.$$typeof){case P:return G.key===Te?D(W,L,G,de):null;case N:return G.key===Te?K(W,L,G,de):null;case pe:return Te=G._init,oe(W,L,Te(G._payload),de)}if(M(G)||z(G))return Te!==null?null:ae(W,L,G,de,null);Za(W,G)}return null}function ke(W,L,G,de,Te){if(typeof de=="string"&&de!==""||typeof de=="number")return W=W.get(G)||null,E(L,W,""+de,Te);if(typeof de=="object"&&de!==null){switch(de.$$typeof){case P:return W=W.get(de.key===null?G:de.key)||null,D(L,W,de,Te);case N:return W=W.get(de.key===null?G:de.key)||null,K(L,W,de,Te);case pe:var Ne=de._init;return ke(W,L,G,Ne(de._payload),Te)}if(M(de)||z(de))return W=W.get(G)||null,ae(L,W,de,Te,null);Za(L,de)}return null}function _e(W,L,G,de){for(var Te=null,Ne=null,Ee=L,Ae=L=0,Rt=null;Ee!==null&&Ae<G.length;Ae++){Ee.index>Ae?(Rt=Ee,Ee=null):Rt=Ee.sibling;var qe=oe(W,Ee,G[Ae],de);if(qe===null){Ee===null&&(Ee=Rt);break}l&&Ee&&qe.alternate===null&&a(W,Ee),L=x(qe,L,Ae),Ne===null?Te=qe:Ne.sibling=qe,Ne=qe,Ee=Rt}if(Ae===G.length)return h(W,Ee),at&&Ii(W,Ae),Te;if(Ee===null){for(;Ae<G.length;Ae++)Ee=ue(W,G[Ae],de),Ee!==null&&(L=x(Ee,L,Ae),Ne===null?Te=Ee:Ne.sibling=Ee,Ne=Ee);return at&&Ii(W,Ae),Te}for(Ee=m(W,Ee);Ae<G.length;Ae++)Rt=ke(Ee,W,Ae,G[Ae],de),Rt!==null&&(l&&Rt.alternate!==null&&Ee.delete(Rt.key===null?Ae:Rt.key),L=x(Rt,L,Ae),Ne===null?Te=Rt:Ne.sibling=Rt,Ne=Rt);return l&&Ee.forEach(function(gi){return a(W,gi)}),at&&Ii(W,Ae),Te}function $e(W,L,G,de){var Te=z(G);if(typeof Te!="function")throw Error(t(150));if(G=Te.call(G),G==null)throw Error(t(151));for(var Ne=Te=null,Ee=L,Ae=L=0,Rt=null,qe=G.next();Ee!==null&&!qe.done;Ae++,qe=G.next()){Ee.index>Ae?(Rt=Ee,Ee=null):Rt=Ee.sibling;var gi=oe(W,Ee,qe.value,de);if(gi===null){Ee===null&&(Ee=Rt);break}l&&Ee&&gi.alternate===null&&a(W,Ee),L=x(gi,L,Ae),Ne===null?Te=gi:Ne.sibling=gi,Ne=gi,Ee=Rt}if(qe.done)return h(W,Ee),at&&Ii(W,Ae),Te;if(Ee===null){for(;!qe.done;Ae++,qe=G.next())qe=ue(W,qe.value,de),qe!==null&&(L=x(qe,L,Ae),Ne===null?Te=qe:Ne.sibling=qe,Ne=qe);return at&&Ii(W,Ae),Te}for(Ee=m(W,Ee);!qe.done;Ae++,qe=G.next())qe=ke(Ee,W,Ae,qe.value,de),qe!==null&&(l&&qe.alternate!==null&&Ee.delete(qe.key===null?Ae:qe.key),L=x(qe,L,Ae),Ne===null?Te=qe:Ne.sibling=qe,Ne=qe);return l&&Ee.forEach(function(E_){return a(W,E_)}),at&&Ii(W,Ae),Te}function yt(W,L,G,de){if(typeof G=="object"&&G!==null&&G.type===A&&G.key===null&&(G=G.props.children),typeof G=="object"&&G!==null){switch(G.$$typeof){case P:e:{for(var Te=G.key,Ne=L;Ne!==null;){if(Ne.key===Te){if(Te=G.type,Te===A){if(Ne.tag===7){h(W,Ne.sibling),L=y(Ne,G.props.children),L.return=W,W=L;break e}}else if(Ne.elementType===Te||typeof Te=="object"&&Te!==null&&Te.$$typeof===pe&&Jg(Te)===Ne.type){h(W,Ne.sibling),L=y(Ne,G.props),L.ref=Bl(W,Ne,G),L.return=W,W=L;break e}h(W,Ne);break}else a(W,Ne);Ne=Ne.sibling}G.type===A?(L=Wi(G.props.children,W.mode,de,G.key),L.return=W,W=L):(de=uc(G.type,G.key,G.props,null,W.mode,de),de.ref=Bl(W,L,G),de.return=W,W=de)}return _(W);case N:e:{for(Ne=G.key;L!==null;){if(L.key===Ne)if(L.tag===4&&L.stateNode.containerInfo===G.containerInfo&&L.stateNode.implementation===G.implementation){h(W,L.sibling),L=y(L,G.children||[]),L.return=W,W=L;break e}else{h(W,L);break}else a(W,L);L=L.sibling}L=Mh(G,W.mode,de),L.return=W,W=L}return _(W);case pe:return Ne=G._init,yt(W,L,Ne(G._payload),de)}if(M(G))return _e(W,L,G,de);if(z(G))return $e(W,L,G,de);Za(W,G)}return typeof G=="string"&&G!==""||typeof G=="number"?(G=""+G,L!==null&&L.tag===6?(h(W,L.sibling),L=y(L,G),L.return=W,W=L):(h(W,L),L=Ah(G,W.mode,de),L.return=W,W=L),_(W)):h(W,L)}return yt}var Dr=eO(!0),tO=eO(!1),za=ri(null),Fa=null,Ir=null,Xd=null;function Vd(){Xd=Ir=Fa=null}function Wd(l){var a=za.current;rt(za),l._currentValue=a}function Ud(l,a,h){for(;l!==null;){var m=l.alternate;if((l.childLanes&a)!==a?(l.childLanes|=a,m!==null&&(m.childLanes|=a)):m!==null&&(m.childLanes&a)!==a&&(m.childLanes|=a),l===h)break;l=l.return}}function Lr(l,a){Fa=l,Xd=Ir=null,l=l.dependencies,l!==null&&l.firstContext!==null&&((l.lanes&a)!==0&&(pn=!0),l.firstContext=null)}function Dn(l){var a=l._currentValue;if(Xd!==l)if(l={context:l,memoizedValue:a,next:null},Ir===null){if(Fa===null)throw Error(t(308));Ir=l,Fa.dependencies={lanes:0,firstContext:l}}else Ir=Ir.next=l;return a}var Li=null;function Yd(l){Li===null?Li=[l]:Li.push(l)}function nO(l,a,h,m){var y=a.interleaved;return y===null?(h.next=h,Yd(a)):(h.next=y.next,y.next=h),a.interleaved=h,Ds(l,m)}function Ds(l,a){l.lanes|=a;var h=l.alternate;for(h!==null&&(h.lanes|=a),h=l,l=l.return;l!==null;)l.childLanes|=a,h=l.alternate,h!==null&&(h.childLanes|=a),h=l,l=l.return;return h.tag===3?h.stateNode:null}var ai=!1;function qd(l){l.updateQueue={baseState:l.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function sO(l,a){l=l.updateQueue,a.updateQueue===l&&(a.updateQueue={baseState:l.baseState,firstBaseUpdate:l.firstBaseUpdate,lastBaseUpdate:l.lastBaseUpdate,shared:l.shared,effects:l.effects})}function Is(l,a){return{eventTime:l,lane:a,tag:0,payload:null,callback:null,next:null}}function ci(l,a,h){var m=l.updateQueue;if(m===null)return null;if(m=m.shared,(We&2)!==0){var y=m.pending;return y===null?a.next=a:(a.next=y.next,y.next=a),m.pending=a,Ds(l,h)}return y=m.interleaved,y===null?(a.next=a,Yd(m)):(a.next=y.next,y.next=a),m.interleaved=a,Ds(l,h)}function Ba(l,a,h){if(a=a.updateQueue,a!==null&&(a=a.shared,(h&4194240)!==0)){var m=a.lanes;m&=l.pendingLanes,h|=m,a.lanes=h,cd(l,h)}}function iO(l,a){var h=l.updateQueue,m=l.alternate;if(m!==null&&(m=m.updateQueue,h===m)){var y=null,x=null;if(h=h.firstBaseUpdate,h!==null){do{var _={eventTime:h.eventTime,lane:h.lane,tag:h.tag,payload:h.payload,callback:h.callback,next:null};x===null?y=x=_:x=x.next=_,h=h.next}while(h!==null);x===null?y=x=a:x=x.next=a}else y=x=a;h={baseState:m.baseState,firstBaseUpdate:y,lastBaseUpdate:x,shared:m.shared,effects:m.effects},l.updateQueue=h;return}l=h.lastBaseUpdate,l===null?h.firstBaseUpdate=a:l.next=a,h.lastBaseUpdate=a}function Xa(l,a,h,m){var y=l.updateQueue;ai=!1;var x=y.firstBaseUpdate,_=y.lastBaseUpdate,E=y.shared.pending;if(E!==null){y.shared.pending=null;var D=E,K=D.next;D.next=null,_===null?x=K:_.next=K,_=D;var ae=l.alternate;ae!==null&&(ae=ae.updateQueue,E=ae.lastBaseUpdate,E!==_&&(E===null?ae.firstBaseUpdate=K:E.next=K,ae.lastBaseUpdate=D))}if(x!==null){var ue=y.baseState;_=0,ae=K=D=null,E=x;do{var oe=E.lane,ke=E.eventTime;if((m&oe)===oe){ae!==null&&(ae=ae.next={eventTime:ke,lane:0,tag:E.tag,payload:E.payload,callback:E.callback,next:null});e:{var _e=l,$e=E;switch(oe=a,ke=h,$e.tag){case 1:if(_e=$e.payload,typeof _e=="function"){ue=_e.call(ke,ue,oe);break e}ue=_e;break e;case 3:_e.flags=_e.flags&-65537|128;case 0:if(_e=$e.payload,oe=typeof _e=="function"?_e.call(ke,ue,oe):_e,oe==null)break e;ue=Q({},ue,oe);break e;case 2:ai=!0}}E.callback!==null&&E.lane!==0&&(l.flags|=64,oe=y.effects,oe===null?y.effects=[E]:oe.push(E))}else ke={eventTime:ke,lane:oe,tag:E.tag,payload:E.payload,callback:E.callback,next:null},ae===null?(K=ae=ke,D=ue):ae=ae.next=ke,_|=oe;if(E=E.next,E===null){if(E=y.shared.pending,E===null)break;oe=E,E=oe.next,oe.next=null,y.lastBaseUpdate=oe,y.shared.pending=null}}while(!0);if(ae===null&&(D=ue),y.baseState=D,y.firstBaseUpdate=K,y.lastBaseUpdate=ae,a=y.shared.interleaved,a!==null){y=a;do _|=y.lane,y=y.next;while(y!==a)}else x===null&&(y.shared.lanes=0);Fi|=_,l.lanes=_,l.memoizedState=ue}}function rO(l,a,h){if(l=a.effects,a.effects=null,l!==null)for(a=0;a<l.length;a++){var m=l[a],y=m.callback;if(y!==null){if(m.callback=null,m=h,typeof y!="function")throw Error(t(191,y));y.call(m)}}}var Xl={},fs=ri(Xl),Vl=ri(Xl),Wl=ri(Xl);function Zi(l){if(l===Xl)throw Error(t(174));return l}function Gd(l,a){switch(st(Wl,a),st(Vl,l),st(fs,Xl),l=a.nodeType,l){case 9:case 11:a=(a=a.documentElement)?a.namespaceURI:Ve(null,"");break;default:l=l===8?a.parentNode:a,a=l.namespaceURI||null,l=l.tagName,a=Ve(a,l)}rt(fs),st(fs,a)}function Zr(){rt(fs),rt(Vl),rt(Wl)}function lO(l){Zi(Wl.current);var a=Zi(fs.current),h=Ve(a,l.type);a!==h&&(st(Vl,l),st(fs,h))}function Hd(l){Vl.current===l&&(rt(fs),rt(Vl))}var dt=ri(0);function Va(l){for(var a=l;a!==null;){if(a.tag===13){var h=a.memoizedState;if(h!==null&&(h=h.dehydrated,h===null||h.data==="$?"||h.data==="$!"))return a}else if(a.tag===19&&a.memoizedProps.revealOrder!==void 0){if((a.flags&128)!==0)return a}else if(a.child!==null){a.child.return=a,a=a.child;continue}if(a===l)break;for(;a.sibling===null;){if(a.return===null||a.return===l)return null;a=a.return}a.sibling.return=a.return,a=a.sibling}return null}var Kd=[];function Jd(){for(var l=0;l<Kd.length;l++)Kd[l]._workInProgressVersionPrimary=null;Kd.length=0}var Wa=T.ReactCurrentDispatcher,eh=T.ReactCurrentBatchConfig,zi=0,ht=null,Ct=null,At=null,Ua=!1,Ul=!1,Yl=0,t_=0;function Yt(){throw Error(t(321))}function th(l,a){if(a===null)return!1;for(var h=0;h<a.length&&h<l.length;h++)if(!Yn(l[h],a[h]))return!1;return!0}function nh(l,a,h,m,y,x){if(zi=x,ht=a,a.memoizedState=null,a.updateQueue=null,a.lanes=0,Wa.current=l===null||l.memoizedState===null?r_:l_,l=h(m,y),Ul){x=0;do{if(Ul=!1,Yl=0,25<=x)throw Error(t(301));x+=1,At=Ct=null,a.updateQueue=null,Wa.current=o_,l=h(m,y)}while(Ul)}if(Wa.current=Ga,a=Ct!==null&&Ct.next!==null,zi=0,At=Ct=ht=null,Ua=!1,a)throw Error(t(300));return l}function sh(){var l=Yl!==0;return Yl=0,l}function ps(){var l={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return At===null?ht.memoizedState=At=l:At=At.next=l,At}function In(){if(Ct===null){var l=ht.alternate;l=l!==null?l.memoizedState:null}else l=Ct.next;var a=At===null?ht.memoizedState:At.next;if(a!==null)At=a,Ct=l;else{if(l===null)throw Error(t(310));Ct=l,l={memoizedState:Ct.memoizedState,baseState:Ct.baseState,baseQueue:Ct.baseQueue,queue:Ct.queue,next:null},At===null?ht.memoizedState=At=l:At=At.next=l}return At}function ql(l,a){return typeof a=="function"?a(l):a}function ih(l){var a=In(),h=a.queue;if(h===null)throw Error(t(311));h.lastRenderedReducer=l;var m=Ct,y=m.baseQueue,x=h.pending;if(x!==null){if(y!==null){var _=y.next;y.next=x.next,x.next=_}m.baseQueue=y=x,h.pending=null}if(y!==null){x=y.next,m=m.baseState;var E=_=null,D=null,K=x;do{var ae=K.lane;if((zi&ae)===ae)D!==null&&(D=D.next={lane:0,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null}),m=K.hasEagerState?K.eagerState:l(m,K.action);else{var ue={lane:ae,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null};D===null?(E=D=ue,_=m):D=D.next=ue,ht.lanes|=ae,Fi|=ae}K=K.next}while(K!==null&&K!==x);D===null?_=m:D.next=E,Yn(m,a.memoizedState)||(pn=!0),a.memoizedState=m,a.baseState=_,a.baseQueue=D,h.lastRenderedState=m}if(l=h.interleaved,l!==null){y=l;do x=y.lane,ht.lanes|=x,Fi|=x,y=y.next;while(y!==l)}else y===null&&(h.lanes=0);return[a.memoizedState,h.dispatch]}function rh(l){var a=In(),h=a.queue;if(h===null)throw Error(t(311));h.lastRenderedReducer=l;var m=h.dispatch,y=h.pending,x=a.memoizedState;if(y!==null){h.pending=null;var _=y=y.next;do x=l(x,_.action),_=_.next;while(_!==y);Yn(x,a.memoizedState)||(pn=!0),a.memoizedState=x,a.baseQueue===null&&(a.baseState=x),h.lastRenderedState=x}return[x,m]}function oO(){}function aO(l,a){var h=ht,m=In(),y=a(),x=!Yn(m.memoizedState,y);if(x&&(m.memoizedState=y,pn=!0),m=m.queue,lh(dO.bind(null,h,m,l),[l]),m.getSnapshot!==a||x||At!==null&&At.memoizedState.tag&1){if(h.flags|=2048,Gl(9,uO.bind(null,h,m,y,a),void 0,null),Mt===null)throw Error(t(349));(zi&30)!==0||cO(h,a,y)}return y}function cO(l,a,h){l.flags|=16384,l={getSnapshot:a,value:h},a=ht.updateQueue,a===null?(a={lastEffect:null,stores:null},ht.updateQueue=a,a.stores=[l]):(h=a.stores,h===null?a.stores=[l]:h.push(l))}function uO(l,a,h,m){a.value=h,a.getSnapshot=m,hO(a)&&fO(l)}function dO(l,a,h){return h(function(){hO(a)&&fO(l)})}function hO(l){var a=l.getSnapshot;l=l.value;try{var h=a();return!Yn(l,h)}catch{return!0}}function fO(l){var a=Ds(l,1);a!==null&&Jn(a,l,1,-1)}function pO(l){var a=ps();return typeof l=="function"&&(l=l()),a.memoizedState=a.baseState=l,l={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:ql,lastRenderedState:l},a.queue=l,l=l.dispatch=i_.bind(null,ht,l),[a.memoizedState,l]}function Gl(l,a,h,m){return l={tag:l,create:a,destroy:h,deps:m,next:null},a=ht.updateQueue,a===null?(a={lastEffect:null,stores:null},ht.updateQueue=a,a.lastEffect=l.next=l):(h=a.lastEffect,h===null?a.lastEffect=l.next=l:(m=h.next,h.next=l,l.next=m,a.lastEffect=l)),l}function mO(){return In().memoizedState}function Ya(l,a,h,m){var y=ps();ht.flags|=l,y.memoizedState=Gl(1|a,h,void 0,m===void 0?null:m)}function qa(l,a,h,m){var y=In();m=m===void 0?null:m;var x=void 0;if(Ct!==null){var _=Ct.memoizedState;if(x=_.destroy,m!==null&&th(m,_.deps)){y.memoizedState=Gl(a,h,x,m);return}}ht.flags|=l,y.memoizedState=Gl(1|a,h,x,m)}function gO(l,a){return Ya(8390656,8,l,a)}function lh(l,a){return qa(2048,8,l,a)}function OO(l,a){return qa(4,2,l,a)}function yO(l,a){return qa(4,4,l,a)}function vO(l,a){if(typeof a=="function")return l=l(),a(l),function(){a(null)};if(a!=null)return l=l(),a.current=l,function(){a.current=null}}function xO(l,a,h){return h=h!=null?h.concat([l]):null,qa(4,4,vO.bind(null,a,l),h)}function oh(){}function wO(l,a){var h=In();a=a===void 0?null:a;var m=h.memoizedState;return m!==null&&a!==null&&th(a,m[1])?m[0]:(h.memoizedState=[l,a],l)}function kO(l,a){var h=In();a=a===void 0?null:a;var m=h.memoizedState;return m!==null&&a!==null&&th(a,m[1])?m[0]:(l=l(),h.memoizedState=[l,a],l)}function SO(l,a,h){return(zi&21)===0?(l.baseState&&(l.baseState=!1,pn=!0),l.memoizedState=h):(Yn(h,a)||(h=Jm(),ht.lanes|=h,Fi|=h,l.baseState=!0),a)}function n_(l,a){var h=Je;Je=h!==0&&4>h?h:4,l(!0);var m=eh.transition;eh.transition={};try{l(!1),a()}finally{Je=h,eh.transition=m}}function bO(){return In().memoizedState}function s_(l,a,h){var m=fi(l);if(h={lane:m,action:h,hasEagerState:!1,eagerState:null,next:null},_O(l))$O(a,h);else if(h=nO(l,a,h,m),h!==null){var y=nn();Jn(h,l,m,y),CO(h,a,m)}}function i_(l,a,h){var m=fi(l),y={lane:m,action:h,hasEagerState:!1,eagerState:null,next:null};if(_O(l))$O(a,y);else{var x=l.alternate;if(l.lanes===0&&(x===null||x.lanes===0)&&(x=a.lastRenderedReducer,x!==null))try{var _=a.lastRenderedState,E=x(_,h);if(y.hasEagerState=!0,y.eagerState=E,Yn(E,_)){var D=a.interleaved;D===null?(y.next=y,Yd(a)):(y.next=D.next,D.next=y),a.interleaved=y;return}}catch{}finally{}h=nO(l,a,y,m),h!==null&&(y=nn(),Jn(h,l,m,y),CO(h,a,m))}}function _O(l){var a=l.alternate;return l===ht||a!==null&&a===ht}function $O(l,a){Ul=Ua=!0;var h=l.pending;h===null?a.next=a:(a.next=h.next,h.next=a),l.pending=a}function CO(l,a,h){if((h&4194240)!==0){var m=a.lanes;m&=l.pendingLanes,h|=m,a.lanes=h,cd(l,h)}}var Ga={readContext:Dn,useCallback:Yt,useContext:Yt,useEffect:Yt,useImperativeHandle:Yt,useInsertionEffect:Yt,useLayoutEffect:Yt,useMemo:Yt,useReducer:Yt,useRef:Yt,useState:Yt,useDebugValue:Yt,useDeferredValue:Yt,useTransition:Yt,useMutableSource:Yt,useSyncExternalStore:Yt,useId:Yt,unstable_isNewReconciler:!1},r_={readContext:Dn,useCallback:function(l,a){return ps().memoizedState=[l,a===void 0?null:a],l},useContext:Dn,useEffect:gO,useImperativeHandle:function(l,a,h){return h=h!=null?h.concat([l]):null,Ya(4194308,4,vO.bind(null,a,l),h)},useLayoutEffect:function(l,a){return Ya(4194308,4,l,a)},useInsertionEffect:function(l,a){return Ya(4,2,l,a)},useMemo:function(l,a){var h=ps();return a=a===void 0?null:a,l=l(),h.memoizedState=[l,a],l},useReducer:function(l,a,h){var m=ps();return a=h!==void 0?h(a):a,m.memoizedState=m.baseState=a,l={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:l,lastRenderedState:a},m.queue=l,l=l.dispatch=s_.bind(null,ht,l),[m.memoizedState,l]},useRef:function(l){var a=ps();return l={current:l},a.memoizedState=l},useState:pO,useDebugValue:oh,useDeferredValue:function(l){return ps().memoizedState=l},useTransition:function(){var l=pO(!1),a=l[0];return l=n_.bind(null,l[1]),ps().memoizedState=l,[a,l]},useMutableSource:function(){},useSyncExternalStore:function(l,a,h){var m=ht,y=ps();if(at){if(h===void 0)throw Error(t(407));h=h()}else{if(h=a(),Mt===null)throw Error(t(349));(zi&30)!==0||cO(m,a,h)}y.memoizedState=h;var x={value:h,getSnapshot:a};return y.queue=x,gO(dO.bind(null,m,x,l),[l]),m.flags|=2048,Gl(9,uO.bind(null,m,x,h,a),void 0,null),h},useId:function(){var l=ps(),a=Mt.identifierPrefix;if(at){var h=Rs,m=Ms;h=(m&~(1<<32-Un(m)-1)).toString(32)+h,a=":"+a+"R"+h,h=Yl++,0<h&&(a+="H"+h.toString(32)),a+=":"}else h=t_++,a=":"+a+"r"+h.toString(32)+":";return l.memoizedState=a},unstable_isNewReconciler:!1},l_={readContext:Dn,useCallback:wO,useContext:Dn,useEffect:lh,useImperativeHandle:xO,useInsertionEffect:OO,useLayoutEffect:yO,useMemo:kO,useReducer:ih,useRef:mO,useState:function(){return ih(ql)},useDebugValue:oh,useDeferredValue:function(l){var a=In();return SO(a,Ct.memoizedState,l)},useTransition:function(){var l=ih(ql)[0],a=In().memoizedState;return[l,a]},useMutableSource:oO,useSyncExternalStore:aO,useId:bO,unstable_isNewReconciler:!1},o_={readContext:Dn,useCallback:wO,useContext:Dn,useEffect:lh,useImperativeHandle:xO,useInsertionEffect:OO,useLayoutEffect:yO,useMemo:kO,useReducer:rh,useRef:mO,useState:function(){return rh(ql)},useDebugValue:oh,useDeferredValue:function(l){var a=In();return Ct===null?a.memoizedState=l:SO(a,Ct.memoizedState,l)},useTransition:function(){var l=rh(ql)[0],a=In().memoizedState;return[l,a]},useMutableSource:oO,useSyncExternalStore:aO,useId:bO,unstable_isNewReconciler:!1};function Gn(l,a){if(l&&l.defaultProps){a=Q({},a),l=l.defaultProps;for(var h in l)a[h]===void 0&&(a[h]=l[h]);return a}return a}function ah(l,a,h,m){a=l.memoizedState,h=h(m,a),h=h==null?a:Q({},a,h),l.memoizedState=h,l.lanes===0&&(l.updateQueue.baseState=h)}var Ha={isMounted:function(l){return(l=l._reactInternals)?Ai(l)===l:!1},enqueueSetState:function(l,a,h){l=l._reactInternals;var m=nn(),y=fi(l),x=Is(m,y);x.payload=a,h!=null&&(x.callback=h),a=ci(l,x,y),a!==null&&(Jn(a,l,y,m),Ba(a,l,y))},enqueueReplaceState:function(l,a,h){l=l._reactInternals;var m=nn(),y=fi(l),x=Is(m,y);x.tag=1,x.payload=a,h!=null&&(x.callback=h),a=ci(l,x,y),a!==null&&(Jn(a,l,y,m),Ba(a,l,y))},enqueueForceUpdate:function(l,a){l=l._reactInternals;var h=nn(),m=fi(l),y=Is(h,m);y.tag=2,a!=null&&(y.callback=a),a=ci(l,y,m),a!==null&&(Jn(a,l,m,h),Ba(a,l,m))}};function TO(l,a,h,m,y,x,_){return l=l.stateNode,typeof l.shouldComponentUpdate=="function"?l.shouldComponentUpdate(m,x,_):a.prototype&&a.prototype.isPureReactComponent?!Rl(h,m)||!Rl(y,x):!0}function PO(l,a,h){var m=!1,y=li,x=a.contextType;return typeof x=="object"&&x!==null?x=Dn(x):(y=fn(a)?Ri:Ut.current,m=a.contextTypes,x=(m=m!=null)?Er(l,y):li),a=new a(h,x),l.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Ha,l.stateNode=a,a._reactInternals=l,m&&(l=l.stateNode,l.__reactInternalMemoizedUnmaskedChildContext=y,l.__reactInternalMemoizedMaskedChildContext=x),a}function jO(l,a,h,m){l=a.state,typeof a.componentWillReceiveProps=="function"&&a.componentWillReceiveProps(h,m),typeof a.UNSAFE_componentWillReceiveProps=="function"&&a.UNSAFE_componentWillReceiveProps(h,m),a.state!==l&&Ha.enqueueReplaceState(a,a.state,null)}function ch(l,a,h,m){var y=l.stateNode;y.props=h,y.state=l.memoizedState,y.refs={},qd(l);var x=a.contextType;typeof x=="object"&&x!==null?y.context=Dn(x):(x=fn(a)?Ri:Ut.current,y.context=Er(l,x)),y.state=l.memoizedState,x=a.getDerivedStateFromProps,typeof x=="function"&&(ah(l,a,x,h),y.state=l.memoizedState),typeof a.getDerivedStateFromProps=="function"||typeof y.getSnapshotBeforeUpdate=="function"||typeof y.UNSAFE_componentWillMount!="function"&&typeof y.componentWillMount!="function"||(a=y.state,typeof y.componentWillMount=="function"&&y.componentWillMount(),typeof y.UNSAFE_componentWillMount=="function"&&y.UNSAFE_componentWillMount(),a!==y.state&&Ha.enqueueReplaceState(y,y.state,null),Xa(l,h,y,m),y.state=l.memoizedState),typeof y.componentDidMount=="function"&&(l.flags|=4194308)}function zr(l,a){try{var h="",m=a;do h+=re(m),m=m.return;while(m);var y=h}catch(x){y=`
|
|
7
|
+
Error generating stack: `+x.message+`
|
|
8
|
+
`+x.stack}return{value:l,source:a,stack:y,digest:null}}function uh(l,a,h){return{value:l,source:null,stack:h??null,digest:a??null}}function dh(l,a){try{console.error(a.value)}catch(h){setTimeout(function(){throw h})}}var a_=typeof WeakMap=="function"?WeakMap:Map;function QO(l,a,h){h=Is(-1,h),h.tag=3,h.payload={element:null};var m=a.value;return h.callback=function(){ic||(ic=!0,$h=m),dh(l,a)},h}function NO(l,a,h){h=Is(-1,h),h.tag=3;var m=l.type.getDerivedStateFromError;if(typeof m=="function"){var y=a.value;h.payload=function(){return m(y)},h.callback=function(){dh(l,a)}}var x=l.stateNode;return x!==null&&typeof x.componentDidCatch=="function"&&(h.callback=function(){dh(l,a),typeof m!="function"&&(di===null?di=new Set([this]):di.add(this));var _=a.stack;this.componentDidCatch(a.value,{componentStack:_!==null?_:""})}),h}function EO(l,a,h){var m=l.pingCache;if(m===null){m=l.pingCache=new a_;var y=new Set;m.set(a,y)}else y=m.get(a),y===void 0&&(y=new Set,m.set(a,y));y.has(h)||(y.add(h),l=k_.bind(null,l,a,h),a.then(l,l))}function AO(l){do{var a;if((a=l.tag===13)&&(a=l.memoizedState,a=a!==null?a.dehydrated!==null:!0),a)return l;l=l.return}while(l!==null);return null}function MO(l,a,h,m,y){return(l.mode&1)===0?(l===a?l.flags|=65536:(l.flags|=128,h.flags|=131072,h.flags&=-52805,h.tag===1&&(h.alternate===null?h.tag=17:(a=Is(-1,1),a.tag=2,ci(h,a,1))),h.lanes|=1),l):(l.flags|=65536,l.lanes=y,l)}var c_=T.ReactCurrentOwner,pn=!1;function tn(l,a,h,m){a.child=l===null?tO(a,null,h,m):Dr(a,l.child,h,m)}function RO(l,a,h,m,y){h=h.render;var x=a.ref;return Lr(a,y),m=nh(l,a,h,m,x,y),h=sh(),l!==null&&!pn?(a.updateQueue=l.updateQueue,a.flags&=-2053,l.lanes&=~y,Ls(l,a,y)):(at&&h&&Ld(a),a.flags|=1,tn(l,a,m,y),a.child)}function DO(l,a,h,m,y){if(l===null){var x=h.type;return typeof x=="function"&&!Eh(x)&&x.defaultProps===void 0&&h.compare===null&&h.defaultProps===void 0?(a.tag=15,a.type=x,IO(l,a,x,m,y)):(l=uc(h.type,null,m,a,a.mode,y),l.ref=a.ref,l.return=a,a.child=l)}if(x=l.child,(l.lanes&y)===0){var _=x.memoizedProps;if(h=h.compare,h=h!==null?h:Rl,h(_,m)&&l.ref===a.ref)return Ls(l,a,y)}return a.flags|=1,l=mi(x,m),l.ref=a.ref,l.return=a,a.child=l}function IO(l,a,h,m,y){if(l!==null){var x=l.memoizedProps;if(Rl(x,m)&&l.ref===a.ref)if(pn=!1,a.pendingProps=m=x,(l.lanes&y)!==0)(l.flags&131072)!==0&&(pn=!0);else return a.lanes=l.lanes,Ls(l,a,y)}return hh(l,a,h,m,y)}function LO(l,a,h){var m=a.pendingProps,y=m.children,x=l!==null?l.memoizedState:null;if(m.mode==="hidden")if((a.mode&1)===0)a.memoizedState={baseLanes:0,cachePool:null,transitions:null},st(Br,Pn),Pn|=h;else{if((h&1073741824)===0)return l=x!==null?x.baseLanes|h:h,a.lanes=a.childLanes=1073741824,a.memoizedState={baseLanes:l,cachePool:null,transitions:null},a.updateQueue=null,st(Br,Pn),Pn|=l,null;a.memoizedState={baseLanes:0,cachePool:null,transitions:null},m=x!==null?x.baseLanes:h,st(Br,Pn),Pn|=m}else x!==null?(m=x.baseLanes|h,a.memoizedState=null):m=h,st(Br,Pn),Pn|=m;return tn(l,a,y,h),a.child}function ZO(l,a){var h=a.ref;(l===null&&h!==null||l!==null&&l.ref!==h)&&(a.flags|=512,a.flags|=2097152)}function hh(l,a,h,m,y){var x=fn(h)?Ri:Ut.current;return x=Er(a,x),Lr(a,y),h=nh(l,a,h,m,x,y),m=sh(),l!==null&&!pn?(a.updateQueue=l.updateQueue,a.flags&=-2053,l.lanes&=~y,Ls(l,a,y)):(at&&m&&Ld(a),a.flags|=1,tn(l,a,h,y),a.child)}function zO(l,a,h,m,y){if(fn(h)){var x=!0;Ma(a)}else x=!1;if(Lr(a,y),a.stateNode===null)Ja(l,a),PO(a,h,m),ch(a,h,m,y),m=!0;else if(l===null){var _=a.stateNode,E=a.memoizedProps;_.props=E;var D=_.context,K=h.contextType;typeof K=="object"&&K!==null?K=Dn(K):(K=fn(h)?Ri:Ut.current,K=Er(a,K));var ae=h.getDerivedStateFromProps,ue=typeof ae=="function"||typeof _.getSnapshotBeforeUpdate=="function";ue||typeof _.UNSAFE_componentWillReceiveProps!="function"&&typeof _.componentWillReceiveProps!="function"||(E!==m||D!==K)&&jO(a,_,m,K),ai=!1;var oe=a.memoizedState;_.state=oe,Xa(a,m,_,y),D=a.memoizedState,E!==m||oe!==D||hn.current||ai?(typeof ae=="function"&&(ah(a,h,ae,m),D=a.memoizedState),(E=ai||TO(a,h,E,m,oe,D,K))?(ue||typeof _.UNSAFE_componentWillMount!="function"&&typeof _.componentWillMount!="function"||(typeof _.componentWillMount=="function"&&_.componentWillMount(),typeof _.UNSAFE_componentWillMount=="function"&&_.UNSAFE_componentWillMount()),typeof _.componentDidMount=="function"&&(a.flags|=4194308)):(typeof _.componentDidMount=="function"&&(a.flags|=4194308),a.memoizedProps=m,a.memoizedState=D),_.props=m,_.state=D,_.context=K,m=E):(typeof _.componentDidMount=="function"&&(a.flags|=4194308),m=!1)}else{_=a.stateNode,sO(l,a),E=a.memoizedProps,K=a.type===a.elementType?E:Gn(a.type,E),_.props=K,ue=a.pendingProps,oe=_.context,D=h.contextType,typeof D=="object"&&D!==null?D=Dn(D):(D=fn(h)?Ri:Ut.current,D=Er(a,D));var ke=h.getDerivedStateFromProps;(ae=typeof ke=="function"||typeof _.getSnapshotBeforeUpdate=="function")||typeof _.UNSAFE_componentWillReceiveProps!="function"&&typeof _.componentWillReceiveProps!="function"||(E!==ue||oe!==D)&&jO(a,_,m,D),ai=!1,oe=a.memoizedState,_.state=oe,Xa(a,m,_,y);var _e=a.memoizedState;E!==ue||oe!==_e||hn.current||ai?(typeof ke=="function"&&(ah(a,h,ke,m),_e=a.memoizedState),(K=ai||TO(a,h,K,m,oe,_e,D)||!1)?(ae||typeof _.UNSAFE_componentWillUpdate!="function"&&typeof _.componentWillUpdate!="function"||(typeof _.componentWillUpdate=="function"&&_.componentWillUpdate(m,_e,D),typeof _.UNSAFE_componentWillUpdate=="function"&&_.UNSAFE_componentWillUpdate(m,_e,D)),typeof _.componentDidUpdate=="function"&&(a.flags|=4),typeof _.getSnapshotBeforeUpdate=="function"&&(a.flags|=1024)):(typeof _.componentDidUpdate!="function"||E===l.memoizedProps&&oe===l.memoizedState||(a.flags|=4),typeof _.getSnapshotBeforeUpdate!="function"||E===l.memoizedProps&&oe===l.memoizedState||(a.flags|=1024),a.memoizedProps=m,a.memoizedState=_e),_.props=m,_.state=_e,_.context=D,m=K):(typeof _.componentDidUpdate!="function"||E===l.memoizedProps&&oe===l.memoizedState||(a.flags|=4),typeof _.getSnapshotBeforeUpdate!="function"||E===l.memoizedProps&&oe===l.memoizedState||(a.flags|=1024),m=!1)}return fh(l,a,h,m,x,y)}function fh(l,a,h,m,y,x){ZO(l,a);var _=(a.flags&128)!==0;if(!m&&!_)return y&&Wg(a,h,!1),Ls(l,a,x);m=a.stateNode,c_.current=a;var E=_&&typeof h.getDerivedStateFromError!="function"?null:m.render();return a.flags|=1,l!==null&&_?(a.child=Dr(a,l.child,null,x),a.child=Dr(a,null,E,x)):tn(l,a,E,x),a.memoizedState=m.state,y&&Wg(a,h,!0),a.child}function FO(l){var a=l.stateNode;a.pendingContext?Xg(l,a.pendingContext,a.pendingContext!==a.context):a.context&&Xg(l,a.context,!1),Gd(l,a.containerInfo)}function BO(l,a,h,m,y){return Rr(),Bd(y),a.flags|=256,tn(l,a,h,m),a.child}var ph={dehydrated:null,treeContext:null,retryLane:0};function mh(l){return{baseLanes:l,cachePool:null,transitions:null}}function XO(l,a,h){var m=a.pendingProps,y=dt.current,x=!1,_=(a.flags&128)!==0,E;if((E=_)||(E=l!==null&&l.memoizedState===null?!1:(y&2)!==0),E?(x=!0,a.flags&=-129):(l===null||l.memoizedState!==null)&&(y|=1),st(dt,y&1),l===null)return Fd(a),l=a.memoizedState,l!==null&&(l=l.dehydrated,l!==null)?((a.mode&1)===0?a.lanes=1:l.data==="$!"?a.lanes=8:a.lanes=1073741824,null):(_=m.children,l=m.fallback,x?(m=a.mode,x=a.child,_={mode:"hidden",children:_},(m&1)===0&&x!==null?(x.childLanes=0,x.pendingProps=_):x=dc(_,m,0,null),l=Wi(l,m,h,null),x.return=a,l.return=a,x.sibling=l,a.child=x,a.child.memoizedState=mh(h),a.memoizedState=ph,l):gh(a,_));if(y=l.memoizedState,y!==null&&(E=y.dehydrated,E!==null))return u_(l,a,_,m,E,y,h);if(x){x=m.fallback,_=a.mode,y=l.child,E=y.sibling;var D={mode:"hidden",children:m.children};return(_&1)===0&&a.child!==y?(m=a.child,m.childLanes=0,m.pendingProps=D,a.deletions=null):(m=mi(y,D),m.subtreeFlags=y.subtreeFlags&14680064),E!==null?x=mi(E,x):(x=Wi(x,_,h,null),x.flags|=2),x.return=a,m.return=a,m.sibling=x,a.child=m,m=x,x=a.child,_=l.child.memoizedState,_=_===null?mh(h):{baseLanes:_.baseLanes|h,cachePool:null,transitions:_.transitions},x.memoizedState=_,x.childLanes=l.childLanes&~h,a.memoizedState=ph,m}return x=l.child,l=x.sibling,m=mi(x,{mode:"visible",children:m.children}),(a.mode&1)===0&&(m.lanes=h),m.return=a,m.sibling=null,l!==null&&(h=a.deletions,h===null?(a.deletions=[l],a.flags|=16):h.push(l)),a.child=m,a.memoizedState=null,m}function gh(l,a){return a=dc({mode:"visible",children:a},l.mode,0,null),a.return=l,l.child=a}function Ka(l,a,h,m){return m!==null&&Bd(m),Dr(a,l.child,null,h),l=gh(a,a.pendingProps.children),l.flags|=2,a.memoizedState=null,l}function u_(l,a,h,m,y,x,_){if(h)return a.flags&256?(a.flags&=-257,m=uh(Error(t(422))),Ka(l,a,_,m)):a.memoizedState!==null?(a.child=l.child,a.flags|=128,null):(x=m.fallback,y=a.mode,m=dc({mode:"visible",children:m.children},y,0,null),x=Wi(x,y,_,null),x.flags|=2,m.return=a,x.return=a,m.sibling=x,a.child=m,(a.mode&1)!==0&&Dr(a,l.child,null,_),a.child.memoizedState=mh(_),a.memoizedState=ph,x);if((a.mode&1)===0)return Ka(l,a,_,null);if(y.data==="$!"){if(m=y.nextSibling&&y.nextSibling.dataset,m)var E=m.dgst;return m=E,x=Error(t(419)),m=uh(x,m,void 0),Ka(l,a,_,m)}if(E=(_&l.childLanes)!==0,pn||E){if(m=Mt,m!==null){switch(_&-_){case 4:y=2;break;case 16:y=8;break;case 64: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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:y=32;break;case 536870912:y=268435456;break;default:y=0}y=(y&(m.suspendedLanes|_))!==0?0:y,y!==0&&y!==x.retryLane&&(x.retryLane=y,Ds(l,y),Jn(m,l,y,-1))}return Nh(),m=uh(Error(t(421))),Ka(l,a,_,m)}return y.data==="$?"?(a.flags|=128,a.child=l.child,a=S_.bind(null,l),y._reactRetry=a,null):(l=x.treeContext,Tn=ii(y.nextSibling),Cn=a,at=!0,qn=null,l!==null&&(Mn[Rn++]=Ms,Mn[Rn++]=Rs,Mn[Rn++]=Di,Ms=l.id,Rs=l.overflow,Di=a),a=gh(a,m.children),a.flags|=4096,a)}function VO(l,a,h){l.lanes|=a;var m=l.alternate;m!==null&&(m.lanes|=a),Ud(l.return,a,h)}function Oh(l,a,h,m,y){var x=l.memoizedState;x===null?l.memoizedState={isBackwards:a,rendering:null,renderingStartTime:0,last:m,tail:h,tailMode:y}:(x.isBackwards=a,x.rendering=null,x.renderingStartTime=0,x.last=m,x.tail=h,x.tailMode=y)}function WO(l,a,h){var m=a.pendingProps,y=m.revealOrder,x=m.tail;if(tn(l,a,m.children,h),m=dt.current,(m&2)!==0)m=m&1|2,a.flags|=128;else{if(l!==null&&(l.flags&128)!==0)e:for(l=a.child;l!==null;){if(l.tag===13)l.memoizedState!==null&&VO(l,h,a);else if(l.tag===19)VO(l,h,a);else if(l.child!==null){l.child.return=l,l=l.child;continue}if(l===a)break e;for(;l.sibling===null;){if(l.return===null||l.return===a)break e;l=l.return}l.sibling.return=l.return,l=l.sibling}m&=1}if(st(dt,m),(a.mode&1)===0)a.memoizedState=null;else switch(y){case"forwards":for(h=a.child,y=null;h!==null;)l=h.alternate,l!==null&&Va(l)===null&&(y=h),h=h.sibling;h=y,h===null?(y=a.child,a.child=null):(y=h.sibling,h.sibling=null),Oh(a,!1,y,h,x);break;case"backwards":for(h=null,y=a.child,a.child=null;y!==null;){if(l=y.alternate,l!==null&&Va(l)===null){a.child=y;break}l=y.sibling,y.sibling=h,h=y,y=l}Oh(a,!0,h,null,x);break;case"together":Oh(a,!1,null,null,void 0);break;default:a.memoizedState=null}return a.child}function Ja(l,a){(a.mode&1)===0&&l!==null&&(l.alternate=null,a.alternate=null,a.flags|=2)}function Ls(l,a,h){if(l!==null&&(a.dependencies=l.dependencies),Fi|=a.lanes,(h&a.childLanes)===0)return null;if(l!==null&&a.child!==l.child)throw Error(t(153));if(a.child!==null){for(l=a.child,h=mi(l,l.pendingProps),a.child=h,h.return=a;l.sibling!==null;)l=l.sibling,h=h.sibling=mi(l,l.pendingProps),h.return=a;h.sibling=null}return a.child}function d_(l,a,h){switch(a.tag){case 3:FO(a),Rr();break;case 5:lO(a);break;case 1:fn(a.type)&&Ma(a);break;case 4:Gd(a,a.stateNode.containerInfo);break;case 10:var m=a.type._context,y=a.memoizedProps.value;st(za,m._currentValue),m._currentValue=y;break;case 13:if(m=a.memoizedState,m!==null)return m.dehydrated!==null?(st(dt,dt.current&1),a.flags|=128,null):(h&a.child.childLanes)!==0?XO(l,a,h):(st(dt,dt.current&1),l=Ls(l,a,h),l!==null?l.sibling:null);st(dt,dt.current&1);break;case 19:if(m=(h&a.childLanes)!==0,(l.flags&128)!==0){if(m)return WO(l,a,h);a.flags|=128}if(y=a.memoizedState,y!==null&&(y.rendering=null,y.tail=null,y.lastEffect=null),st(dt,dt.current),m)break;return null;case 22:case 23:return a.lanes=0,LO(l,a,h)}return Ls(l,a,h)}var UO,yh,YO,qO;UO=function(l,a){for(var h=a.child;h!==null;){if(h.tag===5||h.tag===6)l.appendChild(h.stateNode);else if(h.tag!==4&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===a)break;for(;h.sibling===null;){if(h.return===null||h.return===a)return;h=h.return}h.sibling.return=h.return,h=h.sibling}},yh=function(){},YO=function(l,a,h,m){var y=l.memoizedProps;if(y!==m){l=a.stateNode,Zi(fs.current);var x=null;switch(h){case"input":y=Et(l,y),m=Et(l,m),x=[];break;case"select":y=Q({},y,{value:void 0}),m=Q({},m,{value:void 0}),x=[];break;case"textarea":y=ne(l,y),m=ne(l,m),x=[];break;default:typeof y.onClick!="function"&&typeof m.onClick=="function"&&(l.onclick=Na)}xr(h,m);var _;h=null;for(K in y)if(!m.hasOwnProperty(K)&&y.hasOwnProperty(K)&&y[K]!=null)if(K==="style"){var E=y[K];for(_ in E)E.hasOwnProperty(_)&&(h||(h={}),h[_]="")}else K!=="dangerouslySetInnerHTML"&&K!=="children"&&K!=="suppressContentEditableWarning"&&K!=="suppressHydrationWarning"&&K!=="autoFocus"&&(i.hasOwnProperty(K)?x||(x=[]):(x=x||[]).push(K,null));for(K in m){var D=m[K];if(E=y?.[K],m.hasOwnProperty(K)&&D!==E&&(D!=null||E!=null))if(K==="style")if(E){for(_ in E)!E.hasOwnProperty(_)||D&&D.hasOwnProperty(_)||(h||(h={}),h[_]="");for(_ in D)D.hasOwnProperty(_)&&E[_]!==D[_]&&(h||(h={}),h[_]=D[_])}else h||(x||(x=[]),x.push(K,h)),h=D;else K==="dangerouslySetInnerHTML"?(D=D?D.__html:void 0,E=E?E.__html:void 0,D!=null&&E!==D&&(x=x||[]).push(K,D)):K==="children"?typeof D!="string"&&typeof D!="number"||(x=x||[]).push(K,""+D):K!=="suppressContentEditableWarning"&&K!=="suppressHydrationWarning"&&(i.hasOwnProperty(K)?(D!=null&&K==="onScroll"&&it("scroll",l),x||E===D||(x=[])):(x=x||[]).push(K,D))}h&&(x=x||[]).push("style",h);var K=x;(a.updateQueue=K)&&(a.flags|=4)}},qO=function(l,a,h,m){h!==m&&(a.flags|=4)};function Hl(l,a){if(!at)switch(l.tailMode){case"hidden":a=l.tail;for(var h=null;a!==null;)a.alternate!==null&&(h=a),a=a.sibling;h===null?l.tail=null:h.sibling=null;break;case"collapsed":h=l.tail;for(var m=null;h!==null;)h.alternate!==null&&(m=h),h=h.sibling;m===null?a||l.tail===null?l.tail=null:l.tail.sibling=null:m.sibling=null}}function qt(l){var a=l.alternate!==null&&l.alternate.child===l.child,h=0,m=0;if(a)for(var y=l.child;y!==null;)h|=y.lanes|y.childLanes,m|=y.subtreeFlags&14680064,m|=y.flags&14680064,y.return=l,y=y.sibling;else for(y=l.child;y!==null;)h|=y.lanes|y.childLanes,m|=y.subtreeFlags,m|=y.flags,y.return=l,y=y.sibling;return l.subtreeFlags|=m,l.childLanes=h,a}function h_(l,a,h){var m=a.pendingProps;switch(Zd(a),a.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return qt(a),null;case 1:return fn(a.type)&&Aa(),qt(a),null;case 3:return m=a.stateNode,Zr(),rt(hn),rt(Ut),Jd(),m.pendingContext&&(m.context=m.pendingContext,m.pendingContext=null),(l===null||l.child===null)&&(La(a)?a.flags|=4:l===null||l.memoizedState.isDehydrated&&(a.flags&256)===0||(a.flags|=1024,qn!==null&&(Ph(qn),qn=null))),yh(l,a),qt(a),null;case 5:Hd(a);var y=Zi(Wl.current);if(h=a.type,l!==null&&a.stateNode!=null)YO(l,a,h,m,y),l.ref!==a.ref&&(a.flags|=512,a.flags|=2097152);else{if(!m){if(a.stateNode===null)throw Error(t(166));return qt(a),null}if(l=Zi(fs.current),La(a)){m=a.stateNode,h=a.type;var x=a.memoizedProps;switch(m[hs]=a,m[zl]=x,l=(a.mode&1)!==0,h){case"dialog":it("cancel",m),it("close",m);break;case"iframe":case"object":case"embed":it("load",m);break;case"video":case"audio":for(y=0;y<Il.length;y++)it(Il[y],m);break;case"source":it("error",m);break;case"img":case"image":case"link":it("error",m),it("load",m);break;case"details":it("toggle",m);break;case"input":Hs(m,x),it("invalid",m);break;case"select":m._wrapperState={wasMultiple:!!x.multiple},it("invalid",m);break;case"textarea":xe(m,x),it("invalid",m)}xr(h,x),y=null;for(var _ in x)if(x.hasOwnProperty(_)){var E=x[_];_==="children"?typeof E=="string"?m.textContent!==E&&(x.suppressHydrationWarning!==!0&&Qa(m.textContent,E,l),y=["children",E]):typeof E=="number"&&m.textContent!==""+E&&(x.suppressHydrationWarning!==!0&&Qa(m.textContent,E,l),y=["children",""+E]):i.hasOwnProperty(_)&&E!=null&&_==="onScroll"&&it("scroll",m)}switch(h){case"input":Re(m),Ku(m,x,!0);break;case"textarea":Re(m),he(m);break;case"select":case"option":break;default:typeof x.onClick=="function"&&(m.onclick=Na)}m=y,a.updateQueue=m,m!==null&&(a.flags|=4)}else{_=y.nodeType===9?y:y.ownerDocument,l==="http://www.w3.org/1999/xhtml"&&(l=Qe(h)),l==="http://www.w3.org/1999/xhtml"?h==="script"?(l=_.createElement("div"),l.innerHTML="<script><\/script>",l=l.removeChild(l.firstChild)):typeof m.is=="string"?l=_.createElement(h,{is:m.is}):(l=_.createElement(h),h==="select"&&(_=l,m.multiple?_.multiple=!0:m.size&&(_.size=m.size))):l=_.createElementNS(l,h),l[hs]=a,l[zl]=m,UO(l,a,!1,!1),a.stateNode=l;e:{switch(_=xl(h,m),h){case"dialog":it("cancel",l),it("close",l),y=m;break;case"iframe":case"object":case"embed":it("load",l),y=m;break;case"video":case"audio":for(y=0;y<Il.length;y++)it(Il[y],l);y=m;break;case"source":it("error",l),y=m;break;case"img":case"image":case"link":it("error",l),it("load",l),y=m;break;case"details":it("toggle",l),y=m;break;case"input":Hs(l,m),y=Et(l,m),it("invalid",l);break;case"option":y=m;break;case"select":l._wrapperState={wasMultiple:!!m.multiple},y=Q({},m,{value:void 0}),it("invalid",l);break;case"textarea":xe(l,m),y=ne(l,m),it("invalid",l);break;default:y=m}xr(h,y),E=y;for(x in E)if(E.hasOwnProperty(x)){var D=E[x];x==="style"?vr(l,D):x==="dangerouslySetInnerHTML"?(D=D?D.__html:void 0,D!=null&&en(l,D)):x==="children"?typeof D=="string"?(h!=="textarea"||D!=="")&&us(l,D):typeof D=="number"&&us(l,""+D):x!=="suppressContentEditableWarning"&&x!=="suppressHydrationWarning"&&x!=="autoFocus"&&(i.hasOwnProperty(x)?D!=null&&x==="onScroll"&&it("scroll",l):D!=null&&C(l,x,D,_))}switch(h){case"input":Re(l),Ku(l,m,!1);break;case"textarea":Re(l),he(l);break;case"option":m.value!=null&&l.setAttribute("value",""+je(m.value));break;case"select":l.multiple=!!m.multiple,x=m.value,x!=null?q(l,!!m.multiple,x,!1):m.defaultValue!=null&&q(l,!!m.multiple,m.defaultValue,!0);break;default:typeof y.onClick=="function"&&(l.onclick=Na)}switch(h){case"button":case"input":case"select":case"textarea":m=!!m.autoFocus;break e;case"img":m=!0;break e;default:m=!1}}m&&(a.flags|=4)}a.ref!==null&&(a.flags|=512,a.flags|=2097152)}return qt(a),null;case 6:if(l&&a.stateNode!=null)qO(l,a,l.memoizedProps,m);else{if(typeof m!="string"&&a.stateNode===null)throw Error(t(166));if(h=Zi(Wl.current),Zi(fs.current),La(a)){if(m=a.stateNode,h=a.memoizedProps,m[hs]=a,(x=m.nodeValue!==h)&&(l=Cn,l!==null))switch(l.tag){case 3:Qa(m.nodeValue,h,(l.mode&1)!==0);break;case 5:l.memoizedProps.suppressHydrationWarning!==!0&&Qa(m.nodeValue,h,(l.mode&1)!==0)}x&&(a.flags|=4)}else m=(h.nodeType===9?h:h.ownerDocument).createTextNode(m),m[hs]=a,a.stateNode=m}return qt(a),null;case 13:if(rt(dt),m=a.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(at&&Tn!==null&&(a.mode&1)!==0&&(a.flags&128)===0)Kg(),Rr(),a.flags|=98560,x=!1;else if(x=La(a),m!==null&&m.dehydrated!==null){if(l===null){if(!x)throw Error(t(318));if(x=a.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(t(317));x[hs]=a}else Rr(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;qt(a),x=!1}else qn!==null&&(Ph(qn),qn=null),x=!0;if(!x)return a.flags&65536?a:null}return(a.flags&128)!==0?(a.lanes=h,a):(m=m!==null,m!==(l!==null&&l.memoizedState!==null)&&m&&(a.child.flags|=8192,(a.mode&1)!==0&&(l===null||(dt.current&1)!==0?Tt===0&&(Tt=3):Nh())),a.updateQueue!==null&&(a.flags|=4),qt(a),null);case 4:return Zr(),yh(l,a),l===null&&Ll(a.stateNode.containerInfo),qt(a),null;case 10:return Wd(a.type._context),qt(a),null;case 17:return fn(a.type)&&Aa(),qt(a),null;case 19:if(rt(dt),x=a.memoizedState,x===null)return qt(a),null;if(m=(a.flags&128)!==0,_=x.rendering,_===null)if(m)Hl(x,!1);else{if(Tt!==0||l!==null&&(l.flags&128)!==0)for(l=a.child;l!==null;){if(_=Va(l),_!==null){for(a.flags|=128,Hl(x,!1),m=_.updateQueue,m!==null&&(a.updateQueue=m,a.flags|=4),a.subtreeFlags=0,m=h,h=a.child;h!==null;)x=h,l=m,x.flags&=14680066,_=x.alternate,_===null?(x.childLanes=0,x.lanes=l,x.child=null,x.subtreeFlags=0,x.memoizedProps=null,x.memoizedState=null,x.updateQueue=null,x.dependencies=null,x.stateNode=null):(x.childLanes=_.childLanes,x.lanes=_.lanes,x.child=_.child,x.subtreeFlags=0,x.deletions=null,x.memoizedProps=_.memoizedProps,x.memoizedState=_.memoizedState,x.updateQueue=_.updateQueue,x.type=_.type,l=_.dependencies,x.dependencies=l===null?null:{lanes:l.lanes,firstContext:l.firstContext}),h=h.sibling;return st(dt,dt.current&1|2),a.child}l=l.sibling}x.tail!==null&&Ot()>Xr&&(a.flags|=128,m=!0,Hl(x,!1),a.lanes=4194304)}else{if(!m)if(l=Va(_),l!==null){if(a.flags|=128,m=!0,h=l.updateQueue,h!==null&&(a.updateQueue=h,a.flags|=4),Hl(x,!0),x.tail===null&&x.tailMode==="hidden"&&!_.alternate&&!at)return qt(a),null}else 2*Ot()-x.renderingStartTime>Xr&&h!==1073741824&&(a.flags|=128,m=!0,Hl(x,!1),a.lanes=4194304);x.isBackwards?(_.sibling=a.child,a.child=_):(h=x.last,h!==null?h.sibling=_:a.child=_,x.last=_)}return x.tail!==null?(a=x.tail,x.rendering=a,x.tail=a.sibling,x.renderingStartTime=Ot(),a.sibling=null,h=dt.current,st(dt,m?h&1|2:h&1),a):(qt(a),null);case 22:case 23:return Qh(),m=a.memoizedState!==null,l!==null&&l.memoizedState!==null!==m&&(a.flags|=8192),m&&(a.mode&1)!==0?(Pn&1073741824)!==0&&(qt(a),a.subtreeFlags&6&&(a.flags|=8192)):qt(a),null;case 24:return null;case 25:return null}throw Error(t(156,a.tag))}function f_(l,a){switch(Zd(a),a.tag){case 1:return fn(a.type)&&Aa(),l=a.flags,l&65536?(a.flags=l&-65537|128,a):null;case 3:return Zr(),rt(hn),rt(Ut),Jd(),l=a.flags,(l&65536)!==0&&(l&128)===0?(a.flags=l&-65537|128,a):null;case 5:return Hd(a),null;case 13:if(rt(dt),l=a.memoizedState,l!==null&&l.dehydrated!==null){if(a.alternate===null)throw Error(t(340));Rr()}return l=a.flags,l&65536?(a.flags=l&-65537|128,a):null;case 19:return rt(dt),null;case 4:return Zr(),null;case 10:return Wd(a.type._context),null;case 22:case 23:return Qh(),null;case 24:return null;default:return null}}var ec=!1,Gt=!1,p_=typeof WeakSet=="function"?WeakSet:Set,be=null;function Fr(l,a){var h=l.ref;if(h!==null)if(typeof h=="function")try{h(null)}catch(m){ft(l,a,m)}else h.current=null}function vh(l,a,h){try{h()}catch(m){ft(l,a,m)}}var GO=!1;function m_(l,a){if(Qd=xa,l=Tg(),Sd(l)){if("selectionStart"in l)var h={start:l.selectionStart,end:l.selectionEnd};else e:{h=(h=l.ownerDocument)&&h.defaultView||window;var m=h.getSelection&&h.getSelection();if(m&&m.rangeCount!==0){h=m.anchorNode;var y=m.anchorOffset,x=m.focusNode;m=m.focusOffset;try{h.nodeType,x.nodeType}catch{h=null;break e}var _=0,E=-1,D=-1,K=0,ae=0,ue=l,oe=null;t:for(;;){for(var ke;ue!==h||y!==0&&ue.nodeType!==3||(E=_+y),ue!==x||m!==0&&ue.nodeType!==3||(D=_+m),ue.nodeType===3&&(_+=ue.nodeValue.length),(ke=ue.firstChild)!==null;)oe=ue,ue=ke;for(;;){if(ue===l)break t;if(oe===h&&++K===y&&(E=_),oe===x&&++ae===m&&(D=_),(ke=ue.nextSibling)!==null)break;ue=oe,oe=ue.parentNode}ue=ke}h=E===-1||D===-1?null:{start:E,end:D}}else h=null}h=h||{start:0,end:0}}else h=null;for(Nd={focusedElem:l,selectionRange:h},xa=!1,be=a;be!==null;)if(a=be,l=a.child,(a.subtreeFlags&1028)!==0&&l!==null)l.return=a,be=l;else for(;be!==null;){a=be;try{var _e=a.alternate;if((a.flags&1024)!==0)switch(a.tag){case 0:case 11:case 15:break;case 1:if(_e!==null){var $e=_e.memoizedProps,yt=_e.memoizedState,W=a.stateNode,L=W.getSnapshotBeforeUpdate(a.elementType===a.type?$e:Gn(a.type,$e),yt);W.__reactInternalSnapshotBeforeUpdate=L}break;case 3:var G=a.stateNode.containerInfo;G.nodeType===1?G.textContent="":G.nodeType===9&&G.documentElement&&G.removeChild(G.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(t(163))}}catch(de){ft(a,a.return,de)}if(l=a.sibling,l!==null){l.return=a.return,be=l;break}be=a.return}return _e=GO,GO=!1,_e}function Kl(l,a,h){var m=a.updateQueue;if(m=m!==null?m.lastEffect:null,m!==null){var y=m=m.next;do{if((y.tag&l)===l){var x=y.destroy;y.destroy=void 0,x!==void 0&&vh(a,h,x)}y=y.next}while(y!==m)}}function tc(l,a){if(a=a.updateQueue,a=a!==null?a.lastEffect:null,a!==null){var h=a=a.next;do{if((h.tag&l)===l){var m=h.create;h.destroy=m()}h=h.next}while(h!==a)}}function xh(l){var a=l.ref;if(a!==null){var h=l.stateNode;switch(l.tag){case 5:l=h;break;default:l=h}typeof a=="function"?a(l):a.current=l}}function HO(l){var a=l.alternate;a!==null&&(l.alternate=null,HO(a)),l.child=null,l.deletions=null,l.sibling=null,l.tag===5&&(a=l.stateNode,a!==null&&(delete a[hs],delete a[zl],delete a[Rd],delete a[H1],delete a[K1])),l.stateNode=null,l.return=null,l.dependencies=null,l.memoizedProps=null,l.memoizedState=null,l.pendingProps=null,l.stateNode=null,l.updateQueue=null}function KO(l){return l.tag===5||l.tag===3||l.tag===4}function JO(l){e:for(;;){for(;l.sibling===null;){if(l.return===null||KO(l.return))return null;l=l.return}for(l.sibling.return=l.return,l=l.sibling;l.tag!==5&&l.tag!==6&&l.tag!==18;){if(l.flags&2||l.child===null||l.tag===4)continue e;l.child.return=l,l=l.child}if(!(l.flags&2))return l.stateNode}}function wh(l,a,h){var m=l.tag;if(m===5||m===6)l=l.stateNode,a?h.nodeType===8?h.parentNode.insertBefore(l,a):h.insertBefore(l,a):(h.nodeType===8?(a=h.parentNode,a.insertBefore(l,h)):(a=h,a.appendChild(l)),h=h._reactRootContainer,h!=null||a.onclick!==null||(a.onclick=Na));else if(m!==4&&(l=l.child,l!==null))for(wh(l,a,h),l=l.sibling;l!==null;)wh(l,a,h),l=l.sibling}function kh(l,a,h){var m=l.tag;if(m===5||m===6)l=l.stateNode,a?h.insertBefore(l,a):h.appendChild(l);else if(m!==4&&(l=l.child,l!==null))for(kh(l,a,h),l=l.sibling;l!==null;)kh(l,a,h),l=l.sibling}var zt=null,Hn=!1;function ui(l,a,h){for(h=h.child;h!==null;)ey(l,a,h),h=h.sibling}function ey(l,a,h){if(ds&&typeof ds.onCommitFiberUnmount=="function")try{ds.onCommitFiberUnmount(pa,h)}catch{}switch(h.tag){case 5:Gt||Fr(h,a);case 6:var m=zt,y=Hn;zt=null,ui(l,a,h),zt=m,Hn=y,zt!==null&&(Hn?(l=zt,h=h.stateNode,l.nodeType===8?l.parentNode.removeChild(h):l.removeChild(h)):zt.removeChild(h.stateNode));break;case 18:zt!==null&&(Hn?(l=zt,h=h.stateNode,l.nodeType===8?Md(l.parentNode,h):l.nodeType===1&&Md(l,h),jl(l)):Md(zt,h.stateNode));break;case 4:m=zt,y=Hn,zt=h.stateNode.containerInfo,Hn=!0,ui(l,a,h),zt=m,Hn=y;break;case 0:case 11:case 14:case 15:if(!Gt&&(m=h.updateQueue,m!==null&&(m=m.lastEffect,m!==null))){y=m=m.next;do{var x=y,_=x.destroy;x=x.tag,_!==void 0&&((x&2)!==0||(x&4)!==0)&&vh(h,a,_),y=y.next}while(y!==m)}ui(l,a,h);break;case 1:if(!Gt&&(Fr(h,a),m=h.stateNode,typeof m.componentWillUnmount=="function"))try{m.props=h.memoizedProps,m.state=h.memoizedState,m.componentWillUnmount()}catch(E){ft(h,a,E)}ui(l,a,h);break;case 21:ui(l,a,h);break;case 22:h.mode&1?(Gt=(m=Gt)||h.memoizedState!==null,ui(l,a,h),Gt=m):ui(l,a,h);break;default:ui(l,a,h)}}function ty(l){var a=l.updateQueue;if(a!==null){l.updateQueue=null;var h=l.stateNode;h===null&&(h=l.stateNode=new p_),a.forEach(function(m){var y=b_.bind(null,l,m);h.has(m)||(h.add(m),m.then(y,y))})}}function Kn(l,a){var h=a.deletions;if(h!==null)for(var m=0;m<h.length;m++){var y=h[m];try{var x=l,_=a,E=_;e:for(;E!==null;){switch(E.tag){case 5:zt=E.stateNode,Hn=!1;break e;case 3:zt=E.stateNode.containerInfo,Hn=!0;break e;case 4:zt=E.stateNode.containerInfo,Hn=!0;break e}E=E.return}if(zt===null)throw Error(t(160));ey(x,_,y),zt=null,Hn=!1;var D=y.alternate;D!==null&&(D.return=null),y.return=null}catch(K){ft(y,a,K)}}if(a.subtreeFlags&12854)for(a=a.child;a!==null;)ny(a,l),a=a.sibling}function ny(l,a){var h=l.alternate,m=l.flags;switch(l.tag){case 0:case 11:case 14:case 15:if(Kn(a,l),ms(l),m&4){try{Kl(3,l,l.return),tc(3,l)}catch($e){ft(l,l.return,$e)}try{Kl(5,l,l.return)}catch($e){ft(l,l.return,$e)}}break;case 1:Kn(a,l),ms(l),m&512&&h!==null&&Fr(h,h.return);break;case 5:if(Kn(a,l),ms(l),m&512&&h!==null&&Fr(h,h.return),l.flags&32){var y=l.stateNode;try{us(y,"")}catch($e){ft(l,l.return,$e)}}if(m&4&&(y=l.stateNode,y!=null)){var x=l.memoizedProps,_=h!==null?h.memoizedProps:x,E=l.type,D=l.updateQueue;if(l.updateQueue=null,D!==null)try{E==="input"&&x.type==="radio"&&x.name!=null&&gr(y,x),xl(E,_);var K=xl(E,x);for(_=0;_<D.length;_+=2){var ae=D[_],ue=D[_+1];ae==="style"?vr(y,ue):ae==="dangerouslySetInnerHTML"?en(y,ue):ae==="children"?us(y,ue):C(y,ae,ue,K)}switch(E){case"input":vl(y,x);break;case"textarea":ge(y,x);break;case"select":var oe=y._wrapperState.wasMultiple;y._wrapperState.wasMultiple=!!x.multiple;var ke=x.value;ke!=null?q(y,!!x.multiple,ke,!1):oe!==!!x.multiple&&(x.defaultValue!=null?q(y,!!x.multiple,x.defaultValue,!0):q(y,!!x.multiple,x.multiple?[]:"",!1))}y[zl]=x}catch($e){ft(l,l.return,$e)}}break;case 6:if(Kn(a,l),ms(l),m&4){if(l.stateNode===null)throw Error(t(162));y=l.stateNode,x=l.memoizedProps;try{y.nodeValue=x}catch($e){ft(l,l.return,$e)}}break;case 3:if(Kn(a,l),ms(l),m&4&&h!==null&&h.memoizedState.isDehydrated)try{jl(a.containerInfo)}catch($e){ft(l,l.return,$e)}break;case 4:Kn(a,l),ms(l);break;case 13:Kn(a,l),ms(l),y=l.child,y.flags&8192&&(x=y.memoizedState!==null,y.stateNode.isHidden=x,!x||y.alternate!==null&&y.alternate.memoizedState!==null||(_h=Ot())),m&4&&ty(l);break;case 22:if(ae=h!==null&&h.memoizedState!==null,l.mode&1?(Gt=(K=Gt)||ae,Kn(a,l),Gt=K):Kn(a,l),ms(l),m&8192){if(K=l.memoizedState!==null,(l.stateNode.isHidden=K)&&!ae&&(l.mode&1)!==0)for(be=l,ae=l.child;ae!==null;){for(ue=be=ae;be!==null;){switch(oe=be,ke=oe.child,oe.tag){case 0:case 11:case 14:case 15:Kl(4,oe,oe.return);break;case 1:Fr(oe,oe.return);var _e=oe.stateNode;if(typeof _e.componentWillUnmount=="function"){m=oe,h=oe.return;try{a=m,_e.props=a.memoizedProps,_e.state=a.memoizedState,_e.componentWillUnmount()}catch($e){ft(m,h,$e)}}break;case 5:Fr(oe,oe.return);break;case 22:if(oe.memoizedState!==null){ry(ue);continue}}ke!==null?(ke.return=oe,be=ke):ry(ue)}ae=ae.sibling}e:for(ae=null,ue=l;;){if(ue.tag===5){if(ae===null){ae=ue;try{y=ue.stateNode,K?(x=y.style,typeof x.setProperty=="function"?x.setProperty("display","none","important"):x.display="none"):(E=ue.stateNode,D=ue.memoizedProps.style,_=D!=null&&D.hasOwnProperty("display")?D.display:null,E.style.display=yr("display",_))}catch($e){ft(l,l.return,$e)}}}else if(ue.tag===6){if(ae===null)try{ue.stateNode.nodeValue=K?"":ue.memoizedProps}catch($e){ft(l,l.return,$e)}}else if((ue.tag!==22&&ue.tag!==23||ue.memoizedState===null||ue===l)&&ue.child!==null){ue.child.return=ue,ue=ue.child;continue}if(ue===l)break e;for(;ue.sibling===null;){if(ue.return===null||ue.return===l)break e;ae===ue&&(ae=null),ue=ue.return}ae===ue&&(ae=null),ue.sibling.return=ue.return,ue=ue.sibling}}break;case 19:Kn(a,l),ms(l),m&4&&ty(l);break;case 21:break;default:Kn(a,l),ms(l)}}function ms(l){var a=l.flags;if(a&2){try{e:{for(var h=l.return;h!==null;){if(KO(h)){var m=h;break e}h=h.return}throw Error(t(160))}switch(m.tag){case 5:var y=m.stateNode;m.flags&32&&(us(y,""),m.flags&=-33);var x=JO(l);kh(l,x,y);break;case 3:case 4:var _=m.stateNode.containerInfo,E=JO(l);wh(l,E,_);break;default:throw Error(t(161))}}catch(D){ft(l,l.return,D)}l.flags&=-3}a&4096&&(l.flags&=-4097)}function g_(l,a,h){be=l,sy(l)}function sy(l,a,h){for(var m=(l.mode&1)!==0;be!==null;){var y=be,x=y.child;if(y.tag===22&&m){var _=y.memoizedState!==null||ec;if(!_){var E=y.alternate,D=E!==null&&E.memoizedState!==null||Gt;E=ec;var K=Gt;if(ec=_,(Gt=D)&&!K)for(be=y;be!==null;)_=be,D=_.child,_.tag===22&&_.memoizedState!==null?ly(y):D!==null?(D.return=_,be=D):ly(y);for(;x!==null;)be=x,sy(x),x=x.sibling;be=y,ec=E,Gt=K}iy(l)}else(y.subtreeFlags&8772)!==0&&x!==null?(x.return=y,be=x):iy(l)}}function iy(l){for(;be!==null;){var a=be;if((a.flags&8772)!==0){var h=a.alternate;try{if((a.flags&8772)!==0)switch(a.tag){case 0:case 11:case 15:Gt||tc(5,a);break;case 1:var m=a.stateNode;if(a.flags&4&&!Gt)if(h===null)m.componentDidMount();else{var y=a.elementType===a.type?h.memoizedProps:Gn(a.type,h.memoizedProps);m.componentDidUpdate(y,h.memoizedState,m.__reactInternalSnapshotBeforeUpdate)}var x=a.updateQueue;x!==null&&rO(a,x,m);break;case 3:var _=a.updateQueue;if(_!==null){if(h=null,a.child!==null)switch(a.child.tag){case 5:h=a.child.stateNode;break;case 1:h=a.child.stateNode}rO(a,_,h)}break;case 5:var E=a.stateNode;if(h===null&&a.flags&4){h=E;var D=a.memoizedProps;switch(a.type){case"button":case"input":case"select":case"textarea":D.autoFocus&&h.focus();break;case"img":D.src&&(h.src=D.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(a.memoizedState===null){var K=a.alternate;if(K!==null){var ae=K.memoizedState;if(ae!==null){var ue=ae.dehydrated;ue!==null&&jl(ue)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(t(163))}Gt||a.flags&512&&xh(a)}catch(oe){ft(a,a.return,oe)}}if(a===l){be=null;break}if(h=a.sibling,h!==null){h.return=a.return,be=h;break}be=a.return}}function ry(l){for(;be!==null;){var a=be;if(a===l){be=null;break}var h=a.sibling;if(h!==null){h.return=a.return,be=h;break}be=a.return}}function ly(l){for(;be!==null;){var a=be;try{switch(a.tag){case 0:case 11:case 15:var h=a.return;try{tc(4,a)}catch(D){ft(a,h,D)}break;case 1:var m=a.stateNode;if(typeof m.componentDidMount=="function"){var y=a.return;try{m.componentDidMount()}catch(D){ft(a,y,D)}}var x=a.return;try{xh(a)}catch(D){ft(a,x,D)}break;case 5:var _=a.return;try{xh(a)}catch(D){ft(a,_,D)}}}catch(D){ft(a,a.return,D)}if(a===l){be=null;break}var E=a.sibling;if(E!==null){E.return=a.return,be=E;break}be=a.return}}var O_=Math.ceil,nc=T.ReactCurrentDispatcher,Sh=T.ReactCurrentOwner,Ln=T.ReactCurrentBatchConfig,We=0,Mt=null,xt=null,Ft=0,Pn=0,Br=ri(0),Tt=0,Jl=null,Fi=0,sc=0,bh=0,eo=null,mn=null,_h=0,Xr=1/0,Zs=null,ic=!1,$h=null,di=null,rc=!1,hi=null,lc=0,to=0,Ch=null,oc=-1,ac=0;function nn(){return(We&6)!==0?Ot():oc!==-1?oc:oc=Ot()}function fi(l){return(l.mode&1)===0?1:(We&2)!==0&&Ft!==0?Ft&-Ft:e_.transition!==null?(ac===0&&(ac=Jm()),ac):(l=Je,l!==0||(l=window.event,l=l===void 0?16:ag(l.type)),l)}function Jn(l,a,h,m){if(50<to)throw to=0,Ch=null,Error(t(185));_l(l,h,m),((We&2)===0||l!==Mt)&&(l===Mt&&((We&2)===0&&(sc|=h),Tt===4&&pi(l,Ft)),gn(l,m),h===1&&We===0&&(a.mode&1)===0&&(Xr=Ot()+500,Ra&&oi()))}function gn(l,a){var h=l.callbackNode;e1(l,a);var m=Oa(l,l===Mt?Ft:0);if(m===0)h!==null&&Gm(h),l.callbackNode=null,l.callbackPriority=0;else if(a=m&-m,l.callbackPriority!==a){if(h!=null&&Gm(h),a===1)l.tag===0?J1(ay.bind(null,l)):Ug(ay.bind(null,l)),q1(function(){(We&6)===0&&oi()}),h=null;else{switch(eg(m)){case 1:h=ld;break;case 4:h=Hm;break;case 16:h=fa;break;case 536870912:h=Km;break;default:h=fa}h=gy(h,oy.bind(null,l))}l.callbackPriority=a,l.callbackNode=h}}function oy(l,a){if(oc=-1,ac=0,(We&6)!==0)throw Error(t(327));var h=l.callbackNode;if(Vr()&&l.callbackNode!==h)return null;var m=Oa(l,l===Mt?Ft:0);if(m===0)return null;if((m&30)!==0||(m&l.expiredLanes)!==0||a)a=cc(l,m);else{a=m;var y=We;We|=2;var x=uy();(Mt!==l||Ft!==a)&&(Zs=null,Xr=Ot()+500,Xi(l,a));do try{x_();break}catch(E){cy(l,E)}while(!0);Vd(),nc.current=x,We=y,xt!==null?a=0:(Mt=null,Ft=0,a=Tt)}if(a!==0){if(a===2&&(y=od(l),y!==0&&(m=y,a=Th(l,y))),a===1)throw h=Jl,Xi(l,0),pi(l,m),gn(l,Ot()),h;if(a===6)pi(l,m);else{if(y=l.current.alternate,(m&30)===0&&!y_(y)&&(a=cc(l,m),a===2&&(x=od(l),x!==0&&(m=x,a=Th(l,x))),a===1))throw h=Jl,Xi(l,0),pi(l,m),gn(l,Ot()),h;switch(l.finishedWork=y,l.finishedLanes=m,a){case 0:case 1:throw Error(t(345));case 2:Vi(l,mn,Zs);break;case 3:if(pi(l,m),(m&130023424)===m&&(a=_h+500-Ot(),10<a)){if(Oa(l,0)!==0)break;if(y=l.suspendedLanes,(y&m)!==m){nn(),l.pingedLanes|=l.suspendedLanes&y;break}l.timeoutHandle=Ad(Vi.bind(null,l,mn,Zs),a);break}Vi(l,mn,Zs);break;case 4:if(pi(l,m),(m&4194240)===m)break;for(a=l.eventTimes,y=-1;0<m;){var _=31-Un(m);x=1<<_,_=a[_],_>y&&(y=_),m&=~x}if(m=y,m=Ot()-m,m=(120>m?120:480>m?480:1080>m?1080:1920>m?1920:3e3>m?3e3:4320>m?4320:1960*O_(m/1960))-m,10<m){l.timeoutHandle=Ad(Vi.bind(null,l,mn,Zs),m);break}Vi(l,mn,Zs);break;case 5:Vi(l,mn,Zs);break;default:throw Error(t(329))}}}return gn(l,Ot()),l.callbackNode===h?oy.bind(null,l):null}function Th(l,a){var h=eo;return l.current.memoizedState.isDehydrated&&(Xi(l,a).flags|=256),l=cc(l,a),l!==2&&(a=mn,mn=h,a!==null&&Ph(a)),l}function Ph(l){mn===null?mn=l:mn.push.apply(mn,l)}function y_(l){for(var a=l;;){if(a.flags&16384){var h=a.updateQueue;if(h!==null&&(h=h.stores,h!==null))for(var m=0;m<h.length;m++){var y=h[m],x=y.getSnapshot;y=y.value;try{if(!Yn(x(),y))return!1}catch{return!1}}}if(h=a.child,a.subtreeFlags&16384&&h!==null)h.return=a,a=h;else{if(a===l)break;for(;a.sibling===null;){if(a.return===null||a.return===l)return!0;a=a.return}a.sibling.return=a.return,a=a.sibling}}return!0}function pi(l,a){for(a&=~bh,a&=~sc,l.suspendedLanes|=a,l.pingedLanes&=~a,l=l.expirationTimes;0<a;){var h=31-Un(a),m=1<<h;l[h]=-1,a&=~m}}function ay(l){if((We&6)!==0)throw Error(t(327));Vr();var a=Oa(l,0);if((a&1)===0)return gn(l,Ot()),null;var h=cc(l,a);if(l.tag!==0&&h===2){var m=od(l);m!==0&&(a=m,h=Th(l,m))}if(h===1)throw h=Jl,Xi(l,0),pi(l,a),gn(l,Ot()),h;if(h===6)throw Error(t(345));return l.finishedWork=l.current.alternate,l.finishedLanes=a,Vi(l,mn,Zs),gn(l,Ot()),null}function jh(l,a){var h=We;We|=1;try{return l(a)}finally{We=h,We===0&&(Xr=Ot()+500,Ra&&oi())}}function Bi(l){hi!==null&&hi.tag===0&&(We&6)===0&&Vr();var a=We;We|=1;var h=Ln.transition,m=Je;try{if(Ln.transition=null,Je=1,l)return l()}finally{Je=m,Ln.transition=h,We=a,(We&6)===0&&oi()}}function Qh(){Pn=Br.current,rt(Br)}function Xi(l,a){l.finishedWork=null,l.finishedLanes=0;var h=l.timeoutHandle;if(h!==-1&&(l.timeoutHandle=-1,Y1(h)),xt!==null)for(h=xt.return;h!==null;){var m=h;switch(Zd(m),m.tag){case 1:m=m.type.childContextTypes,m!=null&&Aa();break;case 3:Zr(),rt(hn),rt(Ut),Jd();break;case 5:Hd(m);break;case 4:Zr();break;case 13:rt(dt);break;case 19:rt(dt);break;case 10:Wd(m.type._context);break;case 22:case 23:Qh()}h=h.return}if(Mt=l,xt=l=mi(l.current,null),Ft=Pn=a,Tt=0,Jl=null,bh=sc=Fi=0,mn=eo=null,Li!==null){for(a=0;a<Li.length;a++)if(h=Li[a],m=h.interleaved,m!==null){h.interleaved=null;var y=m.next,x=h.pending;if(x!==null){var _=x.next;x.next=y,m.next=_}h.pending=m}Li=null}return l}function cy(l,a){do{var h=xt;try{if(Vd(),Wa.current=Ga,Ua){for(var m=ht.memoizedState;m!==null;){var y=m.queue;y!==null&&(y.pending=null),m=m.next}Ua=!1}if(zi=0,At=Ct=ht=null,Ul=!1,Yl=0,Sh.current=null,h===null||h.return===null){Tt=1,Jl=a,xt=null;break}e:{var x=l,_=h.return,E=h,D=a;if(a=Ft,E.flags|=32768,D!==null&&typeof D=="object"&&typeof D.then=="function"){var K=D,ae=E,ue=ae.tag;if((ae.mode&1)===0&&(ue===0||ue===11||ue===15)){var oe=ae.alternate;oe?(ae.updateQueue=oe.updateQueue,ae.memoizedState=oe.memoizedState,ae.lanes=oe.lanes):(ae.updateQueue=null,ae.memoizedState=null)}var ke=AO(_);if(ke!==null){ke.flags&=-257,MO(ke,_,E,x,a),ke.mode&1&&EO(x,K,a),a=ke,D=K;var _e=a.updateQueue;if(_e===null){var $e=new Set;$e.add(D),a.updateQueue=$e}else _e.add(D);break e}else{if((a&1)===0){EO(x,K,a),Nh();break e}D=Error(t(426))}}else if(at&&E.mode&1){var yt=AO(_);if(yt!==null){(yt.flags&65536)===0&&(yt.flags|=256),MO(yt,_,E,x,a),Bd(zr(D,E));break e}}x=D=zr(D,E),Tt!==4&&(Tt=2),eo===null?eo=[x]:eo.push(x),x=_;do{switch(x.tag){case 3:x.flags|=65536,a&=-a,x.lanes|=a;var W=QO(x,D,a);iO(x,W);break e;case 1:E=D;var L=x.type,G=x.stateNode;if((x.flags&128)===0&&(typeof L.getDerivedStateFromError=="function"||G!==null&&typeof G.componentDidCatch=="function"&&(di===null||!di.has(G)))){x.flags|=65536,a&=-a,x.lanes|=a;var de=NO(x,E,a);iO(x,de);break e}}x=x.return}while(x!==null)}hy(h)}catch(Te){a=Te,xt===h&&h!==null&&(xt=h=h.return);continue}break}while(!0)}function uy(){var l=nc.current;return nc.current=Ga,l===null?Ga:l}function Nh(){(Tt===0||Tt===3||Tt===2)&&(Tt=4),Mt===null||(Fi&268435455)===0&&(sc&268435455)===0||pi(Mt,Ft)}function cc(l,a){var h=We;We|=2;var m=uy();(Mt!==l||Ft!==a)&&(Zs=null,Xi(l,a));do try{v_();break}catch(y){cy(l,y)}while(!0);if(Vd(),We=h,nc.current=m,xt!==null)throw Error(t(261));return Mt=null,Ft=0,Tt}function v_(){for(;xt!==null;)dy(xt)}function x_(){for(;xt!==null&&!Vb();)dy(xt)}function dy(l){var a=my(l.alternate,l,Pn);l.memoizedProps=l.pendingProps,a===null?hy(l):xt=a,Sh.current=null}function hy(l){var a=l;do{var h=a.alternate;if(l=a.return,(a.flags&32768)===0){if(h=h_(h,a,Pn),h!==null){xt=h;return}}else{if(h=f_(h,a),h!==null){h.flags&=32767,xt=h;return}if(l!==null)l.flags|=32768,l.subtreeFlags=0,l.deletions=null;else{Tt=6,xt=null;return}}if(a=a.sibling,a!==null){xt=a;return}xt=a=l}while(a!==null);Tt===0&&(Tt=5)}function Vi(l,a,h){var m=Je,y=Ln.transition;try{Ln.transition=null,Je=1,w_(l,a,h,m)}finally{Ln.transition=y,Je=m}return null}function w_(l,a,h,m){do Vr();while(hi!==null);if((We&6)!==0)throw Error(t(327));h=l.finishedWork;var y=l.finishedLanes;if(h===null)return null;if(l.finishedWork=null,l.finishedLanes=0,h===l.current)throw Error(t(177));l.callbackNode=null,l.callbackPriority=0;var x=h.lanes|h.childLanes;if(t1(l,x),l===Mt&&(xt=Mt=null,Ft=0),(h.subtreeFlags&2064)===0&&(h.flags&2064)===0||rc||(rc=!0,gy(fa,function(){return Vr(),null})),x=(h.flags&15990)!==0,(h.subtreeFlags&15990)!==0||x){x=Ln.transition,Ln.transition=null;var _=Je;Je=1;var E=We;We|=4,Sh.current=null,m_(l,h),ny(h,l),z1(Nd),xa=!!Qd,Nd=Qd=null,l.current=h,g_(h),Wb(),We=E,Je=_,Ln.transition=x}else l.current=h;if(rc&&(rc=!1,hi=l,lc=y),x=l.pendingLanes,x===0&&(di=null),qb(h.stateNode),gn(l,Ot()),a!==null)for(m=l.onRecoverableError,h=0;h<a.length;h++)y=a[h],m(y.value,{componentStack:y.stack,digest:y.digest});if(ic)throw ic=!1,l=$h,$h=null,l;return(lc&1)!==0&&l.tag!==0&&Vr(),x=l.pendingLanes,(x&1)!==0?l===Ch?to++:(to=0,Ch=l):to=0,oi(),null}function Vr(){if(hi!==null){var l=eg(lc),a=Ln.transition,h=Je;try{if(Ln.transition=null,Je=16>l?16:l,hi===null)var m=!1;else{if(l=hi,hi=null,lc=0,(We&6)!==0)throw Error(t(331));var y=We;for(We|=4,be=l.current;be!==null;){var x=be,_=x.child;if((be.flags&16)!==0){var E=x.deletions;if(E!==null){for(var D=0;D<E.length;D++){var K=E[D];for(be=K;be!==null;){var ae=be;switch(ae.tag){case 0:case 11:case 15:Kl(8,ae,x)}var ue=ae.child;if(ue!==null)ue.return=ae,be=ue;else for(;be!==null;){ae=be;var oe=ae.sibling,ke=ae.return;if(HO(ae),ae===K){be=null;break}if(oe!==null){oe.return=ke,be=oe;break}be=ke}}}var _e=x.alternate;if(_e!==null){var $e=_e.child;if($e!==null){_e.child=null;do{var yt=$e.sibling;$e.sibling=null,$e=yt}while($e!==null)}}be=x}}if((x.subtreeFlags&2064)!==0&&_!==null)_.return=x,be=_;else e:for(;be!==null;){if(x=be,(x.flags&2048)!==0)switch(x.tag){case 0:case 11:case 15:Kl(9,x,x.return)}var W=x.sibling;if(W!==null){W.return=x.return,be=W;break e}be=x.return}}var L=l.current;for(be=L;be!==null;){_=be;var G=_.child;if((_.subtreeFlags&2064)!==0&&G!==null)G.return=_,be=G;else e:for(_=L;be!==null;){if(E=be,(E.flags&2048)!==0)try{switch(E.tag){case 0:case 11:case 15:tc(9,E)}}catch(Te){ft(E,E.return,Te)}if(E===_){be=null;break e}var de=E.sibling;if(de!==null){de.return=E.return,be=de;break e}be=E.return}}if(We=y,oi(),ds&&typeof ds.onPostCommitFiberRoot=="function")try{ds.onPostCommitFiberRoot(pa,l)}catch{}m=!0}return m}finally{Je=h,Ln.transition=a}}return!1}function fy(l,a,h){a=zr(h,a),a=QO(l,a,1),l=ci(l,a,1),a=nn(),l!==null&&(_l(l,1,a),gn(l,a))}function ft(l,a,h){if(l.tag===3)fy(l,l,h);else for(;a!==null;){if(a.tag===3){fy(a,l,h);break}else if(a.tag===1){var m=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof m.componentDidCatch=="function"&&(di===null||!di.has(m))){l=zr(h,l),l=NO(a,l,1),a=ci(a,l,1),l=nn(),a!==null&&(_l(a,1,l),gn(a,l));break}}a=a.return}}function k_(l,a,h){var m=l.pingCache;m!==null&&m.delete(a),a=nn(),l.pingedLanes|=l.suspendedLanes&h,Mt===l&&(Ft&h)===h&&(Tt===4||Tt===3&&(Ft&130023424)===Ft&&500>Ot()-_h?Xi(l,0):bh|=h),gn(l,a)}function py(l,a){a===0&&((l.mode&1)===0?a=1:(a=ga,ga<<=1,(ga&130023424)===0&&(ga=4194304)));var h=nn();l=Ds(l,a),l!==null&&(_l(l,a,h),gn(l,h))}function S_(l){var a=l.memoizedState,h=0;a!==null&&(h=a.retryLane),py(l,h)}function b_(l,a){var h=0;switch(l.tag){case 13:var m=l.stateNode,y=l.memoizedState;y!==null&&(h=y.retryLane);break;case 19:m=l.stateNode;break;default:throw Error(t(314))}m!==null&&m.delete(a),py(l,h)}var my;my=function(l,a,h){if(l!==null)if(l.memoizedProps!==a.pendingProps||hn.current)pn=!0;else{if((l.lanes&h)===0&&(a.flags&128)===0)return pn=!1,d_(l,a,h);pn=(l.flags&131072)!==0}else pn=!1,at&&(a.flags&1048576)!==0&&Yg(a,Ia,a.index);switch(a.lanes=0,a.tag){case 2:var m=a.type;Ja(l,a),l=a.pendingProps;var y=Er(a,Ut.current);Lr(a,h),y=nh(null,a,m,l,y,h);var x=sh();return a.flags|=1,typeof y=="object"&&y!==null&&typeof y.render=="function"&&y.$$typeof===void 0?(a.tag=1,a.memoizedState=null,a.updateQueue=null,fn(m)?(x=!0,Ma(a)):x=!1,a.memoizedState=y.state!==null&&y.state!==void 0?y.state:null,qd(a),y.updater=Ha,a.stateNode=y,y._reactInternals=a,ch(a,m,l,h),a=fh(null,a,m,!0,x,h)):(a.tag=0,at&&x&&Ld(a),tn(null,a,y,h),a=a.child),a;case 16:m=a.elementType;e:{switch(Ja(l,a),l=a.pendingProps,y=m._init,m=y(m._payload),a.type=m,y=a.tag=$_(m),l=Gn(m,l),y){case 0:a=hh(null,a,m,l,h);break e;case 1:a=zO(null,a,m,l,h);break e;case 11:a=RO(null,a,m,l,h);break e;case 14:a=DO(null,a,m,Gn(m.type,l),h);break e}throw Error(t(306,m,""))}return a;case 0:return m=a.type,y=a.pendingProps,y=a.elementType===m?y:Gn(m,y),hh(l,a,m,y,h);case 1:return m=a.type,y=a.pendingProps,y=a.elementType===m?y:Gn(m,y),zO(l,a,m,y,h);case 3:e:{if(FO(a),l===null)throw Error(t(387));m=a.pendingProps,x=a.memoizedState,y=x.element,sO(l,a),Xa(a,m,null,h);var _=a.memoizedState;if(m=_.element,x.isDehydrated)if(x={element:m,isDehydrated:!1,cache:_.cache,pendingSuspenseBoundaries:_.pendingSuspenseBoundaries,transitions:_.transitions},a.updateQueue.baseState=x,a.memoizedState=x,a.flags&256){y=zr(Error(t(423)),a),a=BO(l,a,m,h,y);break e}else if(m!==y){y=zr(Error(t(424)),a),a=BO(l,a,m,h,y);break e}else for(Tn=ii(a.stateNode.containerInfo.firstChild),Cn=a,at=!0,qn=null,h=tO(a,null,m,h),a.child=h;h;)h.flags=h.flags&-3|4096,h=h.sibling;else{if(Rr(),m===y){a=Ls(l,a,h);break e}tn(l,a,m,h)}a=a.child}return a;case 5:return lO(a),l===null&&Fd(a),m=a.type,y=a.pendingProps,x=l!==null?l.memoizedProps:null,_=y.children,Ed(m,y)?_=null:x!==null&&Ed(m,x)&&(a.flags|=32),ZO(l,a),tn(l,a,_,h),a.child;case 6:return l===null&&Fd(a),null;case 13:return XO(l,a,h);case 4:return Gd(a,a.stateNode.containerInfo),m=a.pendingProps,l===null?a.child=Dr(a,null,m,h):tn(l,a,m,h),a.child;case 11:return m=a.type,y=a.pendingProps,y=a.elementType===m?y:Gn(m,y),RO(l,a,m,y,h);case 7:return tn(l,a,a.pendingProps,h),a.child;case 8:return tn(l,a,a.pendingProps.children,h),a.child;case 12:return tn(l,a,a.pendingProps.children,h),a.child;case 10:e:{if(m=a.type._context,y=a.pendingProps,x=a.memoizedProps,_=y.value,st(za,m._currentValue),m._currentValue=_,x!==null)if(Yn(x.value,_)){if(x.children===y.children&&!hn.current){a=Ls(l,a,h);break e}}else for(x=a.child,x!==null&&(x.return=a);x!==null;){var E=x.dependencies;if(E!==null){_=x.child;for(var D=E.firstContext;D!==null;){if(D.context===m){if(x.tag===1){D=Is(-1,h&-h),D.tag=2;var K=x.updateQueue;if(K!==null){K=K.shared;var ae=K.pending;ae===null?D.next=D:(D.next=ae.next,ae.next=D),K.pending=D}}x.lanes|=h,D=x.alternate,D!==null&&(D.lanes|=h),Ud(x.return,h,a),E.lanes|=h;break}D=D.next}}else if(x.tag===10)_=x.type===a.type?null:x.child;else if(x.tag===18){if(_=x.return,_===null)throw Error(t(341));_.lanes|=h,E=_.alternate,E!==null&&(E.lanes|=h),Ud(_,h,a),_=x.sibling}else _=x.child;if(_!==null)_.return=x;else for(_=x;_!==null;){if(_===a){_=null;break}if(x=_.sibling,x!==null){x.return=_.return,_=x;break}_=_.return}x=_}tn(l,a,y.children,h),a=a.child}return a;case 9:return y=a.type,m=a.pendingProps.children,Lr(a,h),y=Dn(y),m=m(y),a.flags|=1,tn(l,a,m,h),a.child;case 14:return m=a.type,y=Gn(m,a.pendingProps),y=Gn(m.type,y),DO(l,a,m,y,h);case 15:return IO(l,a,a.type,a.pendingProps,h);case 17:return m=a.type,y=a.pendingProps,y=a.elementType===m?y:Gn(m,y),Ja(l,a),a.tag=1,fn(m)?(l=!0,Ma(a)):l=!1,Lr(a,h),PO(a,m,y),ch(a,m,y,h),fh(null,a,m,!0,l,h);case 19:return WO(l,a,h);case 22:return LO(l,a,h)}throw Error(t(156,a.tag))};function gy(l,a){return qm(l,a)}function __(l,a,h,m){this.tag=l,this.key=h,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=a,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=m,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Zn(l,a,h,m){return new __(l,a,h,m)}function Eh(l){return l=l.prototype,!(!l||!l.isReactComponent)}function $_(l){if(typeof l=="function")return Eh(l)?1:0;if(l!=null){if(l=l.$$typeof,l===R)return 11;if(l===te)return 14}return 2}function mi(l,a){var h=l.alternate;return h===null?(h=Zn(l.tag,a,l.key,l.mode),h.elementType=l.elementType,h.type=l.type,h.stateNode=l.stateNode,h.alternate=l,l.alternate=h):(h.pendingProps=a,h.type=l.type,h.flags=0,h.subtreeFlags=0,h.deletions=null),h.flags=l.flags&14680064,h.childLanes=l.childLanes,h.lanes=l.lanes,h.child=l.child,h.memoizedProps=l.memoizedProps,h.memoizedState=l.memoizedState,h.updateQueue=l.updateQueue,a=l.dependencies,h.dependencies=a===null?null:{lanes:a.lanes,firstContext:a.firstContext},h.sibling=l.sibling,h.index=l.index,h.ref=l.ref,h}function uc(l,a,h,m,y,x){var _=2;if(m=l,typeof l=="function")Eh(l)&&(_=1);else if(typeof l=="string")_=5;else e:switch(l){case A:return Wi(h.children,y,x,a);case X:_=8,y|=8;break;case F:return l=Zn(12,h,a,y|2),l.elementType=F,l.lanes=x,l;case V:return l=Zn(13,h,a,y),l.elementType=V,l.lanes=x,l;case U:return l=Zn(19,h,a,y),l.elementType=U,l.lanes=x,l;case ce:return dc(h,y,x,a);default:if(typeof l=="object"&&l!==null)switch(l.$$typeof){case H:_=10;break e;case J:_=9;break e;case R:_=11;break e;case te:_=14;break e;case pe:_=16,m=null;break e}throw Error(t(130,l==null?l:typeof l,""))}return a=Zn(_,h,a,y),a.elementType=l,a.type=m,a.lanes=x,a}function Wi(l,a,h,m){return l=Zn(7,l,m,a),l.lanes=h,l}function dc(l,a,h,m){return l=Zn(22,l,m,a),l.elementType=ce,l.lanes=h,l.stateNode={isHidden:!1},l}function Ah(l,a,h){return l=Zn(6,l,null,a),l.lanes=h,l}function Mh(l,a,h){return a=Zn(4,l.children!==null?l.children:[],l.key,a),a.lanes=h,a.stateNode={containerInfo:l.containerInfo,pendingChildren:null,implementation:l.implementation},a}function C_(l,a,h,m,y){this.tag=a,this.containerInfo=l,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ad(0),this.expirationTimes=ad(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ad(0),this.identifierPrefix=m,this.onRecoverableError=y,this.mutableSourceEagerHydrationData=null}function Rh(l,a,h,m,y,x,_,E,D){return l=new C_(l,a,h,E,D),a===1?(a=1,x===!0&&(a|=8)):a=0,x=Zn(3,null,null,a),l.current=x,x.stateNode=l,x.memoizedState={element:m,isDehydrated:h,cache:null,transitions:null,pendingSuspenseBoundaries:null},qd(x),l}function T_(l,a,h){var m=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:N,key:m==null?null:""+m,children:l,containerInfo:a,implementation:h}}function Oy(l){if(!l)return li;l=l._reactInternals;e:{if(Ai(l)!==l||l.tag!==1)throw Error(t(170));var a=l;do{switch(a.tag){case 3:a=a.stateNode.context;break e;case 1:if(fn(a.type)){a=a.stateNode.__reactInternalMemoizedMergedChildContext;break e}}a=a.return}while(a!==null);throw Error(t(171))}if(l.tag===1){var h=l.type;if(fn(h))return Vg(l,h,a)}return a}function yy(l,a,h,m,y,x,_,E,D){return l=Rh(h,m,!0,l,y,x,_,E,D),l.context=Oy(null),h=l.current,m=nn(),y=fi(h),x=Is(m,y),x.callback=a??null,ci(h,x,y),l.current.lanes=y,_l(l,y,m),gn(l,m),l}function hc(l,a,h,m){var y=a.current,x=nn(),_=fi(y);return h=Oy(h),a.context===null?a.context=h:a.pendingContext=h,a=Is(x,_),a.payload={element:l},m=m===void 0?null:m,m!==null&&(a.callback=m),l=ci(y,a,_),l!==null&&(Jn(l,y,_,x),Ba(l,y,_)),_}function fc(l){if(l=l.current,!l.child)return null;switch(l.child.tag){case 5:return l.child.stateNode;default:return l.child.stateNode}}function vy(l,a){if(l=l.memoizedState,l!==null&&l.dehydrated!==null){var h=l.retryLane;l.retryLane=h!==0&&h<a?h:a}}function Dh(l,a){vy(l,a),(l=l.alternate)&&vy(l,a)}function P_(){return null}var xy=typeof reportError=="function"?reportError:function(l){console.error(l)};function Ih(l){this._internalRoot=l}pc.prototype.render=Ih.prototype.render=function(l){var a=this._internalRoot;if(a===null)throw Error(t(409));hc(l,a,null,null)},pc.prototype.unmount=Ih.prototype.unmount=function(){var l=this._internalRoot;if(l!==null){this._internalRoot=null;var a=l.containerInfo;Bi(function(){hc(null,l,null,null)}),a[Es]=null}};function pc(l){this._internalRoot=l}pc.prototype.unstable_scheduleHydration=function(l){if(l){var a=sg();l={blockedOn:null,target:l,priority:a};for(var h=0;h<ti.length&&a!==0&&a<ti[h].priority;h++);ti.splice(h,0,l),h===0&&lg(l)}};function Lh(l){return!(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11)}function mc(l){return!(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11&&(l.nodeType!==8||l.nodeValue!==" react-mount-point-unstable "))}function wy(){}function j_(l,a,h,m,y){if(y){if(typeof m=="function"){var x=m;m=function(){var K=fc(_);x.call(K)}}var _=yy(a,m,l,0,null,!1,!1,"",wy);return l._reactRootContainer=_,l[Es]=_.current,Ll(l.nodeType===8?l.parentNode:l),Bi(),_}for(;y=l.lastChild;)l.removeChild(y);if(typeof m=="function"){var E=m;m=function(){var K=fc(D);E.call(K)}}var D=Rh(l,0,!1,null,null,!1,!1,"",wy);return l._reactRootContainer=D,l[Es]=D.current,Ll(l.nodeType===8?l.parentNode:l),Bi(function(){hc(a,D,h,m)}),D}function gc(l,a,h,m,y){var x=h._reactRootContainer;if(x){var _=x;if(typeof y=="function"){var E=y;y=function(){var D=fc(_);E.call(D)}}hc(a,_,l,y)}else _=j_(h,a,l,y,m);return fc(_)}tg=function(l){switch(l.tag){case 3:var a=l.stateNode;if(a.current.memoizedState.isDehydrated){var h=bl(a.pendingLanes);h!==0&&(cd(a,h|1),gn(a,Ot()),(We&6)===0&&(Xr=Ot()+500,oi()))}break;case 13:Bi(function(){var m=Ds(l,1);if(m!==null){var y=nn();Jn(m,l,1,y)}}),Dh(l,1)}},ud=function(l){if(l.tag===13){var a=Ds(l,134217728);if(a!==null){var h=nn();Jn(a,l,134217728,h)}Dh(l,134217728)}},ng=function(l){if(l.tag===13){var a=fi(l),h=Ds(l,a);if(h!==null){var m=nn();Jn(h,l,a,m)}Dh(l,a)}},sg=function(){return Je},ig=function(l,a){var h=Je;try{return Je=l,a()}finally{Je=h}},nd=function(l,a,h){switch(a){case"input":if(vl(l,h),a=h.name,h.type==="radio"&&a!=null){for(h=l;h.parentNode;)h=h.parentNode;for(h=h.querySelectorAll("input[name="+JSON.stringify(""+a)+'][type="radio"]'),a=0;a<h.length;a++){var m=h[a];if(m!==l&&m.form===l.form){var y=Ea(m);if(!y)throw Error(t(90));Xe(m),vl(m,y)}}}break;case"textarea":ge(l,h);break;case"select":a=h.value,a!=null&&q(l,!!h.multiple,a,!1)}},Fm=jh,Bm=Bi;var Q_={usingClientEntryPoint:!1,Events:[Fl,Qr,Ea,Zm,zm,jh]},no={findFiberByHostInstance:Mi,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},N_={bundleType:no.bundleType,version:no.version,rendererPackageName:no.rendererPackageName,rendererConfig:no.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:T.ReactCurrentDispatcher,findHostInstanceByFiber:function(l){return l=Um(l),l===null?null:l.stateNode},findFiberByHostInstance:no.findFiberByHostInstance||P_,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Oc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Oc.isDisabled&&Oc.supportsFiber)try{pa=Oc.inject(N_),ds=Oc}catch{}}return On.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Q_,On.createPortal=function(l,a){var h=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Lh(a))throw Error(t(200));return T_(l,a,null,h)},On.createRoot=function(l,a){if(!Lh(l))throw Error(t(299));var h=!1,m="",y=xy;return a!=null&&(a.unstable_strictMode===!0&&(h=!0),a.identifierPrefix!==void 0&&(m=a.identifierPrefix),a.onRecoverableError!==void 0&&(y=a.onRecoverableError)),a=Rh(l,1,!1,null,null,h,!1,m,y),l[Es]=a.current,Ll(l.nodeType===8?l.parentNode:l),new Ih(a)},On.findDOMNode=function(l){if(l==null)return null;if(l.nodeType===1)return l;var a=l._reactInternals;if(a===void 0)throw typeof l.render=="function"?Error(t(188)):(l=Object.keys(l).join(","),Error(t(268,l)));return l=Um(a),l=l===null?null:l.stateNode,l},On.flushSync=function(l){return Bi(l)},On.hydrate=function(l,a,h){if(!mc(a))throw Error(t(200));return gc(null,l,a,!0,h)},On.hydrateRoot=function(l,a,h){if(!Lh(l))throw Error(t(405));var m=h!=null&&h.hydratedSources||null,y=!1,x="",_=xy;if(h!=null&&(h.unstable_strictMode===!0&&(y=!0),h.identifierPrefix!==void 0&&(x=h.identifierPrefix),h.onRecoverableError!==void 0&&(_=h.onRecoverableError)),a=yy(a,null,l,1,h??null,y,!1,x,_),l[Es]=a.current,Ll(l),m)for(l=0;l<m.length;l++)h=m[l],y=h._getVersion,y=y(h._source),a.mutableSourceEagerHydrationData==null?a.mutableSourceEagerHydrationData=[h,y]:a.mutableSourceEagerHydrationData.push(h,y);return new pc(a)},On.render=function(l,a,h){if(!mc(a))throw Error(t(200));return gc(null,l,a,!1,h)},On.unmountComponentAtNode=function(l){if(!mc(l))throw Error(t(40));return l._reactRootContainer?(Bi(function(){gc(null,null,l,!1,function(){l._reactRootContainer=null,l[Es]=null})}),!0):!1},On.unstable_batchedUpdates=jh,On.unstable_renderSubtreeIntoContainer=function(l,a,h,m){if(!mc(h))throw Error(t(200));if(l==null||l._reactInternals===void 0)throw Error(t(38));return gc(l,a,h,!1,m)},On.version="18.3.1-next-f1338f8080-20240426",On}var Ty;function T0(){if(Ty)return zh.exports;Ty=1;function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}return n(),zh.exports=D_(),zh.exports}var Py;function I_(){if(Py)return yc;Py=1;var n=T0();return yc.createRoot=n.createRoot,yc.hydrateRoot=n.hydrateRoot,yc}var jy=I_(),Xh={exports:{}},so={};var Qy;function L_(){if(Qy)return so;Qy=1;var n=Eo(),e=Symbol.for("react.element"),t=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,i=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,r={key:!0,ref:!0,__self:!0,__source:!0};function o(c,u,f){var p,g={},O=null,v=null;f!==void 0&&(O=""+f),u.key!==void 0&&(O=""+u.key),u.ref!==void 0&&(v=u.ref);for(p in u)s.call(u,p)&&!r.hasOwnProperty(p)&&(g[p]=u[p]);if(c&&c.defaultProps)for(p in u=c.defaultProps,u)g[p]===void 0&&(g[p]=u[p]);return{$$typeof:e,type:c,key:O,ref:v,props:g,_owner:i.current}}return so.Fragment=t,so.jsx=o,so.jsxs=o,so}var Ny;function Z_(){return Ny||(Ny=1,Xh.exports=L_()),Xh.exports}var d=Z_();const z_=({mode:n,nodes:e=[],sections:t=[],onNodeClick:s,onSectionClick:i,onToggleExpansion:r,searchTerm:o="",className:c=""})=>{const[u,f]=B.useState(null),p=B.useRef(null);B.useEffect(()=>{const v=S=>{!u||!p.current?.contains(document.activeElement)||(n==="tree"?w(S):k(S))},w=S=>{const $=B_(e),b=$.findIndex(C=>C.id===u);switch(S.key){case"ArrowDown":S.preventDefault(),b<$.length-1&&f($[b+1].id);break;case"ArrowUp":S.preventDefault(),b>0&&f($[b-1].id);break;case"ArrowRight":S.preventDefault();const C=$[b];C.type==="folder"&&!C.isExpanded&&C.children.length>0&&r?.(C.id,!0);break;case"ArrowLeft":S.preventDefault();const T=$[b];T.type==="folder"&&T.isExpanded&&r?.(T.id,!1);break;case"Enter":case" ":S.preventDefault();const P=$[b];P.type==="folder"?r?.(P.id):s&&s(P);break}},k=S=>{const $=["home",...t.map(C=>C.id)],b=$.findIndex(C=>C===u);switch(S.key){case"ArrowDown":S.preventDefault(),b<$.length-1&&f($[b+1]);break;case"ArrowUp":S.preventDefault(),b>0&&f($[b-1]);break;case"Enter":case" ":S.preventDefault(),u&&i&&i(u==="home"?"top":u);break}};return document.addEventListener("keydown",v),()=>document.removeEventListener("keydown",v)},[u,e,t,n,r,s,i]);const g=()=>{const v=(w,k=0)=>{const S=w.children.length>0,$=w.type==="folder",b=u===w.id,C=P=>{P.stopPropagation(),f(w.id),$?r?.(w.id):s&&s(w)},T=P=>{P.stopPropagation(),r?.(w.id)};return d.jsxs("div",{className:"nav-node-container",children:[d.jsxs("div",{className:`nav-node ${b?"nav-node--focused":""} ${$?"":"nav-node--leaf"}`,style:{paddingLeft:`${k*10+8}px`},onClick:C,tabIndex:0,role:"treeitem","aria-expanded":$?w.isExpanded:void 0,"aria-level":k+1,onFocus:()=>f(w.id),children:[$&&S&&d.jsx("button",{className:`nav-expander ${w.isExpanded?"nav-expander--expanded":""}`,onClick:T,"aria-label":w.isExpanded?"Collapse":"Expand",children:d.jsx("span",{className:"nav-expander-icon",children:"▶"})}),(!$||!S)&&d.jsx("span",{className:"nav-expander nav-expander--placeholder"}),d.jsx("span",{className:"nav-node-icon",children:w.icon}),d.jsxs("span",{className:"nav-node-label",children:[F_(w.label,o),w.element?.tags?.includes("globals.tags.system")&&d.jsx("span",{className:"system-label",children:"SYS"})]}),w.count!==void 0&&d.jsx("span",{className:"nav-node-count",children:w.count})]}),$&&w.isExpanded&&S&&d.jsx("div",{className:"nav-children",role:"group",children:w.children.map(P=>v(P,k+1))})]},w.id)};return d.jsx("div",{className:"nav-tree-container",role:"tree","aria-label":"Documentation tree",children:e.map(w=>v(w))})},O=()=>{const v=(w,k)=>{k.preventDefault(),k.stopPropagation(),f(w),i&&i(w==="home"?"top":w)};return d.jsxs("ul",{className:"nav-list",role:"list",children:[d.jsx("li",{children:d.jsx("a",{href:"#top",className:`nav-link nav-link--home ${u==="home"?"nav-link--focused":""}`,onClick:w=>v("home",w),onFocus:()=>f("home"),tabIndex:0,role:"listitem",children:d.jsxs("div",{className:"nav-content",children:[d.jsx("span",{className:"icon",children:"🏠"}),d.jsx("span",{className:"text",children:"Home"})]})})}),t.map(w=>d.jsx("li",{children:d.jsxs("a",{href:`#${w.id}`,className:`nav-link ${u===w.id?"nav-link--focused":""}`,onClick:k=>v(w.id,k),onFocus:()=>f(w.id),tabIndex:0,role:"listitem",children:[d.jsxs("div",{className:"nav-content",children:[d.jsx("span",{className:"icon",children:w.icon}),d.jsx("span",{className:"text",children:w.label})]}),w.count!==null&&d.jsx("span",{className:"nav-badge",children:w.count})]})},w.id))]})};return d.jsx("div",{ref:p,className:`navigation-view navigation-view--${n} ${c}`,role:n==="tree"?"tree":"navigation",children:n==="tree"?g():O()})};function F_(n,e){if(!e.trim())return n;const t=e.toLowerCase(),i=n.toLowerCase().indexOf(t);return i===-1?n:d.jsxs(d.Fragment,{children:[n.substring(0,i),d.jsx("mark",{className:"nav-search-highlight",children:n.substring(i,i+t.length)}),n.substring(i+t.length)]})}function B_(n){const e=[],t=s=>{for(const i of s)e.push(i),i.isExpanded&&i.children.length>0&&t(i.children)};return t(n),e}const P0=({icon:n,title:e,description:t,status:s,actions:i,className:r=""})=>d.jsxs("div",{className:`sidebar-header ${r}`,children:[d.jsxs("div",{className:"sidebar-header__content",children:[d.jsxs("div",{className:"sidebar-header__title-section",children:[d.jsx("h2",{className:"sidebar-header__title",children:e}),s&&d.jsx("div",{className:"sidebar-header__status",children:s})]}),i&&d.jsx("div",{className:"sidebar-header__actions",children:i})]}),t&&d.jsx("p",{className:"sidebar-header__description",children:t})]}),X_=({content:n,children:e,position:t="top",delay:s=300,className:i=""})=>{const[r,o]=B.useState(!1),[c,u]=B.useState({x:0,y:0}),f=B.useRef(null),p=B.useRef(null),g=B.useRef(null),O=()=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{if(g.current){const w=g.current.getBoundingClientRect();u({x:w.left+w.width/2,y:w.top}),o(!0)}},s)},v=()=>{f.current&&clearTimeout(f.current),o(!1)};return B.useEffect(()=>()=>{f.current&&clearTimeout(f.current)},[]),B.useEffect(()=>{if(r&&p.current&&g.current){const w=g.current.getBoundingClientRect(),k=p.current.getBoundingClientRect();let S=c.x,$=c.y;switch(t){case"top":S=c.x-k.width/2,$=w.top-k.height-8;break;case"bottom":S=c.x-k.width/2,$=w.bottom+8;break;case"left":S=w.left-k.width-8,$=c.y-k.height/2;break;case"right":S=w.right+8,$=c.y-k.height/2;break}const b=8;S=Math.max(b,Math.min(S,window.innerWidth-k.width-b)),$=Math.max(b,Math.min($,window.innerHeight-k.height-b)),p.current.style.left=`${S}px`,p.current.style.top=`${$}px`}},[r,c,t]),d.jsxs(d.Fragment,{children:[d.jsx("span",{ref:g,className:`docs-tooltip-trigger ${i}`,onMouseEnter:O,onMouseLeave:v,onFocus:O,onBlur:v,children:e}),r&&d.jsx("div",{ref:p,className:`docs-tooltip docs-tooltip--${t}`,role:"tooltip",children:n})]})},V_=({sidebarWidth:n,sidebarRef:e,isChatOpen:t,onToggleChat:s,leftOffset:i=0,isDarkMode:r=!0,onToggleDarkMode:o,viewMode:c,treeType:u,localNamespaceSearch:f,showSystem:p,treeNodes:g,sections:O,totalComponents:v,onViewModeChange:w,onTreeTypeChange:k,onNamespaceSearchChange:S,onShowSystemChange:$,onTreeNodeClick:b,onToggleExpansion:C,onSectionClick:T})=>d.jsxs("nav",{ref:e,className:"docs-sidebar",style:{width:`${n}px`,left:`${i}px`},children:[d.jsx(P0,{icon:"📚",title:"Runner Dev",className:"sidebar-header--docs",actions:d.jsx("div",{style:{display:"flex",gap:"8px"},children:d.jsx("button",{className:`sidebar-header__action-btn ${t?"active":""}`,title:t?"Hide Chat":"Show Chat",onClick:s,children:"AI"})})}),d.jsx("div",{className:"docs-main-filters",children:d.jsxs("div",{className:"docs-namespace-input",children:[d.jsxs("label",{htmlFor:"namespace-input",children:[d.jsx("span",{className:"docs-label-text",children:"Filter by ID"}),d.jsx(X_,{content:d.jsxs("div",{children:[d.jsx("div",{className:"tooltip-title",children:"Search Syntax"}),d.jsxs("ul",{className:"tooltip-content",children:[d.jsxs("li",{children:[d.jsx("span",{className:"keyword",children:"Comma for AND:"})," ",d.jsx("span",{className:"example",children:"task,resource"})," (items with both task AND resource)"]}),d.jsxs("li",{children:[d.jsx("span",{className:"keyword",children:"Pipe for OR:"})," ",d.jsx("span",{className:"example",children:"task|resource"})," (items with task OR resource)"]}),d.jsxs("li",{children:[d.jsx("span",{className:"keyword",children:"Exclude with !:"})," ",d.jsx("span",{className:"example",children:"api,!test"})," (items with api but NOT test)"]}),d.jsxs("li",{children:[d.jsx("span",{className:"keyword",children:"Tags search:"})," ",d.jsx("span",{className:"example",children:":api,debug"})," (search tags for api AND debug)"]})]})]}),position:"right",delay:200,children:d.jsx("span",{className:"docs-filter-help",children:"?"})})]}),d.jsx("input",{id:"namespace-input",type:"text",placeholder:"Filter by ID...",value:f,onChange:P=>S(P.target.value),onKeyDown:P=>P.stopPropagation(),autoComplete:"off",autoCorrect:"off",spellCheck:!1})]})}),d.jsx("div",{className:"docs-system-toggle-container",title:"Toggle visibility of system-tagged elements",children:d.jsxs("label",{className:"docs-switch",htmlFor:"show-system-toggle",children:[d.jsx("input",{id:"show-system-toggle",className:"docs-switch-input",type:"checkbox",checked:p,onChange:P=>$(P.target.checked)}),d.jsx("span",{className:"docs-switch-track",children:d.jsx("span",{className:"docs-switch-thumb"})}),d.jsx("span",{className:"docs-switch-text",children:d.jsx("span",{className:"system-label",children:"SYSTEM"})})]})}),d.jsxs("div",{className:"docs-view-controls",children:[d.jsxs("div",{className:"docs-view-toggle",children:[d.jsxs("button",{className:`docs-view-button ${c==="list"?"active":""}`,onClick:()=>w("list"),title:"List View",children:[d.jsx("span",{className:"icon",children:"📄"}),d.jsx("span",{className:"label",children:"List"})]}),d.jsxs("button",{className:`docs-view-button ${c==="tree"?"active":""}`,onClick:()=>w("tree"),title:"Tree View",children:[d.jsx("span",{className:"icon",children:"🌳"}),d.jsx("span",{className:"label",children:"Tree"})]})]}),c==="tree"&&d.jsxs("div",{className:"docs-view-toggle",children:[d.jsxs("button",{className:`docs-view-button ${u==="namespace"?"active":""}`,onClick:()=>k("namespace"),title:"By Namespace",children:[d.jsx("span",{className:"icon",children:"📁"}),d.jsx("span",{className:"label",children:"Namespace"})]}),d.jsxs("button",{className:`docs-view-button ${u==="type"?"active":""}`,onClick:()=>k("type"),title:"By Type",children:[d.jsx("span",{className:"icon",children:"🏷️"}),d.jsx("span",{className:"label",children:"Type"})]})]})]}),d.jsx("div",{className:"docs-nav-container",children:d.jsx(z_,{mode:c,nodes:g,sections:O,onNodeClick:b,onSectionClick:T,onToggleExpansion:C,searchTerm:f,className:"docs-navigation"})}),d.jsxs("div",{className:"docs-nav-stats",children:[d.jsx("div",{className:"label",children:"Quick Stats"}),d.jsx("div",{className:"value",children:v}),d.jsx("div",{className:"description",children:"Total Components"})]}),d.jsxs("div",{className:"docs-support-section",children:[d.jsx("div",{className:"docs-support-title",children:"Help & Support"}),d.jsxs("a",{href:"https://github.com/bluelibs/runner/issues/new",target:"_blank",rel:"noopener noreferrer",className:"docs-support-link docs-support-link--issue",children:[d.jsx("span",{className:"docs-support-icon",children:"🐛"}),d.jsx("span",{className:"docs-support-text",children:"Submit an Issue"}),d.jsx("span",{className:"docs-support-arrow",children:"→"})]}),d.jsxs("a",{href:"mailto:theodor@bluelibs.com",className:"docs-support-link docs-support-link--contact",children:[d.jsx("span",{className:"docs-support-icon",children:"💬"}),d.jsx("span",{className:"docs-support-text",children:"Contact Creator"}),d.jsx("span",{className:"docs-support-arrow",children:"→"})]})]})]}),W_=n=>{if(!n)return"No schema defined";try{const e=JSON.parse(n);return JSON.stringify(e,null,2)}catch{return n}},U_=n=>{if(!n)return"No configuration";try{const e=JSON.parse(n);return JSON.stringify(e,null,2)}catch{return n}},cn=n=>{if(!n)return"Unknown location";const e=["workspace","node_modules","home"],t=n.indexOf(":"),s=r=>r.split(/[\\/]+/).filter(Boolean);if(t>0){const r=n.slice(0,t),o=n.slice(t+1);if(e.includes(r)){const c=s(o);if(r==="node_modules"&&c[0]?.startsWith("@"))return c.length<=4?`${r}:${c.join("/")}`:`${r}:/.../${c.slice(-3).join("/")}`;{if(c.length>3)return`${r}:/.../${c.slice(-3).join("/")}`;const u=c.join("/");return`${r}:${u||"."}`}}}const i=s(n);return i.length>3?".../"+i.slice(-3).join("/"):i.join("/")},Y_=n=>{switch(n.toLowerCase()){case"error":return"❌";case"warning":return"⚠️";case"info":return"ℹ️";default:return"📝"}},we=n=>n.replace(/\./g," › "),q_=n=>!n||n.length===0?"None":n.length===1?n[0]:n.length<=3?n.join(", "):`${n.slice(0,3).join(", ")} and ${n.length-3} more`;var iu=T0();function Pf(){return Pf=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var s in t)({}).hasOwnProperty.call(t,s)&&(n[s]=t[s])}return n},Pf.apply(null,arguments)}function G_(n,e){if(n==null)return{};var t={};for(var s in n)if({}.hasOwnProperty.call(n,s)){if(e.indexOf(s)!==-1)continue;t[s]=n[s]}return t}let jf=[],j0=[];(()=>{let n="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,t=0;e<n.length;e++)(e%2?j0:jf).push(t=t+n[e])})();function H_(n){if(n<768)return!1;for(let e=0,t=jf.length;;){let s=e+t>>1;if(n<jf[s])t=s;else if(n>=j0[s])e=s+1;else return!0;if(e==t)return!1}}function Ey(n){return n>=127462&&n<=127487}const Ay=8205;function K_(n,e,t=!0,s=!0){return(t?Q0:J_)(n,e,s)}function Q0(n,e,t){if(e==n.length)return e;e&&N0(n.charCodeAt(e))&&E0(n.charCodeAt(e-1))&&e--;let s=Vh(n,e);for(e+=My(s);e<n.length;){let i=Vh(n,e);if(s==Ay||i==Ay||t&&H_(i))e+=My(i),s=i;else if(Ey(i)){let r=0,o=e-2;for(;o>=0&&Ey(Vh(n,o));)r++,o-=2;if(r%2==0)break;e+=2}else break}return e}function J_(n,e,t){for(;e>0;){let s=Q0(n,e-2,t);if(s<e)return s;e--}return 0}function Vh(n,e){let t=n.charCodeAt(e);if(!E0(t)||e+1==n.length)return t;let s=n.charCodeAt(e+1);return N0(s)?(t-55296<<10)+(s-56320)+65536:t}function N0(n){return n>=56320&&n<57344}function E0(n){return n>=55296&&n<56320}function My(n){return n<65536?1:2}class Be{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,t,s){[e,t]=ll(this,e,t);let i=[];return this.decompose(0,e,i,2),s.length&&s.decompose(0,s.length,i,3),this.decompose(t,this.length,i,1),ks.from(i,this.length-(t-e)+s.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=ll(this,e,t);let s=[];return this.decompose(e,t,s,0),ks.from(s,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),s=this.length-this.scanIdentical(e,-1),i=new wo(this),r=new wo(e);for(let o=t,c=t;;){if(i.next(o),r.next(o),o=0,i.lineBreak!=r.lineBreak||i.done!=r.done||i.value!=r.value)return!1;if(c+=i.value.length,i.done||c>=s)return!0}}iter(e=1){return new wo(this,e)}iterRange(e,t=this.length){return new A0(this,e,t)}iterLines(e,t){let s;if(e==null)s=this.iter();else{t==null&&(t=this.lines+1);let i=this.line(e).from;s=this.iterRange(i,Math.max(i,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new M0(s)}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]?Be.empty:e.length<=32?new vt(e):ks.from(vt.split(e,[]))}}class vt extends Be{constructor(e,t=e$(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,s,i){for(let r=0;;r++){let o=this.text[r],c=i+o.length;if((t?s:c)>=e)return new t$(i,c,s,o);i=c+1,s++}}decompose(e,t,s,i){let r=e<=0&&t>=this.length?this:new vt(Ry(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(i&1){let o=s.pop(),c=Vc(r.text,o.text.slice(),0,r.length);if(c.length<=32)s.push(new vt(c,o.length+r.length));else{let u=c.length>>1;s.push(new vt(c.slice(0,u)),new vt(c.slice(u)))}}else s.push(r)}replace(e,t,s){if(!(s instanceof vt))return super.replace(e,t,s);[e,t]=ll(this,e,t);let i=Vc(this.text,Vc(s.text,Ry(this.text,0,e)),t),r=this.length+s.length-(t-e);return i.length<=32?new vt(i,r):ks.from(vt.split(i,[]),r)}sliceString(e,t=this.length,s=`
|
|
9
|
+
`){[e,t]=ll(this,e,t);let i="";for(let r=0,o=0;r<=t&&o<this.text.length;o++){let c=this.text[o],u=r+c.length;r>e&&o&&(i+=s),e<u&&t>r&&(i+=c.slice(Math.max(0,e-r),t-r)),r=u+1}return i}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let s=[],i=-1;for(let r of e)s.push(r),i+=r.length+1,s.length==32&&(t.push(new vt(s,i)),s=[],i=-1);return i>-1&&t.push(new vt(s,i)),t}}class ks extends Be{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let s of e)this.lines+=s.lines}lineInner(e,t,s,i){for(let r=0;;r++){let o=this.children[r],c=i+o.length,u=s+o.lines-1;if((t?u:c)>=e)return o.lineInner(e,t,s,i);i=c+1,s=u+1}}decompose(e,t,s,i){for(let r=0,o=0;o<=t&&r<this.children.length;r++){let c=this.children[r],u=o+c.length;if(e<=u&&t>=o){let f=i&((o<=e?1:0)|(u>=t?2:0));o>=e&&u<=t&&!f?s.push(c):c.decompose(e-o,t-o,s,f)}o=u+1}}replace(e,t,s){if([e,t]=ll(this,e,t),s.lines<this.lines)for(let i=0,r=0;i<this.children.length;i++){let o=this.children[i],c=r+o.length;if(e>=r&&t<=c){let u=o.replace(e-r,t-r,s),f=this.lines-o.lines+u.lines;if(u.lines<f>>4&&u.lines>f>>6){let p=this.children.slice();return p[i]=u,new ks(p,this.length-(t-e)+s.length)}return super.replace(r,c,u)}r=c+1}return super.replace(e,t,s)}sliceString(e,t=this.length,s=`
|
|
10
|
+
`){[e,t]=ll(this,e,t);let i="";for(let r=0,o=0;r<this.children.length&&o<=t;r++){let c=this.children[r],u=o+c.length;o>e&&r&&(i+=s),e<u&&t>o&&(i+=c.sliceString(e-o,t-o,s)),o=u+1}return i}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof ks))return 0;let s=0,[i,r,o,c]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;i+=t,r+=t){if(i==o||r==c)return s;let u=this.children[i],f=e.children[r];if(u!=f)return s+u.scanIdentical(f,t);s+=u.length+1}}static from(e,t=e.reduce((s,i)=>s+i.length+1,-1)){let s=0;for(let v of e)s+=v.lines;if(s<32){let v=[];for(let w of e)w.flatten(v);return new vt(v,t)}let i=Math.max(32,s>>5),r=i<<1,o=i>>1,c=[],u=0,f=-1,p=[];function g(v){let w;if(v.lines>r&&v instanceof ks)for(let k of v.children)g(k);else v.lines>o&&(u>o||!u)?(O(),c.push(v)):v instanceof vt&&u&&(w=p[p.length-1])instanceof vt&&v.lines+w.lines<=32?(u+=v.lines,f+=v.length+1,p[p.length-1]=new vt(w.text.concat(v.text),w.length+1+v.length)):(u+v.lines>i&&O(),u+=v.lines,f+=v.length+1,p.push(v))}function O(){u!=0&&(c.push(p.length==1?p[0]:ks.from(p,f)),f=-1,u=p.length=0)}for(let v of e)g(v);return O(),c.length==1?c[0]:new ks(c,t)}}Be.empty=new vt([""],0);function e$(n){let e=-1;for(let t of n)e+=t.length+1;return e}function Vc(n,e,t=0,s=1e9){for(let i=0,r=0,o=!0;r<n.length&&i<=s;r++){let c=n[r],u=i+c.length;u>=t&&(u>s&&(c=c.slice(0,s-i)),i<t&&(c=c.slice(t-i)),o?(e[e.length-1]+=c,o=!1):e.push(c)),i=u+1}return e}function Ry(n,e,t){return Vc(n,[""],e,t)}class wo{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof vt?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let s=this.nodes.length-1,i=this.nodes[s],r=this.offsets[s],o=r>>1,c=i instanceof vt?i.text.length:i.children.length;if(o==(t>0?c:0)){if(s==0)return this.done=!0,this.value="",this;t>0&&this.offsets[s-1]++,this.nodes.pop(),this.offsets.pop()}else if((r&1)==(t>0?0:1)){if(this.offsets[s]+=t,e==0)return this.lineBreak=!0,this.value=`
|
|
11
|
+
`,this;e--}else if(i instanceof vt){let u=i.text[o+(t<0?-1:0)];if(this.offsets[s]+=t,u.length>Math.max(0,e))return this.value=e==0?u:t>0?u.slice(e):u.slice(0,u.length-e),this;e-=u.length}else{let u=i.children[o+(t<0?-1:0)];e>u.length?(e-=u.length,this.offsets[s]+=t):(t<0&&this.offsets[s]--,this.nodes.push(u),this.offsets.push(t>0?1:(u instanceof vt?u.text.length:u.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class A0{constructor(e,t,s){this.value="",this.done=!1,this.cursor=new wo(e,t>s?-1:1),this.pos=t>s?e.length:0,this.from=Math.min(t,s),this.to=Math.max(t,s)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let s=t<0?this.pos-this.from:this.to-this.pos;e>s&&(e=s),s-=e;let{value:i}=this.cursor.next(e);return this.pos+=(i.length+e)*t,this.value=i.length<=s?i:t<0?i.slice(i.length-s):i.slice(0,s),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 M0{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:s,value:i}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):s?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=i,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(Be.prototype[Symbol.iterator]=function(){return this.iter()},wo.prototype[Symbol.iterator]=A0.prototype[Symbol.iterator]=M0.prototype[Symbol.iterator]=function(){return this});class t${constructor(e,t,s,i){this.from=e,this.to=t,this.number=s,this.text=i}get length(){return this.to-this.from}}function ll(n,e,t){return e=Math.max(0,Math.min(n.length,e)),[e,Math.max(e,Math.min(n.length,t))]}function Wt(n,e,t=!0,s=!0){return K_(n,e,t,s)}function n$(n){return n>=56320&&n<57344}function s$(n){return n>=55296&&n<56320}function xn(n,e){let t=n.charCodeAt(e);if(!s$(t)||e+1==n.length)return t;let s=n.charCodeAt(e+1);return n$(s)?(t-55296<<10)+(s-56320)+65536:t}function Lp(n){return n<=65535?String.fromCharCode(n):(n-=65536,String.fromCharCode((n>>10)+55296,(n&1023)+56320))}function Ss(n){return n<65536?1:2}const Qf=/\r\n?|\n/;var Vt=(function(n){return n[n.Simple=0]="Simple",n[n.TrackDel=1]="TrackDel",n[n.TrackBefore=2]="TrackBefore",n[n.TrackAfter=3]="TrackAfter",n})(Vt||(Vt={}));class Ts{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let s=this.sections[t+1];e+=s<0?this.sections[t]:s}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,s=0,i=0;t<this.sections.length;){let r=this.sections[t++],o=this.sections[t++];o<0?(e(s,i,r),i+=r):i+=o,s+=r}}iterChangedRanges(e,t=!1){Nf(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let s=this.sections[t++],i=this.sections[t++];i<0?e.push(s,i):e.push(i,s)}return new Ts(e)}composeDesc(e){return this.empty?e:e.empty?this:R0(this,e)}mapDesc(e,t=!1){return e.empty?this:Ef(this,e,t)}mapPos(e,t=-1,s=Vt.Simple){let i=0,r=0;for(let o=0;o<this.sections.length;){let c=this.sections[o++],u=this.sections[o++],f=i+c;if(u<0){if(f>e)return r+(e-i);r+=c}else{if(s!=Vt.Simple&&f>=e&&(s==Vt.TrackDel&&i<e&&f>e||s==Vt.TrackBefore&&i<e||s==Vt.TrackAfter&&f>e))return null;if(f>e||f==e&&t<0&&!c)return e==i||t<0?r:r+u;r+=u}i=f}if(e>i)throw new RangeError(`Position ${e} is out of range for changeset of length ${i}`);return r}touchesRange(e,t=e){for(let s=0,i=0;s<this.sections.length&&i<=t;){let r=this.sections[s++],o=this.sections[s++],c=i+r;if(o>=0&&i<=t&&c>=e)return i<e&&c>t?"cover":!0;i=c}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let s=this.sections[t++],i=this.sections[t++];e+=(e?" ":"")+s+(i>=0?":"+i:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new Ts(e)}static create(e){return new Ts(e)}}class Pt extends Ts{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return Nf(this,(t,s,i,r,o)=>e=e.replace(i,i+(s-t),o),!1),e}mapDesc(e,t=!1){return Ef(this,e,t,!0)}invert(e){let t=this.sections.slice(),s=[];for(let i=0,r=0;i<t.length;i+=2){let o=t[i],c=t[i+1];if(c>=0){t[i]=c,t[i+1]=o;let u=i>>1;for(;s.length<u;)s.push(Be.empty);s.push(o?e.slice(r,r+o):Be.empty)}r+=o}return new Pt(t,s)}compose(e){return this.empty?e:e.empty?this:R0(this,e,!0)}map(e,t=!1){return e.empty?this:Ef(this,e,t,!0)}iterChanges(e,t=!1){Nf(this,e,t)}get desc(){return Ts.create(this.sections)}filter(e){let t=[],s=[],i=[],r=new Ao(this);e:for(let o=0,c=0;;){let u=o==e.length?1e9:e[o++];for(;c<u||c==u&&r.len==0;){if(r.done)break e;let p=Math.min(r.len,u-c);Ht(i,p,-1);let g=r.ins==-1?-1:r.off==0?r.ins:0;Ht(t,p,g),g>0&&ki(s,t,r.text),r.forward(p),c+=p}let f=e[o++];for(;c<f;){if(r.done)break e;let p=Math.min(r.len,f-c);Ht(t,p,-1),Ht(i,p,r.ins==-1?-1:r.off==0?r.ins:0),r.forward(p),c+=p}}return{changes:new Pt(t,s),filtered:Ts.create(i)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let s=this.sections[t],i=this.sections[t+1];i<0?e.push(s):i==0?e.push([s]):e.push([s].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,s){let i=[],r=[],o=0,c=null;function u(p=!1){if(!p&&!i.length)return;o<t&&Ht(i,t-o,-1);let g=new Pt(i,r);c=c?c.compose(g.map(c)):g,i=[],r=[],o=0}function f(p){if(Array.isArray(p))for(let g of p)f(g);else if(p instanceof Pt){if(p.length!=t)throw new RangeError(`Mismatched change set length (got ${p.length}, expected ${t})`);u(),c=c?c.compose(p.map(c)):p}else{let{from:g,to:O=g,insert:v}=p;if(g>O||g<0||O>t)throw new RangeError(`Invalid change range ${g} to ${O} (in doc of length ${t})`);let w=v?typeof v=="string"?Be.of(v.split(s||Qf)):v:Be.empty,k=w.length;if(g==O&&k==0)return;g<o&&u(),g>o&&Ht(i,g-o,-1),Ht(i,O-g,k),ki(r,i,w),o=O}}return f(e),u(!c),c}static empty(e){return new Pt(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],s=[];for(let i=0;i<e.length;i++){let r=e[i];if(typeof r=="number")t.push(r,-1);else{if(!Array.isArray(r)||typeof r[0]!="number"||r.some((o,c)=>c&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(r.length==1)t.push(r[0],0);else{for(;s.length<i;)s.push(Be.empty);s[i]=Be.of(r.slice(1)),t.push(r[0],s[i].length)}}}return new Pt(t,s)}static createSet(e,t){return new Pt(e,t)}}function Ht(n,e,t,s=!1){if(e==0&&t<=0)return;let i=n.length-2;i>=0&&t<=0&&t==n[i+1]?n[i]+=e:i>=0&&e==0&&n[i]==0?n[i+1]+=t:s?(n[i]+=e,n[i+1]+=t):n.push(e,t)}function ki(n,e,t){if(t.length==0)return;let s=e.length-2>>1;if(s<n.length)n[n.length-1]=n[n.length-1].append(t);else{for(;n.length<s;)n.push(Be.empty);n.push(t)}}function Nf(n,e,t){let s=n.inserted;for(let i=0,r=0,o=0;o<n.sections.length;){let c=n.sections[o++],u=n.sections[o++];if(u<0)i+=c,r+=c;else{let f=i,p=r,g=Be.empty;for(;f+=c,p+=u,u&&s&&(g=g.append(s[o-2>>1])),!(t||o==n.sections.length||n.sections[o+1]<0);)c=n.sections[o++],u=n.sections[o++];e(i,f,r,p,g),i=f,r=p}}}function Ef(n,e,t,s=!1){let i=[],r=s?[]:null,o=new Ao(n),c=new Ao(e);for(let u=-1;;){if(o.done&&c.len||c.done&&o.len)throw new Error("Mismatched change set lengths");if(o.ins==-1&&c.ins==-1){let f=Math.min(o.len,c.len);Ht(i,f,-1),o.forward(f),c.forward(f)}else if(c.ins>=0&&(o.ins<0||u==o.i||o.off==0&&(c.len<o.len||c.len==o.len&&!t))){let f=c.len;for(Ht(i,c.ins,-1);f;){let p=Math.min(o.len,f);o.ins>=0&&u<o.i&&o.len<=p&&(Ht(i,0,o.ins),r&&ki(r,i,o.text),u=o.i),o.forward(p),f-=p}c.next()}else if(o.ins>=0){let f=0,p=o.len;for(;p;)if(c.ins==-1){let g=Math.min(p,c.len);f+=g,p-=g,c.forward(g)}else if(c.ins==0&&c.len<p)p-=c.len,c.next();else break;Ht(i,f,u<o.i?o.ins:0),r&&u<o.i&&ki(r,i,o.text),u=o.i,o.forward(o.len-p)}else{if(o.done&&c.done)return r?Pt.createSet(i,r):Ts.create(i);throw new Error("Mismatched change set lengths")}}}function R0(n,e,t=!1){let s=[],i=t?[]:null,r=new Ao(n),o=new Ao(e);for(let c=!1;;){if(r.done&&o.done)return i?Pt.createSet(s,i):Ts.create(s);if(r.ins==0)Ht(s,r.len,0,c),r.next();else if(o.len==0&&!o.done)Ht(s,0,o.ins,c),i&&ki(i,s,o.text),o.next();else{if(r.done||o.done)throw new Error("Mismatched change set lengths");{let u=Math.min(r.len2,o.len),f=s.length;if(r.ins==-1){let p=o.ins==-1?-1:o.off?0:o.ins;Ht(s,u,p,c),i&&p&&ki(i,s,o.text)}else o.ins==-1?(Ht(s,r.off?0:r.len,u,c),i&&ki(i,s,r.textBit(u))):(Ht(s,r.off?0:r.len,o.off?0:o.ins,c),i&&!o.off&&ki(i,s,o.text));c=(r.ins>u||o.ins>=0&&o.len>u)&&(c||s.length>f),r.forward2(u),o.forward(u)}}}}class Ao{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,t=this.i-2>>1;return t>=e.length?Be.empty:e[t]}textBit(e){let{inserted:t}=this.set,s=this.i-2>>1;return s>=t.length&&!e?Be.empty:t[s].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 Ji{constructor(e,t,s){this.from=e,this.to=t,this.flags=s}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,t=-1){let s,i;return this.empty?s=i=e.mapPos(this.from,t):(s=e.mapPos(this.from,1),i=e.mapPos(this.to,-1)),s==this.from&&i==this.to?this:new Ji(s,i,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return ie.range(e,t);let s=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return ie.range(this.anchor,s)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&(!t||!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 ie.range(e.anchor,e.head)}static create(e,t,s){return new Ji(e,t,s)}}class ie{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:ie.create(this.ranges.map(s=>s.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let s=0;s<this.ranges.length;s++)if(!this.ranges[s].eq(e.ranges[s],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new ie([this.main],0)}addRange(e,t=!0){return ie.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let s=this.ranges.slice();return s[t]=e,ie.create(s,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 ie(e.ranges.map(t=>Ji.fromJSON(t)),e.main)}static single(e,t=e){return new ie([ie.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let s=0,i=0;i<e.length;i++){let r=e[i];if(r.empty?r.from<=s:r.from<s)return ie.normalized(e.slice(),t);s=r.to}return new ie(e,t)}static cursor(e,t=0,s,i){return Ji.create(e,e,(t==0?0:t<0?8:16)|(s==null?7:Math.min(6,s))|(i??16777215)<<6)}static range(e,t,s,i){let r=(s??16777215)<<6|(i==null?7:Math.min(6,i));return t<e?Ji.create(t,e,48|r):Ji.create(e,t,(t>e?8:0)|r)}static normalized(e,t=0){let s=e[t];e.sort((i,r)=>i.from-r.from),t=e.indexOf(s);for(let i=1;i<e.length;i++){let r=e[i],o=e[i-1];if(r.empty?r.from<=o.to:r.from<o.to){let c=o.from,u=Math.max(r.to,o.to);i<=t&&t--,e.splice(--i,2,r.anchor>r.head?ie.range(u,c):ie.range(c,u))}}return new ie(e,t)}}function D0(n,e){for(let t of n.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let Zp=0;class Se{constructor(e,t,s,i,r){this.combine=e,this.compareInput=t,this.compare=s,this.isStatic=i,this.id=Zp++,this.default=e([]),this.extensions=typeof r=="function"?r(this):r}get reader(){return this}static define(e={}){return new Se(e.combine||(t=>t),e.compareInput||((t,s)=>t===s),e.compare||(e.combine?(t,s)=>t===s:zp),!!e.static,e.enables)}of(e){return new Wc([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Wc(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Wc(e,this,2,t)}from(e,t){return t||(t=s=>s),this.compute([e],s=>t(s.field(e)))}}function zp(n,e){return n==e||n.length==e.length&&n.every((t,s)=>t===e[s])}class Wc{constructor(e,t,s,i){this.dependencies=e,this.facet=t,this.type=s,this.value=i,this.id=Zp++}dynamicSlot(e){var t;let s=this.value,i=this.facet.compareInput,r=this.id,o=e[r]>>1,c=this.type==2,u=!1,f=!1,p=[];for(let g of this.dependencies)g=="doc"?u=!0:g=="selection"?f=!0:(((t=e[g.id])!==null&&t!==void 0?t:1)&1)==0&&p.push(e[g.id]);return{create(g){return g.values[o]=s(g),1},update(g,O){if(u&&O.docChanged||f&&(O.docChanged||O.selection)||Af(g,p)){let v=s(g);if(c?!Dy(v,g.values[o],i):!i(v,g.values[o]))return g.values[o]=v,1}return 0},reconfigure:(g,O)=>{let v,w=O.config.address[r];if(w!=null){let k=lu(O,w);if(this.dependencies.every(S=>S instanceof Se?O.facet(S)===g.facet(S):S instanceof Zt?O.field(S,!1)==g.field(S,!1):!0)||(c?Dy(v=s(g),k,i):i(v=s(g),k)))return g.values[o]=k,0}else v=s(g);return g.values[o]=v,1}}}}function Dy(n,e,t){if(n.length!=e.length)return!1;for(let s=0;s<n.length;s++)if(!t(n[s],e[s]))return!1;return!0}function Af(n,e){let t=!1;for(let s of e)ko(n,s)&1&&(t=!0);return t}function i$(n,e,t){let s=t.map(u=>n[u.id]),i=t.map(u=>u.type),r=s.filter(u=>!(u&1)),o=n[e.id]>>1;function c(u){let f=[];for(let p=0;p<s.length;p++){let g=lu(u,s[p]);if(i[p]==2)for(let O of g)f.push(O);else f.push(g)}return e.combine(f)}return{create(u){for(let f of s)ko(u,f);return u.values[o]=c(u),1},update(u,f){if(!Af(u,r))return 0;let p=c(u);return e.compare(p,u.values[o])?0:(u.values[o]=p,1)},reconfigure(u,f){let p=Af(u,s),g=f.config.facets[e.id],O=f.facet(e);if(g&&!p&&zp(t,g))return u.values[o]=O,0;let v=c(u);return e.compare(v,O)?(u.values[o]=O,0):(u.values[o]=v,1)}}}const vc=Se.define({static:!0});class Zt{constructor(e,t,s,i,r){this.id=e,this.createF=t,this.updateF=s,this.compareF=i,this.spec=r,this.provides=void 0}static define(e){let t=new Zt(Zp++,e.create,e.update,e.compare||((s,i)=>s===i),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(vc).find(s=>s.field==this);return(t?.create||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:s=>(s.values[t]=this.create(s),1),update:(s,i)=>{let r=s.values[t],o=this.updateF(r,i);return this.compareF(r,o)?0:(s.values[t]=o,1)},reconfigure:(s,i)=>{let r=s.facet(vc),o=i.facet(vc),c;return(c=r.find(u=>u.field==this))&&c!=o.find(u=>u.field==this)?(s.values[t]=c.create(s),1):i.config.address[this.id]!=null?(s.values[t]=i.field(this),0):(s.values[t]=this.create(s),1)}}}init(e){return[this,vc.of({field:this,create:e})]}get extension(){return this}}const Hi={lowest:4,low:3,default:2,high:1,highest:0};function io(n){return e=>new I0(e,n)}const Ni={highest:io(Hi.highest),high:io(Hi.high),default:io(Hi.default),low:io(Hi.low),lowest:io(Hi.lowest)};class I0{constructor(e,t){this.inner=e,this.prec=t}}class Du{of(e){return new Mf(this,e)}reconfigure(e){return Du.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Mf{constructor(e,t){this.compartment=e,this.inner=t}}class ru{constructor(e,t,s,i,r,o){for(this.base=e,this.compartments=t,this.dynamicSlots=s,this.address=i,this.staticValues=r,this.facets=o,this.statusTemplate=[];this.statusTemplate.length<s.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return t==null?e.default:this.staticValues[t>>1]}static resolve(e,t,s){let i=[],r=Object.create(null),o=new Map;for(let O of r$(e,t,o))O instanceof Zt?i.push(O):(r[O.facet.id]||(r[O.facet.id]=[])).push(O);let c=Object.create(null),u=[],f=[];for(let O of i)c[O.id]=f.length<<1,f.push(v=>O.slot(v));let p=s?.config.facets;for(let O in r){let v=r[O],w=v[0].facet,k=p&&p[O]||[];if(v.every(S=>S.type==0))if(c[w.id]=u.length<<1|1,zp(k,v))u.push(s.facet(w));else{let S=w.combine(v.map($=>$.value));u.push(s&&w.compare(S,s.facet(w))?s.facet(w):S)}else{for(let S of v)S.type==0?(c[S.id]=u.length<<1|1,u.push(S.value)):(c[S.id]=f.length<<1,f.push($=>S.dynamicSlot($)));c[w.id]=f.length<<1,f.push(S=>i$(S,w,v))}}let g=f.map(O=>O(c));return new ru(e,o,g,c,u,r)}}function r$(n,e,t){let s=[[],[],[],[],[]],i=new Map;function r(o,c){let u=i.get(o);if(u!=null){if(u<=c)return;let f=s[u].indexOf(o);f>-1&&s[u].splice(f,1),o instanceof Mf&&t.delete(o.compartment)}if(i.set(o,c),Array.isArray(o))for(let f of o)r(f,c);else if(o instanceof Mf){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let f=e.get(o.compartment)||o.inner;t.set(o.compartment,f),r(f,c)}else if(o instanceof I0)r(o.inner,o.prec);else if(o instanceof Zt)s[c].push(o),o.provides&&r(o.provides,c);else if(o instanceof Wc)s[c].push(o),o.facet.extensions&&r(o.facet.extensions,Hi.default);else{let f=o.extension;if(!f)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);r(f,c)}}return r(n,Hi.default),s.reduce((o,c)=>o.concat(c))}function ko(n,e){if(e&1)return 2;let t=e>>1,s=n.status[t];if(s==4)throw new Error("Cyclic dependency between fields and/or facets");if(s&2)return s;n.status[t]=4;let i=n.computeSlot(n,n.config.dynamicSlots[t]);return n.status[t]=2|i}function lu(n,e){return e&1?n.config.staticValues[e>>1]:n.values[e>>1]}const L0=Se.define(),Rf=Se.define({combine:n=>n.some(e=>e),static:!0}),Z0=Se.define({combine:n=>n.length?n[0]:void 0,static:!0}),z0=Se.define(),F0=Se.define(),B0=Se.define(),X0=Se.define({combine:n=>n.length?n[0]:!1});class js{constructor(e,t){this.type=e,this.value=t}static define(){return new l$}}class l${of(e){return new js(this,e)}}class o${constructor(e){this.map=e}of(e){return new Me(this,e)}}class Me{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new Me(this.type,t)}is(e){return this.type==e}static define(e={}){return new o$(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let s=[];for(let i of e){let r=i.map(t);r&&s.push(r)}return s}}Me.reconfigure=Me.define();Me.appendConfig=Me.define();class bt{constructor(e,t,s,i,r,o){this.startState=e,this.changes=t,this.selection=s,this.effects=i,this.annotations=r,this.scrollIntoView=o,this._doc=null,this._state=null,s&&D0(s,t.newLength),r.some(c=>c.type==bt.time)||(this.annotations=r.concat(bt.time.of(Date.now())))}static create(e,t,s,i,r,o){return new bt(e,t,s,i,r,o)}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 t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(bt.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}bt.time=js.define();bt.userEvent=js.define();bt.addToHistory=js.define();bt.remote=js.define();function a$(n,e){let t=[];for(let s=0,i=0;;){let r,o;if(s<n.length&&(i==e.length||e[i]>=n[s]))r=n[s++],o=n[s++];else if(i<e.length)r=e[i++],o=e[i++];else return t;!t.length||t[t.length-1]<r?t.push(r,o):t[t.length-1]<o&&(t[t.length-1]=o)}}function V0(n,e,t){var s;let i,r,o;return t?(i=e.changes,r=Pt.empty(e.changes.length),o=n.changes.compose(e.changes)):(i=e.changes.map(n.changes),r=n.changes.mapDesc(e.changes,!0),o=n.changes.compose(i)),{changes:o,selection:e.selection?e.selection.map(r):(s=n.selection)===null||s===void 0?void 0:s.map(i),effects:Me.mapEffects(n.effects,i).concat(Me.mapEffects(e.effects,r)),annotations:n.annotations.length?n.annotations.concat(e.annotations):e.annotations,scrollIntoView:n.scrollIntoView||e.scrollIntoView}}function Df(n,e,t){let s=e.selection,i=el(e.annotations);return e.userEvent&&(i=i.concat(bt.userEvent.of(e.userEvent))),{changes:e.changes instanceof Pt?e.changes:Pt.of(e.changes||[],t,n.facet(Z0)),selection:s&&(s instanceof ie?s:ie.single(s.anchor,s.head)),effects:el(e.effects),annotations:i,scrollIntoView:!!e.scrollIntoView}}function W0(n,e,t){let s=Df(n,e.length?e[0]:{},n.doc.length);e.length&&e[0].filter===!1&&(t=!1);for(let r=1;r<e.length;r++){e[r].filter===!1&&(t=!1);let o=!!e[r].sequential;s=V0(s,Df(n,e[r],o?s.changes.newLength:n.doc.length),o)}let i=bt.create(n,s.changes,s.selection,s.effects,s.annotations,s.scrollIntoView);return u$(t?c$(i):i)}function c$(n){let e=n.startState,t=!0;for(let i of e.facet(z0)){let r=i(n);if(r===!1){t=!1;break}Array.isArray(r)&&(t=t===!0?r:a$(t,r))}if(t!==!0){let i,r;if(t===!1)r=n.changes.invertedDesc,i=Pt.empty(e.doc.length);else{let o=n.changes.filter(t);i=o.changes,r=o.filtered.mapDesc(o.changes).invertedDesc}n=bt.create(e,i,n.selection&&n.selection.map(r),Me.mapEffects(n.effects,r),n.annotations,n.scrollIntoView)}let s=e.facet(F0);for(let i=s.length-1;i>=0;i--){let r=s[i](n);r instanceof bt?n=r:Array.isArray(r)&&r.length==1&&r[0]instanceof bt?n=r[0]:n=W0(e,el(r),!1)}return n}function u$(n){let e=n.startState,t=e.facet(B0),s=n;for(let i=t.length-1;i>=0;i--){let r=t[i](n);r&&Object.keys(r).length&&(s=V0(s,Df(e,r,n.changes.newLength),!0))}return s==n?n:bt.create(e,n.changes,n.selection,s.effects,s.annotations,s.scrollIntoView)}const d$=[];function el(n){return n==null?d$:Array.isArray(n)?n:[n]}var ut=(function(n){return n[n.Word=0]="Word",n[n.Space=1]="Space",n[n.Other=2]="Other",n})(ut||(ut={}));const h$=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let If;try{If=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function f$(n){if(If)return If.test(n);for(let e=0;e<n.length;e++){let t=n[e];if(/\w/.test(t)||t>""&&(t.toUpperCase()!=t.toLowerCase()||h$.test(t)))return!0}return!1}function p$(n){return e=>{if(!/\S/.test(e))return ut.Space;if(f$(e))return ut.Word;for(let t=0;t<n.length;t++)if(e.indexOf(n[t])>-1)return ut.Word;return ut.Other}}class ze{constructor(e,t,s,i,r,o){this.config=e,this.doc=t,this.selection=s,this.values=i,this.status=e.statusTemplate.slice(),this.computeSlot=r,o&&(o._state=this);for(let c=0;c<this.config.dynamicSlots.length;c++)ko(this,c<<1);this.computeSlot=null}field(e,t=!0){let s=this.config.address[e.id];if(s==null){if(t)throw new RangeError("Field is not present in this state");return}return ko(this,s),lu(this,s)}update(...e){return W0(this,e,!0)}applyTransaction(e){let t=this.config,{base:s,compartments:i}=t;for(let c of e.effects)c.is(Du.reconfigure)?(t&&(i=new Map,t.compartments.forEach((u,f)=>i.set(f,u)),t=null),i.set(c.value.compartment,c.value.extension)):c.is(Me.reconfigure)?(t=null,s=c.value):c.is(Me.appendConfig)&&(t=null,s=el(s).concat(c.value));let r;t?r=e.startState.values.slice():(t=ru.resolve(s,i,this),r=new ze(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(u,f)=>f.reconfigure(u,this),null).values);let o=e.startState.facet(Rf)?e.newSelection:e.newSelection.asSingle();new ze(t,e.newDoc,o,r,(c,u)=>u.update(c,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:ie.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,s=e(t.ranges[0]),i=this.changes(s.changes),r=[s.range],o=el(s.effects);for(let c=1;c<t.ranges.length;c++){let u=e(t.ranges[c]),f=this.changes(u.changes),p=f.map(i);for(let O=0;O<c;O++)r[O]=r[O].map(p);let g=i.mapDesc(f,!0);r.push(u.range.map(g)),i=i.compose(p),o=Me.mapEffects(o,p).concat(Me.mapEffects(el(u.effects),g))}return{changes:i,selection:ie.create(r,t.mainIndex),effects:o}}changes(e=[]){return e instanceof Pt?e:Pt.of(e,this.doc.length,this.facet(ze.lineSeparator))}toText(e){return Be.of(e.split(this.facet(ze.lineSeparator)||Qf))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return t==null?e.default:(ko(this,t),lu(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let s in e){let i=e[s];i instanceof Zt&&this.config.address[i.id]!=null&&(t[s]=i.spec.toJSON(this.field(e[s]),this))}return t}static fromJSON(e,t={},s){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let i=[];if(s){for(let r in s)if(Object.prototype.hasOwnProperty.call(e,r)){let o=s[r],c=e[r];i.push(o.init(u=>o.spec.fromJSON(c,u)))}}return ze.create({doc:e.doc,selection:ie.fromJSON(e.selection),extensions:t.extensions?i.concat([t.extensions]):i})}static create(e={}){let t=ru.resolve(e.extensions||[],new Map),s=e.doc instanceof Be?e.doc:Be.of((e.doc||"").split(t.staticFacet(ze.lineSeparator)||Qf)),i=e.selection?e.selection instanceof ie?e.selection:ie.single(e.selection.anchor,e.selection.head):ie.single(0);return D0(i,s.length),t.staticFacet(Rf)||(i=i.asSingle()),new ze(t,s,i,t.dynamicSlots.map(()=>null),(r,o)=>o.create(r),null)}get tabSize(){return this.facet(ze.tabSize)}get lineBreak(){return this.facet(ze.lineSeparator)||`
|
|
12
|
+
`}get readOnly(){return this.facet(X0)}phrase(e,...t){for(let s of this.facet(ze.phrases))if(Object.prototype.hasOwnProperty.call(s,e)){e=s[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(s,i)=>{if(i=="$")return"$";let r=+(i||1);return!r||r>t.length?s:t[r-1]})),e}languageDataAt(e,t,s=-1){let i=[];for(let r of this.facet(L0))for(let o of r(this,t,s))Object.prototype.hasOwnProperty.call(o,e)&&i.push(o[e]);return i}charCategorizer(e){return p$(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:t,from:s,length:i}=this.doc.lineAt(e),r=this.charCategorizer(e),o=e-s,c=e-s;for(;o>0;){let u=Wt(t,o,!1);if(r(t.slice(u,o))!=ut.Word)break;o=u}for(;c<i;){let u=Wt(t,c);if(r(t.slice(c,u))!=ut.Word)break;c=u}return o==c?null:ie.range(o+s,c+s)}}ze.allowMultipleSelections=Rf;ze.tabSize=Se.define({combine:n=>n.length?n[0]:4});ze.lineSeparator=Z0;ze.readOnly=X0;ze.phrases=Se.define({compare(n,e){let t=Object.keys(n),s=Object.keys(e);return t.length==s.length&&t.every(i=>n[i]==e[i])}});ze.languageData=L0;ze.changeFilter=z0;ze.transactionFilter=F0;ze.transactionExtender=B0;Du.reconfigure=Me.define();function Qs(n,e,t={}){let s={};for(let i of n)for(let r of Object.keys(i)){let o=i[r],c=s[r];if(c===void 0)s[r]=o;else if(!(c===o||o===void 0))if(Object.hasOwnProperty.call(t,r))s[r]=t[r](c,o);else throw new Error("Config merge conflict for field "+r)}for(let i in e)s[i]===void 0&&(s[i]=e[i]);return s}class or{eq(e){return this==e}range(e,t=e){return Lf.create(e,t,this)}}or.prototype.startSide=or.prototype.endSide=0;or.prototype.point=!1;or.prototype.mapMode=Vt.TrackDel;let Lf=class U0{constructor(e,t,s){this.from=e,this.to=t,this.value=s}static create(e,t,s){return new U0(e,t,s)}};function Zf(n,e){return n.from-e.from||n.value.startSide-e.value.startSide}class Fp{constructor(e,t,s,i){this.from=e,this.to=t,this.value=s,this.maxPoint=i}get length(){return this.to[this.to.length-1]}findIndex(e,t,s,i=0){let r=s?this.to:this.from;for(let o=i,c=r.length;;){if(o==c)return o;let u=o+c>>1,f=r[u]-e||(s?this.value[u].endSide:this.value[u].startSide)-t;if(u==o)return f>=0?o:c;f>=0?c=u:o=u+1}}between(e,t,s,i){for(let r=this.findIndex(t,-1e9,!0),o=this.findIndex(s,1e9,!1,r);r<o;r++)if(i(this.from[r]+e,this.to[r]+e,this.value[r])===!1)return!1}map(e,t){let s=[],i=[],r=[],o=-1,c=-1;for(let u=0;u<this.value.length;u++){let f=this.value[u],p=this.from[u]+e,g=this.to[u]+e,O,v;if(p==g){let w=t.mapPos(p,f.startSide,f.mapMode);if(w==null||(O=v=w,f.startSide!=f.endSide&&(v=t.mapPos(p,f.endSide),v<O)))continue}else if(O=t.mapPos(p,f.startSide),v=t.mapPos(g,f.endSide),O>v||O==v&&f.startSide>0&&f.endSide<=0)continue;(v-O||f.endSide-f.startSide)<0||(o<0&&(o=O),f.point&&(c=Math.max(c,v-O)),s.push(f),i.push(O-o),r.push(v-o))}return{mapped:s.length?new Fp(i,r,s,c):null,pos:o}}}class Ue{constructor(e,t,s,i){this.chunkPos=e,this.chunk=t,this.nextLayer=s,this.maxPoint=i}static create(e,t,s,i){return new Ue(e,t,s,i)}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 t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:s=!1,filterFrom:i=0,filterTo:r=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(s&&(t=t.slice().sort(Zf)),this.isEmpty)return t.length?Ue.of(t):this;let c=new Y0(this,null,-1).goto(0),u=0,f=[],p=new Ys;for(;c.value||u<t.length;)if(u<t.length&&(c.from-t[u].from||c.startSide-t[u].value.startSide)>=0){let g=t[u++];p.addInner(g.from,g.to,g.value)||f.push(g)}else c.rangeIndex==1&&c.chunkIndex<this.chunk.length&&(u==t.length||this.chunkEnd(c.chunkIndex)<t[u].from)&&(!o||i>this.chunkEnd(c.chunkIndex)||r<this.chunkPos[c.chunkIndex])&&p.addChunk(this.chunkPos[c.chunkIndex],this.chunk[c.chunkIndex])?c.nextChunk():((!o||i>c.to||r<c.from||o(c.from,c.to,c.value))&&(p.addInner(c.from,c.to,c.value)||f.push(Lf.create(c.from,c.to,c.value))),c.next());return p.finishInner(this.nextLayer.isEmpty&&!f.length?Ue.empty:this.nextLayer.update({add:f,filter:o,filterFrom:i,filterTo:r}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],s=[],i=-1;for(let o=0;o<this.chunk.length;o++){let c=this.chunkPos[o],u=this.chunk[o],f=e.touchesRange(c,c+u.length);if(f===!1)i=Math.max(i,u.maxPoint),t.push(u),s.push(e.mapPos(c));else if(f===!0){let{mapped:p,pos:g}=u.map(c,e);p&&(i=Math.max(i,p.maxPoint),t.push(p),s.push(g))}}let r=this.nextLayer.map(e);return t.length==0?r:new Ue(s,t,r||Ue.empty,i)}between(e,t,s){if(!this.isEmpty){for(let i=0;i<this.chunk.length;i++){let r=this.chunkPos[i],o=this.chunk[i];if(t>=r&&e<=r+o.length&&o.between(r,e-r,t-r,s)===!1)return}this.nextLayer.between(e,t,s)}}iter(e=0){return Mo.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Mo.from(e).goto(t)}static compare(e,t,s,i,r=-1){let o=e.filter(g=>g.maxPoint>0||!g.isEmpty&&g.maxPoint>=r),c=t.filter(g=>g.maxPoint>0||!g.isEmpty&&g.maxPoint>=r),u=Iy(o,c,s),f=new ro(o,u,r),p=new ro(c,u,r);s.iterGaps((g,O,v)=>Ly(f,g,p,O,v,i)),s.empty&&s.length==0&&Ly(f,0,p,0,0,i)}static eq(e,t,s=0,i){i==null&&(i=999999999);let r=e.filter(p=>!p.isEmpty&&t.indexOf(p)<0),o=t.filter(p=>!p.isEmpty&&e.indexOf(p)<0);if(r.length!=o.length)return!1;if(!r.length)return!0;let c=Iy(r,o),u=new ro(r,c,0).goto(s),f=new ro(o,c,0).goto(s);for(;;){if(u.to!=f.to||!zf(u.active,f.active)||u.point&&(!f.point||!u.point.eq(f.point)))return!1;if(u.to>i)return!0;u.next(),f.next()}}static spans(e,t,s,i,r=-1){let o=new ro(e,null,r).goto(t),c=t,u=o.openStart;for(;;){let f=Math.min(o.to,s);if(o.point){let p=o.activeForPoint(o.to),g=o.pointFrom<t?p.length+1:o.point.startSide<0?p.length:Math.min(p.length,u);i.point(c,f,o.point,p,g,o.pointRank),u=Math.min(o.openEnd(f),p.length)}else f>c&&(i.span(c,f,o.active,u),u=o.openEnd(f));if(o.to>s)return u+(o.point&&o.to>s?1:0);c=o.to,o.next()}}static of(e,t=!1){let s=new Ys;for(let i of e instanceof Lf?[e]:t?m$(e):e)s.add(i.from,i.to,i.value);return s.finish()}static join(e){if(!e.length)return Ue.empty;let t=e[e.length-1];for(let s=e.length-2;s>=0;s--)for(let i=e[s];i!=Ue.empty;i=i.nextLayer)t=new Ue(i.chunkPos,i.chunk,t,Math.max(i.maxPoint,t.maxPoint));return t}}Ue.empty=new Ue([],[],null,-1);function m$(n){if(n.length>1)for(let e=n[0],t=1;t<n.length;t++){let s=n[t];if(Zf(e,s)>0)return n.slice().sort(Zf);e=s}return n}Ue.empty.nextLayer=Ue.empty;class Ys{finishChunk(e){this.chunks.push(new Fp(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,t,s){this.addInner(e,t,s)||(this.nextLayer||(this.nextLayer=new Ys)).add(e,t,s)}addInner(e,t,s){let i=e-this.lastTo||s.startSide-this.last.endSide;if(i<=0&&(e-this.lastFrom||s.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return i<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=s,this.lastFrom=e,this.lastTo=t,this.value.push(s),s.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let s=t.value.length-1;return this.last=t.value[s],this.lastFrom=t.from[s]+e,this.lastTo=t.to[s]+e,!0}finish(){return this.finishInner(Ue.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=Ue.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function Iy(n,e,t){let s=new Map;for(let r of n)for(let o=0;o<r.chunk.length;o++)r.chunk[o].maxPoint<=0&&s.set(r.chunk[o],r.chunkPos[o]);let i=new Set;for(let r of e)for(let o=0;o<r.chunk.length;o++){let c=s.get(r.chunk[o]);c!=null&&(t?t.mapPos(c):c)==r.chunkPos[o]&&!t?.touchesRange(c,c+r.chunk[o].length)&&i.add(r.chunk[o])}return i}class Y0{constructor(e,t,s,i=0){this.layer=e,this.skip=t,this.minPoint=s,this.rank=i}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,t=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,t,!1),this}gotoInner(e,t,s){for(;this.chunkIndex<this.layer.chunk.length;){let i=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(i)||this.layer.chunkEnd(this.chunkIndex)<e||i.maxPoint<this.minPoint))break;this.chunkIndex++,s=!1}if(this.chunkIndex<this.layer.chunk.length){let i=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],t,!0);(!s||this.rangeIndex<i)&&this.setRangeIndex(i)}this.next()}forward(e,t){(this.to-e||this.endSide-t)<0&&this.gotoInner(e,t,!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],t=this.layer.chunk[this.chunkIndex],s=e+t.from[this.rangeIndex];if(this.from=s,this.to=e+t.to[this.rangeIndex],this.value=t.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 Mo{constructor(e){this.heap=e}static from(e,t=null,s=-1){let i=[];for(let r=0;r<e.length;r++)for(let o=e[r];!o.isEmpty;o=o.nextLayer)o.maxPoint>=s&&i.push(new Y0(o,t,s,r));return i.length==1?i[0]:new Mo(i)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let s of this.heap)s.goto(e,t);for(let s=this.heap.length>>1;s>=0;s--)Wh(this.heap,s);return this.next(),this}forward(e,t){for(let s of this.heap)s.forward(e,t);for(let s=this.heap.length>>1;s>=0;s--)Wh(this.heap,s);(this.to-e||this.value.endSide-t)<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(),Wh(this.heap,0)}}}function Wh(n,e){for(let t=n[e];;){let s=(e<<1)+1;if(s>=n.length)break;let i=n[s];if(s+1<n.length&&i.compare(n[s+1])>=0&&(i=n[s+1],s++),t.compare(i)<0)break;n[s]=t,n[e]=i,e=s}}class ro{constructor(e,t,s){this.minPoint=s,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=Mo.from(e,t,s)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){xc(this.active,e),xc(this.activeTo,e),xc(this.activeRank,e),this.minActive=Zy(this.active,this.activeTo)}addActive(e){let t=0,{value:s,to:i,rank:r}=this.cursor;for(;t<this.activeRank.length&&(r-this.activeRank[t]||i-this.activeTo[t])>0;)t++;wc(this.active,t,s),wc(this.activeTo,t,i),wc(this.activeRank,t,r),e&&wc(e,t,this.cursor.from),this.minActive=Zy(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let s=this.openStart<0?[]:null;for(;;){let i=this.minActive;if(i>-1&&(this.activeTo[i]-this.cursor.from||this.active[i].endSide-this.cursor.startSide)<0){if(this.activeTo[i]>e){this.to=this.activeTo[i],this.endSide=this.active[i].endSide;break}this.removeActive(i),s&&xc(s,i)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let r=this.cursor.value;if(!r.point)this.addActive(s),this.cursor.next();else if(t&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=r,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=r.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}}else{this.to=this.endSide=1e9;break}}if(s){this.openStart=0;for(let i=s.length-1;i>=0&&s[i]<e;i--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let t=[];for(let s=this.active.length-1;s>=0&&!(this.activeRank[s]<this.pointRank);s--)(this.activeTo[s]>e||this.activeTo[s]==e&&this.active[s].endSide>=this.point.endSide)&&t.push(this.active[s]);return t.reverse()}openEnd(e){let t=0;for(let s=this.activeTo.length-1;s>=0&&this.activeTo[s]>e;s--)t++;return t}}function Ly(n,e,t,s,i,r){n.goto(e),t.goto(s);let o=s+i,c=s,u=s-e;for(;;){let f=n.to+u-t.to,p=f||n.endSide-t.endSide,g=p<0?n.to+u:t.to,O=Math.min(g,o);if(n.point||t.point?n.point&&t.point&&(n.point==t.point||n.point.eq(t.point))&&zf(n.activeForPoint(n.to),t.activeForPoint(t.to))||r.comparePoint(c,O,n.point,t.point):O>c&&!zf(n.active,t.active)&&r.compareRange(c,O,n.active,t.active),g>o)break;(f||n.openEnd!=t.openEnd)&&r.boundChange&&r.boundChange(g),c=g,p<=0&&n.next(),p>=0&&t.next()}}function zf(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(n[t]!=e[t]&&!n[t].eq(e[t]))return!1;return!0}function xc(n,e){for(let t=e,s=n.length-1;t<s;t++)n[t]=n[t+1];n.pop()}function wc(n,e,t){for(let s=n.length-1;s>=e;s--)n[s+1]=n[s];n[e]=t}function Zy(n,e){let t=-1,s=1e9;for(let i=0;i<e.length;i++)(e[i]-s||n[i].endSide-n[t].endSide)<0&&(t=i,s=e[i]);return t}function pl(n,e,t=n.length){let s=0;for(let i=0;i<t&&i<n.length;)n.charCodeAt(i)==9?(s+=e-s%e,i++):(s++,i=Wt(n,i));return s}function Ff(n,e,t,s){for(let i=0,r=0;;){if(r>=e)return i;if(i==n.length)break;r+=n.charCodeAt(i)==9?t-r%t:1,i=Wt(n,i)}return s===!0?-1:n.length}const Bf="ͼ",zy=typeof Symbol>"u"?"__"+Bf:Symbol.for(Bf),Xf=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),Fy=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class Ci{constructor(e,t){this.rules=[];let{finish:s}=t||{};function i(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function r(o,c,u,f){let p=[],g=/^@(\w+)\b/.exec(o[0]),O=g&&g[1]=="keyframes";if(g&&c==null)return u.push(o[0]+";");for(let v in c){let w=c[v];if(/&/.test(v))r(v.split(/,\s*/).map(k=>o.map(S=>k.replace(/&/,S))).reduce((k,S)=>k.concat(S)),w,u);else if(w&&typeof w=="object"){if(!g)throw new RangeError("The value of a property ("+v+") should be a primitive value.");r(i(v),w,p,O)}else w!=null&&p.push(v.replace(/_.*/,"").replace(/[A-Z]/g,k=>"-"+k.toLowerCase())+": "+w+";")}(p.length||O)&&u.push((s&&!g&&!f?o.map(s):o).join(", ")+" {"+p.join(" ")+"}")}for(let o in e)r(i(o),e[o],this.rules)}getRules(){return this.rules.join(`
|
|
13
|
+
`)}static newName(){let e=Fy[zy]||1;return Fy[zy]=e+1,Bf+e.toString(36)}static mount(e,t,s){let i=e[Xf],r=s&&s.nonce;i?r&&i.setNonce(r):i=new g$(e,r),i.mount(Array.isArray(t)?t:[t],e)}}let By=new Map;class g${constructor(e,t){let s=e.ownerDocument||e,i=s.defaultView;if(!e.head&&e.adoptedStyleSheets&&i.CSSStyleSheet){let r=By.get(s);if(r)return e[Xf]=r;this.sheet=new i.CSSStyleSheet,By.set(s,this)}else this.styleTag=s.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[Xf]=this}mount(e,t){let s=this.sheet,i=0,r=0;for(let o=0;o<e.length;o++){let c=e[o],u=this.modules.indexOf(c);if(u<r&&u>-1&&(this.modules.splice(u,1),r--,u=-1),u==-1){if(this.modules.splice(r++,0,c),s)for(let f=0;f<c.rules.length;f++)s.insertRule(c.rules[f],i++)}else{for(;r<u;)i+=this.modules[r++].rules.length;i+=c.rules.length,r++}}if(s)t.adoptedStyleSheets.indexOf(this.sheet)<0&&(t.adoptedStyleSheets=[this.sheet,...t.adoptedStyleSheets]);else{let o="";for(let u=0;u<this.modules.length;u++)o+=this.modules[u].getRules()+`
|
|
14
|
+
`;this.styleTag.textContent=o;let c=t.head||t;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 Ti={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:"'"},Ro={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},O$=typeof navigator<"u"&&/Mac/.test(navigator.platform),y$=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Xt=0;Xt<10;Xt++)Ti[48+Xt]=Ti[96+Xt]=String(Xt);for(var Xt=1;Xt<=24;Xt++)Ti[Xt+111]="F"+Xt;for(var Xt=65;Xt<=90;Xt++)Ti[Xt]=String.fromCharCode(Xt+32),Ro[Xt]=String.fromCharCode(Xt);for(var Uh in Ti)Ro.hasOwnProperty(Uh)||(Ro[Uh]=Ti[Uh]);function v$(n){var e=O$&&n.metaKey&&n.shiftKey&&!n.ctrlKey&&!n.altKey||y$&&n.shiftKey&&n.key&&n.key.length==1||n.key=="Unidentified",t=!e&&n.key||(n.shiftKey?Ro:Ti)[n.keyCode]||n.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}function tt(){var n=arguments[0];typeof n=="string"&&(n=document.createElement(n));var e=1,t=arguments[1];if(t&&typeof t=="object"&&t.nodeType==null&&!Array.isArray(t)){for(var s in t)if(Object.prototype.hasOwnProperty.call(t,s)){var i=t[s];typeof i=="string"?n.setAttribute(s,i):i!=null&&(n[s]=i)}e++}for(;e<arguments.length;e++)q0(n,arguments[e]);return n}function q0(n,e){if(typeof e=="string")n.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)n.appendChild(e);else if(Array.isArray(e))for(var t=0;t<e.length;t++)q0(n,e[t]);else throw new RangeError("Unsupported child node: "+e)}let rn=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},Vf=typeof document<"u"?document:{documentElement:{style:{}}};const Wf=/Edge\/(\d+)/.exec(rn.userAgent),G0=/MSIE \d/.test(rn.userAgent),Uf=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(rn.userAgent),Iu=!!(G0||Uf||Wf),Xy=!Iu&&/gecko\/(\d+)/i.test(rn.userAgent),Yh=!Iu&&/Chrome\/(\d+)/.exec(rn.userAgent),x$="webkitFontSmoothing"in Vf.documentElement.style,Yf=!Iu&&/Apple Computer/.test(rn.vendor),Vy=Yf&&(/Mobile\/\w+/.test(rn.userAgent)||rn.maxTouchPoints>2);var ve={mac:Vy||/Mac/.test(rn.platform),windows:/Win/.test(rn.platform),linux:/Linux|X11/.test(rn.platform),ie:Iu,ie_version:G0?Vf.documentMode||6:Uf?+Uf[1]:Wf?+Wf[1]:0,gecko:Xy,gecko_version:Xy?+(/Firefox\/(\d+)/.exec(rn.userAgent)||[0,0])[1]:0,chrome:!!Yh,chrome_version:Yh?+Yh[1]:0,ios:Vy,android:/Android\b/.test(rn.userAgent),webkit_version:x$?+(/\bAppleWebKit\/(\d+)/.exec(rn.userAgent)||[0,0])[1]:0,safari:Yf,safari_version:Yf?+(/\bVersion\/(\d+(\.\d+)?)/.exec(rn.userAgent)||[0,0])[1]:0,tabSize:Vf.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function Do(n){let e;return n.nodeType==11?e=n.getSelection?n:n.ownerDocument:e=n,e.getSelection()}function qf(n,e){return e?n==e||n.contains(e.nodeType!=1?e.parentNode:e):!1}function Uc(n,e){if(!e.anchorNode)return!1;try{return qf(n,e.anchorNode)}catch{return!1}}function ol(n){return n.nodeType==3?cr(n,0,n.nodeValue.length).getClientRects():n.nodeType==1?n.getClientRects():[]}function So(n,e,t,s){return t?Wy(n,e,t,s,-1)||Wy(n,e,t,s,1):!1}function ar(n){for(var e=0;;e++)if(n=n.previousSibling,!n)return e}function ou(n){return n.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(n.nodeName)}function Wy(n,e,t,s,i){for(;;){if(n==t&&e==s)return!0;if(e==(i<0?0:Ps(n))){if(n.nodeName=="DIV")return!1;let r=n.parentNode;if(!r||r.nodeType!=1)return!1;e=ar(n)+(i<0?0:1),n=r}else if(n.nodeType==1){if(n=n.childNodes[e+(i<0?-1:0)],n.nodeType==1&&n.contentEditable=="false")return!1;e=i<0?Ps(n):0}else return!1}}function Ps(n){return n.nodeType==3?n.nodeValue.length:n.childNodes.length}function Go(n,e){let t=e?n.left:n.right;return{left:t,right:t,top:n.top,bottom:n.bottom}}function w$(n){let e=n.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:n.innerWidth,top:0,bottom:n.innerHeight}}function H0(n,e){let t=e.width/n.offsetWidth,s=e.height/n.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-n.offsetWidth)<1)&&(t=1),(s>.995&&s<1.005||!isFinite(s)||Math.abs(e.height-n.offsetHeight)<1)&&(s=1),{scaleX:t,scaleY:s}}function k$(n,e,t,s,i,r,o,c){let u=n.ownerDocument,f=u.defaultView||window;for(let p=n,g=!1;p&&!g;)if(p.nodeType==1){let O,v=p==u.body,w=1,k=1;if(v)O=w$(f);else{if(/^(fixed|sticky)$/.test(getComputedStyle(p).position)&&(g=!0),p.scrollHeight<=p.clientHeight&&p.scrollWidth<=p.clientWidth){p=p.assignedSlot||p.parentNode;continue}let b=p.getBoundingClientRect();({scaleX:w,scaleY:k}=H0(p,b)),O={left:b.left,right:b.left+p.clientWidth*w,top:b.top,bottom:b.top+p.clientHeight*k}}let S=0,$=0;if(i=="nearest")e.top<O.top?($=e.top-(O.top+o),t>0&&e.bottom>O.bottom+$&&($=e.bottom-O.bottom+o)):e.bottom>O.bottom&&($=e.bottom-O.bottom+o,t<0&&e.top-$<O.top&&($=e.top-(O.top+o)));else{let b=e.bottom-e.top,C=O.bottom-O.top;$=(i=="center"&&b<=C?e.top+b/2-C/2:i=="start"||i=="center"&&t<0?e.top-o:e.bottom-C+o)-O.top}if(s=="nearest"?e.left<O.left?(S=e.left-(O.left+r),t>0&&e.right>O.right+S&&(S=e.right-O.right+r)):e.right>O.right&&(S=e.right-O.right+r,t<0&&e.left<O.left+S&&(S=e.left-(O.left+r))):S=(s=="center"?e.left+(e.right-e.left)/2-(O.right-O.left)/2:s=="start"==c?e.left-r:e.right-(O.right-O.left)+r)-O.left,S||$)if(v)f.scrollBy(S,$);else{let b=0,C=0;if($){let T=p.scrollTop;p.scrollTop+=$/k,C=(p.scrollTop-T)*k}if(S){let T=p.scrollLeft;p.scrollLeft+=S/w,b=(p.scrollLeft-T)*w}e={left:e.left-b,top:e.top-C,right:e.right-b,bottom:e.bottom-C},b&&Math.abs(b-S)<1&&(s="nearest"),C&&Math.abs(C-$)<1&&(i="nearest")}if(v)break;(e.top<O.top||e.bottom>O.bottom||e.left<O.left||e.right>O.right)&&(e={left:Math.max(e.left,O.left),right:Math.min(e.right,O.right),top:Math.max(e.top,O.top),bottom:Math.min(e.bottom,O.bottom)}),p=p.assignedSlot||p.parentNode}else if(p.nodeType==11)p=p.host;else break}function S$(n){let e=n.ownerDocument,t,s;for(let i=n.parentNode;i&&!(i==e.body||t&&s);)if(i.nodeType==1)!s&&i.scrollHeight>i.clientHeight&&(s=i),!t&&i.scrollWidth>i.clientWidth&&(t=i),i=i.assignedSlot||i.parentNode;else if(i.nodeType==11)i=i.host;else break;return{x:t,y:s}}class b${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:t,focusNode:s}=e;this.set(t,Math.min(e.anchorOffset,t?Ps(t):0),s,Math.min(e.focusOffset,s?Ps(s):0))}set(e,t,s,i){this.anchorNode=e,this.anchorOffset=t,this.focusNode=s,this.focusOffset=i}}let Gi=null;ve.safari&&ve.safari_version>=26&&(Gi=!1);function K0(n){if(n.setActive)return n.setActive();if(Gi)return n.focus(Gi);let e=[];for(let t=n;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(n.focus(Gi==null?{get preventScroll(){return Gi={preventScroll:!0},!0}}:void 0),!Gi){Gi=!1;for(let t=0;t<e.length;){let s=e[t++],i=e[t++],r=e[t++];s.scrollTop!=i&&(s.scrollTop=i),s.scrollLeft!=r&&(s.scrollLeft=r)}}}let Uy;function cr(n,e,t=e){let s=Uy||(Uy=document.createRange());return s.setEnd(n,t),s.setStart(n,e),s}function tl(n,e,t,s){let i={key:e,code:e,keyCode:t,which:t,cancelable:!0};s&&({altKey:i.altKey,ctrlKey:i.ctrlKey,shiftKey:i.shiftKey,metaKey:i.metaKey}=s);let r=new KeyboardEvent("keydown",i);r.synthetic=!0,n.dispatchEvent(r);let o=new KeyboardEvent("keyup",i);return o.synthetic=!0,n.dispatchEvent(o),r.defaultPrevented||o.defaultPrevented}function _$(n){for(;n;){if(n&&(n.nodeType==9||n.nodeType==11&&n.host))return n;n=n.assignedSlot||n.parentNode}return null}function J0(n){for(;n.attributes.length;)n.removeAttributeNode(n.attributes[0])}function $$(n,e){let t=e.focusNode,s=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=s)return!1;for(s=Math.min(s,Ps(t));;)if(s){if(t.nodeType!=1)return!1;let i=t.childNodes[s-1];i.contentEditable=="false"?s--:(t=i,s=Ps(t))}else{if(t==n)return!0;s=ar(t),t=t.parentNode}}function ew(n){return n.scrollTop>Math.max(1,n.scrollHeight-n.clientHeight-4)}function tw(n,e){for(let t=n,s=e;;){if(t.nodeType==3&&s>0)return{node:t,offset:s};if(t.nodeType==1&&s>0){if(t.contentEditable=="false")return null;t=t.childNodes[s-1],s=Ps(t)}else if(t.parentNode&&!ou(t))s=ar(t),t=t.parentNode;else return null}}function nw(n,e){for(let t=n,s=e;;){if(t.nodeType==3&&s<t.nodeValue.length)return{node:t,offset:s};if(t.nodeType==1&&s<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[s],s=0}else if(t.parentNode&&!ou(t))s=ar(t)+1,t=t.parentNode;else return null}}class Kt{constructor(e,t,s=!0){this.node=e,this.offset=t,this.precise=s}static before(e,t){return new Kt(e.parentNode,ar(e),t)}static after(e,t){return new Kt(e.parentNode,ar(e)+1,t)}}const Bp=[];class et{constructor(){this.parent=null,this.dom=null,this.flags=2}get overrideDOMText(){return null}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e){let t=this.posAtStart;for(let s of this.children){if(s==e)return t;t+=s.length+s.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}sync(e,t){if(this.flags&2){let s=this.dom,i=null,r;for(let o of this.children){if(o.flags&7){if(!o.dom&&(r=i?i.nextSibling:s.firstChild)){let c=et.get(r);(!c||!c.parent&&c.canReuseDOM(o))&&o.reuseDOM(r)}o.sync(e,t),o.flags&=-8}if(r=i?i.nextSibling:s.firstChild,t&&!t.written&&t.node==s&&r!=o.dom&&(t.written=!0),o.dom.parentNode==s)for(;r&&r!=o.dom;)r=Yy(r);else s.insertBefore(o.dom,r);i=o.dom}for(r=i?i.nextSibling:s.firstChild,r&&t&&t.node==s&&(t.written=!0);r;)r=Yy(r)}else if(this.flags&1)for(let s of this.children)s.flags&7&&(s.sync(e,t),s.flags&=-8)}reuseDOM(e){}localPosFromDOM(e,t){let s;if(e==this.dom)s=this.dom.childNodes[t];else{let i=Ps(e)==0?0:t==0?-1:1;for(;;){let r=e.parentNode;if(r==this.dom)break;i==0&&r.firstChild!=r.lastChild&&(e==r.firstChild?i=-1:i=1),e=r}i<0?s=e:s=e.nextSibling}if(s==this.dom.firstChild)return 0;for(;s&&!et.get(s);)s=s.nextSibling;if(!s)return this.length;for(let i=0,r=0;;i++){let o=this.children[i];if(o.dom==s)return r;r+=o.length+o.breakAfter}}domBoundsAround(e,t,s=0){let i=-1,r=-1,o=-1,c=-1;for(let u=0,f=s,p=s;u<this.children.length;u++){let g=this.children[u],O=f+g.length;if(f<e&&O>t)return g.domBoundsAround(e,t,f);if(O>=e&&i==-1&&(i=u,r=f),f>t&&g.dom.parentNode==this.dom){o=u,c=p;break}p=O,f=O+g.breakAfter}return{from:r,to:c<0?s+this.length:c,startDOM:(i?this.children[i-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:o<this.children.length&&o>=0?this.children[o].dom:null}}markDirty(e=!1){this.flags|=2,this.markParentsDirty(e)}markParentsDirty(e){for(let t=this.parent;t;t=t.parent){if(e&&(t.flags|=2),t.flags&1)return;t.flags|=1,e=!1}}setParent(e){this.parent!=e&&(this.parent=e,this.flags&7&&this.markParentsDirty(!0))}setDOM(e){this.dom!=e&&(this.dom&&(this.dom.cmView=null),this.dom=e,e.cmView=this)}get rootView(){for(let e=this;;){let t=e.parent;if(!t)return e;e=t}}replaceChildren(e,t,s=Bp){this.markDirty();for(let i=e;i<t;i++){let r=this.children[i];r.parent==this&&s.indexOf(r)<0&&r.destroy()}s.length<250?this.children.splice(e,t-e,...s):this.children=[].concat(this.children.slice(0,e),s,this.children.slice(t));for(let i=0;i<s.length;i++)s[i].setParent(this)}ignoreMutation(e){return!1}ignoreEvent(e){return!1}childCursor(e=this.length){return new sw(this.children,e,this.children.length)}childPos(e,t=1){return this.childCursor().findPos(e,t)}toString(){let e=this.constructor.name.replace("View","");return e+(this.children.length?"("+this.children.join()+")":this.length?"["+(e=="Text"?this.text:this.length)+"]":"")+(this.breakAfter?"#":"")}static get(e){return e.cmView}get isEditable(){return!0}get isWidget(){return!1}get isHidden(){return!1}merge(e,t,s,i,r,o){return!1}become(e){return!1}canReuseDOM(e){return e.constructor==this.constructor&&!((this.flags|e.flags)&8)}getSide(){return 0}destroy(){for(let e of this.children)e.parent==this&&e.destroy();this.parent=null}}et.prototype.breakAfter=0;function Yy(n){let e=n.nextSibling;return n.parentNode.removeChild(n),e}class sw{constructor(e,t,s){this.children=e,this.pos=t,this.i=s,this.off=0}findPos(e,t=1){for(;;){if(e>this.pos||e==this.pos&&(t>0||this.i==0||this.children[this.i-1].breakAfter))return this.off=e-this.pos,this;let s=this.children[--this.i];this.pos-=s.length+s.breakAfter}}}function iw(n,e,t,s,i,r,o,c,u){let{children:f}=n,p=f.length?f[e]:null,g=r.length?r[r.length-1]:null,O=g?g.breakAfter:o;if(!(e==s&&p&&!o&&!O&&r.length<2&&p.merge(t,i,r.length?g:null,t==0,c,u))){if(s<f.length){let v=f[s];v&&(i<v.length||v.breakAfter&&g?.breakAfter)?(e==s&&(v=v.split(i),i=0),!O&&g&&v.merge(0,i,g,!0,0,u)?r[r.length-1]=v:((i||v.children.length&&!v.children[0].length)&&v.merge(0,i,null,!1,0,u),r.push(v))):v?.breakAfter&&(g?g.breakAfter=1:o=1),s++}for(p&&(p.breakAfter=o,t>0&&(!o&&r.length&&p.merge(t,p.length,r[0],!1,c,0)?p.breakAfter=r.shift().breakAfter:(t<p.length||p.children.length&&p.children[p.children.length-1].length==0)&&p.merge(t,p.length,null,!1,c,0),e++));e<s&&r.length;)if(f[s-1].become(r[r.length-1]))s--,r.pop(),u=r.length?0:c;else if(f[e].become(r[0]))e++,r.shift(),c=r.length?0:u;else break;!r.length&&e&&s<f.length&&!f[e-1].breakAfter&&f[s].merge(0,0,f[e-1],!1,c,u)&&e--,(e<s||r.length)&&n.replaceChildren(e,s,r)}}function rw(n,e,t,s,i,r){let o=n.childCursor(),{i:c,off:u}=o.findPos(t,1),{i:f,off:p}=o.findPos(e,-1),g=e-t;for(let O of s)g+=O.length;n.length+=g,iw(n,f,p,c,u,s,0,i,r)}const C$=256;class ls extends et{constructor(e){super(),this.text=e}get length(){return this.text.length}createDOM(e){this.setDOM(e||document.createTextNode(this.text))}sync(e,t){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(t&&t.node==this.dom&&(t.written=!0),this.dom.nodeValue=this.text)}reuseDOM(e){e.nodeType==3&&this.createDOM(e)}merge(e,t,s){return this.flags&8||s&&(!(s instanceof ls)||this.length-(t-e)+s.length>C$||s.flags&8)?!1:(this.text=this.text.slice(0,e)+(s?s.text:"")+this.text.slice(t),this.markDirty(),!0)}split(e){let t=new ls(this.text.slice(e));return this.text=this.text.slice(0,e),this.markDirty(),t.flags|=this.flags&8,t}localPosFromDOM(e,t){return e==this.dom?t:t?this.text.length:0}domAtPos(e){return new Kt(this.dom,e)}domBoundsAround(e,t,s){return{from:s,to:s+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,t){return T$(this.dom,e,t)}}class qs extends et{constructor(e,t=[],s=0){super(),this.mark=e,this.children=t,this.length=s;for(let i of t)i.setParent(this)}setAttrs(e){if(J0(e),this.mark.class&&(e.className=this.mark.class),this.mark.attrs)for(let t in this.mark.attrs)e.setAttribute(t,this.mark.attrs[t]);return e}canReuseDOM(e){return super.canReuseDOM(e)&&!((this.flags|e.flags)&8)}reuseDOM(e){e.nodeName==this.mark.tagName.toUpperCase()&&(this.setDOM(e),this.flags|=6)}sync(e,t){this.dom?this.flags&4&&this.setAttrs(this.dom):this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))),super.sync(e,t)}merge(e,t,s,i,r,o){return s&&(!(s instanceof qs&&s.mark.eq(this.mark))||e&&r<=0||t<this.length&&o<=0)?!1:(rw(this,e,t,s?s.children.slice():[],r-1,o-1),this.markDirty(),!0)}split(e){let t=[],s=0,i=-1,r=0;for(let c of this.children){let u=s+c.length;u>e&&t.push(s<e?c.split(e-s):c),i<0&&s>=e&&(i=r),s=u,r++}let o=this.length-e;return this.length=e,i>-1&&(this.children.length=i,this.markDirty()),new qs(this.mark,t,o)}domAtPos(e){return lw(this,e)}coordsAt(e,t){return aw(this,e,t)}}function T$(n,e,t){let s=n.nodeValue.length;e>s&&(e=s);let i=e,r=e,o=0;e==0&&t<0||e==s&&t>=0?ve.chrome||ve.gecko||(e?(i--,o=1):r<s&&(r++,o=-1)):t<0?i--:r<s&&r++;let c=cr(n,i,r).getClientRects();if(!c.length)return null;let u=c[(o?o<0:t>=0)?0:c.length-1];return ve.safari&&!o&&u.width==0&&(u=Array.prototype.find.call(c,f=>f.width)||u),o?Go(u,o<0):u||null}class Si extends et{static create(e,t,s){return new Si(e,t,s)}constructor(e,t,s){super(),this.widget=e,this.length=t,this.side=s,this.prevWidget=null}split(e){let t=Si.create(this.widget,this.length-e,this.side);return this.length-=e,t}sync(e){(!this.dom||!this.widget.updateDOM(this.dom,e))&&(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(e)),this.widget.editable||(this.dom.contentEditable="false"))}getSide(){return this.side}merge(e,t,s,i,r,o){return s&&(!(s instanceof Si)||!this.widget.compare(s.widget)||e>0&&r<=0||t<this.length&&o<=0)?!1:(this.length=e+(s?s.length:0)+(this.length-t),!0)}become(e){return e instanceof Si&&e.side==this.side&&this.widget.constructor==e.widget.constructor?(this.widget.compare(e.widget)||this.markDirty(!0),this.dom&&!this.prevWidget&&(this.prevWidget=this.widget),this.widget=e.widget,this.length=e.length,!0):!1}ignoreMutation(){return!0}ignoreEvent(e){return this.widget.ignoreEvent(e)}get overrideDOMText(){if(this.length==0)return Be.empty;let e=this;for(;e.parent;)e=e.parent;let{view:t}=e,s=t&&t.state.doc,i=this.posAtStart;return s?s.slice(i,i+this.length):Be.empty}domAtPos(e){return(this.length?e==0:this.side>0)?Kt.before(this.dom):Kt.after(this.dom,e==this.length)}domBoundsAround(){return null}coordsAt(e,t){let s=this.widget.coordsAt(this.dom,e,t);if(s)return s;let i=this.dom.getClientRects(),r=null;if(!i.length)return null;let o=this.side?this.side<0:e>0;for(let c=o?i.length-1:0;r=i[c],!(e>0?c==0:c==i.length-1||r.top<r.bottom);c+=o?-1:1);return Go(r,!o)}get isEditable(){return!1}get isWidget(){return!0}get isHidden(){return this.widget.isHidden}destroy(){super.destroy(),this.dom&&this.widget.destroy(this.dom)}}class al extends et{constructor(e){super(),this.side=e}get length(){return 0}merge(){return!1}become(e){return e instanceof al&&e.side==this.side}split(){return new al(this.side)}sync(){if(!this.dom){let e=document.createElement("img");e.className="cm-widgetBuffer",e.setAttribute("aria-hidden","true"),this.setDOM(e)}}getSide(){return this.side}domAtPos(e){return this.side>0?Kt.before(this.dom):Kt.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(e){return this.dom.getBoundingClientRect()}get overrideDOMText(){return Be.empty}get isHidden(){return!0}}ls.prototype.children=Si.prototype.children=al.prototype.children=Bp;function lw(n,e){let t=n.dom,{children:s}=n,i=0;for(let r=0;i<s.length;i++){let o=s[i],c=r+o.length;if(!(c==r&&o.getSide()<=0)){if(e>r&&e<c&&o.dom.parentNode==t)return o.domAtPos(e-r);if(e<=r)break;r=c}}for(let r=i;r>0;r--){let o=s[r-1];if(o.dom.parentNode==t)return o.domAtPos(o.length)}for(let r=i;r<s.length;r++){let o=s[r];if(o.dom.parentNode==t)return o.domAtPos(0)}return new Kt(t,0)}function ow(n,e,t){let s,{children:i}=n;t>0&&e instanceof qs&&i.length&&(s=i[i.length-1])instanceof qs&&s.mark.eq(e.mark)?ow(s,e.children[0],t-1):(i.push(e),e.setParent(n)),n.length+=e.length}function aw(n,e,t){let s=null,i=-1,r=null,o=-1;function c(f,p){for(let g=0,O=0;g<f.children.length&&O<=p;g++){let v=f.children[g],w=O+v.length;w>=p&&(v.children.length?c(v,p-O):(!r||r.isHidden&&(t>0||j$(r,v)))&&(w>p||O==w&&v.getSide()>0)?(r=v,o=p-O):(O<p||O==w&&v.getSide()<0&&!v.isHidden)&&(s=v,i=p-O)),O=w}}c(n,e);let u=(t<0?s:r)||s||r;return u?u.coordsAt(Math.max(0,u==s?i:o),t):P$(n)}function P$(n){let e=n.dom.lastChild;if(!e)return n.dom.getBoundingClientRect();let t=ol(e);return t[t.length-1]||null}function j$(n,e){let t=n.coordsAt(0,1),s=e.coordsAt(0,1);return t&&s&&s.top<t.bottom}function Gf(n,e){for(let t in n)t=="class"&&e.class?e.class+=" "+n.class:t=="style"&&e.style?e.style+=";"+n.style:e[t]=n[t];return e}const qy=Object.create(null);function au(n,e,t){if(n==e)return!0;n||(n=qy),e||(e=qy);let s=Object.keys(n),i=Object.keys(e);if(s.length-(t&&s.indexOf(t)>-1?1:0)!=i.length-(t&&i.indexOf(t)>-1?1:0))return!1;for(let r of s)if(r!=t&&(i.indexOf(r)==-1||n[r]!==e[r]))return!1;return!0}function Hf(n,e,t){let s=!1;if(e)for(let i in e)t&&i in t||(s=!0,i=="style"?n.style.cssText="":n.removeAttribute(i));if(t)for(let i in t)e&&e[i]==t[i]||(s=!0,i=="style"?n.style.cssText=t[i]:n.setAttribute(i,t[i]));return s}function Q$(n){let e=Object.create(null);for(let t=0;t<n.attributes.length;t++){let s=n.attributes[t];e[s.name]=s.value}return e}class Ns{eq(e){return!1}updateDOM(e,t){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,t,s){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}}var on=(function(n){return n[n.Text=0]="Text",n[n.WidgetBefore=1]="WidgetBefore",n[n.WidgetAfter=2]="WidgetAfter",n[n.WidgetRange=3]="WidgetRange",n})(on||(on={}));class Pe extends or{constructor(e,t,s,i){super(),this.startSide=e,this.endSide=t,this.widget=s,this.spec=i}get heightRelevant(){return!1}static mark(e){return new Ho(e)}static widget(e){let t=Math.max(-1e4,Math.min(1e4,e.side||0)),s=!!e.block;return t+=s&&!e.inlineOrder?t>0?3e8:-4e8:t>0?1e8:-1e8,new Pi(e,t,t,s,e.widget||null,!1)}static replace(e){let t=!!e.block,s,i;if(e.isBlockGap)s=-5e8,i=4e8;else{let{start:r,end:o}=cw(e,t);s=(r?t?-3e8:-1:5e8)-1,i=(o?t?2e8:1:-6e8)+1}return new Pi(e,s,i,t,e.widget||null,!0)}static line(e){return new Ko(e)}static set(e,t=!1){return Ue.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}Pe.none=Ue.empty;class Ho extends Pe{constructor(e){let{start:t,end:s}=cw(e);super(t?-1:5e8,s?1:-6e8,null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){var t,s;return this==e||e instanceof Ho&&this.tagName==e.tagName&&(this.class||((t=this.attrs)===null||t===void 0?void 0:t.class))==(e.class||((s=e.attrs)===null||s===void 0?void 0:s.class))&&au(this.attrs,e.attrs,"class")}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}Ho.prototype.point=!1;class Ko extends Pe{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof Ko&&this.spec.class==e.spec.class&&au(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}Ko.prototype.mapMode=Vt.TrackBefore;Ko.prototype.point=!0;class Pi extends Pe{constructor(e,t,s,i,r,o){super(t,s,r,e),this.block=i,this.isReplace=o,this.mapMode=i?t<=0?Vt.TrackBefore:Vt.TrackAfter:Vt.TrackDel}get type(){return this.startSide!=this.endSide?on.WidgetRange:this.startSide<=0?on.WidgetBefore:on.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof Pi&&N$(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}Pi.prototype.point=!0;function cw(n,e=!1){let{inclusiveStart:t,inclusiveEnd:s}=n;return t==null&&(t=n.inclusive),s==null&&(s=n.inclusive),{start:t??e,end:s??e}}function N$(n,e){return n==e||!!(n&&e&&n.compare(e))}function Yc(n,e,t,s=0){let i=t.length-1;i>=0&&t[i]+s>=n?t[i]=Math.max(t[i],e):t.push(n,e)}class kt extends et{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(e,t,s,i,r,o){if(s){if(!(s instanceof kt))return!1;this.dom||s.transferDOM(this)}return i&&this.setDeco(s?s.attrs:null),rw(this,e,t,s?s.children.slice():[],r,o),!0}split(e){let t=new kt;if(t.breakAfter=this.breakAfter,this.length==0)return t;let{i:s,off:i}=this.childPos(e);i&&(t.append(this.children[s].split(i),0),this.children[s].merge(i,this.children[s].length,null,!1,0,0),s++);for(let r=s;r<this.children.length;r++)t.append(this.children[r],0);for(;s>0&&this.children[s-1].length==0;)this.children[--s].destroy();return this.children.length=s,this.markDirty(),this.length=e,t}transferDOM(e){this.dom&&(this.markDirty(),e.setDOM(this.dom),e.prevAttrs=this.prevAttrs===void 0?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(e){au(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,t){ow(this,e,t)}addLineDeco(e){let t=e.spec.attributes,s=e.spec.class;t&&(this.attrs=Gf(t,this.attrs||{})),s&&(this.attrs=Gf({class:s},this.attrs||{}))}domAtPos(e){return lw(this,e)}reuseDOM(e){e.nodeName=="DIV"&&(this.setDOM(e),this.flags|=6)}sync(e,t){var s;this.dom?this.flags&4&&(J0(this.dom),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0):(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),this.prevAttrs!==void 0&&(Hf(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e,t);let i=this.dom.lastChild;for(;i&&et.get(i)instanceof qs;)i=i.lastChild;if(!i||!this.length||i.nodeName!="BR"&&((s=et.get(i))===null||s===void 0?void 0:s.isEditable)==!1&&(!ve.ios||!this.children.some(r=>r instanceof ls))){let r=document.createElement("BR");r.cmIgnore=!0,this.dom.appendChild(r)}}measureTextSize(){if(this.children.length==0||this.length>20)return null;let e=0,t;for(let s of this.children){if(!(s instanceof ls)||/[^ -~]/.test(s.text))return null;let i=ol(s.dom);if(i.length!=1)return null;e+=i[0].width,t=i[0].height}return e?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length,textHeight:t}:null}coordsAt(e,t){let s=aw(this,e,t);if(!this.children.length&&s&&this.parent){let{heightOracle:i}=this.parent.view.viewState,r=s.bottom-s.top;if(Math.abs(r-i.lineHeight)<2&&i.textHeight<r){let o=(r-i.textHeight)/2;return{top:s.top+o,bottom:s.bottom-o,left:s.left,right:s.left}}}return s}become(e){return e instanceof kt&&this.children.length==0&&e.children.length==0&&au(this.attrs,e.attrs)&&this.breakAfter==e.breakAfter}covers(){return!0}static find(e,t){for(let s=0,i=0;s<e.children.length;s++){let r=e.children[s],o=i+r.length;if(o>=t){if(r instanceof kt)return r;if(o>t)break}i=o+r.breakAfter}return null}}class Us extends et{constructor(e,t,s){super(),this.widget=e,this.length=t,this.deco=s,this.breakAfter=0,this.prevWidget=null}merge(e,t,s,i,r,o){return s&&(!(s instanceof Us)||!this.widget.compare(s.widget)||e>0&&r<=0||t<this.length&&o<=0)?!1:(this.length=e+(s?s.length:0)+(this.length-t),!0)}domAtPos(e){return e==0?Kt.before(this.dom):Kt.after(this.dom,e==this.length)}split(e){let t=this.length-e;this.length=e;let s=new Us(this.widget,t,this.deco);return s.breakAfter=this.breakAfter,s}get children(){return Bp}sync(e){(!this.dom||!this.widget.updateDOM(this.dom,e))&&(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(e)),this.widget.editable||(this.dom.contentEditable="false"))}get overrideDOMText(){return this.parent?this.parent.view.state.doc.slice(this.posAtStart,this.posAtEnd):Be.empty}domBoundsAround(){return null}become(e){return e instanceof Us&&e.widget.constructor==this.widget.constructor?(e.widget.compare(this.widget)||this.markDirty(!0),this.dom&&!this.prevWidget&&(this.prevWidget=this.widget),this.widget=e.widget,this.length=e.length,this.deco=e.deco,this.breakAfter=e.breakAfter,!0):!1}ignoreMutation(){return!0}ignoreEvent(e){return this.widget.ignoreEvent(e)}get isEditable(){return!1}get isWidget(){return!0}coordsAt(e,t){let s=this.widget.coordsAt(this.dom,e,t);return s||(this.widget instanceof Kf?null:Go(this.dom.getBoundingClientRect(),this.length?e==0:t<=0))}destroy(){super.destroy(),this.dom&&this.widget.destroy(this.dom)}covers(e){let{startSide:t,endSide:s}=this.deco;return t==s?!1:e<0?t<0:s>0}}class Kf extends Ns{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}}class bo{constructor(e,t,s,i){this.doc=e,this.pos=t,this.end=s,this.disallowBlockEffectsFor=i,this.content=[],this.curLine=null,this.breakAtStart=0,this.pendingBuffer=0,this.bufferMarks=[],this.atCursorPos=!0,this.openStart=-1,this.openEnd=-1,this.text="",this.textOff=0,this.cursor=e.iter(),this.skip=t}posCovered(){if(this.content.length==0)return!this.breakAtStart&&this.doc.lineAt(this.pos).from!=this.pos;let e=this.content[this.content.length-1];return!(e.breakAfter||e instanceof Us&&e.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new kt),this.atCursorPos=!0),this.curLine}flushBuffer(e=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(kc(new al(-1),e),e.length),this.pendingBuffer=0)}addBlockWidget(e){this.flushBuffer(),this.curLine=null,this.content.push(e)}finish(e){this.pendingBuffer&&e<=this.bufferMarks.length?this.flushBuffer():this.pendingBuffer=0,!this.posCovered()&&!(e&&this.content.length&&this.content[this.content.length-1]instanceof Us)&&this.getLine()}buildText(e,t,s){for(;e>0;){if(this.textOff==this.text.length){let{value:o,lineBreak:c,done:u}=this.cursor.next(this.skip);if(this.skip=0,u)throw new Error("Ran out of text content when drawing inline views");if(c){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.flushBuffer(),this.curLine=null,this.atCursorPos=!0,e--;continue}else this.text=o,this.textOff=0}let i=Math.min(this.text.length-this.textOff,e),r=Math.min(i,512);this.flushBuffer(t.slice(t.length-s)),this.getLine().append(kc(new ls(this.text.slice(this.textOff,this.textOff+r)),t),s),this.atCursorPos=!0,this.textOff+=r,e-=r,s=i<=r?0:t.length}}span(e,t,s,i){this.buildText(t-e,s,i),this.pos=t,this.openStart<0&&(this.openStart=i)}point(e,t,s,i,r,o){if(this.disallowBlockEffectsFor[o]&&s instanceof Pi){if(s.block)throw new RangeError("Block decorations may not be specified via plugins");if(t>this.doc.lineAt(this.pos).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}let c=t-e;if(s instanceof Pi)if(s.block)s.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new Us(s.widget||cl.block,c,s));else{let u=Si.create(s.widget||cl.inline,c,c?0:s.startSide),f=this.atCursorPos&&!u.isEditable&&r<=i.length&&(e<t||s.startSide>0),p=!u.isEditable&&(e<t||r>i.length||s.startSide<=0),g=this.getLine();this.pendingBuffer==2&&!f&&!u.isEditable&&(this.pendingBuffer=0),this.flushBuffer(i),f&&(g.append(kc(new al(1),i),r),r=i.length+Math.max(0,r-i.length)),g.append(kc(u,i),r),this.atCursorPos=p,this.pendingBuffer=p?e<t||r>i.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=i.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(s);c&&(this.textOff+c<=this.text.length?this.textOff+=c:(this.skip+=c-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=t),this.openStart<0&&(this.openStart=r)}static build(e,t,s,i,r){let o=new bo(e,t,s,r);return o.openEnd=Ue.spans(i,t,s,o),o.openStart<0&&(o.openStart=o.openEnd),o.finish(o.openEnd),o}}function kc(n,e){for(let t of e)n=new qs(t,[n],n.length);return n}class cl extends Ns{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}}cl.inline=new cl("span");cl.block=new cl("div");var ot=(function(n){return n[n.LTR=0]="LTR",n[n.RTL=1]="RTL",n})(ot||(ot={}));const ur=ot.LTR,Xp=ot.RTL;function uw(n){let e=[];for(let t=0;t<n.length;t++)e.push(1<<+n[t]);return e}const E$=uw("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),A$=uw("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),Jf=Object.create(null),gs=[];for(let n of["()","[]","{}"]){let e=n.charCodeAt(0),t=n.charCodeAt(1);Jf[e]=t,Jf[t]=-e}function dw(n){return n<=247?E$[n]:1424<=n&&n<=1524?2:1536<=n&&n<=1785?A$[n-1536]:1774<=n&&n<=2220?4:8192<=n&&n<=8204?256:64336<=n&&n<=65023?4:1}const M$=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class bi{get dir(){return this.level%2?Xp:ur}constructor(e,t,s){this.from=e,this.to=t,this.level=s}side(e,t){return this.dir==t==e?this.to:this.from}forward(e,t){return e==(this.dir==t)}static find(e,t,s,i){let r=-1;for(let o=0;o<e.length;o++){let c=e[o];if(c.from<=t&&c.to>=t){if(c.level==s)return o;(r<0||(i!=0?i<0?c.from<t:c.to>t:e[r].level>c.level))&&(r=o)}}if(r<0)throw new RangeError("Index out of range");return r}}function hw(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++){let s=n[t],i=e[t];if(s.from!=i.from||s.to!=i.to||s.direction!=i.direction||!hw(s.inner,i.inner))return!1}return!0}const nt=[];function R$(n,e,t,s,i){for(let r=0;r<=s.length;r++){let o=r?s[r-1].to:e,c=r<s.length?s[r].from:t,u=r?256:i;for(let f=o,p=u,g=u;f<c;f++){let O=dw(n.charCodeAt(f));O==512?O=p:O==8&&g==4&&(O=16),nt[f]=O==4?2:O,O&7&&(g=O),p=O}for(let f=o,p=u,g=u;f<c;f++){let O=nt[f];if(O==128)f<c-1&&p==nt[f+1]&&p&24?O=nt[f]=p:nt[f]=256;else if(O==64){let v=f+1;for(;v<c&&nt[v]==64;)v++;let w=f&&p==8||v<t&&nt[v]==8?g==1?1:8:256;for(let k=f;k<v;k++)nt[k]=w;f=v-1}else O==8&&g==1&&(nt[f]=1);p=O,O&7&&(g=O)}}}function D$(n,e,t,s,i){let r=i==1?2:1;for(let o=0,c=0,u=0;o<=s.length;o++){let f=o?s[o-1].to:e,p=o<s.length?s[o].from:t;for(let g=f,O,v,w;g<p;g++)if(v=Jf[O=n.charCodeAt(g)])if(v<0){for(let k=c-3;k>=0;k-=3)if(gs[k+1]==-v){let S=gs[k+2],$=S&2?i:S&4?S&1?r:i:0;$&&(nt[g]=nt[gs[k]]=$),c=k;break}}else{if(gs.length==189)break;gs[c++]=g,gs[c++]=O,gs[c++]=u}else if((w=nt[g])==2||w==1){let k=w==i;u=k?0:1;for(let S=c-3;S>=0;S-=3){let $=gs[S+2];if($&2)break;if(k)gs[S+2]|=2;else{if($&4)break;gs[S+2]|=4}}}}}function I$(n,e,t,s){for(let i=0,r=s;i<=t.length;i++){let o=i?t[i-1].to:n,c=i<t.length?t[i].from:e;for(let u=o;u<c;){let f=nt[u];if(f==256){let p=u+1;for(;;)if(p==c){if(i==t.length)break;p=t[i++].to,c=i<t.length?t[i].from:e}else if(nt[p]==256)p++;else break;let g=r==1,O=(p<e?nt[p]:s)==1,v=g==O?g?1:2:s;for(let w=p,k=i,S=k?t[k-1].to:n;w>u;)w==S&&(w=t[--k].from,S=k?t[k-1].to:n),nt[--w]=v;u=p}else r=f,u++}}}function ep(n,e,t,s,i,r,o){let c=s%2?2:1;if(s%2==i%2)for(let u=e,f=0;u<t;){let p=!0,g=!1;if(f==r.length||u<r[f].from){let k=nt[u];k!=c&&(p=!1,g=k==16)}let O=!p&&c==1?[]:null,v=p?s:s+1,w=u;e:for(;;)if(f<r.length&&w==r[f].from){if(g)break e;let k=r[f];if(!p)for(let S=k.to,$=f+1;;){if(S==t)break e;if($<r.length&&r[$].from==S)S=r[$++].to;else{if(nt[S]==c)break e;break}}if(f++,O)O.push(k);else{k.from>u&&o.push(new bi(u,k.from,v));let S=k.direction==ur!=!(v%2);tp(n,S?s+1:s,i,k.inner,k.from,k.to,o),u=k.to}w=k.to}else{if(w==t||(p?nt[w]!=c:nt[w]==c))break;w++}O?ep(n,u,w,s+1,i,O,o):u<w&&o.push(new bi(u,w,v)),u=w}else for(let u=t,f=r.length;u>e;){let p=!0,g=!1;if(!f||u>r[f-1].to){let k=nt[u-1];k!=c&&(p=!1,g=k==16)}let O=!p&&c==1?[]:null,v=p?s:s+1,w=u;e:for(;;)if(f&&w==r[f-1].to){if(g)break e;let k=r[--f];if(!p)for(let S=k.from,$=f;;){if(S==e)break e;if($&&r[$-1].to==S)S=r[--$].from;else{if(nt[S-1]==c)break e;break}}if(O)O.push(k);else{k.to<u&&o.push(new bi(k.to,u,v));let S=k.direction==ur!=!(v%2);tp(n,S?s+1:s,i,k.inner,k.from,k.to,o),u=k.from}w=k.from}else{if(w==e||(p?nt[w-1]!=c:nt[w-1]==c))break;w--}O?ep(n,w,u,s+1,i,O,o):w<u&&o.push(new bi(w,u,v)),u=w}}function tp(n,e,t,s,i,r,o){let c=e%2?2:1;R$(n,i,r,s,c),D$(n,i,r,s,c),I$(i,r,s,c),ep(n,i,r,e,t,s,o)}function L$(n,e,t){if(!n)return[new bi(0,0,e==Xp?1:0)];if(e==ur&&!t.length&&!M$.test(n))return fw(n.length);if(t.length)for(;n.length>nt.length;)nt[nt.length]=256;let s=[],i=e==ur?0:1;return tp(n,i,i,t,0,n.length,s),s}function fw(n){return[new bi(0,n,0)]}let pw="";function Z$(n,e,t,s,i){var r;let o=s.head-n.from,c=bi.find(e,o,(r=s.bidiLevel)!==null&&r!==void 0?r:-1,s.assoc),u=e[c],f=u.side(i,t);if(o==f){let O=c+=i?1:-1;if(O<0||O>=e.length)return null;u=e[c=O],o=u.side(!i,t),f=u.side(i,t)}let p=Wt(n.text,o,u.forward(i,t));(p<u.from||p>u.to)&&(p=f),pw=n.text.slice(Math.min(o,p),Math.max(o,p));let g=c==(i?e.length-1:0)?null:e[c+(i?1:-1)];return g&&p==f&&g.level+(i?0:1)<u.level?ie.cursor(g.side(!i,t)+n.from,g.forward(i,t)?1:-1,g.level):ie.cursor(p+n.from,u.forward(i,t)?-1:1,u.level)}function z$(n,e,t){for(let s=e;s<t;s++){let i=dw(n.charCodeAt(s));if(i==1)return ur;if(i==2||i==4)return Xp}return ur}const mw=Se.define(),gw=Se.define(),Ow=Se.define(),yw=Se.define(),np=Se.define(),vw=Se.define(),xw=Se.define(),Vp=Se.define(),Wp=Se.define(),ww=Se.define({combine:n=>n.some(e=>e)}),kw=Se.define({combine:n=>n.some(e=>e)}),Sw=Se.define();class nl{constructor(e,t="nearest",s="nearest",i=5,r=5,o=!1){this.range=e,this.y=t,this.x=s,this.yMargin=i,this.xMargin=r,this.isSnapshot=o}map(e){return e.empty?this:new nl(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 nl(ie.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const Sc=Me.define({map:(n,e)=>n.map(e)}),bw=Me.define();function kn(n,e,t){let s=n.facet(yw);s.length?s[0](e):window.onerror&&window.onerror(String(e),t,void 0,void 0,e)||(t?console.error(t+":",e):console.error(e))}const Ws=Se.define({combine:n=>n.length?n[0]:!0});let F$=0;const Gr=Se.define({combine(n){return n.filter((e,t)=>{for(let s=0;s<t;s++)if(n[s].plugin==e.plugin)return!1;return!0})}});class mt{constructor(e,t,s,i,r){this.id=e,this.create=t,this.domEventHandlers=s,this.domEventObservers=i,this.baseExtensions=r(this),this.extension=this.baseExtensions.concat(Gr.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(Gr.of({plugin:this,arg:e}))}static define(e,t){const{eventHandlers:s,eventObservers:i,provide:r,decorations:o}=t||{};return new mt(F$++,e,s,i,c=>{let u=[];return o&&u.push(Io.of(f=>{let p=f.plugin(c);return p?o(p):Pe.none})),r&&u.push(r(c)),u})}static fromClass(e,t){return mt.define((s,i)=>new e(s,i),t)}}class qh{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 t=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(t)}catch(s){if(kn(t.state,s,"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(t){kn(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(!((t=this.value)===null||t===void 0)&&t.destroy)try{this.value.destroy()}catch(s){kn(e.state,s,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const _w=Se.define(),Up=Se.define(),Io=Se.define(),$w=Se.define(),Jo=Se.define(),Cw=Se.define();function Gy(n,e){let t=n.state.facet(Cw);if(!t.length)return t;let s=t.map(r=>r instanceof Function?r(n):r),i=[];return Ue.spans(s,e.from,e.to,{point(){},span(r,o,c,u){let f=r-e.from,p=o-e.from,g=i;for(let O=c.length-1;O>=0;O--,u--){let v=c[O].spec.bidiIsolate,w;if(v==null&&(v=z$(e.text,f,p)),u>0&&g.length&&(w=g[g.length-1]).to==f&&w.direction==v)w.to=p,g=w.inner;else{let k={from:f,to:p,direction:v,inner:[]};g.push(k),g=k.inner}}}}),i}const Tw=Se.define();function Yp(n){let e=0,t=0,s=0,i=0;for(let r of n.state.facet(Tw)){let o=r(n);o&&(o.left!=null&&(e=Math.max(e,o.left)),o.right!=null&&(t=Math.max(t,o.right)),o.top!=null&&(s=Math.max(s,o.top)),o.bottom!=null&&(i=Math.max(i,o.bottom)))}return{left:e,right:t,top:s,bottom:i}}const mo=Se.define();class Xn{constructor(e,t,s,i){this.fromA=e,this.toA=t,this.fromB=s,this.toB=i}join(e){return new Xn(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 t=e.length,s=this;for(;t>0;t--){let i=e[t-1];if(!(i.fromA>s.toA)){if(i.toA<s.fromA)break;s=s.join(i),e.splice(t-1,1)}}return e.splice(t,0,s),e}static extendWithRanges(e,t){if(t.length==0)return e;let s=[];for(let i=0,r=0,o=0,c=0;;i++){let u=i==e.length?null:e[i],f=o-c,p=u?u.fromB:1e9;for(;r<t.length&&t[r]<p;){let g=t[r],O=t[r+1],v=Math.max(c,g),w=Math.min(p,O);if(v<=w&&new Xn(v+f,w+f,v,w).addToSet(s),O>p)break;r+=2}if(!u)return s;new Xn(u.fromA,u.toA,u.fromB,u.toB).addToSet(s),o=u.toA,c=u.toB}}}class cu{constructor(e,t,s){this.view=e,this.state=t,this.transactions=s,this.flags=0,this.startState=e.state,this.changes=Pt.empty(this.startState.doc.length);for(let r of s)this.changes=this.changes.compose(r.changes);let i=[];this.changes.iterChangedRanges((r,o,c,u)=>i.push(new Xn(r,o,c,u))),this.changedRanges=i}static create(e,t,s){return new cu(e,t,s)}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}}class Hy extends et{get length(){return this.view.state.doc.length}constructor(e){super(),this.view=e,this.decorations=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.markedForComposition=new Set,this.editContextFormatting=Pe.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.setDOM(e.contentDOM),this.children=[new kt],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new Xn(0,0,0,e.state.doc.length)],0,null)}update(e){var t;let s=e.changedRanges;this.minWidth>0&&s.length&&(s.every(({fromA:f,toA:p})=>p<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 i=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?i=this.domChanged.newSel.head:!q$(e.changes,this.hasComposition)&&!e.selectionSet&&(i=e.state.selection.main.head));let r=i>-1?X$(this.view,e.changes,i):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:f,to:p}=this.hasComposition;s=new Xn(f,p,e.changes.mapPos(f,-1),e.changes.mapPos(p,1)).addToSet(s.slice())}this.hasComposition=r?{from:r.range.fromB,to:r.range.toB}:null,(ve.ie||ve.chrome)&&!r&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,c=this.updateDeco(),u=U$(o,c,e.changes);return s=Xn.extendWithRanges(s,u),!(this.flags&7)&&s.length==0?!1:(this.updateInner(s,e.startState.doc.length,r),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t,s){this.view.viewState.mustMeasureContent=!0,this.updateChildren(e,t,s);let{observer:i}=this.view;i.ignore(()=>{this.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let o=ve.chrome||ve.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,o),this.flags&=-8,o&&(o.written||i.selectionRange.focusNode!=o.node)&&(this.forceSelection=!0),this.dom.style.height=""}),this.markedForComposition.forEach(o=>o.flags&=-9);let r=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let o of this.children)o instanceof Us&&o.widget instanceof Kf&&r.push(o.dom);i.updateGaps(r)}updateChildren(e,t,s){let i=s?s.range.addToSet(e.slice()):e,r=this.childCursor(t);for(let o=i.length-1;;o--){let c=o>=0?i[o]:null;if(!c)break;let{fromA:u,toA:f,fromB:p,toB:g}=c,O,v,w,k;if(s&&s.range.fromB<g&&s.range.toB>p){let T=bo.build(this.view.state.doc,p,s.range.fromB,this.decorations,this.dynamicDecorationMap),P=bo.build(this.view.state.doc,s.range.toB,g,this.decorations,this.dynamicDecorationMap);v=T.breakAtStart,w=T.openStart,k=P.openEnd;let N=this.compositionView(s);P.breakAtStart?N.breakAfter=1:P.content.length&&N.merge(N.length,N.length,P.content[0],!1,P.openStart,0)&&(N.breakAfter=P.content[0].breakAfter,P.content.shift()),T.content.length&&N.merge(0,0,T.content[T.content.length-1],!0,0,T.openEnd)&&T.content.pop(),O=T.content.concat(N).concat(P.content)}else({content:O,breakAtStart:v,openStart:w,openEnd:k}=bo.build(this.view.state.doc,p,g,this.decorations,this.dynamicDecorationMap));let{i:S,off:$}=r.findPos(f,1),{i:b,off:C}=r.findPos(u,-1);iw(this,b,C,S,$,O,v,w,k)}s&&this.fixCompositionDOM(s)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let t of e.transactions)for(let s of t.effects)s.is(bw)&&(this.editContextFormatting=s.value)}compositionView(e){let t=new ls(e.text.nodeValue);t.flags|=8;for(let{deco:i}of e.marks)t=new qs(i,[t],t.length);let s=new kt;return s.append(t,0),s}fixCompositionDOM(e){let t=(r,o)=>{o.flags|=8|(o.children.some(u=>u.flags&7)?1:0),this.markedForComposition.add(o);let c=et.get(r);c&&c!=o&&(c.dom=null),o.setDOM(r)},s=this.childPos(e.range.fromB,1),i=this.children[s.i];t(e.line,i);for(let r=e.marks.length-1;r>=-1;r--)s=i.childPos(s.off,1),i=i.children[s.i],t(r>=0?e.marks[r].node:e.text,i)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let s=this.view.root.activeElement,i=s==this.dom,r=!i&&!(this.view.state.facet(Ws)||this.dom.tabIndex>-1)&&Uc(this.dom,this.view.observer.selectionRange)&&!(s&&this.dom.contains(s));if(!(i||t||r))return;let o=this.forceSelection;this.forceSelection=!1;let c=this.view.state.selection.main,u=this.moveToLine(this.domAtPos(c.anchor)),f=c.empty?u:this.moveToLine(this.domAtPos(c.head));if(ve.gecko&&c.empty&&!this.hasComposition&&B$(u)){let g=document.createTextNode("");this.view.observer.ignore(()=>u.node.insertBefore(g,u.node.childNodes[u.offset]||null)),u=f=new Kt(g,0),o=!0}let p=this.view.observer.selectionRange;(o||!p.focusNode||(!So(u.node,u.offset,p.anchorNode,p.anchorOffset)||!So(f.node,f.offset,p.focusNode,p.focusOffset))&&!this.suppressWidgetCursorChange(p,c))&&(this.view.observer.ignore(()=>{ve.android&&ve.chrome&&this.dom.contains(p.focusNode)&&Y$(p.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let g=Do(this.view.root);if(g)if(c.empty){if(ve.gecko){let O=V$(u.node,u.offset);if(O&&O!=3){let v=(O==1?tw:nw)(u.node,u.offset);v&&(u=new Kt(v.node,v.offset))}}g.collapse(u.node,u.offset),c.bidiLevel!=null&&g.caretBidiLevel!==void 0&&(g.caretBidiLevel=c.bidiLevel)}else if(g.extend){g.collapse(u.node,u.offset);try{g.extend(f.node,f.offset)}catch{}}else{let O=document.createRange();c.anchor>c.head&&([u,f]=[f,u]),O.setEnd(f.node,f.offset),O.setStart(u.node,u.offset),g.removeAllRanges(),g.addRange(O)}r&&this.view.root.activeElement==this.dom&&(this.dom.blur(),s&&s.focus())}),this.view.observer.setSelectionRange(u,f)),this.impreciseAnchor=u.precise?null:new Kt(p.anchorNode,p.anchorOffset),this.impreciseHead=f.precise?null:new Kt(p.focusNode,p.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&So(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==t.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,s=Do(e.root),{anchorNode:i,anchorOffset:r}=e.observer.selectionRange;if(!s||!t.empty||!t.assoc||!s.modify)return;let o=kt.find(this,t.head);if(!o)return;let c=o.posAtStart;if(t.head==c||t.head==c+o.length)return;let u=this.coordsAt(t.head,-1),f=this.coordsAt(t.head,1);if(!u||!f||u.bottom>f.top)return;let p=this.domAtPos(t.head+t.assoc);s.collapse(p.node,p.offset),s.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let g=e.observer.selectionRange;e.docView.posFromDOM(g.anchorNode,g.anchorOffset)!=t.from&&s.collapse(i,r)}moveToLine(e){let t=this.dom,s;if(e.node!=t)return e;for(let i=e.offset;!s&&i<t.childNodes.length;i++){let r=et.get(t.childNodes[i]);r instanceof kt&&(s=r.domAtPos(0))}for(let i=e.offset-1;!s&&i>=0;i--){let r=et.get(t.childNodes[i]);r instanceof kt&&(s=r.domAtPos(r.length))}return s?new Kt(s.node,s.offset,!0):e}nearest(e){for(let t=e;t;){let s=et.get(t);if(s&&s.rootView==this)return s;t=t.parentNode}return null}posFromDOM(e,t){let s=this.nearest(e);if(!s)throw new RangeError("Trying to find position for a DOM position outside of the document");return s.localPosFromDOM(e,t)+s.posAtStart}domAtPos(e){let{i:t,off:s}=this.childCursor().findPos(e,-1);for(;t<this.children.length-1;){let i=this.children[t];if(s<i.length||i instanceof kt)break;t++,s=0}return this.children[t].domAtPos(s)}coordsAt(e,t){let s=null,i=0;for(let r=this.length,o=this.children.length-1;o>=0;o--){let c=this.children[o],u=r-c.breakAfter,f=u-c.length;if(u<e)break;if(f<=e&&(f<e||c.covers(-1))&&(u>e||c.covers(1))&&(!s||c instanceof kt&&!(s instanceof kt&&t>=0)))s=c,i=f;else if(s&&f==e&&u==e&&c instanceof Us&&Math.abs(t)<2){if(c.deco.startSide<0)break;o&&(s=null)}r=f}return s?s.coordsAt(e-i,t):null}coordsForChar(e){let{i:t,off:s}=this.childPos(e,1),i=this.children[t];if(!(i instanceof kt))return null;for(;i.children.length;){let{i:c,off:u}=i.childPos(s,1);for(;;c++){if(c==i.children.length)return null;if((i=i.children[c]).length)break}s=u}if(!(i instanceof ls))return null;let r=Wt(i.text,s);if(r==s)return null;let o=cr(i.dom,s,r).getClientRects();for(let c=0;c<o.length;c++){let u=o[c];if(c==o.length-1||u.top<u.bottom&&u.left<u.right)return u}return null}measureVisibleLineHeights(e){let t=[],{from:s,to:i}=e,r=this.view.contentDOM.clientWidth,o=r>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,c=-1,u=this.view.textDirection==ot.LTR;for(let f=0,p=0;p<this.children.length;p++){let g=this.children[p],O=f+g.length;if(O>i)break;if(f>=s){let v=g.dom.getBoundingClientRect();if(t.push(v.height),o){let w=g.dom.lastChild,k=w?ol(w):[];if(k.length){let S=k[k.length-1],$=u?S.right-v.left:v.right-S.left;$>c&&(c=$,this.minWidth=r,this.minWidthFrom=f,this.minWidthTo=O)}}}f=O+g.breakAfter}return t}textDirectionAt(e){let{i:t}=this.childPos(e,1);return getComputedStyle(this.children[t].dom).direction=="rtl"?ot.RTL:ot.LTR}measureTextSize(){for(let r of this.children)if(r instanceof kt){let o=r.measureTextSize();if(o)return o}let e=document.createElement("div"),t,s,i;return e.className="cm-line",e.style.width="99999px",e.style.position="absolute",e.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.dom.appendChild(e);let r=ol(e.firstChild)[0];t=e.getBoundingClientRect().height,s=r?r.width/27:7,i=r?r.height:t,e.remove()}),{lineHeight:t,charWidth:s,textHeight:i}}childCursor(e=this.length){let t=this.children.length;return t&&(e-=this.children[--t].length),new sw(this.children,e,t)}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let s=0,i=0;;i++){let r=i==t.viewports.length?null:t.viewports[i],o=r?r.from-1:this.length;if(o>s){let c=(t.lineBlockAt(o).bottom-t.lineBlockAt(s).top)/this.view.scaleY;e.push(Pe.replace({widget:new Kf(c),block:!0,inclusive:!0,isBlockGap:!0}).range(s,o))}if(!r)break;s=r.to+1}return Pe.set(e)}updateDeco(){let e=1,t=this.view.state.facet(Io).map(r=>(this.dynamicDecorationMap[e++]=typeof r=="function")?r(this.view):r),s=!1,i=this.view.state.facet($w).map((r,o)=>{let c=typeof r=="function";return c&&(s=!0),c?r(this.view):r});for(i.length&&(this.dynamicDecorationMap[e++]=s,t.push(Ue.join(i))),this.decorations=[this.editContextFormatting,...t,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e<this.decorations.length;)this.dynamicDecorationMap[e++]=!1;return this.decorations}scrollIntoView(e){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(Sw))try{if(f(this.view,e.range,e))return!0}catch(p){kn(this.view.state,p,"scroll handler")}let{range:t}=e,s=this.coordsAt(t.head,t.empty?t.assoc:t.head>t.anchor?-1:1),i;if(!s)return;!t.empty&&(i=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(s={left:Math.min(s.left,i.left),top:Math.min(s.top,i.top),right:Math.max(s.right,i.right),bottom:Math.max(s.bottom,i.bottom)});let r=Yp(this.view),o={left:s.left-r.left,top:s.top-r.top,right:s.right+r.right,bottom:s.bottom+r.bottom},{offsetWidth:c,offsetHeight:u}=this.view.scrollDOM;k$(this.view.scrollDOM,o,t.head<t.anchor?-1:1,e.x,e.y,Math.max(Math.min(e.xMargin,c),-c),Math.max(Math.min(e.yMargin,u),-u),this.view.textDirection==ot.LTR)}}function B$(n){return n.node.nodeType==1&&n.node.firstChild&&(n.offset==0||n.node.childNodes[n.offset-1].contentEditable=="false")&&(n.offset==n.node.childNodes.length||n.node.childNodes[n.offset].contentEditable=="false")}function Pw(n,e){let t=n.observer.selectionRange;if(!t.focusNode)return null;let s=tw(t.focusNode,t.focusOffset),i=nw(t.focusNode,t.focusOffset),r=s||i;if(i&&s&&i.node!=s.node){let c=et.get(i.node);if(!c||c instanceof ls&&c.text!=i.node.nodeValue)r=i;else if(n.docView.lastCompositionAfterCursor){let u=et.get(s.node);!u||u instanceof ls&&u.text!=s.node.nodeValue||(r=i)}}if(n.docView.lastCompositionAfterCursor=r!=s,!r)return null;let o=e-r.offset;return{from:o,to:o+r.node.nodeValue.length,node:r.node}}function X$(n,e,t){let s=Pw(n,t);if(!s)return null;let{node:i,from:r,to:o}=s,c=i.nodeValue;if(/[\n\r]/.test(c)||n.state.doc.sliceString(s.from,s.to)!=c)return null;let u=e.invertedDesc,f=new Xn(u.mapPos(r),u.mapPos(o),r,o),p=[];for(let g=i.parentNode;;g=g.parentNode){let O=et.get(g);if(O instanceof qs)p.push({node:g,deco:O.mark});else{if(O instanceof kt||g.nodeName=="DIV"&&g.parentNode==n.contentDOM)return{range:f,text:i,marks:p,line:g};if(g!=n.contentDOM)p.push({node:g,deco:new Ho({inclusive:!0,attributes:Q$(g),tagName:g.tagName.toLowerCase()})});else return null}}}function V$(n,e){return n.nodeType!=1?0:(e&&n.childNodes[e-1].contentEditable=="false"?1:0)|(e<n.childNodes.length&&n.childNodes[e].contentEditable=="false"?2:0)}let W$=class{constructor(){this.changes=[]}compareRange(e,t){Yc(e,t,this.changes)}comparePoint(e,t){Yc(e,t,this.changes)}boundChange(e){Yc(e,e,this.changes)}};function U$(n,e,t){let s=new W$;return Ue.compare(n,e,t,s),s.changes}function Y$(n,e){for(let t=n;t&&t!=e;t=t.assignedSlot||t.parentNode)if(t.nodeType==1&&t.contentEditable=="false")return!0;return!1}function q$(n,e){let t=!1;return e&&n.iterChangedRanges((s,i)=>{s<e.to&&i>e.from&&(t=!0)}),t}function G$(n,e,t=1){let s=n.charCategorizer(e),i=n.doc.lineAt(e),r=e-i.from;if(i.length==0)return ie.cursor(e);r==0?t=1:r==i.length&&(t=-1);let o=r,c=r;t<0?o=Wt(i.text,r,!1):c=Wt(i.text,r);let u=s(i.text.slice(o,c));for(;o>0;){let f=Wt(i.text,o,!1);if(s(i.text.slice(f,o))!=u)break;o=f}for(;c<i.length;){let f=Wt(i.text,c);if(s(i.text.slice(c,f))!=u)break;c=f}return ie.range(o+i.from,c+i.from)}function H$(n,e){return e.left>n?e.left-n:Math.max(0,n-e.right)}function K$(n,e){return e.top>n?e.top-n:Math.max(0,n-e.bottom)}function Gh(n,e){return n.top<e.bottom-1&&n.bottom>e.top+1}function Ky(n,e){return e<n.top?{top:e,left:n.left,right:n.right,bottom:n.bottom}:n}function Jy(n,e){return e>n.bottom?{top:n.top,left:n.left,right:n.right,bottom:e}:n}function sp(n,e,t){let s,i,r,o,c=!1,u,f,p,g;for(let w=n.firstChild;w;w=w.nextSibling){let k=ol(w);for(let S=0;S<k.length;S++){let $=k[S];i&&Gh(i,$)&&($=Ky(Jy($,i.bottom),i.top));let b=H$(e,$),C=K$(t,$);if(b==0&&C==0)return w.nodeType==3?ev(w,e,t):sp(w,e,t);(!s||o>C||o==C&&r>b)&&(s=w,i=$,r=b,o=C,c=b?e<$.left?S>0:S<k.length-1:!0),b==0?t>$.bottom&&(!p||p.bottom<$.bottom)?(u=w,p=$):t<$.top&&(!g||g.top>$.top)&&(f=w,g=$):p&&Gh(p,$)?p=Jy(p,$.bottom):g&&Gh(g,$)&&(g=Ky(g,$.top))}}if(p&&p.bottom>=t?(s=u,i=p):g&&g.top<=t&&(s=f,i=g),!s)return{node:n,offset:0};let O=Math.max(i.left,Math.min(i.right,e));if(s.nodeType==3)return ev(s,O,t);if(c&&s.contentEditable!="false")return sp(s,O,t);let v=Array.prototype.indexOf.call(n.childNodes,s)+(e>=(i.left+i.right)/2?1:0);return{node:n,offset:v}}function ev(n,e,t){let s=n.nodeValue.length,i=-1,r=1e9,o=0;for(let c=0;c<s;c++){let u=cr(n,c,c+1).getClientRects();for(let f=0;f<u.length;f++){let p=u[f];if(p.top==p.bottom)continue;o||(o=e-p.left);let g=(p.top>t?p.top-t:t-p.bottom)-1;if(p.left-1<=e&&p.right+1>=e&&g<r){let O=e>=(p.left+p.right)/2,v=O;if((ve.chrome||ve.gecko)&&cr(n,c).getBoundingClientRect().left==p.right&&(v=!O),g<=0)return{node:n,offset:c+(v?1:0)};i=c+(v?1:0),r=g}}}return{node:n,offset:i>-1?i:o>0?n.nodeValue.length:0}}function jw(n,e,t,s=-1){var i,r;let o=n.contentDOM.getBoundingClientRect(),c=o.top+n.viewState.paddingTop,u,{docHeight:f}=n.viewState,{x:p,y:g}=e,O=g-c;if(O<0)return 0;if(O>f)return n.state.doc.length;for(let T=n.viewState.heightOracle.textHeight/2,P=!1;u=n.elementAtHeight(O),u.type!=on.Text;)for(;O=s>0?u.bottom+T:u.top-T,!(O>=0&&O<=f);){if(P)return t?null:0;P=!0,s=-s}g=c+O;let v=u.from;if(v<n.viewport.from)return n.viewport.from==0?0:t?null:tv(n,o,u,p,g);if(v>n.viewport.to)return n.viewport.to==n.state.doc.length?n.state.doc.length:t?null:tv(n,o,u,p,g);let w=n.dom.ownerDocument,k=n.root.elementFromPoint?n.root:w,S=k.elementFromPoint(p,g);S&&!n.contentDOM.contains(S)&&(S=null),S||(p=Math.max(o.left+1,Math.min(o.right-1,p)),S=k.elementFromPoint(p,g),S&&!n.contentDOM.contains(S)&&(S=null));let $,b=-1;if(S&&((i=n.docView.nearest(S))===null||i===void 0?void 0:i.isEditable)!=!1){if(w.caretPositionFromPoint){let T=w.caretPositionFromPoint(p,g);T&&({offsetNode:$,offset:b}=T)}else if(w.caretRangeFromPoint){let T=w.caretRangeFromPoint(p,g);T&&({startContainer:$,startOffset:b}=T)}$&&(!n.contentDOM.contains($)||ve.safari&&J$($,b,p)||ve.chrome&&eC($,b,p))&&($=void 0),$&&(b=Math.min(Ps($),b))}if(!$||!n.docView.dom.contains($)){let T=kt.find(n.docView,v);if(!T)return O>u.top+u.height/2?u.to:u.from;({node:$,offset:b}=sp(T.dom,p,g))}let C=n.docView.nearest($);if(!C)return null;if(C.isWidget&&((r=C.dom)===null||r===void 0?void 0:r.nodeType)==1){let T=C.dom.getBoundingClientRect();return e.y<T.top||e.y<=T.bottom&&e.x<=(T.left+T.right)/2?C.posAtStart:C.posAtEnd}else return C.localPosFromDOM($,b)+C.posAtStart}function tv(n,e,t,s,i){let r=Math.round((s-e.left)*n.defaultCharacterWidth);if(n.lineWrapping&&t.height>n.defaultLineHeight*1.5){let c=n.viewState.heightOracle.textHeight,u=Math.floor((i-t.top-(n.defaultLineHeight-c)*.5)/c);r+=u*n.viewState.heightOracle.lineLength}let o=n.state.sliceDoc(t.from,t.to);return t.from+Ff(o,r,n.state.tabSize)}function Qw(n,e,t){let s,i=n;if(n.nodeType!=3||e!=(s=n.nodeValue.length))return!1;for(;;){let r=i.nextSibling;if(r){if(r.nodeName=="BR")break;return!1}else{let o=i.parentNode;if(!o||o.nodeName=="DIV")break;i=o}}return cr(n,s-1,s).getBoundingClientRect().right>t}function J$(n,e,t){return Qw(n,e,t)}function eC(n,e,t){if(e!=0)return Qw(n,e,t);for(let i=n;;){let r=i.parentNode;if(!r||r.nodeType!=1||r.firstChild!=i)return!1;if(r.classList.contains("cm-line"))break;i=r}let s=n.nodeType==1?n.getBoundingClientRect():cr(n,0,Math.max(n.nodeValue.length,1)).getBoundingClientRect();return t-s.left>5}function ip(n,e,t){let s=n.lineBlockAt(e);if(Array.isArray(s.type)){let i;for(let r of s.type){if(r.from>e)break;if(!(r.to<e)){if(r.from<e&&r.to>e)return r;(!i||r.type==on.Text&&(i.type!=r.type||(t<0?r.from<e:r.to>e)))&&(i=r)}}return i||s}return s}function tC(n,e,t,s){let i=ip(n,e.head,e.assoc||-1),r=!s||i.type!=on.Text||!(n.lineWrapping||i.widgetLineBreaks)?null:n.coordsAtPos(e.assoc<0&&e.head>i.from?e.head-1:e.head);if(r){let o=n.dom.getBoundingClientRect(),c=n.textDirectionAt(i.from),u=n.posAtCoords({x:t==(c==ot.LTR)?o.right-1:o.left+1,y:(r.top+r.bottom)/2});if(u!=null)return ie.cursor(u,t?-1:1)}return ie.cursor(t?i.to:i.from,t?-1:1)}function nv(n,e,t,s){let i=n.state.doc.lineAt(e.head),r=n.bidiSpans(i),o=n.textDirectionAt(i.from);for(let c=e,u=null;;){let f=Z$(i,r,o,c,t),p=pw;if(!f){if(i.number==(t?n.state.doc.lines:1))return c;p=`
|
|
15
|
+
`,i=n.state.doc.line(i.number+(t?1:-1)),r=n.bidiSpans(i),f=n.visualLineSide(i,!t)}if(u){if(!u(p))return c}else{if(!s)return f;u=s(p)}c=f}}function nC(n,e,t){let s=n.state.charCategorizer(e),i=s(t);return r=>{let o=s(r);return i==ut.Space&&(i=o),i==o}}function sC(n,e,t,s){let i=e.head,r=t?1:-1;if(i==(t?n.state.doc.length:0))return ie.cursor(i,e.assoc);let o=e.goalColumn,c,u=n.contentDOM.getBoundingClientRect(),f=n.coordsAtPos(i,e.assoc||-1),p=n.documentTop;if(f)o==null&&(o=f.left-u.left),c=r<0?f.top:f.bottom;else{let v=n.viewState.lineBlockAt(i);o==null&&(o=Math.min(u.right-u.left,n.defaultCharacterWidth*(i-v.from))),c=(r<0?v.top:v.bottom)+p}let g=u.left+o,O=s??n.viewState.heightOracle.textHeight>>1;for(let v=0;;v+=10){let w=c+(O+v)*r,k=jw(n,{x:g,y:w},!1,r);if(w<u.top||w>u.bottom||(r<0?k<i:k>i)){let S=n.docView.coordsForChar(k),$=!S||w<S.top?-1:1;return ie.cursor(k,$,void 0,o)}}}function _o(n,e,t){for(;;){let s=0;for(let i of n)i.between(e-1,e+1,(r,o,c)=>{if(e>r&&e<o){let u=s||t||(e-r<o-e?-1:1);e=u<0?r:o,s=u}});if(!s)return e}}function Nw(n,e){let t=null;for(let s=0;s<e.ranges.length;s++){let i=e.ranges[s],r=null;if(i.empty){let o=_o(n,i.from,0);o!=i.from&&(r=ie.cursor(o,-1))}else{let o=_o(n,i.from,-1),c=_o(n,i.to,1);(o!=i.from||c!=i.to)&&(r=ie.range(i.from==i.anchor?o:c,i.from==i.head?o:c))}r&&(t||(t=e.ranges.slice()),t[s]=r)}return t?ie.create(t,e.mainIndex):e}function Hh(n,e,t){let s=_o(n.state.facet(Jo).map(i=>i(n)),t.from,e.head>t.from?-1:1);return s==t.from?t:ie.cursor(s,s<t.from?1:-1)}const go="";class iC{constructor(e,t){this.points=e,this.text="",this.lineSeparator=t.facet(ze.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=go}readRange(e,t){if(!e)return this;let s=e.parentNode;for(let i=e;;){this.findPointBefore(s,i);let r=this.text.length;this.readNode(i);let o=i.nextSibling;if(o==t)break;let c=et.get(i),u=et.get(o);(c&&u?c.breakAfter:(c?c.breakAfter:ou(i))||ou(o)&&(i.nodeName!="BR"||i.cmIgnore)&&this.text.length>r)&&!lC(o,t)&&this.lineBreak(),i=o}return this.findPointBefore(s,t),this}readTextNode(e){let t=e.nodeValue;for(let s of this.points)s.node==e&&(s.pos=this.text.length+Math.min(s.offset,t.length));for(let s=0,i=this.lineSeparator?null:/\r\n?|\n/g;;){let r=-1,o=1,c;if(this.lineSeparator?(r=t.indexOf(this.lineSeparator,s),o=this.lineSeparator.length):(c=i.exec(t))&&(r=c.index,o=c[0].length),this.append(t.slice(s,r<0?t.length:r)),r<0)break;if(this.lineBreak(),o>1)for(let u of this.points)u.node==e&&u.pos>this.text.length&&(u.pos-=o-1);s=r+o}}readNode(e){if(e.cmIgnore)return;let t=et.get(e),s=t&&t.overrideDOMText;if(s!=null){this.findPointInside(e,s.length);for(let i=s.iter();!i.next().done;)i.lineBreak?this.lineBreak():this.append(i.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,t){for(let s of this.points)s.node==e&&e.childNodes[s.offset]==t&&(s.pos=this.text.length)}findPointInside(e,t){for(let s of this.points)(e.nodeType==3?s.node==e:e.contains(s.node))&&(s.pos=this.text.length+(rC(e,s.node,s.offset)?t:0))}}function rC(n,e,t){for(;;){if(!e||t<Ps(e))return!1;if(e==n)return!0;t=ar(e)+1,e=e.parentNode}}function lC(n,e){let t;for(;!(n==e||!n);n=n.nextSibling){let s=et.get(n);if(!(s?.isWidget||n.cmIgnore))return!1;s&&(t||(t=[])).push(s)}if(t)for(let s of t){let i=s.overrideDOMText;if(i?.length)return!1}return!0}class sv{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class oC{constructor(e,t,s,i){this.typeOver=i,this.bounds=null,this.text="",this.domChanged=t>-1;let{impreciseHead:r,impreciseAnchor:o}=e.docView;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=e.docView.domBoundsAround(t,s,0))){let c=r||o?[]:cC(e),u=new iC(c,e.state);u.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=u.text,this.newSel=uC(c,this.bounds.from)}else{let c=e.observer.selectionRange,u=r&&r.node==c.focusNode&&r.offset==c.focusOffset||!qf(e.contentDOM,c.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(c.focusNode,c.focusOffset),f=o&&o.node==c.anchorNode&&o.offset==c.anchorOffset||!qf(e.contentDOM,c.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(c.anchorNode,c.anchorOffset),p=e.viewport;if((ve.ios||ve.chrome)&&e.state.selection.main.empty&&u!=f&&(p.from>0||p.to<e.state.doc.length)){let g=Math.min(u,f),O=Math.max(u,f),v=p.from-g,w=p.to-O;(v==0||v==1||g==0)&&(w==0||w==-1||O==e.state.doc.length)&&(u=0,f=e.state.doc.length)}this.newSel=ie.single(f,u)}}}function Ew(n,e){let t,{newSel:s}=e,i=n.state.selection.main,r=n.inputState.lastKeyTime>Date.now()-100?n.inputState.lastKeyCode:-1;if(e.bounds){let{from:o,to:c}=e.bounds,u=i.from,f=null;(r===8||ve.android&&e.text.length<c-o)&&(u=i.to,f="end");let p=Aw(n.state.doc.sliceString(o,c,go),e.text,u-o,f);p&&(ve.chrome&&r==13&&p.toB==p.from+2&&e.text.slice(p.from,p.toB)==go+go&&p.toB--,t={from:o+p.from,to:o+p.toA,insert:Be.of(e.text.slice(p.from,p.toB).split(go))})}else s&&(!n.hasFocus&&n.state.facet(Ws)||s.main.eq(i))&&(s=null);if(!t&&!s)return!1;if(!t&&e.typeOver&&!i.empty&&s&&s.main.empty?t={from:i.from,to:i.to,insert:n.state.doc.slice(i.from,i.to)}:(ve.mac||ve.android)&&t&&t.from==t.to&&t.from==i.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(s&&t.insert.length==2&&(s=ie.single(s.main.anchor-1,s.main.head-1)),t={from:t.from,to:t.to,insert:Be.of([t.insert.toString().replace("."," ")])}):t&&t.from>=i.from&&t.to<=i.to&&(t.from!=i.from||t.to!=i.to)&&i.to-i.from-(t.to-t.from)<=4?t={from:i.from,to:i.to,insert:n.state.doc.slice(i.from,t.from).append(t.insert).append(n.state.doc.slice(t.to,i.to))}:ve.chrome&&t&&t.from==t.to&&t.from==i.head&&t.insert.toString()==`
|
|
16
|
+
`&&n.lineWrapping&&(s&&(s=ie.single(s.main.anchor-1,s.main.head-1)),t={from:i.from,to:i.to,insert:Be.of([" "])}),t)return qp(n,t,s,r);if(s&&!s.main.eq(i)){let o=!1,c="select";return n.inputState.lastSelectionTime>Date.now()-50&&(n.inputState.lastSelectionOrigin=="select"&&(o=!0),c=n.inputState.lastSelectionOrigin,c=="select.pointer"&&(s=Nw(n.state.facet(Jo).map(u=>u(n)),s))),n.dispatch({selection:s,scrollIntoView:o,userEvent:c}),!0}else return!1}function qp(n,e,t,s=-1){if(ve.ios&&n.inputState.flushIOSKey(e))return!0;let i=n.state.selection.main;if(ve.android&&(e.to==i.to&&(e.from==i.from||e.from==i.from-1&&n.state.sliceDoc(e.from,i.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&tl(n.contentDOM,"Enter",13)||(e.from==i.from-1&&e.to==i.to&&e.insert.length==0||s==8&&e.insert.length<e.to-e.from&&e.to>i.head)&&tl(n.contentDOM,"Backspace",8)||e.from==i.from&&e.to==i.to+1&&e.insert.length==0&&tl(n.contentDOM,"Delete",46)))return!0;let r=e.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let o,c=()=>o||(o=aC(n,e,t));return n.state.facet(vw).some(u=>u(n,e.from,e.to,r,c))||n.dispatch(c()),!0}function aC(n,e,t){let s,i=n.state,r=i.selection.main,o=-1;if(e.from==e.to&&e.from<r.from||e.from>r.to){let u=e.from<r.from?-1:1,f=u<0?r.from:r.to,p=_o(i.facet(Jo).map(g=>g(n)),f,u);e.from==p&&(o=p)}if(o>-1)s={changes:e,selection:ie.cursor(e.from+e.insert.length,-1)};else if(e.from>=r.from&&e.to<=r.to&&e.to-e.from>=(r.to-r.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&n.inputState.composing<0){let u=r.from<e.from?i.sliceDoc(r.from,e.from):"",f=r.to>e.to?i.sliceDoc(e.to,r.to):"";s=i.replaceSelection(n.state.toText(u+e.insert.sliceString(0,void 0,n.state.lineBreak)+f))}else{let u=i.changes(e),f=t&&t.main.to<=u.newLength?t.main:void 0;if(i.selection.ranges.length>1&&n.inputState.composing>=0&&e.to<=r.to&&e.to>=r.to-10){let p=n.state.sliceDoc(e.from,e.to),g,O=t&&Pw(n,t.main.head);if(O){let k=e.insert.length-(e.to-e.from);g={from:O.from,to:O.to-k}}else g=n.state.doc.lineAt(r.head);let v=r.to-e.to,w=r.to-r.from;s=i.changeByRange(k=>{if(k.from==r.from&&k.to==r.to)return{changes:u,range:f||k.map(u)};let S=k.to-v,$=S-p.length;if(k.to-k.from!=w||n.state.sliceDoc($,S)!=p||k.to>=g.from&&k.from<=g.to)return{range:k};let b=i.changes({from:$,to:S,insert:e.insert}),C=k.to-r.to;return{changes:b,range:f?ie.range(Math.max(0,f.anchor+C),Math.max(0,f.head+C)):k.map(b)}})}else s={changes:u,selection:f&&i.selection.replaceRange(f)}}let c="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,c+=".compose",n.inputState.compositionFirstChange&&(c+=".start",n.inputState.compositionFirstChange=!1)),i.update(s,{userEvent:c,scrollIntoView:!0})}function Aw(n,e,t,s){let i=Math.min(n.length,e.length),r=0;for(;r<i&&n.charCodeAt(r)==e.charCodeAt(r);)r++;if(r==i&&n.length==e.length)return null;let o=n.length,c=e.length;for(;o>0&&c>0&&n.charCodeAt(o-1)==e.charCodeAt(c-1);)o--,c--;if(s=="end"){let u=Math.max(0,r-Math.min(o,c));t-=o+u-r}if(o<r&&n.length<e.length){let u=t<=r&&t>=o?r-t:0;r-=u,c=r+(c-o),o=r}else if(c<r){let u=t<=r&&t>=c?r-t:0;r-=u,o=r+(o-c),c=r}return{from:r,toA:o,toB:c}}function cC(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:s,focusNode:i,focusOffset:r}=n.observer.selectionRange;return t&&(e.push(new sv(t,s)),(i!=t||r!=s)&&e.push(new sv(i,r))),e}function uC(n,e){if(n.length==0)return null;let t=n[0].pos,s=n.length==2?n[1].pos:t;return t>-1&&s>-1?ie.single(t+e,s+e):null}class dC{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=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.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,ve.safari&&e.contentDOM.addEventListener("input",()=>null),ve.gecko&&CC(e.contentDOM.ownerDocument)}handleEvent(e){!vC(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,t){let s=this.handlers[e];if(s){for(let i of s.observers)i(this.view,t);for(let i of s.handlers){if(t.defaultPrevented)break;if(i(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=hC(e),s=this.handlers,i=this.view.contentDOM;for(let r in t)if(r!="scroll"){let o=!t[r].handlers.length,c=s[r];c&&o!=!c.handlers.length&&(i.removeEventListener(r,this.handleEvent),c=null),c||i.addEventListener(r,this.handleEvent,{passive:o})}for(let r in s)r!="scroll"&&!t[r]&&i.removeEventListener(r,this.handleEvent);this.handlers=t}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&&Rw.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),ve.android&&ve.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let t;return ve.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&((t=Mw.find(s=>s.keyCode==e.keyCode))&&!e.ctrlKey||fC.indexOf(e.key)>-1&&e.ctrlKey&&!e.shiftKey)?(this.pendingIOSKey=t||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(e){let t=this.pendingIOSKey;return!t||t.key=="Enter"&&e&&e.from<e.to&&/^\S+$/.test(e.insert.toString())?!1:(this.pendingIOSKey=void 0,tl(this.view.contentDOM,t.key,t.keyCode,t instanceof KeyboardEvent?t:void 0))}ignoreDuringComposition(e){return!/^key/.test(e.type)||e.synthetic?!1:this.composing>0?!0:ve.safari&&!ve.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 iv(n,e){return(t,s)=>{try{return e.call(n,s,t)}catch(i){kn(t.state,i)}}}function hC(n){let e=Object.create(null);function t(s){return e[s]||(e[s]={observers:[],handlers:[]})}for(let s of n){let i=s.spec,r=i&&i.plugin.domEventHandlers,o=i&&i.plugin.domEventObservers;if(r)for(let c in r){let u=r[c];u&&t(c).handlers.push(iv(s.value,u))}if(o)for(let c in o){let u=o[c];u&&t(c).observers.push(iv(s.value,u))}}for(let s in os)t(s).handlers.push(os[s]);for(let s in Vn)t(s).observers.push(Vn[s]);return e}const Mw=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],fC="dthko",Rw=[16,17,18,20,91,92,224,225],bc=6;function _c(n){return Math.max(0,n)*.7+8}function pC(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}class mC{constructor(e,t,s,i){this.view=e,this.startEvent=t,this.style=s,this.mustSelect=i,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=S$(e.contentDOM),this.atoms=e.state.facet(Jo).map(o=>o(e));let r=e.contentDOM.ownerDocument;r.addEventListener("mousemove",this.move=this.move.bind(this)),r.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(ze.allowMultipleSelections)&&gC(e,t),this.dragging=yC(e,t)&&Lw(t)==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&&pC(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let t=0,s=0,i=0,r=0,o=this.view.win.innerWidth,c=this.view.win.innerHeight;this.scrollParents.x&&({left:i,right:o}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:r,bottom:c}=this.scrollParents.y.getBoundingClientRect());let u=Yp(this.view);e.clientX-u.left<=i+bc?t=-_c(i-e.clientX):e.clientX+u.right>=o-bc&&(t=_c(e.clientX-o)),e.clientY-u.top<=r+bc?s=-_c(r-e.clientY):e.clientY+u.bottom>=c-bc&&(s=_c(e.clientY-c)),this.setScrollSpeed(t,s)}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,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:t}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),t&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=t,t=0),(e||t)&&this.view.win.scrollBy(e,t),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:t}=this,s=Nw(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!s.eq(t.state.selection,this.dragging===!1))&&this.view.dispatch({selection:s,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(t=>t.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function gC(n,e){let t=n.state.facet(mw);return t.length?t[0](e):ve.mac?e.metaKey:e.ctrlKey}function OC(n,e){let t=n.state.facet(gw);return t.length?t[0](e):ve.mac?!e.altKey:!e.ctrlKey}function yC(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let s=Do(n.root);if(!s||s.rangeCount==0)return!0;let i=s.getRangeAt(0).getClientRects();for(let r=0;r<i.length;r++){let o=i[r];if(o.left<=e.clientX&&o.right>=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function vC(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,s;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(s=et.get(t))&&s.ignoreEvent(e))return!1;return!0}const os=Object.create(null),Vn=Object.create(null),Dw=ve.ie&&ve.ie_version<15||ve.ios&&ve.webkit_version<604;function xC(n){let e=n.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{n.focus(),t.remove(),Iw(n,t.value)},50)}function Lu(n,e,t){for(let s of n.facet(e))t=s(t,n);return t}function Iw(n,e){e=Lu(n.state,Vp,e);let{state:t}=n,s,i=1,r=t.toText(e),o=r.lines==t.selection.ranges.length;if(rp!=null&&t.selection.ranges.every(u=>u.empty)&&rp==r.toString()){let u=-1;s=t.changeByRange(f=>{let p=t.doc.lineAt(f.from);if(p.from==u)return{range:f};u=p.from;let g=t.toText((o?r.line(i++).text:e)+t.lineBreak);return{changes:{from:p.from,insert:g},range:ie.cursor(f.from+g.length)}})}else o?s=t.changeByRange(u=>{let f=r.line(i++);return{changes:{from:u.from,to:u.to,insert:f.text},range:ie.cursor(u.from+f.length)}}):s=t.replaceSelection(r);n.dispatch(s,{userEvent:"input.paste",scrollIntoView:!0})}Vn.scroll=n=>{n.inputState.lastScrollTop=n.scrollDOM.scrollTop,n.inputState.lastScrollLeft=n.scrollDOM.scrollLeft};os.keydown=(n,e)=>(n.inputState.setSelectionOrigin("select"),e.keyCode==27&&n.inputState.tabFocusMode!=0&&(n.inputState.tabFocusMode=Date.now()+2e3),!1);Vn.touchstart=(n,e)=>{n.inputState.lastTouchTime=Date.now(),n.inputState.setSelectionOrigin("select.pointer")};Vn.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};os.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let s of n.state.facet(Ow))if(t=s(n,e),t)break;if(!t&&e.button==0&&(t=SC(n,e)),t){let s=!n.hasFocus;n.inputState.startMouseSelection(new mC(n,e,t,s)),s&&n.observer.ignore(()=>{K0(n.contentDOM);let r=n.root.activeElement;r&&!r.contains(n.contentDOM)&&r.blur()});let i=n.inputState.mouseSelection;if(i)return i.start(e),i.dragging===!1}else n.inputState.setSelectionOrigin("select.pointer");return!1};function rv(n,e,t,s){if(s==1)return ie.cursor(e,t);if(s==2)return G$(n.state,e,t);{let i=kt.find(n.docView,e),r=n.state.doc.lineAt(i?i.posAtEnd:e),o=i?i.posAtStart:r.from,c=i?i.posAtEnd:r.to;return c<n.state.doc.length&&c==r.to&&c++,ie.range(o,c)}}let lv=(n,e,t)=>e>=t.top&&e<=t.bottom&&n>=t.left&&n<=t.right;function wC(n,e,t,s){let i=kt.find(n.docView,e);if(!i)return 1;let r=e-i.posAtStart;if(r==0)return 1;if(r==i.length)return-1;let o=i.coordsAt(r,-1);if(o&&lv(t,s,o))return-1;let c=i.coordsAt(r,1);return c&&lv(t,s,c)?1:o&&o.bottom>=s?-1:1}function ov(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:wC(n,t,e.clientX,e.clientY)}}const kC=ve.ie&&ve.ie_version<=11;let av=null,cv=0,uv=0;function Lw(n){if(!kC)return n.detail;let e=av,t=uv;return av=n,uv=Date.now(),cv=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(cv+1)%3:1}function SC(n,e){let t=ov(n,e),s=Lw(e),i=n.state.selection;return{update(r){r.docChanged&&(t.pos=r.changes.mapPos(t.pos),i=i.map(r.changes))},get(r,o,c){let u=ov(n,r),f,p=rv(n,u.pos,u.bias,s);if(t.pos!=u.pos&&!o){let g=rv(n,t.pos,t.bias,s),O=Math.min(g.from,p.from),v=Math.max(g.to,p.to);p=O<p.from?ie.range(O,v):ie.range(v,O)}return o?i.replaceRange(i.main.extend(p.from,p.to)):c&&s==1&&i.ranges.length>1&&(f=bC(i,u.pos))?f:c?i.addRange(p):ie.create([p])}}}function bC(n,e){for(let t=0;t<n.ranges.length;t++){let{from:s,to:i}=n.ranges[t];if(s<=e&&i>=e)return ie.create(n.ranges.slice(0,t).concat(n.ranges.slice(t+1)),n.mainIndex==t?0:n.mainIndex-(n.mainIndex>t?1:0))}return null}os.dragstart=(n,e)=>{let{selection:{main:t}}=n.state;if(e.target.draggable){let i=n.docView.nearest(e.target);if(i&&i.isWidget){let r=i.posAtStart,o=r+i.length;(r>=t.to||o<=t.from)&&(t=ie.range(r,o))}}let{inputState:s}=n;return s.mouseSelection&&(s.mouseSelection.dragging=!0),s.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",Lu(n.state,Wp,n.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};os.dragend=n=>(n.inputState.draggedContent=null,!1);function dv(n,e,t,s){if(t=Lu(n.state,Vp,t),!t)return;let i=n.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:r}=n.inputState,o=s&&r&&OC(n,e)?{from:r.from,to:r.to}:null,c={from:i,insert:t},u=n.state.changes(o?[o,c]:c);n.focus(),n.dispatch({changes:u,selection:{anchor:u.mapPos(i,-1),head:u.mapPos(i,1)},userEvent:o?"move.drop":"input.drop"}),n.inputState.draggedContent=null}os.drop=(n,e)=>{if(!e.dataTransfer)return!1;if(n.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let s=Array(t.length),i=0,r=()=>{++i==t.length&&dv(n,e,s.filter(o=>o!=null).join(n.state.lineBreak),!1)};for(let o=0;o<t.length;o++){let c=new FileReader;c.onerror=r,c.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(c.result)||(s[o]=c.result),r()},c.readAsText(t[o])}return!0}else{let s=e.dataTransfer.getData("Text");if(s)return dv(n,e,s,!0),!0}return!1};os.paste=(n,e)=>{if(n.state.readOnly)return!0;n.observer.flush();let t=Dw?null:e.clipboardData;return t?(Iw(n,t.getData("text/plain")||t.getData("text/uri-list")),!0):(xC(n),!1)};function _C(n,e){let t=n.dom.parentNode;if(!t)return;let s=t.appendChild(document.createElement("textarea"));s.style.cssText="position: fixed; left: -10000px; top: 10px",s.value=e,s.focus(),s.selectionEnd=e.length,s.selectionStart=0,setTimeout(()=>{s.remove(),n.focus()},50)}function $C(n){let e=[],t=[],s=!1;for(let i of n.selection.ranges)i.empty||(e.push(n.sliceDoc(i.from,i.to)),t.push(i));if(!e.length){let i=-1;for(let{from:r}of n.selection.ranges){let o=n.doc.lineAt(r);o.number>i&&(e.push(o.text),t.push({from:o.from,to:Math.min(n.doc.length,o.to+1)})),i=o.number}s=!0}return{text:Lu(n,Wp,e.join(n.lineBreak)),ranges:t,linewise:s}}let rp=null;os.copy=os.cut=(n,e)=>{let{text:t,ranges:s,linewise:i}=$C(n.state);if(!t&&!i)return!1;rp=i?t:null,e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:s,scrollIntoView:!0,userEvent:"delete.cut"});let r=Dw?null:e.clipboardData;return r?(r.clearData(),r.setData("text/plain",t),!0):(_C(n,t),!1)};const Zw=js.define();function zw(n,e){let t=[];for(let s of n.facet(xw)){let i=s(n,e);i&&t.push(i)}return t.length?n.update({effects:t,annotations:Zw.of(!0)}):null}function Fw(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=zw(n.state,e);t?n.dispatch(t):n.update([])}},10)}Vn.focus=n=>{n.inputState.lastFocusTime=Date.now(),!n.scrollDOM.scrollTop&&(n.inputState.lastScrollTop||n.inputState.lastScrollLeft)&&(n.scrollDOM.scrollTop=n.inputState.lastScrollTop,n.scrollDOM.scrollLeft=n.inputState.lastScrollLeft),Fw(n)};Vn.blur=n=>{n.observer.clearSelectionRange(),Fw(n)};Vn.compositionstart=Vn.compositionupdate=n=>{n.observer.editContext||(n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0&&(n.inputState.composing=0))};Vn.compositionend=n=>{n.observer.editContext||(n.inputState.composing=-1,n.inputState.compositionEndedAt=Date.now(),n.inputState.compositionPendingKey=!0,n.inputState.compositionPendingChange=n.observer.pendingRecords().length>0,n.inputState.compositionFirstChange=null,ve.chrome&&ve.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50))};Vn.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};os.beforeinput=(n,e)=>{var t,s;if(e.inputType=="insertReplacementText"&&n.observer.editContext){let r=(t=e.dataTransfer)===null||t===void 0?void 0:t.getData("text/plain"),o=e.getTargetRanges();if(r&&o.length){let c=o[0],u=n.posAtDOM(c.startContainer,c.startOffset),f=n.posAtDOM(c.endContainer,c.endOffset);return qp(n,{from:u,to:f,insert:n.state.toText(r)},null),!0}}let i;if(ve.chrome&&ve.android&&(i=Mw.find(r=>r.inputType==e.inputType))&&(n.observer.delayAndroidKey(i.key,i.keyCode),i.key=="Backspace"||i.key=="Delete")){let r=((s=window.visualViewport)===null||s===void 0?void 0:s.height)||0;setTimeout(()=>{var o;(((o=window.visualViewport)===null||o===void 0?void 0:o.height)||0)>r+10&&n.hasFocus&&(n.contentDOM.blur(),n.focus())},100)}return ve.ios&&e.inputType=="deleteContentForward"&&n.observer.flushSoon(),ve.safari&&e.inputType=="insertText"&&n.inputState.composing>=0&&setTimeout(()=>Vn.compositionend(n,e),20),!1};const hv=new Set;function CC(n){hv.has(n)||(hv.add(n),n.addEventListener("copy",()=>{}),n.addEventListener("cut",()=>{}))}const fv=["pre-wrap","normal","pre-line","break-spaces"];let ul=!1;function pv(){ul=!1}class TC{constructor(e){this.lineWrapping=e,this.doc=Be.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let s=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(s+=Math.max(0,Math.ceil((t-e-s*this.lineLength*.5)/this.lineLength))),this.lineHeight*s}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 fv.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let s=0;s<e.length;s++){let i=e[s];i<0?s++:this.heightSamples[Math.floor(i*10)]||(t=!0,this.heightSamples[Math.floor(i*10)]=!0)}return t}refresh(e,t,s,i,r,o){let c=fv.indexOf(e)>-1,u=Math.round(t)!=Math.round(this.lineHeight)||this.lineWrapping!=c;if(this.lineWrapping=c,this.lineHeight=t,this.charWidth=s,this.textHeight=i,this.lineLength=r,u){this.heightSamples={};for(let f=0;f<o.length;f++){let p=o[f];p<0?f++:this.heightSamples[Math.floor(p*10)]=!0}}return u}}class PC{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class bs{constructor(e,t,s,i,r){this.from=e,this.length=t,this.top=s,this.height=i,this._content=r}get type(){return typeof this._content=="number"?on.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 Pi?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let t=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new bs(this.from,this.length+e.length,this.top,this.height+e.height,t)}}var lt=(function(n){return n[n.ByPos=0]="ByPos",n[n.ByHeight=1]="ByHeight",n[n.ByPosNoHeight=2]="ByPosNoHeight",n})(lt||(lt={}));const qc=.001;class an{constructor(e,t,s=2){this.length=e,this.height=t,this.flags=s}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)>qc&&(ul=!0),this.height=e)}replace(e,t,s){return an.of(s)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,s,i){let r=this,o=s.doc;for(let c=i.length-1;c>=0;c--){let{fromA:u,toA:f,fromB:p,toB:g}=i[c],O=r.lineAt(u,lt.ByPosNoHeight,s.setDoc(t),0,0),v=O.to>=f?O:r.lineAt(f,lt.ByPosNoHeight,s,0,0);for(g+=v.to-f,f=v.to;c>0&&O.from<=i[c-1].toA;)u=i[c-1].fromA,p=i[c-1].fromB,c--,u<O.from&&(O=r.lineAt(u,lt.ByPosNoHeight,s,0,0));p+=O.from-u,u=O.from;let w=Gp.build(s.setDoc(o),e,p,g);r=uu(r,r.replace(u,f,w))}return r.updateHeight(s,0)}static empty(){return new Nn(0,0)}static of(e){if(e.length==1)return e[0];let t=0,s=e.length,i=0,r=0;for(;;)if(t==s)if(i>r*2){let c=e[t-1];c.break?e.splice(--t,1,c.left,null,c.right):e.splice(--t,1,c.left,c.right),s+=1+c.break,i-=c.size}else if(r>i*2){let c=e[s];c.break?e.splice(s,1,c.left,null,c.right):e.splice(s,1,c.left,c.right),s+=2+c.break,r-=c.size}else break;else if(i<r){let c=e[t++];c&&(i+=c.size)}else{let c=e[--s];c&&(r+=c.size)}let o=0;return e[t-1]==null?(o=1,t--):e[t]==null&&(o=1,s++),new jC(an.of(e.slice(0,t)),o,an.of(e.slice(s)))}}function uu(n,e){return n==e?n:(n.constructor!=e.constructor&&(ul=!0),e)}an.prototype.size=1;class Bw extends an{constructor(e,t,s){super(e,t),this.deco=s}blockAt(e,t,s,i){return new bs(i,this.length,s,this.height,this.deco||0)}lineAt(e,t,s,i,r){return this.blockAt(0,s,i,r)}forEachLine(e,t,s,i,r,o){e<=r+this.length&&t>=r&&o(this.blockAt(0,s,i,r))}updateHeight(e,t=0,s=!1,i){return i&&i.from<=t&&i.more&&this.setHeight(i.heights[i.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class Nn extends Bw{constructor(e,t){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,t,s,i){return new bs(i,this.length,s,this.height,this.breaks)}replace(e,t,s){let i=s[0];return s.length==1&&(i instanceof Nn||i instanceof Bt&&i.flags&4)&&Math.abs(this.length-i.length)<10?(i instanceof Bt?i=new Nn(i.length,this.height):i.height=this.height,this.outdated||(i.outdated=!1),i):an.of(s)}updateHeight(e,t=0,s=!1,i){return i&&i.from<=t&&i.more?this.setHeight(i.heights[i.index++]):(s||this.outdated)&&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 Bt extends an{constructor(e){super(e,0)}heightMetrics(e,t){let s=e.doc.lineAt(t).number,i=e.doc.lineAt(t+this.length).number,r=i-s+1,o,c=0;if(e.lineWrapping){let u=Math.min(this.height,e.lineHeight*r);o=u/r,this.length>r+1&&(c=(this.height-u)/(this.length-r-1))}else o=this.height/r;return{firstLine:s,lastLine:i,perLine:o,perChar:c}}blockAt(e,t,s,i){let{firstLine:r,lastLine:o,perLine:c,perChar:u}=this.heightMetrics(t,i);if(t.lineWrapping){let f=i+(e<t.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-s)/this.height))*this.length)),p=t.doc.lineAt(f),g=c+p.length*u,O=Math.max(s,e-g/2);return new bs(p.from,p.length,O,g,0)}else{let f=Math.max(0,Math.min(o-r,Math.floor((e-s)/c))),{from:p,length:g}=t.doc.line(r+f);return new bs(p,g,s+c*f,c,0)}}lineAt(e,t,s,i,r){if(t==lt.ByHeight)return this.blockAt(e,s,i,r);if(t==lt.ByPosNoHeight){let{from:v,to:w}=s.doc.lineAt(e);return new bs(v,w-v,0,0,0)}let{firstLine:o,perLine:c,perChar:u}=this.heightMetrics(s,r),f=s.doc.lineAt(e),p=c+f.length*u,g=f.number-o,O=i+c*g+u*(f.from-r-g);return new bs(f.from,f.length,Math.max(i,Math.min(O,i+this.height-p)),p,0)}forEachLine(e,t,s,i,r,o){e=Math.max(e,r),t=Math.min(t,r+this.length);let{firstLine:c,perLine:u,perChar:f}=this.heightMetrics(s,r);for(let p=e,g=i;p<=t;){let O=s.doc.lineAt(p);if(p==e){let w=O.number-c;g+=u*w+f*(e-r-w)}let v=u+f*O.length;o(new bs(O.from,O.length,g,v,0)),g+=v,p=O.to+1}}replace(e,t,s){let i=this.length-t;if(i>0){let r=s[s.length-1];r instanceof Bt?s[s.length-1]=new Bt(r.length+i):s.push(null,new Bt(i-1))}if(e>0){let r=s[0];r instanceof Bt?s[0]=new Bt(e+r.length):s.unshift(new Bt(e-1),null)}return an.of(s)}decomposeLeft(e,t){t.push(new Bt(e-1),null)}decomposeRight(e,t){t.push(null,new Bt(this.length-e-1))}updateHeight(e,t=0,s=!1,i){let r=t+this.length;if(i&&i.from<=t+this.length&&i.more){let o=[],c=Math.max(t,i.from),u=-1;for(i.from>t&&o.push(new Bt(i.from-t-1).updateHeight(e,t));c<=r&&i.more;){let p=e.doc.lineAt(c).length;o.length&&o.push(null);let g=i.heights[i.index++];u==-1?u=g:Math.abs(g-u)>=qc&&(u=-2);let O=new Nn(p,g);O.outdated=!1,o.push(O),c+=p+1}c<=r&&o.push(null,new Bt(r-c).updateHeight(e,c));let f=an.of(o);return(u<0||Math.abs(f.height-this.height)>=qc||Math.abs(u-this.heightMetrics(e,t).perLine)>=qc)&&(ul=!0),uu(this,f)}else(s||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class jC extends an{constructor(e,t,s){super(e.length+t+s.length,e.height+s.height,t|(e.outdated||s.outdated?2:0)),this.left=e,this.right=s,this.size=e.size+s.size}get break(){return this.flags&1}blockAt(e,t,s,i){let r=s+this.left.height;return e<r?this.left.blockAt(e,t,s,i):this.right.blockAt(e,t,r,i+this.left.length+this.break)}lineAt(e,t,s,i,r){let o=i+this.left.height,c=r+this.left.length+this.break,u=t==lt.ByHeight?e<o:e<c,f=u?this.left.lineAt(e,t,s,i,r):this.right.lineAt(e,t,s,o,c);if(this.break||(u?f.to<c:f.from>c))return f;let p=t==lt.ByPosNoHeight?lt.ByPosNoHeight:lt.ByPos;return u?f.join(this.right.lineAt(c,p,s,o,c)):this.left.lineAt(c,p,s,i,r).join(f)}forEachLine(e,t,s,i,r,o){let c=i+this.left.height,u=r+this.left.length+this.break;if(this.break)e<u&&this.left.forEachLine(e,t,s,i,r,o),t>=u&&this.right.forEachLine(e,t,s,c,u,o);else{let f=this.lineAt(u,lt.ByPos,s,i,r);e<f.from&&this.left.forEachLine(e,f.from-1,s,i,r,o),f.to>=e&&f.from<=t&&o(f),t>f.to&&this.right.forEachLine(f.to+1,t,s,c,u,o)}}replace(e,t,s){let i=this.left.length+this.break;if(t<i)return this.balanced(this.left.replace(e,t,s),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-i,t-i,s));let r=[];e>0&&this.decomposeLeft(e,r);let o=r.length;for(let c of s)r.push(c);if(e>0&&mv(r,o-1),t<this.length){let c=r.length;this.decomposeRight(t,r),mv(r,c)}return an.of(r)}decomposeLeft(e,t){let s=this.left.length;if(e<=s)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(s++,e>=s&&t.push(null)),e>s&&this.right.decomposeLeft(e-s,t)}decomposeRight(e,t){let s=this.left.length,i=s+this.break;if(e>=i)return this.right.decomposeRight(e-i,t);e<s&&this.left.decomposeRight(e,t),this.break&&e<i&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?an.of(this.break?[e,null,t]:[e,t]):(this.left=uu(this.left,e),this.right=uu(this.right,t),this.setHeight(e.height+t.height),this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,s=!1,i){let{left:r,right:o}=this,c=t+r.length+this.break,u=null;return i&&i.from<=t+r.length&&i.more?u=r=r.updateHeight(e,t,s,i):r.updateHeight(e,t,s),i&&i.from<=c+o.length&&i.more?u=o=o.updateHeight(e,c,s,i):o.updateHeight(e,c,s),u?this.balanced(r,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function mv(n,e){let t,s;n[e]==null&&(t=n[e-1])instanceof Bt&&(s=n[e+1])instanceof Bt&&n.splice(e-1,3,new Bt(t.length+1+s.length))}const QC=5;class Gp{constructor(e,t){this.pos=e,this.oracle=t,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,t){if(this.lineStart>-1){let s=Math.min(t,this.lineEnd),i=this.nodes[this.nodes.length-1];i instanceof Nn?i.length+=s-this.pos:(s>this.pos||!this.isCovered)&&this.nodes.push(new Nn(s-this.pos,-1)),this.writtenTo=s,t>s&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,s){if(e<t||s.heightRelevant){let i=s.widget?s.widget.estimatedHeight:0,r=s.widget?s.widget.lineBreaks:0;i<0&&(i=this.oracle.lineHeight);let o=t-e;s.block?this.addBlock(new Bw(o,i,s)):(o||r||i>=QC)&&this.addLineDeco(i,r,o)}else t>e&&this.span(e,t);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:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,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 Nn(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let s=new Bt(t-e);return this.oracle.doc.lineAt(e).to==t&&(s.flags|=4),s}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Nn)return e;let t=new Nn(0,-1);return this.nodes.push(t),t}addBlock(e){this.enterLine();let t=e.deco;t&&t.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,t&&t.endSide>0&&(this.covering=e)}addLineDeco(e,t,s){let i=this.ensureLine();i.length+=s,i.collapsed+=s,i.widgetHeight=Math.max(i.widgetHeight,e),i.breaks+=t,this.writtenTo=this.pos=this.pos+s}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof Nn)&&!this.isCovered?this.nodes.push(new Nn(0,-1)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let s=e;for(let i of this.nodes)i instanceof Nn&&i.updateHeight(this.oracle,s),s+=i?i.length:1;return this.nodes}static build(e,t,s,i){let r=new Gp(s,e);return Ue.spans(t,s,i,r,0),r.finish(s)}}function NC(n,e,t){let s=new EC;return Ue.compare(n,e,t,s,0),s.changes}class EC{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,s,i){(e<t||s&&s.heightRelevant||i&&i.heightRelevant)&&Yc(e,t,this.changes,5)}}function AC(n,e){let t=n.getBoundingClientRect(),s=n.ownerDocument,i=s.defaultView||window,r=Math.max(0,t.left),o=Math.min(i.innerWidth,t.right),c=Math.max(0,t.top),u=Math.min(i.innerHeight,t.bottom);for(let f=n.parentNode;f&&f!=s.body;)if(f.nodeType==1){let p=f,g=window.getComputedStyle(p);if((p.scrollHeight>p.clientHeight||p.scrollWidth>p.clientWidth)&&g.overflow!="visible"){let O=p.getBoundingClientRect();r=Math.max(r,O.left),o=Math.min(o,O.right),c=Math.max(c,O.top),u=Math.min(f==n.parentNode?i.innerHeight:u,O.bottom)}f=g.position=="absolute"||g.position=="fixed"?p.offsetParent:p.parentNode}else if(f.nodeType==11)f=f.host;else break;return{left:r-t.left,right:Math.max(r,o)-t.left,top:c-(t.top+e),bottom:Math.max(c,u)-(t.top+e)}}function MC(n){let e=n.getBoundingClientRect(),t=n.ownerDocument.defaultView||window;return e.left<t.innerWidth&&e.right>0&&e.top<t.innerHeight&&e.bottom>0}function RC(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class Kh{constructor(e,t,s,i){this.from=e,this.to=t,this.size=s,this.displaySize=i}static same(e,t){if(e.length!=t.length)return!1;for(let s=0;s<e.length;s++){let i=e[s],r=t[s];if(i.from!=r.from||i.to!=r.to||i.size!=r.size)return!1}return!0}draw(e,t){return Pe.replace({widget:new DC(this.displaySize*(t?e.scaleY:e.scaleX),t)}).range(this.from,this.to)}}class DC extends Ns{constructor(e,t){super(),this.size=e,this.vertical=t}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 gv{constructor(e){this.state=e,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.scrollTop=0,this.scrolledToBottom=!1,this.scaleX=1,this.scaleY=1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=Ov,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=ot.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let t=e.facet(Up).some(s=>typeof s!="function"&&s.class=="cm-lineWrapping");this.heightOracle=new TC(t),this.stateDeco=e.facet(Io).filter(s=>typeof s!="function"),this.heightMap=an.empty().applyChanges(this.stateDeco,Be.empty,this.heightOracle.setDoc(e.doc),[new Xn(0,0,0,e.doc.length)]);for(let s=0;s<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());s++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Pe.set(this.lineGaps.map(s=>s.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let s=0;s<=1;s++){let i=s?t.head:t.anchor;if(!e.some(({from:r,to:o})=>i>=r&&i<=o)){let{from:r,to:o}=this.lineBlockAt(i);e.push(new $c(r,o))}}return this.viewports=e.sort((s,i)=>s.from-i.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?Ov:new Hp(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(Oo(e,this.scaler))})}update(e,t=null){this.state=e.state;let s=this.stateDeco;this.stateDeco=this.state.facet(Io).filter(p=>typeof p!="function");let i=e.changedRanges,r=Xn.extendWithRanges(i,NC(s,this.stateDeco,e?e.changes:Pt.empty(this.state.doc.length))),o=this.heightMap.height,c=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);pv(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),r),(this.heightMap.height!=o||ul)&&(e.flags|=2),c?(this.scrollAnchorPos=e.changes.mapPos(c.from,-1),this.scrollAnchorHeight=c.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=o);let u=r.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<u.from||t.range.head>u.to)||!this.viewportIsAppropriate(u))&&(u=this.getViewport(0,t));let f=u.from!=this.viewport.from||u.to!=this.viewport.to;this.viewport=u,e.flags|=this.updateForViewport(),(f||!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),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(kw)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,s=window.getComputedStyle(t),i=this.heightOracle,r=s.whiteSpace;this.defaultTextDirection=s.direction=="rtl"?ot.RTL:ot.LTR;let o=this.heightOracle.mustRefreshForWrapping(r),c=t.getBoundingClientRect(),u=o||this.mustMeasureContent||this.contentDOMHeight!=c.height;this.contentDOMHeight=c.height,this.mustMeasureContent=!1;let f=0,p=0;if(c.width&&c.height){let{scaleX:T,scaleY:P}=H0(t,c);(T>.005&&Math.abs(this.scaleX-T)>.005||P>.005&&Math.abs(this.scaleY-P)>.005)&&(this.scaleX=T,this.scaleY=P,f|=16,o=u=!0)}let g=(parseInt(s.paddingTop)||0)*this.scaleY,O=(parseInt(s.paddingBottom)||0)*this.scaleY;(this.paddingTop!=g||this.paddingBottom!=O)&&(this.paddingTop=g,this.paddingBottom=O,f|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(i.lineWrapping&&(u=!0),this.editorWidth=e.scrollDOM.clientWidth,f|=16);let v=e.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=v&&(this.scrollAnchorHeight=-1,this.scrollTop=v),this.scrolledToBottom=ew(e.scrollDOM);let w=(this.printing?RC:AC)(t,this.paddingTop),k=w.top-this.pixelViewport.top,S=w.bottom-this.pixelViewport.bottom;this.pixelViewport=w;let $=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if($!=this.inView&&(this.inView=$,$&&(u=!0)),!this.inView&&!this.scrollTarget&&!MC(e.dom))return 0;let b=c.width;if((this.contentDOMWidth!=b||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=c.width,this.editorHeight=e.scrollDOM.clientHeight,f|=16),u){let T=e.docView.measureVisibleLineHeights(this.viewport);if(i.mustRefreshForHeights(T)&&(o=!0),o||i.lineWrapping&&Math.abs(b-this.contentDOMWidth)>i.charWidth){let{lineHeight:P,charWidth:N,textHeight:A}=e.docView.measureTextSize();o=P>0&&i.refresh(r,P,N,A,Math.max(5,b/N),T),o&&(e.docView.minWidth=0,f|=16)}k>0&&S>0?p=Math.max(k,S):k<0&&S<0&&(p=Math.min(k,S)),pv();for(let P of this.viewports){let N=P.from==this.viewport.from?T:e.docView.measureVisibleLineHeights(P);this.heightMap=(o?an.empty().applyChanges(this.stateDeco,Be.empty,this.heightOracle,[new Xn(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(i,0,o,new PC(P.from,N))}ul&&(f|=2)}let C=!this.viewportIsAppropriate(this.viewport,p)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return C&&(f&2&&(f|=this.updateScaler()),this.viewport=this.getViewport(p,this.scrollTarget),f|=this.updateForViewport()),(f&2||C)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),f|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),f}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let s=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),i=this.heightMap,r=this.heightOracle,{visibleTop:o,visibleBottom:c}=this,u=new $c(i.lineAt(o-s*1e3,lt.ByHeight,r,0,0).from,i.lineAt(c+(1-s)*1e3,lt.ByHeight,r,0,0).to);if(t){let{head:f}=t.range;if(f<u.from||f>u.to){let p=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),g=i.lineAt(f,lt.ByPos,r,0,0),O;t.y=="center"?O=(g.top+g.bottom)/2-p/2:t.y=="start"||t.y=="nearest"&&f<u.from?O=g.top:O=g.bottom-p,u=new $c(i.lineAt(O-1e3/2,lt.ByHeight,r,0,0).from,i.lineAt(O+p+1e3/2,lt.ByHeight,r,0,0).to)}}return u}mapViewport(e,t){let s=t.mapPos(e.from,-1),i=t.mapPos(e.to,1);return new $c(this.heightMap.lineAt(s,lt.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(i,lt.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},s=0){if(!this.inView)return!0;let{top:i}=this.heightMap.lineAt(e,lt.ByPos,this.heightOracle,0,0),{bottom:r}=this.heightMap.lineAt(t,lt.ByPos,this.heightOracle,0,0),{visibleTop:o,visibleBottom:c}=this;return(e==0||i<=o-Math.max(10,Math.min(-s,250)))&&(t==this.state.doc.length||r>=c+Math.max(10,Math.min(s,250)))&&i>o-2*1e3&&r<c+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let s=[];for(let i of e)t.touchesRange(i.from,i.to)||s.push(new Kh(t.mapPos(i.from),t.mapPos(i.to),i.size,i.displaySize));return s}ensureLineGaps(e,t){let s=this.heightOracle.lineWrapping,i=s?1e4:2e3,r=i>>1,o=i<<1;if(this.defaultTextDirection!=ot.LTR&&!s)return[];let c=[],u=(p,g,O,v)=>{if(g-p<r)return;let w=this.state.selection.main,k=[w.from];w.empty||k.push(w.to);for(let $ of k)if($>p&&$<g){u(p,$-10,O,v),u($+10,g,O,v);return}let S=LC(e,$=>$.from>=O.from&&$.to<=O.to&&Math.abs($.from-p)<r&&Math.abs($.to-g)<r&&!k.some(b=>$.from<b&&$.to>b));if(!S){if(g<O.to&&t&&s&&t.visibleRanges.some(C=>C.from<=g&&C.to>=g)){let C=t.moveToLineBoundary(ie.cursor(g),!1,!0).head;C>p&&(g=C)}let $=this.gapSize(O,p,g,v),b=s||$<2e6?$:2e6;S=new Kh(p,g,$,b)}c.push(S)},f=p=>{if(p.length<o||p.type!=on.Text)return;let g=IC(p.from,p.to,this.stateDeco);if(g.total<o)return;let O=this.scrollTarget?this.scrollTarget.range.head:null,v,w;if(s){let k=i/this.heightOracle.lineLength*this.heightOracle.lineHeight,S,$;if(O!=null){let b=Tc(g,O),C=((this.visibleBottom-this.visibleTop)/2+k)/p.height;S=b-C,$=b+C}else S=(this.visibleTop-p.top-k)/p.height,$=(this.visibleBottom-p.top+k)/p.height;v=Cc(g,S),w=Cc(g,$)}else{let k=g.total*this.heightOracle.charWidth,S=i*this.heightOracle.charWidth,$=0;if(k>2e6)for(let N of e)N.from>=p.from&&N.from<p.to&&N.size!=N.displaySize&&N.from*this.heightOracle.charWidth+$<this.pixelViewport.left&&($=N.size-N.displaySize);let b=this.pixelViewport.left+$,C=this.pixelViewport.right+$,T,P;if(O!=null){let N=Tc(g,O),A=((C-b)/2+S)/k;T=N-A,P=N+A}else T=(b-S)/k,P=(C+S)/k;v=Cc(g,T),w=Cc(g,P)}v>p.from&&u(p.from,v,p,g),w<p.to&&u(w,p.to,p,g)};for(let p of this.viewportLines)Array.isArray(p.type)?p.type.forEach(f):f(p);return c}gapSize(e,t,s,i){let r=Tc(i,s)-Tc(i,t);return this.heightOracle.lineWrapping?e.height*r:i.total*this.heightOracle.charWidth*r}updateLineGaps(e){Kh.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=Pe.set(e.map(t=>t.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let t=this.stateDeco;this.lineGaps.length&&(t=t.concat(this.lineGapDeco));let s=[];Ue.spans(t,this.viewport.from,this.viewport.to,{span(r,o){s.push({from:r,to:o})},point(){}},20);let i=0;if(s.length!=this.visibleRanges.length)i=12;else for(let r=0;r<s.length&&!(i&8);r++){let o=this.visibleRanges[r],c=s[r];(o.from!=c.from||o.to!=c.to)&&(i|=4,e&&e.mapPos(o.from,-1)==c.from&&e.mapPos(o.to,1)==c.to||(i|=8))}return this.visibleRanges=s,i}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||Oo(this.heightMap.lineAt(e,lt.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(t=>t.top<=e&&t.bottom>=e)||Oo(this.heightMap.lineAt(this.scaler.fromDOM(e),lt.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return Oo(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 $c{constructor(e,t){this.from=e,this.to=t}}function IC(n,e,t){let s=[],i=n,r=0;return Ue.spans(t,n,e,{span(){},point(o,c){o>i&&(s.push({from:i,to:o}),r+=o-i),i=c}},20),i<e&&(s.push({from:i,to:e}),r+=e-i),{total:r,ranges:s}}function Cc({total:n,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let s=Math.floor(n*t);for(let i=0;;i++){let{from:r,to:o}=e[i],c=o-r;if(s<=c)return r+s;s-=c}}function Tc(n,e){let t=0;for(let{from:s,to:i}of n.ranges){if(e<=i){t+=e-s;break}t+=i-s}return t/n.total}function LC(n,e){for(let t of n)if(e(t))return t}const Ov={toDOM(n){return n},fromDOM(n){return n},scale:1,eq(n){return n==this}};class Hp{constructor(e,t,s){let i=0,r=0,o=0;this.viewports=s.map(({from:c,to:u})=>{let f=t.lineAt(c,lt.ByPos,e,0,0).top,p=t.lineAt(u,lt.ByPos,e,0,0).bottom;return i+=p-f,{from:c,to:u,top:f,bottom:p,domTop:0,domBottom:0}}),this.scale=(7e6-i)/(t.height-i);for(let c of this.viewports)c.domTop=o+(c.top-r)*this.scale,o=c.domBottom=c.domTop+(c.bottom-c.top),r=c.bottom}toDOM(e){for(let t=0,s=0,i=0;;t++){let r=t<this.viewports.length?this.viewports[t]:null;if(!r||e<r.top)return i+(e-s)*this.scale;if(e<=r.bottom)return r.domTop+(e-r.top);s=r.bottom,i=r.domBottom}}fromDOM(e){for(let t=0,s=0,i=0;;t++){let r=t<this.viewports.length?this.viewports[t]:null;if(!r||e<r.domTop)return s+(e-i)/this.scale;if(e<=r.domBottom)return r.top+(e-r.domTop);s=r.bottom,i=r.domBottom}}eq(e){return e instanceof Hp?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((t,s)=>t.from==e.viewports[s].from&&t.to==e.viewports[s].to):!1}}function Oo(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),s=e.toDOM(n.bottom);return new bs(n.from,n.length,t,s-t,Array.isArray(n._content)?n._content.map(i=>Oo(i,e)):n._content)}const Pc=Se.define({combine:n=>n.join(" ")}),lp=Se.define({combine:n=>n.indexOf(!0)>-1}),op=Ci.newName(),Xw=Ci.newName(),Vw=Ci.newName(),Ww={"&light":"."+Xw,"&dark":"."+Vw};function ap(n,e,t){return new Ci(e,{finish(s){return/&/.test(s)?s.replace(/&\w*/,i=>{if(i=="&")return n;if(!t||!t[i])throw new RangeError(`Unsupported selector: ${i}`);return t[i]}):n+" "+s}})}const ZC=ap("."+op,{"&":{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-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"}},Ww),zC={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Jh=ve.ie&&ve.ie_version<=11;class FC{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new b$,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(t=>{for(let s of t)this.queue.push(s);(ve.ie&&ve.ie_version<=11||ve.ios&&e.composing)&&t.some(s=>s.type=="childList"&&s.removedNodes.length||s.type=="characterData"&&s.oldValue.length>s.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&ve.android&&e.constructor.EDIT_CONTEXT!==!1&&!(ve.chrome&&ve.chrome_version<126)&&(this.editContext=new XC(e),e.state.facet(Ws)&&(e.contentDOM.editContext=this.editContext.editContext)),Jh&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.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 t;((t=this.view.docView)===null||t===void 0?void 0:t.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(t=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.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(t=>{t.length>0&&t[t.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((t,s)=>t!=e[s]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:s}=this,i=this.selectionRange;if(s.state.facet(Ws)?s.root.activeElement!=this.dom:!Uc(this.dom,i))return;let r=i.anchorNode&&s.docView.nearest(i.anchorNode);if(r&&r.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(ve.ie&&ve.ie_version<=11||ve.android&&ve.chrome)&&!s.state.selection.main.empty&&i.focusNode&&So(i.focusNode,i.focusOffset,i.anchorNode,i.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=Do(e.root);if(!t)return!1;let s=ve.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&BC(this.view,t)||t;if(!s||this.selectionRange.eq(s))return!1;let i=Uc(this.dom,s);return i&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&$$(this.dom,s)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(s),i&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let s=this.dom;s;)if(s.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==s?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(s),s=s.assignedSlot||s.parentNode;else if(s.nodeType==11)s=s.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let s of this.scrollTargets)s.removeEventListener("scroll",this.onScroll);for(let s of this.scrollTargets=t)s.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,zC),Jh&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),Jh&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var s;if(!this.delayedAndroidKey){let i=()=>{let r=this.delayedAndroidKey;r&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=r.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&r.force&&tl(this.dom,r.key,r.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(i)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((s=this.delayedAndroidKey)===null||s===void 0)&&s.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 t=-1,s=-1,i=!1;for(let r of e){let o=this.readMutation(r);o&&(o.typeOver&&(i=!0),t==-1?{from:t,to:s}=o:(t=Math.min(o.from,t),s=Math.max(o.to,s)))}return{from:t,to:s,typeOver:i}}readChange(){let{from:e,to:t,typeOver:s}=this.processRecords(),i=this.selectionChanged&&Uc(this.dom,this.selectionRange);if(e<0&&!i)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let r=new oC(this.view,e,t,s);return this.view.docView.domChanged={newSel:r.newSel?r.newSel.main:null},r}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return this.view.requestMeasure(),!1;let s=this.view.state,i=Ew(this.view,t);return this.view.state==s&&(t.domChanged||t.newSel&&!t.newSel.main.eq(this.view.state.selection.main))&&this.view.update([]),i}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty(e.type=="attributes"),e.type=="attributes"&&(t.flags|=4),e.type=="childList"){let s=yv(t,e.previousSibling||e.target.previousSibling,-1),i=yv(t,e.nextSibling||e.target.nextSibling,1);return{from:s?t.posAfter(s):t.posAtStart,to:i?t.posBefore(i):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.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(Ws)!=e.state.facet(Ws)&&(e.view.contentDOM.editContext=e.state.facet(Ws)?this.editContext.editContext:null))}destroy(){var e,t,s;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(s=this.resizeScroll)===null||s===void 0||s.disconnect();for(let i of this.scrollTargets)i.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 yv(n,e,t){for(;e;){let s=et.get(e);if(s&&s.parent==n)return s;let i=e.parentNode;e=i!=n.dom?i:t>0?e.nextSibling:e.previousSibling}return null}function vv(n,e){let t=e.startContainer,s=e.startOffset,i=e.endContainer,r=e.endOffset,o=n.docView.domAtPos(n.state.selection.main.anchor);return So(o.node,o.offset,i,r)&&([t,s,i,r]=[i,r,t,s]),{anchorNode:t,anchorOffset:s,focusNode:i,focusOffset:r}}function BC(n,e){if(e.getComposedRanges){let i=e.getComposedRanges(n.root)[0];if(i)return vv(n,i)}let t=null;function s(i){i.preventDefault(),i.stopImmediatePropagation(),t=i.getTargetRanges()[0]}return n.contentDOM.addEventListener("beforeinput",s,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",s,!0),t?vv(n,t):null}class XC{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let t=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=s=>{let i=e.state.selection.main,{anchor:r,head:o}=i,c=this.toEditorPos(s.updateRangeStart),u=this.toEditorPos(s.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:s.updateRangeStart,editorBase:c,drifted:!1});let f=u-c>s.text.length;c==this.from&&r<this.from?c=r:u==this.to&&r>this.to&&(u=r);let p=Aw(e.state.sliceDoc(c,u),s.text,(f?i.from:i.to)-c,f?"end":null);if(!p){let O=ie.single(this.toEditorPos(s.selectionStart),this.toEditorPos(s.selectionEnd));O.main.eq(i)||e.dispatch({selection:O,userEvent:"select"});return}let g={from:p.from+c,to:p.toA+c,insert:Be.of(s.text.slice(p.from,p.toB).split(`
|
|
17
|
+
`))};if((ve.mac||ve.android)&&g.from==o-1&&/^\. ?$/.test(s.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(g={from:c,to:u,insert:Be.of([s.text.replace("."," ")])}),this.pendingContextChange=g,!e.state.readOnly){let O=this.to-this.from+(g.to-g.from+g.insert.length);qp(e,g,ie.single(this.toEditorPos(s.selectionStart,O),this.toEditorPos(s.selectionEnd,O)))}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(t.text.slice(Math.max(0,s.updateRangeStart-1),Math.min(t.text.length,s.updateRangeStart+1)))&&this.handlers.compositionend(s)},this.handlers.characterboundsupdate=s=>{let i=[],r=null;for(let o=this.toEditorPos(s.rangeStart),c=this.toEditorPos(s.rangeEnd);o<c;o++){let u=e.coordsForChar(o);r=u&&new DOMRect(u.left,u.top,u.right-u.left,u.bottom-u.top)||r||new DOMRect,i.push(r)}t.updateCharacterBounds(s.rangeStart,i)},this.handlers.textformatupdate=s=>{let i=[];for(let r of s.getTextFormats()){let o=r.underlineStyle,c=r.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(c)){let u=this.toEditorPos(r.rangeStart),f=this.toEditorPos(r.rangeEnd);if(u<f){let p=`text-decoration: underline ${/^[a-z]/.test(o)?o+" ":o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${/thin/i.test(c)?1:2}px`;i.push(Pe.mark({attributes:{style:p}}).range(u,f))}}}e.dispatch({effects:bw.of(Pe.set(i))})},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:s}=this.composing;this.composing=null,s&&this.reset(e.state)}};for(let s in this.handlers)t.addEventListener(s,this.handlers[s]);this.measureReq={read:s=>{this.editContext.updateControlBounds(s.contentDOM.getBoundingClientRect());let i=Do(s.root);i&&i.rangeCount&&this.editContext.updateSelectionBounds(i.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,s=!1,i=this.pendingContextChange;return e.changes.iterChanges((r,o,c,u,f)=>{if(s)return;let p=f.length-(o-r);if(i&&o>=i.to)if(i.from==r&&i.to==o&&i.insert.eq(f)){i=this.pendingContextChange=null,t+=p,this.to+=p;return}else i=null,this.revertPending(e.state);if(r+=t,o+=t,o<=this.from)this.from+=p,this.to+=p;else if(r<this.to){if(r<this.from||o>this.to||this.to-this.from+f.length>3e4){s=!0;return}this.editContext.updateText(this.toContextPos(r),this.toContextPos(o),f.toString()),this.to+=p}t+=p}),i&&!s&&this.revertPending(e.state),!s}update(e){let t=this.pendingContextChange,s=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(s.from,s.to)&&e.transactions.some(i=>!i.isUserEvent("input.type")&&i.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||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+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 t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,s=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),i=this.toContextPos(t.head);(this.editContext.selectionStart!=s||this.editContext.selectionEnd!=i)&&this.editContext.updateSelection(s,i)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to<e.doc.length&&this.to-t<500||this.to-this.from>1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let s=this.composing;return s&&s.drifted?s.editorBase+(e-s.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}}class ye{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 t;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:s}=e;this.dispatchTransactions=e.dispatchTransactions||s&&(i=>i.forEach(r=>s(r,this)))||(i=>this.update(i)),this.dispatch=this.dispatch.bind(this),this._root=e.root||_$(e.parent)||document,this.viewState=new gv(e.state||ze.create(e)),e.scrollTo&&e.scrollTo.is(Sc)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Gr).map(i=>new qh(i));for(let i of this.plugins)i.update(this);this.observer=new FC(this),this.inputState=new dC(this),this.inputState.ensureHandlers(this.plugins),this.docView=new Hy(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((t=document.fonts)===null||t===void 0)&&t.ready&&document.fonts.ready.then(()=>this.requestMeasure())}dispatch(...e){let t=e.length==1&&e[0]instanceof bt?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,s=!1,i,r=this.state;for(let O of e){if(O.startState!=r)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");r=O.state}if(this.destroyed){this.viewState.state=r;return}let o=this.hasFocus,c=0,u=null;e.some(O=>O.annotation(Zw))?(this.inputState.notifiedFocused=o,c=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,u=zw(r,o),u||(c=1));let f=this.observer.delayedAndroidKey,p=null;if(f?(this.observer.clearDelayedAndroidKey(),p=this.observer.readChange(),(p&&!this.state.doc.eq(r.doc)||!this.state.selection.eq(r.selection))&&(p=null)):this.observer.clear(),r.facet(ze.phrases)!=this.state.facet(ze.phrases))return this.setState(r);i=cu.create(this,r,e),i.flags|=c;let g=this.viewState.scrollTarget;try{this.updateState=2;for(let O of e){if(g&&(g=g.map(O.changes)),O.scrollIntoView){let{main:v}=O.state.selection;g=new nl(v.empty?v:ie.cursor(v.head,v.head>v.anchor?-1:1))}for(let v of O.effects)v.is(Sc)&&(g=v.value.clip(this.state))}this.viewState.update(i,g),this.bidiCache=du.update(this.bidiCache,i.changes),i.empty||(this.updatePlugins(i),this.inputState.update(i)),t=this.docView.update(i),this.state.facet(mo)!=this.styleModules&&this.mountStyles(),s=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(O=>O.isUserEvent("select.pointer")))}finally{this.updateState=0}if(i.startState.facet(Pc)!=i.state.facet(Pc)&&(this.viewState.mustMeasureContent=!0),(t||s||g||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!i.empty)for(let O of this.state.facet(np))try{O(i)}catch(v){kn(this.state,v,"update listener")}(u||p)&&Promise.resolve().then(()=>{u&&this.state==u.startState&&this.dispatch(u),p&&!Ew(this,p)&&f.force&&tl(this.contentDOM,f.key,f.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 t=this.hasFocus;try{for(let s of this.plugins)s.destroy(this);this.viewState=new gv(e),this.plugins=e.facet(Gr).map(s=>new qh(s)),this.pluginMap.clear();for(let s of this.plugins)s.update(this);this.docView.destroy(),this.docView=new Hy(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(Gr),s=e.state.facet(Gr);if(t!=s){let i=[];for(let r of s){let o=t.indexOf(r);if(o<0)i.push(new qh(r));else{let c=this.plugins[o];c.mustUpdate=e,i.push(c)}}for(let r of this.plugins)r.mustUpdate!=e&&r.destroy(this);this.plugins=i,this.pluginMap.clear()}else for(let i of this.plugins)i.mustUpdate=e;for(let i=0;i<this.plugins.length;i++)this.plugins[i].update(this);t!=s&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let e of this.plugins){let t=e.value;if(t&&t.docViewUpdate)try{t.docViewUpdate(this)}catch(s){kn(this.state,s,"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 t=null,s=this.scrollDOM,i=s.scrollTop*this.scaleY,{scrollAnchorPos:r,scrollAnchorHeight:o}=this.viewState;Math.abs(i-this.viewState.scrollTop)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let c=0;;c++){if(o<0)if(ew(s))r=-1,o=this.viewState.heightMap.height;else{let v=this.viewState.scrollAnchorAt(i);r=v.from,o=v.top}this.updateState=1;let u=this.viewState.measure(this);if(!u&&!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 f=[];u&4||([this.measureRequests,f]=[f,this.measureRequests]);let p=f.map(v=>{try{return v.read(this)}catch(w){return kn(this.state,w),xv}}),g=cu.create(this,this.state,[]),O=!1;g.flags|=u,t?t.flags|=u:t=g,this.updateState=2,g.empty||(this.updatePlugins(g),this.inputState.update(g),this.updateAttrs(),O=this.docView.update(g),O&&this.docViewUpdate());for(let v=0;v<f.length;v++)if(p[v]!=xv)try{let w=f[v];w.write&&w.write(p[v],this)}catch(w){kn(this.state,w)}if(O&&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,o=-1;continue}else{let w=(r<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(r).top)-o;if(w>1||w<-1){i=i+w,s.scrollTop=i/this.scaleY,o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let c of this.state.facet(np))c(t)}get themeClasses(){return op+" "+(this.state.facet(lp)?Vw:Xw)+" "+this.state.facet(Pc)}updateAttrs(){let e=wv(this,_w,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Ws)?"true":"false",class:"cm-content",style:`${ve.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),wv(this,Up,t);let s=this.observer.ignore(()=>{let i=Hf(this.contentDOM,this.contentAttrs,t),r=Hf(this.dom,this.editorAttrs,e);return i||r});return this.editorAttrs=e,this.contentAttrs=t,s}showAnnouncements(e){let t=!0;for(let s of e)for(let i of s.effects)if(i.is(ye.announce)){t&&(this.announceDOM.textContent=""),t=!1;let r=this.announceDOM.appendChild(document.createElement("div"));r.textContent=i.value}}mountStyles(){this.styleModules=this.state.facet(mo);let e=this.state.facet(ye.cspNonce);Ci.mount(this.root,this.styleModules.concat(ZC).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 t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key){this.measureRequests[t]=e;return}}this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(t===void 0||t&&t.plugin!=e)&&this.pluginMap.set(e,t=this.plugins.find(s=>s.plugin==e)||null),t&&t.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,t,s){return Hh(this,e,nv(this,e,t,s))}moveByGroup(e,t){return Hh(this,e,nv(this,e,t,s=>nC(this,e.head,s)))}visualLineSide(e,t){let s=this.bidiSpans(e),i=this.textDirectionAt(e.from),r=s[t?s.length-1:0];return ie.cursor(r.side(t,i)+e.from,r.forward(!t,i)?1:-1)}moveToLineBoundary(e,t,s=!0){return tC(this,e,t,s)}moveVertically(e,t,s){return Hh(this,e,sC(this,e,t,s))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),jw(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let s=this.docView.coordsAt(e,t);if(!s||s.left==s.right)return s;let i=this.state.doc.lineAt(e),r=this.bidiSpans(i),o=r[bi.find(r,e-i.from,-1,t)];return Go(s,o.dir==ot.LTR==t>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(ww)||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>VC)return fw(e.length);let t=this.textDirectionAt(e.from),s;for(let r of this.bidiCache)if(r.from==e.from&&r.dir==t&&(r.fresh||hw(r.isolates,s=Gy(this,e))))return r.order;s||(s=Gy(this,e));let i=L$(e.text,t,s);return this.bidiCache.push(new du(e.from,e.to,t,s,!0,i)),i}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||ve.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{K0(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,t={}){return Sc.of(new nl(typeof e=="number"?ie.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,s=this.viewState.scrollAnchorAt(e);return Sc.of(new nl(ie.cursor(s.from),"start","start",s.top-e,t,!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 mt.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return mt.define(()=>({}),{eventObservers:e})}static theme(e,t){let s=Ci.newName(),i=[Pc.of(s),mo.of(ap(`.${s}`,e))];return t&&t.dark&&i.push(lp.of(!0)),i}static baseTheme(e){return Ni.lowest(mo.of(ap("."+op,e,Ww)))}static findFromDOM(e){var t;let s=e.querySelector(".cm-content"),i=s&&et.get(s)||et.get(e);return((t=i?.rootView)===null||t===void 0?void 0:t.view)||null}}ye.styleModule=mo;ye.inputHandler=vw;ye.clipboardInputFilter=Vp;ye.clipboardOutputFilter=Wp;ye.scrollHandler=Sw;ye.focusChangeEffect=xw;ye.perLineTextDirection=ww;ye.exceptionSink=yw;ye.updateListener=np;ye.editable=Ws;ye.mouseSelectionStyle=Ow;ye.dragMovesSelection=gw;ye.clickAddsSelectionRange=mw;ye.decorations=Io;ye.outerDecorations=$w;ye.atomicRanges=Jo;ye.bidiIsolatedRanges=Cw;ye.scrollMargins=Tw;ye.darkTheme=lp;ye.cspNonce=Se.define({combine:n=>n.length?n[0]:""});ye.contentAttributes=Up;ye.editorAttributes=_w;ye.lineWrapping=ye.contentAttributes.of({class:"cm-lineWrapping"});ye.announce=Me.define();const VC=4096,xv={};class du{constructor(e,t,s,i,r,o){this.from=e,this.to=t,this.dir=s,this.isolates=i,this.fresh=r,this.order=o}static update(e,t){if(t.empty&&!e.some(r=>r.fresh))return e;let s=[],i=e.length?e[e.length-1].dir:ot.LTR;for(let r=Math.max(0,e.length-10);r<e.length;r++){let o=e[r];o.dir==i&&!t.touchesRange(o.from,o.to)&&s.push(new du(t.mapPos(o.from,1),t.mapPos(o.to,-1),o.dir,o.isolates,!1,o.order))}return s}}function wv(n,e,t){for(let s=n.state.facet(e),i=s.length-1;i>=0;i--){let r=s[i],o=typeof r=="function"?r(n):r;o&&Gf(o,t)}return t}const WC=ve.mac?"mac":ve.windows?"win":ve.linux?"linux":"key";function UC(n,e){const t=n.split(/-(?!$)/);let s=t[t.length-1];s=="Space"&&(s=" ");let i,r,o,c;for(let u=0;u<t.length-1;++u){const f=t[u];if(/^(cmd|meta|m)$/i.test(f))c=!0;else if(/^a(lt)?$/i.test(f))i=!0;else if(/^(c|ctrl|control)$/i.test(f))r=!0;else if(/^s(hift)?$/i.test(f))o=!0;else if(/^mod$/i.test(f))e=="mac"?c=!0:r=!0;else throw new Error("Unrecognized modifier name: "+f)}return i&&(s="Alt-"+s),r&&(s="Ctrl-"+s),c&&(s="Meta-"+s),o&&(s="Shift-"+s),s}function jc(n,e,t){return e.altKey&&(n="Alt-"+n),e.ctrlKey&&(n="Ctrl-"+n),e.metaKey&&(n="Meta-"+n),t!==!1&&e.shiftKey&&(n="Shift-"+n),n}const YC=Ni.default(ye.domEventHandlers({keydown(n,e){return Yw(Uw(e.state),n,e,"editor")}})),ea=Se.define({enables:YC}),kv=new WeakMap;function Uw(n){let e=n.facet(ea),t=kv.get(e);return t||kv.set(e,t=HC(e.reduce((s,i)=>s.concat(i),[]))),t}function qC(n,e,t){return Yw(Uw(n.state),e,n,t)}let xi=null;const GC=4e3;function HC(n,e=WC){let t=Object.create(null),s=Object.create(null),i=(o,c)=>{let u=s[o];if(u==null)s[o]=c;else if(u!=c)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},r=(o,c,u,f,p)=>{var g,O;let v=t[o]||(t[o]=Object.create(null)),w=c.split(/ (?!$)/).map($=>UC($,e));for(let $=1;$<w.length;$++){let b=w.slice(0,$).join(" ");i(b,!0),v[b]||(v[b]={preventDefault:!0,stopPropagation:!1,run:[C=>{let T=xi={view:C,prefix:b,scope:o};return setTimeout(()=>{xi==T&&(xi=null)},GC),!0}]})}let k=w.join(" ");i(k,!1);let S=v[k]||(v[k]={preventDefault:!1,stopPropagation:!1,run:((O=(g=v._any)===null||g===void 0?void 0:g.run)===null||O===void 0?void 0:O.slice())||[]});u&&S.run.push(u),f&&(S.preventDefault=!0),p&&(S.stopPropagation=!0)};for(let o of n){let c=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let f of c){let p=t[f]||(t[f]=Object.create(null));p._any||(p._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:g}=o;for(let O in p)p[O].run.push(v=>g(v,cp))}let u=o[e]||o.key;if(u)for(let f of c)r(f,u,o.run,o.preventDefault,o.stopPropagation),o.shift&&r(f,"Shift-"+u,o.shift,o.preventDefault,o.stopPropagation)}return t}let cp=null;function Yw(n,e,t,s){cp=e;let i=v$(e),r=xn(i,0),o=Ss(r)==i.length&&i!=" ",c="",u=!1,f=!1,p=!1;xi&&xi.view==t&&xi.scope==s&&(c=xi.prefix+" ",Rw.indexOf(e.keyCode)<0&&(f=!0,xi=null));let g=new Set,O=S=>{if(S){for(let $ of S.run)if(!g.has($)&&(g.add($),$(t)))return S.stopPropagation&&(p=!0),!0;S.preventDefault&&(S.stopPropagation&&(p=!0),f=!0)}return!1},v=n[s],w,k;return v&&(O(v[c+jc(i,e,!o)])?u=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(ve.windows&&e.ctrlKey&&e.altKey)&&!(ve.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(w=Ti[e.keyCode])&&w!=i?(O(v[c+jc(w,e,!0)])||e.shiftKey&&(k=Ro[e.keyCode])!=i&&k!=w&&O(v[c+jc(k,e,!1)]))&&(u=!0):o&&e.shiftKey&&O(v[c+jc(i,e,!0)])&&(u=!0),!u&&O(v._any)&&(u=!0)),f&&(u=!0),u&&p&&e.stopPropagation(),cp=null,u}class ta{constructor(e,t,s,i,r){this.className=e,this.left=t,this.top=s,this.width=i,this.height=r}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.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,t,s){if(s.empty){let i=e.coordsAtPos(s.head,s.assoc||1);if(!i)return[];let r=qw(e);return[new ta(t,i.left-r.left,i.top-r.top,null,i.bottom-i.top)]}else return KC(e,t,s)}}function qw(n){let e=n.scrollDOM.getBoundingClientRect();return{left:(n.textDirection==ot.LTR?e.left:e.right-n.scrollDOM.clientWidth*n.scaleX)-n.scrollDOM.scrollLeft*n.scaleX,top:e.top-n.scrollDOM.scrollTop*n.scaleY}}function Sv(n,e,t,s){let i=n.coordsAtPos(e,t*2);if(!i)return s;let r=n.dom.getBoundingClientRect(),o=(i.top+i.bottom)/2,c=n.posAtCoords({x:r.left+1,y:o}),u=n.posAtCoords({x:r.right-1,y:o});return c==null||u==null?s:{from:Math.max(s.from,Math.min(c,u)),to:Math.min(s.to,Math.max(c,u))}}function KC(n,e,t){if(t.to<=n.viewport.from||t.from>=n.viewport.to)return[];let s=Math.max(t.from,n.viewport.from),i=Math.min(t.to,n.viewport.to),r=n.textDirection==ot.LTR,o=n.contentDOM,c=o.getBoundingClientRect(),u=qw(n),f=o.querySelector(".cm-line"),p=f&&window.getComputedStyle(f),g=c.left+(p?parseInt(p.paddingLeft)+Math.min(0,parseInt(p.textIndent)):0),O=c.right-(p?parseInt(p.paddingRight):0),v=ip(n,s,1),w=ip(n,i,-1),k=v.type==on.Text?v:null,S=w.type==on.Text?w:null;if(k&&(n.lineWrapping||v.widgetLineBreaks)&&(k=Sv(n,s,1,k)),S&&(n.lineWrapping||w.widgetLineBreaks)&&(S=Sv(n,i,-1,S)),k&&S&&k.from==S.from&&k.to==S.to)return b(C(t.from,t.to,k));{let P=k?C(t.from,null,k):T(v,!1),N=S?C(null,t.to,S):T(w,!0),A=[];return(k||v).to<(S||w).from-(k&&S?1:0)||v.widgetLineBreaks>1&&P.bottom+n.defaultLineHeight/2<N.top?A.push($(g,P.bottom,O,N.top)):P.bottom<N.top&&n.elementAtHeight((P.bottom+N.top)/2).type==on.Text&&(P.bottom=N.top=(P.bottom+N.top)/2),b(P).concat(A).concat(b(N))}function $(P,N,A,X){return new ta(e,P-u.left,N-u.top,A-P,X-N)}function b({top:P,bottom:N,horizontal:A}){let X=[];for(let F=0;F<A.length;F+=2)X.push($(A[F],P,A[F+1],N));return X}function C(P,N,A){let X=1e9,F=-1e9,H=[];function J(U,te,pe,ce,Y){let z=n.coordsAtPos(U,U==A.to?-2:2),Q=n.coordsAtPos(pe,pe==A.from?2:-2);!z||!Q||(X=Math.min(z.top,Q.top,X),F=Math.max(z.bottom,Q.bottom,F),Y==ot.LTR?H.push(r&&te?g:z.left,r&&ce?O:Q.right):H.push(!r&&ce?g:Q.left,!r&&te?O:z.right))}let R=P??A.from,V=N??A.to;for(let U of n.visibleRanges)if(U.to>R&&U.from<V)for(let te=Math.max(U.from,R),pe=Math.min(U.to,V);;){let ce=n.state.doc.lineAt(te);for(let Y of n.bidiSpans(ce)){let z=Y.from+ce.from,Q=Y.to+ce.from;if(z>=pe)break;Q>te&&J(Math.max(z,te),P==null&&z<=R,Math.min(Q,pe),N==null&&Q>=V,Y.dir)}if(te=ce.to+1,te>=pe)break}return H.length==0&&J(R,P==null,V,N==null,n.textDirection),{top:X,bottom:F,horizontal:H}}function T(P,N){let A=c.top+(N?P.top:P.bottom);return{top:A,bottom:A,horizontal:[]}}}function JC(n,e){return n.constructor==e.constructor&&n.eq(e)}class eT{constructor(e,t){this.view=e,this.layer=t,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"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(Gc)!=e.state.facet(Gc)&&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 t=0,s=e.facet(Gc);for(;t<s.length&&s[t]!=this.layer;)t++;this.dom.style.zIndex=String((this.layer.above?150:-1)-t)}measure(){return this.layer.markers(this.view)}scale(){let{scaleX:e,scaleY:t}=this.view;(e!=this.scaleX||t!=this.scaleY)&&(this.scaleX=e,this.scaleY=t,this.dom.style.transform=`scale(${1/e}, ${1/t})`)}draw(e){if(e.length!=this.drawn.length||e.some((t,s)=>!JC(t,this.drawn[s]))){let t=this.dom.firstChild,s=0;for(let i of e)i.update&&t&&i.constructor&&this.drawn[s].constructor&&i.update(t,this.drawn[s])?(t=t.nextSibling,s++):this.dom.insertBefore(i.draw(),t);for(;t;){let i=t.nextSibling;t.remove(),t=i}this.drawn=e,ve.ios&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const Gc=Se.define();function Gw(n){return[mt.define(e=>new eT(e,n)),Gc.of(n)]}const Lo=Se.define({combine(n){return Qs(n,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function tT(n={}){return[Lo.of(n),nT,sT,iT,kw.of(!0)]}function Hw(n){return n.startState.facet(Lo)!=n.state.facet(Lo)}const nT=Gw({above:!0,markers(n){let{state:e}=n,t=e.facet(Lo),s=[];for(let i of e.selection.ranges){let r=i==e.selection.main;if(i.empty||t.drawRangeCursor){let o=r?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",c=i.empty?i:ie.cursor(i.head,i.head>i.anchor?-1:1);for(let u of ta.forRange(n,o,c))s.push(u)}}return s},update(n,e){n.transactions.some(s=>s.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=Hw(n);return t&&bv(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){bv(e.state,n)},class:"cm-cursorLayer"});function bv(n,e){e.style.animationDuration=n.facet(Lo).cursorBlinkRate+"ms"}const sT=Gw({above:!1,markers(n){return n.state.selection.ranges.map(e=>e.empty?[]:ta.forRange(n,"cm-selectionBackground",e)).reduce((e,t)=>e.concat(t))},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||Hw(n)},class:"cm-selectionLayer"}),iT=Ni.highest(ye.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"}}}})),Kw=Me.define({map(n,e){return n==null?null:e.mapPos(n)}}),yo=Zt.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,s)=>s.is(Kw)?s.value:t,n)}}),rT=mt.fromClass(class{constructor(n){this.view=n,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(n){var e;let t=n.state.field(yo);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(n.startState.field(yo)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:n}=this,e=n.state.field(yo),t=e!=null&&n.coordsAtPos(e);if(!t)return null;let s=n.scrollDOM.getBoundingClientRect();return{left:t.left-s.left+n.scrollDOM.scrollLeft*n.scaleX,top:t.top-s.top+n.scrollDOM.scrollTop*n.scaleY,height:t.bottom-t.top}}drawCursor(n){if(this.cursor){let{scaleX:e,scaleY:t}=this.view;n?(this.cursor.style.left=n.left/e+"px",this.cursor.style.top=n.top/t+"px",this.cursor.style.height=n.height/t+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(n){this.view.state.field(yo)!=n&&this.view.dispatch({effects:Kw.of(n)})}},{eventObservers:{dragover(n){this.setDropPos(this.view.posAtCoords({x:n.clientX,y:n.clientY}))},dragleave(n){(n.target==this.view.contentDOM||!this.view.contentDOM.contains(n.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function lT(){return[yo,rT]}function _v(n,e,t,s,i){e.lastIndex=0;for(let r=n.iterRange(t,s),o=t,c;!r.next().done;o+=r.value.length)if(!r.lineBreak)for(;c=e.exec(r.value);)i(o+c.index,c)}function oT(n,e){let t=n.visibleRanges;if(t.length==1&&t[0].from==n.viewport.from&&t[0].to==n.viewport.to)return t;let s=[];for(let{from:i,to:r}of t)i=Math.max(n.state.doc.lineAt(i).from,i-e),r=Math.min(n.state.doc.lineAt(r).to,r+e),s.length&&s[s.length-1].to>=i?s[s.length-1].to=r:s.push({from:i,to:r});return s}class aT{constructor(e){const{regexp:t,decoration:s,decorate:i,boundary:r,maxLength:o=1e3}=e;if(!t.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=t,i)this.addMatch=(c,u,f,p)=>i(p,f,f+c[0].length,c,u);else if(typeof s=="function")this.addMatch=(c,u,f,p)=>{let g=s(c,u,f);g&&p(f,f+c[0].length,g)};else if(s)this.addMatch=(c,u,f,p)=>p(f,f+c[0].length,s);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=r,this.maxLength=o}createDeco(e){let t=new Ys,s=t.add.bind(t);for(let{from:i,to:r}of oT(e,this.maxLength))_v(e.state.doc,this.regexp,i,r,(o,c)=>this.addMatch(c,e,o,s));return t.finish()}updateDeco(e,t){let s=1e9,i=-1;return e.docChanged&&e.changes.iterChanges((r,o,c,u)=>{u>=e.view.viewport.from&&c<=e.view.viewport.to&&(s=Math.min(c,s),i=Math.max(u,i))}),e.viewportMoved||i-s>1e3?this.createDeco(e.view):i>-1?this.updateRange(e.view,t.map(e.changes),s,i):t}updateRange(e,t,s,i){for(let r of e.visibleRanges){let o=Math.max(r.from,s),c=Math.min(r.to,i);if(c>=o){let u=e.state.doc.lineAt(o),f=u.to<c?e.state.doc.lineAt(c):u,p=Math.max(r.from,u.from),g=Math.min(r.to,f.to);if(this.boundary){for(;o>u.from;o--)if(this.boundary.test(u.text[o-1-u.from])){p=o;break}for(;c<f.to;c++)if(this.boundary.test(f.text[c-f.from])){g=c;break}}let O=[],v,w=(k,S,$)=>O.push($.range(k,S));if(u==f)for(this.regexp.lastIndex=p-u.from;(v=this.regexp.exec(u.text))&&v.index<g-u.from;)this.addMatch(v,e,v.index+u.from,w);else _v(e.state.doc,this.regexp,p,g,(k,S)=>this.addMatch(S,e,k,w));t=t.update({filterFrom:p,filterTo:g,filter:(k,S)=>k<p||S>g,add:O})}}return t}}const up=/x/.unicode!=null?"gu":"g",cT=new RegExp(`[\0-\b
|
|
18
|
+
--\u2028\u2029\uFEFF-]`,up),uT={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let ef=null;function dT(){var n;if(ef==null&&typeof document<"u"&&document.body){let e=document.body.style;ef=((n=e.tabSize)!==null&&n!==void 0?n:e.MozTabSize)!=null}return ef||!1}const Hc=Se.define({combine(n){let e=Qs(n,{render:null,specialChars:cT,addSpecialChars:null});return(e.replaceTabs=!dT())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,up)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,up)),e}});function hT(n={}){return[Hc.of(n),fT()]}let $v=null;function fT(){return $v||($v=mt.fromClass(class{constructor(n){this.view=n,this.decorations=Pe.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(n.state.facet(Hc)),this.decorations=this.decorator.createDeco(n)}makeDecorator(n){return new aT({regexp:n.specialChars,decoration:(e,t,s)=>{let{doc:i}=t.state,r=xn(e[0],0);if(r==9){let o=i.lineAt(s),c=t.state.tabSize,u=pl(o.text,c,s-o.from);return Pe.replace({widget:new OT((c-u%c)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[r]||(this.decorationCache[r]=Pe.replace({widget:new gT(n,r)}))},boundary:n.replaceTabs?void 0:/[^]/})}update(n){let e=n.state.facet(Hc);n.startState.facet(Hc)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(n.view)):this.decorations=this.decorator.updateDeco(n,this.decorations)}},{decorations:n=>n.decorations}))}const pT="•";function mT(n){return n>=32?pT:n==10?"":String.fromCharCode(9216+n)}class gT extends Ns{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=mT(this.code),s=e.state.phrase("Control character")+" "+(uT[this.code]||"0x"+this.code.toString(16)),i=this.options.render&&this.options.render(this.code,s,t);if(i)return i;let r=document.createElement("span");return r.textContent=t,r.title=s,r.setAttribute("aria-label",s),r.className="cm-specialChar",r}ignoreEvent(){return!1}}class OT extends Ns{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}}function yT(){return xT}const vT=Pe.line({class:"cm-activeLine"}),xT=mt.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.docChanged||n.selectionSet)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=-1,t=[];for(let s of n.state.selection.ranges){let i=n.lineBlockAt(s.head);i.from>e&&(t.push(vT.range(i.from)),e=i.from)}return Pe.set(t)}},{decorations:n=>n.decorations});class wT extends Ns{constructor(e){super(),this.content=e}toDOM(e){let t=document.createElement("span");return t.className="cm-placeholder",t.style.pointerEvents="none",t.appendChild(typeof this.content=="string"?document.createTextNode(this.content):typeof this.content=="function"?this.content(e):this.content.cloneNode(!0)),t.setAttribute("aria-hidden","true"),t}coordsAt(e){let t=e.firstChild?ol(e.firstChild):[];if(!t.length)return null;let s=window.getComputedStyle(e.parentNode),i=Go(t[0],s.direction!="rtl"),r=parseInt(s.lineHeight);return i.bottom-i.top>r*1.5?{left:i.left,right:i.right,top:i.top,bottom:i.top+r}:i}ignoreEvent(){return!1}}function kT(n){let e=mt.fromClass(class{constructor(t){this.view=t,this.placeholder=n?Pe.set([Pe.widget({widget:new wT(n),side:1}).range(0)]):Pe.none}get decorations(){return this.view.state.doc.length?Pe.none:this.placeholder}},{decorations:t=>t.decorations});return typeof n=="string"?[e,ye.contentAttributes.of({"aria-placeholder":n})]:e}const dp=2e3;function ST(n,e,t){let s=Math.min(e.line,t.line),i=Math.max(e.line,t.line),r=[];if(e.off>dp||t.off>dp||e.col<0||t.col<0){let o=Math.min(e.off,t.off),c=Math.max(e.off,t.off);for(let u=s;u<=i;u++){let f=n.doc.line(u);f.length<=c&&r.push(ie.range(f.from+o,f.to+c))}}else{let o=Math.min(e.col,t.col),c=Math.max(e.col,t.col);for(let u=s;u<=i;u++){let f=n.doc.line(u),p=Ff(f.text,o,n.tabSize,!0);if(p<0)r.push(ie.cursor(f.to));else{let g=Ff(f.text,c,n.tabSize);r.push(ie.range(f.from+p,f.from+g))}}}return r}function bT(n,e){let t=n.coordsAtPos(n.viewport.from);return t?Math.round(Math.abs((t.left-e)/n.defaultCharacterWidth)):-1}function Cv(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1),s=n.state.doc.lineAt(t),i=t-s.from,r=i>dp?-1:i==s.length?bT(n,e.clientX):pl(s.text,n.state.tabSize,t-s.from);return{line:s.number,col:r,off:i}}function _T(n,e){let t=Cv(n,e),s=n.state.selection;return t?{update(i){if(i.docChanged){let r=i.changes.mapPos(i.startState.doc.line(t.line).from),o=i.state.doc.lineAt(r);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},s=s.map(i.changes)}},get(i,r,o){let c=Cv(n,i);if(!c)return s;let u=ST(n.state,t,c);return u.length?o?ie.create(u.concat(s.ranges)):ie.create(u):s}}:null}function $T(n){let e=(t=>t.altKey&&t.button==0);return ye.mouseSelectionStyle.of((t,s)=>e(s)?_T(t,s):null)}const CT={Alt:[18,n=>!!n.altKey],Control:[17,n=>!!n.ctrlKey],Shift:[16,n=>!!n.shiftKey],Meta:[91,n=>!!n.metaKey]},TT={style:"cursor: crosshair"};function PT(n={}){let[e,t]=CT[n.key||"Alt"],s=mt.fromClass(class{constructor(i){this.view=i,this.isDown=!1}set(i){this.isDown!=i&&(this.isDown=i,this.view.update([]))}},{eventObservers:{keydown(i){this.set(i.keyCode==e||t(i))},keyup(i){(i.keyCode==e||!t(i))&&this.set(!1)},mousemove(i){this.set(t(i))}}});return[s,ye.contentAttributes.of(i=>{var r;return!((r=i.plugin(s))===null||r===void 0)&&r.isDown?TT:null})]}const lo="-10000px";class Jw{constructor(e,t,s,i){this.facet=t,this.createTooltipView=s,this.removeTooltipView=i,this.input=e.state.facet(t),this.tooltips=this.input.filter(o=>o);let r=null;this.tooltipViews=this.tooltips.map(o=>r=s(o,r))}update(e,t){var s;let i=e.state.facet(this.facet),r=i.filter(u=>u);if(i===this.input){for(let u of this.tooltipViews)u.update&&u.update(e);return!1}let o=[],c=t?[]:null;for(let u=0;u<r.length;u++){let f=r[u],p=-1;if(f){for(let g=0;g<this.tooltips.length;g++){let O=this.tooltips[g];O&&O.create==f.create&&(p=g)}if(p<0)o[u]=this.createTooltipView(f,u?o[u-1]:null),c&&(c[u]=!!f.above);else{let g=o[u]=this.tooltipViews[p];c&&(c[u]=t[p]),g.update&&g.update(e)}}}for(let u of this.tooltipViews)o.indexOf(u)<0&&(this.removeTooltipView(u),(s=u.destroy)===null||s===void 0||s.call(u));return t&&(c.forEach((u,f)=>t[f]=u),t.length=c.length),this.input=i,this.tooltips=r,this.tooltipViews=o,!0}}function jT(n){let e=n.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}const tf=Se.define({combine:n=>{var e,t,s;return{position:ve.ios?"absolute":((e=n.find(i=>i.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((t=n.find(i=>i.parent))===null||t===void 0?void 0:t.parent)||null,tooltipSpace:((s=n.find(i=>i.tooltipSpace))===null||s===void 0?void 0:s.tooltipSpace)||jT}}}),Tv=new WeakMap,Kp=mt.fromClass(class{constructor(n){this.view=n,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let e=n.state.facet(tf);this.position=e.position,this.parent=e.parent,this.classes=n.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 Jw(n,Jp,(t,s)=>this.createTooltip(t,s),t=>{this.resizeObserver&&this.resizeObserver.unobserve(t.dom),t.dom.remove()}),this.above=this.manager.tooltips.map(t=>!!t.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(t=>{Date.now()>this.lastTransaction-50&&t.length>0&&t[t.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),n.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 n of this.manager.tooltipViews)this.intersectionObserver.observe(n.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(n){n.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(n,this.above);e&&this.observeIntersection();let t=e||n.geometryChanged,s=n.state.facet(tf);if(s.position!=this.position&&!this.madeAbsolute){this.position=s.position;for(let i of this.manager.tooltipViews)i.dom.style.position=this.position;t=!0}if(s.parent!=this.parent){this.parent&&this.container.remove(),this.parent=s.parent,this.createContainer();for(let i of this.manager.tooltipViews)this.container.appendChild(i.dom);t=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);t&&this.maybeMeasure()}createTooltip(n,e){let t=n.create(this.view),s=e?e.dom:null;if(t.dom.classList.add("cm-tooltip"),n.arrow&&!t.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let i=document.createElement("div");i.className="cm-tooltip-arrow",t.dom.appendChild(i)}return t.dom.style.position=this.position,t.dom.style.top=lo,t.dom.style.left="0px",this.container.insertBefore(t.dom,s),t.mount&&t.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(t.dom),t}destroy(){var n,e,t;this.view.win.removeEventListener("resize",this.measureSoon);for(let s of this.manager.tooltipViews)s.dom.remove(),(n=s.destroy)===null||n===void 0||n.call(s);this.parent&&this.container.remove(),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),(t=this.intersectionObserver)===null||t===void 0||t.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let n=1,e=1,t=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:r}=this.manager.tooltipViews[0];if(ve.gecko)t=r.offsetParent!=this.container.ownerDocument.body;else if(r.style.top==lo&&r.style.left=="0px"){let o=r.getBoundingClientRect();t=Math.abs(o.top+1e4)>1||Math.abs(o.left)>1}}if(t||this.position=="absolute")if(this.parent){let r=this.parent.getBoundingClientRect();r.width&&r.height&&(n=r.width/this.parent.offsetWidth,e=r.height/this.parent.offsetHeight)}else({scaleX:n,scaleY:e}=this.view.viewState);let s=this.view.scrollDOM.getBoundingClientRect(),i=Yp(this.view);return{visible:{left:s.left+i.left,top:s.top+i.top,right:s.right-i.right,bottom:s.bottom-i.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((r,o)=>{let c=this.manager.tooltipViews[o];return c.getCoords?c.getCoords(r.pos):this.view.coordsAtPos(r.pos)}),size:this.manager.tooltipViews.map(({dom:r})=>r.getBoundingClientRect()),space:this.view.state.facet(tf).tooltipSpace(this.view),scaleX:n,scaleY:e,makeAbsolute:t}}writeMeasure(n){var e;if(n.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let c of this.manager.tooltipViews)c.dom.style.position="absolute"}let{visible:t,space:s,scaleX:i,scaleY:r}=n,o=[];for(let c=0;c<this.manager.tooltips.length;c++){let u=this.manager.tooltips[c],f=this.manager.tooltipViews[c],{dom:p}=f,g=n.pos[c],O=n.size[c];if(!g||u.clip!==!1&&(g.bottom<=Math.max(t.top,s.top)||g.top>=Math.min(t.bottom,s.bottom)||g.right<Math.max(t.left,s.left)-.1||g.left>Math.min(t.right,s.right)+.1)){p.style.top=lo;continue}let v=u.arrow?f.dom.querySelector(".cm-tooltip-arrow"):null,w=v?7:0,k=O.right-O.left,S=(e=Tv.get(f))!==null&&e!==void 0?e:O.bottom-O.top,$=f.offset||NT,b=this.view.textDirection==ot.LTR,C=O.width>s.right-s.left?b?s.left:s.right-O.width:b?Math.max(s.left,Math.min(g.left-(v?14:0)+$.x,s.right-k)):Math.min(Math.max(s.left,g.left-k+(v?14:0)-$.x),s.right-k),T=this.above[c];!u.strictSide&&(T?g.top-S-w-$.y<s.top:g.bottom+S+w+$.y>s.bottom)&&T==s.bottom-g.bottom>g.top-s.top&&(T=this.above[c]=!T);let P=(T?g.top-s.top:s.bottom-g.bottom)-w;if(P<S&&f.resize!==!1){if(P<this.view.defaultLineHeight){p.style.top=lo;continue}Tv.set(f,S),p.style.height=(S=P)/r+"px"}else p.style.height&&(p.style.height="");let N=T?g.top-S-w-$.y:g.bottom+w+$.y,A=C+k;if(f.overlap!==!0)for(let X of o)X.left<A&&X.right>C&&X.top<N+S&&X.bottom>N&&(N=T?X.top-S-2-w:X.bottom+w+2);if(this.position=="absolute"?(p.style.top=(N-n.parent.top)/r+"px",Pv(p,(C-n.parent.left)/i)):(p.style.top=N/r+"px",Pv(p,C/i)),v){let X=g.left+(b?$.x:-$.x)-(C+14-7);v.style.left=X/i+"px"}f.overlap!==!0&&o.push({left:C,top:N,right:A,bottom:N+S}),p.classList.toggle("cm-tooltip-above",T),p.classList.toggle("cm-tooltip-below",!T),f.positioned&&f.positioned(n.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 n of this.manager.tooltipViews)n.dom.style.top=lo}},{eventObservers:{scroll(){this.maybeMeasure()}}});function Pv(n,e){let t=parseInt(n.style.left,10);(isNaN(t)||Math.abs(e-t)>1)&&(n.style.left=e+"px")}const QT=ye.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"}}}),NT={x:0,y:0},Jp=Se.define({enables:[Kp,QT]}),hu=Se.define({combine:n=>n.reduce((e,t)=>e.concat(t),[])});class Zu{static create(e){return new Zu(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new Jw(e,hu,(t,s)=>this.createHostedView(t,s),t=>t.dom.remove())}createHostedView(e,t){let s=e.create(this.view);return s.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(s.dom,t?t.dom.nextSibling:this.dom.firstChild),this.mounted&&s.mount&&s.mount(this.view),s}mount(e){for(let t of this.manager.tooltipViews)t.mount&&t.mount(e);this.mounted=!0}positioned(e){for(let t of this.manager.tooltipViews)t.positioned&&t.positioned(e)}update(e){this.manager.update(e)}destroy(){var e;for(let t of this.manager.tooltipViews)(e=t.destroy)===null||e===void 0||e.call(t)}passProp(e){let t;for(let s of this.manager.tooltipViews){let i=s[e];if(i!==void 0){if(t===void 0)t=i;else if(t!==i)return}}return t}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}}const ET=Jp.compute([hu],n=>{let e=n.facet(hu);return e.length===0?null:{pos:Math.min(...e.map(t=>t.pos)),end:Math.max(...e.map(t=>{var s;return(s=t.end)!==null&&s!==void 0?s:t.pos})),create:Zu.create,above:e[0].above,arrow:e.some(t=>t.arrow)}});class AT{constructor(e,t,s,i,r){this.view=e,this.source=t,this.field=s,this.setHover=i,this.hoverTime=r,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let e=Date.now()-this.lastMove.time;e<this.hoverTime?this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime-e):this.startHover()}startHover(){clearTimeout(this.restartTimeout);let{view:e,lastMove:t}=this,s=e.docView.nearest(t.target);if(!s)return;let i,r=1;if(s instanceof Si)i=s.posAtStart;else{if(i=e.posAtCoords(t),i==null)return;let c=e.coordsAtPos(i);if(!c||t.y<c.top||t.y>c.bottom||t.x<c.left-e.defaultCharacterWidth||t.x>c.right+e.defaultCharacterWidth)return;let u=e.bidiSpans(e.state.doc.lineAt(i)).find(p=>p.from<=i&&p.to>=i),f=u&&u.dir==ot.RTL?-1:1;r=t.x<c.left?-f:f}let o=this.source(e,i,r);if(o?.then){let c=this.pending={pos:i};o.then(u=>{this.pending==c&&(this.pending=null,u&&!(Array.isArray(u)&&!u.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(u)?u:[u])}))},u=>kn(e.state,u,"hover tooltip"))}else o&&!(Array.isArray(o)&&!o.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(o)?o:[o])})}get tooltip(){let e=this.view.plugin(Kp),t=e?e.manager.tooltips.findIndex(s=>s.create==Zu.create):-1;return t>-1?e.manager.tooltipViews[t]:null}mousemove(e){var t,s;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:i,tooltip:r}=this;if(i.length&&r&&!MT(r.dom,e)||this.pending){let{pos:o}=i[0]||this.pending,c=(s=(t=i[0])===null||t===void 0?void 0:t.end)!==null&&s!==void 0?s:o;(o==c?this.view.posAtCoords(this.lastMove)!=o:!RT(this.view,o,c,e.clientX,e.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:t}=this;if(t.length){let{tooltip:s}=this;s&&s.dom.contains(e.relatedTarget)?this.watchTooltipLeave(s.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(e){let t=s=>{e.removeEventListener("mouseleave",t),this.active.length&&!this.view.dom.contains(s.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};e.addEventListener("mouseleave",t)}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}const Qc=4;function MT(n,e){let{left:t,right:s,top:i,bottom:r}=n.getBoundingClientRect(),o;if(o=n.querySelector(".cm-tooltip-arrow")){let c=o.getBoundingClientRect();i=Math.min(c.top,i),r=Math.max(c.bottom,r)}return e.clientX>=t-Qc&&e.clientX<=s+Qc&&e.clientY>=i-Qc&&e.clientY<=r+Qc}function RT(n,e,t,s,i,r){let o=n.scrollDOM.getBoundingClientRect(),c=n.documentTop+n.documentPadding.top+n.contentHeight;if(o.left>s||o.right<s||o.top>i||Math.min(o.bottom,c)<i)return!1;let u=n.posAtCoords({x:s,y:i},!1);return u>=e&&u<=t}function DT(n,e={}){let t=Me.define(),s=Zt.define({create(){return[]},update(i,r){if(i.length&&(e.hideOnChange&&(r.docChanged||r.selection)?i=[]:e.hideOn&&(i=i.filter(o=>!e.hideOn(r,o))),r.docChanged)){let o=[];for(let c of i){let u=r.changes.mapPos(c.pos,-1,Vt.TrackDel);if(u!=null){let f=Object.assign(Object.create(null),c);f.pos=u,f.end!=null&&(f.end=r.changes.mapPos(f.end)),o.push(f)}}i=o}for(let o of r.effects)o.is(t)&&(i=o.value),o.is(IT)&&(i=[]);return i},provide:i=>hu.from(i)});return{active:s,extension:[s,mt.define(i=>new AT(i,n,s,t,e.hoverTime||300)),ET]}}function ek(n,e){let t=n.plugin(Kp);if(!t)return null;let s=t.manager.tooltips.indexOf(e);return s<0?null:t.manager.tooltipViews[s]}const IT=Me.define(),jv=Se.define({combine(n){let e,t;for(let s of n)e=e||s.topContainer,t=t||s.bottomContainer;return{topContainer:e,bottomContainer:t}}});function Zo(n,e){let t=n.plugin(tk),s=t?t.specs.indexOf(e):-1;return s>-1?t.panels[s]:null}const tk=mt.fromClass(class{constructor(n){this.input=n.state.facet(zo),this.specs=this.input.filter(t=>t),this.panels=this.specs.map(t=>t(n));let e=n.state.facet(jv);this.top=new Nc(n,!0,e.topContainer),this.bottom=new Nc(n,!1,e.bottomContainer),this.top.sync(this.panels.filter(t=>t.top)),this.bottom.sync(this.panels.filter(t=>!t.top));for(let t of this.panels)t.dom.classList.add("cm-panel"),t.mount&&t.mount()}update(n){let e=n.state.facet(jv);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new Nc(n.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new Nc(n.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let t=n.state.facet(zo);if(t!=this.input){let s=t.filter(u=>u),i=[],r=[],o=[],c=[];for(let u of s){let f=this.specs.indexOf(u),p;f<0?(p=u(n.view),c.push(p)):(p=this.panels[f],p.update&&p.update(n)),i.push(p),(p.top?r:o).push(p)}this.specs=s,this.panels=i,this.top.sync(r),this.bottom.sync(o);for(let u of c)u.dom.classList.add("cm-panel"),u.mount&&u.mount()}else for(let s of this.panels)s.update&&s.update(n)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:n=>ye.scrollMargins.of(e=>{let t=e.plugin(n);return t&&{top:t.top.scrollMargin(),bottom:t.bottom.scrollMargin()}})});class Nc{constructor(e,t,s){this.view=e,this.top=t,this.container=s,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let t of this.panels)t.destroy&&e.indexOf(t)<0&&t.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 t=this.container||this.view.dom;t.insertBefore(this.dom,this.top?t.firstChild:null)}let e=this.dom.firstChild;for(let t of this.panels)if(t.dom.parentNode==this.dom){for(;e!=t.dom;)e=Qv(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=Qv(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 Qv(n){let e=n.nextSibling;return n.remove(),e}const zo=Se.define({enables:tk});class Gs extends or{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}Gs.prototype.elementClass="";Gs.prototype.toDOM=void 0;Gs.prototype.mapMode=Vt.TrackBefore;Gs.prototype.startSide=Gs.prototype.endSide=-1;Gs.prototype.point=!0;const Kc=Se.define(),LT=Se.define(),ZT={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>Ue.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},$o=Se.define();function zT(n){return[nk(),$o.of({...ZT,...n})]}const Nv=Se.define({combine:n=>n.some(e=>e)});function nk(n){return[FT]}const FT=mt.fromClass(class{constructor(n){this.view=n,this.domAfter=null,this.prevViewport=n.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=n.state.facet($o).map(e=>new Av(n,e)),this.fixed=!n.state.facet(Nv);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),n.scrollDOM.insertBefore(this.dom,n.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(n){if(this.updateGutters(n)){let e=this.prevViewport,t=n.view.viewport,s=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(s<(t.to-t.from)*.8)}if(n.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(Nv)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=n.view.viewport}syncGutters(n){let e=this.dom.nextSibling;n&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let t=Ue.iter(this.view.state.facet(Kc),this.view.viewport.from),s=[],i=this.gutters.map(r=>new BT(r,this.view.viewport,-this.view.documentPadding.top));for(let r of this.view.viewportLineBlocks)if(s.length&&(s=[]),Array.isArray(r.type)){let o=!0;for(let c of r.type)if(c.type==on.Text&&o){hp(t,s,c.from);for(let u of i)u.line(this.view,c,s);o=!1}else if(c.widget)for(let u of i)u.widget(this.view,c)}else if(r.type==on.Text){hp(t,s,r.from);for(let o of i)o.line(this.view,r,s)}else if(r.widget)for(let o of i)o.widget(this.view,r);for(let r of i)r.finish();n&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(n){let e=n.startState.facet($o),t=n.state.facet($o),s=n.docChanged||n.heightChanged||n.viewportChanged||!Ue.eq(n.startState.facet(Kc),n.state.facet(Kc),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let i of this.gutters)i.update(n)&&(s=!0);else{s=!0;let i=[];for(let r of t){let o=e.indexOf(r);o<0?i.push(new Av(this.view,r)):(this.gutters[o].update(n),i.push(this.gutters[o]))}for(let r of this.gutters)r.dom.remove(),i.indexOf(r)<0&&r.destroy();for(let r of i)r.config.side=="after"?this.getDOMAfter().appendChild(r.dom):this.dom.appendChild(r.dom);this.gutters=i}return s}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:n=>ye.scrollMargins.of(e=>{let t=e.plugin(n);if(!t||t.gutters.length==0||!t.fixed)return null;let s=t.dom.offsetWidth*e.scaleX,i=t.domAfter?t.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==ot.LTR?{left:s,right:i}:{right:s,left:i}})});function Ev(n){return Array.isArray(n)?n:[n]}function hp(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}class BT{constructor(e,t,s){this.gutter=e,this.height=s,this.i=0,this.cursor=Ue.iter(e.markers,t.from)}addElement(e,t,s){let{gutter:i}=this,r=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==i.elements.length){let c=new sk(e,o,r,s);i.elements.push(c),i.dom.appendChild(c.dom)}else i.elements[this.i].update(e,o,r,s);this.height=t.bottom,this.i++}line(e,t,s){let i=[];hp(this.cursor,i,t.from),s.length&&(i=i.concat(s));let r=this.gutter.config.lineMarker(e,t,i);r&&i.unshift(r);let o=this.gutter;i.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,i)}widget(e,t){let s=this.gutter.config.widgetMarker(e,t.widget,t),i=s?[s]:null;for(let r of e.state.facet(LT)){let o=r(e,t.widget,t);o&&(i||(i=[])).push(o)}i&&this.addElement(e,t,i)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class Av{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let s in t.domEventHandlers)this.dom.addEventListener(s,i=>{let r=i.target,o;if(r!=this.dom&&this.dom.contains(r)){for(;r.parentNode!=this.dom;)r=r.parentNode;let u=r.getBoundingClientRect();o=(u.top+u.bottom)/2}else o=i.clientY;let c=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[s](e,c,i)&&i.preventDefault()});this.markers=Ev(t.markers(e)),t.initialSpacer&&(this.spacer=new sk(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=Ev(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let i=this.config.updateSpacer(this.spacer.markers[0],e);i!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[i])}let s=e.view.viewport;return!Ue.eq(this.markers,t,s.from,s.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class sk{constructor(e,t,s,i){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,s,i)}update(e,t,s,i){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=s&&(this.dom.style.marginTop=(this.above=s)?s+"px":""),XT(this.markers,i)||this.setMarkers(e,i)}setMarkers(e,t){let s="cm-gutterElement",i=this.dom.firstChild;for(let r=0,o=0;;){let c=o,u=r<t.length?t[r++]:null,f=!1;if(u){let p=u.elementClass;p&&(s+=" "+p);for(let g=o;g<this.markers.length;g++)if(this.markers[g].compare(u)){c=g,f=!0;break}}else c=this.markers.length;for(;o<c;){let p=this.markers[o++];if(p.toDOM){p.destroy(i);let g=i.nextSibling;i.remove(),i=g}}if(!u)break;u.toDOM&&(f?i=i.nextSibling:this.dom.insertBefore(u.toDOM(e),i)),f&&o++}this.dom.className=s,this.markers=t}destroy(){this.setMarkers(null,[])}}function XT(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(!n[t].compare(e[t]))return!1;return!0}const VT=Se.define(),WT=Se.define(),Hr=Se.define({combine(n){return Qs(n,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let s=Object.assign({},e);for(let i in t){let r=s[i],o=t[i];s[i]=r?(c,u,f)=>r(c,u,f)||o(c,u,f):o}return s}})}});class nf extends Gs{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function sf(n,e){return n.state.facet(Hr).formatNumber(e,n.state)}const UT=$o.compute([Hr],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(VT)},lineMarker(e,t,s){return s.some(i=>i.toDOM)?null:new nf(sf(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,s)=>{for(let i of e.state.facet(WT)){let r=i(e,t,s);if(r)return r}return null},lineMarkerChange:e=>e.startState.facet(Hr)!=e.state.facet(Hr),initialSpacer(e){return new nf(sf(e,Mv(e.state.doc.lines)))},updateSpacer(e,t){let s=sf(t.view,Mv(t.view.state.doc.lines));return s==e.number?e:new nf(s)},domEventHandlers:n.facet(Hr).domEventHandlers,side:"before"}));function YT(n={}){return[Hr.of(n),nk(),UT]}function Mv(n){let e=9;for(;e<n;)e=e*10+9;return e}const qT=new class extends Gs{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},GT=Kc.compute(["selection"],n=>{let e=[],t=-1;for(let s of n.selection.ranges){let i=n.doc.lineAt(s.head).from;i>t&&(t=i,e.push(qT.range(i)))}return Ue.of(e)});function HT(){return GT}const ik=1024;let KT=0;class rf{constructor(e,t){this.from=e,this.to=t}}class Le{constructor(e={}){this.id=KT++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=_n.match(e)),t=>{let s=e(t);return s===void 0?null:[this,s]}}}Le.closedBy=new Le({deserialize:n=>n.split(" ")});Le.openedBy=new Le({deserialize:n=>n.split(" ")});Le.group=new Le({deserialize:n=>n.split(" ")});Le.isolate=new Le({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});Le.contextHash=new Le({perNode:!0});Le.lookAhead=new Le({perNode:!0});Le.mounted=new Le({perNode:!0});class fu{constructor(e,t,s){this.tree=e,this.overlay=t,this.parser=s}static get(e){return e&&e.props&&e.props[Le.mounted.id]}}const JT=Object.create(null);class _n{constructor(e,t,s,i=0){this.name=e,this.props=t,this.id=s,this.flags=i}static define(e){let t=e.props&&e.props.length?Object.create(null):JT,s=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),i=new _n(e.name||"",t,e.id,s);if(e.props){for(let r of e.props)if(Array.isArray(r)||(r=r(i)),r){if(r[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[r[0].id]=r[1]}}return i}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 t=this.prop(Le.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let s in e)for(let i of s.split(" "))t[i]=e[s];return s=>{for(let i=s.prop(Le.group),r=-1;r<(i?i.length:0);r++){let o=t[r<0?s.name:i[r]];if(o)return o}}}}_n.none=new _n("",Object.create(null),0,8);class em{constructor(e){this.types=e;for(let t=0;t<e.length;t++)if(e[t].id!=t)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...e){let t=[];for(let s of this.types){let i=null;for(let r of e){let o=r(s);o&&(i||(i=Object.assign({},s.props)),i[o[0].id]=o[1])}t.push(i?new _n(s.name,i,s.id,s.flags):s)}return new em(t)}}const Ec=new WeakMap,Rv=new WeakMap;var jt;(function(n){n[n.ExcludeBuffers=1]="ExcludeBuffers",n[n.IncludeAnonymous=2]="IncludeAnonymous",n[n.IgnoreMounts=4]="IgnoreMounts",n[n.IgnoreOverlays=8]="IgnoreOverlays"})(jt||(jt={}));class _t{constructor(e,t,s,i,r){if(this.type=e,this.children=t,this.positions=s,this.length=i,this.props=null,r&&r.length){this.props=Object.create(null);for(let[o,c]of r)this.props[typeof o=="number"?o:o.id]=c}}toString(){let e=fu.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let s of this.children){let i=s.toString();i&&(t&&(t+=","),t+=i)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new pp(this.topNode,e)}cursorAt(e,t=0,s=0){let i=Ec.get(this)||this.topNode,r=new pp(i);return r.moveTo(e,t),Ec.set(this,r._tree),r}get topNode(){return new bn(this,0,0,null)}resolve(e,t=0){let s=Fo(Ec.get(this)||this.topNode,e,t,!1);return Ec.set(this,s),s}resolveInner(e,t=0){let s=Fo(Rv.get(this)||this.topNode,e,t,!0);return Rv.set(this,s),s}resolveStack(e,t=0){return nP(this,e,t)}iterate(e){let{enter:t,leave:s,from:i=0,to:r=this.length}=e,o=e.mode||0,c=(o&jt.IncludeAnonymous)>0;for(let u=this.cursor(o|jt.IncludeAnonymous);;){let f=!1;if(u.from<=r&&u.to>=i&&(!c&&u.type.isAnonymous||t(u)!==!1)){if(u.firstChild())continue;f=!0}for(;f&&s&&(c||!u.type.isAnonymous)&&s(u),!u.nextSibling();){if(!u.parent())return;f=!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 t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:sm(_n.none,this.children,this.positions,0,this.children.length,0,this.length,(t,s,i)=>new _t(this.type,t,s,i,this.propValues),e.makeTree||((t,s,i)=>new _t(_n.none,t,s,i)))}static build(e){return sP(e)}}_t.empty=new _t(_n.none,[],[],0);class tm{constructor(e,t){this.buffer=e,this.index=t}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 tm(this.buffer,this.index)}}class ji{constructor(e,t,s){this.buffer=e,this.length=t,this.set=s}get type(){return _n.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],s=this.buffer[e+3],i=this.set.types[t],r=i.name;if(/\W/.test(r)&&!i.isError&&(r=JSON.stringify(r)),e+=4,s==e)return r;let o=[];for(;e<s;)o.push(this.childString(e)),e=this.buffer[e+3];return r+"("+o.join(",")+")"}findChild(e,t,s,i,r){let{buffer:o}=this,c=-1;for(let u=e;u!=t&&!(rk(r,i,o[u+1],o[u+2])&&(c=u,s>0));u=o[u+3]);return c}slice(e,t,s){let i=this.buffer,r=new Uint16Array(t-e),o=0;for(let c=e,u=0;c<t;){r[u++]=i[c++],r[u++]=i[c++]-s;let f=r[u++]=i[c++]-s;r[u++]=i[c++]-e,o=Math.max(o,f)}return new ji(r,o,this.set)}}function rk(n,e,t,s){switch(n){case-2:return t<e;case-1:return s>=e&&t<e;case 0:return t<e&&s>e;case 1:return t<=e&&s>e;case 2:return s>e;case 4:return!0}}function Fo(n,e,t,s){for(var i;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to<e);){let o=!s&&n instanceof bn&&n.index<0?null:n.parent;if(!o)return n;n=o}let r=s?0:jt.IgnoreOverlays;if(s)for(let o=n,c=o.parent;c;o=c,c=o.parent)o instanceof bn&&o.index<0&&((i=c.enter(e,t,r))===null||i===void 0?void 0:i.from)!=o.from&&(n=c);for(;;){let o=n.enter(e,t,r);if(!o)return n;n=o}}class lk{cursor(e=0){return new pp(this,e)}getChild(e,t=null,s=null){let i=Dv(this,e,t,s);return i.length?i[0]:null}getChildren(e,t=null,s=null){return Dv(this,e,t,s)}resolve(e,t=0){return Fo(this,e,t,!1)}resolveInner(e,t=0){return Fo(this,e,t,!0)}matchContext(e){return fp(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),s=this;for(;t;){let i=t.lastChild;if(!i||i.to!=t.to)break;i.type.isError&&i.from==i.to?(s=t,t=i.prevSibling):t=i}return s}get node(){return this}get next(){return this.parent}}class bn extends lk{constructor(e,t,s,i){super(),this._tree=e,this.from=t,this.index=s,this._parent=i}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,s,i,r=0){for(let o=this;;){for(let{children:c,positions:u}=o._tree,f=t>0?c.length:-1;e!=f;e+=t){let p=c[e],g=u[e]+o.from;if(rk(i,s,g,g+p.length)){if(p instanceof ji){if(r&jt.ExcludeBuffers)continue;let O=p.findChild(0,p.buffer.length,t,s-g,i);if(O>-1)return new _s(new eP(o,p,e,g),null,O)}else if(r&jt.IncludeAnonymous||!p.type.isAnonymous||nm(p)){let O;if(!(r&jt.IgnoreMounts)&&(O=fu.get(p))&&!O.overlay)return new bn(O.tree,g,e,o);let v=new bn(p,g,e,o);return r&jt.IncludeAnonymous||!v.type.isAnonymous?v:v.nextChild(t<0?p.children.length-1:0,t,s,i)}}}if(r&jt.IncludeAnonymous||!o.type.isAnonymous||(o.index>=0?e=o.index+t:e=t<0?-1:o._parent._tree.children.length,o=o._parent,!o))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)}enter(e,t,s=0){let i;if(!(s&jt.IgnoreOverlays)&&(i=fu.get(this._tree))&&i.overlay){let r=e-this.from;for(let{from:o,to:c}of i.overlay)if((t>0?o<=r:o<r)&&(t<0?c>=r:c>r))return new bn(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,s)}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 Dv(n,e,t,s){let i=n.cursor(),r=[];if(!i.firstChild())return r;if(t!=null){for(let o=!1;!o;)if(o=i.type.is(t),!i.nextSibling())return r}for(;;){if(s!=null&&i.type.is(s))return r;if(i.type.is(e)&&r.push(i.node),!i.nextSibling())return s==null?r:[]}}function fp(n,e,t=e.length-1){for(let s=n;t>=0;s=s.parent){if(!s)return!1;if(!s.type.isAnonymous){if(e[t]&&e[t]!=s.name)return!1;t--}}return!0}class eP{constructor(e,t,s,i){this.parent=e,this.buffer=t,this.index=s,this.start=i}}class _s extends lk{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,t,s){super(),this.context=e,this._parent=t,this.index=s,this.type=e.buffer.set.types[e.buffer.buffer[s]]}child(e,t,s){let{buffer:i}=this.context,r=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.context.start,s);return r<0?null:new _s(this.context,this,r)}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)}enter(e,t,s=0){if(s&jt.ExcludeBuffers)return null;let{buffer:i}=this.context,r=i.findChild(this.index+4,i.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return r<0?null:new _s(this.context,this,r)}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,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new _s(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new _s(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:s}=this.context,i=this.index+4,r=s.buffer[this.index+3];if(r>i){let o=s.buffer[this.index+1];e.push(s.slice(i,r,o)),t.push(0)}return new _t(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function ok(n){if(!n.length)return null;let e=0,t=n[0];for(let r=1;r<n.length;r++){let o=n[r];(o.from>t.from||o.to<t.to)&&(t=o,e=r)}let s=t instanceof bn&&t.index<0?null:t.parent,i=n.slice();return s?i[e]=s:i.splice(e,1),new tP(i,t)}class tP{constructor(e,t){this.heads=e,this.node=t}get next(){return ok(this.heads)}}function nP(n,e,t){let s=n.resolveInner(e,t),i=null;for(let r=s instanceof bn?s:s.context.parent;r;r=r.parent)if(r.index<0){let o=r.parent;(i||(i=[s])).push(o.resolve(e,t)),r=o}else{let o=fu.get(r.tree);if(o&&o.overlay&&o.overlay[0].from<=e&&o.overlay[o.overlay.length-1].to>=e){let c=new bn(o.tree,o.overlay[0].from+r.from,-1,r);(i||(i=[s])).push(Fo(c,e,t,!1))}}return i?ok(i):s}class pp{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof bn)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let s=e._parent;s;s=s._parent)this.stack.unshift(s.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,t){this.index=e;let{start:s,buffer:i}=this.buffer;return this.type=t||i.set.types[i.buffer[e]],this.from=s+i.buffer[e+1],this.to=s+i.buffer[e+2],!0}yield(e){return e?e instanceof bn?(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,t,s){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,s,this.mode));let{buffer:i}=this.buffer,r=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.buffer.start,s);return r<0?!1:(this.stack.push(this.index),this.yieldBuf(r))}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,t,s=this.mode){return this.buffer?s&jt.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,s))}parent(){if(!this.buffer)return this.yieldNode(this.mode&jt.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&jt.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:t}=this.buffer,s=this.stack.length-1;if(e<0){let i=s<0?0:this.stack[s]+4;if(this.index!=i)return this.yieldBuf(t.findChild(i,this.index,-1,0,4))}else{let i=t.buffer[this.index+3];if(i<(s<0?t.buffer.length:t.buffer[this.stack[s]+3]))return this.yieldBuf(i)}return s<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 t,s,{buffer:i}=this;if(i){if(e>0){if(this.index<i.buffer.buffer.length)return!1}else for(let r=0;r<this.index;r++)if(i.buffer.buffer[r+3]<this.index)return!1;({index:t,parent:s}=i)}else({index:t,_parent:s}=this._tree);for(;s;{index:t,_parent:s}=s)if(t>-1)for(let r=t+e,o=e<0?-1:s._tree.children.length;r!=o;r+=e){let c=s._tree.children[r];if(this.mode&jt.IncludeAnonymous||c instanceof ji||!c.type.isAnonymous||nm(c))return!1}return!0}move(e,t){if(t&&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,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,s=0;if(e&&e.context==this.buffer)e:for(let i=this.index,r=this.stack.length;r>=0;){for(let o=e;o;o=o._parent)if(o.index==i){if(i==this.index)return o;t=o,s=r+1;break e}i=this.stack[--r]}for(let i=s;i<this.stack.length;i++)t=new _s(this.buffer,t,this.stack[i]);return this.bufferNode=new _s(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let s=0;;){let i=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){s++;continue}this.type.isAnonymous||(i=!0)}for(;;){if(i&&t&&t(this),i=this.type.isAnonymous,!s)return;if(this.nextSibling())break;this.parent(),s--,i=!0}}}matchContext(e){if(!this.buffer)return fp(this.node.parent,e);let{buffer:t}=this.buffer,{types:s}=t.set;for(let i=e.length-1,r=this.stack.length-1;i>=0;r--){if(r<0)return fp(this._tree,e,i);let o=s[t.buffer[this.stack[r]]];if(!o.isAnonymous){if(e[i]&&e[i]!=o.name)return!1;i--}}return!0}}function nm(n){return n.children.some(e=>e instanceof ji||!e.type.isAnonymous||nm(e))}function sP(n){var e;let{buffer:t,nodeSet:s,maxBufferLength:i=ik,reused:r=[],minRepeatType:o=s.types.length}=n,c=Array.isArray(t)?new tm(t,t.length):t,u=s.types,f=0,p=0;function g(P,N,A,X,F,H){let{id:J,start:R,end:V,size:U}=c,te=p,pe=f;for(;U<0;)if(c.next(),U==-1){let j=r[J];A.push(j),X.push(R-P);return}else if(U==-3){f=J;return}else if(U==-4){p=J;return}else throw new RangeError(`Unrecognized record size: ${U}`);let ce=u[J],Y,z,Q=R-P;if(V-R<=i&&(z=S(c.pos-N,F))){let j=new Uint16Array(z.size-z.skip),I=c.pos-z.size,le=j.length;for(;c.pos>I;)le=$(z.start,j,le);Y=new ji(j,V-z.start,s),Q=z.start-P}else{let j=c.pos-U;c.next();let I=[],le=[],ee=J>=o?J:-1,re=0,fe=V;for(;c.pos>j;)ee>=0&&c.id==ee&&c.size>=0?(c.end<=fe-i&&(w(I,le,R,re,c.end,fe,ee,te,pe),re=I.length,fe=c.end),c.next()):H>2500?O(R,j,I,le):g(R,j,I,le,ee,H+1);if(ee>=0&&re>0&&re<I.length&&w(I,le,R,re,R,fe,ee,te,pe),I.reverse(),le.reverse(),ee>-1&&re>0){let me=v(ce,pe);Y=sm(ce,I,le,0,I.length,0,V-R,me,me)}else Y=k(ce,I,le,V-R,te-V,pe)}A.push(Y),X.push(Q)}function O(P,N,A,X){let F=[],H=0,J=-1;for(;c.pos>N;){let{id:R,start:V,end:U,size:te}=c;if(te>4)c.next();else{if(J>-1&&V<J)break;J<0&&(J=U-i),F.push(R,V,U),H++,c.next()}}if(H){let R=new Uint16Array(H*4),V=F[F.length-2];for(let U=F.length-3,te=0;U>=0;U-=3)R[te++]=F[U],R[te++]=F[U+1]-V,R[te++]=F[U+2]-V,R[te++]=te;A.push(new ji(R,F[2]-V,s)),X.push(V-P)}}function v(P,N){return(A,X,F)=>{let H=0,J=A.length-1,R,V;if(J>=0&&(R=A[J])instanceof _t){if(!J&&R.type==P&&R.length==F)return R;(V=R.prop(Le.lookAhead))&&(H=X[J]+R.length+V)}return k(P,A,X,F,H,N)}}function w(P,N,A,X,F,H,J,R,V){let U=[],te=[];for(;P.length>X;)U.push(P.pop()),te.push(N.pop()+A-F);P.push(k(s.types[J],U,te,H-F,R-H,V)),N.push(F-A)}function k(P,N,A,X,F,H,J){if(H){let R=[Le.contextHash,H];J=J?[R].concat(J):[R]}if(F>25){let R=[Le.lookAhead,F];J=J?[R].concat(J):[R]}return new _t(P,N,A,X,J)}function S(P,N){let A=c.fork(),X=0,F=0,H=0,J=A.end-i,R={size:0,start:0,skip:0};e:for(let V=A.pos-P;A.pos>V;){let U=A.size;if(A.id==N&&U>=0){R.size=X,R.start=F,R.skip=H,H+=4,X+=4,A.next();continue}let te=A.pos-U;if(U<0||te<V||A.start<J)break;let pe=A.id>=o?4:0,ce=A.start;for(A.next();A.pos>te;){if(A.size<0)if(A.size==-3)pe+=4;else break e;else A.id>=o&&(pe+=4);A.next()}F=ce,X+=U,H+=pe}return(N<0||X==P)&&(R.size=X,R.start=F,R.skip=H),R.size>4?R:void 0}function $(P,N,A){let{id:X,start:F,end:H,size:J}=c;if(c.next(),J>=0&&X<o){let R=A;if(J>4){let V=c.pos-(J-4);for(;c.pos>V;)A=$(P,N,A)}N[--A]=R,N[--A]=H-P,N[--A]=F-P,N[--A]=X}else J==-3?f=X:J==-4&&(p=X);return A}let b=[],C=[];for(;c.pos>0;)g(n.start||0,n.bufferStart||0,b,C,-1,0);let T=(e=n.length)!==null&&e!==void 0?e:b.length?C[0]+b[0].length:0;return new _t(u[n.topID],b.reverse(),C.reverse(),T)}const Iv=new WeakMap;function Jc(n,e){if(!n.isAnonymous||e instanceof ji||e.type!=n)return 1;let t=Iv.get(e);if(t==null){t=1;for(let s of e.children){if(s.type!=n||!(s instanceof _t)){t=1;break}t+=Jc(n,s)}Iv.set(e,t)}return t}function sm(n,e,t,s,i,r,o,c,u){let f=0;for(let w=s;w<i;w++)f+=Jc(n,e[w]);let p=Math.ceil(f*1.5/8),g=[],O=[];function v(w,k,S,$,b){for(let C=S;C<$;){let T=C,P=k[C],N=Jc(n,w[C]);for(C++;C<$;C++){let A=Jc(n,w[C]);if(N+A>=p)break;N+=A}if(C==T+1){if(N>p){let A=w[T];v(A.children,A.positions,0,A.children.length,k[T]+b);continue}g.push(w[T])}else{let A=k[C-1]+w[C-1].length-P;g.push(sm(n,w,k,T,C,P,A,null,u))}O.push(P+b-r)}}return v(e,t,s,i,0),(c||u)(g,O,o)}class iP{constructor(){this.map=new WeakMap}setBuffer(e,t,s){let i=this.map.get(e);i||this.map.set(e,i=new Map),i.set(t,s)}getBuffer(e,t){let s=this.map.get(e);return s&&s.get(t)}set(e,t){e instanceof _s?this.setBuffer(e.context.buffer,e.index,t):e instanceof bn&&this.map.set(e.tree,t)}get(e){return e instanceof _s?this.getBuffer(e.context.buffer,e.index):e instanceof bn?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class sr{constructor(e,t,s,i,r=!1,o=!1){this.from=e,this.to=t,this.tree=s,this.offset=i,this.open=(r?1:0)|(o?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],s=!1){let i=[new sr(0,e.length,e,0,!1,s)];for(let r of t)r.to>e.length&&i.push(r);return i}static applyChanges(e,t,s=128){if(!t.length)return e;let i=[],r=1,o=e.length?e[0]:null;for(let c=0,u=0,f=0;;c++){let p=c<t.length?t[c]:null,g=p?p.fromA:1e9;if(g-u>=s)for(;o&&o.from<g;){let O=o;if(u>=O.from||g<=O.to||f){let v=Math.max(O.from,u)-f,w=Math.min(O.to,g)-f;O=v>=w?null:new sr(v,w,O.tree,O.offset+f,c>0,!!p)}if(O&&i.push(O),o.to>g)break;o=r<e.length?e[r++]:null}if(!p)break;u=p.toA,f=p.toA-p.toB}return i}}class ak{startParse(e,t,s){return typeof e=="string"&&(e=new rP(e)),s=s?s.length?s.map(i=>new rf(i.from,i.to)):[new rf(0,0)]:[new rf(0,e.length)],this.createParse(e,t||[],s)}parse(e,t,s){let i=this.startParse(e,t,s);for(;;){let r=i.advance();if(r)return r}}}class rP{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}new Le({perNode:!0});let lP=0;class zn{constructor(e,t,s,i){this.name=e,this.set=t,this.base=s,this.modified=i,this.id=lP++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let s=typeof e=="string"?e:"?";if(e instanceof zn&&(t=e),t?.base)throw new Error("Can not derive from a modified tag");let i=new zn(s,[],null,[]);if(i.set.push(i),t)for(let r of t.set)i.set.push(r);return i}static defineModifier(e){let t=new pu(e);return s=>s.modified.indexOf(t)>-1?s:pu.get(s.base||s,s.modified.concat(t).sort((i,r)=>i.id-r.id))}}let oP=0;class pu{constructor(e){this.name=e,this.instances=[],this.id=oP++}static get(e,t){if(!t.length)return e;let s=t[0].instances.find(c=>c.base==e&&aP(t,c.modified));if(s)return s;let i=[],r=new zn(e.name,i,e,t);for(let c of t)c.instances.push(r);let o=cP(t);for(let c of e.set)if(!c.modified.length)for(let u of o)i.push(pu.get(c,u));return r}}function aP(n,e){return n.length==e.length&&n.every((t,s)=>t==e[s])}function cP(n){let e=[[]];for(let t=0;t<n.length;t++)for(let s=0,i=e.length;s<i;s++)e.push(e[s].concat(n[t]));return e.sort((t,s)=>s.length-t.length)}function ck(n){let e=Object.create(null);for(let t in n){let s=n[t];Array.isArray(s)||(s=[s]);for(let i of t.split(" "))if(i){let r=[],o=2,c=i;for(let g=0;;){if(c=="..."&&g>0&&g+3==i.length){o=1;break}let O=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(c);if(!O)throw new RangeError("Invalid path: "+i);if(r.push(O[0]=="*"?"":O[0][0]=='"'?JSON.parse(O[0]):O[0]),g+=O[0].length,g==i.length)break;let v=i[g++];if(g==i.length&&v=="!"){o=0;break}if(v!="/")throw new RangeError("Invalid path: "+i);c=i.slice(g)}let u=r.length-1,f=r[u];if(!f)throw new RangeError("Invalid path: "+i);let p=new mu(s,o,u>0?r.slice(0,u):null);e[f]=p.sort(e[f])}}return uk.add(e)}const uk=new Le;class mu{constructor(e,t,s,i){this.tags=e,this.mode=t,this.context=s,this.next=i}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}}mu.empty=new mu([],2,null);function dk(n,e){let t=Object.create(null);for(let r of n)if(!Array.isArray(r.tag))t[r.tag.id]=r.class;else for(let o of r.tag)t[o.id]=r.class;let{scope:s,all:i=null}=e||{};return{style:r=>{let o=i;for(let c of r)for(let u of c.set){let f=t[u.id];if(f){o=o?o+" "+f:f;break}}return o},scope:s}}function uP(n,e){let t=null;for(let s of n){let i=s.style(e);i&&(t=t?t+" "+i:i)}return t}function dP(n,e,t,s=0,i=n.length){let r=new hP(s,Array.isArray(e)?e:[e],t);r.highlightRange(n.cursor(),s,i,"",r.highlighters),r.flush(i)}class hP{constructor(e,t,s){this.at=e,this.highlighters=t,this.span=s,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,s,i,r){let{type:o,from:c,to:u}=e;if(c>=s||u<=t)return;o.isTop&&(r=this.highlighters.filter(v=>!v.scope||v.scope(o)));let f=i,p=fP(e)||mu.empty,g=uP(r,p.tags);if(g&&(f&&(f+=" "),f+=g,p.mode==1&&(i+=(i?" ":"")+g)),this.startSpan(Math.max(t,c),f),p.opaque)return;let O=e.tree&&e.tree.prop(Le.mounted);if(O&&O.overlay){let v=e.node.enter(O.overlay[0].from+c,1),w=this.highlighters.filter(S=>!S.scope||S.scope(O.tree.type)),k=e.firstChild();for(let S=0,$=c;;S++){let b=S<O.overlay.length?O.overlay[S]:null,C=b?b.from+c:u,T=Math.max(t,$),P=Math.min(s,C);if(T<P&&k)for(;e.from<P&&(this.highlightRange(e,T,P,i,r),this.startSpan(Math.min(P,e.to),f),!(e.to>=C||!e.nextSibling())););if(!b||C>s)break;$=b.to+c,$>t&&(this.highlightRange(v.cursor(),Math.max(t,b.from+c),Math.min(s,$),"",w),this.startSpan(Math.min(s,$),f))}k&&e.parent()}else if(e.firstChild()){O&&(i="");do if(!(e.to<=t)){if(e.from>=s)break;this.highlightRange(e,t,s,i,r),this.startSpan(Math.min(s,e.to),f)}while(e.nextSibling());e.parent()}}}function fP(n){let e=n.type.prop(uk);for(;e&&e.context&&!n.matchContext(e.context);)e=e.next;return e||null}const Oe=zn.define,Ac=Oe(),yi=Oe(),Lv=Oe(yi),Zv=Oe(yi),vi=Oe(),Mc=Oe(vi),lf=Oe(vi),vs=Oe(),Ui=Oe(vs),Os=Oe(),ys=Oe(),mp=Oe(),oo=Oe(mp),Rc=Oe(),Z={comment:Ac,lineComment:Oe(Ac),blockComment:Oe(Ac),docComment:Oe(Ac),name:yi,variableName:Oe(yi),typeName:Lv,tagName:Oe(Lv),propertyName:Zv,attributeName:Oe(Zv),className:Oe(yi),labelName:Oe(yi),namespace:Oe(yi),macroName:Oe(yi),literal:vi,string:Mc,docString:Oe(Mc),character:Oe(Mc),attributeValue:Oe(Mc),number:lf,integer:Oe(lf),float:Oe(lf),bool:Oe(vi),regexp:Oe(vi),escape:Oe(vi),color:Oe(vi),url:Oe(vi),keyword:Os,self:Oe(Os),null:Oe(Os),atom:Oe(Os),unit:Oe(Os),modifier:Oe(Os),operatorKeyword:Oe(Os),controlKeyword:Oe(Os),definitionKeyword:Oe(Os),moduleKeyword:Oe(Os),operator:ys,derefOperator:Oe(ys),arithmeticOperator:Oe(ys),logicOperator:Oe(ys),bitwiseOperator:Oe(ys),compareOperator:Oe(ys),updateOperator:Oe(ys),definitionOperator:Oe(ys),typeOperator:Oe(ys),controlOperator:Oe(ys),punctuation:mp,separator:Oe(mp),bracket:oo,angleBracket:Oe(oo),squareBracket:Oe(oo),paren:Oe(oo),brace:Oe(oo),content:vs,heading:Ui,heading1:Oe(Ui),heading2:Oe(Ui),heading3:Oe(Ui),heading4:Oe(Ui),heading5:Oe(Ui),heading6:Oe(Ui),contentSeparator:Oe(vs),list:Oe(vs),quote:Oe(vs),emphasis:Oe(vs),strong:Oe(vs),link:Oe(vs),monospace:Oe(vs),strikethrough:Oe(vs),inserted:Oe(),deleted:Oe(),changed:Oe(),invalid:Oe(),meta:Rc,documentMeta:Oe(Rc),annotation:Oe(Rc),processingInstruction:Oe(Rc),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 n in Z){let e=Z[n];e instanceof zn&&(e.name=n)}dk([{tag:Z.link,class:"tok-link"},{tag:Z.heading,class:"tok-heading"},{tag:Z.emphasis,class:"tok-emphasis"},{tag:Z.strong,class:"tok-strong"},{tag:Z.keyword,class:"tok-keyword"},{tag:Z.atom,class:"tok-atom"},{tag:Z.bool,class:"tok-bool"},{tag:Z.url,class:"tok-url"},{tag:Z.labelName,class:"tok-labelName"},{tag:Z.inserted,class:"tok-inserted"},{tag:Z.deleted,class:"tok-deleted"},{tag:Z.literal,class:"tok-literal"},{tag:Z.string,class:"tok-string"},{tag:Z.number,class:"tok-number"},{tag:[Z.regexp,Z.escape,Z.special(Z.string)],class:"tok-string2"},{tag:Z.variableName,class:"tok-variableName"},{tag:Z.local(Z.variableName),class:"tok-variableName tok-local"},{tag:Z.definition(Z.variableName),class:"tok-variableName tok-definition"},{tag:Z.special(Z.variableName),class:"tok-variableName2"},{tag:Z.definition(Z.propertyName),class:"tok-propertyName tok-definition"},{tag:Z.typeName,class:"tok-typeName"},{tag:Z.namespace,class:"tok-namespace"},{tag:Z.className,class:"tok-className"},{tag:Z.macroName,class:"tok-macroName"},{tag:Z.propertyName,class:"tok-propertyName"},{tag:Z.operator,class:"tok-operator"},{tag:Z.comment,class:"tok-comment"},{tag:Z.meta,class:"tok-meta"},{tag:Z.invalid,class:"tok-invalid"},{tag:Z.punctuation,class:"tok-punctuation"}]);var of;const Kr=new Le;function hk(n){return Se.define({combine:n?e=>e.concat(n):void 0})}const im=new Le;class rs{constructor(e,t,s=[],i=""){this.data=e,this.name=i,ze.prototype.hasOwnProperty("tree")||Object.defineProperty(ze.prototype,"tree",{get(){return Nt(this)}}),this.parser=t,this.extension=[Qi.of(this),ze.languageData.of((r,o,c)=>{let u=zv(r,o,c),f=u.type.prop(Kr);if(!f)return[];let p=r.facet(f),g=u.type.prop(im);if(g){let O=u.resolve(o-u.from,c);for(let v of g)if(v.test(O,r)){let w=r.facet(v.facet);return v.type=="replace"?w:w.concat(p)}}return p})].concat(s)}isActiveAt(e,t,s=-1){return zv(e,t,s).type.prop(Kr)==this.data}findRegions(e){let t=e.facet(Qi);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let s=[],i=(r,o)=>{if(r.prop(Kr)==this.data){s.push({from:o,to:o+r.length});return}let c=r.prop(Le.mounted);if(c){if(c.tree.prop(Kr)==this.data){if(c.overlay)for(let u of c.overlay)s.push({from:u.from+o,to:u.to+o});else s.push({from:o,to:o+r.length});return}else if(c.overlay){let u=s.length;if(i(c.tree,c.overlay[0].from+o),s.length>u)return}}for(let u=0;u<r.children.length;u++){let f=r.children[u];f instanceof _t&&i(f,r.positions[u]+o)}};return i(Nt(e),0),s}get allowsNesting(){return!0}}rs.setState=Me.define();function zv(n,e,t){let s=n.facet(Qi),i=Nt(n).topNode;if(!s||s.allowsNesting)for(let r=i;r;r=r.enter(e,t,jt.ExcludeBuffers))r.type.isTop&&(i=r);return i}class gu extends rs{constructor(e,t,s){super(e,t,[],s),this.parser=t}static define(e){let t=hk(e.languageData);return new gu(t,e.parser.configure({props:[Kr.add(s=>s.isTop?t:void 0)]}),e.name)}configure(e,t){return new gu(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function Nt(n){let e=n.field(rs.state,!1);return e?e.tree:_t.empty}class pP{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,t){let s=this.cursorPos-this.string.length;return e<s||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-s,t-s)}}let ao=null;class Ou{constructor(e,t,s=[],i,r,o,c,u){this.parser=e,this.state=t,this.fragments=s,this.tree=i,this.treeLen=r,this.viewport=o,this.skipped=c,this.scheduleOn=u,this.parse=null,this.tempSkipped=[]}static create(e,t,s){return new Ou(e,t,[],_t.empty,0,s,[],null)}startParse(){return this.parser.startParse(new pP(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=_t.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var s;if(typeof e=="number"){let i=Date.now()+e;e=()=>Date.now()>i}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let i=this.parse.advance();if(i)if(this.fragments=this.withoutTempSkipped(sr.addTree(i,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(s=this.parse.stoppedAt)!==null&&s!==void 0?s:this.state.doc.length,this.tree=i,this.parse=null,this.treeLen<(t??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(sr.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=ao;ao=this;try{return e()}finally{ao=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Fv(e,t.from,t.to);return e}changes(e,t){let{fragments:s,tree:i,treeLen:r,viewport:o,skipped:c}=this;if(this.takeTree(),!e.empty){let u=[];if(e.iterChangedRanges((f,p,g,O)=>u.push({fromA:f,toA:p,fromB:g,toB:O})),s=sr.applyChanges(s,u),i=_t.empty,r=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){c=[];for(let f of this.skipped){let p=e.mapPos(f.from,1),g=e.mapPos(f.to,-1);p<g&&c.push({from:p,to:g})}}}return new Ou(this.parser,t,s,i,r,o,c,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let s=0;s<this.skipped.length;s++){let{from:i,to:r}=this.skipped[s];i<e.to&&r>e.from&&(this.fragments=Fv(this.fragments,i,r),this.skipped.splice(s--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends ak{createParse(t,s,i){let r=i[0].from,o=i[i.length-1].to;return{parsedPos:r,advance(){let u=ao;if(u){for(let f of i)u.tempSkipped.push(f);e&&(u.scheduleOn=u.scheduleOn?Promise.all([u.scheduleOn,e]):e)}return this.parsedPos=o,new _t(_n.none,[],[],o-r)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return ao}}function Fv(n,e,t){return sr.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}class dl{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),s=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,s)||t.takeTree(),new dl(t)}static init(e){let t=Math.min(3e3,e.doc.length),s=Ou.create(e.facet(Qi).parser,e,{from:0,to:t});return s.work(20,t)||s.takeTree(),new dl(s)}}rs.state=Zt.define({create:dl.init,update(n,e){for(let t of e.effects)if(t.is(rs.setState))return t.value;return e.startState.facet(Qi)!=e.state.facet(Qi)?dl.init(e.state):n.apply(e)}});let fk=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(fk=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const af=typeof navigator<"u"&&(!((of=navigator.scheduling)===null||of===void 0)&&of.isInputPending)?()=>navigator.scheduling.isInputPending():null,mP=mt.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 t=this.view.state.field(rs.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(rs.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=fk(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:s,viewport:{to:i}}=this.view,r=s.field(rs.state);if(r.tree==r.context.tree&&r.context.isDone(i+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!af?Math.max(25,e.timeRemaining()-5):1e9),c=r.context.treeLen<i&&s.doc.length>i+1e3,u=r.context.work(()=>af&&af()||Date.now()>o,i+(c?0:1e5));this.chunkBudget-=Date.now()-t,(u||this.chunkBudget<=0)&&(r.context.takeTree(),this.view.dispatch({effects:rs.setState.of(new dl(r.context))})),this.chunkBudget>0&&!(u&&!c)&&this.scheduleWork(),this.checkAsyncSchedule(r.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>kn(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Qi=Se.define({combine(n){return n.length?n[0]:null},enables:n=>[rs.state,mP,ye.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});class gP{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}const OP=Se.define(),na=Se.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function yu(n){let e=n.facet(na);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function Bo(n,e){let t="",s=n.tabSize,i=n.facet(na)[0];if(i==" "){for(;e>=s;)t+=" ",e-=s;i=" "}for(let r=0;r<e;r++)t+=i;return t}function rm(n,e){n instanceof ze&&(n=new zu(n));for(let s of n.state.facet(OP)){let i=s(n,e);if(i!==void 0)return i}let t=Nt(n.state);return t.length>=e?yP(n,t,e):null}class zu{constructor(e,t={}){this.state=e,this.options=t,this.unit=yu(e)}lineAt(e,t=1){let s=this.state.doc.lineAt(e),{simulateBreak:i,simulateDoubleBreak:r}=this.options;return i!=null&&i>=s.from&&i<=s.to?r&&i==e?{text:"",from:e}:(t<0?i<e:i<=e)?{text:s.text.slice(i-s.from),from:i}:{text:s.text.slice(0,i-s.from),from:s.from}:s}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:s,from:i}=this.lineAt(e,t);return s.slice(e-i,Math.min(s.length,e+100-i))}column(e,t=1){let{text:s,from:i}=this.lineAt(e,t),r=this.countColumn(s,e-i),o=this.options.overrideIndentation?this.options.overrideIndentation(i):-1;return o>-1&&(r+=o-this.countColumn(s,s.search(/\S|$/))),r}countColumn(e,t=e.length){return pl(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:s,from:i}=this.lineAt(e,t),r=this.options.overrideIndentation;if(r){let o=r(i);if(o>-1)return o}return this.countColumn(s,s.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const pk=new Le;function yP(n,e,t){let s=e.resolveStack(t),i=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(i!=s.node){let r=[];for(let o=i;o&&!(o.from<s.node.from||o.to>s.node.to||o.from==s.node.from&&o.type==s.node.type);o=o.parent)r.push(o);for(let o=r.length-1;o>=0;o--)s={node:r[o],next:s}}return mk(s,n,t)}function mk(n,e,t){for(let s=n;s;s=s.next){let i=xP(s.node);if(i)return i(lm.create(e,t,s))}return 0}function vP(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function xP(n){let e=n.type.prop(pk);if(e)return e;let t=n.firstChild,s;if(t&&(s=t.type.prop(Le.closedBy))){let i=n.lastChild,r=i&&s.indexOf(i.name)>-1;return o=>gk(o,!0,1,void 0,r&&!vP(o)?i.from:void 0)}return n.parent==null?wP:null}function wP(){return 0}class lm extends zu{constructor(e,t,s){super(e.state,e.options),this.base=e,this.pos=t,this.context=s}get node(){return this.context.node}static create(e,t,s){return new lm(e,t,s)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let s=e.resolve(t.from);for(;s.parent&&s.parent.from==s.from;)s=s.parent;if(kP(s,e))break;t=this.state.doc.lineAt(s.from)}return this.lineIndent(t.from)}continue(){return mk(this.context.next,this.base,this.pos)}}function kP(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function SP(n){let e=n.node,t=e.childAfter(e.from),s=e.lastChild;if(!t)return null;let i=n.options.simulateBreak,r=n.state.doc.lineAt(t.from),o=i==null||i<=r.from?r.to:Math.min(r.to,i);for(let c=t.to;;){let u=e.childAfter(c);if(!u||u==s)return null;if(!u.type.isSkipped){if(u.from>=o)return null;let f=/^ */.exec(r.text.slice(t.to-r.from))[0].length;return{from:t.from,to:t.to+f}}c=u.to}}function bP({closing:n,align:e=!0,units:t=1}){return s=>gk(s,e,t,n)}function gk(n,e,t,s,i){let r=n.textAfter,o=r.match(/^\s*/)[0].length,c=s&&r.slice(o,o+s.length)==s||i==n.pos+o,u=e?SP(n):null;return u?c?n.column(u.from):n.column(u.to):n.baseIndent+(c?0:n.unit*t)}const _P=n=>n.baseIndent;function cf({except:n,units:e=1}={}){return t=>{let s=n&&n.test(t.textAfter);return t.baseIndent+(s?0:e*t.unit)}}const $P=200;function CP(){return ze.transactionFilter.of(n=>{if(!n.docChanged||!n.isUserEvent("input.type")&&!n.isUserEvent("input.complete"))return n;let e=n.startState.languageDataAt("indentOnInput",n.startState.selection.main.head);if(!e.length)return n;let t=n.newDoc,{head:s}=n.newSelection.main,i=t.lineAt(s);if(s>i.from+$P)return n;let r=t.sliceString(i.from,s);if(!e.some(f=>f.test(r)))return n;let{state:o}=n,c=-1,u=[];for(let{head:f}of o.selection.ranges){let p=o.doc.lineAt(f);if(p.from==c)continue;c=p.from;let g=rm(o,p.from);if(g==null)continue;let O=/^\s*/.exec(p.text)[0],v=Bo(o,g);O!=v&&u.push({from:p.from,to:p.from+O.length,insert:v})}return u.length?[n,{changes:u,sequential:!0}]:n})}const TP=Se.define(),Ok=new Le;function PP(n){let e=n.firstChild,t=n.lastChild;return e&&e.to<t.from?{from:e.to,to:t.type.isError?n.to:t.from}:null}function jP(n,e,t){let s=Nt(n);if(s.length<t)return null;let i=s.resolveStack(t,1),r=null;for(let o=i;o;o=o.next){let c=o.node;if(c.to<=t||c.from>t)continue;if(r&&c.from<e)break;let u=c.type.prop(Ok);if(u&&(c.to<s.length-50||s.length==n.doc.length||!QP(c))){let f=u(c,n);f&&f.from<=t&&f.from>=e&&f.to>t&&(r=f)}}return r}function QP(n){let e=n.lastChild;return e&&e.to==n.to&&e.type.isError}function vu(n,e,t){for(let s of n.facet(TP)){let i=s(n,e,t);if(i)return i}return jP(n,e,t)}function yk(n,e){let t=e.mapPos(n.from,1),s=e.mapPos(n.to,-1);return t>=s?void 0:{from:t,to:s}}const Fu=Me.define({map:yk}),sa=Me.define({map:yk});function vk(n){let e=[];for(let{head:t}of n.state.selection.ranges)e.some(s=>s.from<=t&&s.to>=t)||e.push(n.lineBlockAt(t));return e}const dr=Zt.define({create(){return Pe.none},update(n,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((t,s)=>n=Bv(n,t,s)),n=n.map(e.changes);for(let t of e.effects)if(t.is(Fu)&&!NP(n,t.value.from,t.value.to)){let{preparePlaceholder:s}=e.state.facet(kk),i=s?Pe.replace({widget:new LP(s(e.state,t.value))}):Xv;n=n.update({add:[i.range(t.value.from,t.value.to)]})}else t.is(sa)&&(n=n.update({filter:(s,i)=>t.value.from!=s||t.value.to!=i,filterFrom:t.value.from,filterTo:t.value.to}));return e.selection&&(n=Bv(n,e.selection.main.head)),n},provide:n=>ye.decorations.from(n),toJSON(n,e){let t=[];return n.between(0,e.doc.length,(s,i)=>{t.push(s,i)}),t},fromJSON(n){if(!Array.isArray(n)||n.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let t=0;t<n.length;){let s=n[t++],i=n[t++];if(typeof s!="number"||typeof i!="number")throw new RangeError("Invalid JSON for fold state");e.push(Xv.range(s,i))}return Pe.set(e,!0)}});function Bv(n,e,t=e){let s=!1;return n.between(e,t,(i,r)=>{i<t&&r>e&&(s=!0)}),s?n.update({filterFrom:e,filterTo:t,filter:(i,r)=>i>=t||r<=e}):n}function xu(n,e,t){var s;let i=null;return(s=n.field(dr,!1))===null||s===void 0||s.between(e,t,(r,o)=>{(!i||i.from>r)&&(i={from:r,to:o})}),i}function NP(n,e,t){let s=!1;return n.between(e,e,(i,r)=>{i==e&&r==t&&(s=!0)}),s}function xk(n,e){return n.field(dr,!1)?e:e.concat(Me.appendConfig.of(Sk()))}const EP=n=>{for(let e of vk(n)){let t=vu(n.state,e.from,e.to);if(t)return n.dispatch({effects:xk(n.state,[Fu.of(t),wk(n,t)])}),!0}return!1},AP=n=>{if(!n.state.field(dr,!1))return!1;let e=[];for(let t of vk(n)){let s=xu(n.state,t.from,t.to);s&&e.push(sa.of(s),wk(n,s,!1))}return e.length&&n.dispatch({effects:e}),e.length>0};function wk(n,e,t=!0){let s=n.state.doc.lineAt(e.from).number,i=n.state.doc.lineAt(e.to).number;return ye.announce.of(`${n.state.phrase(t?"Folded lines":"Unfolded lines")} ${s} ${n.state.phrase("to")} ${i}.`)}const MP=n=>{let{state:e}=n,t=[];for(let s=0;s<e.doc.length;){let i=n.lineBlockAt(s),r=vu(e,i.from,i.to);r&&t.push(Fu.of(r)),s=(r?n.lineBlockAt(r.to):i).to+1}return t.length&&n.dispatch({effects:xk(n.state,t)}),!!t.length},RP=n=>{let e=n.state.field(dr,!1);if(!e||!e.size)return!1;let t=[];return e.between(0,n.state.doc.length,(s,i)=>{t.push(sa.of({from:s,to:i}))}),n.dispatch({effects:t}),!0},DP=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:EP},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:AP},{key:"Ctrl-Alt-[",run:MP},{key:"Ctrl-Alt-]",run:RP}],IP={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},kk=Se.define({combine(n){return Qs(n,IP)}});function Sk(n){return[dr,FP]}function bk(n,e){let{state:t}=n,s=t.facet(kk),i=o=>{let c=n.lineBlockAt(n.posAtDOM(o.target)),u=xu(n.state,c.from,c.to);u&&n.dispatch({effects:sa.of(u)}),o.preventDefault()};if(s.placeholderDOM)return s.placeholderDOM(n,i,e);let r=document.createElement("span");return r.textContent=s.placeholderText,r.setAttribute("aria-label",t.phrase("folded code")),r.title=t.phrase("unfold"),r.className="cm-foldPlaceholder",r.onclick=i,r}const Xv=Pe.replace({widget:new class extends Ns{toDOM(n){return bk(n,null)}}});class LP extends Ns{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return bk(e,this.value)}}const ZP={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class uf extends Gs{constructor(e,t){super(),this.config=e,this.open=t}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let t=document.createElement("span");return t.textContent=this.open?this.config.openText:this.config.closedText,t.title=e.state.phrase(this.open?"Fold line":"Unfold line"),t}}function zP(n={}){let e={...ZP,...n},t=new uf(e,!0),s=new uf(e,!1),i=mt.fromClass(class{constructor(o){this.from=o.viewport.from,this.markers=this.buildMarkers(o)}update(o){(o.docChanged||o.viewportChanged||o.startState.facet(Qi)!=o.state.facet(Qi)||o.startState.field(dr,!1)!=o.state.field(dr,!1)||Nt(o.startState)!=Nt(o.state)||e.foldingChanged(o))&&(this.markers=this.buildMarkers(o.view))}buildMarkers(o){let c=new Ys;for(let u of o.viewportLineBlocks){let f=xu(o.state,u.from,u.to)?s:vu(o.state,u.from,u.to)?t:null;f&&c.add(u.from,u.from,f)}return c.finish()}}),{domEventHandlers:r}=e;return[i,zT({class:"cm-foldGutter",markers(o){var c;return((c=o.plugin(i))===null||c===void 0?void 0:c.markers)||Ue.empty},initialSpacer(){return new uf(e,!1)},domEventHandlers:{...r,click:(o,c,u)=>{if(r.click&&r.click(o,c,u))return!0;let f=xu(o.state,c.from,c.to);if(f)return o.dispatch({effects:sa.of(f)}),!0;let p=vu(o.state,c.from,c.to);return p?(o.dispatch({effects:Fu.of(p)}),!0):!1}}}),Sk()]}const FP=ye.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 ia{constructor(e,t){this.specs=e;let s;function i(c){let u=Ci.newName();return(s||(s=Object.create(null)))["."+u]=c,u}const r=typeof t.all=="string"?t.all:t.all?i(t.all):void 0,o=t.scope;this.scope=o instanceof rs?c=>c.prop(Kr)==o.data:o?c=>c==o:void 0,this.style=dk(e.map(c=>({tag:c.tag,class:c.class||i(Object.assign({},c,{tag:null}))})),{all:r}).style,this.module=s?new Ci(s):null,this.themeType=t.themeType}static define(e,t){return new ia(e,t||{})}}const gp=Se.define(),_k=Se.define({combine(n){return n.length?[n[0]]:null}});function df(n){let e=n.facet(gp);return e.length?e:n.facet(_k)}function $k(n,e){let t=[XP],s;return n instanceof ia&&(n.module&&t.push(ye.styleModule.of(n.module)),s=n.themeType),e?.fallback?t.push(_k.of(n)):s?t.push(gp.computeN([ye.darkTheme],i=>i.facet(ye.darkTheme)==(s=="dark")?[n]:[])):t.push(gp.of(n)),t}class BP{constructor(e){this.markCache=Object.create(null),this.tree=Nt(e.state),this.decorations=this.buildDeco(e,df(e.state)),this.decoratedTo=e.viewport.to}update(e){let t=Nt(e.state),s=df(e.state),i=s!=df(e.startState),{viewport:r}=e.view,o=e.changes.mapPos(this.decoratedTo,1);t.length<r.to&&!i&&t.type==this.tree.type&&o>=r.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=o):(t!=this.tree||e.viewportChanged||i)&&(this.tree=t,this.decorations=this.buildDeco(e.view,s),this.decoratedTo=r.to)}buildDeco(e,t){if(!t||!this.tree.length)return Pe.none;let s=new Ys;for(let{from:i,to:r}of e.visibleRanges)dP(this.tree,t,(o,c,u)=>{s.add(o,c,this.markCache[u]||(this.markCache[u]=Pe.mark({class:u})))},i,r);return s.finish()}}const XP=Ni.high(mt.fromClass(BP,{decorations:n=>n.decorations})),VP=ia.define([{tag:Z.meta,color:"#404740"},{tag:Z.link,textDecoration:"underline"},{tag:Z.heading,textDecoration:"underline",fontWeight:"bold"},{tag:Z.emphasis,fontStyle:"italic"},{tag:Z.strong,fontWeight:"bold"},{tag:Z.strikethrough,textDecoration:"line-through"},{tag:Z.keyword,color:"#708"},{tag:[Z.atom,Z.bool,Z.url,Z.contentSeparator,Z.labelName],color:"#219"},{tag:[Z.literal,Z.inserted],color:"#164"},{tag:[Z.string,Z.deleted],color:"#a11"},{tag:[Z.regexp,Z.escape,Z.special(Z.string)],color:"#e40"},{tag:Z.definition(Z.variableName),color:"#00f"},{tag:Z.local(Z.variableName),color:"#30a"},{tag:[Z.typeName,Z.namespace],color:"#085"},{tag:Z.className,color:"#167"},{tag:[Z.special(Z.variableName),Z.macroName],color:"#256"},{tag:Z.definition(Z.propertyName),color:"#00c"},{tag:Z.comment,color:"#940"},{tag:Z.invalid,color:"#f00"}]),WP=ye.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Ck=1e4,Tk="()[]{}",Pk=Se.define({combine(n){return Qs(n,{afterCursor:!0,brackets:Tk,maxScanDistance:Ck,renderMatch:qP})}}),UP=Pe.mark({class:"cm-matchingBracket"}),YP=Pe.mark({class:"cm-nonmatchingBracket"});function qP(n){let e=[],t=n.matched?UP:YP;return e.push(t.range(n.start.from,n.start.to)),n.end&&e.push(t.range(n.end.from,n.end.to)),e}const GP=Zt.define({create(){return Pe.none},update(n,e){if(!e.docChanged&&!e.selection)return n;let t=[],s=e.state.facet(Pk);for(let i of e.state.selection.ranges){if(!i.empty)continue;let r=$s(e.state,i.head,-1,s)||i.head>0&&$s(e.state,i.head-1,1,s)||s.afterCursor&&($s(e.state,i.head,1,s)||i.head<e.state.doc.length&&$s(e.state,i.head+1,-1,s));r&&(t=t.concat(s.renderMatch(r,e.state)))}return Pe.set(t,!0)},provide:n=>ye.decorations.from(n)}),HP=[GP,WP];function KP(n={}){return[Pk.of(n),HP]}const JP=new Le;function Op(n,e,t){let s=n.prop(e<0?Le.openedBy:Le.closedBy);if(s)return s;if(n.name.length==1){let i=t.indexOf(n.name);if(i>-1&&i%2==(e<0?1:0))return[t[i+e]]}return null}function yp(n){let e=n.type.prop(JP);return e?e(n.node):n}function $s(n,e,t,s={}){let i=s.maxScanDistance||Ck,r=s.brackets||Tk,o=Nt(n),c=o.resolveInner(e,t);for(let u=c;u;u=u.parent){let f=Op(u.type,t,r);if(f&&u.from<u.to){let p=yp(u);if(p&&(t>0?e>=p.from&&e<p.to:e>p.from&&e<=p.to))return ej(n,e,t,u,p,f,r)}}return tj(n,e,t,o,c.type,i,r)}function ej(n,e,t,s,i,r,o){let c=s.parent,u={from:i.from,to:i.to},f=0,p=c?.cursor();if(p&&(t<0?p.childBefore(s.from):p.childAfter(s.to)))do if(t<0?p.to<=s.from:p.from>=s.to){if(f==0&&r.indexOf(p.type.name)>-1&&p.from<p.to){let g=yp(p);return{start:u,end:g?{from:g.from,to:g.to}:void 0,matched:!0}}else if(Op(p.type,t,o))f++;else if(Op(p.type,-t,o)){if(f==0){let g=yp(p);return{start:u,end:g&&g.from<g.to?{from:g.from,to:g.to}:void 0,matched:!1}}f--}}while(t<0?p.prevSibling():p.nextSibling());return{start:u,matched:!1}}function tj(n,e,t,s,i,r,o){let c=t<0?n.sliceDoc(e-1,e):n.sliceDoc(e,e+1),u=o.indexOf(c);if(u<0||u%2==0!=t>0)return null;let f={from:t<0?e-1:e,to:t>0?e+1:e},p=n.doc.iterRange(e,t>0?n.doc.length:0),g=0;for(let O=0;!p.next().done&&O<=r;){let v=p.value;t<0&&(O+=v.length);let w=e+O*t;for(let k=t>0?0:v.length-1,S=t>0?v.length:-1;k!=S;k+=t){let $=o.indexOf(v[k]);if(!($<0||s.resolveInner(w+k,1).type!=i))if($%2==0==t>0)g++;else{if(g==1)return{start:f,end:{from:w+k,to:w+k+1},matched:$>>1==u>>1};g--}}t>0&&(O+=v.length)}return p.done?{start:f,matched:!1}:null}const nj=Object.create(null),Vv=[_n.none],Wv=[],Uv=Object.create(null),sj=Object.create(null);for(let[n,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"]])sj[n]=ij(nj,e);function hf(n,e){Wv.indexOf(n)>-1||(Wv.push(n),console.warn(e))}function ij(n,e){let t=[];for(let c of e.split(" ")){let u=[];for(let f of c.split(".")){let p=n[f]||Z[f];p?typeof p=="function"?u.length?u=u.map(p):hf(f,`Modifier ${f} used at start of tag`):u.length?hf(f,`Tag ${f} used as modifier`):u=Array.isArray(p)?p:[p]:hf(f,`Unknown highlighting tag ${f}`)}for(let f of u)t.push(f)}if(!t.length)return 0;let s=e.replace(/ /g,"_"),i=s+" "+t.map(c=>c.id),r=Uv[i];if(r)return r.id;let o=Uv[i]=_n.define({id:Vv.length,name:s,props:[ck({[s]:t})]});return Vv.push(o),o.id}ot.RTL,ot.LTR;const rj=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),s=am(n.state,t.from);return s.line?lj(n):s.block?aj(n):!1};function om(n,e){return({state:t,dispatch:s})=>{if(t.readOnly)return!1;let i=n(e,t);return i?(s(t.update(i)),!0):!1}}const lj=om(dj,0),oj=om(jk,0),aj=om((n,e)=>jk(n,e,uj(e)),0);function am(n,e){let t=n.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}const co=50;function cj(n,{open:e,close:t},s,i){let r=n.sliceDoc(s-co,s),o=n.sliceDoc(i,i+co),c=/\s*$/.exec(r)[0].length,u=/^\s*/.exec(o)[0].length,f=r.length-c;if(r.slice(f-e.length,f)==e&&o.slice(u,u+t.length)==t)return{open:{pos:s-c,margin:c&&1},close:{pos:i+u,margin:u&&1}};let p,g;i-s<=2*co?p=g=n.sliceDoc(s,i):(p=n.sliceDoc(s,s+co),g=n.sliceDoc(i-co,i));let O=/^\s*/.exec(p)[0].length,v=/\s*$/.exec(g)[0].length,w=g.length-v-t.length;return p.slice(O,O+e.length)==e&&g.slice(w,w+t.length)==t?{open:{pos:s+O+e.length,margin:/\s/.test(p.charAt(O+e.length))?1:0},close:{pos:i-v-t.length,margin:/\s/.test(g.charAt(w-1))?1:0}}:null}function uj(n){let e=[];for(let t of n.selection.ranges){let s=n.doc.lineAt(t.from),i=t.to<=s.to?s:n.doc.lineAt(t.to);i.from>s.from&&i.from==t.to&&(i=t.to==s.to+1?s:n.doc.lineAt(t.to-1));let r=e.length-1;r>=0&&e[r].to>s.from?e[r].to=i.to:e.push({from:s.from+/^\s*/.exec(s.text)[0].length,to:i.to})}return e}function jk(n,e,t=e.selection.ranges){let s=t.map(r=>am(e,r.from).block);if(!s.every(r=>r))return null;let i=t.map((r,o)=>cj(e,s[o],r.from,r.to));if(n!=2&&!i.every(r=>r))return{changes:e.changes(t.map((r,o)=>i[o]?[]:[{from:r.from,insert:s[o].open+" "},{from:r.to,insert:" "+s[o].close}]))};if(n!=1&&i.some(r=>r)){let r=[];for(let o=0,c;o<i.length;o++)if(c=i[o]){let u=s[o],{open:f,close:p}=c;r.push({from:f.pos-u.open.length,to:f.pos+f.margin},{from:p.pos-p.margin,to:p.pos+u.close.length})}return{changes:r}}return null}function dj(n,e,t=e.selection.ranges){let s=[],i=-1;for(let{from:r,to:o}of t){let c=s.length,u=1e9,f=am(e,r).line;if(f){for(let p=r;p<=o;){let g=e.doc.lineAt(p);if(g.from>i&&(r==o||o>g.from)){i=g.from;let O=/^\s*/.exec(g.text)[0].length,v=O==g.length,w=g.text.slice(O,O+f.length)==f?O:-1;O<g.text.length&&O<u&&(u=O),s.push({line:g,comment:w,token:f,indent:O,empty:v,single:!1})}p=g.to+1}if(u<1e9)for(let p=c;p<s.length;p++)s[p].indent<s[p].line.text.length&&(s[p].indent=u);s.length==c+1&&(s[c].single=!0)}}if(n!=2&&s.some(r=>r.comment<0&&(!r.empty||r.single))){let r=[];for(let{line:c,token:u,indent:f,empty:p,single:g}of s)(g||!p)&&r.push({from:c.from+f,insert:u+" "});let o=e.changes(r);return{changes:o,selection:e.selection.map(o,1)}}else if(n!=1&&s.some(r=>r.comment>=0)){let r=[];for(let{line:o,comment:c,token:u}of s)if(c>=0){let f=o.from+c,p=f+u.length;o.text[p-o.from]==" "&&p++,r.push({from:f,to:p})}return{changes:r}}return null}const vp=js.define(),hj=js.define(),fj=Se.define(),Qk=Se.define({combine(n){return Qs(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(s,i)=>e(s,i)||t(s,i)})}}),Nk=Zt.define({create(){return Cs.empty},update(n,e){let t=e.state.facet(Qk),s=e.annotation(vp);if(s){let u=Sn.fromTransaction(e,s.selection),f=s.side,p=f==0?n.undone:n.done;return u?p=wu(p,p.length,t.minDepth,u):p=Mk(p,e.startState.selection),new Cs(f==0?s.rest:p,f==0?p:s.rest)}let i=e.annotation(hj);if((i=="full"||i=="before")&&(n=n.isolate()),e.annotation(bt.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let r=Sn.fromTransaction(e),o=e.annotation(bt.time),c=e.annotation(bt.userEvent);return r?n=n.addChanges(r,o,c,t,e):e.selection&&(n=n.addSelection(e.startState.selection,o,c,t.newGroupDelay)),(i=="full"||i=="after")&&(n=n.isolate()),n},toJSON(n){return{done:n.done.map(e=>e.toJSON()),undone:n.undone.map(e=>e.toJSON())}},fromJSON(n){return new Cs(n.done.map(Sn.fromJSON),n.undone.map(Sn.fromJSON))}});function pj(n={}){return[Nk,Qk.of(n),ye.domEventHandlers({beforeinput(e,t){let s=e.inputType=="historyUndo"?Ek:e.inputType=="historyRedo"?xp:null;return s?(e.preventDefault(),s(t)):!1}})]}function Bu(n,e){return function({state:t,dispatch:s}){if(!e&&t.readOnly)return!1;let i=t.field(Nk,!1);if(!i)return!1;let r=i.pop(n,t,e);return r?(s(r),!0):!1}}const Ek=Bu(0,!1),xp=Bu(1,!1),mj=Bu(0,!0),gj=Bu(1,!0);class Sn{constructor(e,t,s,i,r){this.changes=e,this.effects=t,this.mapped=s,this.startSelection=i,this.selectionsAfter=r}setSelAfter(e){return new Sn(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,s;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(s=this.startSelection)===null||s===void 0?void 0:s.toJSON(),selectionsAfter:this.selectionsAfter.map(i=>i.toJSON())}}static fromJSON(e){return new Sn(e.changes&&Pt.fromJSON(e.changes),[],e.mapped&&Ts.fromJSON(e.mapped),e.startSelection&&ie.fromJSON(e.startSelection),e.selectionsAfter.map(ie.fromJSON))}static fromTransaction(e,t){let s=Fn;for(let i of e.startState.facet(fj)){let r=i(e);r.length&&(s=s.concat(r))}return!s.length&&e.changes.empty?null:new Sn(e.changes.invert(e.startState.doc),s,void 0,t||e.startState.selection,Fn)}static selection(e){return new Sn(void 0,Fn,void 0,void 0,e)}}function wu(n,e,t,s){let i=e+1>t+20?e-t-1:0,r=n.slice(i,e);return r.push(s),r}function Oj(n,e){let t=[],s=!1;return n.iterChangedRanges((i,r)=>t.push(i,r)),e.iterChangedRanges((i,r,o,c)=>{for(let u=0;u<t.length;){let f=t[u++],p=t[u++];c>=f&&o<=p&&(s=!0)}}),s}function yj(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,s)=>t.empty!=e.ranges[s].empty).length===0}function Ak(n,e){return n.length?e.length?n.concat(e):n:e}const Fn=[],vj=200;function Mk(n,e){if(n.length){let t=n[n.length-1],s=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-vj));return s.length&&s[s.length-1].eq(e)?n:(s.push(e),wu(n,n.length-1,1e9,t.setSelAfter(s)))}else return[Sn.selection([e])]}function xj(n){let e=n[n.length-1],t=n.slice();return t[n.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function ff(n,e){if(!n.length)return n;let t=n.length,s=Fn;for(;t;){let i=wj(n[t-1],e,s);if(i.changes&&!i.changes.empty||i.effects.length){let r=n.slice(0,t);return r[t-1]=i,r}else e=i.mapped,t--,s=i.selectionsAfter}return s.length?[Sn.selection(s)]:Fn}function wj(n,e,t){let s=Ak(n.selectionsAfter.length?n.selectionsAfter.map(c=>c.map(e)):Fn,t);if(!n.changes)return Sn.selection(s);let i=n.changes.map(e),r=e.mapDesc(n.changes,!0),o=n.mapped?n.mapped.composeDesc(r):r;return new Sn(i,Me.mapEffects(n.effects,e),o,n.startSelection.map(r),s)}const kj=/^(input\.type|delete)($|\.)/;class Cs{constructor(e,t,s=0,i=void 0){this.done=e,this.undone=t,this.prevTime=s,this.prevUserEvent=i}isolate(){return this.prevTime?new Cs(this.done,this.undone):this}addChanges(e,t,s,i,r){let o=this.done,c=o[o.length-1];return c&&c.changes&&!c.changes.empty&&e.changes&&(!s||kj.test(s))&&(!c.selectionsAfter.length&&t-this.prevTime<i.newGroupDelay&&i.joinToEvent(r,Oj(c.changes,e.changes))||s=="input.type.compose")?o=wu(o,o.length-1,i.minDepth,new Sn(e.changes.compose(c.changes),Ak(Me.mapEffects(e.effects,c.changes),c.effects),c.mapped,c.startSelection,Fn)):o=wu(o,o.length,i.minDepth,e),new Cs(o,Fn,t,s)}addSelection(e,t,s,i){let r=this.done.length?this.done[this.done.length-1].selectionsAfter:Fn;return r.length>0&&t-this.prevTime<i&&s==this.prevUserEvent&&s&&/^select($|\.)/.test(s)&&yj(r[r.length-1],e)?this:new Cs(Mk(this.done,e),this.undone,t,s)}addMapping(e){return new Cs(ff(this.done,e),ff(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,s){let i=e==0?this.done:this.undone;if(i.length==0)return null;let r=i[i.length-1],o=r.selectionsAfter[0]||t.selection;if(s&&r.selectionsAfter.length)return t.update({selection:r.selectionsAfter[r.selectionsAfter.length-1],annotations:vp.of({side:e,rest:xj(i),selection:o}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(r.changes){let c=i.length==1?Fn:i.slice(0,i.length-1);return r.mapped&&(c=ff(c,r.mapped)),t.update({changes:r.changes,selection:r.startSelection,effects:r.effects,annotations:vp.of({side:e,rest:c,selection:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}Cs.empty=new Cs(Fn,Fn);const Sj=[{key:"Mod-z",run:Ek,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:xp,preventDefault:!0},{linux:"Ctrl-Shift-z",run:xp,preventDefault:!0},{key:"Mod-u",run:mj,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:gj,preventDefault:!0}];function ml(n,e){return ie.create(n.ranges.map(e),n.mainIndex)}function as(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function cs({state:n,dispatch:e},t){let s=ml(n.selection,t);return s.eq(n.selection,!0)?!1:(e(as(n,s)),!0)}function Xu(n,e){return ie.cursor(e?n.to:n.from)}function Rk(n,e){return cs(n,t=>t.empty?n.moveByChar(t,e):Xu(t,e))}function Jt(n){return n.textDirectionAt(n.state.selection.main.head)==ot.LTR}const Dk=n=>Rk(n,!Jt(n)),Ik=n=>Rk(n,Jt(n));function Lk(n,e){return cs(n,t=>t.empty?n.moveByGroup(t,e):Xu(t,e))}const bj=n=>Lk(n,!Jt(n)),_j=n=>Lk(n,Jt(n));function $j(n,e,t){if(e.type.prop(t))return!0;let s=e.to-e.from;return s&&(s>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function Vu(n,e,t){let s=Nt(n).resolveInner(e.head),i=t?Le.closedBy:Le.openedBy;for(let u=e.head;;){let f=t?s.childAfter(u):s.childBefore(u);if(!f)break;$j(n,f,i)?s=f:u=t?f.to:f.from}let r=s.type.prop(i),o,c;return r&&(o=t?$s(n,s.from,1):$s(n,s.to,-1))&&o.matched?c=t?o.end.to:o.end.from:c=t?s.to:s.from,ie.cursor(c,t?-1:1)}const Cj=n=>cs(n,e=>Vu(n.state,e,!Jt(n))),Tj=n=>cs(n,e=>Vu(n.state,e,Jt(n)));function Zk(n,e){return cs(n,t=>{if(!t.empty)return Xu(t,e);let s=n.moveVertically(t,e);return s.head!=t.head?s:n.moveToLineBoundary(t,e)})}const zk=n=>Zk(n,!1),Fk=n=>Zk(n,!0);function Bk(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,s=0,i;if(e){for(let r of n.state.facet(ye.scrollMargins)){let o=r(n);o?.top&&(t=Math.max(o?.top,t)),o?.bottom&&(s=Math.max(o?.bottom,s))}i=n.scrollDOM.clientHeight-t-s}else i=(n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:s,selfScroll:e,height:Math.max(n.defaultLineHeight,i-5)}}function Xk(n,e){let t=Bk(n),{state:s}=n,i=ml(s.selection,o=>o.empty?n.moveVertically(o,e,t.height):Xu(o,e));if(i.eq(s.selection))return!1;let r;if(t.selfScroll){let o=n.coordsAtPos(s.selection.main.head),c=n.scrollDOM.getBoundingClientRect(),u=c.top+t.marginTop,f=c.bottom-t.marginBottom;o&&o.top>u&&o.bottom<f&&(r=ye.scrollIntoView(i.main.head,{y:"start",yMargin:o.top-u}))}return n.dispatch(as(s,i),{effects:r}),!0}const Yv=n=>Xk(n,!1),wp=n=>Xk(n,!0);function Ei(n,e,t){let s=n.lineBlockAt(e.head),i=n.moveToLineBoundary(e,t);if(i.head==e.head&&i.head!=(t?s.to:s.from)&&(i=n.moveToLineBoundary(e,t,!1)),!t&&i.head==s.from&&s.length){let r=/^\s*/.exec(n.state.sliceDoc(s.from,Math.min(s.from+100,s.to)))[0].length;r&&e.head!=s.from+r&&(i=ie.cursor(s.from+r))}return i}const Pj=n=>cs(n,e=>Ei(n,e,!0)),jj=n=>cs(n,e=>Ei(n,e,!1)),Qj=n=>cs(n,e=>Ei(n,e,!Jt(n))),Nj=n=>cs(n,e=>Ei(n,e,Jt(n))),Ej=n=>cs(n,e=>ie.cursor(n.lineBlockAt(e.head).from,1)),Aj=n=>cs(n,e=>ie.cursor(n.lineBlockAt(e.head).to,-1));function Mj(n,e,t){let s=!1,i=ml(n.selection,r=>{let o=$s(n,r.head,-1)||$s(n,r.head,1)||r.head>0&&$s(n,r.head-1,1)||r.head<n.doc.length&&$s(n,r.head+1,-1);if(!o||!o.end)return r;s=!0;let c=o.start.from==r.head?o.end.to:o.end.from;return ie.cursor(c)});return s?(e(as(n,i)),!0):!1}const Rj=({state:n,dispatch:e})=>Mj(n,e);function Wn(n,e){let t=ml(n.state.selection,s=>{let i=e(s);return ie.range(s.anchor,i.head,i.goalColumn,i.bidiLevel||void 0)});return t.eq(n.state.selection)?!1:(n.dispatch(as(n.state,t)),!0)}function Vk(n,e){return Wn(n,t=>n.moveByChar(t,e))}const Wk=n=>Vk(n,!Jt(n)),Uk=n=>Vk(n,Jt(n));function Yk(n,e){return Wn(n,t=>n.moveByGroup(t,e))}const Dj=n=>Yk(n,!Jt(n)),Ij=n=>Yk(n,Jt(n)),Lj=n=>Wn(n,e=>Vu(n.state,e,!Jt(n))),Zj=n=>Wn(n,e=>Vu(n.state,e,Jt(n)));function qk(n,e){return Wn(n,t=>n.moveVertically(t,e))}const Gk=n=>qk(n,!1),Hk=n=>qk(n,!0);function Kk(n,e){return Wn(n,t=>n.moveVertically(t,e,Bk(n).height))}const qv=n=>Kk(n,!1),Gv=n=>Kk(n,!0),zj=n=>Wn(n,e=>Ei(n,e,!0)),Fj=n=>Wn(n,e=>Ei(n,e,!1)),Bj=n=>Wn(n,e=>Ei(n,e,!Jt(n))),Xj=n=>Wn(n,e=>Ei(n,e,Jt(n))),Vj=n=>Wn(n,e=>ie.cursor(n.lineBlockAt(e.head).from)),Wj=n=>Wn(n,e=>ie.cursor(n.lineBlockAt(e.head).to)),Hv=({state:n,dispatch:e})=>(e(as(n,{anchor:0})),!0),Kv=({state:n,dispatch:e})=>(e(as(n,{anchor:n.doc.length})),!0),Jv=({state:n,dispatch:e})=>(e(as(n,{anchor:n.selection.main.anchor,head:0})),!0),ex=({state:n,dispatch:e})=>(e(as(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),Uj=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),Yj=({state:n,dispatch:e})=>{let t=Wu(n).map(({from:s,to:i})=>ie.range(s,Math.min(i+1,n.doc.length)));return e(n.update({selection:ie.create(t),userEvent:"select"})),!0},qj=({state:n,dispatch:e})=>{let t=ml(n.selection,s=>{let i=Nt(n),r=i.resolveStack(s.from,1);if(s.empty){let o=i.resolveStack(s.from,-1);o.node.from>=r.node.from&&o.node.to<=r.node.to&&(r=o)}for(let o=r;o;o=o.next){let{node:c}=o;if((c.from<s.from&&c.to>=s.to||c.to>s.to&&c.from<=s.from)&&o.next)return ie.range(c.to,c.from)}return s});return t.eq(n.selection)?!1:(e(as(n,t)),!0)};function Jk(n,e){let{state:t}=n,s=t.selection,i=t.selection.ranges.slice();for(let r of t.selection.ranges){let o=t.doc.lineAt(r.head);if(e?o.to<n.state.doc.length:o.from>0)for(let c=r;;){let u=n.moveVertically(c,e);if(u.head<o.from||u.head>o.to){i.some(f=>f.head==u.head)||i.push(u);break}else{if(u.head==c.head)break;c=u}}}return i.length==s.ranges.length?!1:(n.dispatch(as(t,ie.create(i,i.length-1))),!0)}const Gj=n=>Jk(n,!1),Hj=n=>Jk(n,!0),Kj=({state:n,dispatch:e})=>{let t=n.selection,s=null;return t.ranges.length>1?s=ie.create([t.main]):t.main.empty||(s=ie.create([ie.cursor(t.main.head)])),s?(e(as(n,s)),!0):!1};function ra(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:s}=n,i=s.changeByRange(r=>{let{from:o,to:c}=r;if(o==c){let u=e(r);u<o?(t="delete.backward",u=Dc(n,u,!1)):u>o&&(t="delete.forward",u=Dc(n,u,!0)),o=Math.min(o,u),c=Math.max(c,u)}else o=Dc(n,o,!1),c=Dc(n,c,!0);return o==c?{range:r}:{changes:{from:o,to:c},range:ie.cursor(o,o<r.head?-1:1)}});return i.changes.empty?!1:(n.dispatch(s.update(i,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?ye.announce.of(s.phrase("Selection deleted")):void 0})),!0)}function Dc(n,e,t){if(n instanceof ye)for(let s of n.state.facet(ye.atomicRanges).map(i=>i(n)))s.between(e,e,(i,r)=>{i<e&&r>e&&(e=t?r:i)});return e}const eS=(n,e,t)=>ra(n,s=>{let i=s.from,{state:r}=n,o=r.doc.lineAt(i),c,u;if(t&&!e&&i>o.from&&i<o.from+200&&!/[^ \t]/.test(c=o.text.slice(0,i-o.from))){if(c[c.length-1]==" ")return i-1;let f=pl(c,r.tabSize),p=f%yu(r)||yu(r);for(let g=0;g<p&&c[c.length-1-g]==" ";g++)i--;u=i}else u=Wt(o.text,i-o.from,e,e)+o.from,u==i&&o.number!=(e?r.doc.lines:1)?u+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(o.text.slice(u-o.from,i-o.from))&&(u=Wt(o.text,u-o.from,!1,!1)+o.from);return u}),kp=n=>eS(n,!1,!0),tS=n=>eS(n,!0,!1),nS=(n,e)=>ra(n,t=>{let s=t.head,{state:i}=n,r=i.doc.lineAt(s),o=i.charCategorizer(s);for(let c=null;;){if(s==(e?r.to:r.from)){s==t.head&&r.number!=(e?i.doc.lines:1)&&(s+=e?1:-1);break}let u=Wt(r.text,s-r.from,e)+r.from,f=r.text.slice(Math.min(s,u)-r.from,Math.max(s,u)-r.from),p=o(f);if(c!=null&&p!=c)break;(f!=" "||s!=t.head)&&(c=p),s=u}return s}),sS=n=>nS(n,!1),Jj=n=>nS(n,!0),eQ=n=>ra(n,e=>{let t=n.lineBlockAt(e.head).to;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),tQ=n=>ra(n,e=>{let t=n.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),nQ=n=>ra(n,e=>{let t=n.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),sQ=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(s=>({changes:{from:s.from,to:s.to,insert:Be.of(["",""])},range:ie.cursor(s.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},iQ=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(s=>{if(!s.empty||s.from==0||s.from==n.doc.length)return{range:s};let i=s.from,r=n.doc.lineAt(i),o=i==r.from?i-1:Wt(r.text,i-r.from,!1)+r.from,c=i==r.to?i+1:Wt(r.text,i-r.from,!0)+r.from;return{changes:{from:o,to:c,insert:n.doc.slice(i,c).append(n.doc.slice(o,i))},range:ie.cursor(c)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Wu(n){let e=[],t=-1;for(let s of n.selection.ranges){let i=n.doc.lineAt(s.from),r=n.doc.lineAt(s.to);if(!s.empty&&s.to==r.from&&(r=n.doc.lineAt(s.to-1)),t>=i.number){let o=e[e.length-1];o.to=r.to,o.ranges.push(s)}else e.push({from:i.from,to:r.to,ranges:[s]});t=r.number+1}return e}function iS(n,e,t){if(n.readOnly)return!1;let s=[],i=[];for(let r of Wu(n)){if(t?r.to==n.doc.length:r.from==0)continue;let o=n.doc.lineAt(t?r.to+1:r.from-1),c=o.length+1;if(t){s.push({from:r.to,to:o.to},{from:r.from,insert:o.text+n.lineBreak});for(let u of r.ranges)i.push(ie.range(Math.min(n.doc.length,u.anchor+c),Math.min(n.doc.length,u.head+c)))}else{s.push({from:o.from,to:r.from},{from:r.to,insert:n.lineBreak+o.text});for(let u of r.ranges)i.push(ie.range(u.anchor-c,u.head-c))}}return s.length?(e(n.update({changes:s,scrollIntoView:!0,selection:ie.create(i,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const rQ=({state:n,dispatch:e})=>iS(n,e,!1),lQ=({state:n,dispatch:e})=>iS(n,e,!0);function rS(n,e,t){if(n.readOnly)return!1;let s=[];for(let i of Wu(n))t?s.push({from:i.from,insert:n.doc.slice(i.from,i.to)+n.lineBreak}):s.push({from:i.to,insert:n.lineBreak+n.doc.slice(i.from,i.to)});return e(n.update({changes:s,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const oQ=({state:n,dispatch:e})=>rS(n,e,!1),aQ=({state:n,dispatch:e})=>rS(n,e,!0),cQ=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(Wu(e).map(({from:i,to:r})=>(i>0?i--:r<e.doc.length&&r++,{from:i,to:r}))),s=ml(e.selection,i=>{let r;if(n.lineWrapping){let o=n.lineBlockAt(i.head),c=n.coordsAtPos(i.head,i.assoc||1);c&&(r=o.bottom+n.documentTop-c.bottom+n.defaultLineHeight/2)}return n.moveVertically(i,!0,r)}).map(t);return n.dispatch({changes:t,selection:s,scrollIntoView:!0,userEvent:"delete.line"}),!0};function uQ(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=Nt(n).resolveInner(e),s=t.childBefore(e),i=t.childAfter(e),r;return s&&i&&s.to<=e&&i.from>=e&&(r=s.type.prop(Le.closedBy))&&r.indexOf(i.name)>-1&&n.doc.lineAt(s.to).from==n.doc.lineAt(i.from).from&&!/\S/.test(n.sliceDoc(s.to,i.from))?{from:s.to,to:i.from}:null}const tx=lS(!1),dQ=lS(!0);function lS(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let s=e.changeByRange(i=>{let{from:r,to:o}=i,c=e.doc.lineAt(r),u=!n&&r==o&&uQ(e,r);n&&(r=o=(o<=c.to?c:e.doc.lineAt(o)).to);let f=new zu(e,{simulateBreak:r,simulateDoubleBreak:!!u}),p=rm(f,r);for(p==null&&(p=pl(/^\s*/.exec(e.doc.lineAt(r).text)[0],e.tabSize));o<c.to&&/\s/.test(c.text[o-c.from]);)o++;u?{from:r,to:o}=u:r>c.from&&r<c.from+100&&!/\S/.test(c.text.slice(0,r))&&(r=c.from);let g=["",Bo(e,p)];return u&&g.push(Bo(e,f.lineIndent(c.from,-1))),{changes:{from:r,to:o,insert:Be.of(g)},range:ie.cursor(r+1+g[1].length)}});return t(e.update(s,{scrollIntoView:!0,userEvent:"input"})),!0}}function cm(n,e){let t=-1;return n.changeByRange(s=>{let i=[];for(let o=s.from;o<=s.to;){let c=n.doc.lineAt(o);c.number>t&&(s.empty||s.to>c.from)&&(e(c,i,s),t=c.number),o=c.to+1}let r=n.changes(i);return{changes:i,range:ie.range(r.mapPos(s.anchor,1),r.mapPos(s.head,1))}})}const hQ=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),s=new zu(n,{overrideIndentation:r=>{let o=t[r];return o??-1}}),i=cm(n,(r,o,c)=>{let u=rm(s,r.from);if(u==null)return;/\S/.test(r.text)||(u=0);let f=/^\s*/.exec(r.text)[0],p=Bo(n,u);(f!=p||c.from<r.from+f.length)&&(t[r.from]=u,o.push({from:r.from,to:r.from+f.length,insert:p}))});return i.changes.empty||e(n.update(i,{userEvent:"indent"})),!0},oS=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(cm(n,(t,s)=>{s.push({from:t.from,insert:n.facet(na)})}),{userEvent:"input.indent"})),!0),aS=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(cm(n,(t,s)=>{let i=/^\s*/.exec(t.text)[0];if(!i)return;let r=pl(i,n.tabSize),o=0,c=Bo(n,Math.max(0,r-yu(n)));for(;o<i.length&&o<c.length&&i.charCodeAt(o)==c.charCodeAt(o);)o++;s.push({from:t.from+o,to:t.from+i.length,insert:c.slice(o)})}),{userEvent:"delete.dedent"})),!0),fQ=n=>(n.setTabFocusMode(),!0),pQ=[{key:"Ctrl-b",run:Dk,shift:Wk,preventDefault:!0},{key:"Ctrl-f",run:Ik,shift:Uk},{key:"Ctrl-p",run:zk,shift:Gk},{key:"Ctrl-n",run:Fk,shift:Hk},{key:"Ctrl-a",run:Ej,shift:Vj},{key:"Ctrl-e",run:Aj,shift:Wj},{key:"Ctrl-d",run:tS},{key:"Ctrl-h",run:kp},{key:"Ctrl-k",run:eQ},{key:"Ctrl-Alt-h",run:sS},{key:"Ctrl-o",run:sQ},{key:"Ctrl-t",run:iQ},{key:"Ctrl-v",run:wp}],mQ=[{key:"ArrowLeft",run:Dk,shift:Wk,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:bj,shift:Dj,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:Qj,shift:Bj,preventDefault:!0},{key:"ArrowRight",run:Ik,shift:Uk,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:_j,shift:Ij,preventDefault:!0},{mac:"Cmd-ArrowRight",run:Nj,shift:Xj,preventDefault:!0},{key:"ArrowUp",run:zk,shift:Gk,preventDefault:!0},{mac:"Cmd-ArrowUp",run:Hv,shift:Jv},{mac:"Ctrl-ArrowUp",run:Yv,shift:qv},{key:"ArrowDown",run:Fk,shift:Hk,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Kv,shift:ex},{mac:"Ctrl-ArrowDown",run:wp,shift:Gv},{key:"PageUp",run:Yv,shift:qv},{key:"PageDown",run:wp,shift:Gv},{key:"Home",run:jj,shift:Fj,preventDefault:!0},{key:"Mod-Home",run:Hv,shift:Jv},{key:"End",run:Pj,shift:zj,preventDefault:!0},{key:"Mod-End",run:Kv,shift:ex},{key:"Enter",run:tx,shift:tx},{key:"Mod-a",run:Uj},{key:"Backspace",run:kp,shift:kp,preventDefault:!0},{key:"Delete",run:tS,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:sS,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:Jj,preventDefault:!0},{mac:"Mod-Backspace",run:tQ,preventDefault:!0},{mac:"Mod-Delete",run:nQ,preventDefault:!0}].concat(pQ.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),gQ=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:Cj,shift:Lj},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:Tj,shift:Zj},{key:"Alt-ArrowUp",run:rQ},{key:"Shift-Alt-ArrowUp",run:oQ},{key:"Alt-ArrowDown",run:lQ},{key:"Shift-Alt-ArrowDown",run:aQ},{key:"Mod-Alt-ArrowUp",run:Gj},{key:"Mod-Alt-ArrowDown",run:Hj},{key:"Escape",run:Kj},{key:"Mod-Enter",run:dQ},{key:"Alt-l",mac:"Ctrl-l",run:Yj},{key:"Mod-i",run:qj,preventDefault:!0},{key:"Mod-[",run:aS},{key:"Mod-]",run:oS},{key:"Mod-Alt-\\",run:hQ},{key:"Shift-Mod-k",run:cQ},{key:"Shift-Mod-\\",run:Rj},{key:"Mod-/",run:rj},{key:"Alt-A",run:oj},{key:"Ctrl-m",mac:"Shift-Alt-m",run:fQ}].concat(mQ),OQ={key:"Tab",run:oS,shift:aS},nx=typeof String.prototype.normalize=="function"?n=>n.normalize("NFKD"):n=>n;class hl{constructor(e,t,s=0,i=e.length,r,o){this.test=o,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(s,i),this.bufferStart=s,this.normalize=r?c=>r(nx(c)):nx,this.query=this.normalize(t)}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 xn(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 t=Lp(e),s=this.bufferStart+this.bufferPos;this.bufferPos+=Ss(e);let i=this.normalize(t);if(i.length)for(let r=0,o=s;;r++){let c=i.charCodeAt(r),u=this.match(c,o,this.bufferPos+this.bufferStart);if(r==i.length-1){if(u)return this.value=u,this;break}o==s&&r<t.length&&t.charCodeAt(r)==c&&o++}}}match(e,t,s){let i=null;for(let r=0;r<this.matches.length;r+=2){let o=this.matches[r],c=!1;this.query.charCodeAt(o)==e&&(o==this.query.length-1?i={from:this.matches[r+1],to:s}:(this.matches[r]++,c=!0)),c||(this.matches.splice(r,2),r-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?i={from:t,to:s}:this.matches.push(1,t)),i&&this.test&&!this.test(i.from,i.to,this.buffer,this.bufferStart)&&(i=null),i}}typeof Symbol<"u"&&(hl.prototype[Symbol.iterator]=function(){return this});const cS={from:-1,to:-1,match:/.*/.exec("")},um="gm"+(/x/.unicode==null?"":"u");class uS{constructor(e,t,s,i=0,r=e.length){if(this.text=e,this.to=r,this.curLine="",this.done=!1,this.value=cS,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new dS(e,t,s,i,r);this.re=new RegExp(t,um+(s?.ignoreCase?"i":"")),this.test=s?.test,this.iter=e.iter();let o=e.lineAt(i);this.curLineStart=o.from,this.matchPos=ku(e,i),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 t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let s=this.curLineStart+t.index,i=s+t[0].length;if(this.matchPos=ku(this.text,i+(s==i?1:0)),s==this.curLineStart+this.curLine.length&&this.nextLine(),(s<i||s>this.value.to)&&(!this.test||this.test(s,i,t)))return this.value={from:s,to:i,match:t},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 pf=new WeakMap;class sl{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,s){let i=pf.get(e);if(!i||i.from>=s||i.to<=t){let c=new sl(t,e.sliceString(t,s));return pf.set(e,c),c}if(i.from==t&&i.to==s)return i;let{text:r,from:o}=i;return o>t&&(r=e.sliceString(t,o)+r,o=t),i.to<s&&(r+=e.sliceString(i.to,s)),pf.set(e,new sl(o,r)),new sl(t,r.slice(t-o,s-o))}}class dS{constructor(e,t,s,i,r){this.text=e,this.to=r,this.done=!1,this.value=cS,this.matchPos=ku(e,i),this.re=new RegExp(t,um+(s?.ignoreCase?"i":"")),this.test=s?.test,this.flat=sl.get(e,i,this.chunkEnd(i+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,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let s=this.flat.from+t.index,i=s+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(s,i,t)))return this.value={from:s,to:i,match:t},this.matchPos=ku(this.text,i+(s==i?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=sl.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(uS.prototype[Symbol.iterator]=dS.prototype[Symbol.iterator]=function(){return this});function yQ(n){try{return new RegExp(n,um),!0}catch{return!1}}function ku(n,e){if(e>=n.length)return e;let t=n.lineAt(e),s;for(;e<t.to&&(s=t.text.charCodeAt(e-t.from))>=56320&&s<57344;)e++;return e}function Sp(n){let e=String(n.state.doc.lineAt(n.state.selection.main.head).number),t=tt("input",{class:"cm-textfield",name:"line",value:e}),s=tt("form",{class:"cm-gotoLine",onkeydown:r=>{r.keyCode==27?(r.preventDefault(),n.dispatch({effects:Co.of(!1)}),n.focus()):r.keyCode==13&&(r.preventDefault(),i())},onsubmit:r=>{r.preventDefault(),i()}},tt("label",n.state.phrase("Go to line"),": ",t)," ",tt("button",{class:"cm-button",type:"submit"},n.state.phrase("go")),tt("button",{name:"close",onclick:()=>{n.dispatch({effects:Co.of(!1)}),n.focus()},"aria-label":n.state.phrase("close"),type:"button"},["×"]));function i(){let r=/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(t.value);if(!r)return;let{state:o}=n,c=o.doc.lineAt(o.selection.main.head),[,u,f,p,g]=r,O=p?+p.slice(1):0,v=f?+f:c.number;if(f&&g){let S=v/100;u&&(S=S*(u=="-"?-1:1)+c.number/o.doc.lines),v=Math.round(o.doc.lines*S)}else f&&u&&(v=v*(u=="-"?-1:1)+c.number);let w=o.doc.line(Math.max(1,Math.min(o.doc.lines,v))),k=ie.cursor(w.from+Math.max(0,Math.min(O,w.length)));n.dispatch({effects:[Co.of(!1),ye.scrollIntoView(k.from,{y:"center"})],selection:k}),n.focus()}return{dom:s}}const Co=Me.define(),sx=Zt.define({create(){return!0},update(n,e){for(let t of e.effects)t.is(Co)&&(n=t.value);return n},provide:n=>zo.from(n,e=>e?Sp:null)}),vQ=n=>{let e=Zo(n,Sp);if(!e){let t=[Co.of(!0)];n.state.field(sx,!1)==null&&t.push(Me.appendConfig.of([sx,xQ])),n.dispatch({effects:t}),e=Zo(n,Sp)}return e&&e.dom.querySelector("input").select(),!0},xQ=ye.baseTheme({".cm-panel.cm-gotoLine":{padding:"2px 6px 4px",position:"relative","& label":{fontSize:"80%"},"& [name=close]":{position:"absolute",top:"0",bottom:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:"0"}}}),wQ={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},kQ=Se.define({combine(n){return Qs(n,wQ,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function SQ(n){return[TQ,CQ]}const bQ=Pe.mark({class:"cm-selectionMatch"}),_Q=Pe.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function ix(n,e,t,s){return(t==0||n(e.sliceDoc(t-1,t))!=ut.Word)&&(s==e.doc.length||n(e.sliceDoc(s,s+1))!=ut.Word)}function $Q(n,e,t,s){return n(e.sliceDoc(t,t+1))==ut.Word&&n(e.sliceDoc(s-1,s))==ut.Word}const CQ=mt.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.selectionSet||n.docChanged||n.viewportChanged)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=n.state.facet(kQ),{state:t}=n,s=t.selection;if(s.ranges.length>1)return Pe.none;let i=s.main,r,o=null;if(i.empty){if(!e.highlightWordAroundCursor)return Pe.none;let u=t.wordAt(i.head);if(!u)return Pe.none;o=t.charCategorizer(i.head),r=t.sliceDoc(u.from,u.to)}else{let u=i.to-i.from;if(u<e.minSelectionLength||u>200)return Pe.none;if(e.wholeWords){if(r=t.sliceDoc(i.from,i.to),o=t.charCategorizer(i.head),!(ix(o,t,i.from,i.to)&&$Q(o,t,i.from,i.to)))return Pe.none}else if(r=t.sliceDoc(i.from,i.to),!r)return Pe.none}let c=[];for(let u of n.visibleRanges){let f=new hl(t.doc,r,u.from,u.to);for(;!f.next().done;){let{from:p,to:g}=f.value;if((!o||ix(o,t,p,g))&&(i.empty&&p<=i.from&&g>=i.to?c.push(_Q.range(p,g)):(p>=i.to||g<=i.from)&&c.push(bQ.range(p,g)),c.length>e.maxMatches))return Pe.none}}return Pe.set(c)}},{decorations:n=>n.decorations}),TQ=ye.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),PQ=({state:n,dispatch:e})=>{let{selection:t}=n,s=ie.create(t.ranges.map(i=>n.wordAt(i.head)||ie.cursor(i.head)),t.mainIndex);return s.eq(t)?!1:(e(n.update({selection:s})),!0)};function jQ(n,e){let{main:t,ranges:s}=n.selection,i=n.wordAt(t.head),r=i&&i.from==t.from&&i.to==t.to;for(let o=!1,c=new hl(n.doc,e,s[s.length-1].to);;)if(c.next(),c.done){if(o)return null;c=new hl(n.doc,e,0,Math.max(0,s[s.length-1].from-1)),o=!0}else{if(o&&s.some(u=>u.from==c.value.from))continue;if(r){let u=n.wordAt(c.value.from);if(!u||u.from!=c.value.from||u.to!=c.value.to)continue}return c.value}}const QQ=({state:n,dispatch:e})=>{let{ranges:t}=n.selection;if(t.some(r=>r.from===r.to))return PQ({state:n,dispatch:e});let s=n.sliceDoc(t[0].from,t[0].to);if(n.selection.ranges.some(r=>n.sliceDoc(r.from,r.to)!=s))return!1;let i=jQ(n,s);return i?(e(n.update({selection:n.selection.addRange(ie.range(i.from,i.to),!1),effects:ye.scrollIntoView(i.to)})),!0):!1},gl=Se.define({combine(n){return Qs(n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new BQ(e),scrollToMatch:e=>ye.scrollIntoView(e)})}});class hS{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||yQ(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(t,s)=>s=="n"?`
|
|
19
|
+
`:s=="r"?"\r":s=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new MQ(this):new EQ(this)}getCursor(e,t=0,s){let i=e.doc?e:ze.create({doc:e});return s==null&&(s=i.doc.length),this.regexp?Yr(this,i,t,s):Ur(this,i,t,s)}}class fS{constructor(e){this.spec=e}}function Ur(n,e,t,s){return new hl(e.doc,n.unquoted,t,s,n.caseSensitive?void 0:i=>i.toLowerCase(),n.wholeWord?NQ(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function NQ(n,e){return(t,s,i,r)=>((r>t||r+i.length<s)&&(r=Math.max(0,t-2),i=n.sliceString(r,Math.min(n.length,s+2))),(e(Su(i,t-r))!=ut.Word||e(bu(i,t-r))!=ut.Word)&&(e(bu(i,s-r))!=ut.Word||e(Su(i,s-r))!=ut.Word))}class EQ extends fS{constructor(e){super(e)}nextMatch(e,t,s){let i=Ur(this.spec,e,s,e.doc.length).nextOverlapping();if(i.done){let r=Math.min(e.doc.length,t+this.spec.unquoted.length);i=Ur(this.spec,e,0,r).nextOverlapping()}return i.done||i.value.from==t&&i.value.to==s?null:i.value}prevMatchInRange(e,t,s){for(let i=s;;){let r=Math.max(t,i-1e4-this.spec.unquoted.length),o=Ur(this.spec,e,r,i),c=null;for(;!o.nextOverlapping().done;)c=o.value;if(c)return c;if(r==t)return null;i-=1e4}}prevMatch(e,t,s){let i=this.prevMatchInRange(e,0,t);return i||(i=this.prevMatchInRange(e,Math.max(0,s-this.spec.unquoted.length),e.doc.length)),i&&(i.from!=t||i.to!=s)?i:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let s=Ur(this.spec,e,0,e.doc.length),i=[];for(;!s.next().done;){if(i.length>=t)return null;i.push(s.value)}return i}highlight(e,t,s,i){let r=Ur(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(s+this.spec.unquoted.length,e.doc.length));for(;!r.next().done;)i(r.value.from,r.value.to)}}function Yr(n,e,t,s){return new uS(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:n.wholeWord?AQ(e.charCategorizer(e.selection.main.head)):void 0},t,s)}function Su(n,e){return n.slice(Wt(n,e,!1),e)}function bu(n,e){return n.slice(e,Wt(n,e))}function AQ(n){return(e,t,s)=>!s[0].length||(n(Su(s.input,s.index))!=ut.Word||n(bu(s.input,s.index))!=ut.Word)&&(n(bu(s.input,s.index+s[0].length))!=ut.Word||n(Su(s.input,s.index+s[0].length))!=ut.Word)}class MQ extends fS{nextMatch(e,t,s){let i=Yr(this.spec,e,s,e.doc.length).next();return i.done&&(i=Yr(this.spec,e,0,t).next()),i.done?null:i.value}prevMatchInRange(e,t,s){for(let i=1;;i++){let r=Math.max(t,s-i*1e4),o=Yr(this.spec,e,r,s),c=null;for(;!o.next().done;)c=o.value;if(c&&(r==t||c.from>r+10))return c;if(r==t)return null}}prevMatch(e,t,s){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,s,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,s)=>{if(s=="&")return e.match[0];if(s=="$")return"$";for(let i=s.length;i>0;i--){let r=+s.slice(0,i);if(r>0&&r<e.match.length)return e.match[r]+s.slice(i)}return t})}matchAll(e,t){let s=Yr(this.spec,e,0,e.doc.length),i=[];for(;!s.next().done;){if(i.length>=t)return null;i.push(s.value)}return i}highlight(e,t,s,i){let r=Yr(this.spec,e,Math.max(0,t-250),Math.min(s+250,e.doc.length));for(;!r.next().done;)i(r.value.from,r.value.to)}}const Xo=Me.define(),dm=Me.define(),$i=Zt.define({create(n){return new mf(bp(n).create(),null)},update(n,e){for(let t of e.effects)t.is(Xo)?n=new mf(t.value.create(),n.panel):t.is(dm)&&(n=new mf(n.query,t.value?hm:null));return n},provide:n=>zo.from(n,e=>e.panel)});class mf{constructor(e,t){this.query=e,this.panel=t}}const RQ=Pe.mark({class:"cm-searchMatch"}),DQ=Pe.mark({class:"cm-searchMatch cm-searchMatch-selected"}),IQ=mt.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field($i))}update(n){let e=n.state.field($i);(e!=n.startState.field($i)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return Pe.none;let{view:t}=this,s=new Ys;for(let i=0,r=t.visibleRanges,o=r.length;i<o;i++){let{from:c,to:u}=r[i];for(;i<o-1&&u>r[i+1].from-500;)u=r[++i].to;n.highlight(t.state,c,u,(f,p)=>{let g=t.state.selection.ranges.some(O=>O.from==f&&O.to==p);s.add(f,p,g?DQ:RQ)})}return s.finish()}},{decorations:n=>n.decorations});function la(n){return e=>{let t=e.state.field($i,!1);return t&&t.query.spec.valid?n(e,t):gS(e)}}const _u=la((n,{query:e})=>{let{to:t}=n.state.selection.main,s=e.nextMatch(n.state,t,t);if(!s)return!1;let i=ie.single(s.from,s.to),r=n.state.facet(gl);return n.dispatch({selection:i,effects:[fm(n,s),r.scrollToMatch(i.main,n)],userEvent:"select.search"}),mS(n),!0}),$u=la((n,{query:e})=>{let{state:t}=n,{from:s}=t.selection.main,i=e.prevMatch(t,s,s);if(!i)return!1;let r=ie.single(i.from,i.to),o=n.state.facet(gl);return n.dispatch({selection:r,effects:[fm(n,i),o.scrollToMatch(r.main,n)],userEvent:"select.search"}),mS(n),!0}),LQ=la((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:ie.create(t.map(s=>ie.range(s.from,s.to))),userEvent:"select.search.matches"}),!0)}),ZQ=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:s,to:i}=t.main,r=[],o=0;for(let c=new hl(n.doc,n.sliceDoc(s,i));!c.next().done;){if(r.length>1e3)return!1;c.value.from==s&&(o=r.length),r.push(ie.range(c.value.from,c.value.to))}return e(n.update({selection:ie.create(r,o),userEvent:"select.search.matches"})),!0},rx=la((n,{query:e})=>{let{state:t}=n,{from:s,to:i}=t.selection.main;if(t.readOnly)return!1;let r=e.nextMatch(t,s,s);if(!r)return!1;let o=r,c=[],u,f,p=[];o.from==s&&o.to==i&&(f=t.toText(e.getReplacement(o)),c.push({from:o.from,to:o.to,insert:f}),o=e.nextMatch(t,o.from,o.to),p.push(ye.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(s).number)+".")));let g=n.state.changes(c);return o&&(u=ie.single(o.from,o.to).map(g),p.push(fm(n,o)),p.push(t.facet(gl).scrollToMatch(u.main,n))),n.dispatch({changes:g,selection:u,effects:p,userEvent:"input.replace"}),!0}),zQ=la((n,{query:e})=>{if(n.state.readOnly)return!1;let t=e.matchAll(n.state,1e9).map(i=>{let{from:r,to:o}=i;return{from:r,to:o,insert:e.getReplacement(i)}});if(!t.length)return!1;let s=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:ye.announce.of(s),userEvent:"input.replace.all"}),!0});function hm(n){return n.state.facet(gl).createPanel(n)}function bp(n,e){var t,s,i,r,o;let c=n.selection.main,u=c.empty||c.to>c.from+100?"":n.sliceDoc(c.from,c.to);if(e&&!u)return e;let f=n.facet(gl);return new hS({search:((t=e?.literal)!==null&&t!==void 0?t:f.literal)?u:u.replace(/\n/g,"\\n"),caseSensitive:(s=e?.caseSensitive)!==null&&s!==void 0?s:f.caseSensitive,literal:(i=e?.literal)!==null&&i!==void 0?i:f.literal,regexp:(r=e?.regexp)!==null&&r!==void 0?r:f.regexp,wholeWord:(o=e?.wholeWord)!==null&&o!==void 0?o:f.wholeWord})}function pS(n){let e=Zo(n,hm);return e&&e.dom.querySelector("[main-field]")}function mS(n){let e=pS(n);e&&e==n.root.activeElement&&e.select()}const gS=n=>{let e=n.state.field($i,!1);if(e&&e.panel){let t=pS(n);if(t&&t!=n.root.activeElement){let s=bp(n.state,e.query.spec);s.valid&&n.dispatch({effects:Xo.of(s)}),t.focus(),t.select()}}else n.dispatch({effects:[dm.of(!0),e?Xo.of(bp(n.state,e.query.spec)):Me.appendConfig.of(VQ)]});return!0},OS=n=>{let e=n.state.field($i,!1);if(!e||!e.panel)return!1;let t=Zo(n,hm);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:dm.of(!1)}),!0},FQ=[{key:"Mod-f",run:gS,scope:"editor search-panel"},{key:"F3",run:_u,shift:$u,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:_u,shift:$u,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:OS,scope:"editor search-panel"},{key:"Mod-Shift-l",run:ZQ},{key:"Mod-Alt-g",run:vQ},{key:"Mod-d",run:QQ,preventDefault:!0}];class BQ{constructor(e){this.view=e;let t=this.query=e.state.field($i).query.spec;this.commit=this.commit.bind(this),this.searchField=tt("input",{value:t.search,placeholder:jn(e,"Find"),"aria-label":jn(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=tt("input",{value:t.replace,placeholder:jn(e,"Replace"),"aria-label":jn(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=tt("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=tt("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=tt("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function s(i,r,o){return tt("button",{class:"cm-button",name:i,onclick:r,type:"button"},o)}this.dom=tt("div",{onkeydown:i=>this.keydown(i),class:"cm-search"},[this.searchField,s("next",()=>_u(e),[jn(e,"next")]),s("prev",()=>$u(e),[jn(e,"previous")]),s("select",()=>LQ(e),[jn(e,"all")]),tt("label",null,[this.caseField,jn(e,"match case")]),tt("label",null,[this.reField,jn(e,"regexp")]),tt("label",null,[this.wordField,jn(e,"by word")]),...e.state.readOnly?[]:[tt("br"),this.replaceField,s("replace",()=>rx(e),[jn(e,"replace")]),s("replaceAll",()=>zQ(e),[jn(e,"replace all")])],tt("button",{name:"close",onclick:()=>OS(e),"aria-label":jn(e,"close"),type:"button"},["×"])])}commit(){let e=new hS({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:Xo.of(e)}))}keydown(e){qC(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?$u:_u)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),rx(this.view))}update(e){for(let t of e.transactions)for(let s of t.effects)s.is(Xo)&&!s.value.eq(this.query)&&this.setQuery(s.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(gl).top}}function jn(n,e){return n.state.phrase(e)}const Ic=30,Lc=/[\s\.,:;?!]/;function fm(n,{from:e,to:t}){let s=n.state.doc.lineAt(e),i=n.state.doc.lineAt(t).to,r=Math.max(s.from,e-Ic),o=Math.min(i,t+Ic),c=n.state.sliceDoc(r,o);if(r!=s.from){for(let u=0;u<Ic;u++)if(!Lc.test(c[u+1])&&Lc.test(c[u])){c=c.slice(u);break}}if(o!=i){for(let u=c.length-1;u>c.length-Ic;u--)if(!Lc.test(c[u-1])&&Lc.test(c[u])){c=c.slice(0,u);break}}return ye.announce.of(`${n.state.phrase("current match")}. ${c} ${n.state.phrase("on line")} ${s.number}.`)}const XQ=ye.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"}}),VQ=[$i,Ni.low(IQ),XQ];class yS{constructor(e,t,s,i){this.state=e,this.pos=t,this.explicit=s,this.view=i,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let t=Nt(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),s=Math.max(t.from,this.pos-250),i=t.text.slice(s-t.from,this.pos-t.from),r=i.search(xS(e,!1));return r<0?null:{from:s+r,to:this.pos,text:i.slice(r)}}get aborted(){return this.abortListeners==null}addEventListener(e,t,s){e=="abort"&&this.abortListeners&&(this.abortListeners.push(t),s&&s.onDocChange&&(this.abortOnDocChange=!0))}}function lx(n){let e=Object.keys(n).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function WQ(n){let e=Object.create(null),t=Object.create(null);for(let{label:i}of n){e[i[0]]=!0;for(let r=1;r<i.length;r++)t[i[r]]=!0}let s=lx(e)+lx(t)+"*$";return[new RegExp("^"+s),new RegExp(s)]}function vS(n){let e=n.map(i=>typeof i=="string"?{label:i}:i),[t,s]=e.every(i=>/^\w+$/.test(i.label))?[/\w*$/,/\w+$/]:WQ(e);return i=>{let r=i.matchBefore(s);return r||i.explicit?{from:r?r.from:i.pos,options:e,validFor:t}:null}}function UQ(n,e){return t=>{for(let s=Nt(t.state).resolveInner(t.pos,-1);s;s=s.parent){if(n.indexOf(s.name)>-1)return null;if(s.type.isTop)break}return e(t)}}class ox{constructor(e,t,s,i){this.completion=e,this.source=t,this.match=s,this.score=i}}function ir(n){return n.selection.main.from}function xS(n,e){var t;let{source:s}=n,i=e&&s[0]!="^",r=s[s.length-1]!="$";return!i&&!r?n:new RegExp(`${i?"^":""}(?:${s})${r?"$":""}`,(t=n.flags)!==null&&t!==void 0?t:n.ignoreCase?"i":"")}const pm=js.define();function YQ(n,e,t,s){let{main:i}=n.selection,r=t-i.from,o=s-i.from;return{...n.changeByRange(c=>{if(c!=i&&t!=s&&n.sliceDoc(c.from+r,c.from+o)!=n.sliceDoc(t,s))return{range:c};let u=n.toText(e);return{changes:{from:c.from+r,to:s==i.from?c.to:c.from+o,insert:u},range:ie.cursor(c.from+r+u.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const ax=new WeakMap;function qQ(n){if(!Array.isArray(n))return n;let e=ax.get(n);return e||ax.set(n,e=vS(n)),e}const Cu=Me.define(),Vo=Me.define();class GQ{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let t=0;t<e.length;){let s=xn(e,t),i=Ss(s);this.chars.push(s);let r=e.slice(t,t+i),o=r.toUpperCase();this.folded.push(xn(o==r?r.toLowerCase():o,0)),t+=i}this.astral=e.length!=this.chars.length}ret(e,t){return this.score=e,this.matched=t,this}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return null;let{chars:t,folded:s,any:i,precise:r,byWord:o}=this;if(t.length==1){let b=xn(e,0),C=Ss(b),T=C==e.length?0:-100;if(b!=t[0])if(b==s[0])T+=-200;else return null;return this.ret(T,[0,C])}let c=e.indexOf(this.pattern);if(c==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let u=t.length,f=0;if(c<0){for(let b=0,C=Math.min(e.length,200);b<C&&f<u;){let T=xn(e,b);(T==t[f]||T==s[f])&&(i[f++]=b),b+=Ss(T)}if(f<u)return null}let p=0,g=0,O=!1,v=0,w=-1,k=-1,S=/[a-z]/.test(e),$=!0;for(let b=0,C=Math.min(e.length,200),T=0;b<C&&g<u;){let P=xn(e,b);c<0&&(p<u&&P==t[p]&&(r[p++]=b),v<u&&(P==t[v]||P==s[v]?(v==0&&(w=b),k=b+1,v++):v=0));let N,A=P<255?P>=48&&P<=57||P>=97&&P<=122?2:P>=65&&P<=90?1:0:(N=Lp(P))!=N.toLowerCase()?1:N!=N.toUpperCase()?2:0;(!b||A==1&&S||T==0&&A!=0)&&(t[g]==P||s[g]==P&&(O=!0)?o[g++]=b:o.length&&($=!1)),T=A,b+=Ss(P)}return g==u&&o[0]==0&&$?this.result(-100+(O?-200:0),o,e):v==u&&w==0?this.ret(-200-e.length+(k==e.length?0:-100),[0,k]):c>-1?this.ret(-700-e.length,[c,c+this.pattern.length]):v==u?this.ret(-900-e.length,[w,k]):g==u?this.result(-100+(O?-200:0)+-700+($?0:-1100),o,e):t.length==2?null:this.result((i[0]?-700:0)+-200+-1100,i,e)}result(e,t,s){let i=[],r=0;for(let o of t){let c=o+(this.astral?Ss(xn(s,o)):1);r&&i[r-1]==o?i[r-1]=c:(i[r++]=o,i[r++]=c)}return this.ret(e-s.length,i)}}class HQ{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 t=e.slice(0,this.pattern.length),s=t==this.pattern?0:t.toLowerCase()==this.folded?-200:null;return s==null?null:(this.matched=[0,t.length],this.score=s+(e.length==this.pattern.length?0:-100),this)}}const It=Se.define({combine(n){return Qs(n,{activateOnTyping:!0,activateOnCompletion:()=>!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:KQ,filterStrict:!1,compareCompletions:(e,t)=>e.label.localeCompare(t.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>s=>cx(e(s),t(s)),optionClass:(e,t)=>s=>cx(e(s),t(s)),addToOptions:(e,t)=>e.concat(t),filterStrict:(e,t)=>e||t})}});function cx(n,e){return n?e?n+" "+e:n:e}function KQ(n,e,t,s,i,r){let o=n.textDirection==ot.RTL,c=o,u=!1,f="top",p,g,O=e.left-i.left,v=i.right-e.right,w=s.right-s.left,k=s.bottom-s.top;if(c&&O<Math.min(w,v)?c=!1:!c&&v<Math.min(w,O)&&(c=!0),w<=(c?O:v))p=Math.max(i.top,Math.min(t.top,i.bottom-k))-e.top,g=Math.min(400,c?O:v);else{u=!0,g=Math.min(400,(o?e.right:i.right-e.left)-30);let b=i.bottom-e.bottom;b>=k||b>e.top?p=t.bottom-e.top:(f="bottom",p=e.bottom-t.top)}let S=(e.bottom-e.top)/r.offsetHeight,$=(e.right-e.left)/r.offsetWidth;return{style:`${f}: ${p/S}px; max-width: ${g/$}px`,class:"cm-completionInfo-"+(u?o?"left-narrow":"right-narrow":c?"left":"right")}}function JQ(n){let e=n.addToOptions.slice();return n.icons&&e.push({render(t){let s=document.createElement("div");return s.classList.add("cm-completionIcon"),t.type&&s.classList.add(...t.type.split(/\s+/g).map(i=>"cm-completionIcon-"+i)),s.setAttribute("aria-hidden","true"),s},position:20}),e.push({render(t,s,i,r){let o=document.createElement("span");o.className="cm-completionLabel";let c=t.displayLabel||t.label,u=0;for(let f=0;f<r.length;){let p=r[f++],g=r[f++];p>u&&o.appendChild(document.createTextNode(c.slice(u,p)));let O=o.appendChild(document.createElement("span"));O.appendChild(document.createTextNode(c.slice(p,g))),O.className="cm-completionMatchedText",u=g}return u<c.length&&o.appendChild(document.createTextNode(c.slice(u))),o},position:50},{render(t){if(!t.detail)return null;let s=document.createElement("span");return s.className="cm-completionDetail",s.textContent=t.detail,s},position:80}),e.sort((t,s)=>t.position-s.position).map(t=>t.render)}function gf(n,e,t){if(n<=t)return{from:0,to:n};if(e<0&&(e=0),e<=n>>1){let i=Math.floor(e/t);return{from:i*t,to:(i+1)*t}}let s=Math.floor((n-e)/t);return{from:n-(s+1)*t,to:n-s*t}}class eN{constructor(e,t,s){this.view=e,this.stateField=t,this.applyCompletion=s,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:u=>this.placeInfo(u),key:this},this.space=null,this.currentClass="";let i=e.state.field(t),{options:r,selected:o}=i.open,c=e.state.facet(It);this.optionContent=JQ(c),this.optionClass=c.optionClass,this.tooltipClass=c.tooltipClass,this.range=gf(r.length,o,c.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",u=>{let{options:f}=e.state.field(t).open;for(let p=u.target,g;p&&p!=this.dom;p=p.parentNode)if(p.nodeName=="LI"&&(g=/-(\d+)$/.exec(p.id))&&+g[1]<f.length){this.applyCompletion(e,f[+g[1]]),u.preventDefault();return}}),this.dom.addEventListener("focusout",u=>{let f=e.state.field(this.stateField,!1);f&&f.tooltip&&e.state.facet(It).closeOnBlur&&u.relatedTarget!=e.contentDOM&&e.dispatch({effects:Vo.of(null)})}),this.showOptions(r,i.id)}mount(){this.updateSel()}showOptions(e,t){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(e,t,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(e){var t;let s=e.state.field(this.stateField),i=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),s!=i){let{options:r,selected:o,disabled:c}=s.open;(!i.open||i.open.options!=r)&&(this.range=gf(r.length,o,e.state.facet(It).maxRenderedOptions),this.showOptions(r,s.id)),this.updateSel(),c!=((t=i.open)===null||t===void 0?void 0:t.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!c)}}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let s of this.currentClass.split(" "))s&&this.dom.classList.remove(s);for(let s of t.split(" "))s&&this.dom.classList.add(s);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;if((t.selected>-1&&t.selected<this.range.from||t.selected>=this.range.to)&&(this.range=gf(t.options.length,t.selected,this.view.state.facet(It).maxRenderedOptions),this.showOptions(t.options,e.id)),this.updateSelectedOption(t.selected)){this.destroyInfo();let{completion:s}=t.options[t.selected],{info:i}=s;if(!i)return;let r=typeof i=="string"?document.createTextNode(i):i(s);if(!r)return;"then"in r?r.then(o=>{o&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(o,s)}).catch(o=>kn(this.view.state,o,"completion info")):this.addInfoPane(r,s)}}addInfoPane(e,t){this.destroyInfo();let s=this.info=document.createElement("div");if(s.className="cm-tooltip cm-completionInfo",e.nodeType!=null)s.appendChild(e),this.infoDestroy=null;else{let{dom:i,destroy:r}=e;s.appendChild(i),this.infoDestroy=r||null}this.dom.appendChild(s),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let s=this.list.firstChild,i=this.range.from;s;s=s.nextSibling,i++)s.nodeName!="LI"||!s.id?i--:i==e?s.hasAttribute("aria-selected")||(s.setAttribute("aria-selected","true"),t=s):s.hasAttribute("aria-selected")&&s.removeAttribute("aria-selected");return t&&nN(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),s=this.info.getBoundingClientRect(),i=e.getBoundingClientRect(),r=this.space;if(!r){let o=this.dom.ownerDocument.documentElement;r={left:0,top:0,right:o.clientWidth,bottom:o.clientHeight}}return i.top>Math.min(r.bottom,t.bottom)-10||i.bottom<Math.max(r.top,t.top)+10?null:this.view.state.facet(It).positionInfo(this.view,t,i,s,r,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,t,s){const i=document.createElement("ul");i.id=t,i.setAttribute("role","listbox"),i.setAttribute("aria-expanded","true"),i.setAttribute("aria-label",this.view.state.phrase("Completions")),i.addEventListener("mousedown",o=>{o.target==i&&o.preventDefault()});let r=null;for(let o=s.from;o<s.to;o++){let{completion:c,match:u}=e[o],{section:f}=c;if(f){let O=typeof f=="string"?f:f.name;if(O!=r&&(o>s.from||s.from==0))if(r=O,typeof f!="string"&&f.header)i.appendChild(f.header(f));else{let v=i.appendChild(document.createElement("completion-section"));v.textContent=O}}const p=i.appendChild(document.createElement("li"));p.id=t+"-"+o,p.setAttribute("role","option");let g=this.optionClass(c);g&&(p.className=g);for(let O of this.optionContent){let v=O(c,this.view.state,this.view,u);v&&p.appendChild(v)}}return s.from&&i.classList.add("cm-completionListIncompleteTop"),s.to<e.length&&i.classList.add("cm-completionListIncompleteBottom"),i}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function tN(n,e){return t=>new eN(t,n,e)}function nN(n,e){let t=n.getBoundingClientRect(),s=e.getBoundingClientRect(),i=t.height/n.offsetHeight;s.top<t.top?n.scrollTop-=(t.top-s.top)/i:s.bottom>t.bottom&&(n.scrollTop+=(s.bottom-t.bottom)/i)}function ux(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function sN(n,e){let t=[],s=null,i=null,r=p=>{t.push(p);let{section:g}=p.completion;if(g){s||(s=[]);let O=typeof g=="string"?g:g.name;s.some(v=>v.name==O)||s.push(typeof g=="string"?{name:O}:g)}},o=e.facet(It);for(let p of n)if(p.hasResult()){let g=p.result.getMatch;if(p.result.filter===!1)for(let O of p.result.options)r(new ox(O,p.source,g?g(O):[],1e9-t.length));else{let O=e.sliceDoc(p.from,p.to),v,w=o.filterStrict?new HQ(O):new GQ(O);for(let k of p.result.options)if(v=w.match(k.label)){let S=k.displayLabel?g?g(k,v.matched):[]:v.matched,$=v.score+(k.boost||0);if(r(new ox(k,p.source,S,$)),typeof k.section=="object"&&k.section.rank==="dynamic"){let{name:b}=k.section;i||(i=Object.create(null)),i[b]=Math.max($,i[b]||-1e9)}}}}if(s){let p=Object.create(null),g=0,O=(v,w)=>(v.rank==="dynamic"&&w.rank==="dynamic"?i[w.name]-i[v.name]:0)||(typeof v.rank=="number"?v.rank:1e9)-(typeof w.rank=="number"?w.rank:1e9)||(v.name<w.name?-1:1);for(let v of s.sort(O))g-=1e5,p[v.name]=g;for(let v of t){let{section:w}=v.completion;w&&(v.score+=p[typeof w=="string"?w:w.name])}}let c=[],u=null,f=o.compareCompletions;for(let p of t.sort((g,O)=>O.score-g.score||f(g.completion,O.completion))){let g=p.completion;!u||u.label!=g.label||u.detail!=g.detail||u.type!=null&&g.type!=null&&u.type!=g.type||u.apply!=g.apply||u.boost!=g.boost?c.push(p):ux(p.completion)>ux(u)&&(c[c.length-1]=p),u=p.completion}return c}class Jr{constructor(e,t,s,i,r,o){this.options=e,this.attrs=t,this.tooltip=s,this.timestamp=i,this.selected=r,this.disabled=o}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Jr(this.options,dx(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,s,i,r,o){if(i&&!o&&e.some(f=>f.isPending))return i.setDisabled();let c=sN(e,t);if(!c.length)return i&&e.some(f=>f.isPending)?i.setDisabled():null;let u=t.facet(It).selectOnOpen?0:-1;if(i&&i.selected!=u&&i.selected!=-1){let f=i.options[i.selected].completion;for(let p=0;p<c.length;p++)if(c[p].completion==f){u=p;break}}return new Jr(c,dx(s,u),{pos:e.reduce((f,p)=>p.hasResult()?Math.min(f,p.from):f,1e8),create:cN,above:r.aboveCursor},i?i.timestamp:Date.now(),u,!1)}map(e){return new Jr(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new Jr(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class Tu{constructor(e,t,s){this.active=e,this.id=t,this.open=s}static start(){return new Tu(oN,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,s=t.facet(It),r=(s.override||t.languageDataAt("autocomplete",ir(t)).map(qQ)).map(u=>(this.active.find(p=>p.source==u)||new Bn(u,this.active.some(p=>p.state!=0)?1:0)).update(e,s));r.length==this.active.length&&r.every((u,f)=>u==this.active[f])&&(r=this.active);let o=this.open,c=e.effects.some(u=>u.is(mm));o&&e.docChanged&&(o=o.map(e.changes)),e.selection||r.some(u=>u.hasResult()&&e.changes.touchesRange(u.from,u.to))||!iN(r,this.active)||c?o=Jr.build(r,t,this.id,o,s,c):o&&o.disabled&&!r.some(u=>u.isPending)&&(o=null),!o&&r.every(u=>!u.isPending)&&r.some(u=>u.hasResult())&&(r=r.map(u=>u.hasResult()?new Bn(u.source,0):u));for(let u of e.effects)u.is(kS)&&(o=o&&o.setSelected(u.value,this.id));return r==this.active&&o==this.open?this:new Tu(r,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?rN:lN}}function iN(n,e){if(n==e)return!0;for(let t=0,s=0;;){for(;t<n.length&&!n[t].hasResult();)t++;for(;s<e.length&&!e[s].hasResult();)s++;let i=t==n.length,r=s==e.length;if(i||r)return i==r;if(n[t++].result!=e[s++].result)return!1}}const rN={"aria-autocomplete":"list"},lN={};function dx(n,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":n};return e>-1&&(t["aria-activedescendant"]=n+"-"+e),t}const oN=[];function wS(n,e){if(n.isUserEvent("input.complete")){let s=n.annotation(pm);if(s&&e.activateOnCompletion(s))return 12}let t=n.isUserEvent("input.type");return t&&e.activateOnTyping?5:t?1:n.isUserEvent("delete.backward")?2:n.selection?8:n.docChanged?16:0}class Bn{constructor(e,t,s=!1){this.source=e,this.state=t,this.explicit=s}hasResult(){return!1}get isPending(){return this.state==1}update(e,t){let s=wS(e,t),i=this;(s&8||s&16&&this.touches(e))&&(i=new Bn(i.source,0)),s&4&&i.state==0&&(i=new Bn(this.source,1)),i=i.updateFor(e,s);for(let r of e.effects)if(r.is(Cu))i=new Bn(i.source,1,r.value);else if(r.is(Vo))i=new Bn(i.source,0);else if(r.is(mm))for(let o of r.value)o.source==i.source&&(i=o);return i}updateFor(e,t){return this.map(e.changes)}map(e){return this}touches(e){return e.changes.touchesRange(ir(e.state))}}class il extends Bn{constructor(e,t,s,i,r,o){super(e,3,t),this.limit=s,this.result=i,this.from=r,this.to=o}hasResult(){return!0}updateFor(e,t){var s;if(!(t&3))return this.map(e.changes);let i=this.result;i.map&&!e.changes.empty&&(i=i.map(i,e.changes));let r=e.changes.mapPos(this.from),o=e.changes.mapPos(this.to,1),c=ir(e.state);if(c>o||!i||t&2&&(ir(e.startState)==this.from||c<this.limit))return new Bn(this.source,t&4?1:0);let u=e.changes.mapPos(this.limit);return aN(i.validFor,e.state,r,o)?new il(this.source,this.explicit,u,i,r,o):i.update&&(i=i.update(i,r,o,new yS(e.state,c,!1)))?new il(this.source,this.explicit,u,i,i.from,(s=i.to)!==null&&s!==void 0?s:ir(e.state)):new Bn(this.source,1,this.explicit)}map(e){return e.empty?this:(this.result.map?this.result.map(this.result,e):this.result)?new il(this.source,this.explicit,e.mapPos(this.limit),this.result,e.mapPos(this.from),e.mapPos(this.to,1)):new Bn(this.source,0)}touches(e){return e.changes.touchesRange(this.from,this.to)}}function aN(n,e,t,s){if(!n)return!1;let i=e.sliceDoc(t,s);return typeof n=="function"?n(i,t,s,e):xS(n,!0).test(i)}const mm=Me.define({map(n,e){return n.map(t=>t.map(e))}}),kS=Me.define(),wn=Zt.define({create(){return Tu.start()},update(n,e){return n.update(e)},provide:n=>[Jp.from(n,e=>e.tooltip),ye.contentAttributes.from(n,e=>e.attrs)]});function gm(n,e){const t=e.completion.apply||e.completion.label;let s=n.state.field(wn).active.find(i=>i.source==e.source);return s instanceof il?(typeof t=="string"?n.dispatch({...YQ(n.state,t,s.from,s.to),annotations:pm.of(e.completion)}):t(n,e.completion,s.from,s.to),!0):!1}const cN=tN(wn,gm);function Zc(n,e="option"){return t=>{let s=t.state.field(wn,!1);if(!s||!s.open||s.open.disabled||Date.now()-s.open.timestamp<t.state.facet(It).interactionDelay)return!1;let i=1,r;e=="page"&&(r=ek(t,s.open.tooltip))&&(i=Math.max(2,Math.floor(r.dom.offsetHeight/r.dom.querySelector("li").offsetHeight)-1));let{length:o}=s.open.options,c=s.open.selected>-1?s.open.selected+i*(n?1:-1):n?0:o-1;return c<0?c=e=="page"?0:o-1:c>=o&&(c=e=="page"?o-1:0),t.dispatch({effects:kS.of(c)}),!0}}const uN=n=>{let e=n.state.field(wn,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<n.state.facet(It).interactionDelay?!1:gm(n,e.open.options[e.open.selected])},Of=n=>n.state.field(wn,!1)?(n.dispatch({effects:Cu.of(!0)}),!0):!1,dN=n=>{let e=n.state.field(wn,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Vo.of(null)}),!0)};class hN{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const fN=50,pN=1e3,mN=mt.fromClass(class{constructor(n){this.view=n,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let e of n.state.field(wn).active)e.isPending&&this.startQuery(e)}update(n){let e=n.state.field(wn),t=n.state.facet(It);if(!n.selectionSet&&!n.docChanged&&n.startState.field(wn)==e)return;let s=n.transactions.some(r=>{let o=wS(r,t);return o&8||(r.selection||r.docChanged)&&!(o&3)});for(let r=0;r<this.running.length;r++){let o=this.running[r];if(s||o.context.abortOnDocChange&&n.docChanged||o.updates.length+n.transactions.length>fN&&Date.now()-o.time>pN){for(let c of o.context.abortListeners)try{c()}catch(u){kn(this.view.state,u)}o.context.abortListeners=null,this.running.splice(r--,1)}else o.updates.push(...n.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),n.transactions.some(r=>r.effects.some(o=>o.is(Cu)))&&(this.pendingStart=!0);let i=this.pendingStart?50:t.activateOnTypingDelay;if(this.debounceUpdate=e.active.some(r=>r.isPending&&!this.running.some(o=>o.active.source==r.source))?setTimeout(()=>this.startUpdate(),i):-1,this.composing!=0)for(let r of n.transactions)r.isUserEvent("input.type")?this.composing=2:this.composing==2&&r.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:n}=this.view,e=n.field(wn);for(let t of e.active)t.isPending&&!this.running.some(s=>s.active.source==t.source)&&this.startQuery(t);this.running.length&&e.open&&e.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(It).updateSyncTime))}startQuery(n){let{state:e}=this.view,t=ir(e),s=new yS(e,t,n.explicit,this.view),i=new hN(n,s);this.running.push(i),Promise.resolve(n.source(s)).then(r=>{i.context.aborted||(i.done=r||null,this.scheduleAccept())},r=>{this.view.dispatch({effects:Vo.of(null)}),kn(this.view.state,r)})}scheduleAccept(){this.running.every(n=>n.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(It).updateSyncTime))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(It),s=this.view.state.field(wn);for(let i=0;i<this.running.length;i++){let r=this.running[i];if(r.done===void 0)continue;if(this.running.splice(i--,1),r.done){let c=ir(r.updates.length?r.updates[0].startState:this.view.state),u=Math.min(c,r.done.from+(r.active.explicit?0:1)),f=new il(r.active.source,r.active.explicit,u,r.done,r.done.from,(n=r.done.to)!==null&&n!==void 0?n:c);for(let p of r.updates)f=f.update(p,t);if(f.hasResult()){e.push(f);continue}}let o=s.active.find(c=>c.source==r.active.source);if(o&&o.isPending)if(r.done==null){let c=new Bn(r.active.source,0);for(let u of r.updates)c=c.update(u,t);c.isPending||e.push(c)}else this.startQuery(o)}(e.length||s.open&&s.open.disabled)&&this.view.dispatch({effects:mm.of(e)})}},{eventHandlers:{blur(n){let e=this.view.state.field(wn,!1);if(e&&e.tooltip&&this.view.state.facet(It).closeOnBlur){let t=e.open&&ek(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:Vo.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Cu.of(!1)}),20),this.composing=0}}}),gN=typeof navigator=="object"&&/Win/.test(navigator.platform),ON=Ni.highest(ye.domEventHandlers({keydown(n,e){let t=e.state.field(wn,!1);if(!t||!t.open||t.open.disabled||t.open.selected<0||n.key.length>1||n.ctrlKey&&!(gN&&n.altKey)||n.metaKey)return!1;let s=t.open.options[t.open.selected],i=t.active.find(o=>o.source==s.source),r=s.completion.commitCharacters||i.result.commitCharacters;return r&&r.indexOf(n.key)>-1&&gm(e,s),!1}})),SS=ye.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 yN{constructor(e,t,s,i){this.field=e,this.line=t,this.from=s,this.to=i}}class Om{constructor(e,t,s){this.field=e,this.from=t,this.to=s}map(e){let t=e.mapPos(this.from,-1,Vt.TrackDel),s=e.mapPos(this.to,1,Vt.TrackDel);return t==null||s==null?null:new Om(this.field,t,s)}}class ym{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let s=[],i=[t],r=e.doc.lineAt(t),o=/^\s*/.exec(r.text)[0];for(let u of this.lines){if(s.length){let f=o,p=/^\t*/.exec(u)[0].length;for(let g=0;g<p;g++)f+=e.facet(na);i.push(t+f.length-p),u=f+u.slice(p)}s.push(u),t+=u.length+1}let c=this.fieldPositions.map(u=>new Om(u.field,i[u.line]+u.from,i[u.line]+u.to));return{text:s,ranges:c}}static parse(e){let t=[],s=[],i=[],r;for(let o of e.split(/\r\n?|\n/)){for(;r=/[#$]\{(?:(\d+)(?::([^{}]*))?|((?:\\[{}]|[^{}])*))\}/.exec(o);){let c=r[1]?+r[1]:null,u=r[2]||r[3]||"",f=-1,p=u.replace(/\\[{}]/g,g=>g[1]);for(let g=0;g<t.length;g++)(c!=null?t[g].seq==c:p&&t[g].name==p)&&(f=g);if(f<0){let g=0;for(;g<t.length&&(c==null||t[g].seq!=null&&t[g].seq<c);)g++;t.splice(g,0,{seq:c,name:p}),f=g;for(let O of i)O.field>=f&&O.field++}for(let g of i)if(g.line==s.length&&g.from>r.index){let O=r[2]?3+(r[1]||"").length:2;g.from-=O,g.to-=O}i.push(new yN(f,s.length,r.index,r.index+p.length)),o=o.slice(0,r.index)+u+o.slice(r.index+r[0].length)}o=o.replace(/\\([{}])/g,(c,u,f)=>{for(let p of i)p.line==s.length&&p.from>f&&(p.from--,p.to--);return u}),s.push(o)}return new ym(s,i)}}let vN=Pe.widget({widget:new class extends Ns{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),xN=Pe.mark({class:"cm-snippetField"});class Ol{constructor(e,t){this.ranges=e,this.active=t,this.deco=Pe.set(e.map(s=>(s.from==s.to?vN:xN).range(s.from,s.to)),!0)}map(e){let t=[];for(let s of this.ranges){let i=s.map(e);if(!i)return null;t.push(i)}return new Ol(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(s=>s.field==this.active&&s.from<=t.from&&s.to>=t.to))}}const oa=Me.define({map(n,e){return n&&n.map(e)}}),wN=Me.define(),Wo=Zt.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(oa))return t.value;if(t.is(wN)&&n)return new Ol(n.ranges,t.value)}return n&&e.docChanged&&(n=n.map(e.changes)),n&&e.selection&&!n.selectionInsideField(e.selection)&&(n=null),n},provide:n=>ye.decorations.from(n,e=>e?e.deco:Pe.none)});function vm(n,e){return ie.create(n.filter(t=>t.field==e).map(t=>ie.range(t.from,t.to)))}function kN(n){let e=ym.parse(n);return(t,s,i,r)=>{let{text:o,ranges:c}=e.instantiate(t.state,i),{main:u}=t.state.selection,f={changes:{from:i,to:r==u.from?u.to:r,insert:Be.of(o)},scrollIntoView:!0,annotations:s?[pm.of(s),bt.userEvent.of("input.complete")]:void 0};if(c.length&&(f.selection=vm(c,0)),c.some(p=>p.field>0)){let p=new Ol(c,0),g=f.effects=[oa.of(p)];t.state.field(Wo,!1)===void 0&&g.push(Me.appendConfig.of([Wo,CN,TN,SS]))}t.dispatch(t.state.update(f))}}function bS(n){return({state:e,dispatch:t})=>{let s=e.field(Wo,!1);if(!s||n<0&&s.active==0)return!1;let i=s.active+n,r=n>0&&!s.ranges.some(o=>o.field==i+n);return t(e.update({selection:vm(s.ranges,i),effects:oa.of(r?null:new Ol(s.ranges,i)),scrollIntoView:!0})),!0}}const SN=({state:n,dispatch:e})=>n.field(Wo,!1)?(e(n.update({effects:oa.of(null)})),!0):!1,bN=bS(1),_N=bS(-1),$N=[{key:"Tab",run:bN,shift:_N},{key:"Escape",run:SN}],hx=Se.define({combine(n){return n.length?n[0]:$N}}),CN=Ni.highest(ea.compute([hx],n=>n.facet(hx)));function yn(n,e){return{...e,apply:kN(n)}}const TN=ye.domEventHandlers({mousedown(n,e){let t=e.state.field(Wo,!1),s;if(!t||(s=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let i=t.ranges.find(r=>r.from<=s&&r.to>=s);return!i||i.field==t.active?!1:(e.dispatch({selection:vm(t.ranges,i.field),effects:oa.of(t.ranges.some(r=>r.field>i.field)?new Ol(t.ranges,i.field):null),scrollIntoView:!0}),!0)}}),Uo={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},er=Me.define({map(n,e){let t=e.mapPos(n,-1,Vt.TrackAfter);return t??void 0}}),xm=new class extends or{};xm.startSide=1;xm.endSide=-1;const _S=Zt.define({create(){return Ue.empty},update(n,e){if(n=n.map(e.changes),e.selection){let t=e.state.doc.lineAt(e.selection.main.head);n=n.update({filter:s=>s>=t.from&&s<=t.to})}for(let t of e.effects)t.is(er)&&(n=n.update({add:[xm.range(t.value,t.value+1)]}));return n}});function PN(){return[QN,_S]}const yf="()[]{}<>«»»«[]{}";function $S(n){for(let e=0;e<yf.length;e+=2)if(yf.charCodeAt(e)==n)return yf.charAt(e+1);return Lp(n<128?n:n+1)}function CS(n,e){return n.languageDataAt("closeBrackets",e)[0]||Uo}const jN=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),QN=ye.inputHandler.of((n,e,t,s)=>{if((jN?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let i=n.state.selection.main;if(s.length>2||s.length==2&&Ss(xn(s,0))==1||e!=i.from||t!=i.to)return!1;let r=AN(n.state,s);return r?(n.dispatch(r),!0):!1}),NN=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let s=CS(n,n.selection.main.head).brackets||Uo.brackets,i=null,r=n.changeByRange(o=>{if(o.empty){let c=MN(n.doc,o.head);for(let u of s)if(u==c&&Uu(n.doc,o.head)==$S(xn(u,0)))return{changes:{from:o.head-u.length,to:o.head+u.length},range:ie.cursor(o.head-u.length)}}return{range:i=o}});return i||e(n.update(r,{scrollIntoView:!0,userEvent:"delete.backward"})),!i},EN=[{key:"Backspace",run:NN}];function AN(n,e){let t=CS(n,n.selection.main.head),s=t.brackets||Uo.brackets;for(let i of s){let r=$S(xn(i,0));if(e==i)return r==i?IN(n,i,s.indexOf(i+i+i)>-1,t):RN(n,i,r,t.before||Uo.before);if(e==r&&TS(n,n.selection.main.from))return DN(n,i,r)}return null}function TS(n,e){let t=!1;return n.field(_S).between(0,n.doc.length,s=>{s==e&&(t=!0)}),t}function Uu(n,e){let t=n.sliceString(e,e+2);return t.slice(0,Ss(xn(t,0)))}function MN(n,e){let t=n.sliceString(e-2,e);return Ss(xn(t,0))==t.length?t:t.slice(1)}function RN(n,e,t,s){let i=null,r=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:t,from:o.to}],effects:er.of(o.to+e.length),range:ie.range(o.anchor+e.length,o.head+e.length)};let c=Uu(n.doc,o.head);return!c||/\s/.test(c)||s.indexOf(c)>-1?{changes:{insert:e+t,from:o.head},effects:er.of(o.head+e.length),range:ie.cursor(o.head+e.length)}:{range:i=o}});return i?null:n.update(r,{scrollIntoView:!0,userEvent:"input.type"})}function DN(n,e,t){let s=null,i=n.changeByRange(r=>r.empty&&Uu(n.doc,r.head)==t?{changes:{from:r.head,to:r.head+t.length,insert:t},range:ie.cursor(r.head+t.length)}:s={range:r});return s?null:n.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function IN(n,e,t,s){let i=s.stringPrefixes||Uo.stringPrefixes,r=null,o=n.changeByRange(c=>{if(!c.empty)return{changes:[{insert:e,from:c.from},{insert:e,from:c.to}],effects:er.of(c.to+e.length),range:ie.range(c.anchor+e.length,c.head+e.length)};let u=c.head,f=Uu(n.doc,u),p;if(f==e){if(fx(n,u))return{changes:{insert:e+e,from:u},effects:er.of(u+e.length),range:ie.cursor(u+e.length)};if(TS(n,u)){let O=t&&n.sliceDoc(u,u+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:u,to:u+O.length,insert:O},range:ie.cursor(u+O.length)}}}else{if(t&&n.sliceDoc(u-2*e.length,u)==e+e&&(p=px(n,u-2*e.length,i))>-1&&fx(n,p))return{changes:{insert:e+e+e+e,from:u},effects:er.of(u+e.length),range:ie.cursor(u+e.length)};if(n.charCategorizer(u)(f)!=ut.Word&&px(n,u,i)>-1&&!LN(n,u,e,i))return{changes:{insert:e+e,from:u},effects:er.of(u+e.length),range:ie.cursor(u+e.length)}}return{range:r=c}});return r?null:n.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function fx(n,e){let t=Nt(n).resolveInner(e+1);return t.parent&&t.from==e}function LN(n,e,t,s){let i=Nt(n).resolveInner(e,-1),r=s.reduce((o,c)=>Math.max(o,c.length),0);for(let o=0;o<5;o++){let c=n.sliceDoc(i.from,Math.min(i.to,i.from+t.length+r)),u=c.indexOf(t);if(!u||u>-1&&s.indexOf(c.slice(0,u))>-1){let p=i.firstChild;for(;p&&p.from==i.from&&p.to-p.from>t.length+u;){if(n.sliceDoc(p.to-t.length,p.to)==t)return!1;p=p.firstChild}return!0}let f=i.to==e&&i.parent;if(!f)break;i=f}return!1}function px(n,e,t){let s=n.charCategorizer(e);if(s(n.sliceDoc(e-1,e))!=ut.Word)return e;for(let i of t){let r=e-i.length;if(n.sliceDoc(r,e)==i&&s(n.sliceDoc(r-1,r))!=ut.Word)return r}return-1}function ZN(n={}){return[ON,wn,It.of(n),mN,zN,SS]}const PS=[{key:"Ctrl-Space",run:Of},{mac:"Alt-`",run:Of},{mac:"Alt-i",run:Of},{key:"Escape",run:dN},{key:"ArrowDown",run:Zc(!0)},{key:"ArrowUp",run:Zc(!1)},{key:"PageDown",run:Zc(!0,"page")},{key:"PageUp",run:Zc(!1,"page")},{key:"Enter",run:uN}],zN=Ni.highest(ea.computeN([It],n=>n.facet(It).defaultKeymap?[PS]:[]));class mx{constructor(e,t,s){this.from=e,this.to=t,this.diagnostic=s}}class Ki{constructor(e,t,s){this.diagnostics=e,this.panel=t,this.selected=s}static init(e,t,s){let i=s.facet(Yo).markerFilter;i&&(e=i(e,s));let r=e.slice().sort((p,g)=>p.from-g.from||p.to-g.to),o=new Ys,c=[],u=0;for(let p=0;;){let g=p==r.length?null:r[p];if(!g&&!c.length)break;let O,v;for(c.length?(O=u,v=c.reduce((k,S)=>Math.min(k,S.to),g&&g.from>O?g.from:1e8)):(O=g.from,v=g.to,c.push(g),p++);p<r.length;){let k=r[p];if(k.from==O&&(k.to>k.from||k.to==O))c.push(k),p++,v=Math.min(k.to,v);else{v=Math.min(k.from,v);break}}let w=eE(c);if(c.some(k=>k.from==k.to||k.from==k.to-1&&s.doc.lineAt(k.from).to==k.from))o.add(O,O,Pe.widget({widget:new GN(w),diagnostics:c.slice()}));else{let k=c.reduce((S,$)=>$.markClass?S+" "+$.markClass:S,"");o.add(O,v,Pe.mark({class:"cm-lintRange cm-lintRange-"+w+k,diagnostics:c.slice(),inclusiveEnd:c.some(S=>S.to>v)}))}u=v;for(let k=0;k<c.length;k++)c[k].to<=u&&c.splice(k--,1)}let f=o.finish();return new Ki(f,t,fl(f))}}function fl(n,e=null,t=0){let s=null;return n.between(t,1e9,(i,r,{spec:o})=>{if(!(e&&o.diagnostics.indexOf(e)<0))if(!s)s=new mx(i,r,e||o.diagnostics[0]);else{if(o.diagnostics.indexOf(s.diagnostic)<0)return!1;s=new mx(s.from,r,s.diagnostic)}}),s}function FN(n,e){let t=e.pos,s=e.end||t,i=n.state.facet(Yo).hideOn(n,t,s);if(i!=null)return i;let r=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(o=>o.is(jS))||n.changes.touchesRange(r.from,Math.max(r.to,s)))}function BN(n,e){return n.field(An,!1)?e:e.concat(Me.appendConfig.of(tE))}const jS=Me.define(),wm=Me.define(),QS=Me.define(),An=Zt.define({create(){return new Ki(Pe.none,null,null)},update(n,e){if(e.docChanged&&n.diagnostics.size){let t=n.diagnostics.map(e.changes),s=null,i=n.panel;if(n.selected){let r=e.changes.mapPos(n.selected.from,1);s=fl(t,n.selected.diagnostic,r)||fl(t,null,r)}!t.size&&i&&e.state.facet(Yo).autoPanel&&(i=null),n=new Ki(t,i,s)}for(let t of e.effects)if(t.is(jS)){let s=e.state.facet(Yo).autoPanel?t.value.length?qo.open:null:n.panel;n=Ki.init(t.value,s,e.state)}else t.is(wm)?n=new Ki(n.diagnostics,t.value?qo.open:null,n.selected):t.is(QS)&&(n=new Ki(n.diagnostics,n.panel,t.value));return n},provide:n=>[zo.from(n,e=>e.panel),ye.decorations.from(n,e=>e.diagnostics)]}),XN=Pe.mark({class:"cm-lintRange cm-lintRange-active"});function VN(n,e,t){let{diagnostics:s}=n.state.field(An),i,r=-1,o=-1;s.between(e-(t<0?1:0),e+(t>0?1:0),(u,f,{spec:p})=>{if(e>=u&&e<=f&&(u==f||(e>u||t>0)&&(e<f||t<0)))return i=p.diagnostics,r=u,o=f,!1});let c=n.state.facet(Yo).tooltipFilter;return i&&c&&(i=c(i,n.state)),i?{pos:r,end:o,above:n.state.doc.lineAt(r).to<o,create(){return{dom:WN(n,i)}}}:null}function WN(n,e){return tt("ul",{class:"cm-tooltip-lint"},e.map(t=>ES(n,t,!1)))}const UN=n=>{let e=n.state.field(An,!1);(!e||!e.panel)&&n.dispatch({effects:BN(n.state,[wm.of(!0)])});let t=Zo(n,qo.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},gx=n=>{let e=n.state.field(An,!1);return!e||!e.panel?!1:(n.dispatch({effects:wm.of(!1)}),!0)},YN=n=>{let e=n.state.field(An,!1);if(!e)return!1;let t=n.state.selection.main,s=e.diagnostics.iter(t.to+1);return!s.value&&(s=e.diagnostics.iter(0),!s.value||s.from==t.from&&s.to==t.to)?!1:(n.dispatch({selection:{anchor:s.from,head:s.to},scrollIntoView:!0}),!0)},qN=[{key:"Mod-Shift-m",run:UN,preventDefault:!0},{key:"F8",run:YN}],Yo=Se.define({combine(n){return{sources:n.map(e=>e.source).filter(e=>e!=null),...Qs(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:Ox,tooltipFilter:Ox,needsRefresh:(e,t)=>e?t?s=>e(s)||t(s):e:t,hideOn:(e,t)=>e?t?(s,i,r)=>e(s,i,r)||t(s,i,r):e:t,autoPanel:(e,t)=>e||t})}}});function Ox(n,e){return n?e?(t,s)=>e(n(t,s),s):n:e}function NS(n){let e=[];if(n)e:for(let{name:t}of n){for(let s=0;s<t.length;s++){let i=t[s];if(/[a-zA-Z]/.test(i)&&!e.some(r=>r.toLowerCase()==i.toLowerCase())){e.push(i);continue e}}e.push("")}return e}function ES(n,e,t){var s;let i=t?NS(e.actions):[];return tt("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},tt("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(n):e.message),(s=e.actions)===null||s===void 0?void 0:s.map((r,o)=>{let c=!1,u=v=>{if(v.preventDefault(),c)return;c=!0;let w=fl(n.state.field(An).diagnostics,e);w&&r.apply(n,w.from,w.to)},{name:f}=r,p=i[o]?f.indexOf(i[o]):-1,g=p<0?f:[f.slice(0,p),tt("u",f.slice(p,p+1)),f.slice(p+1)],O=r.markClass?" "+r.markClass:"";return tt("button",{type:"button",class:"cm-diagnosticAction"+O,onclick:u,onmousedown:u,"aria-label":` Action: ${f}${p<0?"":` (access key "${i[o]})"`}.`},g)}),e.source&&tt("div",{class:"cm-diagnosticSource"},e.source))}class GN extends Ns{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return tt("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class yx{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=ES(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class qo{constructor(e){this.view=e,this.items=[];let t=i=>{if(i.keyCode==27)gx(this.view),this.view.focus();else if(i.keyCode==38||i.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(i.keyCode==40||i.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(i.keyCode==36)this.moveSelection(0);else if(i.keyCode==35)this.moveSelection(this.items.length-1);else if(i.keyCode==13)this.view.focus();else if(i.keyCode>=65&&i.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:r}=this.items[this.selectedIndex],o=NS(r.actions);for(let c=0;c<o.length;c++)if(o[c].toUpperCase().charCodeAt(0)==i.keyCode){let u=fl(this.view.state.field(An).diagnostics,r);u&&r.actions[c].apply(e,u.from,u.to)}}else return;i.preventDefault()},s=i=>{for(let r=0;r<this.items.length;r++)this.items[r].dom.contains(i.target)&&this.moveSelection(r)};this.list=tt("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:s}),this.dom=tt("div",{class:"cm-panel-lint"},this.list,tt("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>gx(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(An).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(An),s=0,i=!1,r=null,o=new Set;for(e.between(0,this.view.state.doc.length,(c,u,{spec:f})=>{for(let p of f.diagnostics){if(o.has(p))continue;o.add(p);let g=-1,O;for(let v=s;v<this.items.length;v++)if(this.items[v].diagnostic==p){g=v;break}g<0?(O=new yx(this.view,p),this.items.splice(s,0,O),i=!0):(O=this.items[g],g>s&&(this.items.splice(s,g-s),i=!0)),t&&O.diagnostic==t.diagnostic?O.dom.hasAttribute("aria-selected")||(O.dom.setAttribute("aria-selected","true"),r=O):O.dom.hasAttribute("aria-selected")&&O.dom.removeAttribute("aria-selected"),s++}});s<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)i=!0,this.items.pop();this.items.length==0&&(this.items.push(new yx(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),i=!0),r?(this.list.setAttribute("aria-activedescendant",r.id),this.view.requestMeasure({key:this,read:()=>({sel:r.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:c,panel:u})=>{let f=u.height/this.list.offsetHeight;c.top<u.top?this.list.scrollTop-=(u.top-c.top)/f:c.bottom>u.bottom&&(this.list.scrollTop+=(c.bottom-u.bottom)/f)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),i&&this.sync()}sync(){let e=this.list.firstChild;function t(){let s=e;e=s.nextSibling,s.remove()}for(let s of this.items)if(s.dom.parentNode==this.list){for(;e!=s.dom;)t();e=s.dom.nextSibling}else this.list.insertBefore(s.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(An),s=fl(t.diagnostics,this.items[e].diagnostic);s&&this.view.dispatch({selection:{anchor:s.from,head:s.to},scrollIntoView:!0,effects:QS.of(s)})}static open(e){return new qo(e)}}function HN(n,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(n)}</svg>')`}function zc(n){return HN(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${n}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const KN=ye.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:zc("#d11")},".cm-lintRange-warning":{backgroundImage:zc("orange")},".cm-lintRange-info":{backgroundImage:zc("#999")},".cm-lintRange-hint":{backgroundImage:zc("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}});function JN(n){return n=="error"?4:n=="warning"?3:n=="info"?2:1}function eE(n){let e="hint",t=1;for(let s of n){let i=JN(s.severity);i>t&&(t=i,e=s.severity)}return e}const tE=[An,ye.decorations.compute([An],n=>{let{selected:e,panel:t}=n.field(An);return!e||!t||e.from==e.to?Pe.none:Pe.set([XN.range(e.from,e.to)])}),DT(VN,{hideOn:FN}),KN];var vx=function(e){e===void 0&&(e={});var{crosshairCursor:t=!1}=e,s=[];e.closeBracketsKeymap!==!1&&(s=s.concat(EN)),e.defaultKeymap!==!1&&(s=s.concat(gQ)),e.searchKeymap!==!1&&(s=s.concat(FQ)),e.historyKeymap!==!1&&(s=s.concat(Sj)),e.foldKeymap!==!1&&(s=s.concat(DP)),e.completionKeymap!==!1&&(s=s.concat(PS)),e.lintKeymap!==!1&&(s=s.concat(qN));var i=[];return e.lineNumbers!==!1&&i.push(YT()),e.highlightActiveLineGutter!==!1&&i.push(HT()),e.highlightSpecialChars!==!1&&i.push(hT()),e.history!==!1&&i.push(pj()),e.foldGutter!==!1&&i.push(zP()),e.drawSelection!==!1&&i.push(tT()),e.dropCursor!==!1&&i.push(lT()),e.allowMultipleSelections!==!1&&i.push(ze.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&i.push(CP()),e.syntaxHighlighting!==!1&&i.push($k(VP,{fallback:!0})),e.bracketMatching!==!1&&i.push(KP()),e.closeBrackets!==!1&&i.push(PN()),e.autocompletion!==!1&&i.push(ZN()),e.rectangularSelection!==!1&&i.push($T()),t!==!1&&i.push(PT()),e.highlightActiveLine!==!1&&i.push(yT()),e.highlightSelectionMatches!==!1&&i.push(SQ()),e.tabSize&&typeof e.tabSize=="number"&&i.push(na.of(" ".repeat(e.tabSize))),i.concat([ea.of(s.flat())]).filter(Boolean)};const nE="#e5c07b",xx="#e06c75",sE="#56b6c2",iE="#ffffff",eu="#abb2bf",_p="#7d8799",rE="#61afef",lE="#98c379",wx="#d19a66",oE="#c678dd",aE="#21252b",kx="#2c313a",Sx="#282c34",vf="#353a42",cE="#3E4451",bx="#528bff",uE=ye.theme({"&":{color:eu,backgroundColor:Sx},".cm-content":{caretColor:bx},".cm-cursor, .cm-dropCursor":{borderLeftColor:bx},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:cE},".cm-panels":{backgroundColor:aE,color:eu},".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:Sx,color:_p,border:"none"},".cm-activeLineGutter":{backgroundColor:kx},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:vf},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:vf,borderBottomColor:vf},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:kx,color:eu}}},{dark:!0}),dE=ia.define([{tag:Z.keyword,color:oE},{tag:[Z.name,Z.deleted,Z.character,Z.propertyName,Z.macroName],color:xx},{tag:[Z.function(Z.variableName),Z.labelName],color:rE},{tag:[Z.color,Z.constant(Z.name),Z.standard(Z.name)],color:wx},{tag:[Z.definition(Z.name),Z.separator],color:eu},{tag:[Z.typeName,Z.className,Z.number,Z.changed,Z.annotation,Z.modifier,Z.self,Z.namespace],color:nE},{tag:[Z.operator,Z.operatorKeyword,Z.url,Z.escape,Z.regexp,Z.link,Z.special(Z.string)],color:sE},{tag:[Z.meta,Z.comment],color:_p},{tag:Z.strong,fontWeight:"bold"},{tag:Z.emphasis,fontStyle:"italic"},{tag:Z.strikethrough,textDecoration:"line-through"},{tag:Z.link,color:_p,textDecoration:"underline"},{tag:Z.heading,fontWeight:"bold",color:xx},{tag:[Z.atom,Z.bool,Z.special(Z.variableName)],color:wx},{tag:[Z.processingInstruction,Z.string,Z.inserted],color:lE},{tag:Z.invalid,color:iE}]),AS=[uE,$k(dE)];var hE=ye.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),fE=function(e){e===void 0&&(e={});var{indentWithTab:t=!0,editable:s=!0,readOnly:i=!1,theme:r="light",placeholder:o="",basicSetup:c=!0}=e,u=[];switch(t&&u.unshift(ea.of([OQ])),c&&(typeof c=="boolean"?u.unshift(vx()):u.unshift(vx(c))),o&&u.unshift(kT(o)),r){case"light":u.push(hE);break;case"dark":u.push(AS);break;case"none":break;default:u.push(r);break}return s===!1&&u.push(ye.editable.of(!1)),i&&u.push(ze.readOnly.of(!0)),[...u]},pE=n=>({line:n.state.doc.lineAt(n.state.selection.main.from),lineCount:n.state.doc.lines,lineBreak:n.state.lineBreak,length:n.state.doc.length,readOnly:n.state.readOnly,tabSize:n.state.tabSize,selection:n.state.selection,selectionAsSingle:n.state.selection.asSingle().main,ranges:n.state.selection.ranges,selectionCode:n.state.sliceDoc(n.state.selection.main.from,n.state.selection.main.to),selections:n.state.selection.ranges.map(e=>n.state.sliceDoc(e.from,e.to)),selectedText:n.state.selection.ranges.some(e=>!e.empty)});class mE{constructor(e,t){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=t,this.timeoutMS=t,this.callbacks.push(e)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var e=this.callbacks.slice();this.callbacks.length=0,e.forEach(t=>{try{t()}catch(s){console.error("TimeoutLatch callback error:",s)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class _x{constructor(){this.interval=null,this.latches=new Set}add(e){this.latches.add(e),this.start()}remove(e){this.latches.delete(e),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(e=>{e.tick(),e.isDone&&this.remove(e)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var xf=null,gE=()=>typeof window>"u"?new _x:(xf||(xf=new _x),xf),$x=js.define(),OE=200,yE=[];function vE(n){var{value:e,selection:t,onChange:s,onStatistics:i,onCreateEditor:r,onUpdate:o,extensions:c=yE,autoFocus:u,theme:f="light",height:p=null,minHeight:g=null,maxHeight:O=null,width:v=null,minWidth:w=null,maxWidth:k=null,placeholder:S="",editable:$=!0,readOnly:b=!1,indentWithTab:C=!0,basicSetup:T=!0,root:P,initialState:N}=n,[A,X]=B.useState(),[F,H]=B.useState(),[J,R]=B.useState(),V=B.useState(()=>({current:null}))[0],U=B.useState(()=>({current:null}))[0],te=ye.theme({"&":{height:p,minHeight:g,maxHeight:O,width:v,minWidth:w,maxWidth:k},"& .cm-scroller":{height:"100% !important"}}),pe=ye.updateListener.of(z=>{if(z.docChanged&&typeof s=="function"&&!z.transactions.some(I=>I.annotation($x))){V.current?V.current.reset():(V.current=new mE(()=>{if(U.current){var I=U.current;U.current=null,I()}V.current=null},OE),gE().add(V.current));var Q=z.state.doc,j=Q.toString();s(j,z)}i&&i(pE(z))}),ce=fE({theme:f,editable:$,readOnly:b,placeholder:S,indentWithTab:C,basicSetup:T}),Y=[pe,te,...ce];return o&&typeof o=="function"&&Y.push(ye.updateListener.of(o)),Y=Y.concat(c),B.useLayoutEffect(()=>{if(A&&!J){var z={doc:e,selection:t,extensions:Y},Q=N?ze.fromJSON(N.json,z,N.fields):ze.create(z);if(R(Q),!F){var j=new ye({state:Q,parent:A,root:P});H(j),r&&r(j,Q)}}return()=>{F&&(R(void 0),H(void 0))}},[A,J]),B.useEffect(()=>{n.container&&X(n.container)},[n.container]),B.useEffect(()=>()=>{F&&(F.destroy(),H(void 0)),V.current&&(V.current.cancel(),V.current=null)},[F]),B.useEffect(()=>{u&&F&&F.focus()},[u,F]),B.useEffect(()=>{F&&F.dispatch({effects:Me.reconfigure.of(Y)})},[f,c,p,g,O,v,w,k,S,$,b,C,T,s,o]),B.useEffect(()=>{if(e!==void 0){var z=F?F.state.doc.toString():"";if(F&&e!==z){var Q=V.current&&!V.current.isDone,j=()=>{F&&e!==F.state.doc.toString()&&F.dispatch({changes:{from:0,to:F.state.doc.toString().length,insert:e||""},annotations:[$x.of(!0)]})};Q?U.current=j:j()}}},[e,F]),{state:J,setState:R,view:F,setView:H,container:A,setContainer:X}}var xE=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],MS=B.forwardRef((n,e)=>{var{className:t,value:s="",selection:i,extensions:r=[],onChange:o,onStatistics:c,onCreateEditor:u,onUpdate:f,autoFocus:p,theme:g="light",height:O,minHeight:v,maxHeight:w,width:k,minWidth:S,maxWidth:$,basicSetup:b,placeholder:C,indentWithTab:T,editable:P,readOnly:N,root:A,initialState:X}=n,F=G_(n,xE),H=B.useRef(null),{state:J,view:R,container:V,setContainer:U}=vE({root:A,value:s,autoFocus:p,theme:g,height:O,minHeight:v,maxHeight:w,width:k,minWidth:S,maxWidth:$,basicSetup:b,placeholder:C,indentWithTab:T,editable:P,readOnly:N,selection:i,onChange:o,onStatistics:c,onCreateEditor:u,onUpdate:f,extensions:r,initialState:X});B.useImperativeHandle(e,()=>({editor:H.current,state:J,view:R}),[H,V,J,R]);var te=B.useCallback(ce=>{H.current=ce,U(ce)},[U]);if(typeof s!="string")throw new Error("value must be typeof string but got "+typeof s);var pe=typeof g=="string"?"cm-theme-"+g:"cm-theme";return d.jsx("div",Pf({ref:te,className:""+pe+(t?" "+t:"")},F))});MS.displayName="CodeMirror";var Cx={};class Pu{constructor(e,t,s,i,r,o,c,u,f,p=0,g){this.p=e,this.stack=t,this.state=s,this.reducePos=i,this.pos=r,this.score=o,this.buffer=c,this.bufferBase=u,this.curContext=f,this.lookAhead=p,this.parent=g}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,s=0){let i=e.parser.context;return new Pu(e,[],t,s,s,0,[],0,i?new Tx(i,i.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let s=e>>19,i=e&65535,{parser:r}=this.p,o=this.reducePos<this.pos-25;o&&this.setLookAhead(this.pos);let c=r.dynamicPrecedence(i);if(c&&(this.score+=c),s==0){this.pushState(r.getGoto(this.state,i,!0),this.reducePos),i<r.minRepeatTerm&&this.storeNode(i,this.reducePos,this.reducePos,o?8:4,!0),this.reduceContext(i,this.reducePos);return}let u=this.stack.length-(s-1)*3-(e&262144?6:0),f=u?this.stack[u-2]:this.p.ranges[0].from,p=this.reducePos-f;p>=2e3&&!(!((t=this.p.parser.nodeSet.types[i])===null||t===void 0)&&t.isAnonymous)&&(f==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=p):this.p.lastBigReductionSize<p&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=f,this.p.lastBigReductionSize=p));let g=u?this.stack[u-1]:0,O=this.bufferBase+this.buffer.length-g;if(i<r.minRepeatTerm||e&131072){let v=r.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(i,f,v,O+4,!0)}if(e&262144)this.state=this.stack[u];else{let v=this.stack[u-3];this.state=r.getGoto(v,i,!0)}for(;this.stack.length>u;)this.stack.pop();this.reduceContext(i,f)}storeNode(e,t,s,i=4,r=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let o=this,c=this.buffer.length;if(c==0&&o.parent&&(c=o.bufferBase-o.parent.bufferBase,o=o.parent),c>0&&o.buffer[c-4]==0&&o.buffer[c-1]>-1){if(t==s)return;if(o.buffer[c-2]>=t){o.buffer[c-2]=s;return}}}if(!r||this.pos==s)this.buffer.push(e,t,s,i);else{let o=this.buffer.length;if(o>0&&this.buffer[o-4]!=0){let c=!1;for(let u=o;u>0&&this.buffer[u-2]>s;u-=4)if(this.buffer[u-1]>=0){c=!0;break}if(c)for(;o>0&&this.buffer[o-2]>s;)this.buffer[o]=this.buffer[o-4],this.buffer[o+1]=this.buffer[o-3],this.buffer[o+2]=this.buffer[o-2],this.buffer[o+3]=this.buffer[o-1],o-=4,i>4&&(i-=4)}this.buffer[o]=e,this.buffer[o+1]=t,this.buffer[o+2]=s,this.buffer[o+3]=i}}shift(e,t,s,i){if(e&131072)this.pushState(e&65535,this.pos);else if((e&262144)==0){let r=e,{parser:o}=this.p;(i>this.pos||t<=o.maxNode)&&(this.pos=i,o.stateFlag(r,1)||(this.reducePos=i)),this.pushState(r,s),this.shiftContext(t,s),t<=o.maxNode&&this.buffer.push(t,s,i,4)}else this.pos=i,this.shiftContext(t,s),t<=this.p.parser.maxNode&&this.buffer.push(t,s,i,4)}apply(e,t,s,i){e&65536?this.reduce(e):this.shift(e,t,s,i)}useNode(e,t){let s=this.p.reused.length-1;(s<0||this.p.reused[s]!=e)&&(this.p.reused.push(e),s++);let i=this.pos;this.reducePos=this.pos=i+e.length,this.pushState(t,i),this.buffer.push(s,i,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,t=e.buffer.length;for(;t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let s=e.buffer.slice(t),i=e.bufferBase+t;for(;e&&i==e.bufferBase;)e=e.parent;return new Pu(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,s,i,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let s=e<=this.p.parser.maxNode;s&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,s?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new wE(this);;){let s=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(s==0)return!1;if((s&65536)==0)return!0;t.reduce(s)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let i=[];for(let r=0,o;r<t.length;r+=2)(o=t[r+1])!=this.state&&this.p.parser.hasAction(o,e)&&i.push(t[r],o);if(this.stack.length<120)for(let r=0;i.length<8&&r<t.length;r+=2){let o=t[r+1];i.some((c,u)=>u&1&&c==o)||i.push(t[r],o)}t=i}let s=[];for(let i=0;i<t.length&&s.length<4;i+=2){let r=t[i+1];if(r==this.state)continue;let o=this.split();o.pushState(r,this.pos),o.storeNode(0,o.pos,o.pos,4,!0),o.shiftContext(t[i],this.pos),o.reducePos=this.pos,o.score-=200,s.push(o)}return s}forceReduce(){let{parser:e}=this.p,t=e.stateSlot(this.state,5);if((t&65536)==0)return!1;if(!e.validAction(this.state,t)){let s=t>>19,i=t&65535,r=this.stack.length-s*3;if(r<0||e.getGoto(this.stack[r],i,!1)<0){let o=this.findForcedReduction();if(o==null)return!1;t=o}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(t),!0}findForcedReduction(){let{parser:e}=this.p,t=[],s=(i,r)=>{if(!t.includes(i))return t.push(i),e.allActions(i,o=>{if(!(o&393216))if(o&65536){let c=(o>>19)-r;if(c>1){let u=o&65535,f=this.stack.length-c*3;if(f>=0&&e.getGoto(this.stack[f],u,!1)>=0)return c<<19|65536|u}}else{let c=s(o,r+1);if(c!=null)return c}})};return s(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 t=0;t<this.stack.length;t+=3)if(this.stack[t]!=e.stack[t])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(e){return this.p.parser.dialect.flags[e]}shiftContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,e,this,this.p.stream.reset(t)))}reduceContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,e,this,this.p.stream.reset(t)))}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 t=new Tx(this.curContext.tracker,e);t.hash!=this.curContext.hash&&this.emitContext(),this.curContext=t}}setLookAhead(e){e>this.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class Tx{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class wE{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,s=e>>19;s==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(s-1)*3;let i=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=i}}class ju{constructor(e,t,s){this.stack=e,this.pos=t,this.index=s,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new ju(e,t,t-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 ju(this.stack,this.pos,this.index)}}function vo(n,e=Uint16Array){if(typeof n!="string")return n;let t=null;for(let s=0,i=0;s<n.length;){let r=0;for(;;){let o=n.charCodeAt(s++),c=!1;if(o==126){r=65535;break}o>=92&&o--,o>=34&&o--;let u=o-32;if(u>=46&&(u-=46,c=!0),r+=u,c)break;r*=46}t?t[i++]=r:t=new e(r)}return t}class tu{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const Px=new tu;class kE{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=Px,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let s=this.range,i=this.rangeIndex,r=this.pos+e;for(;r<s.from;){if(!i)return null;let o=this.ranges[--i];r-=s.from-o.to,s=o}for(;t<0?r>s.to:r>=s.to;){if(i==this.ranges.length-1)return null;let o=this.ranges[++i];r+=o.from-s.to,s=o}return r}clipPos(e){if(e>=this.range.from&&e<this.range.to)return e;for(let t of this.ranges)if(t.to>e)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,s,i;if(t>=0&&t<this.chunk.length)s=this.pos+e,i=this.chunk.charCodeAt(t);else{let r=this.resolveOffset(e,1);if(r==null)return-1;if(s=r,s>=this.chunk2Pos&&s<this.chunk2Pos+this.chunk2.length)i=this.chunk2.charCodeAt(s-this.chunk2Pos);else{let o=this.rangeIndex,c=this.range;for(;c.to<=s;)c=this.ranges[++o];this.chunk2=this.input.chunk(this.chunk2Pos=s),s+this.chunk2.length>c.to&&(this.chunk2=this.chunk2.slice(0,c.to-s)),i=this.chunk2.charCodeAt(0)}}return s>=this.token.lookAhead&&(this.token.lookAhead=s+1),i}acceptToken(e,t=0){let s=t?this.resolveOffset(t,-1):this.pos;if(s==null||s<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=e,this.token.end=s}acceptTokenTo(e,t){this.token.value=e,this.token.end=t}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:e,chunkPos:t}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=e,this.chunk2Pos=t,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let e=this.input.chunk(this.pos),t=this.pos+e.length;this.chunk=t>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,t){if(t?(this.token=t,t.start=e,t.lookAhead=e+1,t.value=t.extended=-1):this.token=Px,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,t){if(e>=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.chunk2Pos&&t<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,t-this.chunk2Pos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let s="";for(let i of this.ranges){if(i.from>=t)break;i.to>e&&(s+=this.input.read(Math.max(i.from,e),Math.min(i.to,t)))}return s}}class rl{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:s}=t.p;RS(this.data,e,t,this.id,s.data,s.tokenPrecTable)}}rl.prototype.contextual=rl.prototype.fallback=rl.prototype.extend=!1;class $p{constructor(e,t,s){this.precTable=t,this.elseToken=s,this.data=typeof e=="string"?vo(e):e}token(e,t){let s=e.pos,i=0;for(;;){let r=e.next<0,o=e.resolveOffset(1,1);if(RS(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(r||i++,o==null)break;e.reset(o,e.token)}i&&(e.reset(s,e.token),e.acceptToken(this.elseToken,i))}}$p.prototype.contextual=rl.prototype.fallback=rl.prototype.extend=!1;class aa{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function RS(n,e,t,s,i,r){let o=0,c=1<<s,{dialect:u}=t.p.parser;e:for(;(c&n[o])!=0;){let f=n[o+1];for(let v=o+3;v<f;v+=2)if((n[v+1]&c)>0){let w=n[v];if(u.allows(w)&&(e.token.value==-1||e.token.value==w||SE(w,e.token.value,i,r))){e.acceptToken(w);break}}let p=e.next,g=0,O=n[o+2];if(e.next<0&&O>g&&n[f+O*3-3]==65535){o=n[f+O*3-1];continue e}for(;g<O;){let v=g+O>>1,w=f+v+(v<<1),k=n[w],S=n[w+1]||65536;if(p<k)O=v;else if(p>=S)g=v+1;else{o=n[w+2],e.advance();continue e}}break}}function jx(n,e,t){for(let s=e,i;(i=n[s])!=65535;s++)if(i==t)return s-e;return-1}function SE(n,e,t,s){let i=jx(t,s,e);return i<0||jx(t,s,n)<i}const Qn=typeof process<"u"&&Cx&&/\bparse\b/.test(Cx.LOG);let wf=null;function Qx(n,e,t){let s=n.cursor(jt.IncludeAnonymous);for(s.moveTo(e);;)if(!(t<0?s.childBefore(e):s.childAfter(e)))for(;;){if((t<0?s.to<e:s.from>e)&&!s.type.isError)return t<0?Math.max(0,Math.min(s.to-1,e-25)):Math.min(n.length,Math.max(s.from+1,e+25));if(t<0?s.prevSibling():s.nextSibling())break;if(!s.parent())return t<0?0:n.length}}class bE{constructor(e,t){this.fragments=e,this.nodeSet=t,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?Qx(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?Qx(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 t=this.trees.length-1;if(t<0)return this.nextFragment(),null;let s=this.trees[t],i=this.index[t];if(i==s.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let r=s.children[i],o=this.start[t]+s.positions[i];if(o>e)return this.nextStart=o,null;if(r instanceof _t){if(o==e){if(o<this.safeFrom)return null;let c=o+r.length;if(c<=this.safeTo){let u=r.prop(Le.lookAhead);if(!u||c+u<this.fragment.to)return r}}this.index[t]++,o+r.length>=Math.max(this.safeFrom,e)&&(this.trees.push(r),this.start.push(o),this.index.push(0))}else this.index[t]++,this.nextStart=o+r.length}}}class _E{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(s=>new tu)}getActions(e){let t=0,s=null,{parser:i}=e.p,{tokenizers:r}=i,o=i.stateSlot(e.state,3),c=e.curContext?e.curContext.hash:0,u=0;for(let f=0;f<r.length;f++){if((1<<f&o)==0)continue;let p=r[f],g=this.tokens[f];if(!(s&&!p.fallback)&&((p.contextual||g.start!=e.pos||g.mask!=o||g.context!=c)&&(this.updateCachedToken(g,p,e),g.mask=o,g.context=c),g.lookAhead>g.end+25&&(u=Math.max(g.lookAhead,u)),g.value!=0)){let O=t;if(g.extended>-1&&(t=this.addActions(e,g.extended,g.end,t)),t=this.addActions(e,g.value,g.end,t),!p.extend&&(s=g,t>O))break}}for(;this.actions.length>t;)this.actions.pop();return u&&e.setLookAhead(u),!s&&e.pos==this.stream.end&&(s=new tu,s.value=e.p.parser.eofTerm,s.start=s.end=e.pos,t=this.addActions(e,s.value,s.end,t)),this.mainToken=s,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new tu,{pos:s,p:i}=e;return t.start=s,t.end=Math.min(s+1,i.stream.end),t.value=s==i.stream.end?i.parser.eofTerm:0,t}updateCachedToken(e,t,s){let i=this.stream.clipPos(s.pos);if(t.token(this.stream.reset(i,e),s),e.value>-1){let{parser:r}=s.p;for(let o=0;o<r.specialized.length;o++)if(r.specialized[o]==e.value){let c=r.specializers[o](this.stream.read(e.start,e.end),s);if(c>=0&&s.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(i+1)}putAction(e,t,s,i){for(let r=0;r<i;r+=3)if(this.actions[r]==e)return i;return this.actions[i++]=e,this.actions[i++]=t,this.actions[i++]=s,i}addActions(e,t,s,i){let{state:r}=e,{parser:o}=e.p,{data:c}=o;for(let u=0;u<2;u++)for(let f=o.stateSlot(r,u?2:1);;f+=3){if(c[f]==65535)if(c[f+1]==1)f=Bs(c,f+2);else{i==0&&c[f+1]==2&&(i=this.putAction(Bs(c,f+2),t,s,i));break}c[f]==t&&(i=this.putAction(Bs(c,f+1),t,s,i))}return i}}class $E{constructor(e,t,s,i){this.parser=e,this.input=t,this.ranges=i,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 kE(t,i),this.tokens=new _E(e,this.stream),this.topTerm=e.top[1];let{from:r}=i[0];this.stacks=[Pu.start(this,e.top[0],r)],this.fragments=s.length&&this.stream.end-r>e.bufferLength*4?new bE(s,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,s=this.stacks=[],i,r;if(this.bigReductionCount>300&&e.length==1){let[o]=e;for(;o.forceReduce()&&o.stack.length&&o.stack[o.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let o=0;o<e.length;o++){let c=e[o];for(;;){if(this.tokens.mainToken=null,c.pos>t)s.push(c);else{if(this.advanceStack(c,s,e))continue;{i||(i=[],r=[]),i.push(c);let u=this.tokens.getMainToken(c);r.push(u.value,u.end)}}break}}if(!s.length){let o=i&&PE(i);if(o)return Qn&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw Qn&&i&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+t);this.recovering||(this.recovering=5)}if(this.recovering&&i){let o=this.stoppedAt!=null&&i[0].pos>this.stoppedAt?i[0]:this.runRecovery(i,r,s);if(o)return Qn&&console.log("Force-finish "+this.stackID(o)),this.stackToTree(o.forceAll())}if(this.recovering){let o=this.recovering==1?1:this.recovering*3;if(s.length>o)for(s.sort((c,u)=>u.score-c.score);s.length>o;)s.pop();s.some(c=>c.reducePos>t)&&this.recovering--}else if(s.length>1){e:for(let o=0;o<s.length-1;o++){let c=s[o];for(let u=o+1;u<s.length;u++){let f=s[u];if(c.sameState(f)||c.buffer.length>500&&f.buffer.length>500)if((c.score-f.score||c.buffer.length-f.buffer.length)>0)s.splice(u--,1);else{s.splice(o--,1);continue e}}}s.length>12&&s.splice(12,s.length-12)}this.minStackPos=s[0].pos;for(let o=1;o<s.length;o++)s[o].pos<this.minStackPos&&(this.minStackPos=s[o].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,t,s){let i=e.pos,{parser:r}=this,o=Qn?this.stackID(e)+" -> ":"";if(this.stoppedAt!=null&&i>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let f=e.curContext&&e.curContext.tracker.strict,p=f?e.curContext.hash:0;for(let g=this.fragments.nodeAt(i);g;){let O=this.parser.nodeSet.types[g.type.id]==g.type?r.getGoto(e.state,g.type.id):-1;if(O>-1&&g.length&&(!f||(g.prop(Le.contextHash)||0)==p))return e.useNode(g,O),Qn&&console.log(o+this.stackID(e)+` (via reuse of ${r.getName(g.type.id)})`),!0;if(!(g instanceof _t)||g.children.length==0||g.positions[0]>0)break;let v=g.children[0];if(v instanceof _t&&g.positions[0]==0)g=v;else break}}let c=r.stateSlot(e.state,4);if(c>0)return e.reduce(c),Qn&&console.log(o+this.stackID(e)+` (via always-reduce ${r.getName(c&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let u=this.tokens.getActions(e);for(let f=0;f<u.length;){let p=u[f++],g=u[f++],O=u[f++],v=f==u.length||!s,w=v?e:e.split(),k=this.tokens.mainToken;if(w.apply(p,g,k?k.start:w.pos,O),Qn&&console.log(o+this.stackID(w)+` (via ${(p&65536)==0?"shift":`reduce of ${r.getName(p&65535)}`} for ${r.getName(g)} @ ${i}${w==e?"":", split"})`),v)return!0;w.pos>i?t.push(w):s.push(w)}return!1}advanceFully(e,t){let s=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>s)return Nx(e,t),!0}}runRecovery(e,t,s){let i=null,r=!1;for(let o=0;o<e.length;o++){let c=e[o],u=t[o<<1],f=t[(o<<1)+1],p=Qn?this.stackID(c)+" -> ":"";if(c.deadEnd&&(r||(r=!0,c.restart(),Qn&&console.log(p+this.stackID(c)+" (restarted)"),this.advanceFully(c,s))))continue;let g=c.split(),O=p;for(let v=0;g.forceReduce()&&v<10&&(Qn&&console.log(O+this.stackID(g)+" (via force-reduce)"),!this.advanceFully(g,s));v++)Qn&&(O=this.stackID(g)+" -> ");for(let v of c.recoverByInsert(u))Qn&&console.log(p+this.stackID(v)+" (via recover-insert)"),this.advanceFully(v,s);this.stream.end>c.pos?(f==c.pos&&(f++,u=0),c.recoverByDelete(u,f),Qn&&console.log(p+this.stackID(c)+` (via recover-delete ${this.parser.getName(u)})`),Nx(c,s)):(!i||i.score<c.score)&&(i=c)}return i}stackToTree(e){return e.close(),_t.build({buffer:ju.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 t=(wf||(wf=new WeakMap)).get(e);return t||wf.set(e,t=String.fromCodePoint(this.nextStackID++)),t+e}}function Nx(n,e){for(let t=0;t<e.length;t++){let s=e[t];if(s.pos==n.pos&&s.sameState(n)){e[t].score<n.score&&(e[t]=n);return}}e.push(n)}class CE{constructor(e,t,s){this.source=e,this.flags=t,this.disabled=s}allows(e){return!this.disabled||this.disabled[e]==0}}const kf=n=>n;class TE{constructor(e){this.start=e.start,this.shift=e.shift||kf,this.reduce=e.reduce||kf,this.reuse=e.reuse||kf,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class Qu extends ak{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let c=0;c<e.repeatNodeCount;c++)t.push("");let s=Object.keys(e.topRules).map(c=>e.topRules[c][1]),i=[];for(let c=0;c<t.length;c++)i.push([]);function r(c,u,f){i[c].push([u,u.deserialize(String(f))])}if(e.nodeProps)for(let c of e.nodeProps){let u=c[0];typeof u=="string"&&(u=Le[u]);for(let f=1;f<c.length;){let p=c[f++];if(p>=0)r(p,u,c[f++]);else{let g=c[f+-p];for(let O=-p;O>0;O--)r(c[f++],u,g);f++}}}this.nodeSet=new em(t.map((c,u)=>_n.define({name:u>=this.minRepeatTerm?void 0:c,id:u,props:i[u],top:s.indexOf(u)>-1,error:u==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(u)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=ik;let o=vo(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(Ex),this.states=vo(e.states,Uint32Array),this.data=vo(e.stateData),this.goto=vo(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(c=>typeof c=="number"?new rl(o,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,t,s){let i=new $E(this,e,t,s);for(let r of this.wrappers)i=r(i,e,t,s);return i}getGoto(e,t,s=!1){let i=this.goto;if(t>=i[0])return-1;for(let r=i[t+1];;){let o=i[r++],c=o&1,u=i[r++];if(c&&s)return u;for(let f=r+(o>>1);r<f;r++)if(i[r]==e)return u;if(c)return-1}}hasAction(e,t){let s=this.data;for(let i=0;i<2;i++)for(let r=this.stateSlot(e,i?2:1),o;;r+=3){if((o=s[r])==65535)if(s[r+1]==1)o=s[r=Bs(s,r+2)];else{if(s[r+1]==2)return Bs(s,r+2);break}if(o==t||o==0)return Bs(s,r+1)}return 0}stateSlot(e,t){return this.states[e*6+t]}stateFlag(e,t){return(this.stateSlot(e,0)&t)>0}validAction(e,t){return!!this.allActions(e,s=>s==t?!0:null)}allActions(e,t){let s=this.stateSlot(e,4),i=s?t(s):void 0;for(let r=this.stateSlot(e,1);i==null;r+=3){if(this.data[r]==65535)if(this.data[r+1]==1)r=Bs(this.data,r+2);else break;i=t(Bs(this.data,r+1))}return i}nextStates(e){let t=[];for(let s=this.stateSlot(e,1);;s+=3){if(this.data[s]==65535)if(this.data[s+1]==1)s=Bs(this.data,s+2);else break;if((this.data[s+2]&1)==0){let i=this.data[s+1];t.some((r,o)=>o&1&&r==i)||t.push(this.data[s],i)}}return t}configure(e){let t=Object.assign(Object.create(Qu.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let s=this.topRules[e.top];if(!s)throw new RangeError(`Invalid top rule name ${e.top}`);t.top=s}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(s=>{let i=e.tokenizers.find(r=>r.from==s);return i?i.to:s})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((s,i)=>{let r=e.specializers.find(c=>c.from==s.external);if(!r)return s;let o=Object.assign(Object.assign({},s),{external:r.to});return t.specializers[i]=Ex(o),o})),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),e.bufferLength!=null&&(t.bufferLength=e.bufferLength),t}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 t=this.dynamicPrecedences;return t==null?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),s=t.map(()=>!1);if(e)for(let r of e.split(" ")){let o=t.indexOf(r);o>=0&&(s[o]=!0)}let i=null;for(let r=0;r<t.length;r++)if(!s[r])for(let o=this.dialects[t[r]],c;(c=this.data[o++])!=65535;)(i||(i=new Uint8Array(this.maxTerm+1)))[c]=1;return new CE(e,s,i)}static deserialize(e){return new Qu(e)}}function Bs(n,e){return n[e]|n[e+1]<<16}function PE(n){let e=null;for(let t of n){let s=t.p.stoppedAt;(t.pos==t.p.stream.end||s!=null&&t.pos>s)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.score<t.score)&&(e=t)}return e}function Ex(n){if(n.external){let e=n.extend?1:0;return(t,s)=>n.external(t,s)<<1|e}return n.get}const jE=316,QE=317,Ax=1,NE=2,EE=3,AE=4,ME=318,RE=320,DE=321,IE=5,LE=6,ZE=0,Cp=[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],DS=125,zE=59,Tp=47,FE=42,BE=43,XE=45,VE=60,WE=44,UE=63,YE=46,qE=91,GE=new TE({start:!1,shift(n,e){return e==IE||e==LE||e==RE?n:e==DE},strict:!1}),HE=new aa((n,e)=>{let{next:t}=n;(t==DS||t==-1||e.context)&&n.acceptToken(ME)},{contextual:!0,fallback:!0}),KE=new aa((n,e)=>{let{next:t}=n,s;Cp.indexOf(t)>-1||t==Tp&&((s=n.peek(1))==Tp||s==FE)||t!=DS&&t!=zE&&t!=-1&&!e.context&&n.acceptToken(jE)},{contextual:!0}),JE=new aa((n,e)=>{n.next==qE&&!e.context&&n.acceptToken(QE)},{contextual:!0}),eA=new aa((n,e)=>{let{next:t}=n;if(t==BE||t==XE){if(n.advance(),t==n.next){n.advance();let s=!e.context&&e.canShift(Ax);n.acceptToken(s?Ax:NE)}}else t==UE&&n.peek(1)==YE&&(n.advance(),n.advance(),(n.next<48||n.next>57)&&n.acceptToken(EE))},{contextual:!0});function Sf(n,e){return n>=65&&n<=90||n>=97&&n<=122||n==95||n>=192||!e&&n>=48&&n<=57}const tA=new aa((n,e)=>{if(n.next!=VE||!e.dialectEnabled(ZE)||(n.advance(),n.next==Tp))return;let t=0;for(;Cp.indexOf(n.next)>-1;)n.advance(),t++;if(Sf(n.next,!0)){for(n.advance(),t++;Sf(n.next,!1);)n.advance(),t++;for(;Cp.indexOf(n.next)>-1;)n.advance(),t++;if(n.next==WE)return;for(let s=0;;s++){if(s==7){if(!Sf(n.next,!0))return;break}if(n.next!="extends".charCodeAt(s))break;n.advance(),t++}}n.acceptToken(AE,-t)}),nA=ck({"get set async static":Z.modifier,"for while do if else switch try catch finally return throw break continue default case defer":Z.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":Z.operatorKeyword,"let var const using function class extends":Z.definitionKeyword,"import export from":Z.moduleKeyword,"with debugger new":Z.keyword,TemplateString:Z.special(Z.string),super:Z.atom,BooleanLiteral:Z.bool,this:Z.self,null:Z.null,Star:Z.modifier,VariableName:Z.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":Z.function(Z.variableName),VariableDefinition:Z.definition(Z.variableName),Label:Z.labelName,PropertyName:Z.propertyName,PrivatePropertyName:Z.special(Z.propertyName),"CallExpression/MemberExpression/PropertyName":Z.function(Z.propertyName),"FunctionDeclaration/VariableDefinition":Z.function(Z.definition(Z.variableName)),"ClassDeclaration/VariableDefinition":Z.definition(Z.className),"NewExpression/VariableName":Z.className,PropertyDefinition:Z.definition(Z.propertyName),PrivatePropertyDefinition:Z.definition(Z.special(Z.propertyName)),UpdateOp:Z.updateOperator,"LineComment Hashbang":Z.lineComment,BlockComment:Z.blockComment,Number:Z.number,String:Z.string,Escape:Z.escape,ArithOp:Z.arithmeticOperator,LogicOp:Z.logicOperator,BitOp:Z.bitwiseOperator,CompareOp:Z.compareOperator,RegExp:Z.regexp,Equals:Z.definitionOperator,Arrow:Z.function(Z.punctuation),": Spread":Z.punctuation,"( )":Z.paren,"[ ]":Z.squareBracket,"{ }":Z.brace,"InterpolationStart InterpolationEnd":Z.special(Z.brace),".":Z.derefOperator,", ;":Z.separator,"@":Z.meta,TypeName:Z.typeName,TypeDefinition:Z.definition(Z.typeName),"type enum interface implements namespace module declare":Z.definitionKeyword,"abstract global Privacy readonly override":Z.modifier,"is keyof unique infer asserts":Z.operatorKeyword,JSXAttributeValue:Z.attributeValue,JSXText:Z.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":Z.angleBracket,"JSXIdentifier JSXNameSpacedName":Z.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":Z.attributeName,"JSXBuiltin/JSXIdentifier":Z.standard(Z.tagName)}),sA={__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},iA={__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},rA={__proto__:null,"<":193},lA=Qu.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&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%hOTX'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%WOPP~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:GE,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:[nA],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:[KE,JE,eA,tA,2,3,4,5,6,7,8,9,10,11,12,13,14,HE,new $p("$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 $p("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:n=>sA[n]||-1},{term:343,get:n=>iA[n]||-1},{term:95,get:n=>rA[n]||-1}],tokenPrec:15201}),IS=[yn("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),yn("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),yn("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),yn("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),yn("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),yn(`try {
|
|
20
|
+
\${}
|
|
21
|
+
} catch (\${error}) {
|
|
22
|
+
\${}
|
|
23
|
+
}`,{label:"try",detail:"/ catch block",type:"keyword"}),yn("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),yn(`if (\${}) {
|
|
24
|
+
\${}
|
|
25
|
+
} else {
|
|
26
|
+
\${}
|
|
27
|
+
}`,{label:"if",detail:"/ else block",type:"keyword"}),yn(`class \${name} {
|
|
28
|
+
constructor(\${params}) {
|
|
29
|
+
\${}
|
|
30
|
+
}
|
|
31
|
+
}`,{label:"class",detail:"definition",type:"keyword"}),yn('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),yn('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],oA=IS.concat([yn("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),yn("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),yn("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),Mx=new iP,LS=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function uo(n){return(e,t)=>{let s=e.node.getChild("VariableDefinition");return s&&t(s,n),!0}}const aA=["FunctionDeclaration"],cA={FunctionDeclaration:uo("function"),ClassDeclaration:uo("class"),ClassExpression:()=>!0,EnumDeclaration:uo("constant"),TypeAliasDeclaration:uo("type"),NamespaceDeclaration:uo("namespace"),VariableDefinition(n,e){n.matchContext(aA)||e(n,"variable")},TypeDefinition(n,e){e(n,"type")},__proto__:null};function ZS(n,e){let t=Mx.get(e);if(t)return t;let s=[],i=!0;function r(o,c){let u=n.sliceString(o.from,o.to);s.push({label:u,type:c})}return e.cursor(jt.IncludeAnonymous).iterate(o=>{if(i)i=!1;else if(o.name){let c=cA[o.name];if(c&&c(o,r)||LS.has(o.name))return!1}else if(o.to-o.from>8192){for(let c of ZS(n,o.node))s.push(c);return!1}}),Mx.set(e,s),s}const Rx=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,zS=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function uA(n){let e=Nt(n.state).resolveInner(n.pos,-1);if(zS.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&Rx.test(n.state.sliceDoc(e.from,e.to));if(!t&&!n.explicit)return null;let s=[];for(let i=e;i;i=i.parent)LS.has(i.name)&&(s=s.concat(ZS(n.state.doc,i)));return{options:s,from:t?e.from:n.pos,validFor:Rx}}const rr=gu.define({name:"javascript",parser:lA.configure({props:[pk.add({IfStatement:cf({except:/^\s*({|else\b)/}),TryStatement:cf({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:_P,SwitchBody:n=>{let e=n.textAfter,t=/^\s*\}/.test(e),s=/^\s*(case|default)\b/.test(e);return n.baseIndent+(t?0:s?1:2)*n.unit},Block:bP({closing:"}"}),ArrowFunction:n=>n.baseIndent+n.unit,"TemplateString BlockComment":()=>null,"Statement Property":cf({except:/^\s*{/}),JSXElement(n){let e=/^\s*<\//.test(n.textAfter);return n.lineIndent(n.node.from)+(e?0:n.unit)},JSXEscape(n){let e=/\s*\}/.test(n.textAfter);return n.lineIndent(n.node.from)+(e?0:n.unit)},"JSXOpenTag JSXSelfClosingTag"(n){return n.column(n.node.from)+n.unit}}),Ok.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":PP,BlockComment(n){return{from:n.from+2,to:n.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),FS={test:n=>/^JSX/.test(n.name),facet:hk({commentTokens:{block:{open:"{/*",close:"*/}"}}})},dA=rr.configure({dialect:"ts"},"typescript"),hA=rr.configure({dialect:"jsx",props:[im.add(n=>n.isTop?[FS]:void 0)]}),fA=rr.configure({dialect:"jsx ts",props:[im.add(n=>n.isTop?[FS]:void 0)]},"typescript");let BS=n=>({label:n,type:"keyword"});const XS="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(BS),pA=XS.concat(["declare","implements","private","protected","public"].map(BS));function mA(n={}){let e=n.jsx?n.typescript?fA:hA:n.typescript?dA:rr,t=n.typescript?oA.concat(pA):IS.concat(XS);return new gP(e,[rr.data.of({autocomplete:UQ(zS,vS(t))}),rr.data.of({autocomplete:uA}),n.jsx?yA:[]])}function gA(n){for(;;){if(n.name=="JSXOpenTag"||n.name=="JSXSelfClosingTag"||n.name=="JSXFragmentTag")return n;if(n.name=="JSXEscape"||!n.parent)return null;n=n.parent}}function Dx(n,e,t=n.length){for(let s=e?.firstChild;s;s=s.nextSibling)if(s.name=="JSXIdentifier"||s.name=="JSXBuiltin"||s.name=="JSXNamespacedName"||s.name=="JSXMemberExpression")return n.sliceString(s.from,Math.min(s.to,t));return""}const OA=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),yA=ye.inputHandler.of((n,e,t,s,i)=>{if((OA?n.composing:n.compositionStarted)||n.state.readOnly||e!=t||s!=">"&&s!="/"||!rr.isActiveAt(n.state,e,-1))return!1;let r=i(),{state:o}=r,c=o.changeByRange(u=>{var f;let{head:p}=u,g=Nt(o).resolveInner(p-1,-1),O;if(g.name=="JSXStartTag"&&(g=g.parent),!(o.doc.sliceString(p-1,p)!=s||g.name=="JSXAttributeValue"&&g.to>p)){if(s==">"&&g.name=="JSXFragmentTag")return{range:u,changes:{from:p,insert:"</>"}};if(s=="/"&&g.name=="JSXStartCloseTag"){let v=g.parent,w=v.parent;if(w&&v.from==p-2&&((O=Dx(o.doc,w.firstChild,p))||((f=w.firstChild)===null||f===void 0?void 0:f.name)=="JSXFragmentTag")){let k=`${O}>`;return{range:ie.cursor(p+k.length,-1),changes:{from:p,insert:k}}}}else if(s==">"){let v=gA(g);if(v&&v.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(o.doc.sliceString(p,p+2))&&(O=Dx(o.doc,v,p)))return{range:u,changes:{from:p,insert:`</${O}>`}}}}return{range:u}});return c.changes.empty?!1:(n.dispatch([r,o.update(c,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});function vA(){try{const n=__API_URL__;if(n&&typeof n=="string"&&n.length>0)return n}catch{}return typeof window<"u"?window.location.origin:""}async function Qt(n,e){const t=new URL("/graphql",vA()).toString(),s=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:n,variables:e})}),i=await s.json();if(!s.ok)throw new Error(`GraphQL HTTP ${s.status}`);if(i.errors&&i.errors.length>0)throw new Error(i.errors.map(r=>r.message).join(`
|
|
32
|
+
`));return i.data}const Ix=`
|
|
33
|
+
query TaskFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
34
|
+
task(id: $id) {
|
|
35
|
+
id
|
|
36
|
+
filePath
|
|
37
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
`,Lx=`
|
|
41
|
+
query ResourceFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
42
|
+
resource(id: $id) {
|
|
43
|
+
id
|
|
44
|
+
filePath
|
|
45
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
`,xA=`
|
|
49
|
+
query TaskCoverageDetails($id: ID!) {
|
|
50
|
+
task(id: $id) {
|
|
51
|
+
id
|
|
52
|
+
coverage {
|
|
53
|
+
percentage
|
|
54
|
+
totalStatements
|
|
55
|
+
coveredStatements
|
|
56
|
+
details
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
`,wA=`
|
|
61
|
+
query ResourceCoverageDetails($id: ID!) {
|
|
62
|
+
resource(id: $id) {
|
|
63
|
+
id
|
|
64
|
+
coverage {
|
|
65
|
+
percentage
|
|
66
|
+
totalStatements
|
|
67
|
+
coveredStatements
|
|
68
|
+
details
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
`,kA=`
|
|
73
|
+
query MiddlewareFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
74
|
+
middleware(id: $id) {
|
|
75
|
+
id
|
|
76
|
+
filePath
|
|
77
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
`,SA=`
|
|
81
|
+
query EventFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
82
|
+
event(id: $id) {
|
|
83
|
+
id
|
|
84
|
+
filePath
|
|
85
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
`,bA=`
|
|
89
|
+
query HookFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
90
|
+
hook(id: $id) {
|
|
91
|
+
id
|
|
92
|
+
filePath
|
|
93
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
`,_A=`
|
|
97
|
+
query TagFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
98
|
+
tag(id: $id) {
|
|
99
|
+
id
|
|
100
|
+
filePath
|
|
101
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
`,$A=`
|
|
105
|
+
query ErrorFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
106
|
+
error(id: $id) {
|
|
107
|
+
id
|
|
108
|
+
filePath
|
|
109
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
`,CA=`
|
|
113
|
+
query AsyncContextFile($id: ID!, $startLine: Int, $endLine: Int) {
|
|
114
|
+
asyncContext(id: $id) {
|
|
115
|
+
id
|
|
116
|
+
filePath
|
|
117
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
`,Fc=n=>Math.ceil((n||"").length/4),VS=(n,e)=>{const t=[],s=n;if(/@docs\.runner\b/.test(n)&&e.runnerAiMd&&t.push(`
|
|
121
|
+
|
|
122
|
+
<runner_docs>
|
|
123
|
+
${e.runnerAiMd}
|
|
124
|
+
</runner_docs>`),/@docs\.schema\b/.test(n)&&e.graphqlSdl&&t.push(`
|
|
125
|
+
|
|
126
|
+
<graphql_sdl>
|
|
127
|
+
${e.graphqlSdl}
|
|
128
|
+
</graphql_sdl>`),/@docs\.runnerDev\b/.test(n)&&e.runnerDevMd&&t.push(`
|
|
129
|
+
|
|
130
|
+
<runner_dev_docs>
|
|
131
|
+
${e.runnerDevMd}
|
|
132
|
+
</runner_dev_docs>`),/@docs\.projectOverview\b/.test(n)&&e.projectOverviewMd){const o=(e.projectOverviewMd||"").trim(),c=o.startsWith("#")?"project_overview":"project_ai_md";t.push(`
|
|
133
|
+
|
|
134
|
+
<${c}>
|
|
135
|
+
${o}
|
|
136
|
+
</${c}>`)}return t.length===0?{modelText:n,displayText:s}:{modelText:`${n.replace(/\s*@docs\.(runner|schema|projectOverview|runnerDev)\b/g,"")}${t.join("")}`,displayText:s}},WS=(n,e)=>{const t=[];if(e.runner&&n.runnerAiMd&&t.push(`<runner_docs>
|
|
137
|
+
${n.runnerAiMd}
|
|
138
|
+
</runner_docs>`),e.runnerDev&&n.runnerDevMd&&t.push(`<runner_dev_docs>
|
|
139
|
+
${n.runnerDevMd}
|
|
140
|
+
</runner_dev_docs>`),e.schema&&n.graphqlSdl&&t.push(`<graphql_sdl>
|
|
141
|
+
${n.graphqlSdl}
|
|
142
|
+
</graphql_sdl>`),e.projectOverview&&n.projectOverviewMd){const s=(n.projectOverviewMd||"").trim(),i=s.startsWith("#")?"project_overview":"project_ai_md";t.push(`<${i}>
|
|
143
|
+
${s}
|
|
144
|
+
</${i}>`)}return t.join(`
|
|
145
|
+
|
|
146
|
+
`)},nu=(n,e,t,s,i)=>{const r=[{role:"system",content:n}];r.push(...t);const o=WS(i,e),c=/<(runner_docs|runner_dev_docs|graphql_sdl|project_overview|project_ai_md)>/i.test(s||"");return o&&!c&&r.push({role:"system",content:o}),r.push({role:"user",content:s}),r},TA=n=>{const e=/\s*@docs\.(runnerDev|runner|schema|projectOverview|fullContext|clear)\b/g,t=[];(n||"").replace(e,i=>(t.push(i.trim()),i));const s={runner:!1,runnerDev:!1,schema:!1,projectOverview:!1};for(const i of t){if(i.endsWith("clear")){s.runner=!1,s.runnerDev=!1,s.schema=!1,s.projectOverview=!1;continue}i.endsWith("runner")&&(s.runner=!0),i.endsWith("runnerDev")&&(s.runnerDev=!0),i.endsWith("schema")&&(s.schema=!0),i.endsWith("projectOverview")&&(s.projectOverview=!0),i.endsWith("fullContext")&&(s.runner=!0,s.schema=!0,s.projectOverview=!0)}return s},To=(n,e,t,s,i)=>{const r=Fc(n),o=Fc((e||[]).join(`
|
|
147
|
+
|
|
148
|
+
`)),c=TA(t||""),u={runner:i.runner||c.runner,runnerDev:i.runnerDev||c.runnerDev,schema:i.schema||c.schema,projectOverview:i.projectOverview||c.projectOverview},f=WS(s,u),p=Fc(f),g=Fc(t||""),O=r+o+p+g;return{system:r,history:o,input:g+p,total:O}},PA=(n,e,t)=>{const s=n.split(`
|
|
149
|
+
`),i=e.split(`
|
|
150
|
+
`);let r=`--- a/${t}
|
|
151
|
+
+++ b/${t}
|
|
152
|
+
`;const o=Math.max(s.length,i.length);let c=0,u=[];for(let f=0;f<o;f++){const p=s[f],g=i[f];p===g?u.push(` ${p||""}`):(p!==void 0&&u.push(`-${p}`),g!==void 0&&u.push(`+${g}`))}return u.length>0&&(r+=`@@ -${c+1},${s.length} +${c+1},${i.length} @@
|
|
153
|
+
`,r+=u.join(`
|
|
154
|
+
`)),r},jA=n=>{const t=Date.now()-n,s=Math.floor(t/1e3),i=Math.floor(t/(1e3*60)),r=Math.floor(t/(1e3*60*60)),o=Math.floor(t/(1e3*60*60*24));return s<30?"now":s<60?`${s}s`:i<60?`${i}m`:r<24?`${r}h`:o<7?`${o}d`:`${Math.floor(o/7)}w`},km=async n=>{try{return await navigator.clipboard.writeText(n),!0}catch(e){return console.warn("Failed to copy to clipboard:",e),!1}},QA=n=>{const e=/\[([^\]]+)\]/g,t=[];let s=0,i;for(;(i=e.exec(n))!==null;)i.index>s&&t.push({type:"text",content:n.slice(s,i.index)}),t.push({type:"file",content:i[1]}),s=i.index+i[0].length;return s<n.length&&t.push({type:"text",content:n.slice(s)}),t},US=n=>{try{localStorage.setItem("chat-sidebar-history",JSON.stringify({messages:n,timestamp:Date.now()}))}catch(e){console.warn("Failed to save chat history:",e)}},YS=()=>{try{const n=localStorage.getItem("chat-sidebar-history");if(n)return JSON.parse(n).messages||[]}catch(n){console.warn("Failed to load chat history:",n)}return null},qS=n=>{try{localStorage.setItem("chat-sidebar-settings",JSON.stringify(n))}catch(e){console.warn("Failed to save chat settings:",e)}},Yu=()=>{try{const n=localStorage.getItem("chat-sidebar-settings");if(n){const e=JSON.parse(n);return{openaiApiKey:e.openaiApiKey??null,model:e.model??"gpt-5-mini",stream:e.stream??!0,responseMode:e.responseMode==="json"?"json":"text",baseUrl:e.baseUrl??"https://api.openai.com"}}}catch(n){console.warn("Failed to load chat settings:",n)}return null},GS=n=>{try{if(!n||!n.include){localStorage.removeItem("chat-sidebar-context");return}localStorage.setItem("chat-sidebar-context",JSON.stringify({include:n.include,timestamp:Date.now()}))}catch(e){console.warn("Failed to save chat context:",e)}},HS=()=>{try{const n=localStorage.getItem("chat-sidebar-context");if(n)return{include:JSON.parse(n)?.include||{}}}catch(n){console.warn("Failed to load chat context:",n)}return null},NA=()=>{try{localStorage.removeItem("chat-sidebar-context")}catch(n){console.warn("Failed to clear chat context:",n)}},EA=n=>n>=100?"#66bb6a":n>=80?"#ffa726":"#ef5350",AA=n=>n>=100?{label:"excellent",icon:"✓"}:n>=80?{label:"good",icon:"○"}:n>=50?{label:"partial",icon:"◐"}:{label:"low",icon:"✗"},MA=({coverage:n,filePath:e,compact:t=!1})=>{if(!n)return d.jsxs("div",{className:"coverage-visualization coverage-visualization--no-data",children:[d.jsx("div",{className:"coverage-visualization__no-data-icon",children:"📊"}),d.jsx("span",{className:"coverage-visualization__label",children:"No coverage data available"})]});const s=n.percentage??0,i=n.totalStatements??0,r=n.coveredStatements??0,o=n.lines||[],c=EA(s),u=AA(s),f=o.filter(p=>p.covered).length;return t?d.jsxs("div",{className:"coverage-visualization coverage-visualization--compact",children:[d.jsxs("div",{className:"coverage-visualization__percentage-compact",children:[d.jsx("span",{children:u.icon}),d.jsxs("span",{style:{color:c},children:[s,"%"]})]}),d.jsx("div",{className:"coverage-visualization__bar-container",children:d.jsx("div",{className:"coverage-visualization__bar-backdrop",children:d.jsx("div",{className:"coverage-visualization__bar",style:{width:`${s}%`,backgroundColor:c}})})}),d.jsxs("span",{className:"coverage-visualization__statements-compact",children:[f,"/",o.length," lines"]})]}):d.jsxs("div",{className:"coverage-visualization",children:[d.jsxs("div",{className:"coverage-visualization__header",children:[d.jsxs("h4",{className:"coverage-visualization__title",children:[d.jsx("span",{className:"coverage-visualization__title-icon",children:u.icon}),"Code Coverage"]}),e&&d.jsx("div",{className:"coverage-visualization__file-path",children:e})]}),d.jsxs("div",{className:"coverage-visualization__main",children:[d.jsx("div",{className:"coverage-visualization__percentage-section",children:d.jsxs("div",{className:"coverage-visualization__percentage-circle",style:{borderColor:c,color:c,backgroundColor:`${c}15`},children:[d.jsxs("span",{className:"coverage-visualization__percentage-text",children:[s,"%"]}),d.jsx("div",{className:"coverage-visualization__percentage-label",children:u.label.toUpperCase()})]})}),d.jsxs("div",{className:"coverage-visualization__details",children:[d.jsxs("div",{className:"coverage-visualization__metrics-grid",children:[d.jsxs("div",{className:"coverage-visualization__metric coverage-visualization__metric--primary",children:[d.jsxs("div",{className:"coverage-visualization__metric-header",children:[d.jsx("span",{className:"coverage-visualization__metric-icon",children:"✓"}),d.jsx("span",{className:"coverage-visualization__metric-label",children:"Covered"})]}),d.jsx("span",{className:"coverage-visualization__metric-value",children:r})]}),d.jsxs("div",{className:"coverage-visualization__metric coverage-visualization__metric--danger",children:[d.jsxs("div",{className:"coverage-visualization__metric-header",children:[d.jsx("span",{className:"coverage-visualization__metric-icon",children:"✗"}),d.jsx("span",{className:"coverage-visualization__metric-label",children:"Missed"})]}),d.jsx("span",{className:"coverage-visualization__metric-value",children:i-r})]}),o.length>0&&d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"coverage-visualization__metric",children:[d.jsxs("div",{className:"coverage-visualization__metric-header",children:[d.jsx("span",{className:"coverage-visualization__metric-icon",children:"L"}),d.jsx("span",{className:"coverage-visualization__metric-label",children:"Lines"})]}),d.jsxs("span",{className:"coverage-visualization__metric-value",children:[f,"/",o.length]})]}),d.jsxs("div",{className:"coverage-visualization__metric",children:[d.jsxs("div",{className:"coverage-visualization__metric-header",children:[d.jsx("span",{className:"coverage-visualization__metric-icon",children:"T"}),d.jsx("span",{className:"coverage-visualization__metric-label",children:"Total"})]}),d.jsx("span",{className:"coverage-visualization__metric-value",children:i})]})]})]}),d.jsxs("div",{className:"coverage-visualization__progress-section",children:[d.jsx("div",{className:"coverage-visualization__progress-label",children:"Coverage Progress"}),d.jsxs("div",{className:"coverage-visualization__progress-bar",children:[d.jsx("div",{className:"coverage-visualization__progress-backdrop",children:d.jsx("div",{className:"coverage-visualization__progress-fill",style:{width:`${s}%`,backgroundColor:c}})}),d.jsxs("div",{className:"coverage-visualization__progress-percentage",children:[s,"%"]})]})]})]})]}),o.length>0&&d.jsxs("div",{className:"coverage-visualization__line-details",children:[d.jsxs("div",{className:"coverage-visualization__line-details-header",children:[d.jsx("span",{children:"Line Coverage"}),d.jsxs("span",{className:"coverage-visualization__line-summary",children:[f,"/",o.length," lines"]})]}),d.jsxs("div",{className:"coverage-visualization__lines-grid",children:[o.slice(0,20).map(p=>d.jsxs("div",{className:`coverage-visualization__line ${p.covered?"coverage-visualization__line--covered":"coverage-visualization__line--uncovered"}`,title:`Line ${p.line}: ${p.hits} hits`,children:[d.jsx("span",{className:"coverage-visualization__line-number",children:p.line}),d.jsx("span",{className:"coverage-visualization__line-status",children:p.covered?"✓":"✗"}),d.jsx("span",{className:"coverage-visualization__line-hits",children:p.hits})]},p.line)),o.length>20&&d.jsxs("div",{className:"coverage-visualization__lines-more",children:["+",o.length-20," more"]})]})]}),n.details&&d.jsxs("details",{className:"coverage-visualization__raw-details",children:[d.jsx("summary",{className:"coverage-visualization__raw-details-toggle",children:"Raw Data"}),d.jsx("div",{className:"coverage-visualization__raw-details-content",children:d.jsx("pre",{children:n.details})})]})]})};function RA(n){return[mt.fromClass(class{decorations;constructor(t){this.decorations=this.buildDecorations(t)}update(t){(t.doc.changed||t.viewportChanged)&&(this.decorations=this.buildDecorations(t.view))}buildDecorations(t){const s=[];return n.forEach(i=>{const r=i.line-1;if(r>=0&&r<t.state.doc.lines){const o=t.state.doc.line(r).from,c=t.state.doc.line(r).to,u=Pe.line({attributes:{class:i.covered?"cm-coverage-line-covered":"cm-coverage-line-uncovered",title:`Line ${i.line}: ${i.covered?"covered":"not covered"} (${i.hits} hits)`}});s.push(u.range(o,c))}}),Pe.set(s)}}),ye.theme({".cm-coverage-line-covered":{backgroundColor:"rgba(76, 175, 80, 0.15)",borderLeft:"3px solid #4caf50",position:"relative","&::before":{content:'"✓"',position:"absolute",left:"-20px",top:"2px",color:"#4caf50",fontSize:"12px",fontWeight:"bold"}},".cm-coverage-line-uncovered":{backgroundColor:"rgba(244, 67, 54, 0.15)",borderLeft:"3px solid #f44336",position:"relative","&::before":{content:'"✗"',position:"absolute",left:"-20px",top:"2px",color:"#f44336",fontSize:"12px",fontWeight:"bold"}},".cm-lineNumbers .cm-gutterElement":{paddingLeft:"25px"},".cm-coverage-gutter":{width:"20px",color:"#666",fontSize:"12px",fontWeight:"bold",textAlign:"center",cursor:"pointer","&:hover":{backgroundColor:"rgba(255, 255, 255, 0.1)"}}})]}const un=({title:n,subtitle:e,isOpen:t,onClose:s,code:i,enableEdit:r=!1,saveOnFile:o,coverageData:c,showCoverage:u=!1})=>{const[f,p]=B.useState(i??""),[g,O]=B.useState(i??""),[v,w]=B.useState(!1),[k,S]=B.useState(null),[$,b]=B.useState(!1),C=B.useRef({position:"",top:"",left:"",right:"",width:"",overflowY:""});B.useEffect(()=>{function X(H){H.key==="Escape"&&s()}if(!t)return;const F=window.scrollY||window.pageYOffset||0;return C.current={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,right:document.body.style.right,width:document.body.style.width,overflowY:document.body.style.overflowY},document.body.style.position="fixed",document.body.style.top=`-${F}px`,document.body.style.left="0",document.body.style.right="0",document.body.style.width="100%",document.body.style.overflowY="scroll",window.addEventListener("keydown",X),()=>{window.removeEventListener("keydown",X),document.body.style.position=C.current.position,document.body.style.top=C.current.top,document.body.style.left=C.current.left,document.body.style.right=C.current.right,document.body.style.width=C.current.width,document.body.style.overflowY=C.current.overflowY,window.scrollTo(0,F)}},[t,s]),B.useEffect(()=>{const X=i??"";p(X),O(X)},[i,t]);const T=r&&typeof o=="string"&&o.length>0,P=se.useMemo(()=>{const X=[mA({typescript:!0})];return u&&c?.lines&&X.push(RA(c.lines)),X},[u,c?.lines]),N=B.useCallback(async()=>{if(!(!T||!o)){w(!0),S(null);try{const F=await Qt(`
|
|
155
|
+
mutation EditFile($path: String!, $content: String!) {
|
|
156
|
+
editFile(path: $path, content: $content) {
|
|
157
|
+
success
|
|
158
|
+
error
|
|
159
|
+
path
|
|
160
|
+
resolvedPath
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
`,{path:o,content:f});if(!F.editFile?.success)throw new Error(F.editFile?.error||"Unknown error while saving");O(f)}catch(X){const F=X instanceof Error?X.message:String(X);S(F)}finally{w(!1)}}},[T,o,f]),A=B.useCallback(async()=>{await km(f||"")&&(b(!0),setTimeout(()=>b(!1),1500))},[f]);return t?iu.createPortal(d.jsx("div",{className:"code-modal__backdrop",onClick:s,children:d.jsxs("div",{className:"code-modal__dialog",onClick:X=>{X.stopPropagation()},children:[d.jsxs("div",{className:"code-modal__header",children:[d.jsxs("div",{className:"code-modal__titles",children:[d.jsx("h3",{className:"code-modal__title",children:n}),e&&d.jsx("div",{className:"code-modal__subtitle",children:e}),u&&c?.lines&&d.jsxs("div",{className:"code-modal__coverage-legend",children:[d.jsxs("div",{className:"legend-item legend--covered",children:["Covered (",c.lines.filter(X=>X.covered).length,")"]}),d.jsxs("div",{className:"legend-item legend--uncovered",children:["Uncovered (",c.lines.filter(X=>!X.covered).length,")"]})]})]}),d.jsxs("div",{className:"code-modal__header-right",children:[d.jsx("div",{className:"code-modal__esc-hint",children:"Press ESC to Close"}),T&&f!==g&&d.jsx("button",{className:"code-modal__btn code-modal__btn--glass-primary",onClick:N,disabled:v,children:v?"SAVING...":"SAVE"}),d.jsx("button",{className:"code-modal__close",onClick:s,children:"×"})]})]}),d.jsxs("div",{className:"code-modal__content",children:[u&&c&&d.jsx("div",{className:"code-modal__coverage-section",children:d.jsx(MA,{coverage:c,filePath:e,compact:!1})}),d.jsxs("div",{className:`code-modal__editor-wrap${u?" code-modal__editor-wrap--with-coverage":""}`,onMouseDown:X=>X.stopPropagation(),onClick:X=>X.stopPropagation(),onKeyDownCapture:X=>{const F=X.key;(X.metaKey||X.ctrlKey)&&(F==="s"||F==="S")&&(X.preventDefault(),T&&f!==g&&!v&&N())},children:[d.jsx("button",{className:`code-modal__copy-btn${$?" code-modal__copy-btn--copied":""}`,onClick:A,title:$?"Copied!":"Copy to clipboard","aria-label":$?"Copied":"Copy code"}),d.jsx(MS,{value:f,onChange:X=>{T&&p(X)},extensions:P,theme:AS,editable:T,basicSetup:{lineNumbers:!0,foldGutter:!0,dropCursor:!1,allowMultipleSelections:!1},className:`code-modal__editor${u&&c?.lines?" code-modal__editor--with-coverage":""}`,style:{fontSize:"14px"}})]}),k&&d.jsx("div",{className:"code-modal__error",children:k})]})]})}),document.body):null},fr=({element:n,introspector:e,className:t=""})=>{if(!n.tags||n.tags.length===0)return null;const s=e.getTagsByIds(n.tags);return d.jsxs("div",{className:`tags-section ${t}`,children:[d.jsx("h4",{className:"tags-section__title",children:"Tags"}),d.jsx("div",{className:"tags-section__content",children:n.tagsDetailed&&n.tagsDetailed.length>0&&d.jsx("div",{className:"tags-section__detailed",children:d.jsx("div",{className:"tags-section__detailed__items",children:n.tagsDetailed.map(i=>{const r=s.find(o=>o.id===i.id);return d.jsxs("div",{className:"tags-section__detailed__item",children:[d.jsx("div",{className:"tag-name",children:d.jsx("a",{href:`#element-${i.id}`,className:"tags-section__tag-link",children:r?we(r.id):i.id})}),i.config&&d.jsxs("div",{className:"tag-config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:i.config})]})]},i.id)})})})})]})};var ca=n=>n.type==="checkbox",tr=n=>n instanceof Date,sn=n=>n==null;const KS=n=>typeof n=="object";var $t=n=>!sn(n)&&!Array.isArray(n)&&KS(n)&&!tr(n),DA=n=>$t(n)&&n.target?ca(n.target)?n.target.checked:n.target.value:n,IA=n=>n.substring(0,n.search(/\.\d+(\.|$)/))||n,LA=(n,e)=>n.has(IA(e)),ZA=n=>{const e=n.constructor&&n.constructor.prototype;return $t(e)&&e.hasOwnProperty("isPrototypeOf")},Sm=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function Dt(n){let e;const t=Array.isArray(n),s=typeof FileList<"u"?n instanceof FileList:!1;if(n instanceof Date)e=new Date(n);else if(!(Sm&&(n instanceof Blob||s))&&(t||$t(n)))if(e=t?[]:Object.create(Object.getPrototypeOf(n)),!t&&!ZA(n))e=n;else for(const i in n)n.hasOwnProperty(i)&&(e[i]=Dt(n[i]));else return n;return e}var qu=n=>/^\w*$/.test(n),St=n=>n===void 0,bm=n=>Array.isArray(n)?n.filter(Boolean):[],_m=n=>bm(n.replace(/["|']|\]/g,"").split(/\.|\[/)),Ce=(n,e,t)=>{if(!e||!$t(n))return t;const s=(qu(e)?[e]:_m(e)).reduce((i,r)=>sn(i)?i:i[r],n);return St(s)||s===n?St(n[e])?t:n[e]:s},ws=n=>typeof n=="boolean",ct=(n,e,t)=>{let s=-1;const i=qu(e)?[e]:_m(e),r=i.length,o=r-1;for(;++s<r;){const c=i[s];let u=t;if(s!==o){const f=n[c];u=$t(f)||Array.isArray(f)?f:isNaN(+i[s+1])?{}:[]}if(c==="__proto__"||c==="constructor"||c==="prototype")return;n[c]=u,n=n[c]}};const Zx={BLUR:"blur",FOCUS_OUT:"focusout"},ss={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},zs={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},zA=se.createContext(null);zA.displayName="HookFormContext";var FA=(n,e,t,s=!0)=>{const i={defaultValues:e._defaultValues};for(const r in n)Object.defineProperty(i,r,{get:()=>{const o=r;return e._proxyFormState[o]!==ss.all&&(e._proxyFormState[o]=!s||ss.all),n[o]}});return i};const BA=typeof window<"u"?se.useLayoutEffect:se.useEffect;var En=n=>typeof n=="string",XA=(n,e,t,s,i)=>En(n)?(s&&e.watch.add(n),Ce(t,n,i)):Array.isArray(n)?n.map(r=>(s&&e.watch.add(r),Ce(t,r))):(s&&(e.watchAll=!0),t),Pp=n=>sn(n)||!KS(n);function wi(n,e,t=new WeakSet){if(Pp(n)||Pp(e))return n===e;if(tr(n)&&tr(e))return n.getTime()===e.getTime();const s=Object.keys(n),i=Object.keys(e);if(s.length!==i.length)return!1;if(t.has(n)||t.has(e))return!0;t.add(n),t.add(e);for(const r of s){const o=n[r];if(!i.includes(r))return!1;if(r!=="ref"){const c=e[r];if(tr(o)&&tr(c)||$t(o)&&$t(c)||Array.isArray(o)&&Array.isArray(c)?!wi(o,c,t):o!==c)return!1}}return!0}var VA=(n,e,t,s,i)=>e?{...t[n],types:{...t[n]&&t[n].types?t[n].types:{},[s]:i||!0}}:{},Po=n=>Array.isArray(n)?n:[n],zx=()=>{let n=[];return{get observers(){return n},next:i=>{for(const r of n)r.next&&r.next(i)},subscribe:i=>(n.push(i),{unsubscribe:()=>{n=n.filter(r=>r!==i)}}),unsubscribe:()=>{n=[]}}};function JS(n,e){const t={};for(const s in n)if(n.hasOwnProperty(s)){const i=n[s],r=e[s];if(i&&$t(i)&&r){const o=JS(i,r);$t(o)&&(t[s]=o)}else n[s]&&(t[s]=r)}return t}var vn=n=>$t(n)&&!Object.keys(n).length,$m=n=>n.type==="file",is=n=>typeof n=="function",Nu=n=>{if(!Sm)return!1;const e=n?n.ownerDocument:0;return n instanceof(e&&e.defaultView?e.defaultView.HTMLElement:HTMLElement)},eb=n=>n.type==="select-multiple",Cm=n=>n.type==="radio",WA=n=>Cm(n)||ca(n),bf=n=>Nu(n)&&n.isConnected;function UA(n,e){const t=e.slice(0,-1).length;let s=0;for(;s<t;)n=St(n)?s++:n[e[s++]];return n}function YA(n){for(const e in n)if(n.hasOwnProperty(e)&&!St(n[e]))return!1;return!0}function wt(n,e){const t=Array.isArray(e)?e:qu(e)?[e]:_m(e),s=t.length===1?n:UA(n,t),i=t.length-1,r=t[i];return s&&delete s[r],i!==0&&($t(s)&&vn(s)||Array.isArray(s)&&YA(s))&&wt(n,t.slice(0,-1)),n}var qA=n=>{for(const e in n)if(is(n[e]))return!0;return!1};function tb(n){return Array.isArray(n)||$t(n)&&!qA(n)}function jp(n,e={}){for(const t in n)tb(n[t])?(e[t]=Array.isArray(n[t])?[]:{},jp(n[t],e[t])):sn(n[t])||(e[t]=!0);return e}function qr(n,e,t){t||(t=jp(e));for(const s in n)tb(n[s])?St(e)||Pp(t[s])?t[s]=jp(n[s],Array.isArray(n[s])?[]:{}):qr(n[s],sn(e)?{}:e[s],t[s]):t[s]=!wi(n[s],e[s]);return t}const Fx={value:!1,isValid:!1},Bx={value:!0,isValid:!0};var nb=n=>{if(Array.isArray(n)){if(n.length>1){const e=n.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:e,isValid:!!e.length}}return n[0].checked&&!n[0].disabled?n[0].attributes&&!St(n[0].attributes.value)?St(n[0].value)||n[0].value===""?Bx:{value:n[0].value,isValid:!0}:Bx:Fx}return Fx},sb=(n,{valueAsNumber:e,valueAsDate:t,setValueAs:s})=>St(n)?n:e?n===""?NaN:n&&+n:t&&En(n)?new Date(n):s?s(n):n;const Xx={isValid:!1,value:null};var ib=n=>Array.isArray(n)?n.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,Xx):Xx;function Vx(n){const e=n.ref;return $m(e)?e.files:Cm(e)?ib(n.refs).value:eb(e)?[...e.selectedOptions].map(({value:t})=>t):ca(e)?nb(n.refs).value:sb(St(e.value)?n.ref.value:e.value,n)}var GA=(n,e,t,s)=>{const i={};for(const r of n){const o=Ce(e,r);o&&ct(i,r,o._f)}return{criteriaMode:t,names:[...n],fields:i,shouldUseNativeValidation:s}},Eu=n=>n instanceof RegExp,ho=n=>St(n)?n:Eu(n)?n.source:$t(n)?Eu(n.value)?n.value.source:n.value:n,Wx=n=>({isOnSubmit:!n||n===ss.onSubmit,isOnBlur:n===ss.onBlur,isOnChange:n===ss.onChange,isOnAll:n===ss.all,isOnTouch:n===ss.onTouched});const Ux="AsyncFunction";var HA=n=>!!n&&!!n.validate&&!!(is(n.validate)&&n.validate.constructor.name===Ux||$t(n.validate)&&Object.values(n.validate).find(e=>e.constructor.name===Ux)),KA=n=>n.mount&&(n.required||n.min||n.max||n.maxLength||n.minLength||n.pattern||n.validate),Yx=(n,e,t)=>!t&&(e.watchAll||e.watch.has(n)||[...e.watch].some(s=>n.startsWith(s)&&/^\.\w+/.test(n.slice(s.length))));const jo=(n,e,t,s)=>{for(const i of t||Object.keys(n)){const r=Ce(n,i);if(r){const{_f:o,...c}=r;if(o){if(o.refs&&o.refs[0]&&e(o.refs[0],i)&&!s)return!0;if(o.ref&&e(o.ref,o.name)&&!s)return!0;if(jo(c,e))break}else if($t(c)&&jo(c,e))break}}};function qx(n,e,t){const s=Ce(n,t);if(s||qu(t))return{error:s,name:t};const i=t.split(".");for(;i.length;){const r=i.join("."),o=Ce(e,r),c=Ce(n,r);if(o&&!Array.isArray(o)&&t!==r)return{name:t};if(c&&c.type)return{name:r,error:c};if(c&&c.root&&c.root.type)return{name:`${r}.root`,error:c.root};i.pop()}return{name:t}}var JA=(n,e,t,s)=>{t(n);const{name:i,...r}=n;return vn(r)||Object.keys(r).length>=Object.keys(e).length||Object.keys(r).find(o=>e[o]===(!s||ss.all))},eM=(n,e,t)=>!n||!e||n===e||Po(n).some(s=>s&&(t?s===e:s.startsWith(e)||e.startsWith(s))),tM=(n,e,t,s,i)=>i.isOnAll?!1:!t&&i.isOnTouch?!(e||n):(t?s.isOnBlur:i.isOnBlur)?!n:(t?s.isOnChange:i.isOnChange)?n:!0,nM=(n,e)=>!bm(Ce(n,e)).length&&wt(n,e),sM=(n,e,t)=>{const s=Po(Ce(n,t));return ct(s,"root",e[t]),ct(n,t,s),n};function Gx(n,e,t="validate"){if(En(n)||Array.isArray(n)&&n.every(En)||ws(n)&&!n)return{type:t,message:En(n)?n:"",ref:e}}var Wr=n=>$t(n)&&!Eu(n)?n:{value:n,message:""},Hx=async(n,e,t,s,i,r)=>{const{ref:o,refs:c,required:u,maxLength:f,minLength:p,min:g,max:O,pattern:v,validate:w,name:k,valueAsNumber:S,mount:$}=n._f,b=Ce(t,k);if(!$||e.has(k))return{};const C=c?c[0]:o,T=R=>{i&&C.reportValidity&&(C.setCustomValidity(ws(R)?"":R||""),C.reportValidity())},P={},N=Cm(o),A=ca(o),X=N||A,F=(S||$m(o))&&St(o.value)&&St(b)||Nu(o)&&o.value===""||b===""||Array.isArray(b)&&!b.length,H=VA.bind(null,k,s,P),J=(R,V,U,te=zs.maxLength,pe=zs.minLength)=>{const ce=R?V:U;P[k]={type:R?te:pe,message:ce,ref:o,...H(R?te:pe,ce)}};if(r?!Array.isArray(b)||!b.length:u&&(!X&&(F||sn(b))||ws(b)&&!b||A&&!nb(c).isValid||N&&!ib(c).isValid)){const{value:R,message:V}=En(u)?{value:!!u,message:u}:Wr(u);if(R&&(P[k]={type:zs.required,message:V,ref:C,...H(zs.required,V)},!s))return T(V),P}if(!F&&(!sn(g)||!sn(O))){let R,V;const U=Wr(O),te=Wr(g);if(!sn(b)&&!isNaN(b)){const pe=o.valueAsNumber||b&&+b;sn(U.value)||(R=pe>U.value),sn(te.value)||(V=pe<te.value)}else{const pe=o.valueAsDate||new Date(b),ce=Q=>new Date(new Date().toDateString()+" "+Q),Y=o.type=="time",z=o.type=="week";En(U.value)&&b&&(R=Y?ce(b)>ce(U.value):z?b>U.value:pe>new Date(U.value)),En(te.value)&&b&&(V=Y?ce(b)<ce(te.value):z?b<te.value:pe<new Date(te.value))}if((R||V)&&(J(!!R,U.message,te.message,zs.max,zs.min),!s))return T(P[k].message),P}if((f||p)&&!F&&(En(b)||r&&Array.isArray(b))){const R=Wr(f),V=Wr(p),U=!sn(R.value)&&b.length>+R.value,te=!sn(V.value)&&b.length<+V.value;if((U||te)&&(J(U,R.message,V.message),!s))return T(P[k].message),P}if(v&&!F&&En(b)){const{value:R,message:V}=Wr(v);if(Eu(R)&&!b.match(R)&&(P[k]={type:zs.pattern,message:V,ref:o,...H(zs.pattern,V)},!s))return T(V),P}if(w){if(is(w)){const R=await w(b,t),V=Gx(R,C);if(V&&(P[k]={...V,...H(zs.validate,V.message)},!s))return T(V.message),P}else if($t(w)){let R={};for(const V in w){if(!vn(R)&&!s)break;const U=Gx(await w[V](b,t),C,V);U&&(R={...U,...H(V,U.message)},T(U.message),s&&(P[k]=R))}if(!vn(R)&&(P[k]={ref:C,...R},!s))return P}}return T(!0),P};const iM={mode:ss.onSubmit,reValidateMode:ss.onChange,shouldFocusError:!0};function rM(n={}){let e={...iM,...n},t={submitCount:0,isDirty:!1,isReady:!1,isLoading:is(e.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1},s={},i=$t(e.defaultValues)||$t(e.values)?Dt(e.defaultValues||e.values)||{}:{},r=e.shouldUnregister?{}:Dt(i),o={action:!1,mount:!1,watch:!1},c={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},u,f=0;const p={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1};let g={...p};const O={array:zx(),state:zx()},v=e.criteriaMode===ss.all,w=M=>q=>{clearTimeout(f),f=setTimeout(M,q)},k=async M=>{if(!e.disabled&&(p.isValid||g.isValid||M)){const q=e.resolver?vn((await A()).errors):await F(s,!0);q!==t.isValid&&O.state.next({isValid:q})}},S=(M,q)=>{!e.disabled&&(p.isValidating||p.validatingFields||g.isValidating||g.validatingFields)&&((M||Array.from(c.mount)).forEach(ne=>{ne&&(q?ct(t.validatingFields,ne,q):wt(t.validatingFields,ne))}),O.state.next({validatingFields:t.validatingFields,isValidating:!vn(t.validatingFields)}))},$=(M,q=[],ne,xe,ge=!0,he=!0)=>{if(xe&&ne&&!e.disabled){if(o.action=!0,he&&Array.isArray(Ce(s,M))){const Qe=ne(Ce(s,M),xe.argA,xe.argB);ge&&ct(s,M,Qe)}if(he&&Array.isArray(Ce(t.errors,M))){const Qe=ne(Ce(t.errors,M),xe.argA,xe.argB);ge&&ct(t.errors,M,Qe),nM(t.errors,M)}if((p.touchedFields||g.touchedFields)&&he&&Array.isArray(Ce(t.touchedFields,M))){const Qe=ne(Ce(t.touchedFields,M),xe.argA,xe.argB);ge&&ct(t.touchedFields,M,Qe)}(p.dirtyFields||g.dirtyFields)&&(t.dirtyFields=qr(i,r)),O.state.next({name:M,isDirty:J(M,q),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else ct(r,M,q)},b=(M,q)=>{ct(t.errors,M,q),O.state.next({errors:t.errors})},C=M=>{t.errors=M,O.state.next({errors:t.errors,isValid:!1})},T=(M,q,ne,xe)=>{const ge=Ce(s,M);if(ge){const he=Ce(r,M,St(ne)?Ce(i,M):ne);St(he)||xe&&xe.defaultChecked||q?ct(r,M,q?he:Vx(ge._f)):U(M,he),o.mount&&k()}},P=(M,q,ne,xe,ge)=>{let he=!1,Qe=!1;const Ve={name:M};if(!e.disabled){if(!ne||xe){(p.isDirty||g.isDirty)&&(Qe=t.isDirty,t.isDirty=Ve.isDirty=J(),he=Qe!==Ve.isDirty);const Ge=wi(Ce(i,M),q);Qe=!!Ce(t.dirtyFields,M),Ge?wt(t.dirtyFields,M):ct(t.dirtyFields,M,!0),Ve.dirtyFields=t.dirtyFields,he=he||(p.dirtyFields||g.dirtyFields)&&Qe!==!Ge}if(ne){const Ge=Ce(t.touchedFields,M);Ge||(ct(t.touchedFields,M,ne),Ve.touchedFields=t.touchedFields,he=he||(p.touchedFields||g.touchedFields)&&Ge!==ne)}he&&ge&&O.state.next(Ve)}return he?Ve:{}},N=(M,q,ne,xe)=>{const ge=Ce(t.errors,M),he=(p.isValid||g.isValid)&&ws(q)&&t.isValid!==q;if(e.delayError&&ne?(u=w(()=>b(M,ne)),u(e.delayError)):(clearTimeout(f),u=null,ne?ct(t.errors,M,ne):wt(t.errors,M)),(ne?!wi(ge,ne):ge)||!vn(xe)||he){const Qe={...xe,...he&&ws(q)?{isValid:q}:{},errors:t.errors,name:M};t={...t,...Qe},O.state.next(Qe)}},A=async M=>{S(M,!0);const q=await e.resolver(r,e.context,GA(M||c.mount,s,e.criteriaMode,e.shouldUseNativeValidation));return S(M),q},X=async M=>{const{errors:q}=await A(M);if(M)for(const ne of M){const xe=Ce(q,ne);xe?ct(t.errors,ne,xe):wt(t.errors,ne)}else t.errors=q;return q},F=async(M,q,ne={valid:!0})=>{for(const xe in M){const ge=M[xe];if(ge){const{_f:he,...Qe}=ge;if(he){const Ve=c.array.has(he.name),Ge=ge._f&&HA(ge._f);Ge&&p.validatingFields&&S([he.name],!0);const en=await Hx(ge,c.disabled,r,v,e.shouldUseNativeValidation&&!q,Ve);if(Ge&&p.validatingFields&&S([he.name]),en[he.name]&&(ne.valid=!1,q))break;!q&&(Ce(en,he.name)?Ve?sM(t.errors,en,he.name):ct(t.errors,he.name,en[he.name]):wt(t.errors,he.name))}!vn(Qe)&&await F(Qe,q,ne)}}return ne.valid},H=()=>{for(const M of c.unMount){const q=Ce(s,M);q&&(q._f.refs?q._f.refs.every(ne=>!bf(ne)):!bf(q._f.ref))&&me(M)}c.unMount=new Set},J=(M,q)=>!e.disabled&&(M&&q&&ct(r,M,q),!wi(Q(),i)),R=(M,q,ne)=>XA(M,c,{...o.mount?r:St(q)?i:En(M)?{[M]:q}:q},ne,q),V=M=>bm(Ce(o.mount?r:i,M,e.shouldUnregister?Ce(i,M,[]):[])),U=(M,q,ne={})=>{const xe=Ce(s,M);let ge=q;if(xe){const he=xe._f;he&&(!he.disabled&&ct(r,M,sb(q,he)),ge=Nu(he.ref)&&sn(q)?"":q,eb(he.ref)?[...he.ref.options].forEach(Qe=>Qe.selected=ge.includes(Qe.value)):he.refs?ca(he.ref)?he.refs.forEach(Qe=>{(!Qe.defaultChecked||!Qe.disabled)&&(Array.isArray(ge)?Qe.checked=!!ge.find(Ve=>Ve===Qe.value):Qe.checked=ge===Qe.value||!!ge)}):he.refs.forEach(Qe=>Qe.checked=Qe.value===ge):$m(he.ref)?he.ref.value="":(he.ref.value=ge,he.ref.type||O.state.next({name:M,values:Dt(r)})))}(ne.shouldDirty||ne.shouldTouch)&&P(M,ge,ne.shouldTouch,ne.shouldDirty,!0),ne.shouldValidate&&z(M)},te=(M,q,ne)=>{for(const xe in q){if(!q.hasOwnProperty(xe))return;const ge=q[xe],he=M+"."+xe,Qe=Ce(s,he);(c.array.has(M)||$t(ge)||Qe&&!Qe._f)&&!tr(ge)?te(he,ge,ne):U(he,ge,ne)}},pe=(M,q,ne={})=>{const xe=Ce(s,M),ge=c.array.has(M),he=Dt(q);ct(r,M,he),ge?(O.array.next({name:M,values:Dt(r)}),(p.isDirty||p.dirtyFields||g.isDirty||g.dirtyFields)&&ne.shouldDirty&&O.state.next({name:M,dirtyFields:qr(i,r),isDirty:J(M,he)})):xe&&!xe._f&&!sn(he)?te(M,he,ne):U(M,he,ne),Yx(M,c)&&O.state.next({...t,name:M}),O.state.next({name:o.mount?M:void 0,values:Dt(r)})},ce=async M=>{o.mount=!0;const q=M.target;let ne=q.name,xe=!0;const ge=Ce(s,ne),he=Ge=>{xe=Number.isNaN(Ge)||tr(Ge)&&isNaN(Ge.getTime())||wi(Ge,Ce(r,ne,Ge))},Qe=Wx(e.mode),Ve=Wx(e.reValidateMode);if(ge){let Ge,en;const us=q.type?Vx(ge._f):DA(M),dn=M.type===Zx.BLUR||M.type===Zx.FOCUS_OUT,Ju=!KA(ge._f)&&!e.resolver&&!Ce(t.errors,ne)&&!ge._f.deps||tM(dn,Ce(t.touchedFields,ne),t.isSubmitted,Ve,Qe),yr=Yx(ne,c,dn);ct(r,ne,us),dn?(!q||!q.readOnly)&&(ge._f.onBlur&&ge._f.onBlur(M),u&&u(0)):ge._f.onChange&&ge._f.onChange(M);const vr=P(ne,us,dn),ed=!vn(vr)||yr;if(!dn&&O.state.next({name:ne,type:M.type,values:Dt(r)}),Ju)return(p.isValid||g.isValid)&&(e.mode==="onBlur"?dn&&k():dn||k()),ed&&O.state.next({name:ne,...yr?{}:vr});if(!dn&&yr&&O.state.next({...t}),e.resolver){const{errors:xr}=await A([ne]);if(he(us),xe){const xl=qx(t.errors,s,ne),wr=qx(xr,s,xl.name||ne);Ge=wr.error,ne=wr.name,en=vn(xr)}}else S([ne],!0),Ge=(await Hx(ge,c.disabled,r,v,e.shouldUseNativeValidation))[ne],S([ne]),he(us),xe&&(Ge?en=!1:(p.isValid||g.isValid)&&(en=await F(s,!0)));xe&&(ge._f.deps&&(!Array.isArray(ge._f.deps)||ge._f.deps.length>0)&&z(ge._f.deps),N(ne,en,Ge,vr))}},Y=(M,q)=>{if(Ce(t.errors,q)&&M.focus)return M.focus(),1},z=async(M,q={})=>{let ne,xe;const ge=Po(M);if(e.resolver){const he=await X(St(M)?M:ge);ne=vn(he),xe=M?!ge.some(Qe=>Ce(he,Qe)):ne}else M?(xe=(await Promise.all(ge.map(async he=>{const Qe=Ce(s,he);return await F(Qe&&Qe._f?{[he]:Qe}:Qe)}))).every(Boolean),!(!xe&&!t.isValid)&&k()):xe=ne=await F(s);return O.state.next({...!En(M)||(p.isValid||g.isValid)&&ne!==t.isValid?{}:{name:M},...e.resolver||!M?{isValid:ne}:{},errors:t.errors}),q.shouldFocus&&!xe&&jo(s,Y,M?ge:c.mount),xe},Q=(M,q)=>{let ne={...o.mount?r:i};return q&&(ne=JS(q.dirtyFields?t.dirtyFields:t.touchedFields,ne)),St(M)?ne:En(M)?Ce(ne,M):M.map(xe=>Ce(ne,xe))},j=(M,q)=>({invalid:!!Ce((q||t).errors,M),isDirty:!!Ce((q||t).dirtyFields,M),error:Ce((q||t).errors,M),isValidating:!!Ce(t.validatingFields,M),isTouched:!!Ce((q||t).touchedFields,M)}),I=M=>{M&&Po(M).forEach(q=>wt(t.errors,q)),O.state.next({errors:M?t.errors:{}})},le=(M,q,ne)=>{const xe=(Ce(s,M,{_f:{}})._f||{}).ref,ge=Ce(t.errors,M)||{},{ref:he,message:Qe,type:Ve,...Ge}=ge;ct(t.errors,M,{...Ge,...q,ref:xe}),O.state.next({name:M,errors:t.errors,isValid:!1}),ne&&ne.shouldFocus&&xe&&xe.focus&&xe.focus()},ee=(M,q)=>is(M)?O.state.subscribe({next:ne=>"values"in ne&&M(R(void 0,q),ne)}):R(M,q,!0),re=M=>O.state.subscribe({next:q=>{eM(M.name,q.name,M.exact)&&JA(q,M.formState||p,vl,M.reRenderRoot)&&M.callback({values:{...r},...t,...q,defaultValues:i})}}).unsubscribe,fe=M=>(o.mount=!0,g={...g,...M.formState},re({...M,formState:g})),me=(M,q={})=>{for(const ne of M?Po(M):c.mount)c.mount.delete(ne),c.array.delete(ne),q.keepValue||(wt(s,ne),wt(r,ne)),!q.keepError&&wt(t.errors,ne),!q.keepDirty&&wt(t.dirtyFields,ne),!q.keepTouched&&wt(t.touchedFields,ne),!q.keepIsValidating&&wt(t.validatingFields,ne),!e.shouldUnregister&&!q.keepDefaultValue&&wt(i,ne);O.state.next({values:Dt(r)}),O.state.next({...t,...q.keepDirty?{isDirty:J()}:{}}),!q.keepIsValid&&k()},je=({disabled:M,name:q})=>{(ws(M)&&o.mount||M||c.disabled.has(q))&&(M?c.disabled.add(q):c.disabled.delete(q))},De=(M,q={})=>{let ne=Ce(s,M);const xe=ws(q.disabled)||ws(e.disabled);return ct(s,M,{...ne||{},_f:{...ne&&ne._f?ne._f:{ref:{name:M}},name:M,mount:!0,...q}}),c.mount.add(M),ne?je({disabled:ws(q.disabled)?q.disabled:e.disabled,name:M}):T(M,!0,q.value),{...xe?{disabled:q.disabled||e.disabled}:{},...e.progressive?{required:!!q.required,min:ho(q.min),max:ho(q.max),minLength:ho(q.minLength),maxLength:ho(q.maxLength),pattern:ho(q.pattern)}:{},name:M,onChange:ce,onBlur:ce,ref:ge=>{if(ge){De(M,q),ne=Ce(s,M);const he=St(ge.value)&&ge.querySelectorAll&&ge.querySelectorAll("input,select,textarea")[0]||ge,Qe=WA(he),Ve=ne._f.refs||[];if(Qe?Ve.find(Ge=>Ge===he):he===ne._f.ref)return;ct(s,M,{_f:{...ne._f,...Qe?{refs:[...Ve.filter(bf),he,...Array.isArray(Ce(i,M))?[{}]:[]],ref:{type:he.type,name:M}}:{ref:he}}}),T(M,!1,void 0,he)}else ne=Ce(s,M,{}),ne._f&&(ne._f.mount=!1),(e.shouldUnregister||q.shouldUnregister)&&!(LA(c.array,M)&&o.action)&&c.unMount.add(M)}}},Ye=()=>e.shouldFocusError&&jo(s,Y,c.mount),Re=M=>{ws(M)&&(O.state.next({disabled:M}),jo(s,(q,ne)=>{const xe=Ce(s,ne);xe&&(q.disabled=xe._f.disabled||M,Array.isArray(xe._f.refs)&&xe._f.refs.forEach(ge=>{ge.disabled=xe._f.disabled||M}))},0,!1))},Xe=(M,q)=>async ne=>{let xe;ne&&(ne.preventDefault&&ne.preventDefault(),ne.persist&&ne.persist());let ge=Dt(r);if(O.state.next({isSubmitting:!0}),e.resolver){const{errors:he,values:Qe}=await A();t.errors=he,ge=Dt(Qe)}else await F(s);if(c.disabled.size)for(const he of c.disabled)wt(ge,he);if(wt(t.errors,"root"),vn(t.errors)){O.state.next({errors:{}});try{await M(ge,ne)}catch(he){xe=he}}else q&&await q({...t.errors},ne),Ye(),setTimeout(Ye);if(O.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:vn(t.errors)&&!xe,submitCount:t.submitCount+1,errors:t.errors}),xe)throw xe},gt=(M,q={})=>{Ce(s,M)&&(St(q.defaultValue)?pe(M,Dt(Ce(i,M))):(pe(M,q.defaultValue),ct(i,M,Dt(q.defaultValue))),q.keepTouched||wt(t.touchedFields,M),q.keepDirty||(wt(t.dirtyFields,M),t.isDirty=q.defaultValue?J(M,Dt(Ce(i,M))):J()),q.keepError||(wt(t.errors,M),p.isValid&&k()),O.state.next({...t}))},Et=(M,q={})=>{const ne=M?Dt(M):i,xe=Dt(ne),ge=vn(M),he=ge?i:xe;if(q.keepDefaultValues||(i=ne),!q.keepValues){if(q.keepDirtyValues){const Qe=new Set([...c.mount,...Object.keys(qr(i,r))]);for(const Ve of Array.from(Qe))Ce(t.dirtyFields,Ve)?ct(he,Ve,Ce(r,Ve)):pe(Ve,Ce(he,Ve))}else{if(Sm&&St(M))for(const Qe of c.mount){const Ve=Ce(s,Qe);if(Ve&&Ve._f){const Ge=Array.isArray(Ve._f.refs)?Ve._f.refs[0]:Ve._f.ref;if(Nu(Ge)){const en=Ge.closest("form");if(en){en.reset();break}}}}if(q.keepFieldsRef)for(const Qe of c.mount)pe(Qe,Ce(he,Qe));else s={}}r=e.shouldUnregister?q.keepDefaultValues?Dt(i):{}:Dt(he),O.array.next({values:{...he}}),O.state.next({values:{...he}})}c={mount:q.keepDirtyValues?c.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},o.mount=!p.isValid||!!q.keepIsValid||!!q.keepDirtyValues,o.watch=!!e.shouldUnregister,O.state.next({submitCount:q.keepSubmitCount?t.submitCount:0,isDirty:ge?!1:q.keepDirty?t.isDirty:!!(q.keepDefaultValues&&!wi(M,i)),isSubmitted:q.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:ge?{}:q.keepDirtyValues?q.keepDefaultValues&&r?qr(i,r):t.dirtyFields:q.keepDefaultValues&&M?qr(i,M):q.keepDirty?t.dirtyFields:{},touchedFields:q.keepTouched?t.touchedFields:{},errors:q.keepErrors?t.errors:{},isSubmitSuccessful:q.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},Hs=(M,q)=>Et(is(M)?M(r):M,q),gr=(M,q={})=>{const ne=Ce(s,M),xe=ne&&ne._f;if(xe){const ge=xe.refs?xe.refs[0]:xe.ref;ge.focus&&(ge.focus(),q.shouldSelect&&is(ge.select)&&ge.select())}},vl=M=>{t={...t,...M}},Or={control:{register:De,unregister:me,getFieldState:j,handleSubmit:Xe,setError:le,_subscribe:re,_runSchema:A,_focusError:Ye,_getWatch:R,_getDirty:J,_setValid:k,_setFieldArray:$,_setDisabledField:je,_setErrors:C,_getFieldArray:V,_reset:Et,_resetDefaultValues:()=>is(e.defaultValues)&&e.defaultValues().then(M=>{Hs(M,e.resetOptions),O.state.next({isLoading:!1})}),_removeUnmounted:H,_disableForm:Re,_subjects:O,_proxyFormState:p,get _fields(){return s},get _formValues(){return r},get _state(){return o},set _state(M){o=M},get _defaultValues(){return i},get _names(){return c},set _names(M){c=M},get _formState(){return t},get _options(){return e},set _options(M){e={...e,...M}}},subscribe:fe,trigger:z,register:De,handleSubmit:Xe,watch:ee,setValue:pe,getValues:Q,reset:Hs,resetField:gt,clearErrors:I,unregister:me,setError:le,setFocus:gr,getFieldState:j};return{...Or,formControl:Or}}function rb(n={}){const e=se.useRef(void 0),t=se.useRef(void 0),[s,i]=se.useState({isDirty:!1,isValidating:!1,isLoading:is(n.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:n.errors||{},disabled:n.disabled||!1,isReady:!1,defaultValues:is(n.defaultValues)?void 0:n.defaultValues});if(!e.current)if(n.formControl)e.current={...n.formControl,formState:s},n.defaultValues&&!is(n.defaultValues)&&n.formControl.reset(n.defaultValues,n.resetOptions);else{const{formControl:o,...c}=rM(n);e.current={...c,formState:s}}const r=e.current.control;return r._options=n,BA(()=>{const o=r._subscribe({formState:r._proxyFormState,callback:()=>i({...r._formState}),reRenderRoot:!0});return i(c=>({...c,isReady:!0})),r._formState.isReady=!0,o},[r]),se.useEffect(()=>r._disableForm(n.disabled),[r,n.disabled]),se.useEffect(()=>{n.mode&&(r._options.mode=n.mode),n.reValidateMode&&(r._options.reValidateMode=n.reValidateMode)},[r,n.mode,n.reValidateMode]),se.useEffect(()=>{n.errors&&(r._setErrors(n.errors),r._focusError())},[r,n.errors]),se.useEffect(()=>{n.shouldUnregister&&r._subjects.state.next({values:r._getWatch()})},[r,n.shouldUnregister]),se.useEffect(()=>{if(r._proxyFormState.isDirty){const o=r._getDirty();o!==s.isDirty&&r._subjects.state.next({isDirty:o})}},[r,s.isDirty]),se.useEffect(()=>{n.values&&!wi(n.values,t.current)?(r._reset(n.values,{keepFieldsRef:!0,...r._options.resetOptions}),t.current=n.values,i(o=>({...o}))):r._resetDefaultValues()},[r,n.values]),se.useEffect(()=>{r._state.mount||(r._setValid(),r._state.mount=!0),r._state.watch&&(r._state.watch=!1,r._subjects.state.next({...r._formState})),r._removeUnmounted()}),e.current.formState=FA(s,r),e.current}const su=({children:n,className:e="",...t})=>d.jsx("form",{className:`form ${e}`,...t,children:n}),Xs=({label:n,htmlFor:e,hint:t,error:s,children:i,className:r=""})=>d.jsxs("div",{className:`form__group ${r}`,children:[d.jsx("label",{className:"form__label",htmlFor:e,children:n}),i,t&&d.jsx("div",{className:"form__hint",children:t}),s&&d.jsx("div",{className:"form__error",children:s})]}),nr=se.forwardRef(({className:n="",invalid:e,...t},s)=>d.jsx("input",{ref:s,className:`form__input ${e?"is-invalid":""} ${n}`,...t}));nr.displayName="TextInput";const lb=se.forwardRef(({className:n="",invalid:e,...t},s)=>d.jsx("input",{ref:s,type:"password",className:`form__input ${e?"is-invalid":""} ${n}`,...t}));lb.displayName="PasswordInput";const ob=se.forwardRef(({className:n="",invalid:e,children:t,...s},i)=>d.jsx("select",{ref:i,className:`form__select ${e?"is-invalid":""} ${n}`,...s,children:t}));ob.displayName="Select";const lM=({className:n="",...e})=>d.jsxs("label",{className:`form__checkbox ${n}`,children:[d.jsx("input",{type:"checkbox",...e}),d.jsx("span",{className:"form__checkbox-label",children:e.title||e["aria-label"]||""})]}),oM=({children:n,className:e=""})=>d.jsx("div",{className:`form__actions ${e}`,children:n});async function Qo(n,e){const{settings:t,messages:s,tools:i,tool_choice:r,response_format:o,temperature:c}=n;if(!t.openaiApiKey){e.onError?.(new Error("Missing API key"));return}const f=(C=>{const T=[];for(const P of C){if(P.role==="system"||P.role==="user"){const N=P.content??"";T.push({role:P.role,content:N});continue}if(P.role==="assistant"){const N=P.content??void 0;Array.isArray(P.tool_calls)&&P.tool_calls.length?T.push({role:"assistant",content:N??null,tool_calls:P.tool_calls.map(A=>({id:A.id,type:"function",function:{name:A.function.name,arguments:A.function.arguments}}))}):T.push({role:"assistant",content:N??null});continue}if(P.role==="tool"){const N=P.content??"",A=P.tool_call_id??"";T.push({role:"tool",content:N,tool_call_id:A});continue}}return T})(s),p=Array.isArray(i)?i.map(C=>({type:"function",function:{...C.function}})):void 0,g=r==="auto"?"auto":r&&typeof r=="object"&&"function"in r?{type:"function",function:{name:r.function.name}}:void 0,v=`${(t.baseUrl||"https://api.openai.com").replace(/\/$/,"")}/v1/chat/completions`,w={model:t.model,messages:f,stream:t.stream,...o?{response_format:o}:{},...p&&p.length?{tools:p}:{},...g?{tool_choice:g}:{}};t.stream&&(w.stream_options={include_usage:!0});const k=await fetch(v,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t.openaiApiKey}`},body:JSON.stringify(w),signal:n.signal});if(!k.ok){const C=await k.text();e.onError?.(new Error(C||`HTTP ${k.status}`));return}if(!t.stream){const C=await k.json(),T=C.choices?.[0],P=(T?.message?.content??"")||"";C.usage&&e.onUsage?.({prompt_tokens:C.usage.prompt_tokens,completion_tokens:C.usage.completion_tokens,total_tokens:C.usage.total_tokens}),await Promise.resolve(e.onFinish?.(P,T?.finish_reason??void 0));return}if(!k.body){e.onError?.(new Error("No response body for stream"));return}const S=new TextDecoder,$=k.body.getReader();let b="";for(;;){const{value:C,done:T}=await $.read();if(T)break;const P=S.decode(C,{stream:!0});for(const N of P.split(`
|
|
164
|
+
`)){const A=N.trim();if(!A.startsWith("data:"))continue;const X=A.replace("data: ","");if(X!=="[DONE]")try{const F=JSON.parse(X),H=F.choices?.[0];if(H){const J=H.delta;if(typeof J.content=="string"&&J.content.length>0&&(b+=J.content,e.onTextDelta?.(J.content)),Array.isArray(J.tool_calls))for(const R of J.tool_calls)e.onToolCallDelta?.({id:R.id,index:R.index,type:R.type,function:{name:R.function?.name,arguments:R.function?.arguments}});if(H.finish_reason){F.usage&&e.onUsage?.(F.usage),await Promise.resolve(e.onFinish?.(b,H.finish_reason));return}}F.usage&&e.onUsage?.(F.usage)}catch{}}}}function Qp(){const n=new Map;return{accept(e){const t=e.index,s=n.get(t)||{id:e.id||"",name:"",argsText:""};e.id&&(s.id=e.id),e.function?.name&&(s.name=e.function.name),typeof e.function?.arguments=="string"&&(s.argsText+=e.function.arguments),n.set(t,s)},list(){return Array.from(n.entries()).sort((e,t)=>e[0]-t[0]).map(([,e])=>e)}}}function ab(n){return n.map(e=>({type:"function",function:{name:e.name,description:e.description,parameters:e.parameters}}))}async function cb(n){const{apiKey:e,model:t,baseUrl:s,signal:i}=n;if(!e)return{ok:!1,error:"Missing API key"};try{const o=`${(s||"https://api.openai.com").replace(/\/$/,"")}/v1/chat/completions`,c=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`},body:JSON.stringify({model:t,messages:[{role:"user",content:"ping"}],max_completion_tokens:16,stream:!1}),signal:i});return c.ok?{ok:!0}:{ok:!1,error:await c.text()||`HTTP ${c.status}`}}catch(r){return{ok:!1,error:r?.message||"Network error"}}}const ub=()=>{try{return!!Yu()?.openaiApiKey}catch{return!1}};async function db(n,e){const t=Yu();if(!t?.openaiApiKey)throw new Error("OpenAI API key not set. Configure it in Chat settings to enable AI fill.");const s={...t,stream:!1},i=["You are a strict JSON generator.","Given a JSON Schema, return ONLY a JSON instance that strictly conforms to it.","Output must be valid JSON with no comments, no code fences, and no trailing text.","Prefer realistic values. Keep arrays short (1-2 items)."].join(`
|
|
165
|
+
`),r=["Produce a single JSON object that validates against this JSON Schema. Try not to use generic values, let them have real-life values so there is variety each time.","Helpful seed: "+Math.random(),"If fields are optional, you may omit them unless they provide clarity.","JSON Schema:","<json_schema>",n,"</json_schema>"].join(`
|
|
166
|
+
|
|
167
|
+
`),o=[{role:"system",content:i},{role:"user",content:r}];let c="";return await Qo({settings:s,messages:o,response_format:{type:"json_object"},temperature:.2},{onFinish:f=>{c=f||""},onError:f=>{throw f}}),(f=>{try{return JSON.parse(f)}catch{const p=f.indexOf("{"),g=f.lastIndexOf("}");if(p!==-1&&g!==-1&&g>p){const O=f.slice(p,g+1);return JSON.parse(O)}throw new Error("Model did not return valid JSON")}})(c)}function aM(n){if(!n)return null;try{return JSON.parse(n)}catch{return null}}function hb(n){if(n){if(n.default!==void 0)return n.default;if(n.enum&&n.enum.length>0)return n.enum[0];switch(n.type){case"string":return"";case"number":case"integer":return 0;case"boolean":return!1;case"array":return[];case"object":{const e={};if(n.properties)for(const[t,s]of Object.entries(n.properties))e[t]=hb(s);return e}default:return}}}function cM(n){if(n)return hb(n)}function uM(n){return n.replace(/~1/g,"/").replace(/~0/g,"~")}function fb(n,e){if(!n||!e||!e.startsWith("#/"))return null;const t=e.slice(2).split("/").map(uM);let s=n;for(const i of t)if(s&&typeof s=="object"&&i in s)s=s[i];else return null;return s}function Kx(n,e){if(!n)return n;if(n.$ref){const t=fb(e,n.$ref);if(t)return t}return n}const pr=({schemaString:n,onJsonChange:e,hidePrint:t})=>{const[s,i]=se.useState("print"),[r,o]=se.useState(!1),[c,u]=se.useState(!1),[f,p]=se.useState(!1),[g,O]=se.useState(!1),v=se.useMemo(()=>aM(n),[n]),w=se.useMemo(()=>v?.$ref&&fb(v,v.$ref)||v,[v]),k=se.useMemo(()=>cM(w),[w]),{register:S,control:$,watch:b,setValue:C,reset:T}=rb({defaultValues:k??{}}),P=b();se.useEffect(()=>{O(ub())},[n]);const N=(R,V)=>{if(R)return V?V.split(".").reduce((U,te)=>U?U[te]:void 0,R):R},A=(R,V,U=[],te)=>{const pe=Kx(V,v)||V,ce=[...U,R].join("."),Y=pe.title||R,z=!!(te&&te.includes(R));if(pe.enum&&pe.enum.length>0)return d.jsx(Xs,{label:`${Y}${z?" *":""}`,children:d.jsx(ob,{...S(ce),children:pe.enum.map((Q,j)=>d.jsx("option",{value:String(Q),children:String(Q)},j))})},ce);switch(pe.type){case"string":return d.jsx(Xs,{label:`${Y}${z?" *":""}`,children:d.jsx(nr,{value:N(P,ce)??"",onChange:Q=>C(ce,Q.target.value,{shouldDirty:!0,shouldTouch:!0}),placeholder:pe.description||Y})},ce);case"number":case"integer":return d.jsx(Xs,{label:`${Y}${z?" *":""}`,children:d.jsx(nr,{type:"number",step:pe.type==="integer"?1:"any",value:N(P,ce)??"",onChange:Q=>{const j=Q.target.value===""?void 0:Number(Q.target.value);C(ce,j,{shouldDirty:!0,shouldTouch:!0})}})},ce);case"boolean":return d.jsx(Xs,{label:`${Y}${z?" *":""}`,children:d.jsx(lM,{checked:!!N(P,ce),onChange:Q=>C(ce,Q.target.checked,{shouldDirty:!0,shouldTouch:!0})})},ce);case"array":{const j=Kx(pe.items,v)?.type||"string";return d.jsx(Xs,{label:`${Y}${z?" *":""}`,hint:`Array of ${j}. Comma-separated.`,children:d.jsx(nr,{value:(N(P,ce)||[]).join(", "),onChange:I=>{const le=I.target.value.split(",").map(ee=>ee.trim()).filter(Boolean);C(ce,le,{shouldDirty:!0,shouldTouch:!0})}})},ce)}case"object":{const Q=pe.properties||{};return d.jsxs("div",{className:"schema-renderer__object",children:[d.jsx("div",{className:"schema-renderer__object-title",children:Y}),d.jsx("div",{className:"schema-renderer__grid",children:Object.entries(Q).map(([j,I])=>A(j,I,[...U,R],pe.required))})]},ce)}default:return d.jsx(Xs,{label:`${Y}${z?" *":""}`,children:d.jsx(nr,{...S(ce)})},ce)}},X=R=>R?R.type==="object"&&R.properties?d.jsx(su,{className:"schema-renderer__form",children:d.jsx("div",{className:"schema-renderer__grid",children:Object.entries(R.properties).map(([V,U])=>A(V,U,[],R.required))})}):d.jsx(su,{className:"schema-renderer__form",children:A("value",R||{type:"string"})}):d.jsx(su,{className:"schema-renderer__form",children:d.jsx("div",{className:"schema-renderer__empty",children:"No schema defined"})}),F=se.useMemo(()=>{try{return JSON.stringify(P??{},null,2)}catch{return"{}"}},[P]);se.useEffect(()=>{if(e)try{const R=JSON.stringify(P??{});e(R,P)}catch{e("{}",P)}},[P,e]);const H=se.useCallback(async()=>{await km(F)&&(u(!0),setTimeout(()=>u(!1),1500))},[F]),J=async()=>{if(n){p(!0);try{const R=await db(n);R&&typeof R=="object"&&T(R)}catch(R){console.error("AI fill failed",R)}finally{p(!1)}}};return d.jsxs("div",{className:"schema-renderer",children:[d.jsxs("div",{className:"schema-renderer__tabs",children:[v&&d.jsx("button",{type:"button",className:"schema-renderer__tab schema-renderer__tab--ai",title:g?"AI prefill based on schema":"AI key not configured in Chat settings",onClick:J,disabled:!g||f,children:f?"Filling…":"✧ Fill"}),!t&&d.jsx("button",{type:"button",className:`schema-renderer__tab ${s==="print"?"is-active":""}`,onClick:()=>i("print"),children:"Print"}),d.jsx("button",{type:"button",className:`schema-renderer__tab ${s==="form"?"is-active":""}`,onClick:()=>{if(!r&&v){const R=Np(v);R&&typeof R=="object"&&T(R),o(!0)}i("form")},children:"Form"}),d.jsx("button",{type:"button",className:`schema-renderer__tab ${s==="json"?"is-active":""}`,onClick:()=>i("json"),children:"JSON"})]}),!t&&s==="print"&&d.jsx("pre",{className:"schema-renderer__code-block",children:W_(n)}),s==="form"&&d.jsxs("div",{className:"schema-renderer__form-wrapper",children:[X(w),d.jsxs("div",{className:"schema-renderer__json-inline",style:{position:"relative"},children:[d.jsx("button",{type:"button",className:`code-modal__copy-btn${c?" code-modal__copy-btn--copied":""}`,onClick:H,title:c?"Copied!":"Copy to clipboard","aria-label":c?"Copied":"Copy code"}),d.jsx("pre",{className:"schema-renderer__code-block",children:F})]})]}),s==="json"&&d.jsxs("div",{className:"schema-renderer__json",style:{position:"relative"},children:[d.jsx("button",{type:"button",className:`code-modal__copy-btn${c?" code-modal__copy-btn--copied":""}`,onClick:H,title:c?"Copied!":"Copy to clipboard","aria-label":c?"Copied":"Copy code"}),d.jsx("pre",{className:"schema-renderer__code-block",children:F})]})]})};function Np(n){if(n){if(n.enum&&n.enum.length>0)return n.enum[0];switch(n.type){case"string":return dM();case"number":return 42;case"integer":return 7;case"boolean":return!0;case"array":{const e=n.items||{type:"string"};return[Np(e)]}case"object":{const e={},t=n.properties||{};for(const[s,i]of Object.entries(t))e[s]=Np(i);return e}default:return}}}function dM(){const n=["✨ stardust","🧪 lab-magic","🚀 rocket-fuel","🍕 pizza-slice","🧩 puzzle-piece","🐙 octo-value"];return n[Math.floor(Math.random()*n.length)]}const pb=({isOpen:n,title:e,schemaString:t,initialInputJson:s,onClose:i,onInvoke:r})=>{const[o,c]=se.useState(s??"{}"),[u,f]=se.useState(!1),[p,g]=se.useState(!1),[O,v]=se.useState(null),[w,k]=se.useState(null),[S,$]=se.useState(!1),[b,C]=se.useState(!1),T=se.useRef(null),P=se.useRef(null),N=se.useRef(null),[A,X]=se.useState({}),[F,H]=se.useState(!1),J=se.useMemo(()=>{if(!t)return null;try{return JSON.parse(t)}catch(Q){return n&&console.error("ExecuteModal - failed to parse schema:",{schemaString:t,error:Q}),null}},[t,n]),R=se.useMemo(()=>{if(!J)return null;if(J.$ref&&J.definitions){const Q=J.$ref.replace("#/definitions/","");return J.definitions[Q]||null}return J},[J,n]),V=se.useMemo(()=>R&&R.properties&&Object.keys(R.properties).length>0&&(!R.type||R.type==="object"),[R,J,t,n]);se.useEffect(()=>{if(!n)return;const Q=j=>{j.key==="Escape"&&i(),(j.ctrlKey||j.metaKey)&&j.key==="Enter"&&(j.preventDefault(),p||Y())};return window.addEventListener("keydown",Q),()=>window.removeEventListener("keydown",Q)},[n,i,p]),se.useEffect(()=>{s!==void 0&&c(s)},[s]),se.useEffect(()=>{if(!n)return;N.current=document.activeElement;const Q=P.current;if(Q){const I=Array.from(Q.querySelectorAll('button, [href], input, textarea, select, [tabindex]:not([tabindex="-1"])')).filter(le=>!le.hasAttribute("disabled"));I.length>0&&I[0].focus()}const j=I=>{if(I.key!=="Tab")return;const le=Q?Array.from(Q.querySelectorAll('button, [href], input, textarea, select, [tabindex]:not([tabindex="-1"])')).filter(fe=>!fe.hasAttribute("disabled")):[];if(le.length===0)return;const ee=le[0],re=le[le.length-1];!I.shiftKey&&document.activeElement===re&&(I.preventDefault(),ee.focus()),I.shiftKey&&document.activeElement===ee&&(I.preventDefault(),re.focus())};return document.addEventListener("keydown",j),()=>{document.removeEventListener("keydown",j);try{N.current?.focus()}catch{}}},[n]),se.useEffect(()=>{C(ub())},[n]),se.useEffect(()=>{if(R&&R.properties){const Q={};Object.entries(R.properties).forEach(([j,I])=>{if(I.default!==void 0)Q[j]=I.default;else switch(I.type){case"string":Q[j]="";break;case"number":case"integer":Q[j]=0;break;case"boolean":Q[j]=!1;break;case"array":Q[j]=[];break;default:Q[j]=""}}),X(Q)}},[R]),se.useEffect(()=>{V&&Object.keys(A).length>0&&c(JSON.stringify(A,null,2))},[A,V]);const U=(Q,j)=>{X(I=>({...I,[Q]:j}))},te=async()=>{if(!(!t||!R)){k(null),$(!0);try{const Q=await db(t),j={...A,...Q||{}};X(j),c(JSON.stringify(j,null,2))}catch(Q){k(Q?.message||String(Q))}finally{$(!1)}}},pe=(Q,j)=>{const I=R.required&&R.required.includes(Q),le=A[Q]||"";if(j.enum&&Array.isArray(j.enum))return d.jsxs("div",{className:"execute-modal__field",children:[d.jsxs("label",{className:"execute-modal__label",children:[j.title||Q,I?" *":""]}),d.jsx("select",{className:"execute-modal__select",value:le,onChange:ee=>U(Q,ee.target.value),children:j.enum.map(ee=>d.jsx("option",{value:ee,children:ee},ee))})]},Q);switch(j.type){case"boolean":return d.jsx("div",{className:"execute-modal__field",children:d.jsxs("label",{className:"execute-modal__label execute-modal__checkbox-label",children:[d.jsx("input",{type:"checkbox",className:"execute-modal__checkbox",checked:!!le,onChange:ee=>U(Q,ee.target.checked)}),j.title||Q,I?" *":""]})},Q);case"number":case"integer":return d.jsxs("div",{className:"execute-modal__field",children:[d.jsxs("label",{className:"execute-modal__label",children:[j.title||Q,I?" *":""]}),d.jsx("input",{type:"number",className:"execute-modal__input",value:le,step:j.type==="integer"?1:"any",placeholder:j.description,onChange:ee=>U(Q,ee.target.value?Number(ee.target.value):"")})]},Q);default:return d.jsxs("div",{className:"execute-modal__field",children:[d.jsxs("label",{className:"execute-modal__label",children:[j.title||Q,I?" *":""]}),d.jsx("input",{type:"text",className:"execute-modal__input",value:le,placeholder:j.description,onChange:ee=>U(Q,ee.target.value)})]},Q)}},ce=Q=>{if(!u)return Q;try{const j=Function(`"use strict"; return (${Q})`)();return JSON.stringify(j)}catch(j){throw new Error(j?.message||String(j))}},Y=async()=>{k(null),v(null),g(!0);try{const Q=ce(o),j=await r({inputJson:Q,evalInput:!1});if(j.error)k(j.error);else if(j.output)try{const I=JSON.parse(j.output);v(JSON.stringify(I,null,2))}catch{v(j.output)}}catch(Q){k(Q?.message||String(Q))}finally{g(!1)}};if(se.useEffect(()=>{if(!n)return;const Q=window.scrollY||window.pageYOffset||0,j={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,right:document.body.style.right,width:document.body.style.width,overflowY:document.body.style.overflowY};return document.body.style.position="fixed",document.body.style.top=`-${Q}px`,document.body.style.left="0",document.body.style.right="0",document.body.style.width="100%",document.body.style.overflowY="scroll",()=>{document.body.style.position=j.position,document.body.style.top=j.top,document.body.style.left=j.left,document.body.style.right=j.right,document.body.style.width=j.width,document.body.style.overflowY=j.overflowY,window.scrollTo(0,Q)}},[n]),!n)return null;const z=d.jsx("div",{className:"execute-modal__overlay",role:"dialog","aria-modal":"true","aria-labelledby":"execute-modal-title",ref:T,onMouseDown:Q=>{Q.target===T.current&&i()},children:d.jsxs("div",{className:"execute-modal__container",ref:P,"aria-busy":p,children:[d.jsxs("div",{className:"execute-modal__left",children:[d.jsxs("div",{className:"execute-modal__header",children:[d.jsx("div",{id:"execute-modal-title",className:"execute-modal__title",children:e||"Execute"}),d.jsxs("div",{className:"execute-modal__controls",children:[R&&d.jsx("button",{className:"btn execute-modal__ai-btn",title:b?"AI prefill based on schema":"AI key not configured in Chat settings",onClick:te,disabled:!b||S,children:S?"Filling…":"✧ Prefill"}),d.jsxs("label",{className:"execute-modal__eval",children:[d.jsx("input",{type:"checkbox",checked:u,onChange:Q=>f(Q.target.checked)}),"Eval input"]}),d.jsx("button",{className:`btn btn-primary ${p?"execute-modal__loading":""}`,onClick:Y,disabled:p,title:p?"Running...":"Run task (Ctrl+Enter)",children:p?"Running...":"Run"}),d.jsx("button",{className:"btn",onClick:i,children:"Close"})]})]}),d.jsx("div",{className:"execute-modal__body",children:V?d.jsxs("div",{className:"execute-modal__form-layout",children:[d.jsxs("div",{className:"execute-modal__form-section",children:[d.jsx("div",{className:"execute-modal__section-header",children:d.jsx("span",{className:"execute-modal__section-title",children:"Form"})}),d.jsx("div",{className:"execute-modal__form",children:R&&R.properties&&Object.entries(R.properties).map(([Q,j])=>pe(Q,j))})]}),d.jsxs("div",{className:"execute-modal__json-preview",children:[d.jsxs("div",{className:"execute-modal__section-header",children:[d.jsx("span",{className:"execute-modal__section-title",children:"JSON Preview"}),d.jsx("button",{className:`execute-modal__copy-btn${F?" execute-modal__copy-btn--copied":""}`,onClick:async()=>{await km(o||"")&&(H(!0),setTimeout(()=>H(!1),1200))},title:F?"Copied!":"Copy JSON","aria-label":F?"Copied":"Copy JSON",type:"button"})]}),d.jsx("textarea",{className:"execute-modal__textarea execute-modal__textarea--preview",value:o,onChange:Q=>c(Q.target.value),onKeyDown:Q=>{(Q.ctrlKey||Q.metaKey)&&Q.key==="Enter"&&(Q.preventDefault(),p||Y())},spellCheck:!1,placeholder:"JSON will appear here as you fill the form..."})]})]}):d.jsxs("div",{className:"execute-modal__json-only",children:[d.jsxs("div",{className:"execute-modal__section-header",children:[d.jsx("span",{className:"execute-modal__section-title",children:"Input JSON"}),t&&d.jsx("div",{className:"execute-modal__schema-hint",children:d.jsx("span",{title:`Schema: ${t.slice(0,100)}${t.length>100?"...":""}`,children:"📋"})})]}),d.jsx("textarea",{className:"execute-modal__textarea",value:o,onChange:Q=>c(Q.target.value),onKeyDown:Q=>{(Q.ctrlKey||Q.metaKey)&&Q.key==="Enter"&&(Q.preventDefault(),p||Y())},spellCheck:!1,placeholder:"Enter JSON input..."})]})})]}),d.jsxs("div",{className:"execute-modal__right",children:[d.jsx("div",{className:"execute-modal__response-header",children:"Response"}),d.jsx("div",{className:"execute-modal__response-body",tabIndex:0,children:p?d.jsx("div",{className:"execute-modal__response-loading",children:"Running task..."}):d.jsxs(d.Fragment,{children:[w&&d.jsx("pre",{className:"execute-modal__error",children:w}),O&&d.jsx("pre",{className:"execute-modal__code",children:O}),!O&&!w&&d.jsx("div",{className:"execute-modal__empty",children:"No response yet"})]})})]})]})});return iu.createPortal(z,document.body)},Tm=({dependencies:n,emittedEvents:e=[],className:t="",title:s="🔗 Dependencies & Relations"})=>n.tasks.length===0&&n.hooks.length===0&&n.resources.length===0&&n.errors.length===0&&e.length===0?null:d.jsxs("div",{className:`dependencies-section ${t}`,children:[d.jsx("h4",{className:"dependencies-section__title",children:s}),d.jsxs("div",{className:"dependencies-section__grid",children:[n.tasks.length>0&&d.jsxs("div",{className:"dependencies-section__category",children:[d.jsx("h5",{children:"Task Dependencies"}),d.jsx("div",{className:"dependencies-section__items",children:n.tasks.map(i=>d.jsxs("a",{href:`#element-${i.id}`,className:"dependencies-section__item dependencies-section__item--task dependencies-section__link",children:[d.jsx("div",{className:"title title--task",children:i.meta?.title||we(i.id)}),d.jsx("div",{className:"id",children:i.id})]},i.id))})]}),n.hooks.length>0&&d.jsxs("div",{className:"dependencies-section__category",children:[d.jsx("h5",{children:"Hook Dependencies"}),d.jsx("div",{className:"dependencies-section__items",children:n.hooks.map(i=>d.jsxs("a",{href:`#element-${i.id}`,className:"dependencies-section__item dependencies-section__item--hook dependencies-section__link",children:[d.jsx("div",{className:"title title--hook",children:i.meta?.title||we(i.id)}),d.jsx("div",{className:"id",children:i.id})]},i.id))})]}),n.resources.length>0&&d.jsxs("div",{className:"dependencies-section__category",children:[d.jsx("h5",{children:"Resource Dependencies"}),d.jsx("div",{className:"dependencies-section__items",children:n.resources.map(i=>d.jsxs("a",{href:`#element-${i.id}`,className:"dependencies-section__item dependencies-section__item--resource dependencies-section__link",children:[d.jsx("div",{className:"title title--resource",children:i.meta?.title||we(i.id)}),d.jsx("div",{className:"id",children:i.id})]},i.id))})]}),n.errors.length>0&&d.jsxs("div",{className:"dependencies-section__category",children:[d.jsx("h5",{children:"Error Dependencies"}),d.jsx("div",{className:"dependencies-section__items",children:n.errors.map(i=>d.jsxs("a",{href:`#element-${i.id}`,className:"dependencies-section__item dependencies-section__item--error dependencies-section__link",children:[d.jsx("div",{className:"title title--error",children:i.meta?.title||we(i.id)}),d.jsx("div",{className:"id",children:i.id})]},i.id))})]}),e.length>0&&d.jsxs("div",{className:"dependencies-section__category",children:[d.jsx("h5",{children:"Emitted Events"}),d.jsx("div",{className:"dependencies-section__items",children:e.map(i=>d.jsxs("a",{href:`#element-${i.id}`,className:"dependencies-section__item dependencies-section__item--event dependencies-section__link",children:[d.jsx("div",{className:"title title--event",children:i.meta?.title||we(i.id)}),d.jsx("div",{className:"id",children:i.id})]},i.id))})]})]})]});function lr(...n){return n.filter(Boolean).join(" ")}const yl=({prefix:n,elementId:e,title:t,id:s,description:i,actions:r,meta:o,className:c,headerClassName:u,contentClassName:f,children:p})=>{const g=se.useMemo(()=>i?typeof i=="string"||typeof i=="number"?d.jsx("p",{className:`${n}__description`,children:i}):d.jsx("div",{className:`${n}__description`,children:i}):null,[i,n]);return d.jsxs("div",{id:`element-${e}`,className:lr(n,c),children:[d.jsx("div",{className:lr(`${n}__header`,u),children:d.jsxs("div",{className:`${n}__header-content`,children:[d.jsxs("div",{className:"main",children:[d.jsx("h3",{className:`${n}__title`,children:t}),s&&d.jsx("div",{className:`${n}__id`,children:s}),g]}),r&&d.jsx("div",{className:`${n}__actions`,children:r}),o&&d.jsx("div",{className:"meta",children:o})]})}),d.jsx("div",{className:lr(`${n}__content`,f),children:p})]})},Lt=({prefix:n,title:e,children:t,className:s,contentClassName:i})=>d.jsxs("div",{className:lr(`${n}__section`,s),children:[d.jsx("h4",{className:`${n}__section__title`,children:e}),d.jsx("div",{className:lr(`${n}__section__content`,i),children:t})]}),Ze=({prefix:n,label:e,children:t,className:s,valueClassName:i})=>d.jsxs("div",{className:lr(`${n}__info-block`,s),children:[d.jsx("div",{className:"label",children:e}),d.jsx("div",{className:lr("value",i),children:t})]}),hM=({task:n,introspector:e})=>{const t=e.getDependencies(n),s=e.getMiddlewareUsagesForTask(n.id),i=e.getEmittedEvents(n),r=e.getTunnelForTask(n.id),o=!!r,c=[],u=c.length>0?c.map(te=>e.getAsyncContext(te)).filter(Boolean):[],[f,p]=se.useState(!1),[g,O]=se.useState(null),[v,w]=se.useState(!1),[k,S]=se.useState(null),[$,b]=se.useState(!1),[C,T]=se.useState(null),[P,N]=se.useState(null),[A,X]=se.useState(!1),[F,H]=se.useState(null),[J,R]=se.useState(!1);async function V(){if(n?.id){p(!0),w(!0),S(null);try{const te=await Qt(Ix,{id:n.id});O(te?.task?.fileContents??null)}catch(te){S(te?.message??"Failed to load file"),O(null)}finally{w(!1)}}}se.useEffect(()=>{const te=pe=>{const ce=pe;ce?.detail?.type==="task"&&ce.detail.id===n.id&&R(!0)};return window.addEventListener("docs:execute-element",te),()=>window.removeEventListener("docs:execute-element",te)},[n.id]);async function U(){if(n?.id){b(!0),X(!0),H(null);try{const[te,pe]=await Promise.all([Qt(xA,{id:n.id}),Qt(Ix,{id:n.id})]);T(te?.task?.coverage),N(pe?.task?.fileContents)}catch(te){H(te?.message??"Failed to load coverage data"),T(null),N(null)}finally{X(!1)}}}return d.jsxs(yl,{prefix:"task-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[n.meta?.title||we(n.id),o&&d.jsx("span",{className:"task-card__tunnel-badge",title:`Tunneled by ${r?.id}`,children:"🚇"})]}),id:n.id,description:n.meta?.description,actions:d.jsx("button",{type:"button",className:"btn",onClick:()=>R(!0),title:"Run Task",children:"Run"}),children:[d.jsxs("div",{className:"task-card__grid",children:[d.jsxs(Lt,{prefix:"task-card",title:"Overview",children:[d.jsx(Ze,{prefix:"task-card",label:"File Path:",children:n.filePath?d.jsx("a",{type:"button",onClick:V,title:"View file contents",children:cn(n.filePath)}):cn(n.filePath)}),n.coverage?.percentage!==void 0&&d.jsxs(Ze,{prefix:"task-card",label:"Coverage:",children:[d.jsxs("span",{style:{fontWeight:600,color:n.coverage.percentage>=100?"#2e7d32":n.coverage.percentage>=80?"#ef6c00":"#c62828"},children:[n.coverage.percentage,"%"]})," ",d.jsx("button",{type:"button",onClick:U,title:"View coverage details",children:"(View Coverage)"})]}),n.registeredBy&&d.jsx(Ze,{prefix:"task-card",label:"Registered By:",children:d.jsx("a",{href:`#element-${n.registeredBy}`,className:"task-card__registrar-link",children:n.registeredBy})}),d.jsx(Ze,{prefix:"task-card",label:"Emits Events:",children:n.emits&&n.emits.length>0?d.jsx("div",{className:"task-card__emits-events",children:n.emits.map(te=>{const pe=e.getEvent(te);return pe?d.jsx("a",{href:`#element-${pe.id}`,className:"task-card__emit-event-link",children:te},te):d.jsx("span",{className:"task-card__emit-event-text",children:te},te)})}):d.jsx("span",{className:"task-card__no-events",children:"None"})}),n.tags&&n.tags.length>0&&d.jsx(Ze,{prefix:"task-card",label:"Tags:",children:d.jsx("div",{className:"task-card__tags",children:e.getTagsByIds(n.tags).map(te=>d.jsx("a",{href:`#element-${te.id}`,className:"clean-button",children:we(te.id)},te.id))})}),n.overriddenBy&&d.jsxs("div",{className:"task-card__alert task-card__alert--warning",children:[d.jsx("div",{className:"title",children:"Overridden By:"}),d.jsx("div",{className:"content",children:n.overriddenBy})]})]}),d.jsx(Lt,{prefix:"task-card",title:"Input Schema",contentClassName:"task-card__config",children:d.jsx(pr,{schemaString:n.inputSchema})}),o&&d.jsxs(Lt,{prefix:"task-card",title:"🚇 Tunnel Information",className:"task-card__tunnel-info",contentClassName:"task-card__tunnel-info__content",children:[d.jsx(Ze,{prefix:"task-card",label:"Tunneled By:",children:d.jsx("a",{href:`#element-${r?.id}`,className:"task-card__tunnel-link",children:r?.meta?.title||we(r?.id||"Unknown")})}),r?.tunnelInfo&&d.jsxs(d.Fragment,{children:[d.jsx(Ze,{prefix:"task-card",label:"Tunnel Mode:",children:r.tunnelInfo.mode}),d.jsx(Ze,{prefix:"task-card",label:"Transport:",children:r.tunnelInfo.transport}),r.tunnelInfo.endpoint&&d.jsx(Ze,{prefix:"task-card",label:"Remote Endpoint:",children:r.tunnelInfo.endpoint})]})]}),u.length>0&&d.jsx(Lt,{prefix:"task-card",title:"🔄 Async Contexts",className:"task-card__context-info",contentClassName:"task-card__context-info__content",children:d.jsx(Ze,{prefix:"task-card",label:"Uses Contexts:",children:d.jsx("div",{className:"task-card__contexts",children:u.map(te=>te&&d.jsx("a",{href:`#element-${te.id}`,className:"task-card__context-link",children:te.meta?.title||we(te.id)},te.id))})})})]}),t.errors.length>0&&d.jsx(Lt,{prefix:"task-card",title:"Error Dependencies",children:d.jsx("div",{className:"task-card__error-dependencies",children:t.errors.map(te=>d.jsxs("a",{href:`#element-${te.id}`,className:"task-card__relation-item task-card__relation-item--error task-card__relation-link",children:[d.jsx("div",{className:"title title--error",children:te.meta?.title||we(te.id)}),d.jsx("div",{className:"id",children:te.id})]},te.id))})}),(t.tasks.length>0||t.hooks.length>0||t.resources.length>0||i.length>0)&&d.jsx("div",{className:"task-card__relations",children:d.jsx(Tm,{dependencies:{tasks:t.tasks,hooks:t.hooks,resources:t.resources,errors:[]},emittedEvents:i,className:"task-card__relations"})}),s.length>0&&d.jsxs("div",{className:"task-card__middleware",children:[d.jsx("h4",{className:"task-card__middleware__title",children:"Middleware Configuration"}),d.jsx("div",{className:"task-card__middleware__items",children:s.map(te=>d.jsxs("div",{className:"task-card__middleware__item",children:[d.jsxs("a",{href:`#element-${te.id}`,className:"task-card__middleware-link",children:[d.jsx("div",{className:"title",children:te.node.meta?.title||we(te.id)}),d.jsx("div",{className:"id",children:te.id})]}),te.config&&d.jsxs("div",{children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:te.config})]})]},te.id))})]}),d.jsx(fr,{element:n,introspector:e,className:"task-card__tags-section"}),d.jsx(un,{title:n.meta?.title||we(n.id),subtitle:n.filePath||void 0,isOpen:f,onClose:()=>p(!1),code:v?"Loading...":k?`Error: ${k}`:g,enableEdit:!!n.filePath,saveOnFile:n.filePath||null}),d.jsx(pb,{isOpen:J,title:n.meta?.title||we(n.id),schemaString:n.inputSchema,onClose:()=>R(!1),onInvoke:async({inputJson:te})=>{const pe=`
|
|
168
|
+
mutation InvokeTask($taskId: ID!, $inputJson: String, $evalInput: Boolean) {
|
|
169
|
+
invokeTask(taskId: $taskId, inputJson: $inputJson, evalInput: $evalInput) {
|
|
170
|
+
success
|
|
171
|
+
error
|
|
172
|
+
result
|
|
173
|
+
invocationId
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
`;try{const ce=await Qt(pe,{taskId:n.id,inputJson:te?.trim()||void 0,evalInput:!1});return{output:ce.invokeTask.result??void 0,error:ce.invokeTask.error??void 0}}catch(ce){return{error:ce?.message??String(ce)}}}}),d.jsx(un,{title:`${n.meta?.title||we(n.id)} — Coverage Details`,subtitle:n.filePath||void 0,isOpen:$,onClose:()=>b(!1),code:A?"Loading coverage data...":F?`Error: ${F}`:P,enableEdit:!1,saveOnFile:null,coverageData:C,showCoverage:!0})]})},fM=({resource:n,introspector:e})=>{const t=e.getMiddlewareUsagesForResource(n.id),s=e.getTasksUsingResource(n.id),i=e.getDependencies(n),r=[...e.getTasksByIds(n.registers),...e.getResourcesByIds(n.registers),...e.getMiddlewaresByIds(n.registers),...e.getEventsByIds(n.registers),...e.getHooksByIds(n.registers)],o=n.tags?.includes("runner-dev.tunnel")||!1,c=o?e.getTunneledTasks(n.id):[],u=o?e.getTunneledEvents(n.id):[],[f,p]=se.useState(!1),[g,O]=se.useState(null),[v,w]=se.useState(!1),[k,S]=se.useState(null),[$,b]=se.useState(!1),[C,T]=se.useState(null),[P,N]=se.useState(null),[A,X]=se.useState(!1),[F,H]=se.useState(null);async function J(){if(n?.id){p(!0),w(!0),S(null);try{const V=await Qt(Lx,{id:n.id});O(V?.resource?.fileContents??null)}catch(V){S(V?.message??"Failed to load file"),O(null)}finally{w(!1)}}}async function R(){if(n?.id){b(!0),X(!0),H(null);try{const[V,U]=await Promise.all([Qt(wA,{id:n.id}),Qt(Lx,{id:n.id})]);T(V?.resource?.coverage),N(U?.resource?.fileContents)}catch(V){H(V?.message??"Failed to load coverage data"),T(null),N(null)}finally{X(!1)}}}return d.jsxs(yl,{prefix:"resource-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[n.meta?.title||we(n.id),o&&d.jsx("span",{className:"resource-card__tunnel-badge",title:"Tunnel Resource",children:"🚇"})]}),id:n.id,description:n.meta?.description,children:[d.jsxs("div",{className:"resource-card__grid",children:[d.jsxs(Lt,{prefix:"resource-card",title:"Overview",children:[d.jsx(Ze,{prefix:"resource-card",label:"File Path:",children:n.filePath?d.jsx("a",{type:"button",onClick:J,title:"View file contents",children:cn(n.filePath)}):cn(n.filePath)}),n.coverage?.percentage!==void 0&&d.jsxs(Ze,{prefix:"resource-card",label:"Coverage:",children:[d.jsxs("span",{style:{fontWeight:600,color:n.coverage.percentage>=100?"#2e7d32":n.coverage.percentage>=80?"#ef6c00":"#c62828"},children:[n.coverage.percentage,"%"]})," ",d.jsx("button",{type:"button",onClick:R,title:"View coverage details",children:"(View Coverage)"})]}),n.registeredBy&&d.jsx(Ze,{prefix:"resource-card",label:"Registered By:",children:d.jsx("a",{href:`#element-${n.registeredBy}`,className:"resource-card__registrar-link",children:n.registeredBy})}),n.context&&d.jsx(Ze,{prefix:"resource-card",label:"Context:",children:n.context}),d.jsxs(Ze,{prefix:"resource-card",label:"Used By Tasks:",children:[s.length," task(s)"]}),n.tags&&n.tags.length>0&&d.jsx(Ze,{prefix:"resource-card",label:"Tags:",children:d.jsx("div",{className:"resource-card__tags",children:e.getTagsByIds(n.tags).map(V=>d.jsx("a",{href:`#element-${V.id}`,className:"clean-button",children:we(V.id)},V.id))})}),n.overriddenBy&&d.jsxs("div",{className:"resource-card__alert resource-card__alert--warning",children:[d.jsx("div",{className:"title",children:"Overridden By:"}),d.jsx("div",{className:"content",children:n.overriddenBy})]})]}),d.jsxs(Lt,{prefix:"resource-card",title:"Configuration",contentClassName:"resource-card__config",children:[d.jsxs("div",{className:"resource-card__config__subsection",children:[d.jsx("h5",{children:"Current Configuration"}),d.jsx("pre",{className:"resource-card__config__block",children:U_(n.config)})]}),d.jsxs("div",{className:"resource-card__config__subsection",children:[d.jsx("h5",{children:"Configuration Schema"}),d.jsx(pr,{schemaString:n.configSchema})]})]}),o&&d.jsxs(Lt,{prefix:"resource-card",title:"🚇 Tunnel Configuration",className:"resource-card__tunnel-section",contentClassName:"resource-card__tunnel",children:[d.jsxs("div",{className:"resource-card__tunnel__overview",children:[d.jsx(Ze,{prefix:"resource-card",label:"Mode:",children:d.jsx("span",{className:"resource-card__tunnel__mode",children:n.tunnelInfo?.mode||"Unknown"})}),d.jsx(Ze,{prefix:"resource-card",label:"Transport:",children:n.tunnelInfo?.transport||"Unknown"}),n.tunnelInfo?.endpoint&&d.jsx(Ze,{prefix:"resource-card",label:"Endpoint:",children:n.tunnelInfo.endpoint}),n.tunnelInfo?.auth&&d.jsx(Ze,{prefix:"resource-card",label:"Authentication:",children:n.tunnelInfo.auth})]}),(c.length>0||u.length>0)&&d.jsxs("div",{className:"resource-card__tunnel__routes",children:[d.jsx("h5",{children:"Tunneled Elements"}),d.jsxs("div",{className:"resource-card__tunnel__elements",children:[c.length>0&&d.jsxs("div",{className:"resource-card__tunnel__category",children:[d.jsxs("h6",{children:["Tasks (",c.length,")"]}),d.jsx("div",{className:"resource-card__tunnel__list",children:c.map(V=>d.jsxs("a",{href:`#element-${V.id}`,className:"resource-card__tunnel__item resource-card__tunnel__item--task",children:[d.jsx("div",{className:"title",children:V.meta?.title||we(V.id)}),d.jsx("div",{className:"id",children:V.id})]},V.id))})]}),u.length>0&&d.jsxs("div",{className:"resource-card__tunnel__category",children:[d.jsxs("h6",{children:["Events (",u.length,")"]}),d.jsx("div",{className:"resource-card__tunnel__list",children:u.map(V=>d.jsxs("a",{href:`#element-${V.id}`,className:"resource-card__tunnel__item resource-card__tunnel__item--event",children:[d.jsx("div",{className:"title",children:V.meta?.title||we(V.id)}),d.jsx("div",{className:"id",children:V.id})]},V.id))})]})]})]})]})]}),(i.tasks.length>0||i.hooks.length>0||i.resources.length>0||i.errors.length>0)&&d.jsx("div",{className:"resource-card__relations",children:d.jsx(Tm,{dependencies:i,className:"resource-card__dependencies-section"})}),(s.length>0||r.length>0)&&d.jsxs("div",{className:"resource-card__relations",children:[d.jsx("h4",{className:"resource-card__relations__title",children:"Resource Relations"}),d.jsxs("div",{className:"resource-card__relations__grid",children:[s.length>0&&d.jsxs("div",{className:"resource-card__relations__category",children:[d.jsx("h5",{children:"Used By Tasks"}),d.jsx("div",{className:"resource-card__relations__items",children:s.map(V=>d.jsxs("a",{href:`#element-${V.id}`,className:"resource-card__relation-item resource-card__relation-item--task resource-card__relation-link",children:[d.jsx("div",{className:"title title--task",children:V.meta?.title||we(V.id)}),d.jsx("div",{className:"id",children:V.id})]},V.id))})]}),r.length>0&&d.jsxs("div",{className:"resource-card__relations__category",children:[d.jsx("h5",{children:"Registered Elements"}),d.jsx("div",{className:"resource-card__relations__items",children:r.map(V=>d.jsxs("a",{href:`#element-${V.id}`,className:"resource-card__relation-item resource-card__relation-item--registered resource-card__relation-link",children:[d.jsx("div",{className:"title title--registered",children:V.meta?.title||we(V.id)}),d.jsx("div",{className:"id",children:V.id})]},V.id))})]})]})]}),t.length>0&&d.jsxs("div",{className:"resource-card__middleware",children:[d.jsx("h4",{className:"resource-card__middleware__title",children:"Middleware Configuration"}),d.jsx("div",{className:"resource-card__middleware__items",children:t.map(V=>d.jsxs("a",{href:`#element-${V.id}`,className:"resource-card__middleware__item resource-card__middleware-link",children:[d.jsx("div",{className:"title",children:V.node.meta?.title||we(V.id)}),d.jsx("div",{className:"id",children:V.id}),V.config&&d.jsxs("div",{children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:V.config})]})]},V.id))})]}),d.jsx(fr,{element:n,introspector:e,className:"resource-card__tags-section"}),d.jsx(un,{title:n.meta?.title||we(n.id),subtitle:n.filePath||void 0,isOpen:f,onClose:()=>p(!1),code:v?"Loading...":k?`Error: ${k}`:g,enableEdit:!!n.filePath,saveOnFile:n.filePath||null}),d.jsx(un,{title:`${n.meta?.title||we(n.id)} — Coverage Details`,subtitle:n.filePath||void 0,isOpen:$,onClose:()=>b(!1),code:A?"Loading coverage data...":F?`Error: ${F}`:P,enableEdit:!1,saveOnFile:null,coverageData:C,showCoverage:!0})]})},pM=({middleware:n,introspector:e})=>{const t=e.getTasksUsingMiddlewareDetailed(n.id),s=e.getResourcesUsingMiddlewareDetailed(n.id),i=e.getMiddlewareEmittedEvents(n.id),[r,o]=se.useState(!1),[c,u]=se.useState(null),[f,p]=se.useState(!1),[g,O]=se.useState(null);async function v(){if(n?.id){o(!0),p(!0),O(null);try{const k=await Qt(kA,{id:n.id});u(k?.middleware?.fileContents??null)}catch(k){O(k?.message??"Failed to load file"),u(null)}finally{p(!1)}}}const w=se.useMemo(()=>{const k=[];if(n.meta?.description&&k.push(d.jsx("p",{children:n.meta.description},"description")),n.global?.enabled&&k.push(d.jsxs("div",{className:"middleware-card__global-badges",children:[d.jsx("span",{className:"middleware-card__global-badge",children:"Global"}),n.global.tasks&&d.jsx("span",{className:"middleware-card__global-badge",children:"Tasks"}),n.global.resources&&d.jsx("span",{className:"middleware-card__global-badge",children:"Resources"})]},"badges")),k.length!==0)return d.jsx(d.Fragment,{children:k})},[n]);return d.jsxs(yl,{prefix:"middleware-card",elementId:n.id,title:n.meta?.title||we(n.id),id:n.id,description:w,meta:d.jsx("div",{className:`middleware-card__type-badge middleware-card__type-badge--${n.type}`,children:n.type==="task"?"Task":"Resource"}),children:[d.jsxs("div",{className:"middleware-card__grid",children:[d.jsxs(Lt,{prefix:"middleware-card",title:"Overview",children:[d.jsx(Ze,{prefix:"middleware-card",label:"File Path:",children:n.filePath?d.jsx("a",{type:"button",onClick:v,title:"View file contents",children:cn(n.filePath)}):cn(n.filePath)}),n.registeredBy&&d.jsx(Ze,{prefix:"middleware-card",label:"Registered By:",children:d.jsx("a",{href:`#element-${n.registeredBy}`,className:"middleware-card__registrar-link",children:n.registeredBy})}),d.jsx(Ze,{prefix:"middleware-card",label:"Usage Statistics:",children:d.jsxs("div",{className:"middleware-card__usage-stats",children:[d.jsxs("div",{className:"middleware-card__usage-stat middleware-card__usage-stat--tasks",children:[d.jsx("div",{className:"value value--tasks",children:t.length}),d.jsx("div",{className:"label label--tasks",children:"Tasks"})]}),d.jsxs("div",{className:"middleware-card__usage-stat middleware-card__usage-stat--resources",children:[d.jsx("div",{className:"value value--resources",children:s.length}),d.jsx("div",{className:"label label--resources",children:"Resources"})]}),d.jsxs("div",{className:"middleware-card__usage-stat middleware-card__usage-stat--events",children:[d.jsx("div",{className:"value value--events",children:i.length}),d.jsx("div",{className:"label label--events",children:"Events"})]})]})}),n.global?.enabled&&d.jsxs("div",{className:"middleware-card__global-config",children:[d.jsx("div",{className:"title",children:"Global Middleware Configuration"}),d.jsxs("div",{className:"content",children:[d.jsxs("div",{className:"config-item",children:[d.jsx("strong",{children:"Tasks:"})," ",n.global.tasks?"Enabled":"Disabled"]}),d.jsxs("div",{className:"config-item",children:[d.jsx("strong",{children:"Resources:"})," ",n.global.resources?"Enabled":"Disabled"]})]})]}),n.tags&&n.tags.length>0&&d.jsx(Ze,{prefix:"middleware-card",label:"Tags:",children:d.jsx("div",{className:"middleware-card__tags",children:e.getTagsByIds(n.tags).map(k=>d.jsx("a",{href:`#element-${k.id}`,className:"clean-button",children:we(k.id)},k.id))})}),n.overriddenBy&&d.jsxs("div",{className:"middleware-card__alert middleware-card__alert--warning",children:[d.jsx("div",{className:"title",children:"Overridden By:"}),d.jsx("div",{className:"content",children:n.overriddenBy})]})]}),d.jsx(Lt,{prefix:"middleware-card",title:"Configuration Schema",contentClassName:"middleware-card__config",children:d.jsx(pr,{schemaString:n.configSchema})})]}),(t.length>0||s.length>0)&&d.jsxs("div",{className:"middleware-card__usage-details",children:[d.jsx("h4",{className:"middleware-card__usage-details__title",children:"Usage Details"}),d.jsxs("div",{className:"middleware-card__usage-details__grid",children:[t.length>0&&d.jsxs("div",{className:"middleware-card__usage-details__category",children:[d.jsx("h5",{children:"Used by Tasks"}),d.jsx("div",{className:"middleware-card__usage-details__items",children:t.map(k=>d.jsxs("a",{href:`#element-${k.id}`,className:"middleware-card__usage-item middleware-card__usage-link",children:[d.jsxs("div",{className:"middleware-card__usage-item__header",children:[d.jsxs("div",{className:"main",children:[d.jsx("div",{className:"title",children:k.node.meta?.title||we(k.id)}),d.jsx("div",{className:"id",children:k.id})]}),k.config&&d.jsx("span",{className:"configured-badge configured-badge--task",children:"Configured"})]}),k.config&&d.jsxs("div",{className:"middleware-card__usage-item__config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-code",children:k.config})]})]},k.id))})]}),s.length>0&&d.jsxs("div",{className:"middleware-card__usage-details__category",children:[d.jsx("h5",{children:"Used by Resources"}),d.jsx("div",{className:"middleware-card__usage-details__items",children:s.map(k=>d.jsxs("a",{href:`#element-${k.id}`,className:"middleware-card__usage-item middleware-card__usage-link",children:[d.jsxs("div",{className:"middleware-card__usage-item__header",children:[d.jsxs("div",{className:"main",children:[d.jsx("div",{className:"title",children:k.node.meta?.title||we(k.id)}),d.jsx("div",{className:"id",children:k.id})]}),k.config&&d.jsx("span",{className:"configured-badge configured-badge--resource",children:"Configured"})]}),k.config&&d.jsxs("div",{className:"middleware-card__usage-item__config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-code",children:k.config})]})]},k.id))})]})]})]}),i.length>0&&d.jsxs("div",{className:"middleware-card__events",children:[d.jsx("h4",{className:"middleware-card__events__title",children:"Events Emitted by Usage"}),d.jsx("div",{className:"middleware-card__events__items",children:i.map(k=>d.jsxs("a",{href:`#element-${k.id}`,className:"middleware-card__event-item middleware-card__event-link",children:[d.jsx("div",{className:"title",children:k.meta?.title||we(k.id)}),d.jsx("div",{className:"id",children:k.id})]},k.id))})]}),t.length===0&&s.length===0&&d.jsx("div",{className:"middleware-card__empty-state",children:"This middleware is not currently used by any tasks or resources."}),d.jsx(fr,{element:n,introspector:e,className:"middleware-card__tags-section"}),d.jsx(un,{title:n.meta?.title||we(n.id),subtitle:n.filePath||void 0,isOpen:r,onClose:()=>o(!1),code:f?"Loading...":g?`Error: ${g}`:c,enableEdit:!!n.filePath,saveOnFile:n.filePath||null})]})},mM=({event:n,introspector:e})=>{const t=e.getEmittersOfEvent(n.id),s=e.getHooksOfEvent(n.id),i=n.id==="*",[r,o]=se.useState(!1),[c,u]=se.useState(null),[f,p]=se.useState(!1),[g,O]=se.useState(null);async function v(){if(n?.id){o(!0),p(!0),O(null);try{const b=await Qt(SA,{id:n.id});u(b?.event?.fileContents??null)}catch(b){O(b?.message??"Failed to load file"),u(null)}finally{p(!1)}}}const k=t.length===0&&s.length===0?{text:"Unused",className:"status-unused"}:t.length===0?{text:"No Emitters",className:"status-no-emitters"}:s.length===0?{text:"No Listeners",className:"status-no-listeners"}:{text:"Active",className:"status-active"},[S,$]=se.useState(!1);return se.useEffect(()=>{const b=C=>{const T=C;T?.detail?.type==="event"&&T.detail.id===n.id&&$(!0)};return window.addEventListener("docs:execute-element",b),()=>window.removeEventListener("docs:execute-element",b)},[n.id]),d.jsxs(yl,{prefix:"event-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[i?n.meta?.title||"Global Event":n.meta?.title||we(n.id),i&&d.jsx("span",{className:"event-card__global-badge",children:"GLOBAL"})]}),id:i?void 0:n.id,description:n.meta?.description,meta:d.jsxs("div",{className:"event-card__stats",children:[d.jsxs("div",{className:"event-card__stat-badge",children:[d.jsx("span",{className:"icon",children:"Emit"}),d.jsxs("span",{className:"count",children:["Emitters: ",t.length]})]}),d.jsxs("div",{className:"event-card__stat-badge",children:[d.jsx("span",{className:"icon",children:"Hook"}),d.jsxs("span",{className:"count",children:["Hooks: ",s.length]})]}),d.jsx("div",{className:"event-card__run",children:d.jsx("button",{type:"button",className:"btn",onClick:()=>$(!0),title:"Invoke Event",children:"Emit"})})]}),children:[d.jsxs("div",{className:"event-card__grid",children:[d.jsxs(Lt,{prefix:"event-card",title:"Overview",children:[i&&d.jsxs("div",{className:"event-card__global-message",children:[d.jsxs("div",{className:"event-card__global-message__header",children:[d.jsx("span",{className:"icon",children:"Global"}),d.jsx("h5",{className:"title",children:"Global/System Event"})]}),d.jsx("div",{className:"event-card__global-message__content",children:"This event is part of the global/system namespace and can be used across the entire application lifecycle."})]}),d.jsx(Ze,{prefix:"event-card",label:"File Path:",children:n.filePath?d.jsx("a",{type:"button",onClick:v,title:"View file contents",children:cn(n.filePath)}):cn(n.filePath)}),n.registeredBy&&d.jsx(Ze,{prefix:"event-card",label:"Registered By:",children:d.jsx("a",{href:`#element-${n.registeredBy}`,className:"event-card__registrar-link",children:n.registeredBy})}),d.jsx(Ze,{prefix:"event-card",label:"Event Status:",valueClassName:`value--status ${k.className}`,children:k.text}),n.listenedToBy&&n.listenedToBy.length>0&&d.jsx(Ze,{prefix:"event-card",label:"Listened To By:",children:d.jsx("div",{className:"event-card__listeners-list",children:n.listenedToBy.map(b=>d.jsx("a",{href:`#element-${b}`,className:"event-card__listener-item",children:d.jsxs("div",{className:"event-card__listener-item__content",children:[d.jsx("div",{className:"title",children:we(b)}),d.jsx("div",{className:"id",children:b})]})},b))})}),n.tags&&n.tags.length>0&&d.jsx(Ze,{prefix:"event-card",label:"Tags:",children:d.jsx("div",{className:"event-card__tags",children:e.getTagsByIds(n.tags).map(b=>d.jsx("a",{href:`#element-${b.id}`,className:"clean-button",children:we(b.id)},b.id))})}),(!i&&t.length===0||s.length===0)&&d.jsxs("div",{className:`event-card__alert ${t.length===0?"event-card__alert--danger":"event-card__alert--warning"}`,children:[d.jsx("div",{className:"title",children:!i&&t.length===0?"No Emitters Found":"No Listeners Found"}),d.jsx("div",{className:"content",children:!i&&t.length===0?"This event is not emitted by any tasks, hooks, or resources.":"This event has no hooks listening to it."})]})]}),d.jsx(Lt,{prefix:"event-card",title:"Payload Schema",contentClassName:"event-card__config",children:d.jsx(pr,{schemaString:n.payloadSchema})})]}),d.jsxs("div",{className:"event-card__flow",children:[d.jsx("h4",{className:"event-card__flow__title",children:"Event Flow & Statistics"}),d.jsxs("div",{className:"event-card__metrics",children:[d.jsxs("div",{className:`event-card__metric ${t.length>0?"event-card__metric--active":"event-card__metric--danger"}`,children:[d.jsx("div",{className:"value",children:t.length}),d.jsx("div",{className:"label",children:"Emitters"})]}),d.jsxs("div",{className:`event-card__metric ${s.length>0?"event-card__metric--active":"event-card__metric--warning"}`,children:[d.jsx("div",{className:"value",children:s.length}),d.jsx("div",{className:"label",children:"Listeners"})]})]}),d.jsxs("div",{className:"event-card__participants",children:[t.length>0&&d.jsxs("div",{className:"event-card__participant-section",children:[d.jsx("h5",{children:"Event Emitters"}),d.jsx("div",{className:"event-card__participant-section__items",children:t.map(b=>{let C="event-card__emitter",T="📤";return"emits"in b&&Array.isArray(b.emits)?"dependsOn"in b&&"middleware"in b?(C+=" event-card__emitter--task",T="Task"):"event"in b&&(C+=" event-card__emitter--hook",T="Hook"):"config"in b&&(C+=" event-card__emitter--resource",T="Resource"),d.jsx("a",{href:`#element-${b.id}`,className:`${C} event-card__emitter-link`,children:d.jsxs("div",{className:"event-card__emitter__content",children:[d.jsx("span",{children:T}),d.jsxs("div",{className:"event-card__emitter__info",children:[d.jsx("div",{className:`title ${C.includes("--task")?"title--task":C.includes("--hook")?"title--hook":"title--resource"}`,children:b.meta?.title||we(b.id)}),d.jsx("div",{className:"id",children:b.id})]})]})},b.id)})})]}),s.length>0&&d.jsxs("div",{className:"event-card__participant-section",children:[d.jsx("h5",{children:"Event Listeners"}),d.jsx("div",{className:"event-card__participant-section__items",children:s.map(b=>d.jsx("a",{href:`#element-${b.id}`,className:"event-card__listener event-card__listener-link",children:d.jsxs("div",{className:"event-card__listener__content",children:[d.jsxs("div",{className:"main",children:[d.jsxs("div",{className:"event-card__listener__info",children:[d.jsx("span",{children:"Hook"}),d.jsxs("div",{className:"details",children:[d.jsx("div",{className:"title",children:b.meta?.title||we(b.id)}),d.jsx("div",{className:"id",children:b.id})]})]}),b.meta?.description&&d.jsx("div",{className:"event-card__listener__description",children:b.meta.description})]}),b.hookOrder!==null&&b.hookOrder!==void 0&&d.jsxs("span",{className:"event-card__listener__order-badge",children:["Order: ",b.hookOrder]})]})},b.id))})]})]}),t.length===0&&s.length===0&&d.jsx("div",{className:"event-card__empty-state",children:"This event has no emitters or listeners."})]}),d.jsx(fr,{element:n,introspector:e,className:"event-card__tags-section"}),d.jsx(un,{title:i?n.meta?.title||"Global Event":n.meta?.title||we(n.id),subtitle:n.filePath||void 0,isOpen:r,onClose:()=>o(!1),code:f?"Loading...":g?`Error: ${g}`:c,enableEdit:!!n.filePath,saveOnFile:n.filePath||null}),d.jsx(pb,{isOpen:S,title:n.meta?.title||we(n.id),schemaString:n.payloadSchema,onClose:()=>$(!1),onInvoke:async({inputJson:b})=>{const C=`
|
|
177
|
+
mutation InvokeEvent($eventId: ID!, $inputJson: String, $evalInput: Boolean) {
|
|
178
|
+
invokeEvent(eventId: $eventId, inputJson: $inputJson, evalInput: $evalInput) {
|
|
179
|
+
success
|
|
180
|
+
error
|
|
181
|
+
invocationId
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
`;try{const T=await Qt(C,{eventId:n.id,inputJson:b?.trim()||void 0,evalInput:!1});return{output:T.invokeEvent.success?"Event invoked successfully":T.invokeEvent.error??void 0,error:T.invokeEvent.error??void 0}}catch(T){return{error:T?.message??String(T)}}}})]})},gM=({hook:n,targetEvents:e,isGlobal:t,introspector:s})=>{const i=()=>n.hookOrder===null||n.hookOrder===void 0?"Default":n.hookOrder.toString(),[r,o]=se.useState(!1),[c,u]=se.useState(null),[f,p]=se.useState(!1),[g,O]=se.useState(null);async function v(){if(n?.id){o(!0),p(!0),O(null);try{const w=await Qt(bA,{id:n.id});u(w?.hook?.fileContents??null)}catch(w){O(w?.message??"Failed to load file"),u(null)}finally{p(!1)}}}return d.jsxs(d.Fragment,{children:[d.jsxs(Lt,{prefix:"hook-card",title:"📋 Overview",contentClassName:"hook-card__section__content",children:[d.jsx(Ze,{prefix:"hook-card",label:"File Path:",children:d.jsx("a",{onClick:v,children:cn(n.filePath)})}),n.registeredBy&&d.jsx(Ze,{prefix:"hook-card",label:"Registered By:",children:d.jsx("a",{href:`#element-${n.registeredBy}`,className:"hook-card__registrar-link",children:n.registeredBy})}),d.jsx(Ze,{prefix:"hook-card",label:"Target Events:",children:t?d.jsxs("div",{className:"hook-card__global-event",children:[d.jsx("span",{className:"global-indicator",children:"🌐 ALL EVENTS"}),d.jsx("div",{className:"global-description",children:"This hook listens to every event in the system"})]}):e.map(w=>d.jsxs("div",{children:[d.jsx("a",{href:`#element-${w.id}`,className:"hook-card__event-link",children:we(w.id)}),w.meta?.title&&d.jsxs("div",{children:["(",w.meta.title,")"]})]},w.id))}),d.jsxs(Ze,{prefix:"hook-card",label:"Execution Order:",valueClassName:"value--order",children:[i(),d.jsx("div",{className:"order-description",children:n.hookOrder===null||n.hookOrder===void 0?"Uses default ordering":`Priority level ${n.hookOrder}`})]}),d.jsx(Ze,{prefix:"hook-card",label:"Emits Events:",children:q_(n.emits)}),n.tags&&n.tags.length>0&&d.jsx(Ze,{prefix:"hook-card",label:"Tags:",children:d.jsx("div",{className:"hook-card__tags",children:s.getTagsByIds(n.tags).map(w=>d.jsx("a",{href:`#element-${w.id}`,className:"clean-button",children:we(w.id)},w.id))})}),n.overriddenBy&&d.jsxs("div",{className:"hook-card__alert hook-card__alert--warning",children:[d.jsx("div",{className:"title",children:"⚠️ Overridden By:"}),d.jsx("div",{className:"content",children:n.overriddenBy})]})]}),d.jsx(un,{title:n.meta?.title||we(n.id),subtitle:n.filePath||void 0,isOpen:r,onClose:()=>o(!1),code:f?"Loading...":g?`Error: ${g}`:c,enableEdit:!!n.filePath,saveOnFile:n.filePath||null})]})},OM=({isGlobal:n,targetEvents:e,introspector:t})=>n?d.jsxs(Lt,{prefix:"hook-card",title:"🌐 Global Hook Details",contentClassName:"hook-card__global-info",children:[d.jsxs("div",{className:"hook-card__global-message",children:[d.jsxs("div",{className:"hook-card__global-message__header",children:[d.jsx("span",{className:"icon",children:"🌐"}),d.jsx("h5",{className:"title",children:"Universal Event Listener"})]}),d.jsxs("div",{className:"hook-card__global-message__content",children:["This hook is triggered by ",d.jsx("strong",{children:"every event"})," that occurs in the system. It acts as a universal listener that can respond to any event type."]})]}),d.jsxs("div",{className:"hook-card__schema-block",children:[d.jsx("div",{className:"title",children:"Global Hook Benefits"}),d.jsxs("div",{className:"hook-card__global-benefits",children:[d.jsxs("div",{className:"benefit",children:[d.jsx("span",{className:"icon",children:"🔍"}),d.jsx("span",{className:"text",children:"Monitor all system activity"})]}),d.jsxs("div",{className:"benefit",children:[d.jsx("span",{className:"icon",children:"📊"}),d.jsx("span",{className:"text",children:"Collect comprehensive metrics"})]}),d.jsxs("div",{className:"benefit",children:[d.jsx("span",{className:"icon",children:"🛡️"}),d.jsx("span",{className:"text",children:"Implement cross-cutting concerns"})]})]})]})]}):!e||e.length===0?d.jsx(Lt,{prefix:"hook-card",title:"📡 Target Event Details",children:d.jsxs("div",{className:"hook-card__not-found",children:[d.jsx("div",{className:"icon",children:"❌"}),d.jsx("h5",{className:"title",children:"Event Not Found"}),d.jsx("p",{className:"message",children:"No target events found for this hook."})]})}):d.jsx(Lt,{prefix:"hook-card",title:"📡 Target Event Details",children:e.map(s=>d.jsxs("div",{children:[d.jsx("a",{href:`#element-${s.id}`,children:d.jsxs("div",{className:"hook-card__target-event",children:[d.jsxs("div",{className:"hook-card__target-event__header",children:[d.jsx("span",{className:"icon",children:"📡"}),d.jsx("h5",{className:"title",children:s.meta?.title||we(s.id)})]}),d.jsx("div",{className:"hook-card__target-event__id",children:s.id}),s.meta?.description&&d.jsx("div",{className:"hook-card__target-event__description",children:s.meta.description})]})}),d.jsxs("div",{className:"hook-card__section__content",children:[d.jsxs("div",{className:"hook-card__schema-block",children:[d.jsx("div",{className:"title",children:"Payload Schema"}),d.jsx(pr,{schemaString:s.payloadSchema})]}),d.jsxs("div",{className:"hook-card__schema-block",children:[d.jsx("div",{className:"title",children:"Event Statistics"}),d.jsxs("div",{className:"hook-card__event-stats",children:[d.jsxs("div",{className:"hook-card__event-stats__stat",children:[d.jsx("div",{className:"value value--emitters",children:t.getEmittersOfEvent(s.id).length}),d.jsx("div",{className:"label",children:"Emitters"})]}),d.jsxs("div",{className:"hook-card__event-stats__stat",children:[d.jsx("div",{className:"value value--hooks",children:t.getHooksOfEvent(s.id).length}),d.jsx("div",{className:"label",children:"Hooks"})]})]})]})]})]},s.id))}),yM=({hook:n,introspector:e})=>{const t=e.getDependencies(n),s=e.getEmittedEvents(n),i=e.getEventsByIds(n.events),r=n.events.includes("*");return d.jsx(yl,{prefix:"hook-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[r?"🌐":"🪝"," ",n.meta?.title||we(n.id),r&&d.jsx("span",{className:"hook-card__global-badge",children:"GLOBAL"})]}),id:n.id,description:n.meta?.description,meta:d.jsxs("div",{className:"hook-card__stats",children:[n.hookOrder!==null&&n.hookOrder!==void 0&&d.jsxs("div",{className:"hook-card__order-badge",children:["#",n.hookOrder]}),d.jsxs("div",{className:"hook-card__stat-badge",children:[d.jsx("span",{className:"icon",children:"📤"}),d.jsx("span",{className:"count",children:s.length})]})]}),children:d.jsxs("div",{className:"hook-card__content",children:[d.jsxs("div",{className:"hook-card__grid",children:[d.jsx("div",{children:d.jsx(gM,{hook:n,targetEvents:i,isGlobal:r,introspector:e})}),d.jsx("div",{children:d.jsx(OM,{isGlobal:r,targetEvents:i,introspector:e})})]}),d.jsx(Tm,{dependencies:t,emittedEvents:s,className:"hook-card__relations"}),d.jsx(fr,{element:n,introspector:e,className:"hook-card__tags-section"})]})})},vM=({tag:n,introspector:e})=>[...n.tasks,...n.resources,...n.middlewares,...n.events,...n.hooks].length===0?null:d.jsxs("div",{className:"tag-card__relations",children:[d.jsx("h4",{className:"tag-card__relations__title",children:"🔗 Tagged Elements"}),d.jsxs("div",{className:"tag-card__relations__grid",children:[n.tasks.length>0&&d.jsxs("div",{className:"tag-card__relations__category",children:[d.jsx("h5",{children:"Tasks"}),d.jsx("div",{className:"tag-card__relations__items",children:n.tasks.map(s=>{const i=s.tagsDetailed?.find(r=>r.id===n.id)?.config;return d.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--task",children:[d.jsxs("a",{href:`#element-${s.id}`,className:"tag-card__relation-link",children:[d.jsx("div",{className:"title title--task",children:s.meta?.title||we(s.id)}),d.jsx("div",{className:"id",children:s.id})]}),i&&d.jsxs("div",{className:"tag-card__relation-config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:i})]})]},s.id)})})]}),n.resources.length>0&&d.jsxs("div",{className:"tag-card__relations__category",children:[d.jsx("h5",{children:"Resources"}),d.jsx("div",{className:"tag-card__relations__items",children:n.resources.map(s=>{const i=s.tagsDetailed?.find(r=>r.id===n.id)?.config;return d.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--resource",children:[d.jsxs("a",{href:`#element-${s.id}`,className:"tag-card__relation-link",children:[d.jsx("div",{className:"title title--resource",children:s.meta?.title||we(s.id)}),d.jsx("div",{className:"id",children:s.id})]}),i&&d.jsxs("div",{className:"tag-card__relation-config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:i})]})]},s.id)})})]}),n.middlewares.length>0&&d.jsxs("div",{className:"tag-card__relations__category",children:[d.jsx("h5",{children:"Middlewares"}),d.jsx("div",{className:"tag-card__relations__items",children:n.middlewares.map(s=>{const i=s.tagsDetailed?.find(r=>r.id===n.id)?.config;return d.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--middleware",children:[d.jsxs("a",{href:`#element-${s.id}`,className:"tag-card__relation-link",children:[d.jsx("div",{className:"title title--middleware",children:s.meta?.title||we(s.id)}),d.jsx("div",{className:"id",children:s.id})]}),i&&d.jsxs("div",{className:"tag-card__relation-config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:i})]})]},s.id)})})]}),n.events.length>0&&d.jsxs("div",{className:"tag-card__relations__category",children:[d.jsx("h5",{children:"Events"}),d.jsx("div",{className:"tag-card__relations__items",children:n.events.map(s=>{const i=s.tagsDetailed?.find(r=>r.id===n.id)?.config;return d.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--event",children:[d.jsxs("a",{href:`#element-${s.id}`,className:"tag-card__relation-link",children:[d.jsx("div",{className:"title title--event",children:s.meta?.title||we(s.id)}),d.jsx("div",{className:"id",children:s.id})]}),i&&d.jsxs("div",{className:"tag-card__relation-config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:i})]})]},s.id)})})]}),n.hooks.length>0&&d.jsxs("div",{className:"tag-card__relations__category",children:[d.jsx("h5",{children:"Hooks"}),d.jsx("div",{className:"tag-card__relations__items",children:n.hooks.map(s=>{const i=s.tagsDetailed?.find(r=>r.id===n.id)?.config;return d.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--hook",children:[d.jsxs("a",{href:`#element-${s.id}`,className:"tag-card__relation-link",children:[d.jsx("div",{className:"title title--hook",children:s.meta?.title||we(s.id)}),d.jsx("div",{className:"id",children:s.id})]}),i&&d.jsxs("div",{className:"tag-card__relation-config",children:[d.jsx("div",{className:"config-title",children:"Configuration:"}),d.jsx("pre",{className:"config-block",children:i})]})]},s.id)})})]})]})]}),xM=({tag:n,introspector:e})=>{const t=[...n.tasks,...n.resources,...n.middlewares,...n.events,...n.hooks],[s,i]=se.useState(!1),[r,o]=se.useState(""),[c,u]=se.useState(void 0),[f,p]=se.useState(null),[g,O]=se.useState(!1),[v,w]=se.useState(null),[k,S]=se.useState(null);async function $(){if(n?.id){i(!0),O(!0),w(null),o(n.meta?.title||we(n.id)),u(n.filePath||void 0),S(n.filePath||null);try{const b=await Qt(_A,{id:n.id});p(b?.tag?.fileContents??null)}catch(b){w(b?.message??"Failed to load file"),p(null)}finally{O(!1)}}}return d.jsxs(yl,{prefix:"tag-card",elementId:n.id,title:n.meta?.title||we(n.id),id:n.id,description:n.meta?.description,children:[d.jsxs("div",{className:"tag-card__grid",children:[d.jsxs(Lt,{prefix:"tag-card",title:"Overview",children:[d.jsx("div",{className:"tag-card__summary",children:d.jsxs("div",{className:"tag-card__total",children:[d.jsx("span",{className:"value",children:t.length}),d.jsx("span",{className:"label",children:"Total Tagged Elements"})]})}),d.jsxs("div",{className:"tag-card__stats",children:[d.jsxs("div",{className:"tag-card__stat tag-card__stat--tasks",children:[d.jsx("div",{className:"tag-card__stat__value",children:n.tasks.length}),d.jsx("div",{className:"tag-card__stat__label",children:"Tasks"})]}),d.jsxs("div",{className:"tag-card__stat tag-card__stat--resources",children:[d.jsx("div",{className:"tag-card__stat__value",children:n.resources.length}),d.jsx("div",{className:"tag-card__stat__label",children:"Resources"})]}),d.jsxs("div",{className:"tag-card__stat tag-card__stat--events",children:[d.jsx("div",{className:"tag-card__stat__value",children:n.events.length}),d.jsx("div",{className:"tag-card__stat__label",children:"Events"})]}),d.jsxs("div",{className:"tag-card__stat tag-card__stat--middlewares",children:[d.jsx("div",{className:"tag-card__stat__value",children:n.middlewares.length}),d.jsx("div",{className:"tag-card__stat__label",children:"Middlewares"})]}),d.jsxs("div",{className:"tag-card__stat tag-card__stat--hooks",children:[d.jsx("div",{className:"tag-card__stat__value",children:n.hooks.length}),d.jsx("div",{className:"tag-card__stat__label",children:"Hooks"})]})]}),d.jsx(Ze,{prefix:"tag-card",label:"File Path:",children:n.filePath?d.jsx("a",{type:"button",onClick:$,title:"View file contents",children:cn(n.filePath)}):cn(n.filePath)})]}),d.jsx(Lt,{prefix:"tag-card",title:"Configuration Schema",contentClassName:"tag-card__config",children:d.jsx(pr,{schemaString:n.configSchema})})]}),d.jsx(vM,{tag:n,introspector:e}),d.jsx(un,{title:r,subtitle:c,isOpen:s,onClose:()=>i(!1),code:g?"Loading...":v?`Error: ${v}`:f,enableEdit:!!k,saveOnFile:k})]})};function wM(n){return"emits"in n&&"dependsOn"in n&&!("events"in n)?"error-card__thrower-link--task":"events"in n?"error-card__thrower-link--hook":"registers"in n?"error-card__thrower-link--resource":"type"in n&&(n.type==="task"||n.type==="resource")?"error-card__thrower-link--middleware":""}const kM=({error:n,introspector:e})=>{const t=e.getTasksUsingError(n.id),s=e.getResourcesUsingError(n.id),i=e.getHooksUsingError(n.id),r=e.getMiddlewaresUsingError(n.id),o=[...t,...s,...i,...r],[c,u]=se.useState(!1),[f,p]=se.useState(null),[g,O]=se.useState(!1),[v,w]=se.useState(null);async function k(){if(n?.id){u(!0),O(!0),w(null);try{const S=await Qt($A,{id:n.id});p(S?.error?.fileContents??null)}catch(S){w(S?.message??"Failed to load file"),p(null)}finally{O(!1)}}}return d.jsxs("div",{id:`element-${n.id}`,className:"error-card",children:[d.jsx("div",{className:"error-card__header",children:d.jsx("div",{className:"error-card__header-content",children:d.jsxs("div",{className:"main",children:[d.jsx("h3",{className:"error-card__title",children:n.meta?.title||we(n.id)}),d.jsx("div",{className:"error-card__id",children:n.id}),n.meta?.description&&d.jsx("p",{className:"error-card__description",children:n.meta.description})]})})}),d.jsxs("div",{className:"error-card__content",children:[d.jsxs("div",{className:"error-card__grid",children:[d.jsx("div",{children:d.jsxs("div",{className:"error-card__section",children:[d.jsx("h4",{className:"error-card__section__title",children:"Overview"}),d.jsxs("div",{className:"error-card__section__content",children:[d.jsxs("div",{className:"error-card__info-block",children:[d.jsx("div",{className:"label",children:"File Path:"}),d.jsx("div",{className:"value",children:n.filePath?d.jsx("a",{type:"button",onClick:k,title:"View file contents",children:cn(n.filePath)}):cn(n.filePath)})]}),n.registeredBy&&d.jsxs("div",{className:"error-card__info-block",children:[d.jsx("div",{className:"label",children:"Registered By:"}),d.jsx("div",{className:"value",children:d.jsx("a",{href:`#element-${n.registeredBy}`,className:"error-card__registrar-link",children:n.registeredBy})})]}),n.tags&&n.tags.length>0&&d.jsxs("div",{className:"error-card__info-block",children:[d.jsx("div",{className:"label",children:"Tags:"}),d.jsx("div",{className:"value",children:d.jsx("div",{className:"error-card__tags",children:e.getTagsByIds(n.tags).map(S=>d.jsx("a",{href:`#element-${S.id}`,className:"clean-button",children:we(S.id)},S.id))})})]}),d.jsxs("div",{className:"error-card__info-block",children:[d.jsx("div",{className:"label",children:"Thrown By:"}),d.jsx("div",{className:"value",children:o.length>0?d.jsx("div",{className:"error-card__throwers",children:o.map(S=>d.jsxs("a",{href:`#element-${S.id}`,className:`error-card__thrower-link ${wM(S)}`,children:[d.jsx("div",{className:"title",children:S.meta?.title||we(S.id)}),d.jsx("div",{className:"id",children:S.id})]},S.id))}):d.jsx("span",{className:"error-card__no-throwers",children:"None"})})]}),n.overriddenBy&&d.jsxs("div",{className:"error-card__alert error-card__alert--warning",children:[d.jsx("div",{className:"title",children:"Overridden By:"}),d.jsx("div",{className:"content",children:n.overriddenBy})]})]})]})}),d.jsx("div",{children:d.jsxs("div",{className:"error-card__section",children:[d.jsx("h4",{className:"error-card__section__title",children:"Error Data Schema"}),d.jsx("div",{className:"error-card__schema",children:n.dataSchema?d.jsx(pr,{schemaString:n.dataSchema}):d.jsx("div",{className:"error-card__no-schema",children:"No schema defined for error data"})})]})})]}),o.length>0&&d.jsxs("div",{className:"error-card__relations",children:[d.jsx("h4",{className:"error-card__relations__title",children:"Usage Relationships"}),d.jsxs("div",{className:"error-card__relations__grid",children:[t.length>0&&d.jsxs("div",{className:"error-card__relations__category",children:[d.jsxs("h5",{children:["Thrown By Tasks (",t.length,")"]}),d.jsx("div",{className:"error-card__relations__items",children:t.map(S=>d.jsxs("a",{href:`#element-${S.id}`,className:"error-card__relation-item error-card__relation-item--task error-card__relation-link",children:[d.jsx("div",{className:"title title--task",children:S.meta?.title||we(S.id)}),d.jsx("div",{className:"id",children:S.id})]},S.id))})]}),s.length>0&&d.jsxs("div",{className:"error-card__relations__category",children:[d.jsxs("h5",{children:["Thrown By Resources (",s.length,")"]}),d.jsx("div",{className:"error-card__relations__items",children:s.map(S=>d.jsxs("a",{href:`#element-${S.id}`,className:"error-card__relation-item error-card__relation-item--resource error-card__relation-link",children:[d.jsx("div",{className:"title title--resource",children:S.meta?.title||we(S.id)}),d.jsx("div",{className:"id",children:S.id})]},S.id))})]}),i.length>0&&d.jsxs("div",{className:"error-card__relations__category",children:[d.jsxs("h5",{children:["Thrown By Hooks (",i.length,")"]}),d.jsx("div",{className:"error-card__relations__items",children:i.map(S=>d.jsxs("a",{href:`#element-${S.id}`,className:"error-card__relation-item error-card__relation-item--hook error-card__relation-link",children:[d.jsx("div",{className:"title title--hook",children:S.meta?.title||we(S.id)}),d.jsx("div",{className:"id",children:S.id})]},S.id))})]}),r.length>0&&d.jsxs("div",{className:"error-card__relations__category",children:[d.jsxs("h5",{children:["Thrown By Middlewares (",r.length,")"]}),d.jsx("div",{className:"error-card__relations__items",children:r.map(S=>d.jsxs("a",{href:`#element-${S.id}`,className:"error-card__relation-item error-card__relation-item--middleware error-card__relation-link",children:[d.jsx("div",{className:"title title--middleware",children:S.meta?.title||we(S.id)}),d.jsx("div",{className:"id",children:S.id})]},S.id))})]})]})]}),d.jsx(fr,{element:n,introspector:e,className:"error-card__tags-section"})]}),d.jsx(un,{title:n.meta?.title||we(n.id),subtitle:n.filePath||void 0,isOpen:c,onClose:()=>u(!1),code:g?"Loading...":v?`Error: ${v}`:f,enableEdit:!!n.filePath,saveOnFile:n.filePath||null})]})},SM=({asyncContext:n,introspector:e})=>{const t=e.getTasksUsingContext(n.id),s=e.getResourcesUsingContext(n.id),i=e.getHooksUsingContext(n.id),r=e.getMiddlewaresUsingContext(n.id),o=e.getResourcesProvidingContext(n.id),c=[...t,...s,...i,...r],[u,f]=se.useState(!1),[p,g]=se.useState(null),[O,v]=se.useState(!1),[w,k]=se.useState(null);async function S(){if(n?.id){f(!0),v(!0),k(null);try{const $=await Qt(CA,{id:n.id});g($?.asyncContext?.fileContents??null)}catch($){k($?.message??"Failed to load file"),g(null)}finally{v(!1)}}}return d.jsxs("div",{id:`element-${n.id}`,className:"async-context-card",children:[d.jsx("div",{className:"async-context-card__header",children:d.jsx("div",{className:"async-context-card__header-content",children:d.jsxs("div",{className:"main",children:[d.jsx("h3",{className:"async-context-card__title",children:n.meta?.title||we(n.id)}),d.jsx("div",{className:"async-context-card__id",children:n.id}),n.meta?.description&&d.jsx("p",{className:"async-context-card__description",children:n.meta.description})]})})}),d.jsxs("div",{className:"async-context-card__content",children:[d.jsxs("div",{className:"async-context-card__grid",children:[d.jsx("div",{children:d.jsxs("div",{className:"async-context-card__section",children:[d.jsx("h4",{className:"async-context-card__section__title",children:"Overview"}),d.jsxs("div",{className:"async-context-card__section__content",children:[d.jsxs("div",{className:"async-context-card__info-block",children:[d.jsx("div",{className:"label",children:"File Path:"}),d.jsx("div",{className:"value",children:n.filePath?d.jsx("a",{type:"button",onClick:S,title:"View file contents",children:cn(n.filePath)}):cn(n.filePath)})]}),n.registeredBy&&d.jsxs("div",{className:"async-context-card__info-block",children:[d.jsx("div",{className:"label",children:"Registered By:"}),d.jsx("div",{className:"value",children:d.jsx("a",{href:`#element-${n.registeredBy}`,className:"async-context-card__registrar-link",children:n.registeredBy})})]}),n.tags&&n.tags.length>0&&d.jsxs("div",{className:"async-context-card__info-block",children:[d.jsx("div",{className:"label",children:"Tags:"}),d.jsx("div",{className:"value",children:d.jsx("div",{className:"async-context-card__tags",children:e.getTagsByIds(n.tags).map($=>d.jsx("a",{href:`#element-${$.id}`,className:"clean-button",children:we($.id)},$.id))})})]}),d.jsxs("div",{className:"async-context-card__info-block",children:[d.jsx("div",{className:"label",children:"Usage Count:"}),d.jsxs("div",{className:"value",children:["Used by ",c.length," element(s)"]})]}),n.overriddenBy&&d.jsxs("div",{className:"async-context-card__alert async-context-card__alert--warning",children:[d.jsx("div",{className:"title",children:"Overridden By:"}),d.jsx("div",{className:"content",children:n.overriddenBy})]})]})]})}),d.jsx("div",{children:d.jsxs("div",{className:"async-context-card__section",children:[d.jsx("h4",{className:"async-context-card__section__title",children:"Serialization Methods"}),d.jsxs("div",{className:"async-context-card__serialization",children:[n.serialize&&d.jsxs("div",{className:"async-context-card__method",children:[d.jsx("div",{className:"async-context-card__method__header",children:d.jsx("h5",{children:"Serialize Method"})}),d.jsx("pre",{className:"async-context-card__method__code",children:n.serialize})]}),n.parse&&d.jsxs("div",{className:"async-context-card__method",children:[d.jsx("div",{className:"async-context-card__method__header",children:d.jsx("h5",{children:"Parse Method"})}),d.jsx("pre",{className:"async-context-card__method__code",children:n.parse})]}),!n.serialize&&!n.parse&&d.jsx("div",{className:"async-context-card__no-methods",children:"No custom serialization methods defined. Using default EJSON serialization."})]})]})})]}),(c.length>0||o.length>0)&&d.jsxs("div",{className:"async-context-card__relations",children:[d.jsx("h4",{className:"async-context-card__relations__title",children:"Context Relationships"}),d.jsxs("div",{className:"async-context-card__relations__grid",children:[o.length>0&&d.jsxs("div",{className:"async-context-card__relations__category",children:[d.jsxs("h5",{children:["Provided By Resources (",o.length,")"]}),d.jsx("div",{className:"async-context-card__relations__items",children:o.map($=>d.jsxs("a",{href:`#element-${$.id}`,className:"async-context-card__relation-item async-context-card__relation-item--provider async-context-card__relation-link",children:[d.jsx("div",{className:"title title--provider",children:$.meta?.title||we($.id)}),d.jsx("div",{className:"id",children:$.id})]},$.id))})]}),t.length>0&&d.jsxs("div",{className:"async-context-card__relations__category",children:[d.jsxs("h5",{children:["Used By Tasks (",t.length,")"]}),d.jsx("div",{className:"async-context-card__relations__items",children:t.map($=>d.jsxs("a",{href:`#element-${$.id}`,className:"async-context-card__relation-item async-context-card__relation-item--task async-context-card__relation-link",children:[d.jsx("div",{className:"title title--task",children:$.meta?.title||we($.id)}),d.jsx("div",{className:"id",children:$.id})]},$.id))})]}),s.length>0&&d.jsxs("div",{className:"async-context-card__relations__category",children:[d.jsxs("h5",{children:["Used By Resources (",s.length,")"]}),d.jsx("div",{className:"async-context-card__relations__items",children:s.map($=>d.jsxs("a",{href:`#element-${$.id}`,className:"async-context-card__relation-item async-context-card__relation-item--resource async-context-card__relation-link",children:[d.jsx("div",{className:"title title--resource",children:$.meta?.title||we($.id)}),d.jsx("div",{className:"id",children:$.id})]},$.id))})]}),i.length>0&&d.jsxs("div",{className:"async-context-card__relations__category",children:[d.jsxs("h5",{children:["Used By Hooks (",i.length,")"]}),d.jsx("div",{className:"async-context-card__relations__items",children:i.map($=>d.jsxs("a",{href:`#element-${$.id}`,className:"async-context-card__relation-item async-context-card__relation-item--hook async-context-card__relation-link",children:[d.jsx("div",{className:"title title--hook",children:$.meta?.title||we($.id)}),d.jsx("div",{className:"id",children:$.id})]},$.id))})]}),r.length>0&&d.jsxs("div",{className:"async-context-card__relations__category",children:[d.jsxs("h5",{children:["Used By Middlewares (",r.length,")"]}),d.jsx("div",{className:"async-context-card__relations__items",children:r.map($=>d.jsxs("a",{href:`#element-${$.id}`,className:"async-context-card__relation-item async-context-card__relation-item--middleware async-context-card__relation-link",children:[d.jsx("div",{className:"title title--middleware",children:$.meta?.title||we($.id)}),d.jsx("div",{className:"id",children:$.id})]},$.id))})]})]})]}),d.jsx(fr,{element:n,introspector:e,className:"async-context-card__tags-section"})]}),d.jsx(un,{title:n.meta?.title||we(n.id),subtitle:n.filePath||void 0,isOpen:u,onClose:()=>f(!1),code:O?"Loading...":w?`Error: ${w}`:p,enableEdit:!!n.filePath,saveOnFile:n.filePath||null})]})},bM=({introspector:n,detailed:e=!1})=>{const[t,s]=B.useState("summary");se.useEffect(()=>{const S=setTimeout(()=>{window.dispatchEvent(new CustomEvent("docs:diagnostic-change"))},0);return()=>clearTimeout(S)},[]);const i=n.getDiagnostics(),r=n.getOrphanEvents(),o=n.getUnemittedEvents(),c=n.getUnusedMiddleware(),u=n.getOverrideConflicts(),f=i.filter(S=>S.severity==="error").length,p=i.filter(S=>S.severity==="warning").length,g=i.filter(S=>S.severity==="info").length,O=[{id:"summary",label:"Summary",count:i.length},{id:"errors",label:"Errors",count:f},{id:"warnings",label:"Warnings",count:p},{id:"orphans",label:"Orphan Events",count:r.length},{id:"unemitted",label:"Unemitted Events",count:o.length},{id:"unused",label:"Unused Middleware",count:c.length},{id:"conflicts",label:"Override Conflicts",count:u.length}],v=(S,$,b,C,T,P)=>d.jsxs("div",{className:`diagnostics-panel__summary-card ${P||""}`,children:[d.jsxs("div",{className:"diagnostics-panel__summary-card__header",children:[d.jsx("span",{className:"icon",children:C}),d.jsx("h4",{children:S})]}),d.jsx("div",{className:"diagnostics-panel__summary-card__value",children:$}),d.jsx("div",{className:"diagnostics-panel__summary-card__description",children:T})]}),w=S=>{const $=S.nodeId?"a":"div",b=S.nodeId?{href:`#element-${S.nodeId}`,className:`diagnostics-panel__item diagnostics-panel__item--${S.severity} diagnostics-panel__item--clickable`}:{className:`diagnostics-panel__item diagnostics-panel__item--${S.severity}`};return d.jsx($,{...b,children:d.jsxs("div",{className:"diagnostics-panel__item-content",children:[d.jsx("span",{className:"icon",children:Y_(S.severity)}),d.jsxs("div",{className:"main",children:[d.jsxs("div",{className:"diagnostics-panel__item-header",children:[d.jsx("span",{className:`diagnostics-panel__severity-badge diagnostics-panel__severity-badge--${S.severity}`,children:S.severity}),d.jsx("span",{className:"diagnostics-panel__code-badge",children:S.code})]}),d.jsx("div",{className:"diagnostics-panel__message",children:S.message}),S.nodeId&&d.jsxs("div",{className:"diagnostics-panel__node-info",children:[d.jsxs("div",{children:[d.jsx("strong",{children:"Node:"})," ",we(S.nodeId)]}),S.nodeKind&&d.jsxs("div",{children:[d.jsx("strong",{children:"Type:"})," ",S.nodeKind]})]})]}),S.nodeId&&d.jsx("div",{className:"diagnostics-panel__click-indicator",children:"🔗"})]})},`${S.code}-${S.nodeId||"global"}`)},k=(S,$,b,C,T,P,N)=>d.jsxs("div",{className:"diagnostics-panel__special-section",children:[d.jsxs("h4",{children:[d.jsx("span",{className:"icon",children:b}),$," (",S.length,")"]}),S.length===0?d.jsxs("div",{className:"diagnostics-panel__empty-state",children:[d.jsx("div",{className:"celebration",children:"🎉"}),"No ",$.toLowerCase()," found. Great job!"]}):d.jsx("div",{className:"diagnostics-panel__special-section__items",children:S.map((A,X)=>{const F=T(A),H=!!(F&&String(F).trim()),J=H?String(F):"(unknown)",R=H?"a":"div",V=H?{href:`#element-${J}`,className:`diagnostics-panel__special-section__item diagnostics-panel__special-section__item--clickable ${N||""}`}:{className:`diagnostics-panel__special-section__item ${N||""}`};return d.jsxs(R,{...V,children:[d.jsx("div",{className:"title",children:P?P(A):we(J)}),d.jsx("div",{className:"id",children:J}),H&&d.jsx("div",{className:"diagnostics-panel__click-indicator",children:"🔗"})]},X)})})]});return e?d.jsxs("div",{className:"diagnostics-panel",children:[d.jsx("div",{className:"diagnostics-panel__tabs",children:O.map(S=>d.jsxs("button",{onClick:()=>s(S.id),className:`diagnostics-panel__tab ${t===S.id?"diagnostics-panel__tab--active":""}`,children:[S.label,S.count>0&&d.jsx("span",{className:"diagnostics-panel__tab-count",children:S.count})]},S.id))}),d.jsxs("div",{className:"diagnostics-panel__content",children:[t==="summary"&&d.jsxs("div",{children:[d.jsxs("div",{className:"diagnostics-panel__detailed-grid",children:[v("Total Issues",i.length,"#6c757d","📊","All diagnostic items","diagnostics-panel__summary-card--total"),v("Errors",f,"#dc3545","❌","Critical issues requiring attention","diagnostics-panel__summary-card--errors"),v("Warnings",p,"#ffc107","⚠️","Potential problems to review","diagnostics-panel__summary-card--warnings"),v("Information",g,"#17a2b8","ℹ️","Informational messages","diagnostics-panel__summary-card--info")]}),i.length>0&&d.jsxs("div",{children:[d.jsx("h4",{children:"Recent Diagnostics"}),d.jsx("div",{className:"diagnostics-panel__items",children:i.slice(0,5).map(w)})]})]}),t==="errors"&&d.jsx("div",{children:d.jsxs("div",{className:"diagnostics-panel__items",children:[i.filter(S=>S.severity==="error").map(w),f===0&&d.jsxs("div",{className:"diagnostics-panel__success-state",children:[d.jsx("div",{className:"icon",children:"✅"}),d.jsx("h4",{children:"No Errors Found!"}),d.jsx("p",{children:"Your application has no critical errors."})]})]})}),t==="warnings"&&d.jsx("div",{children:d.jsxs("div",{className:"diagnostics-panel__items",children:[i.filter(S=>S.severity==="warning").map(w),p===0&&d.jsxs("div",{className:"diagnostics-panel__success-state",children:[d.jsx("div",{className:"icon",children:"👍"}),d.jsx("h4",{children:"No Warnings!"}),d.jsx("p",{children:"No potential issues detected."})]})]})}),t==="orphans"&&k(r,"Orphan Events","👻","#6f42c1",S=>S.id,S=>`${we(S.id)} (No listeners)`,"diagnostics-panel__special-section__item--orphan"),t==="unemitted"&&k(o,"Unemitted Events","📤","#fd7e14",S=>S.id,S=>`${we(S.id)} (No emitters)`,"diagnostics-panel__special-section__item--unused"),t==="unused"&&k(c,"Unused Middleware","🔗","#6c757d",S=>S.id,S=>`${we(S.id)} (Not used)`,"diagnostics-panel__special-section__item--unused"),t==="conflicts"&&d.jsxs("div",{className:"diagnostics-panel__special-section",children:[d.jsxs("h4",{children:[d.jsx("span",{className:"icon",children:"⚔️"}),"Override Conflicts (",u.length,")"]}),u.length===0?d.jsxs("div",{className:"diagnostics-panel__empty-state",children:[d.jsx("div",{className:"celebration",children:"🎉"}),"No override conflicts found. Great job!"]}):d.jsx("div",{className:"diagnostics-panel__special-section__items",children:u.map((S,$)=>d.jsxs("div",{className:"diagnostics-panel__special-section__item diagnostics-panel__special-section__item--conflict diagnostics-panel__conflict-item",children:[d.jsxs("div",{className:"title",children:[d.jsx("a",{href:`#element-${S.targetId}`,className:"diagnostics-panel__conflict-link",children:we(S.targetId)})," ← overridden by → ",d.jsx("a",{href:`#element-${S.by}`,className:"diagnostics-panel__conflict-link",children:we(S.by)})]}),d.jsxs("div",{className:"id",children:["Target: ",S.targetId]})]},$))})]})]})]}):d.jsxs("div",{className:"diagnostics-panel__summary-grid",children:[v("Errors",f,"#dc3545","❌","Critical issues","diagnostics-panel__summary-card--errors"),v("Warnings",p,"#ffc107","⚠️","Potential problems","diagnostics-panel__summary-card--warnings"),v("Orphan Events",r.length,"#6f42c1","👻","Events with no listeners","diagnostics-panel__summary-card--orphans"),v("Unused Middleware",c.length,"#fd7e14","🔗","Middleware not in use","diagnostics-panel__summary-card--unused"),v("Override Conflicts",u.length,"#dc3545","⚔️","Resource override issues","diagnostics-panel__summary-card--conflicts")]})},_M=({data:n})=>{const[e,t]=B.useState(()=>{const u=[],f=(p,g,O)=>{O>=4||typeof p!="object"||p===null||(u.push(g),Object.keys(p).forEach(v=>{f(p[v],`${g}.${v}`,O+1)}))};return f(n,"root",0),u}),[s,i]=B.useState([]),r=u=>{t(f=>f.includes(u)?f.filter(p=>p!==u):[...f,u])},o=u=>{i(f=>f.includes(u)?f.filter(p=>p!==u):[...f,u])},c=(u,f)=>{if(typeof u=="object"&&u!==null){const p=Array.isArray(u),g=Object.keys(u),O=e.includes(f);return d.jsxs("div",{className:`json-node ${O?"expanded":""}`,children:[d.jsx("span",{className:"json-toggle",onClick:()=>r(f),children:O?"▼":"▶"}),d.jsx("span",{className:"json-bracket",children:p?"[":"{"}),O&&d.jsx("div",{className:"json-children",children:g.map((v,w)=>d.jsxs("div",{className:"json-key-value",children:[!p&&d.jsxs("span",{className:"json-key",children:['"',v,'":']}),c(u[v],`${f}.${v}`),w<g.length-1&&d.jsx("span",{children:","})]},w))}),!O&&d.jsx("span",{className:"json-ellipsis",children:"..."}),d.jsx("span",{className:"json-bracket",children:p?"]":"}"})]})}else{const p=JSON.stringify(u),g=100;if(typeof u=="string"&&p.length>g){const O=s.includes(f),v=O?p:p.substring(0,g);return d.jsxs("span",{className:`json-value json-value--${typeof u}`,children:[v,!O&&d.jsx("span",{className:"json-expand-text",onClick:()=>o(f),style:{cursor:"pointer",color:"#0066cc",marginLeft:"4px"},children:"..."}),O&&p.length>g&&d.jsx("span",{className:"json-collapse-text",onClick:()=>o(f),style:{cursor:"pointer",color:"#0066cc",marginLeft:"4px"},children:"[collapse]"})]})}else return d.jsx("span",{className:`json-value json-value--${typeof u}`,children:p})}};return!n||typeof n=="object"&&Object.keys(n).length===0?null:d.jsx("div",{className:"json-viewer",children:c(n,"root")})},_f=n=>{const e=n.toLowerCase();return e==="fatal"||e==="error"?"error":e==="warn"||e==="warning"?"warn":e==="info"?"info":e==="debug"?"debug":e==="trace"?"trace":"default"},Jx=(n,e=6)=>n?n.length>e?n.slice(-e):n:"",$M=({logs:n})=>{const[e,t]=B.useState(!1),[s,i]=B.useState(null),r=f=>{const p=new Date(f);return`${p.toLocaleDateString()} ${p.toLocaleTimeString()}`},o=f=>{try{const p=JSON.parse(f);return typeof p=="object"&&p!==null?p:null}catch{return null}},c=B.useMemo(()=>[...e?n:n.slice(-50)].reverse(),[n,e]),u=B.useMemo(()=>s===null?null:c[s]??null,[s,c]);return B.useEffect(()=>{const f=p=>{p.key==="Escape"&&(s!==null?i(null):e&&t(!1))};return window.addEventListener("keydown",f),()=>window.removeEventListener("keydown",f)},[e,s]),d.jsxs("div",{className:"recent-logs live-section",children:[d.jsxs("div",{className:"recent-logs__header",children:[d.jsxs("h4",{className:"recent-logs__title",children:["Recent Logs (",n.length,")"]}),d.jsx("button",{type:"button",className:"recent-logs__toggle","aria-label":e?"Exit full screen":"Enter full screen",title:e?"Exit full screen":"Enter full screen",onClick:()=>t(f=>!f),children:d.jsx("span",{children:e?"Exit":"Expand"})})]}),d.jsx("div",{className:`recent-logs__list ${e?"recent-logs__list--expanded":""}`,children:c.map((f,p)=>d.jsxs("div",{className:"recent-logs__row recent-logs__row--compact",onClick:()=>i(p),children:[d.jsx("span",{className:"recent-logs__time",children:new Date(f.timestampMs).toLocaleTimeString()}),d.jsx("span",{className:`recent-logs__level recent-logs__level--${_f(f.level)}`,children:f.level}),d.jsx("span",{className:"recent-logs__message",children:f.message}),f.correlationId&&d.jsx("span",{className:"recent-logs__corr",title:f.correlationId,children:Jx(f.correlationId)}),f.sourceId&&d.jsxs("a",{href:`#element-${f.sourceId}`,onClick:g=>g.stopPropagation(),title:`Go to source #${f.sourceId}`,className:"recent-logs__source",children:["#",f.sourceId]}),d.jsx("button",{type:"button",className:"recent-logs__action",onClick:g=>{g.stopPropagation(),i(p)},title:"View details",children:"View"})]},`${f.timestampMs}-${p}`))}),e&&iu.createPortal(d.jsx("div",{role:"dialog","aria-modal":"true",className:"recent-logs-fs__overlay",onClick:()=>t(!1),children:d.jsxs("div",{className:"recent-logs-fs__panel",onClick:f=>f.stopPropagation(),children:[d.jsxs("div",{className:"recent-logs-fs__header",children:[d.jsx("h3",{className:"recent-logs-fs__title",children:"Recent Logs - Full Screen"}),d.jsx("button",{className:"recent-logs-fs__close",onClick:()=>t(!1),children:"Close"})]}),d.jsx("div",{className:"recent-logs-fs__content",children:c.map((f,p)=>d.jsxs("div",{className:"recent-logs__row recent-logs__row--fullscreen",onClick:()=>i(p),children:[d.jsx("span",{className:"recent-logs-fs__time",children:r(f.timestampMs)}),d.jsx("span",{className:`recent-logs-fs__level recent-logs-fs__level--${_f(f.level)}`,children:f.level}),d.jsx("span",{className:"recent-logs-fs__message",children:f.message}),f.correlationId&&d.jsx("span",{className:"recent-logs-fs__corr",title:`Correlation ID: ${f.correlationId}`,children:Jx(f.correlationId)}),f.sourceId&&d.jsxs("a",{href:`#element-${f.sourceId}`,onClick:g=>g.stopPropagation(),title:`Go to source #${f.sourceId}`,className:"recent-logs-fs__source",children:["#",f.sourceId]}),d.jsx("button",{className:"recent-logs-fs__action",onClick:g=>{g.stopPropagation(),i(p)},children:"Details"})]},`fs-${f.timestampMs}-${p}`))})]})}),document.body),u&&iu.createPortal(d.jsx("div",{role:"dialog","aria-modal":"true",className:"recent-logs-modal__overlay",onClick:()=>i(null),children:d.jsxs("div",{className:"recent-logs-modal__panel",onClick:f=>f.stopPropagation(),children:[d.jsxs("div",{className:"recent-logs-modal__header",children:[d.jsx("h3",{className:"recent-logs-modal__title",children:"Log Details"}),d.jsx("button",{className:"recent-logs-modal__close",onClick:()=>i(null),children:"Close"})]}),d.jsx("div",{className:"recent-logs-modal__content",children:d.jsxs("div",{className:"recent-logs-modal__grid",children:[d.jsxs("div",{children:[d.jsxs("div",{className:"recent-logs-modal__field",children:[d.jsx("div",{className:"recent-logs-modal__label",children:"Timestamp"}),d.jsx("div",{className:"recent-logs-modal__value recent-logs-modal__value--mono",children:r(u.timestampMs)})]}),d.jsxs("div",{className:"recent-logs-modal__field",children:[d.jsx("div",{className:"recent-logs-modal__label",children:"Level"}),d.jsx("span",{className:`recent-logs-modal__level recent-logs-modal__level--${_f(u.level)}`,children:u.level})]}),u.correlationId&&d.jsxs("div",{className:"recent-logs-modal__field",children:[d.jsx("div",{className:"recent-logs-modal__label",children:"Correlation ID"}),d.jsx("div",{className:"recent-logs-modal__value recent-logs-modal__value--mono recent-logs-modal__value--break",children:u.correlationId})]}),u.sourceId&&d.jsxs("div",{className:"recent-logs-modal__field",children:[d.jsx("div",{className:"recent-logs-modal__label",children:"Source"}),d.jsxs("a",{href:`#element-${u.sourceId}`,className:"recent-logs-modal__source",children:["#",u.sourceId]})]})]}),d.jsxs("div",{children:[d.jsxs("div",{className:"recent-logs-modal__field",children:[d.jsx("div",{className:"recent-logs-modal__label",children:"Message"}),d.jsx("div",{className:"recent-logs-modal__message",children:u.message})]}),u.data&&u.data!=="{}"&&d.jsxs("div",{children:[d.jsxs("div",{className:"recent-logs-modal__data-header",children:[d.jsx("div",{className:"recent-logs-modal__label",children:"Data"}),d.jsx("button",{className:"recent-logs-modal__copy",onClick:()=>{const f=u.data??"";navigator.clipboard.writeText(f).catch(()=>{})},children:"Copy"})]}),d.jsx("div",{className:"recent-logs-modal__data",children:(()=>{const f=o(u.data);return f?d.jsx(_M,{data:f}):d.jsx("pre",{className:"recent-logs-modal__pre",children:u.data})})()})]})]})]})})]})}),document.body)]})},CM=({emissions:n,detailed:e=!1})=>{const[t,s]=B.useState(null),[i,r]=B.useState(null),[o,c]=B.useState(!1),u=(g,O)=>{s(g),r(O),c(!0)},f=()=>{c(!1),s(null),r(null)},p=g=>new Date(g).toLocaleTimeString();return d.jsxs("div",{className:"recent-events",children:[d.jsxs("h4",{children:["Recent Event Emissions (",n.length,")"]}),d.jsx("div",{className:"live-entries",children:n.length===0?d.jsx("div",{className:"live-entry",children:d.jsx("span",{children:"No recent event emissions"})}):d.jsx(d.Fragment,{children:n.slice(-10).reverse().map((g,O)=>d.jsxs("div",{className:"live-entry live-entry--emission",children:[d.jsx("span",{className:"entry-time",children:p(g.timestampMs)}),d.jsx("a",{href:`#element-${g.eventId}`,className:"entry-event",children:g.eventId}),g.emitterId&&d.jsxs("span",{className:"entry-emitter",children:["from"," ",d.jsx("a",{href:`#element-${g.emitterId}`,className:"entry-emitter--link",children:g.emitterId})]}),g.payload&&d.jsx("button",{className:"clean-button",onClick:()=>u(JSON.stringify(JSON.parse(g.payload),null,2),g.eventId),children:"View Payload"})]},`${g.timestampMs}-${O}`))})}),d.jsx(un,{title:"Event Payload",subtitle:i||void 0,isOpen:o,onClose:f,code:t})]})},TM=({runs:n,errors:e,detailed:t=!1})=>{const[s,i]=B.useState(null),[r,o]=B.useState(null),[c,u]=B.useState(!1),f=(O,v)=>{i(O),o(v),u(!0)},p=()=>{u(!1),i(null),o(null)},g=O=>new Date(O).toLocaleTimeString();return d.jsxs("div",{className:"recent-runs",children:[e.length>0&&d.jsxs("div",{className:"errors-section",children:[d.jsxs("h4",{children:["Recent Errors (",e.length,")"]}),d.jsx("div",{className:"live-entries",children:e.slice(-10).reverse().map((O,v)=>d.jsxs("div",{className:"live-entry live-entry--error",children:[d.jsx("span",{className:"entry-time",children:g(O.timestampMs)}),d.jsxs("a",{href:`#element-${O.sourceId}`,className:"entry-source",children:[O.sourceKind,":",O.sourceId]}),O.stack&&d.jsxs("div",{className:"entry-actions",children:[d.jsx("button",{className:"clean-button",onClick:()=>f(O.stack,O.sourceId),children:"View Stack Trace"}),d.jsx("button",{className:"clean-button",title:"Add to AI",onClick:()=>{const k=`I have the following error on @${O.sourceResolved&&O.sourceResolved.id||O.sourceId}: ${O.message} with stack:
|
|
185
|
+
${O.stack||""}`,S=k;window.dispatchEvent(new CustomEvent("docs:add-to-ai",{detail:{messageText:k,displayText:S}}))},children:"✦"})]})]},`${O.timestampMs}-${v}`))})]}),n.length>0&&d.jsxs("div",{className:"runs-section",children:[d.jsxs("h4",{children:["Recent Runs (",n.length,")"]}),d.jsx("div",{className:"live-entries",children:n.slice(-10).reverse().map((O,v)=>d.jsxs("div",{className:`live-entry live-entry--run ${O.ok?"live-entry--success":"live-entry--failure"}`,children:[d.jsx("span",{className:"entry-time",children:g(O.timestampMs)}),d.jsx("span",{className:"entry-status",children:O.ok?"✅":"❌"}),d.jsxs("a",{href:`#element-${O.nodeId}`,className:"entry-node",children:[O.nodeKind,":",O.nodeId]}),O.durationMs&&d.jsxs("span",{className:"entry-duration",children:[O.durationMs.toFixed(1),"ms"]}),d.jsx("div",{className:"entry-actions",children:O.error&&d.jsx("button",{className:"clean-button",onClick:()=>f(O.error,O.nodeId),children:"View Error"})})]},`${O.timestampMs}-${v}`))})]}),d.jsx(un,{title:"Error Stack Trace",subtitle:r||void 0,isOpen:c,onClose:p,code:s})]})},PM=`
|
|
186
|
+
query LiveData($afterTimestamp: Float, $last: Int) {
|
|
187
|
+
live {
|
|
188
|
+
memory {
|
|
189
|
+
heapUsed
|
|
190
|
+
heapTotal
|
|
191
|
+
rss
|
|
192
|
+
}
|
|
193
|
+
cpu {
|
|
194
|
+
usage
|
|
195
|
+
loadAverage
|
|
196
|
+
}
|
|
197
|
+
eventLoop {
|
|
198
|
+
lag
|
|
199
|
+
}
|
|
200
|
+
gc(windowMs: 30000) {
|
|
201
|
+
collections
|
|
202
|
+
duration
|
|
203
|
+
}
|
|
204
|
+
logs(afterTimestamp: $afterTimestamp, last: $last) {
|
|
205
|
+
timestampMs
|
|
206
|
+
level
|
|
207
|
+
message
|
|
208
|
+
data
|
|
209
|
+
correlationId
|
|
210
|
+
sourceId
|
|
211
|
+
}
|
|
212
|
+
emissions(afterTimestamp: $afterTimestamp, last: $last) {
|
|
213
|
+
timestampMs
|
|
214
|
+
eventId
|
|
215
|
+
emitterId
|
|
216
|
+
payload
|
|
217
|
+
correlationId
|
|
218
|
+
eventResolved {
|
|
219
|
+
id
|
|
220
|
+
tags {
|
|
221
|
+
id
|
|
222
|
+
config
|
|
223
|
+
}
|
|
224
|
+
meta {
|
|
225
|
+
title
|
|
226
|
+
description
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
errors(afterTimestamp: $afterTimestamp, last: $last) {
|
|
231
|
+
timestampMs
|
|
232
|
+
sourceId
|
|
233
|
+
sourceKind
|
|
234
|
+
message
|
|
235
|
+
stack
|
|
236
|
+
data
|
|
237
|
+
correlationId
|
|
238
|
+
sourceResolved {
|
|
239
|
+
id
|
|
240
|
+
tags {
|
|
241
|
+
id
|
|
242
|
+
config
|
|
243
|
+
}
|
|
244
|
+
meta {
|
|
245
|
+
title
|
|
246
|
+
description
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
runs(afterTimestamp: $afterTimestamp, last: $last) {
|
|
251
|
+
timestampMs
|
|
252
|
+
nodeId
|
|
253
|
+
nodeKind
|
|
254
|
+
ok
|
|
255
|
+
durationMs
|
|
256
|
+
error
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
`,jM=({detailed:n=!1,introspector:e})=>{const[t,s]=B.useState(null),[i,r]=B.useState(!0),[o,c]=B.useState(null),[u,f]=B.useState(Date.now()),p=B.useRef(null),g=async v=>{try{const w={last:n?50:10};v&&(w.afterTimestamp=v);const k=await Qt(PM,w);if(k.live){s($=>!$||!v?k.live:{...k.live,logs:[...$.logs,...k.live.logs].slice(-100),emissions:[...$.emissions,...k.live.emissions].slice(-100),errors:[...$.errors,...k.live.errors].slice(-100),runs:[...$.runs,...k.live.runs].slice(-100)});const S=[...k.live.logs,...k.live.emissions,...k.live.errors,...k.live.runs];if(S.length>0){const $=Math.max(...S.map(b=>b.timestampMs));f($)}}c(null)}catch(w){c(w instanceof Error?w.message:"Failed to fetch live data")}};B.useEffect(()=>(g(),i&&(p.current=setInterval(()=>{g(u)},5e3)),()=>{p.current&&clearInterval(p.current)}),[i,u]);const O=v=>`${(v/1048576).toFixed(1)} MB`;return o?d.jsx("div",{className:"live-panel live-panel--error",children:d.jsxs("div",{className:"live-error",children:[d.jsxs("span",{children:["❌ Error loading live data: ",o]}),d.jsx("button",{onClick:()=>g(),children:"Retry"})]})}):t?d.jsxs("div",{className:"live-panel",children:[d.jsxs("div",{className:"live-controls",children:[d.jsxs("button",{onClick:()=>r(!i),className:`clean-button ${i?"live-toggle--active":""}`,children:[i?"⏸ Pause":"▶ Resume"," Live Updates"]}),d.jsx("button",{onClick:()=>g(),className:"clean-button",children:"Refresh"})]}),d.jsxs("div",{className:"live-main-grid",children:[d.jsxs("div",{className:"live-section live-section--health",children:[d.jsx("h3",{children:"System Health"}),d.jsxs("div",{className:"health-metrics",children:[d.jsxs("div",{className:"metric",children:[d.jsx("span",{className:"metric-label",children:"Memory"}),d.jsxs("span",{className:"metric-value",children:[O(t.memory.heapUsed)," /"," ",O(t.memory.heapTotal)]}),d.jsxs("div",{className:"metric-detail",children:["RSS: ",O(t.memory.rss)]})]}),d.jsxs("div",{className:"metric",children:[d.jsx("span",{className:"metric-label",children:"CPU Usage"}),d.jsxs("span",{className:"metric-value",children:[(t.cpu.usage*100).toFixed(1),"%"]}),d.jsxs("div",{className:"metric-detail",children:["Load: ",t.cpu.loadAverage.toFixed(2)]})]}),d.jsxs("div",{className:"metric",children:[d.jsx("span",{className:"metric-label",children:"Event Loop"}),d.jsxs("span",{className:"metric-value",children:[t.eventLoop.lag.toFixed(2),"ms"]}),d.jsx("div",{className:"metric-detail",children:"Lag"})]}),d.jsxs("div",{className:"metric",children:[d.jsx("span",{className:"metric-label",children:"GC (30s)"}),d.jsx("span",{className:"metric-value",children:t.gc.collections}),d.jsxs("div",{className:"metric-detail",children:[t.gc.duration.toFixed(1),"ms total"]})]})]})]}),d.jsx("div",{className:"live-logs-section",children:d.jsx($M,{logs:t.logs})}),d.jsxs("div",{className:"live-events-runs-grid",children:[d.jsx("div",{className:"live-section",children:d.jsx(CM,{emissions:t.emissions,detailed:n})}),d.jsx("div",{className:"live-section",children:d.jsx(TM,{runs:t.runs,errors:t.errors,detailed:n})})]})]})]}):d.jsx("div",{className:"live-panel live-panel--loading",children:d.jsx("div",{className:"live-loading",children:"📡 Loading live data..."})})};function Pm(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var mr=Pm();function mb(n){mr=n}var No={exec:()=>null};function Ke(n,e=""){let t=typeof n=="string"?n:n.source,s={replace:(i,r)=>{let o=typeof r=="string"?r:r.source;return o=o.replace(ln.caret,"$1"),t=t.replace(i,o),s},getRegex:()=>new RegExp(t,e)};return s}var ln={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i")},QM=/^(?:[ \t]*(?:\n|$))+/,NM=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,EM=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,ua=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,AM=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,jm=/(?:[*+-]|\d{1,9}[.)])/,gb=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Ob=Ke(gb).replace(/bull/g,jm).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),MM=Ke(gb).replace(/bull/g,jm).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Qm=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,RM=/^[^\n]+/,Nm=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,DM=Ke(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Nm).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),IM=Ke(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,jm).getRegex(),Gu="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Em=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,LM=Ke("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Em).replace("tag",Gu).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),yb=Ke(Qm).replace("hr",ua).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Gu).getRegex(),ZM=Ke(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",yb).getRegex(),Am={blockquote:ZM,code:NM,def:DM,fences:EM,heading:AM,hr:ua,html:LM,lheading:Ob,list:IM,newline:QM,paragraph:yb,table:No,text:RM},e0=Ke("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",ua).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Gu).getRegex(),zM={...Am,lheading:MM,table:e0,paragraph:Ke(Qm).replace("hr",ua).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",e0).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Gu).getRegex()},FM={...Am,html:Ke(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Em).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:No,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Ke(Qm).replace("hr",ua).replace("heading",` *#{1,6} *[^
|
|
261
|
+
]`).replace("lheading",Ob).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},BM=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,XM=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,vb=/^( {2,}|\\)\n(?!\s*$)/,VM=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Hu=/[\p{P}\p{S}]/u,Mm=/[\s\p{P}\p{S}]/u,xb=/[^\s\p{P}\p{S}]/u,WM=Ke(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Mm).getRegex(),wb=/(?!~)[\p{P}\p{S}]/u,UM=/(?!~)[\s\p{P}\p{S}]/u,YM=/(?:[^\s\p{P}\p{S}]|~)/u,qM=/\[(?:[^\[\]`]|`[^`]*?`)*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)|`[^`]*?`|<(?! )[^<>]*?>/g,kb=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,GM=Ke(kb,"u").replace(/punct/g,Hu).getRegex(),HM=Ke(kb,"u").replace(/punct/g,wb).getRegex(),Sb="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",KM=Ke(Sb,"gu").replace(/notPunctSpace/g,xb).replace(/punctSpace/g,Mm).replace(/punct/g,Hu).getRegex(),JM=Ke(Sb,"gu").replace(/notPunctSpace/g,YM).replace(/punctSpace/g,UM).replace(/punct/g,wb).getRegex(),e2=Ke("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,xb).replace(/punctSpace/g,Mm).replace(/punct/g,Hu).getRegex(),t2=Ke(/\\(punct)/,"gu").replace(/punct/g,Hu).getRegex(),n2=Ke(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),s2=Ke(Em).replace("(?:-->|$)","-->").getRegex(),i2=Ke("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",s2).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Au=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,r2=Ke(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Au).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),bb=Ke(/^!?\[(label)\]\[(ref)\]/).replace("label",Au).replace("ref",Nm).getRegex(),_b=Ke(/^!?\[(ref)\](?:\[\])?/).replace("ref",Nm).getRegex(),l2=Ke("reflink|nolink(?!\\()","g").replace("reflink",bb).replace("nolink",_b).getRegex(),t0=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Rm={_backpedal:No,anyPunctuation:t2,autolink:n2,blockSkip:qM,br:vb,code:XM,del:No,emStrongLDelim:GM,emStrongRDelimAst:KM,emStrongRDelimUnd:e2,escape:BM,link:r2,nolink:_b,punctuation:WM,reflink:bb,reflinkSearch:l2,tag:i2,text:VM,url:No},o2={...Rm,link:Ke(/^!?\[(label)\]\((.*?)\)/).replace("label",Au).getRegex(),reflink:Ke(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Au).getRegex()},Ep={...Rm,emStrongRDelimAst:JM,emStrongLDelim:HM,url:Ke(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",t0).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:Ke(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",t0).getRegex()},a2={...Ep,br:Ke(vb).replace("{2,}","*").getRegex(),text:Ke(Ep.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Bc={normal:Am,gfm:zM,pedantic:FM},fo={normal:Rm,gfm:Ep,breaks:a2,pedantic:o2},c2={"&":"&","<":"<",">":">",'"':""","'":"'"},n0=n=>c2[n];function xs(n,e){if(e){if(ln.escapeTest.test(n))return n.replace(ln.escapeReplace,n0)}else if(ln.escapeTestNoEncode.test(n))return n.replace(ln.escapeReplaceNoEncode,n0);return n}function s0(n){try{n=encodeURI(n).replace(ln.percentDecode,"%")}catch{return null}return n}function i0(n,e){let t=n.replace(ln.findPipe,(r,o,c)=>{let u=!1,f=o;for(;--f>=0&&c[f]==="\\";)u=!u;return u?"|":" |"}),s=t.split(ln.splitPipe),i=0;if(s[0].trim()||s.shift(),s.length>0&&!s.at(-1)?.trim()&&s.pop(),e)if(s.length>e)s.splice(e);else for(;s.length<e;)s.push("");for(;i<s.length;i++)s[i]=s[i].trim().replace(ln.slashPipe,"|");return s}function po(n,e,t){let s=n.length;if(s===0)return"";let i=0;for(;i<s&&n.charAt(s-i-1)===e;)i++;return n.slice(0,s-i)}function u2(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let s=0;s<n.length;s++)if(n[s]==="\\")s++;else if(n[s]===e[0])t++;else if(n[s]===e[1]&&(t--,t<0))return s;return t>0?-2:-1}function r0(n,e,t,s,i){let r=e.href,o=e.title||null,c=n[1].replace(i.other.outputLinkReplace,"$1");s.state.inLink=!0;let u={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:r,title:o,text:c,tokens:s.inlineTokens(c)};return s.state.inLink=!1,u}function d2(n,e,t){let s=n.match(t.other.indentCodeCompensation);if(s===null)return e;let i=s[1];return e.split(`
|
|
262
|
+
`).map(r=>{let o=r.match(t.other.beginningSpace);if(o===null)return r;let[c]=o;return c.length>=i.length?r.slice(i.length):r}).join(`
|
|
263
|
+
`)}var Mu=class{options;rules;lexer;constructor(n){this.options=n||mr}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:po(t,`
|
|
264
|
+
`)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],s=d2(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:s}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let s=po(t,"#");(this.options.pedantic||!s||this.rules.other.endingSpaceChar.test(s))&&(t=s.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:po(e[0],`
|
|
265
|
+
`)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=po(e[0],`
|
|
266
|
+
`).split(`
|
|
267
|
+
`),s="",i="",r=[];for(;t.length>0;){let o=!1,c=[],u;for(u=0;u<t.length;u++)if(this.rules.other.blockquoteStart.test(t[u]))c.push(t[u]),o=!0;else if(!o)c.push(t[u]);else break;t=t.slice(u);let f=c.join(`
|
|
268
|
+
`),p=f.replace(this.rules.other.blockquoteSetextReplace,`
|
|
269
|
+
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");s=s?`${s}
|
|
270
|
+
${f}`:f,i=i?`${i}
|
|
271
|
+
${p}`:p;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(p,r,!0),this.lexer.state.top=g,t.length===0)break;let O=r.at(-1);if(O?.type==="code")break;if(O?.type==="blockquote"){let v=O,w=v.raw+`
|
|
272
|
+
`+t.join(`
|
|
273
|
+
`),k=this.blockquote(w);r[r.length-1]=k,s=s.substring(0,s.length-v.raw.length)+k.raw,i=i.substring(0,i.length-v.text.length)+k.text;break}else if(O?.type==="list"){let v=O,w=v.raw+`
|
|
274
|
+
`+t.join(`
|
|
275
|
+
`),k=this.list(w);r[r.length-1]=k,s=s.substring(0,s.length-O.raw.length)+k.raw,i=i.substring(0,i.length-v.raw.length)+k.raw,t=w.substring(r.at(-1).raw.length).split(`
|
|
276
|
+
`);continue}}return{type:"blockquote",raw:s,tokens:r,text:i}}}list(n){let e=this.rules.block.list.exec(n);if(e){let t=e[1].trim(),s=t.length>1,i={type:"list",raw:"",ordered:s,start:s?+t.slice(0,-1):"",loose:!1,items:[]};t=s?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=s?t:"[*+-]");let r=this.rules.other.listItemRegex(t),o=!1;for(;n;){let u=!1,f="",p="";if(!(e=r.exec(n))||this.rules.block.hr.test(n))break;f=e[0],n=n.substring(f.length);let g=e[2].split(`
|
|
277
|
+
`,1)[0].replace(this.rules.other.listReplaceTabs,$=>" ".repeat(3*$.length)),O=n.split(`
|
|
278
|
+
`,1)[0],v=!g.trim(),w=0;if(this.options.pedantic?(w=2,p=g.trimStart()):v?w=e[1].length+1:(w=e[2].search(this.rules.other.nonSpaceChar),w=w>4?1:w,p=g.slice(w),w+=e[1].length),v&&this.rules.other.blankLine.test(O)&&(f+=O+`
|
|
279
|
+
`,n=n.substring(O.length+1),u=!0),!u){let $=this.rules.other.nextBulletRegex(w),b=this.rules.other.hrRegex(w),C=this.rules.other.fencesBeginRegex(w),T=this.rules.other.headingBeginRegex(w),P=this.rules.other.htmlBeginRegex(w);for(;n;){let N=n.split(`
|
|
280
|
+
`,1)[0],A;if(O=N,this.options.pedantic?(O=O.replace(this.rules.other.listReplaceNesting," "),A=O):A=O.replace(this.rules.other.tabCharGlobal," "),C.test(O)||T.test(O)||P.test(O)||$.test(O)||b.test(O))break;if(A.search(this.rules.other.nonSpaceChar)>=w||!O.trim())p+=`
|
|
281
|
+
`+A.slice(w);else{if(v||g.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||C.test(g)||T.test(g)||b.test(g))break;p+=`
|
|
282
|
+
`+O}!v&&!O.trim()&&(v=!0),f+=N+`
|
|
283
|
+
`,n=n.substring(N.length+1),g=A.slice(w)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(f)&&(o=!0));let k=null,S;this.options.gfm&&(k=this.rules.other.listIsTask.exec(p),k&&(S=k[0]!=="[ ] ",p=p.replace(this.rules.other.listReplaceTask,""))),i.items.push({type:"list_item",raw:f,task:!!k,checked:S,loose:!1,text:p,tokens:[]}),i.raw+=f}let c=i.items.at(-1);if(c)c.raw=c.raw.trimEnd(),c.text=c.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let u=0;u<i.items.length;u++)if(this.lexer.state.top=!1,i.items[u].tokens=this.lexer.blockTokens(i.items[u].text,[]),!i.loose){let f=i.items[u].tokens.filter(g=>g.type==="space"),p=f.length>0&&f.some(g=>this.rules.other.anyLine.test(g.raw));i.loose=p}if(i.loose)for(let u=0;u<i.items.length;u++)i.items[u].loose=!0;return i}}html(n){let e=this.rules.block.html.exec(n);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(n){let e=this.rules.block.def.exec(n);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),s=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:s,title:i}}}table(n){let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=i0(e[1]),s=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
|
|
284
|
+
`):[],r={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===s.length){for(let o of s)this.rules.other.tableAlignRight.test(o)?r.align.push("right"):this.rules.other.tableAlignCenter.test(o)?r.align.push("center"):this.rules.other.tableAlignLeft.test(o)?r.align.push("left"):r.align.push(null);for(let o=0;o<t.length;o++)r.header.push({text:t[o],tokens:this.lexer.inline(t[o]),header:!0,align:r.align[o]});for(let o of i)r.rows.push(i0(o,r.header.length).map((c,u)=>({text:c,tokens:this.lexer.inline(c),header:!1,align:r.align[u]})));return r}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let t=e[1].charAt(e[1].length-1)===`
|
|
285
|
+
`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let r=po(t.slice(0,-1),"\\");if((t.length-r.length)%2===0)return}else{let r=u2(e[2],"()");if(r===-2)return;if(r>-1){let o=(e[0].indexOf("!")===0?5:4)+e[1].length+r;e[2]=e[2].substring(0,r),e[0]=e[0].substring(0,o).trim(),e[3]=""}}let s=e[2],i="";if(this.options.pedantic){let r=this.rules.other.pedanticHrefTitle.exec(s);r&&(s=r[1],i=r[3])}else i=e[3]?e[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?s=s.slice(1):s=s.slice(1,-1)),r0(e,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let t;if((t=this.rules.inline.reflink.exec(n))||(t=this.rules.inline.nolink.exec(n))){let s=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[s.toLowerCase()];if(!i){let r=t[0].charAt(0);return{type:"text",raw:r,text:r}}return r0(t,i,t[0],this.lexer,this.rules)}}emStrong(n,e,t=""){let s=this.rules.inline.emStrongLDelim.exec(n);if(!(!s||s[3]&&t.match(this.rules.other.unicodeAlphaNumeric))&&(!(s[1]||s[2])||!t||this.rules.inline.punctuation.exec(t))){let i=[...s[0]].length-1,r,o,c=i,u=0,f=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(f.lastIndex=0,e=e.slice(-1*n.length+i);(s=f.exec(e))!=null;){if(r=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!r)continue;if(o=[...r].length,s[3]||s[4]){c+=o;continue}else if((s[5]||s[6])&&i%3&&!((i+o)%3)){u+=o;continue}if(c-=o,c>0)continue;o=Math.min(o,o+c+u);let p=[...s[0]][0].length,g=n.slice(0,i+s.index+p+o);if(Math.min(i,o)%2){let v=g.slice(1,-1);return{type:"em",raw:g,text:v,tokens:this.lexer.inlineTokens(v)}}let O=g.slice(2,-2);return{type:"strong",raw:g,text:O,tokens:this.lexer.inlineTokens(O)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),s=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return s&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n){let e=this.rules.inline.del.exec(n);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let t,s;return e[2]==="@"?(t=e[1],s="mailto:"+t):(t=e[1],s=t),{type:"link",raw:e[0],text:t,href:s,tokens:[{type:"text",raw:t,text:t}]}}}url(n){let e;if(e=this.rules.inline.url.exec(n)){let t,s;if(e[2]==="@")t=e[0],s="mailto:"+t;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);t=e[0],e[1]==="www."?s="http://"+e[0]:s=e[0]}return{type:"link",raw:e[0],text:t,href:s,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},ts=class Ap{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||mr,this.options.tokenizer=this.options.tokenizer||new Mu,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:ln,block:Bc.normal,inline:fo.normal};this.options.pedantic?(t.block=Bc.pedantic,t.inline=fo.pedantic):this.options.gfm&&(t.block=Bc.gfm,this.options.breaks?t.inline=fo.breaks:t.inline=fo.gfm),this.tokenizer.rules=t}static get rules(){return{block:Bc,inline:fo}}static lex(e,t){return new Ap(t).lex(e)}static lexInline(e,t){return new Ap(t).inlineTokens(e)}lex(e){e=e.replace(ln.carriageReturn,`
|
|
286
|
+
`),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let s=this.inlineQueue[t];this.inlineTokens(s.src,s.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],s=!1){for(this.options.pedantic&&(e=e.replace(ln.tabCharGlobal," ").replace(ln.spaceLine,""));e;){let i;if(this.options.extensions?.block?.some(o=>(i=o.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let o=t.at(-1);i.raw.length===1&&o!==void 0?o.raw+=`
|
|
287
|
+
`:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=(o.raw.endsWith(`
|
|
288
|
+
`)?"":`
|
|
289
|
+
`)+i.raw,o.text+=`
|
|
290
|
+
`+i.text,this.inlineQueue.at(-1).src=o.text):t.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=(o.raw.endsWith(`
|
|
291
|
+
`)?"":`
|
|
292
|
+
`)+i.raw,o.text+=`
|
|
293
|
+
`+i.raw,this.inlineQueue.at(-1).src=o.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title},t.push(i));continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),t.push(i);continue}let r=e;if(this.options.extensions?.startBlock){let o=1/0,c=e.slice(1),u;this.options.extensions.startBlock.forEach(f=>{u=f.call({lexer:this},c),typeof u=="number"&&u>=0&&(o=Math.min(o,u))}),o<1/0&&o>=0&&(r=e.substring(0,o+1))}if(this.state.top&&(i=this.tokenizer.paragraph(r))){let o=t.at(-1);s&&o?.type==="paragraph"?(o.raw+=(o.raw.endsWith(`
|
|
294
|
+
`)?"":`
|
|
295
|
+
`)+i.raw,o.text+=`
|
|
296
|
+
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(i),s=r.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let o=t.at(-1);o?.type==="text"?(o.raw+=(o.raw.endsWith(`
|
|
297
|
+
`)?"":`
|
|
298
|
+
`)+i.raw,o.text+=`
|
|
299
|
+
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(i);continue}if(e){let o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let s=e,i=null;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)c.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,i.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(i=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)s=s.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);s=this.options.hooks?.emStrongMask?.call({lexer:this},s)??s;let r=!1,o="";for(;e;){r||(o=""),r=!1;let c;if(this.options.extensions?.inline?.some(f=>(c=f.call({lexer:this},e,t))?(e=e.substring(c.raw.length),t.push(c),!0):!1))continue;if(c=this.tokenizer.escape(e)){e=e.substring(c.raw.length),t.push(c);continue}if(c=this.tokenizer.tag(e)){e=e.substring(c.raw.length),t.push(c);continue}if(c=this.tokenizer.link(e)){e=e.substring(c.raw.length),t.push(c);continue}if(c=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(c.raw.length);let f=t.at(-1);c.type==="text"&&f?.type==="text"?(f.raw+=c.raw,f.text+=c.text):t.push(c);continue}if(c=this.tokenizer.emStrong(e,s,o)){e=e.substring(c.raw.length),t.push(c);continue}if(c=this.tokenizer.codespan(e)){e=e.substring(c.raw.length),t.push(c);continue}if(c=this.tokenizer.br(e)){e=e.substring(c.raw.length),t.push(c);continue}if(c=this.tokenizer.del(e)){e=e.substring(c.raw.length),t.push(c);continue}if(c=this.tokenizer.autolink(e)){e=e.substring(c.raw.length),t.push(c);continue}if(!this.state.inLink&&(c=this.tokenizer.url(e))){e=e.substring(c.raw.length),t.push(c);continue}let u=e;if(this.options.extensions?.startInline){let f=1/0,p=e.slice(1),g;this.options.extensions.startInline.forEach(O=>{g=O.call({lexer:this},p),typeof g=="number"&&g>=0&&(f=Math.min(f,g))}),f<1/0&&f>=0&&(u=e.substring(0,f+1))}if(c=this.tokenizer.inlineText(u)){e=e.substring(c.raw.length),c.raw.slice(-1)!=="_"&&(o=c.raw.slice(-1)),r=!0;let f=t.at(-1);f?.type==="text"?(f.raw+=c.raw,f.text+=c.text):t.push(c);continue}if(e){let f="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(f);break}else throw new Error(f)}}return t}},Ru=class{options;parser;constructor(n){this.options=n||mr}space(n){return""}code({text:n,lang:e,escaped:t}){let s=(e||"").match(ln.notSpaceStart)?.[0],i=n.replace(ln.endingNewline,"")+`
|
|
300
|
+
`;return s?'<pre><code class="language-'+xs(s)+'">'+(t?i:xs(i,!0))+`</code></pre>
|
|
301
|
+
`:"<pre><code>"+(t?i:xs(i,!0))+`</code></pre>
|
|
302
|
+
`}blockquote({tokens:n}){return`<blockquote>
|
|
303
|
+
${this.parser.parse(n)}</blockquote>
|
|
304
|
+
`}html({text:n}){return n}def(n){return""}heading({tokens:n,depth:e}){return`<h${e}>${this.parser.parseInline(n)}</h${e}>
|
|
305
|
+
`}hr(n){return`<hr>
|
|
306
|
+
`}list(n){let e=n.ordered,t=n.start,s="";for(let o=0;o<n.items.length;o++){let c=n.items[o];s+=this.listitem(c)}let i=e?"ol":"ul",r=e&&t!==1?' start="'+t+'"':"";return"<"+i+r+`>
|
|
307
|
+
`+s+"</"+i+`>
|
|
308
|
+
`}listitem(n){let e="";if(n.task){let t=this.checkbox({checked:!!n.checked});n.loose?n.tokens[0]?.type==="paragraph"?(n.tokens[0].text=t+" "+n.tokens[0].text,n.tokens[0].tokens&&n.tokens[0].tokens.length>0&&n.tokens[0].tokens[0].type==="text"&&(n.tokens[0].tokens[0].text=t+" "+xs(n.tokens[0].tokens[0].text),n.tokens[0].tokens[0].escaped=!0)):n.tokens.unshift({type:"text",raw:t+" ",text:t+" ",escaped:!0}):e+=t+" "}return e+=this.parser.parse(n.tokens,!!n.loose),`<li>${e}</li>
|
|
309
|
+
`}checkbox({checked:n}){return"<input "+(n?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:n}){return`<p>${this.parser.parseInline(n)}</p>
|
|
310
|
+
`}table(n){let e="",t="";for(let i=0;i<n.header.length;i++)t+=this.tablecell(n.header[i]);e+=this.tablerow({text:t});let s="";for(let i=0;i<n.rows.length;i++){let r=n.rows[i];t="";for(let o=0;o<r.length;o++)t+=this.tablecell(r[o]);s+=this.tablerow({text:t})}return s&&(s=`<tbody>${s}</tbody>`),`<table>
|
|
311
|
+
<thead>
|
|
312
|
+
`+e+`</thead>
|
|
313
|
+
`+s+`</table>
|
|
314
|
+
`}tablerow({text:n}){return`<tr>
|
|
315
|
+
${n}</tr>
|
|
316
|
+
`}tablecell(n){let e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+`</${t}>
|
|
317
|
+
`}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${xs(n,!0)}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:e,tokens:t}){let s=this.parser.parseInline(t),i=s0(n);if(i===null)return s;n=i;let r='<a href="'+n+'"';return e&&(r+=' title="'+xs(e)+'"'),r+=">"+s+"</a>",r}image({href:n,title:e,text:t,tokens:s}){s&&(t=this.parser.parseInline(s,this.parser.textRenderer));let i=s0(n);if(i===null)return xs(t);n=i;let r=`<img src="${n}" alt="${t}"`;return e&&(r+=` title="${xs(e)}"`),r+=">",r}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:xs(n.text)}},Dm=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}},ns=class Mp{options;renderer;textRenderer;constructor(e){this.options=e||mr,this.options.renderer=this.options.renderer||new Ru,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Dm}static parse(e,t){return new Mp(t).parse(e)}static parseInline(e,t){return new Mp(t).parseInline(e)}parse(e,t=!0){let s="";for(let i=0;i<e.length;i++){let r=e[i];if(this.options.extensions?.renderers?.[r.type]){let c=r,u=this.options.extensions.renderers[c.type].call({parser:this},c);if(u!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(c.type)){s+=u||"";continue}}let o=r;switch(o.type){case"space":{s+=this.renderer.space(o);continue}case"hr":{s+=this.renderer.hr(o);continue}case"heading":{s+=this.renderer.heading(o);continue}case"code":{s+=this.renderer.code(o);continue}case"table":{s+=this.renderer.table(o);continue}case"blockquote":{s+=this.renderer.blockquote(o);continue}case"list":{s+=this.renderer.list(o);continue}case"html":{s+=this.renderer.html(o);continue}case"def":{s+=this.renderer.def(o);continue}case"paragraph":{s+=this.renderer.paragraph(o);continue}case"text":{let c=o,u=this.renderer.text(c);for(;i+1<e.length&&e[i+1].type==="text";)c=e[++i],u+=`
|
|
318
|
+
`+this.renderer.text(c);t?s+=this.renderer.paragraph({type:"paragraph",raw:u,text:u,tokens:[{type:"text",raw:u,text:u,escaped:!0}]}):s+=u;continue}default:{let c='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return s}parseInline(e,t=this.renderer){let s="";for(let i=0;i<e.length;i++){let r=e[i];if(this.options.extensions?.renderers?.[r.type]){let c=this.options.extensions.renderers[r.type].call({parser:this},r);if(c!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(r.type)){s+=c||"";continue}}let o=r;switch(o.type){case"escape":{s+=t.text(o);break}case"html":{s+=t.html(o);break}case"link":{s+=t.link(o);break}case"image":{s+=t.image(o);break}case"strong":{s+=t.strong(o);break}case"em":{s+=t.em(o);break}case"codespan":{s+=t.codespan(o);break}case"br":{s+=t.br(o);break}case"del":{s+=t.del(o);break}case"text":{s+=t.text(o);break}default:{let c='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return s}},xo=class{options;block;constructor(n){this.options=n||mr}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}emStrongMask(n){return n}provideLexer(){return this.block?ts.lex:ts.lexInline}provideParser(){return this.block?ns.parse:ns.parseInline}},h2=class{defaults=Pm();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=ns;Renderer=Ru;TextRenderer=Dm;Lexer=ts;Tokenizer=Mu;Hooks=xo;constructor(...n){this.use(...n)}walkTokens(n,e){let t=[];for(let s of n)switch(t=t.concat(e.call(this,s)),s.type){case"table":{let i=s;for(let r of i.header)t=t.concat(this.walkTokens(r.tokens,e));for(let r of i.rows)for(let o of r)t=t.concat(this.walkTokens(o.tokens,e));break}case"list":{let i=s;t=t.concat(this.walkTokens(i.items,e));break}default:{let i=s;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach(r=>{let o=i[r].flat(1/0);t=t.concat(this.walkTokens(o,e))}):i.tokens&&(t=t.concat(this.walkTokens(i.tokens,e)))}}return t}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{let s={...t};if(s.async=this.defaults.async||s.async||!1,t.extensions&&(t.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let r=e.renderers[i.name];r?e.renderers[i.name]=function(...o){let c=i.renderer.apply(this,o);return c===!1&&(c=r.apply(this,o)),c}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let r=e[i.level];r?r.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),s.extensions=e),t.renderer){let i=this.defaults.renderer||new Ru(this.defaults);for(let r in t.renderer){if(!(r in i))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;let o=r,c=t.renderer[o],u=i[o];i[o]=(...f)=>{let p=c.apply(i,f);return p===!1&&(p=u.apply(i,f)),p||""}}s.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new Mu(this.defaults);for(let r in t.tokenizer){if(!(r in i))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;let o=r,c=t.tokenizer[o],u=i[o];i[o]=(...f)=>{let p=c.apply(i,f);return p===!1&&(p=u.apply(i,f)),p}}s.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new xo;for(let r in t.hooks){if(!(r in i))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;let o=r,c=t.hooks[o],u=i[o];xo.passThroughHooks.has(r)?i[o]=f=>{if(this.defaults.async&&xo.passThroughHooksRespectAsync.has(r))return(async()=>{let g=await c.call(i,f);return u.call(i,g)})();let p=c.call(i,f);return u.call(i,p)}:i[o]=(...f)=>{if(this.defaults.async)return(async()=>{let g=await c.apply(i,f);return g===!1&&(g=await u.apply(i,f)),g})();let p=c.apply(i,f);return p===!1&&(p=u.apply(i,f)),p}}s.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,r=t.walkTokens;s.walkTokens=function(o){let c=[];return c.push(r.call(this,o)),i&&(c=c.concat(i.call(this,o))),c}}this.defaults={...this.defaults,...s}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return ts.lex(n,e??this.defaults)}parser(n,e){return ns.parse(n,e??this.defaults)}parseMarkdown(n){return(e,t)=>{let s={...t},i={...this.defaults,...s},r=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&s.async===!1)return r(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return r(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return r(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=n),i.async)return(async()=>{let o=i.hooks?await i.hooks.preprocess(e):e,c=await(i.hooks?await i.hooks.provideLexer():n?ts.lex:ts.lexInline)(o,i),u=i.hooks?await i.hooks.processAllTokens(c):c;i.walkTokens&&await Promise.all(this.walkTokens(u,i.walkTokens));let f=await(i.hooks?await i.hooks.provideParser():n?ns.parse:ns.parseInline)(u,i);return i.hooks?await i.hooks.postprocess(f):f})().catch(r);try{i.hooks&&(e=i.hooks.preprocess(e));let o=(i.hooks?i.hooks.provideLexer():n?ts.lex:ts.lexInline)(e,i);i.hooks&&(o=i.hooks.processAllTokens(o)),i.walkTokens&&this.walkTokens(o,i.walkTokens);let c=(i.hooks?i.hooks.provideParser():n?ns.parse:ns.parseInline)(o,i);return i.hooks&&(c=i.hooks.postprocess(c)),c}catch(o){return r(o)}}}onError(n,e){return t=>{if(t.message+=`
|
|
319
|
+
Please report this to https://github.com/markedjs/marked.`,n){let s="<p>An error occurred:</p><pre>"+xs(t.message+"",!0)+"</pre>";return e?Promise.resolve(s):s}if(e)return Promise.reject(t);throw t}}},hr=new h2;function He(n,e){return hr.parse(n,e)}He.options=He.setOptions=function(n){return hr.setOptions(n),He.defaults=hr.defaults,mb(He.defaults),He};He.getDefaults=Pm;He.defaults=mr;He.use=function(...n){return hr.use(...n),He.defaults=hr.defaults,mb(He.defaults),He};He.walkTokens=function(n,e){return hr.walkTokens(n,e)};He.parseInline=hr.parseInline;He.Parser=ns;He.parser=ns.parse;He.Renderer=Ru;He.TextRenderer=Dm;He.Lexer=ts;He.lexer=ts.lex;He.Tokenizer=Mu;He.Hooks=xo;He.parse=He;He.options;He.setOptions;He.use;He.walkTokens;He.parseInline;ns.parse;ts.lex;var $f={exports:{}},l0;function f2(){return l0||(l0=1,(function(n){var e=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};var t=(function(s){var i=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,r=0,o={},c={manual:s.Prism&&s.Prism.manual,disableWorkerMessageHandler:s.Prism&&s.Prism.disableWorkerMessageHandler,util:{encode:function b(C){return C instanceof u?new u(C.type,b(C.content),C.alias):Array.isArray(C)?C.map(b):C.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(b){return Object.prototype.toString.call(b).slice(8,-1)},objId:function(b){return b.__id||Object.defineProperty(b,"__id",{value:++r}),b.__id},clone:function b(C,T){T=T||{};var P,N;switch(c.util.type(C)){case"Object":if(N=c.util.objId(C),T[N])return T[N];P={},T[N]=P;for(var A in C)C.hasOwnProperty(A)&&(P[A]=b(C[A],T));return P;case"Array":return N=c.util.objId(C),T[N]?T[N]:(P=[],T[N]=P,C.forEach(function(X,F){P[F]=b(X,T)}),P);default:return C}},getLanguage:function(b){for(;b;){var C=i.exec(b.className);if(C)return C[1].toLowerCase();b=b.parentElement}return"none"},setLanguage:function(b,C){b.className=b.className.replace(RegExp(i,"gi"),""),b.classList.add("language-"+C)},currentScript:function(){if(typeof document>"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(P){var b=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(P.stack)||[])[1];if(b){var C=document.getElementsByTagName("script");for(var T in C)if(C[T].src==b)return C[T]}return null}},isActive:function(b,C,T){for(var P="no-"+C;b;){var N=b.classList;if(N.contains(C))return!0;if(N.contains(P))return!1;b=b.parentElement}return!!T}},languages:{plain:o,plaintext:o,text:o,txt:o,extend:function(b,C){var T=c.util.clone(c.languages[b]);for(var P in C)T[P]=C[P];return T},insertBefore:function(b,C,T,P){P=P||c.languages;var N=P[b],A={};for(var X in N)if(N.hasOwnProperty(X)){if(X==C)for(var F in T)T.hasOwnProperty(F)&&(A[F]=T[F]);T.hasOwnProperty(X)||(A[X]=N[X])}var H=P[b];return P[b]=A,c.languages.DFS(c.languages,function(J,R){R===H&&J!=b&&(this[J]=A)}),A},DFS:function b(C,T,P,N){N=N||{};var A=c.util.objId;for(var X in C)if(C.hasOwnProperty(X)){T.call(C,X,C[X],P||X);var F=C[X],H=c.util.type(F);H==="Object"&&!N[A(F)]?(N[A(F)]=!0,b(F,T,null,N)):H==="Array"&&!N[A(F)]&&(N[A(F)]=!0,b(F,T,X,N))}}},plugins:{},highlightAll:function(b,C){c.highlightAllUnder(document,b,C)},highlightAllUnder:function(b,C,T){var P={callback:T,container:b,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};c.hooks.run("before-highlightall",P),P.elements=Array.prototype.slice.apply(P.container.querySelectorAll(P.selector)),c.hooks.run("before-all-elements-highlight",P);for(var N=0,A;A=P.elements[N++];)c.highlightElement(A,C===!0,P.callback)},highlightElement:function(b,C,T){var P=c.util.getLanguage(b),N=c.languages[P];c.util.setLanguage(b,P);var A=b.parentElement;A&&A.nodeName.toLowerCase()==="pre"&&c.util.setLanguage(A,P);var X=b.textContent,F={element:b,language:P,grammar:N,code:X};function H(R){F.highlightedCode=R,c.hooks.run("before-insert",F),F.element.innerHTML=F.highlightedCode,c.hooks.run("after-highlight",F),c.hooks.run("complete",F),T&&T.call(F.element)}if(c.hooks.run("before-sanity-check",F),A=F.element.parentElement,A&&A.nodeName.toLowerCase()==="pre"&&!A.hasAttribute("tabindex")&&A.setAttribute("tabindex","0"),!F.code){c.hooks.run("complete",F),T&&T.call(F.element);return}if(c.hooks.run("before-highlight",F),!F.grammar){H(c.util.encode(F.code));return}if(C&&s.Worker){var J=new Worker(c.filename);J.onmessage=function(R){H(R.data)},J.postMessage(JSON.stringify({language:F.language,code:F.code,immediateClose:!0}))}else H(c.highlight(F.code,F.grammar,F.language))},highlight:function(b,C,T){var P={code:b,grammar:C,language:T};if(c.hooks.run("before-tokenize",P),!P.grammar)throw new Error('The language "'+P.language+'" has no grammar.');return P.tokens=c.tokenize(P.code,P.grammar),c.hooks.run("after-tokenize",P),u.stringify(c.util.encode(P.tokens),P.language)},tokenize:function(b,C){var T=C.rest;if(T){for(var P in T)C[P]=T[P];delete C.rest}var N=new g;return O(N,N.head,b),p(b,N,C,N.head,0),w(N)},hooks:{all:{},add:function(b,C){var T=c.hooks.all;T[b]=T[b]||[],T[b].push(C)},run:function(b,C){var T=c.hooks.all[b];if(!(!T||!T.length))for(var P=0,N;N=T[P++];)N(C)}},Token:u};s.Prism=c;function u(b,C,T,P){this.type=b,this.content=C,this.alias=T,this.length=(P||"").length|0}u.stringify=function b(C,T){if(typeof C=="string")return C;if(Array.isArray(C)){var P="";return C.forEach(function(H){P+=b(H,T)}),P}var N={type:C.type,content:b(C.content,T),tag:"span",classes:["token",C.type],attributes:{},language:T},A=C.alias;A&&(Array.isArray(A)?Array.prototype.push.apply(N.classes,A):N.classes.push(A)),c.hooks.run("wrap",N);var X="";for(var F in N.attributes)X+=" "+F+'="'+(N.attributes[F]||"").replace(/"/g,""")+'"';return"<"+N.tag+' class="'+N.classes.join(" ")+'"'+X+">"+N.content+"</"+N.tag+">"};function f(b,C,T,P){b.lastIndex=C;var N=b.exec(T);if(N&&P&&N[1]){var A=N[1].length;N.index+=A,N[0]=N[0].slice(A)}return N}function p(b,C,T,P,N,A){for(var X in T)if(!(!T.hasOwnProperty(X)||!T[X])){var F=T[X];F=Array.isArray(F)?F:[F];for(var H=0;H<F.length;++H){if(A&&A.cause==X+","+H)return;var J=F[H],R=J.inside,V=!!J.lookbehind,U=!!J.greedy,te=J.alias;if(U&&!J.pattern.global){var pe=J.pattern.toString().match(/[imsuy]*$/)[0];J.pattern=RegExp(J.pattern.source,pe+"g")}for(var ce=J.pattern||J,Y=P.next,z=N;Y!==C.tail&&!(A&&z>=A.reach);z+=Y.value.length,Y=Y.next){var Q=Y.value;if(C.length>b.length)return;if(!(Q instanceof u)){var j=1,I;if(U){if(I=f(ce,z,b,V),!I||I.index>=b.length)break;var fe=I.index,le=I.index+I[0].length,ee=z;for(ee+=Y.value.length;fe>=ee;)Y=Y.next,ee+=Y.value.length;if(ee-=Y.value.length,z=ee,Y.value instanceof u)continue;for(var re=Y;re!==C.tail&&(ee<le||typeof re.value=="string");re=re.next)j++,ee+=re.value.length;j--,Q=b.slice(z,ee),I.index-=z}else if(I=f(ce,0,Q,V),!I)continue;var fe=I.index,me=I[0],je=Q.slice(0,fe),De=Q.slice(fe+me.length),Ye=z+Q.length;A&&Ye>A.reach&&(A.reach=Ye);var Re=Y.prev;je&&(Re=O(C,Re,je),z+=je.length),v(C,Re,j);var Xe=new u(X,R?c.tokenize(me,R):me,te,me);if(Y=O(C,Re,Xe),De&&O(C,Y,De),j>1){var gt={cause:X+","+H,reach:Ye};p(b,C,T,Y.prev,z,gt),A&>.reach>A.reach&&(A.reach=gt.reach)}}}}}}function g(){var b={value:null,prev:null,next:null},C={value:null,prev:b,next:null};b.next=C,this.head=b,this.tail=C,this.length=0}function O(b,C,T){var P=C.next,N={value:T,prev:C,next:P};return C.next=N,P.prev=N,b.length++,N}function v(b,C,T){for(var P=C.next,N=0;N<T&&P!==b.tail;N++)P=P.next;C.next=P,P.prev=C,b.length-=N}function w(b){for(var C=[],T=b.head.next;T!==b.tail;)C.push(T.value),T=T.next;return C}if(!s.document)return s.addEventListener&&(c.disableWorkerMessageHandler||s.addEventListener("message",function(b){var C=JSON.parse(b.data),T=C.language,P=C.code,N=C.immediateClose;s.postMessage(c.highlight(P,c.languages[T],T)),N&&s.close()},!1)),c;var k=c.util.currentScript();k&&(c.filename=k.src,k.hasAttribute("data-manual")&&(c.manual=!0));function S(){c.manual||c.highlightAll()}if(!c.manual){var $=document.readyState;$==="loading"||$==="interactive"&&k&&k.defer?document.addEventListener("DOMContentLoaded",S):window.requestAnimationFrame?window.requestAnimationFrame(S):window.setTimeout(S,16)}return c})(e);n.exports&&(n.exports=t),typeof ky<"u"&&(ky.Prism=t),t.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},t.languages.markup.tag.inside["attr-value"].inside.entity=t.languages.markup.entity,t.languages.markup.doctype.inside["internal-subset"].inside=t.languages.markup,t.hooks.add("wrap",function(s){s.type==="entity"&&(s.attributes.title=s.content.replace(/&/,"&"))}),Object.defineProperty(t.languages.markup.tag,"addInlined",{value:function(i,r){var o={};o["language-"+r]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:t.languages[r]},o.cdata=/^<!\[CDATA\[|\]\]>$/i;var c={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:o}};c["language-"+r]={pattern:/[\s\S]+/,inside:t.languages[r]};var u={};u[i]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return i}),"i"),lookbehind:!0,greedy:!0,inside:c},t.languages.insertBefore("markup","cdata",u)}}),Object.defineProperty(t.languages.markup.tag,"addAttribute",{value:function(s,i){t.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+s+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[i,"language-"+i],inside:t.languages[i]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),t.languages.html=t.languages.markup,t.languages.mathml=t.languages.markup,t.languages.svg=t.languages.markup,t.languages.xml=t.languages.extend("markup",{}),t.languages.ssml=t.languages.xml,t.languages.atom=t.languages.xml,t.languages.rss=t.languages.xml,(function(s){var i=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;s.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+i.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+i.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+i.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+i.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:i,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},s.languages.css.atrule.inside.rest=s.languages.css;var r=s.languages.markup;r&&(r.tag.addInlined("style","css"),r.tag.addAttribute("style","css"))})(t),t.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},t.languages.javascript=t.languages.extend("clike",{"class-name":[t.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),t.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,t.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:t.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:t.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:t.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:t.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:t.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),t.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:t.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),t.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),t.languages.markup&&(t.languages.markup.tag.addInlined("script","javascript"),t.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),t.languages.js=t.languages.javascript,(function(){if(typeof t>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var s="Loading…",i=function(k,S){return"✖ Error "+k+" while fetching file: "+S},r="✖ Error: File does not exist or is empty",o={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},c="data-src-status",u="loading",f="loaded",p="failed",g="pre[data-src]:not(["+c+'="'+f+'"]):not(['+c+'="'+u+'"])';function O(k,S,$){var b=new XMLHttpRequest;b.open("GET",k,!0),b.onreadystatechange=function(){b.readyState==4&&(b.status<400&&b.responseText?S(b.responseText):b.status>=400?$(i(b.status,b.statusText)):$(r))},b.send(null)}function v(k){var S=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(k||"");if(S){var $=Number(S[1]),b=S[2],C=S[3];return b?C?[$,Number(C)]:[$,void 0]:[$,$]}}t.hooks.add("before-highlightall",function(k){k.selector+=", "+g}),t.hooks.add("before-sanity-check",function(k){var S=k.element;if(S.matches(g)){k.code="",S.setAttribute(c,u);var $=S.appendChild(document.createElement("CODE"));$.textContent=s;var b=S.getAttribute("data-src"),C=k.language;if(C==="none"){var T=(/\.(\w+)$/.exec(b)||[,"none"])[1];C=o[T]||T}t.util.setLanguage($,C),t.util.setLanguage(S,C);var P=t.plugins.autoloader;P&&P.loadLanguages(C),O(b,function(N){S.setAttribute(c,f);var A=v(S.getAttribute("data-range"));if(A){var X=N.split(/\r\n?|\n/g),F=A[0],H=A[1]==null?X.length:A[1];F<0&&(F+=X.length),F=Math.max(0,Math.min(F-1,X.length)),H<0&&(H+=X.length),H=Math.max(0,Math.min(H,X.length)),N=X.slice(F,H).join(`
|
|
320
|
+
`),S.hasAttribute("data-start")||S.setAttribute("data-start",String(F+1))}$.textContent=N,t.highlightElement($)},function(N){S.setAttribute(c,p),$.textContent=N})}}),t.plugins.fileHighlight={highlight:function(S){for(var $=(S||document).querySelectorAll(g),b=0,C;C=$[b++];)t.highlightElement(C)}};var w=!1;t.fileHighlight=function(){w||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),w=!0),t.plugins.fileHighlight.highlight.apply(this,arguments)}})()})($f)),$f.exports}var p2=f2();const Cf=C0(p2);var o0={},a0;function m2(){return a0||(a0=1,(function(n){n.languages.typescript=n.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),n.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete n.languages.typescript.parameter,delete n.languages.typescript["literal-property"];var e=n.languages.extend("typescript",{});delete e["class-name"],n.languages.typescript["class-name"].inside=e,n.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e}}}}),n.languages.ts=n.languages.typescript})(Prism)),o0}m2();Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Prism.languages.js=Prism.languages.javascript;(function(n){var e=n.util.clone(n.languages.javascript),t=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,s=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,i=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function r(u,f){return u=u.replace(/<S>/g,function(){return t}).replace(/<BRACES>/g,function(){return s}).replace(/<SPREAD>/g,function(){return i}),RegExp(u,f)}i=r(i).source,n.languages.jsx=n.languages.extend("markup",e),n.languages.jsx.tag.pattern=r(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\/?)?>/.source),n.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,n.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,n.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,n.languages.jsx.tag.inside.comment=e.comment,n.languages.insertBefore("inside","attr-name",{spread:{pattern:r(/<SPREAD>/.source),inside:n.languages.jsx}},n.languages.jsx.tag),n.languages.insertBefore("inside","special-attr",{script:{pattern:r(/=<BRACES>/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:n.languages.jsx}}},n.languages.jsx.tag);var o=function(u){return u?typeof u=="string"?u:typeof u.content=="string"?u.content:u.content.map(o).join(""):""},c=function(u){for(var f=[],p=0;p<u.length;p++){var g=u[p],O=!1;if(typeof g!="string"&&(g.type==="tag"&&g.content[0]&&g.content[0].type==="tag"?g.content[0].content[0].content==="</"?f.length>0&&f[f.length-1].tagName===o(g.content[0].content[1])&&f.pop():g.content[g.content.length-1].content==="/>"||f.push({tagName:o(g.content[0].content[1]),openedBraces:0}):f.length>0&&g.type==="punctuation"&&g.content==="{"?f[f.length-1].openedBraces++:f.length>0&&f[f.length-1].openedBraces>0&&g.type==="punctuation"&&g.content==="}"?f[f.length-1].openedBraces--:O=!0),(O||typeof g=="string")&&f.length>0&&f[f.length-1].openedBraces===0){var v=o(g);p<u.length-1&&(typeof u[p+1]=="string"||u[p+1].type==="plain-text")&&(v+=o(u[p+1]),u.splice(p+1,1)),p>0&&(typeof u[p-1]=="string"||u[p-1].type==="plain-text")&&(v=o(u[p-1])+v,u.splice(p-1,1),p--),u[p]=new n.Token("plain-text",v,null,v)}g.content&&typeof g.content!="string"&&c(g.content)}};n.hooks.add("after-tokenize",function(u){u.language!=="jsx"&&u.language!=="tsx"||c(u.tokens)})})(Prism);(function(n){var e=n.util.clone(n.languages.typescript);n.languages.tsx=n.languages.extend("jsx",e),delete n.languages.tsx.parameter,delete n.languages.tsx["literal-property"];var t=n.languages.tsx.tag;t.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+t.pattern.source+")",t.pattern.flags),t.lookbehind=!0})(Prism);Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}};Prism.languages.webmanifest=Prism.languages.json;(function(n){var e="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",t={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},s={bash:t,environment:{pattern:RegExp("\\$"+e),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+e),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};n.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+e),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:s},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:t}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:s},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:s.entity}}],environment:{pattern:RegExp("\\$?"+e),alias:"constant"},variable:s.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},t.inside=n.languages.bash;for(var i=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],r=s.variable[1].inside,o=0;o<i.length;o++)r[i[o]]=n.languages.bash[i[o]];n.languages.sh=n.languages.bash,n.languages.shell=n.languages.bash})(Prism);(function(n){var e=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;n.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+e.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+e.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+e.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+e.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:e,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},n.languages.css.atrule.inside.rest=n.languages.css;var t=n.languages.markup;t&&(t.tag.addInlined("style","css"),t.tag.addAttribute("style","css"))})(Prism);var c0={},u0;function g2(){return u0||(u0=1,Prism.languages.scss=Prism.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),Prism.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),Prism.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),Prism.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),Prism.languages.scss.atrule.inside.rest=Prism.languages.scss),c0}g2();(function(n){var e=/[*&][^\s[\]{},]+/,t=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,s="(?:"+t.source+"(?:[ ]+"+e.source+")?|"+e.source+"(?:[ ]+"+t.source+")?)",i=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),r=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function o(c,u){u=(u||"").replace(/m/g,"")+"m";var f=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,function(){return s}).replace(/<<value>>/g,function(){return c});return RegExp(f,u)}n.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,function(){return s})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return s}).replace(/<<key>>/g,function(){return"(?:"+i+"|"+r+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:o(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:o(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:o(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:o(r),lookbehind:!0,greedy:!0},number:{pattern:o(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:t,important:e,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},n.languages.yml=n.languages.yaml})(Prism);Prism.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:Prism.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/};Prism.hooks.add("after-tokenize",function(e){if(e.language!=="graphql")return;var t=e.tokens.filter(function(k){return typeof k!="string"&&k.type!=="comment"&&k.type!=="scalar"}),s=0;function i(k){return t[s+k]}function r(k,S){S=S||0;for(var $=0;$<k.length;$++){var b=i($+S);if(!b||b.type!==k[$])return!1}return!0}function o(k,S){for(var $=1,b=s;b<t.length;b++){var C=t[b],T=C.content;if(C.type==="punctuation"&&typeof T=="string"){if(k.test(T))$++;else if(S.test(T)&&($--,$===0))return b}}return-1}function c(k,S){var $=k.alias;$?Array.isArray($)||(k.alias=$=[$]):k.alias=$=[],$.push(S)}for(;s<t.length;){var u=t[s++];if(u.type==="keyword"&&u.content==="mutation"){var f=[];if(r(["definition-mutation","punctuation"])&&i(1).content==="("){s+=2;var p=o(/^\($/,/^\)$/);if(p===-1)continue;for(;s<p;s++){var g=i(0);g.type==="variable"&&(c(g,"variable-input"),f.push(g.content))}s=p+1}if(r(["punctuation","property-query"])&&i(0).content==="{"&&(s++,c(i(0),"property-mutation"),f.length>0)){var O=o(/^\{$/,/^\}$/);if(O===-1)continue;for(var v=s;v<O;v++){var w=t[v];w.type==="variable"&&f.indexOf(w.content)>=0&&c(w,"variable-input")}}}}});const $b=new He.Renderer;$b.code=(n,e)=>{let t=n;if(e&&Cf.languages[e])try{t=Cf.highlight(n,Cf.languages[e],e)}catch(s){console.warn(`Failed to highlight code with language "${e}":`,s)}return`<pre class="language-${e||"text"}"><code class="language-${e||"text"}">${t}</code></pre>`};He.setOptions({breaks:!0,gfm:!0,renderer:$b});const Cb=({content:n,className:e=""})=>{const t=se.useMemo(()=>{try{return He(n)}catch(s){return console.error("Error rendering markdown:",s),n}},[n]);return d.jsx("div",{className:`markdown-content ${e}`,dangerouslySetInnerHTML:{__html:t}})},Oi=({elements:n,title:e,icon:t,id:s,enableActions:i,onAction:r})=>{const[o,c]=se.useState({}),[u,f]=se.useState({}),p=se.useRef({}),g=v=>{c(w=>({...w,[v]:!w[v]}))};if(se.useEffect(()=>{const w=setTimeout(()=>{const k={};Object.entries(p.current).forEach(([S,$])=>{if($){const b=$.firstElementChild;if(b){const C=b.scrollHeight>b.clientHeight;k[S]=C}}}),f(k)},0);return()=>clearTimeout(w)},[n]),n.length===0)return null;const O=v=>{r?.(v)};return d.jsxs("div",{className:"element-table",id:s,children:[d.jsxs("h2",{className:"element-table__title",children:[t&&d.jsx("span",{className:"element-table__icon",children:t}),e," (",n.length,")"]}),d.jsx("div",{className:"element-table__container",children:d.jsxs("table",{className:"element-table__table",children:[d.jsx("thead",{children:d.jsxs("tr",{children:[d.jsx("th",{className:"element-table__header element-table__header--id",children:"ID"}),d.jsx("th",{className:"element-table__header element-table__header--title",children:"Title"}),d.jsx("th",{className:"element-table__header element-table__header--description",children:"Description"})]})}),d.jsx("tbody",{children:n.map(v=>{const w=!!o[v.id];return d.jsxs("tr",{className:"element-table__row",children:[d.jsx("td",{className:"element-table__cell element-table__cell--id",children:d.jsx("div",{className:"element-table__id-container",children:d.jsx("a",{href:`#element-${v.id}`,className:"element-table__id-link",title:v.id,children:d.jsx("code",{className:"element-table__id-code",children:v.id})})})}),d.jsxs("td",{className:"element-table__cell element-table__cell--title",children:[d.jsx("a",{href:`#element-${v.id}`,className:"element-table__title-link",title:v.meta?.title||v.id,children:v.meta?.title||d.jsx("span",{className:"element-table__empty",children:"Untitled"})}),i&&d.jsx("button",{className:`element-table__action-btn ${i==="task"?"element-table__action-btn--run":"element-table__action-btn--emit"}`,onClick:k=>{k.preventDefault(),k.stopPropagation(),O(v)},title:i==="task"?"Run Task":"Emit Event","aria-label":i==="task"?"Run":"Emit",children:i==="task"?"Run":"Emit"})]}),d.jsx("td",{className:"element-table__cell element-table__cell--description",children:v.meta?.description?d.jsxs("div",{className:"element-table__description-container",children:[d.jsx("div",{ref:k=>{p.current[v.id]=k},className:`element-table__description ${w?"expanded":""}`,children:d.jsx(Cb,{content:v.meta.description})}),u[v.id]&&d.jsx("button",{className:"element-table__expand-btn",onClick:k=>{k.stopPropagation(),g(v.id)},"aria-expanded":w,title:w?"Show less":"Show more",children:w?"Less":"More"})]}):d.jsx("span",{className:"element-table__empty",children:"—"})})]},v.id)})})]})})]})},O2=({introspector:n,sidebarWidth:e,chatWidth:t,isChatOpen:s,chatPushesLeft:i,openStats:r,isStatsOpen:o,closeStats:c,suspendRendering:u=!1,tasks:f,resources:p,events:g,hooks:O,middlewares:v,errors:w,asyncContexts:k,tags:S})=>{const $=n.getRoot(),b=$?.meta?.title||"Runner Application Documentation",C=$?.meta?.description||"Complete overview of your application's architecture and components";return d.jsxs("div",{className:`docs-main-content ${u?"docs-main-content--suspended":""}`,style:{marginLeft:`${e+(i&&s&&t||0)+40}px`,marginRight:void 0},children:[u&&d.jsx("div",{className:"docs-main-overlay"}),d.jsxs("div",{className:"docs-content-container",children:[d.jsxs("header",{id:"top",className:"docs-header",children:[d.jsx("h1",{children:b}),d.jsx("p",{children:C})]}),d.jsxs("section",{id:"live",className:"docs-section",children:[d.jsx("h2",{children:"📡 Live Telemetry"}),d.jsx(jM,{detailed:!0,introspector:n})]}),d.jsxs("section",{id:"diagnostics",className:"docs-section",children:[d.jsx("h2",{children:"🔍 Diagnostics"}),d.jsx(bM,{introspector:n,detailed:!0})]}),d.jsxs("section",{id:"overview",className:"docs-section",children:[d.jsxs("div",{className:"overview-header",children:[d.jsx("h2",{children:"📋 Overview"}),d.jsx("div",{children:d.jsx("button",{onClick:r,"aria-label":"Open Stats",title:"Open Stats",className:"clean-button",children:"📊"})})]}),d.jsxs("div",{className:"overview-grid",children:[d.jsxs("a",{href:"#tasks",className:"card card--tasks",children:[d.jsx("h3",{children:"Tasks"}),d.jsx("div",{className:"count",children:f.length})]}),d.jsxs("a",{href:"#resources",className:"card card--resources",children:[d.jsx("h3",{children:"Resources"}),d.jsx("div",{className:"count",children:p.length})]}),d.jsxs("a",{href:"#events",className:"card card--events",children:[d.jsx("h3",{children:"Events"}),d.jsx("div",{className:"count",children:g.length})]}),d.jsxs("a",{href:"#middlewares",className:"card card--middlewares",children:[d.jsx("h3",{children:"Middlewares"}),d.jsx("div",{className:"count",children:v.length})]}),d.jsxs("a",{href:"#hooks",className:"card card--hooks",children:[d.jsx("h3",{children:"Hooks"}),d.jsx("div",{className:"count",children:O.length})]}),w.length>0&&d.jsxs("a",{href:"#errors",className:"card card--errors",children:[d.jsx("h3",{children:"Errors"}),d.jsx("div",{className:"count",children:w.length})]}),k.length>0&&d.jsxs("a",{href:"#asyncContexts",className:"card card--async-contexts",children:[d.jsx("h3",{children:"Async Contexts"}),d.jsx("div",{className:"count",children:k.length})]}),d.jsxs("a",{href:"#tags",className:"card card--tags",children:[d.jsx("h3",{children:"Tags"}),d.jsx("div",{className:"count",children:S.length})]})]})]}),f.length>0&&d.jsx(Oi,{elements:f,title:"Tasks Overview",icon:"⚙️",id:"tasks",enableActions:"task",onAction:T=>{window.dispatchEvent(new CustomEvent("docs:execute-element",{detail:{type:"task",id:T.id}}))}}),f.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["⚙️ Tasks (",f.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:f.map(T=>d.jsx(hM,{task:T,introspector:n},T.id))})]}),p.length>0&&d.jsx(Oi,{elements:p,title:"Resources Overview",icon:"🔧",id:"resources"}),p.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["🔧 Resources (",p.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:p.map(T=>d.jsx(fM,{resource:T,introspector:n},T.id))})]}),g.length>0&&d.jsx(Oi,{elements:g,title:"Events Overview",icon:"📡",id:"events",enableActions:"event",onAction:T=>{window.dispatchEvent(new CustomEvent("docs:execute-element",{detail:{type:"event",id:T.id}}))}}),g.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["📡 Events (",g.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:g.map(T=>d.jsx(mM,{event:T,introspector:n},T.id))})]}),O.length>0&&d.jsx(Oi,{elements:O,title:"Hooks Overview",icon:"🪝",id:"hooks"}),O.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["🪝 Hooks (",O.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:O.map(T=>d.jsx(yM,{hook:T,introspector:n},T.id))})]}),w.length>0&&d.jsx(Oi,{elements:w,title:"Errors Overview",icon:"❌",id:"errors"}),w.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["❌ Errors (",w.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:w.map(T=>d.jsx(kM,{error:T,introspector:n},T.id))})]}),k.length>0&&d.jsx(Oi,{elements:k,title:"Async Contexts Overview",icon:"🔄",id:"asyncContexts"}),k.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["🔄 Async Contexts (",k.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:k.map(T=>d.jsx(SM,{asyncContext:T,introspector:n},T.id))})]}),v.length>0&&d.jsx(Oi,{elements:v,title:"Middlewares Overview",icon:"🔗",id:"middlewares"}),v.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["🔗 Middlewares (",v.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:v.map(T=>d.jsx(pM,{middleware:T,introspector:n},T.id))})]}),S.length>0&&d.jsx(Oi,{elements:S,title:"Tags Overview",icon:"🏷️",id:"tags"}),S.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["Tags (",S.length,")"]}),d.jsx("div",{className:"docs-tags-grid",children:S.map(T=>d.jsx(xM,{tag:T,introspector:n},T.id))})]})]})]})},Fe={STORAGE_KEYS:{SHOW_SYSTEM:"docs-show-system",SIDEBAR_WIDTH:"docs-sidebar-width",CHAT_SIDEBAR_WIDTH:"docs-chat-sidebar-width",CHAT_OPEN:"docs-chat-open",VIEW_MODE:"docs-view-mode",TREE_TYPE:"docs-tree-type",COMPACT_MODE:"docs-compact-mode"},DEFAULTS:{SIDEBAR_WIDTH:280,CHAT_SIDEBAR_WIDTH:320,CHAT_OPEN:!1,VIEW_MODE:"list",TREE_TYPE:"namespace",SHOW_SYSTEM:!1,COMPACT_MODE:!1},CONSTRAINTS:{MIN_SIDEBAR_WIDTH:80,MAX_SIDEBAR_WIDTH:600,MIN_CHAT_WIDTH:240,MAX_CHAT_WIDTH:600,HIGHLIGHT_DURATION:2e3},CSS_CLASSES:{HIGHLIGHT_TARGET:"docs-highlight-target",SIDEBAR_RESIZER_ACTIVE:"docs-sidebar-resizer--active"},SYSTEM_TAG_ID:"globals.tags.system"};function _i(n){return String(n||"").toLowerCase()}function Rp(n){const e=String(n??""),t=e.trim().startsWith(":"),s=t?e.trim().slice(1):e.trim();if(!s)return{isTagSearch:t,groups:[]};const i=s.split(/\s*\|\s*/).map(r=>{const o=r.split(/\s*,\s*/).map(f=>f.trim()).filter(f=>f.length>0),c=[],u=[];return o.forEach(f=>{if(f.startsWith("!")){const p=_i(f.slice(1));p&&u.push(p)}else{const p=_i(f);p&&c.push(p)}}),{include:c,exclude:u}}).filter(r=>r.include.length>0||r.exclude.length>0);return{isTagSearch:t,groups:i}}function d0(n,e){if(!e.groups.length)return!0;const t=_i(n.id),s=Array.isArray(n.tags)?n.tags.map(_i):[],i=r=>{if(r.include.length===0&&r.exclude.length===0)return!0;if(e.isTagSearch){const o=r.include.length===0||r.include.every(u=>s.some(f=>f.includes(u))),c=r.exclude.length===0||!r.exclude.some(u=>s.some(f=>f.includes(u)));return o&&c}else{const o=r.include.length===0||r.include.every(u=>t.includes(u)),c=r.exclude.length===0||!r.exclude.some(u=>t.includes(u));return o&&c}};return e.groups.some(i)}function y2(n,e){if(!e.groups.length)return!0;const t=_i(n.label),s=_i(n.elementId||""),i=n.element,r={id:_i(i?.id||s||t),tags:Array.isArray(i?.tags)?i.tags:[]},o=c=>{if(c.include.length===0&&c.exclude.length===0)return!0;if(e.isTagSearch){const u=(r.tags||[]).map(_i),f=c.include.length===0||c.include.every(g=>u.some(O=>O.includes(g))),p=c.exclude.length===0||!c.exclude.some(g=>u.some(O=>O.includes(g)));return f&&p}else{const u=c.include.length===0||c.include.every(p=>t.includes(p)||s.includes(p)),f=c.exclude.length===0||!c.exclude.some(p=>t.includes(p)||s.includes(p));return u&&f}};return e.groups.some(o)}const v2=(n,e)=>{const[t,s]=B.useState(e||""),i=B.useMemo(()=>Rp(t),[t]),[r,o]=B.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.SHOW_SYSTEM)==="1"}catch{return Fe.DEFAULTS.SHOW_SYSTEM}});B.useEffect(()=>{s(e||"")},[e]);const c=O=>O?Array.isArray(O?.tags)?O.tags.includes(Fe.SYSTEM_TAG_ID):O?.id===Fe.SYSTEM_TAG_ID:!1,u=O=>{let v=O;return r||(v=v.filter(w=>!c(w))),t&&(v=v.filter(w=>d0({id:String(w.id),tags:w.tags||[]},i))),v},f=B.useMemo(()=>{const O=u(n.getTasks()),v=u(n.getResources()),w=u(n.getEvents()),k=u(n.getHooks()),S=u(n.getMiddlewares());let $=n.getAllTags();if(r||($=$.filter(b=>!c(b))),t){const b=i.isTagSearch?t.trim().slice(1):t.trim(),C=Rp(b);$=$.filter(T=>d0({id:T.id,tags:[]},C))}return{tasks:O,resources:v,events:w,hooks:k,middlewares:S,tags:$,allElements:[...O,...v,...w,...k,...S,...$]}},[n,r,t,i]),p=O=>{o(O);try{localStorage.setItem(Fe.STORAGE_KEYS.SHOW_SYSTEM,O?"1":"0")}catch{}};return{localNamespaceSearch:t,setLocalNamespaceSearch:s,showSystem:r,handleShowSystemChange:p,resetFilters:()=>{s(""),p(!0)},isSystemElement:c,applyFilters:u,...f}},x2=()=>{const[n,e]=B.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.VIEW_MODE)||Fe.DEFAULTS.VIEW_MODE}catch{return Fe.DEFAULTS.VIEW_MODE}}),[t,s]=B.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.TREE_TYPE)||Fe.DEFAULTS.TREE_TYPE}catch{return Fe.DEFAULTS.TREE_TYPE}});return{viewMode:n,treeType:t,handleViewModeChange:o=>{e(o);try{localStorage.setItem(Fe.STORAGE_KEYS.VIEW_MODE,o)}catch{}},handleTreeTypeChange:o=>{s(o);try{localStorage.setItem(Fe.STORAGE_KEYS.TREE_TYPE,o)}catch{}}}},w2=(n=0)=>{const[e,t]=B.useState(()=>{try{return parseInt(localStorage.getItem(Fe.STORAGE_KEYS.SIDEBAR_WIDTH)||Fe.DEFAULTS.SIDEBAR_WIDTH.toString(),10)}catch{return Fe.DEFAULTS.SIDEBAR_WIDTH}}),[s,i]=B.useState(!1),r=B.useRef(null),o=B.useRef(null),c=B.useCallback(p=>{p.preventDefault(),i(!0),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[]),u=B.useCallback(p=>{if(!s)return;const g=p.clientX-n,O=Math.min(Math.max(g,Fe.CONSTRAINTS.MIN_SIDEBAR_WIDTH),Fe.CONSTRAINTS.MAX_SIDEBAR_WIDTH);t(O)},[s,n]),f=B.useCallback(()=>{if(s){i(!1),document.body.style.cursor="",document.body.style.userSelect="";try{localStorage.setItem(Fe.STORAGE_KEYS.SIDEBAR_WIDTH,e.toString())}catch{}}},[s,e]);return B.useEffect(()=>{if(s)return document.addEventListener("mousemove",u),document.addEventListener("mouseup",f),()=>{document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",f)}},[s,u,f]),{sidebarWidth:e,isResizing:s,sidebarRef:r,resizerRef:o,handleMouseDown:c}},k2=n=>{const[e,t]=B.useState(()=>{try{return parseInt(localStorage.getItem(Fe.STORAGE_KEYS.CHAT_SIDEBAR_WIDTH)||Fe.DEFAULTS.CHAT_SIDEBAR_WIDTH.toString(),10)}catch{return Fe.DEFAULTS.CHAT_SIDEBAR_WIDTH}}),[s,i]=B.useState(!1),r=B.useRef(null),o=B.useRef(null),c=B.useCallback(p=>{p.preventDefault(),i(!0),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[]),u=B.useCallback(p=>{if(!s)return;const g=p.clientX-n,O=Math.min(Math.max(g,Fe.CONSTRAINTS.MIN_CHAT_WIDTH),Fe.CONSTRAINTS.MAX_CHAT_WIDTH);t(O)},[s,n]),f=B.useCallback(()=>{if(s){i(!1),document.body.style.cursor="",document.body.style.userSelect="";try{localStorage.setItem(Fe.STORAGE_KEYS.CHAT_SIDEBAR_WIDTH,e.toString())}catch{}}},[s,e]);return B.useEffect(()=>{if(s)return document.addEventListener("mousemove",u),document.addEventListener("mouseup",f),()=>{document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",f)}},[s,u,f]),{chatWidth:e,isResizing:s,sidebarRef:r,resizerRef:o,handleMouseDown:c}};function Dp(n){return n.split(".")}function Tb(n){const e=Dp(n.id);if(e.length>=2){const t=e[e.length-2];if(["tasks","task"].includes(t))return"task";if(["resources","resource"].includes(t))return"resource";if(["events","event"].includes(t))return"event";if(["hooks","hook"].includes(t))return"hook";if(["middlewares","middleware"].includes(t))return"middleware";if(["tags","tag"].includes(t))return"tag"}return n.type?n.type:"task"}function Ip(n){return{folder:"📁",task:"⚙️",resource:"🔧",event:"📡",hook:"🪝",middleware:"🔗",tag:"🏷️"}[n]||"📄"}function Pb(n){const e=new Map;n.forEach(i=>{const r=Dp(i.id),o=Tb(i);let c="",u=e;for(let f=0;f<r.length;f++){const p=r[f];if(c=c?`${c}.${p}`:p,!u.has(c)){const g=f===r.length-1,O=g?o:"folder",v={id:c,label:p,type:O,icon:Ip(O),children:[],elementId:g?i.id:void 0,element:g?i:void 0,isExpanded:!1};if(u.set(c,v),f>0){const w=r.slice(0,f).join("."),k=e.get(w);k&&!k.children.find(S=>S.id===c)&&k.children.push(v)}}u=e}});const t=Array.from(e.values()).filter(i=>Dp(i.id).length===1),s=i=>i.map(r=>({...r,children:s(r.children),count:r.type==="folder"?jb(r):void 0})).sort((r,o)=>r.type==="folder"&&o.type!=="folder"?-1:r.type!=="folder"&&o.type==="folder"?1:r.label.localeCompare(o.label));return s(t)}function jb(n){return n.children.length===0?1:n.children.reduce((e,t)=>e+jb(t),0)}function S2(n){const e=new Map;n.forEach(s=>{const i=Tb(s);e.has(i)||e.set(i,[]),e.get(i).push(s)});const t=[];return e.forEach((s,i)=>{const r=Pb(s),o=`type:${i}`,c=u=>u.map(f=>({...f,id:`${o}.${f.id}`,children:c(f.children)}));r.length===1&&r[0].children.length>0?t.push({id:i,label:h0(i+"s"),type:"folder",icon:Ip(i),children:c(r[0].children),count:s.length,isExpanded:!1}):t.push({id:i,label:h0(i+"s"),type:"folder",icon:Ip(i),children:c(r),count:s.length,isExpanded:!1})}),t.sort((s,i)=>s.label.localeCompare(i.label))}function b2(n,e){if(!e.trim())return n;const t=Rp(e),s=i=>{const r=y2({label:i.label,elementId:i.elementId,element:i.element},t),o=i.children.map(s).filter(c=>c!==null);return r||o.length>0?{...i,children:o,isExpanded:o.length>0}:null};return n.map(s).filter(i=>i!==null)}function Qb(n,e,t){return n.map(s=>s.id===e?{...s,isExpanded:t!==void 0?t:!s.isExpanded}:s.children.length>0?{...s,children:Qb(s.children,e,t)}:s)}function h0(n){return n.charAt(0).toUpperCase()+n.slice(1)}const _2=(n,e,t,s,i)=>{const[r,o]=B.useState([]);B.useEffect(()=>{let f;e==="namespace"?f=Pb(n):f=S2(n),t&&(f=b2(f,t)),o(f)},[n,e,t]);const c=f=>{if(!f.elementId)return;const p=`element-${f.elementId}`;window.location.hash===`#${p}`?document.getElementById(p)?.scrollIntoView({behavior:"instant",block:"start"}):window.location.hash=`#${p}`;const g=document.getElementById(p);g&&(g.classList.add(Fe.CSS_CLASSES.HIGHLIGHT_TARGET),setTimeout(()=>{g.classList.remove(Fe.CSS_CLASSES.HIGHLIGHT_TARGET)},Fe.CONSTRAINTS.HIGHLIGHT_DURATION))},u=(f,p)=>{o(g=>Qb(g,f,p))};return B.useEffect(()=>{const f=()=>{const p=window.location.hash;if(p.startsWith("#element-")&&t){const g=p.substring(9),O=s.getAll(),v=[...i.tasks,...i.resources,...i.events,...i.hooks,...i.middlewares,...i.tags];O.some(w=>w.id===g),v.some(w=>w.id===g)}};return window.addEventListener("hashchange",f),f(),()=>{window.removeEventListener("hashchange",f)}},[t,i,s]),{treeNodes:r,handleTreeNodeClick:c,handleToggleExpansion:u}};function f0(n,e){const[t,s]=B.useState(n);return B.useEffect(()=>{const i=window.setTimeout(()=>s(n),e);return()=>window.clearTimeout(i)},[n,e]),t}const $2=n=>[{id:"live",label:"Live",icon:"📡",count:null,hasContent:!0},{id:"diagnostics",label:"Diagnostics",icon:"🔍",count:null,hasContent:!0},{id:"overview",label:"Overview",icon:"📋",count:null,hasContent:!0},{id:"tasks",label:"Tasks",icon:"⚙️",count:n.tasks,hasContent:n.tasks>0},{id:"resources",label:"Resources",icon:"🔧",count:n.resources,hasContent:n.resources>0},{id:"events",label:"Events",icon:"📡",count:n.events,hasContent:n.events>0},{id:"hooks",label:"Hooks",icon:"🪝",count:n.hooks,hasContent:n.hooks>0},{id:"middlewares",label:"Middlewares",icon:"🔗",count:n.middlewares,hasContent:n.middlewares>0},{id:"errors",label:"Errors",icon:"❌",count:n.errors,hasContent:n.errors>0},{id:"asyncContexts",label:"Async Contexts",icon:"🔄",count:n.asyncContexts,hasContent:n.asyncContexts>0},{id:"tags",label:"Tags",icon:"🏷️",count:n.tags,hasContent:n.tags>0}].filter(t=>t.hasContent),Vs=["You are Runtime — the witty, succinct, and always-helpful AI inside the Runner app.","When the user says 'application' or 'app', they mean this Runner app you can introspect and query.","","# STYLE","- Default to concise answers. Expand only when asked.","- Prefer clear lists and short code fences when they aid readability.","- State assumptions; avoid speculation. If unknown, say so and propose next steps.","","# TOOL USE","- You have function tools available. Use them deterministically — do not guess outputs.","- If asked for the current time/date: call get_current_time and use its result.","- If the message contains @mentions like @app.notifications.resources.emailService:"," 1) Remove the leading '@' to get the element id"," 2) Call get_file_contents_by_element_ids with ALL mentioned ids"," 3) Use the fetched contents in your answer","","# DEEP IMPLEMENTATION MODE","- When Deep Implementation is enabled, act as a PLANNER only — no in-browser edits.","- Sequence: deepimpl_budget_get → deepimpl_todo_init (exactly once) → deepimpl_set_stage as you move plan → explore → implement → patch.ready.","- Log with deepimpl_log, maintain progress with deepimpl_todo_update, and write docs via deepimpl_docs_set (Analysis.md plus TaskN.md).","- Respect the token budget strictly; stop when remaining ≤ 0 and ask if the user wants to continue.","","# DOC BLOCKS AND @docs.*","- Do NOT treat @docs.* as element ids.","- If present, the user message may include trusted hidden blocks you MUST use as persistent context:"," <runner_docs>…AI.md…</runner_docs>"," <runner_dev_docs>…AI.md…</runner_dev_docs>"," <graphql_sdl>…SDL…</graphql_sdl>"," <project_overview>…Markdown overview…</project_overview>","- Continue using these across turns until the user explicitly clears them.","","# APP QUERY TOOL","- To interrogate the app's data/architecture, rely on @docs.schema.","- If you don't have @docs.schema, explicitly ask the user to add it; do not guess.","","# RESPONSE FORMAT","- After fetching files, begin with: 📁 **Analyzed: [filename]** ([X] lines)","- Keep summaries high-signal; include 'empty' or 'not implemented' when applicable.","","# SAFETY AND TONE","- Be helpful, direct, and lightly witty. Never snarky.","- Never invent APIs or files. If something is missing, say so.","- Favor determinism and reproducibility over creativity."].join(`
|
|
321
|
+
`),C2=`
|
|
322
|
+
query UniversalElementFile($idIncludes: ID!, $startLine: Int, $endLine: Int) {
|
|
323
|
+
all(idIncludes: $idIncludes) {
|
|
324
|
+
id
|
|
325
|
+
filePath
|
|
326
|
+
fileContents(startLine: $startLine, endLine: $endLine)
|
|
327
|
+
__typename
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
`;async function T2(n,e,t){try{const r=(await Qt(C2,{idIncludes:n})).all||[],o=r.find(c=>c.id===n);return o||(r.length>0?r[0]:null)}catch(s){return console.error(`Failed to fetch file contents for element: ${n}`,s),null}}const Nb=(n,e)=>[{name:"get_current_time",description:"Returns the current ISO timestamp.",parameters:{type:"object",properties:{},additionalProperties:!1},run:async()=>({now:new Date().toISOString()})},{name:"get_file_contents_by_element_ids",description:"Fetch file contents for multiple elements using an array of element ids. Uses universal search to find elements reliably. Returns array in the same order.",parameters:{type:"object",properties:{items:{type:"array",items:{type:"string"}}},required:["items"],additionalProperties:!1},run:async t=>{const s=t,i=c=>c.startsWith("@")?c.slice(1):c,r=async c=>{const u=i(c);return await T2(u)};return(await Promise.all(s.items.map(c=>r(c)))).map((c,u)=>c??{id:s.items[u],filePath:null,fileContents:null})}},{name:"graphql_query",description:["Execute a GraphQL query against the app's /graphql endpoint."].join(`
|
|
331
|
+
`),parameters:{type:"object",properties:{query:{type:"string"},variables:{oneOf:[{type:"string"},{type:"object"}]},operationName:{type:"string"},maxItems:{type:"integer",minimum:1,maximum:100},title:{type:"string"}},required:["query"],additionalProperties:!1},run:async t=>{const s=t||{};if(!s.query||typeof s.query!="string")return{error:"Missing 'query' string"};let i;if(typeof s.variables=="string")try{i=JSON.parse(s.variables)}catch{return{error:"Invalid JSON in 'variables'"}}else s.variables&&typeof s.variables=="object"&&!Array.isArray(s.variables)&&(i=s.variables);return{data:await Qt(s.query,i)}}}];function p0(n,e){n(t=>{const s=t.toolCalls||[],i=e.index,r=s[i],o=e.function?.name||r?.name,c=(r?.argsPreview||"")+(e.function?.arguments||""),u=s.slice();return u[i]={id:e.id||r?.id||String(i),name:o,argsPreview:c,status:"running"},{...t,thinkingStage:"processing",toolCalls:u}})}function m0(n,e){n(t=>({...t,thinkingStage:"processing",toolCalls:e.map((s,i)=>({id:s.id||String(i),name:s.name,argsPreview:s.argsText||"",status:"pending"}))}))}function Xc(n,e,t,s){n(i=>({...i,toolCalls:(i.toolCalls||[]).map((r,o)=>o===e?{...r,status:t,...s?{resultPreview:s}:{}}:r)}))}function g0(n){n(e=>{const t=e.toolCalls||[];if(!t.length)return e;let s;for(let o=e.messages.length-1;o>=0;o--){const c=e.messages[o];if(c.author==="bot"&&c.type==="text"){s=o;break}}if(s===void 0)return e;const i=e.messages.slice(),r=i[s];return i[s]={...r,toolCalls:t.map(o=>({id:o.id,name:o.name,argsPreview:o.argsPreview,resultPreview:o.resultPreview}))},{...e,messages:i}})}function O0(n,e){n(t=>({...t,messages:[...t.messages,{id:e,author:"bot",type:"text",text:"",timestamp:Date.now(),toolCalls:(t.toolCalls||[]).map(s=>({id:s.id,name:s.name,argsPreview:s.argsPreview,resultPreview:s.resultPreview}))}]}))}const Eb={openaiApiKey:null,model:"gpt-5-mini",stream:!0,responseMode:"text",baseUrl:"https://api.openai.com",enableShortcuts:!0,showTokenMeter:!0,virtualizeMessages:!1},Fs={messages:[{id:"welcome",author:"bot",type:"text",text:"Hi! I'm your AI assistant. I can help with code, show file differences, and much more. Try asking me about your project!",timestamp:Date.now()}],isTyping:!1,thinkingStage:"none",inputValue:"",searchQuery:"",isSearching:!1,selectedMessageId:null,settings:Eb,canStop:!1,lastUsage:null,chatContext:{include:{runner:!1,runnerDev:!1,schema:!1,projectOverview:!1}}},P2=n=>{const[e,t]=B.useState(Fs),s=B.useRef(null),i=B.useRef(null),r=B.useRef({runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null});B.useEffect(()=>{r.current={runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null}},[n?.docs?.runnerAiMd,n?.docs?.graphqlSdl,n?.docs?.runnerDevMd,n?.docs?.projectOverviewMd]),B.useEffect(()=>{const b=YS();b&&b.length>0&&t(P=>({...P,messages:b}));const C=Yu();C&&t(P=>({...P,settings:{...Eb,...C}}));const T=HS();T&&T.include&&t(P=>({...P,chatContext:{include:{...P.chatContext?.include,...T.include}}}))},[]),B.useEffect(()=>{const b=setTimeout(()=>{US(e.messages)},1e3);return()=>clearTimeout(b)},[e.messages]),B.useEffect(()=>{GS(e.chatContext||null)},[e.chatContext]),B.useEffect(()=>()=>{s.current&&window.clearTimeout(s.current),i.current&&i.current.abort()},[]),B.useEffect(()=>{const b=e.deepImpl;if(!b?.enabled||!b.auto?.running||e.isTyping||e.canStop)return;if((b.todo||[]).every(H=>{const J=R=>{const V=R.status==="done"||R.status==="error",U=Array.isArray(R.children)?R.children:[];return V&&U.every(J)};return J(H)})||b.flowStage==="done"||b.flowStage==="patch.ready"){t(H=>({...H,deepImpl:{...H.deepImpl||Fs.deepImpl,auto:{running:!1}}}));return}const T=b.budget?.totalTokens??65500,P=b.budget?.usedApprox??0,N=b.budget?.reserveOutput??2e3,A=b.budget?.reserveSafety??1500;if(Math.max(0,T-P-N-A)<=0){t(H=>({...H,deepImpl:{...H.deepImpl||Fs.deepImpl,auto:{running:!1}},messages:[...H.messages,{id:`b-${Date.now()}-deepimpl-budget-stop`,author:"bot",type:"text",text:"Stopping Deep Implementation: token budget reached. Click Resume to continue with additional budget, or type 'continue' to proceed.",timestamp:Date.now()}]}));return}const F=["DEEPIMPL_CONTINUE","Proceed with the next actionable step.","If TODOs are complete, move to implement or finalize patch."].join(`
|
|
332
|
+
`);u(F)},[e.deepImpl,e.isTyping,e.canStop]);const o=B.useCallback(b=>{t(C=>{const T={...C,settings:{...C.settings,...b}};return qS(T.settings),T})},[]),c=B.useCallback(b=>{const C={id:`error-${Date.now()}`,author:"bot",type:"text",text:b,timestamp:Date.now()};t(T=>({...T,messages:[...T.messages,C],isTyping:!1,thinkingStage:"none",canStop:!1}))},[]),u=B.useCallback(async(b,C)=>{const{settings:T}=e;if(!T.openaiApiKey){c("❌ OpenAI API key is required. Please configure it in the settings to use the AI assistant.");return}i.current=new AbortController;const P=`b-${Date.now()}`;t(R=>({...R,isTyping:!0,thinkingStage:"thinking",toolCalls:[],canStop:!0,messages:[...R.messages,{id:P,author:"bot",type:"text",text:"",timestamp:Date.now()}]}));let N="",A={promptTokens:0,completionTokens:0,totalTokens:0};const X=e.messages.filter(R=>R.type==="text").map(R=>({role:R.author==="user"?"user":"assistant",content:R.text||""})),F=[...Nb()],H=ab(F),J=Qp();try{const R={runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},U=/@docs\.(runner|schema|runnerDev|projectOverview)\b/.test(b);U&&console.log("[chat] @docs tokens detected in input, include flags:",e.chatContext?.include||{});const te=VS(b,R);U&&console.log("[chat] expandDocsInMessage applied:",{originalLength:b.length,expandedLength:te.modelText.length});const pe=nu(Vs,C??(e.chatContext?.include||{}),X,te.modelText,R),ce=async()=>{const Y=J.list();if(Y.length!==0)try{const z={role:"assistant",tool_calls:Y.map((re,fe)=>({id:re.id||`call_${fe}`,type:"function",function:{name:re.name,arguments:re.argsText}}))};m0(t,Y);const Q=[];for(let re=0;re<Y.length;re++){const fe=Y[re],me=F.find(Ye=>Ye.name===fe.name);if(!me)continue;let je={};try{je=fe.argsText?JSON.parse(fe.argsText):{}}catch{}Xc(t,re,"running");const De=await me.run(je);Xc(t,re,"done",JSON.stringify(De,null,2)),Q.push({role:"tool",content:JSON.stringify(De),tool_call_id:fe.id,name:fe.name})}const j=`b-${Date.now()}-2`;t(re=>{const me=(re.messages.find(je=>je.id===P)?.text||"").trim().length>0?re.messages:re.messages.filter(je=>je.id!==P);return{...re,messages:me}}),O0(t,j);let I="";const le=[...nu(Vs,C??(e.chatContext?.include||{}),X,te.modelText,R),z,...Q],ee=Qp();await Qo({settings:T,messages:le,tools:H,tool_choice:"auto",temperature:.2,response_format:T.responseMode==="json"?{type:"json_object"}:void 0,signal:i.current?.signal},{onTextDelta:re=>{I+=re,t(fe=>({...fe,messages:fe.messages.map(me=>me.id===j?{...me,text:I}:me)}))},onToolCallDelta:re=>{ee.accept(re),p0(t,re)},onUsage:re=>{A={promptTokens:A.promptTokens+(re.prompt_tokens||0),completionTokens:A.completionTokens+(re.completion_tokens||0),totalTokens:A.totalTokens+(re.total_tokens||0)},t(fe=>({...fe,lastUsage:{...A},deepImpl:{...fe.deepImpl||Fs.deepImpl,budget:{...fe.deepImpl?.budget||Fs.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:async()=>{g0(t);const re=ee.list();if(re.length>0)try{const fe={role:"assistant",tool_calls:re.map((Re,Xe)=>({id:Re.id||`call2_${Xe}`,type:"function",function:{name:Re.name,arguments:Re.argsText}}))};m0(t,re);const me=[];for(let Re=0;Re<re.length;Re++){const Xe=re[Re],gt=F.find(gr=>gr.name===Xe.name);if(!gt)continue;let Et={};try{Et=Xe.argsText?JSON.parse(Xe.argsText):{}}catch{}Xc(t,Re,"running");const Hs=await gt.run(Et);Xc(t,Re,"done",JSON.stringify(Hs,null,2)),me.push({role:"tool",content:JSON.stringify(Hs),tool_call_id:Xe.id,name:Xe.name})}const je=`b-${Date.now()}-3`;O0(t,je);let De="";const Ye=[...nu(Vs,C??(e.chatContext?.include||{}),X,te.modelText,R),fe,...me];await Qo({settings:T,messages:Ye,temperature:.2,response_format:T.responseMode==="json"?{type:"json_object"}:void 0,signal:i.current?.signal},{onTextDelta:Re=>{De+=Re,t(Xe=>({...Xe,messages:Xe.messages.map(gt=>gt.id===je?{...gt,text:De}:gt)}))},onUsage:Re=>{A={promptTokens:A.promptTokens+(Re.prompt_tokens||0),completionTokens:A.completionTokens+(Re.completion_tokens||0),totalTokens:A.totalTokens+(Re.total_tokens||0)},t(Xe=>({...Xe,lastUsage:{...A},deepImpl:{...Xe.deepImpl||Fs.deepImpl,budget:{...Xe.deepImpl?.budget||Fs.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:()=>{g0(t),setTimeout(()=>{const Xe=[...e.messages].reverse().find(Et=>Et.author==="bot"&&Et.type==="text");(!Xe||!(Xe.text||"").trim())&&u("Re-evaluate the provided context and produce a concise answer, as the prior step only used tool calls without output.")},0)},onError:Re=>{const Xe=Re?.message||String(Re);t(gt=>({...gt,isTyping:!1,thinkingStage:"none",canStop:!1,messages:gt.messages.map(Et=>Et.id===j?{...Et,text:(Et.text||"")+(Xe?`
|
|
333
|
+
|
|
334
|
+
❌ Error: ${Xe}`:"")}:Et)}))}})}catch(fe){const me=`❌ Tool execution failed: ${String(fe)}`,je=I.endsWith(`
|
|
335
|
+
`)?"":`
|
|
336
|
+
|
|
337
|
+
`,De=I+je+me;t(Ye=>({...Ye,messages:Ye.messages.map(Re=>Re.id===j?{...Re,text:De}:Re),toolCalls:(Ye.toolCalls||[]).map(Re=>Re.status==="running"||Re.status==="pending"?{...Re,status:"error"}:Re)}))}},onError:re=>{const fe=re?.message||String(re);t(me=>({...me,isTyping:!1,thinkingStage:"none",canStop:!1,messages:me.messages.map(je=>je.id===j?{...je,text:(je.text||"")+(fe?`
|
|
338
|
+
|
|
339
|
+
❌ Error: ${fe}`:"")}:je)}))}})}catch(z){const Q=`❌ Tool execution failed: ${String(z)}`,j=N.endsWith(`
|
|
340
|
+
`)?"":`
|
|
341
|
+
|
|
342
|
+
`,I=N+j+Q;t(le=>({...le,messages:le.messages.map(ee=>ee.id===P?{...ee,text:I}:ee),toolCalls:(le.toolCalls||[]).map(ee=>ee.status==="running"||ee.status==="pending"?{...ee,status:"error"}:ee)}))}};await Qo({settings:T,messages:pe,tools:H,tool_choice:"auto",response_format:T.responseMode==="json"?{type:"json_object"}:void 0,signal:i.current?.signal},{onTextDelta:Y=>{N+=Y,t(z=>({...z,thinkingStage:"generating",messages:z.messages.map(Q=>Q.id===P?{...Q,text:N}:Q)}))},onToolCallDelta:Y=>{J.accept(Y),p0(t,Y)},onUsage:Y=>{A={promptTokens:A.promptTokens+(Y.prompt_tokens||0),completionTokens:A.completionTokens+(Y.completion_tokens||0),totalTokens:A.totalTokens+(Y.total_tokens||0)},t(z=>({...z,lastUsage:{...A},deepImpl:{...z.deepImpl||Fs.deepImpl,budget:{...z.deepImpl?.budget||Fs.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:async(Y,z)=>{},onError:Y=>{const z=Y?.message||String(Y);t(Q=>({...Q,isTyping:!1,thinkingStage:"none",canStop:!1,messages:Q.messages.map(j=>j.id===P?{...j,text:(j.text||"")+(z?`
|
|
343
|
+
|
|
344
|
+
❌ Error: ${z}`:"")}:j)}))}}),await ce(),t(Y=>({...Y,isTyping:!1,thinkingStage:"none",canStop:!1}))}catch(R){R.name==="AbortError"?t(V=>({...V,isTyping:!1,thinkingStage:"none",toolCalls:[],canStop:!1,messages:V.messages.map(U=>U.id===P?{...U,text:"❌ Request stopped by user"}:U)})):t(V=>({...V,isTyping:!1,thinkingStage:"none",toolCalls:[],canStop:!1,messages:V.messages.map(U=>U.id===P?{...U,text:`❌ Error: ${R?.message||"Failed to contact OpenAI"}`}:U)}))}},[e,c]),f=B.useCallback(()=>{const b=e.inputValue.trim();if(!b)return;try{const T=e.messages.filter(N=>N.type==="text").map(N=>N.text||""),P=To(Vs,T,e.inputValue||"",{runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},e.chatContext?.include||{});t(N=>({...N,preflightContext:{system:P.system,history:P.history,input:P.input,tokens:P.total}}))}catch{}const C={id:`m-${Date.now()}`,author:"user",type:"text",text:b,timestamp:Date.now()};t(T=>({...T,messages:[...T.messages,C],inputValue:""})),u(b)},[e.inputValue,u]),p=B.useCallback((b,C,T)=>{if(!b.trim())return;try{const N=e.messages.filter(X=>X.type==="text").map(X=>X.text||""),A=To(Vs,N,e.inputValue||"",{runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},e.chatContext?.include||{});t(X=>({...X,preflightContext:{system:A.system,history:A.history,input:A.input,tokens:A.total}}))}catch{}const P={id:`m-${Date.now()}`,author:"user",type:"text",text:C||b.trim(),timestamp:Date.now()};t(N=>({...N,messages:[...N.messages,P],inputValue:""})),u(b.trim(),T)},[u,e.messages,e.inputValue,n?.docs]),g=B.useCallback(async(b,C)=>{const T=b??e.settings.openaiApiKey;return T?cb({apiKey:T,model:e.settings.model,baseUrl:C??e.settings.baseUrl??"https://api.openai.com"}):{ok:!1,error:"Missing API key"}},[e.settings.model,e.settings.openaiApiKey,e.settings.baseUrl]),O=B.useCallback(()=>{i.current&&(i.current.abort(),i.current=null),s.current&&(window.clearTimeout(s.current),s.current=null)},[]),v=B.useCallback(()=>{localStorage.removeItem("chat-sidebar-history"),NA(),t(b=>({...b,inputValue:"",messages:[{id:"welcome",author:"bot",type:"text",text:"Chat history cleared. How can I help you?",timestamp:Date.now()}],canStop:!1,chatContext:{include:{runner:!1,runnerDev:!1,schema:!1,projectOverview:!1}},lastUsage:null,preflightContext:null}))},[]),w=B.useCallback(()=>{const b=e.messages,C=b.map(N=>N.author).lastIndexOf("user");if(C===-1)return;const T=b[C],P=b.slice(0,C+1);t(N=>({...N,messages:P})),u(T.text)},[e.messages,u]);B.useMemo(()=>e.inputValue||"",[e.inputValue]);const k=e.messages.filter(b=>b.type==="text").filter(b=>b.id!=="welcome").map(b=>b.text||""),S=To(Vs,k,e.inputValue||"",{runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},e.chatContext?.include||{}),$=(()=>{const b=(e.inputValue||"").trim().length>0,C=!!(e.chatContext?.include?.runner||e.chatContext?.include?.runnerDev||e.chatContext?.include?.schema||e.chatContext?.include?.projectOverview);if(!(k.length>0)&&!b&&!C&&!e.isTyping)return{mode:"context",total:S.system,breakdown:{system:S.system,history:0,input:0}};if(e.isTyping){const P=e.preflightContext;return{mode:"context",total:P?.tokens??S.total,breakdown:P?{system:P.system,history:P.history,input:P.input}:{system:S.system,history:S.history,input:S.input}}}return b||!e.lastUsage?{mode:"context",total:S.total,breakdown:{system:S.system,history:S.history,input:S.input}}:{mode:"usage",total:e.lastUsage?.totalTokens??0,breakdown:{system:0,history:0,input:0}}})();return{chatState:e,setChatState:t,sendMessage:f,sendMessageWithText:p,clearChat:v,updateSettings:o,testOpenAIConnection:g,stopRequest:O,retryLastResponse:w,tokenStatus:$}};var Yi={},es={},y0;function j2(){if(y0)return es;y0=1;var n=es&&es.__awaiter||function(u,f,p,g){function O(v){return v instanceof p?v:new p(function(w){w(v)})}return new(p||(p=Promise))(function(v,w){function k(b){try{$(g.next(b))}catch(C){w(C)}}function S(b){try{$(g.throw(b))}catch(C){w(C)}}function $(b){b.done?v(b.value):O(b.value).then(k,S)}$((g=g.apply(u,f||[])).next())})};Object.defineProperty(es,"__esModule",{value:!0}),es.Smart=void 0,es.useSmart=i,es.newSmart=r,es.useNewSmart=o,es.withSmart=c;const e=Eo(),t=Eo();let s=class{constructor(){this.subscribers=[]}setConfig(f){this.config=f}init(){return n(this,void 0,void 0,function*(){})}destroy(){return n(this,void 0,void 0,function*(){})}setState(f,p){this.previousState=this.state,this.state=f,p?.silent||this.inform()}updateState(f,p){this.setState(Object.assign(Object.assign({},this.state),f),p)}inform(){this.subscribers.forEach(f=>{f(this.previousState,this.state)})}subscribe(f){this.subscribers.includes(f)||this.subscribers.push(f)}unsubscribe(f){this.subscribers=this.subscribers.filter(p=>p!==f)}static getContext(){return this._context||(this._context=e.createContext(null)),this._context}getSubscriberCount(){return this.subscribers.length}};es.Smart=s,s._context=null;function i(u){const f=u.getContext(),p=(0,t.useContext)(f);if(!p)throw new Error(`No context found for ${u.constructor.name}. Ensure your component is wrapped with the appropriate Provider.`);const[,g]=(0,t.useState)(0);return(0,t.useEffect)(()=>{const O=()=>{g(v=>v+1)};return p.subscribe(O),()=>{p.unsubscribe(O)}},[p]),p}function r(...u){}function o(u,...f){const p=(0,t.useMemo)(()=>{const O=new u;return O.setConfig(f[0]),O.init(),O},[u,f[0]]),g=({children:O})=>{const v=u.getContext();return e.createElement(v.Provider,{value:p},O)};return(0,t.useEffect)(()=>()=>{p.destroy()},[p]),[p,g]}function c(u,...f){return function(p){return function(O){const[v,w]=o(u,...f);return e.createElement(w,null,e.createElement(p,Object.assign({},O)))}}}return es}var v0;function Q2(){return v0||(v0=1,(function(n){var e=Yi&&Yi.__createBinding||(Object.create?(function(s,i,r,o){o===void 0&&(o=r);var c=Object.getOwnPropertyDescriptor(i,r);(!c||("get"in c?!i.__esModule:c.writable||c.configurable))&&(c={enumerable:!0,get:function(){return i[r]}}),Object.defineProperty(s,o,c)}):(function(s,i,r,o){o===void 0&&(o=r),s[o]=i[r]})),t=Yi&&Yi.__exportStar||function(s,i){for(var r in s)r!=="default"&&!Object.prototype.hasOwnProperty.call(i,r)&&e(i,s,r)};Object.defineProperty(n,"__esModule",{value:!0}),t(j2(),n)})(Yi)),Yi}var Ab=Q2();const N2={openaiApiKey:null,model:"gpt-5-mini",stream:!0,responseMode:"text",baseUrl:"https://api.openai.com",enableShortcuts:!0,showTokenMeter:!0,virtualizeMessages:!1},x0={enabled:!1,flowId:null,flowStage:"idle",answers:{},todo:[],logs:[],patch:null,budget:{totalTokens:65500,reserveOutput:2e3,reserveSafety:1500,usedApprox:0},auto:{running:!1},docs:{}},w0=()=>({id:"welcome",author:"bot",type:"text",text:"Hi! I'm your AI assistant. I can help with code, show file differences, and much more. Try asking me about your project!",timestamp:Date.now()});class E2 extends Ab.Smart{static context=B.createContext(null);static getContext(){return this.context}messages=[w0()];isTyping=!1;thinkingStage="none";lastUsage=null;inputValue="";searchQuery="";isSearching=!1;selectedMessageId=null;canStop=!1;settings=N2;chatContext={include:{runner:!1,runnerDev:!1,schema:!1,projectOverview:!1}};stickyDocs={runner:!1,runnerDev:!1,schema:!1,projectOverview:!1};preflightContext=null;toolCalls=[];deepImpl=x0;docsBundle;availableElements;abortController=null;constructor(e,t){super(),this.docsBundle=e,this.availableElements=t,this.loadPersistedState()}async sendMessage(e,t){if(!this.settings.openaiApiKey){this.addErrorMessage("❌ OpenAI API key is required. Please configure it in the settings to use the AI assistant.");return}this.abortController=new AbortController,this.capturePreflightEstimate(e);const s={id:`m-${Date.now()}`,author:"user",type:"text",text:e,hiddenText:t,timestamp:Date.now()},i={id:`b-${Date.now()}`,author:"bot",type:"text",text:"",timestamp:Date.now()};this.messages.push(s,i),this.isTyping=!0,this.thinkingStage="thinking",this.canStop=!0,this.inputValue="",this.toolCalls=[],this.inform();try{await this.streamResponse(e,i.id)}catch(r){this.handleStreamingError(r,i.id)}}async sendMessageWithText(e,t){return this.sendMessage(e,t)}async retryLastResponse(){const e=[...this.messages].reverse().find(t=>t.author==="user"&&t.type==="text");if(!e){this.addErrorMessage("No previous user message to retry");return}return this.messages=this.messages.slice(0,-1),this.inform(),this.sendMessage(e.text)}stopRequest(){this.abortController?.abort(),this.abortController=null,this.isTyping=!1,this.thinkingStage="none",this.canStop=!1,this.toolCalls=[];const e=this.messages[this.messages.length-1];e&&e.author==="bot"&&(e.text="❌ Request stopped by user"),this.inform()}clearChat(){this.messages=[w0()],this.lastUsage=null,this.preflightContext=null,this.deepImpl=x0,this.toolCalls=[],this.inform(),this.persistChatHistory()}async streamResponse(e,t){const s=Qp();let i="";const r=this.messages.filter(p=>p.type==="text").map(p=>({role:p.author==="user"?"user":"assistant",content:p.text||""})),o=VS(e,this.docsBundle),c=nu(Vs,this.chatContext.include,r,o.modelText,this.docsBundle),u=Nb(()=>this.getStateForTools(),this.setStateFromTools.bind(this)),f=ab(u);try{await Qo({settings:this.settings,messages:c,tools:f,signal:this.abortController?.signal},{onTextDelta:p=>{i+=p,this.updateAssistantMessage(t,i),this.thinkingStage="generating",this.inform()},onToolCallDelta:p=>{s.accept(p),this.updateToolCallsFromAccumulator(s.list()),this.thinkingStage="processing",this.inform()},onFinish:(p,g)=>{this.finalizeMessage(t,p,s.list()),this.isTyping=!1,this.thinkingStage="none",this.canStop=!1,this.inform(),this.persistChatHistory(),this.deepImpl.enabled&&this.deepImpl.auto?.running&&this.handleDeepImplAutoContinue()},onError:p=>{this.handleStreamingError(p,t)},onUsage:p=>{this.lastUsage={promptTokens:p.prompt_tokens,completionTokens:p.completion_tokens,totalTokens:p.total_tokens},this.inform()}}),s.list().length>0&&await this.executeToolCalls(s.list(),u,t)}catch(p){p.name!=="AbortError"&&this.handleStreamingError(p,t)}}async executeToolCalls(e,t,s){this.toolCalls=e.map((r,o)=>({id:r.id,name:r.name,argsPreview:r.argsText,status:"pending"})),this.inform();const i=[];for(let r=0;r<e.length;r++){const o=e[r],c=t.find(u=>u.name===o.name);if(!c){this.updateToolCallStatus(r,"error",`Tool not found: ${o.name}`);continue}this.updateToolCallStatus(r,"running"),this.inform();try{const u=o.argsText?JSON.parse(o.argsText):{},f=await c.run(u);i.push({role:"tool",tool_call_id:o.id,content:JSON.stringify(f)}),this.updateToolCallStatus(r,"done",JSON.stringify(f).substring(0,100)),this.inform()}catch(u){this.updateToolCallStatus(r,"error",u.message),this.inform(),i.push({role:"tool",tool_call_id:o.id,content:JSON.stringify({error:u.message})})}}this.attachToolCallsToMessage(s,e.map((r,o)=>({id:r.id,name:r.name,argsPreview:r.argsText,resultPreview:this.toolCalls[o]?.resultPreview}))),i.length>0&&await this.continueWithToolResults(i,s)}updateSettings(e){this.settings={...this.settings,...e},this.persistSettings(),this.inform()}async testOpenAIConnection(){return cb({apiKey:this.settings.openaiApiKey,model:this.settings.model,baseUrl:this.settings.baseUrl||void 0})}updateChatContext(e){this.chatContext.include={...this.chatContext.include,...e},this.persistChatContext(),this.inform()}updateStickyDocs(e){this.stickyDocs={...this.stickyDocs,...e},this.inform()}enableDeepImplementation(){this.deepImpl={...this.deepImpl,enabled:!0,flowId:`flow-${Date.now()}`,flowStage:"questions"},this.inform()}async setDeepImplAnswers(e){this.deepImpl.answers={...this.deepImpl.answers,...e},this.deepImpl.flowStage="plan",this.inform(),await this.continueDeepImplFlow()}async continueDeepImplFlow(){if(!this.deepImpl.enabled)return;const e=["DEEPIMPL_CONTINUE","Proceed with the next actionable step.","If TODOs are complete, move to implement or finalize patch."].join(`
|
|
345
|
+
`);await this.sendMessage(e)}setInputValue(e){this.inputValue=e,this.inform()}setSearchQuery(e){this.searchQuery=e,this.isSearching=e.length>0,this.inform()}setSelectedMessageId(e){this.selectedMessageId=e,this.inform()}updateAssistantMessage(e,t){const s=this.messages.find(i=>i.id===e);s&&s.type==="text"&&(s.text=t)}updateToolCallsFromAccumulator(e){this.toolCalls=e.map(t=>({id:t.id,name:t.name,argsPreview:t.argsText,status:"running"}))}updateToolCallStatus(e,t,s){this.toolCalls[e]&&(this.toolCalls[e]={...this.toolCalls[e],status:t,...s&&{resultPreview:s}})}attachToolCallsToMessage(e,t){const s=this.messages.find(i=>i.id===e);s&&s.type==="text"&&(s.toolCalls=t)}finalizeMessage(e,t,s){this.updateAssistantMessage(e,t),s.length>0&&this.attachToolCallsToMessage(e,s.map(i=>({id:i.id,name:i.name,argsPreview:i.argsText})))}async continueWithToolResults(e,t){this.messages.filter(i=>i.type==="text").map(i=>({role:i.author==="user"?"user":"assistant",content:i.text||""})).push(...e)}handleDeepImplAutoContinue(){if((this.deepImpl.todo||[]).every(c=>{const u=f=>{const p=f.status==="done"||f.status==="error",g=Array.isArray(f.children)?f.children:[];return p&&g.every(u)};return u(c)})||this.deepImpl.flowStage==="done"||this.deepImpl.flowStage==="patch.ready"){this.deepImpl.auto={running:!1},this.inform();return}const t=this.deepImpl.budget?.totalTokens??65500,s=this.deepImpl.budget?.usedApprox??0,i=this.deepImpl.budget?.reserveOutput??2e3,r=this.deepImpl.budget?.reserveSafety??1500;if(Math.max(0,t-s-i-r)<=0){this.deepImpl.auto={running:!1},this.addErrorMessage("Stopping Deep Implementation: token budget reached. Click Resume to continue with additional budget, or type 'continue' to proceed.");return}this.continueDeepImplFlow()}addErrorMessage(e){const t={id:`error-${Date.now()}`,author:"bot",type:"text",text:e,timestamp:Date.now()};this.messages.push(t),this.inform()}handleStreamingError(e,t){e.name==="AbortError"?this.updateAssistantMessage(t,"❌ Request stopped by user"):this.updateAssistantMessage(t,`❌ Error: ${e.message||"Failed to contact OpenAI"}`),this.isTyping=!1,this.thinkingStage="none",this.canStop=!1,this.toolCalls=[],this.inform()}capturePreflightEstimate(e){try{const t=this.messages.filter(i=>i.type==="text").map(i=>i.text||""),s=To(Vs,t,e,this.docsBundle,this.chatContext.include);this.preflightContext={system:s.system,history:s.history,input:s.input,total:s.total,tokens:s.total,breakdown:{system:s.system,history:s.history,input:s.input}}}catch{}}getStateForTools(){return{messages:this.messages,settings:this.settings,chatContext:this.chatContext,deepImpl:this.deepImpl}}setStateFromTools(e){Object.assign(this,e),this.inform()}loadPersistedState(){try{const e=YS(),t=Yu(),s=HS();e?.length>0&&(this.messages=e),t&&(this.settings={...this.settings,...t}),s?.include&&(this.chatContext.include={...this.chatContext.include,...s.include})}catch(e){console.warn("Failed to load persisted state:",e)}}persistChatHistory(){try{US(this.messages)}catch(e){console.warn("Failed to persist chat history:",e)}}persistSettings(){try{qS(this.settings)}catch(e){console.warn("Failed to persist settings:",e)}}persistChatContext(){try{GS(this.chatContext)}catch(e){console.warn("Failed to persist chat context:",e)}}get canRetry(){return this.messages.some(e=>e.author==="user")&&!this.isTyping}get tokenStatus(){const e=this.inputValue.trim().length>0,t=!!(this.chatContext.include.runner||this.chatContext.include.runnerDev||this.chatContext.include.schema||this.chatContext.include.projectOverview);if(!(this.messages.filter(i=>i.type==="text"&&i.id!=="welcome").length>0)&&!e&&!t&&!this.isTyping){const i=this.liveEstimate;return{mode:"context",total:i.system,breakdown:i}}if(this.isTyping||e){const i=this.liveEstimate;return{mode:"context",total:i.total,breakdown:i}}return{mode:"tokens",total:this.lastUsage?.totalTokens||0,breakdown:{system:0,history:0,input:this.lastUsage?.totalTokens||0}}}get liveEstimate(){const e=this.messages.filter(s=>s.type==="text").filter(s=>s.id!=="welcome").map(s=>s.text||""),t=To(Vs,e,this.inputValue,this.docsBundle,this.chatContext.include);return{...t,tokens:t.total,breakdown:{system:t.system,history:t.history,input:t.input}}}getStateAsChatState(){return{messages:this.messages,isTyping:this.isTyping,thinkingStage:this.thinkingStage,inputValue:this.inputValue,searchQuery:this.searchQuery,isSearching:this.isSearching,selectedMessageId:this.selectedMessageId,settings:this.settings,canStop:this.canStop,toolCalls:this.toolCalls,chatContext:this.chatContext,lastUsage:this.lastUsage,preflightContext:this.preflightContext,stickyDocs:this.stickyDocs,deepImpl:this.deepImpl}}}const A2=n=>{const e={runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},[t,s]=Ab.useNewSmart(E2,e,n?.availableElements||{});B.useEffect(()=>{const o=setTimeout(()=>{t.persistChatHistory()},1e3);return()=>clearTimeout(o)},[t.messages]);const i=t.getStateAsChatState(),r={canRetry:t.canRetry,tokenStatus:t.tokenStatus,liveEstimate:t.liveEstimate};return{chatState:i,setChatState:o=>{if(typeof o=="function"){const c=o(t.getStateAsChatState());Object.assign(t,c),t.inform()}else Object.assign(t,o),t.inform()},sendMessage:t.sendMessage.bind(t),sendMessageWithText:t.sendMessageWithText.bind(t),retryLastResponse:t.retryLastResponse.bind(t),stopRequest:t.stopRequest.bind(t),clearChat:t.clearChat.bind(t),updateSettings:t.updateSettings.bind(t),testOpenAIConnection:t.testOpenAIConnection.bind(t),updateChatContext:t.updateChatContext.bind(t),updateStickyDocs:t.updateStickyDocs.bind(t),setInputValue:t.setInputValue.bind(t),setSearchQuery:t.setSearchQuery.bind(t),setSelectedMessageId:t.setSelectedMessageId.bind(t),enableDeepImplementation:t.enableDeepImplementation.bind(t),setDeepImplAnswers:t.setDeepImplAnswers.bind(t),continueDeepImplFlow:t.continueDeepImplFlow.bind(t),...r}},M2=({settings:n,onSave:e,onTest:t,onClearKey:s})=>{const i=B.useMemo(()=>({openaiApiKey:n.openaiApiKey||"",baseUrl:n.baseUrl||"https://api.openai.com",model:n.model}),[n]),{register:r,handleSubmit:o,reset:c,setValue:u,formState:{isDirty:f}}=rb({defaultValues:i});se.useEffect(()=>{c(i)},[i,c]);const[p,g]=B.useState("idle"),[O,v]=B.useState(void 0),w=k=>{const S={openaiApiKey:k.openaiApiKey||null,baseUrl:k.baseUrl||"https://api.openai.com",model:k.model,stream:n.stream,responseMode:n.responseMode,enableShortcuts:n.enableShortcuts,showTokenMeter:n.showTokenMeter,virtualizeMessages:n.virtualizeMessages};e(S)};return d.jsxs(su,{className:"dark-mode",onSubmit:o(w),children:[d.jsxs(d.Fragment,{children:[d.jsx(Xs,{label:"OpenAI API Key",htmlFor:"openai-key",hint:"Stored locally in your browser via localStorage.",children:d.jsx(lb,{id:"openai-key",placeholder:"sk-...",...r("openaiApiKey")})}),d.jsx(Xs,{label:"OpenAI Base URL",htmlFor:"openai-base",hint:"For proxies or Azure-hosted endpoints.",children:d.jsx(nr,{id:"openai-base",placeholder:"https://api.openai.com",...r("baseUrl")})}),d.jsx(Xs,{label:"Model",htmlFor:"openai-model",hint:"Example: gpt-5-mini",children:d.jsx(nr,{id:"openai-model",...r("model")})})]}),d.jsxs(oM,{children:[d.jsx("button",{type:"submit",className:"btn btn--primary",title:"Save settings",children:"Save"}),d.jsx("button",{type:"button",onClick:()=>{c(i),u("openaiApiKey",i.openaiApiKey),u("baseUrl",i.baseUrl),u("model",i.model)},className:"btn",title:"Reset",children:"Reset"}),d.jsx("button",{type:"button",onClick:async()=>{g("testing"),v(void 0);const k=document.getElementById("openai-key")?.value||i.openaiApiKey,S=document.getElementById("openai-base")?.value||i.baseUrl,$=await t(k,S);$.ok?g("ok"):(g("error"),v($.error))},className:"btn",title:"Test connection",children:p==="testing"?"Testing…":"Test"}),d.jsx("button",{type:"button",onClick:()=>{s();const k={...i,openaiApiKey:""};c(k),u("openaiApiKey",""),g("idle"),v(void 0)},className:"btn",title:"Clear API key",children:"Clear"}),d.jsx("span",{className:`status ${p==="ok"?"status--ok":p==="error"?"status--error":""}`,children:p==="ok"?"Connected":p==="error"?"Error":""})]}),p==="error"&&O&&d.jsx("div",{className:"form__error",children:O})]})},R2=({chatState:n,setChatState:e,sendMessage:t,sendMessageWithText:s,stopRequest:i,onTaggedElementSelect:r,availableElements:o,retryLastResponse:c,canRetry:u,docsRunner:f,docsSchema:p,docsProjectOverview:g,docsRunnerDev:O})=>{const v=B.useRef(null),[w,k]=B.useState([]),[S,$]=B.useState(!1),[b,C]=B.useState(-1),[T,P]=B.useState(""),[N,A]=B.useState(-1),[X,F]=B.useState(!1),[H,J]=B.useState(!1);B.useEffect(()=>{v.current&&setTimeout(()=>{v.current?.focus()},100)},[]);const R=B.useCallback(async()=>{if(!(!n.inputValue.trim()||n.isTyping||X)){F(!0);try{const z=n.inputValue,Q=/\s*@docs\.(runnerDev|runner|schema|projectOverview|fullContext|clear)\b/g,j=[];z.replace(Q,ee=>(j.push(ee.trim()),ee)),j.length>0&&e(ee=>{const re={...ee.chatContext?.include||{}};let fe=!1;for(const me of j){if(me.endsWith("clear")){re.runner=!1,re.runnerDev=!1,re.schema=!1,re.projectOverview=!1,fe=!0;continue}me.endsWith("runner")&&(re.runner=!0),me.endsWith("runnerDev")&&(re.runnerDev=!0),me.endsWith("schema")&&(re.schema=!0),me.endsWith("projectOverview")&&(re.projectOverview=!0),me.endsWith("fullContext")&&(re.runner=!0,re.schema=!0,re.projectOverview=!0)}return{...ee,chatContext:{include:re}}});const I=z.replace(Q," ").replace(/\s{2,}/g," ").trim(),le=j.length>0?(()=>{const ee={...n.chatContext?.include||{}};let re=!1;for(const fe of j){if(fe.endsWith("clear")){ee.runner=!1,ee.runnerDev=!1,ee.schema=!1,ee.projectOverview=!1,re=!0;continue}fe.endsWith("runner")&&(ee.runner=!0),fe.endsWith("runnerDev")&&(ee.runnerDev=!0),fe.endsWith("schema")&&(ee.schema=!0),fe.endsWith("projectOverview")&&(ee.projectOverview=!0),fe.endsWith("fullContext")&&(ee.runner=!0,ee.schema=!0,ee.projectOverview=!0)}return ee})():void 0;if(j.length>0){const ee=j.filter(me=>!me.endsWith("clear")).map(me=>me.includes("fullContext")?"Full Context (Runner + Project Overview + GraphQL Schema)":me.includes("projectOverview")?"Project Overview":me.endsWith("runnerDev")?"Runner-Dev":me.endsWith("runner")?"Runner":me.endsWith("schema")?"GraphQL Schema":me.replace(/^@docs\./,""));if(I.length===0){e(je=>({...je,messages:[...je.messages,{id:`ctx-${Date.now()}`,author:"bot",type:"text",text:ee.length>0?`Context updated: ${ee.join(", ")}`:"Context cleared.",timestamp:Date.now()}],inputValue:""}));const me=`Please read the provided docs context and give a concise, high-signal summary covering the most relevant points for development. Context enabled: ${ee.join(", ")}.`;s(me,z,le);return}const re=I.trim().toLowerCase();if(/^(read|read it|read them|read this|summarize|summary)$/i.test(re)){const me=`Please read the provided docs context and give a concise, high-signal summary covering the most relevant points for development. Context enabled: ${ee.join(", ")}.`;s(me,z,le);return}}s(I,z,le)}finally{F(!1)}}},[n.inputValue,n.isTyping,X,s,e]),V=B.useCallback(z=>{if(z.length===0)return[];const Q=z.toLowerCase(),j=[];if(Q.startsWith("docs")){let I=Q.substring(4);I.startsWith(".")&&(I=I.substring(1)),ce.forEach(le=>{const ee=le.id.replace("docs.",""),re=le.id;(I===""||ee.toLowerCase().includes(I)||re.toLowerCase().includes(Q))&&j.push({id:le.id,name:le.id,type:"docs",title:le.title,description:le.description})})}else o&&Object.entries(o).forEach(([I,le])=>{le.forEach(ee=>{ee.name.toLowerCase().includes(Q)&&j.push({id:ee.id,name:ee.name,type:I.slice(0,-1),title:ee.title,description:ee.description})})});return j.sort((I,le)=>{const ee=I.name.toLowerCase(),re=le.name.toLowerCase();return ee===Q?-1:re===Q?1:ee.startsWith(Q)&&!re.startsWith(Q)?-1:re.startsWith(Q)&&!ee.startsWith(Q)?1:ee.localeCompare(re)}).slice(0,10)},[o]),U=B.useCallback(z=>{const Q=z.target.value,j=z.target.selectionStart;e(ee=>({...ee,inputValue:Q}));const I=Q.substring(0,j),le=I.lastIndexOf("@");if(le!==-1){const ee=I.substring(le+1);if(/\s/.test(ee))$(!1);else{const fe=ee,me=V(fe);k(me),$(me.length>0),P(fe),A(le),C(-1)}}else $(!1)},[e,V]),te=B.useCallback(z=>{if(N===-1)return;const Q=n.inputValue,j=Q.substring(0,N),I=Q.substring(N+1+T.length),le=`${j}@${z.name} ${I}`;e(re=>({...re,inputValue:le})),$(!1);const ee=j.length+1+z.name.length+1;setTimeout(()=>{v.current&&(v.current.setSelectionRange(ee,ee),v.current.focus())},0)},[n.inputValue,N,T,e,r]),pe=B.useCallback(z=>{if(S&&w.length>0){if(z.key==="ArrowDown"){z.preventDefault(),C(Q=>Q<w.length-1?Q+1:0);return}if(z.key==="ArrowUp"){z.preventDefault(),C(Q=>Q>0?Q-1:w.length-1);return}if((z.key==="Enter"||z.key==="Tab")&&b>=0){z.preventDefault(),te(w[b]);return}if(z.key==="Escape"){z.preventDefault(),$(!1);return}}if(z.key==="Enter"&&(z.ctrlKey||z.metaKey))z.preventDefault(),R();else if(z.key==="Enter"&&!z.shiftKey&&!S)z.preventDefault(),R();else if(z.key==="Escape")n.canStop?(z.preventDefault(),i()):n.inputValue===""&&v.current?.blur();else if(z.key==="ArrowUp"&&n.inputValue===""&&!S){const Q=[...n.messages].reverse().find(j=>j.author==="user"&&j.type==="text");Q&&Q.type==="text"&&e(j=>({...j,inputValue:Q.text}))}},[S,w,b,te,R,n.canStop,n.inputValue,n.messages,e,i]);B.useEffect(()=>{const z=Q=>{Q.target?.closest?.(".chat-input-container")||($(!1),J(!1))};if(S||H)return document.addEventListener("click",z),()=>document.removeEventListener("click",z)},[S,H]);const ce=[f&&g&&p&&{id:"docs.fullContext",title:"Add Full Context",description:"Runner + Project Overview + GraphQL Schema (complete context)"},f&&{id:"docs.runner",title:"Add Runner Context",description:"High-quality Runner docs context (AI.md)"},O&&{id:"docs.runnerDev",title:"Add Runner-Dev Docs",description:"Runner-Dev AI Assistant Guide (this toolkit)"},p&&{id:"docs.schema",title:"Add GraphQL SDL",description:"Full GraphQL schema for complex queries"},g&&{id:"docs.projectOverview",title:"Add Project AI.md",description:"Project-specific AI guidelines/context"}].filter(Boolean),Y=z=>{const Q=v.current,j=`@${z}`;e(I=>{const le=I.inputValue||"";if(!Q){const Xe=le?`${le} ${j} `:`${j} `;return{...I,inputValue:Xe}}const ee=Q.selectionStart??le.length,re=Q.selectionEnd??ee,fe=le.slice(0,ee),me=le.slice(re),je=fe.length>0&&!/\s$/.test(fe),De=me.length===0||!/^\s/.test(me),Ye=`${je?" ":""}${j}${De?" ":""}`,Re=`${fe}${Ye}${me}`;return setTimeout(()=>{try{const Xe=(fe+Ye).length;Q.focus(),Q.setSelectionRange(Xe,Xe)}catch{}},0),{...I,inputValue:Re}})};return d.jsxs("div",{className:"docs-chat-input",children:[d.jsxs("div",{className:"chat-input-container",children:[d.jsx("textarea",{ref:v,placeholder:"Ask about code, request files, or get help... (Use @ to reference elements or @docs for context)",value:n.inputValue,onChange:U,onKeyDown:pe,autoComplete:"off",autoCorrect:"off",spellCheck:!1,className:"chat-main-input",rows:3}),S&&w.length>0&&d.jsx("div",{className:"chat-suggestions-dropdown",children:w.map((z,Q)=>d.jsxs("div",{className:`chat-suggestion-item ${Q===b?"selected":""}`,onClick:()=>te(z),children:[d.jsxs("div",{className:"suggestion-header",children:[d.jsx("span",{className:"suggestion-type",children:z.type}),d.jsx("span",{className:"suggestion-name",children:z.name})]}),(z.title||z.description)&&d.jsxs("div",{className:"suggestion-meta",children:[z.title&&d.jsx("div",{className:"suggestion-title",children:z.title}),z.description&&d.jsx("div",{className:"suggestion-description",children:z.description})]})]},`${z.type}-${z.id}`))}),d.jsxs("div",{className:"chat-button-group",children:[d.jsxs("div",{className:"docs-insert-wrapper",children:[d.jsx("button",{onClick:()=>J(z=>!z),className:"chat-insert-btn docs-insert-btn",title:"Add context",disabled:ce.length===0,children:d.jsx("span",{className:"insert-icon",children:"+"})}),H&&ce.length>0&&d.jsx("div",{className:"chat-docs-menu",children:ce.map(z=>d.jsxs("button",{className:"chat-docs-menu__item",onClick:()=>{Y(z.id),J(!1),setTimeout(()=>v.current?.focus(),0)},children:[d.jsx("div",{className:"chat-docs-menu__item-title",children:z.title}),d.jsx("div",{className:"chat-docs-menu__item-desc",children:z.description}),d.jsxs("div",{className:"chat-docs-menu__item-id",children:["@",z.id]})]},z.id))})]}),n.canStop?d.jsx("button",{onClick:i,className:"chat-send-btn chat-send-btn--stop",title:"Stop generating response",children:d.jsx("span",{className:"send-text",children:"Stop"})}):d.jsxs(d.Fragment,{children:[u&&d.jsx("button",{onClick:c,className:"chat-send-btn chat-send-btn--retry",disabled:n.isTyping||X,title:"Retry last response",children:d.jsx("span",{className:"send-text",children:"↻"})}),d.jsx("button",{onClick:R,className:"chat-send-btn",disabled:!n.inputValue.trim()||n.isTyping||X,title:"Send message (Enter or Ctrl+Enter)",children:d.jsx("span",{className:"send-text",children:X?"Processing...":"Send"})})]})]})]}),d.jsx("div",{className:"chat-input-hints",children:d.jsxs("span",{className:"hint",children:["💡 Press Enter or Ctrl+Enter to send • Shift+Enter for new line",n.canStop?" • Escape to stop":""," • @ to reference elements or @docs for context"]})})]})},D2=({children:n,onClickOutside:e,className:t="",style:s,enabled:i=!0})=>{const r=B.useRef(null);return B.useEffect(()=>{if(!i)return;const o=c=>{const u=r.current;if(!u)return;const f=c.target;f&&!u.contains(f)&&e(c)};return document.addEventListener("mousedown",o),()=>{document.removeEventListener("mousedown",o)}},[i,e]),d.jsx("div",{ref:r,className:t,style:s,children:n})};function I2(n,e){return B.useMemo(()=>n.filter(t=>!(e&&t.author==="bot"&&t.type==="text"&&!t.text.trim())),[n,e])}function L2(n,e){const[t,s]=B.useState(!0),i=B.useRef(null),r=B.useRef(!1),o=B.useRef(!1),c=B.useCallback(()=>{const u=n.current;u&&(u.scrollTop=u.scrollHeight)},[n]);return B.useEffect(()=>{if(r.current)return;r.current=!0;const u=requestAnimationFrame(()=>{c();const f=requestAnimationFrame(()=>c());i.current=f});return i.current=u,()=>{i.current&&cancelAnimationFrame(i.current),i.current=null}},[]),B.useEffect(()=>{const u=n.current;if(!u)return;const f=()=>{const g=u.scrollHeight-u.scrollTop-u.clientHeight<=32;s(g)};return f(),u.addEventListener("scroll",f,{passive:!0}),()=>u.removeEventListener("scroll",f)},[n]),B.useEffect(()=>{if(!o.current)return o.current=!0,i.current&&cancelAnimationFrame(i.current),i.current=requestAnimationFrame(()=>{c(),Promise.resolve().then(()=>c())}),()=>{i.current&&cancelAnimationFrame(i.current),i.current=null};if(t)return i.current&&cancelAnimationFrame(i.current),i.current=requestAnimationFrame(()=>{c(),Promise.resolve().then(()=>c())}),()=>{i.current&&cancelAnimationFrame(i.current),i.current=null}},[t,c,...e]),{isAtBottom:t,scrollToBottom:c}}const Mb=({calls:n,showStatus:e=!0,onOpenArguments:t,onOpenResponse:s})=>{const i=(n||[]).filter(Boolean);return i.length?d.jsx("div",{className:"tool-calls-list",children:i.map((r,o)=>d.jsx("div",{className:`tool-call${r.status?` tool-call--${r.status}`:""}`,children:d.jsxs("div",{className:"tool-call-row",children:[e&&d.jsx("div",{className:`tool-call-badge tool-call-badge--${r.status||"pending"}`,children:r.status||"pending"}),d.jsxs("div",{className:"tool-call-info",children:[d.jsx("div",{className:"tool-call-name",children:r.name||"tool"}),d.jsxs("div",{className:"tool-call-actions",children:[d.jsx("button",{className:"tool-call-link",onClick:()=>r.argsPreview&&t?.(`${r.name||"tool"} — Arguments`,r.argsPreview),disabled:!r.argsPreview,"aria-disabled":!r.argsPreview,children:"Arguments"}),d.jsx("button",{className:"tool-call-link",onClick:()=>r.resultPreview&&s?.(`${r.name||"tool"} — Response`,r.resultPreview),disabled:!r.resultPreview,"aria-disabled":!r.resultPreview,children:"Response"})]})]})]})},r.id||o))}):null},Z2=se.memo(({message:n,onOpenFile:e,onOpenDiff:t})=>{const[s,i]=se.useState(!1),[r,o]=se.useState(!1),[c,u]=se.useState(""),[f,p]=se.useState(""),g=n.author==="bot"&&n.type==="text",O=g?n.text:"",v=se.useCallback(async w=>{if(w)try{if(navigator?.clipboard?.writeText)await navigator.clipboard.writeText(w);else{const k=document.createElement("textarea");k.value=w,k.className="clipboard-textarea",document.body.appendChild(k),k.focus(),k.select(),document.execCommand("copy"),document.body.removeChild(k)}i(!0),setTimeout(()=>i(!1),1500)}catch{}},[]);return d.jsxs("div",{className:`chat-message chat-message--${n.author}`,children:[d.jsxs("div",{className:"chat-message-header",children:[d.jsx("span",{className:"chat-message-author",children:n.author==="user"?"You":"AI"}),d.jsx("span",{className:"chat-message-time"})]}),d.jsxs("div",{className:"chat-bubble",children:[n.type==="text"&&d.jsx("div",{className:"message-text",children:n.author==="bot"?d.jsx(Cb,{content:n.text}):QA(n.text).map((w,k)=>d.jsx("span",{children:w.type==="text"?w.content:d.jsxs("button",{className:"file-reference-btn",onClick:S=>{S.stopPropagation(),e({fileName:w.content,content:`// File: ${w.content}
|
|
346
|
+
// This is a simulated file view
|
|
347
|
+
// In production, this would load the actual file content`,language:"typescript"},`File: ${w.content}`)},children:["[",w.content,"]"]})},k))}),n.author==="bot"&&n.type==="text"&&(()=>{const k=n.toolCalls||[];return k.length?d.jsxs("details",{className:"message-tool-calls",children:[d.jsxs("summary",{children:["Used tools (",k.length,")"]}),d.jsx("div",{className:"tool-calls-content",children:d.jsx(Mb,{calls:k,showStatus:!1,onOpenArguments:(S,$)=>{u(S),p($),o(!0)},onOpenResponse:(S,$)=>{u(S),p($),o(!0)}})})]}):null})(),n.type==="file"&&d.jsxs("div",{className:"message-file",children:[n.text&&d.jsx("div",{className:"message-text",children:n.text}),d.jsxs("div",{className:"file-preview",onClick:w=>{w.stopPropagation(),e(n.file,`File: ${n.file.fileName}`)},role:"button",tabIndex:0,onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&e(n.file,`File: ${n.file.fileName}`)},children:[d.jsxs("div",{className:"file-header",children:[d.jsx("span",{className:"file-icon",children:"📄"}),d.jsx("span",{className:"file-name",children:n.file.fileName})]}),d.jsxs("div",{className:"file-snippet",children:[n.file.content.split(`
|
|
348
|
+
`).slice(0,3).join(`
|
|
349
|
+
`),n.file.content.split(`
|
|
350
|
+
`).length>3&&`
|
|
351
|
+
...`]})]})]}),n.type==="diff"&&d.jsxs("div",{className:"message-diff",children:[n.text&&d.jsx("div",{className:"message-text",children:n.text}),d.jsxs("div",{className:"diff-preview",onClick:w=>{w.stopPropagation(),t(n.diff)},role:"button",tabIndex:0,onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&t(n.diff)},children:[d.jsxs("div",{className:"diff-header",children:[d.jsx("span",{className:"diff-icon",children:"🔄"}),d.jsx("span",{className:"diff-file",children:n.diff.fileName})]}),d.jsxs("div",{className:"diff-stats",children:[d.jsxs("span",{className:"diff-additions",children:["+",n.diff.newVersion.split(`
|
|
352
|
+
`).length]}),d.jsxs("span",{className:"diff-deletions",children:["-",n.diff.previousVersion.split(`
|
|
353
|
+
`).length]})]})]})]}),g&&O&&d.jsx("button",{className:`chat-copy-btn${s?" chat-copy-btn--copied":""}`,"aria-label":s?"Copied":"Copy message",title:s?"Copied!":"Copy",onClick:w=>{w.stopPropagation(),v(O)}})]}),d.jsx(un,{title:c,isOpen:r,onClose:()=>o(!1),code:f,enableEdit:!1})]})}),z2=({stage:n="thinking",toolCalls:e=[]})=>{const[t,s]=B.useState(!1),[i,r]=B.useState(""),[o,c]=B.useState(null),u=(e||[]).length,f=n==="processing"?"Calling tools":n==="generating"?"Generating response":"Thinking",p=u>0?`${f} (${u} tools)`:`${f}...`,g=(e||[]).filter(v=>!!v);function O(v,w){r(v),c(w??""),s(!0)}return d.jsxs("div",{className:"chat-message chat-message--bot","aria-live":"polite",children:[d.jsxs("div",{className:"chat-message-header",children:[d.jsx("span",{className:"chat-message-author",children:"AI"}),d.jsx("span",{className:"chat-message-time",children:"Now"})]}),d.jsxs("div",{className:"chat-bubble",children:[d.jsxs("div",{className:"thinking-animation",children:[d.jsx("div",{className:"thinking-stage",children:p}),d.jsxs("div",{className:"thinking-dots",children:[d.jsx("span",{className:"dot"}),d.jsx("span",{className:"dot"}),d.jsx("span",{className:"dot"})]})]}),g.length>0&&d.jsx(Mb,{calls:g,showStatus:!0,onOpenArguments:(v,w)=>O(v,w),onOpenResponse:(v,w)=>O(v,w)})]}),d.jsx(un,{title:i,isOpen:t,onClose:()=>s(!1),code:o??"",enableEdit:!1})]})},F2=se.memo(({messages:n,isTyping:e,onOpenFile:t,onOpenDiff:s,thinkingStage:i,toolCalls:r})=>{const o=B.useMemo(()=>n.map(c=>({m:c,time:jA(c.timestamp)})),[n]);return d.jsxs(d.Fragment,{children:[o.map(({m:c,time:u})=>d.jsx("div",{children:d.jsx(Z2,{message:c,onOpenFile:t,onOpenDiff:s})},c.id)),e&&d.jsx(z2,{stage:i,toolCalls:r})]})});function B2(n){const{enabled:e=!0}=n;B.useEffect(()=>{if(!e)return;const t=s=>{const i=s.metaKey||s.ctrlKey;if(i&&s.shiftKey&&(s.key==="A"||s.key==="a")){s.preventDefault(),n.onToggleChat?.();return}if(i&&(s.key==="I"||s.key==="i")){s.preventDefault(),n.onFocusInput?.();return}if(i&&s.key==="Enter"){s.preventDefault(),n.onSend?.();return}if(s.key==="Escape"){n.onStop?.();return}if(i&&(s.key==="K"||s.key==="k")){s.preventDefault(),n.onClear?.();return}};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e,n])}var k0={};const X2=({width:n,sidebarRef:e,isChatOpen:t,onToggleChat:s,runnerAiMd:i,runnerDevMd:r,projectOverviewMd:o,graphqlSdl:c,availableElements:u})=>{const p=k0.REACT_APP_USE_SMART_CHAT==="true"||k0.NEXT_PUBLIC_USE_SMART_CHAT==="true"||window.location.search.includes("useSmartChat=true")?A2({availableElements:u,docs:{runnerAiMd:i,graphqlSdl:c,runnerDevMd:r,projectOverviewMd:o}}):P2({availableElements:u,docs:{runnerAiMd:i,graphqlSdl:c,runnerDevMd:r,projectOverviewMd:o}}),{chatState:g,setChatState:O,sendMessage:v,sendMessageWithText:w,clearChat:k,updateSettings:S,testOpenAIConnection:$,stopRequest:b,retryLastResponse:C,tokenStatus:T}=p,[P,N]=B.useState(!1),[A,X]=B.useState({isOpen:!1,title:"",content:""}),F=B.useRef(null),H=B.useRef(null),J=I2(g.messages,g.isTyping);L2(F,[J,g.isTyping]);const R=B.useCallback((Q,j)=>{X({isOpen:!0,title:j,subtitle:Q.fileName,content:Q.content,language:Q.language})},[]),V=B.useCallback(Q=>{X({isOpen:!0,title:`Diff: ${Q.fileName}`,subtitle:"Unified diff format",content:Q.diffText||PA(Q.previousVersion,Q.newVersion,Q.fileName),language:"diff"})},[]),U=B.useCallback(()=>{X(Q=>({...Q,isOpen:!1}))},[]),te=B.useRef(w),pe=B.useRef(t),ce=B.useRef(s);B.useEffect(()=>{te.current=w,pe.current=t,ce.current=s},[w,t,s]),B.useEffect(()=>{const Q=j=>{const I=j.detail||{},le=I.messageText||"",ee=I.displayText||void 0;le&&(pe.current||ce.current(),te.current(le,ee))};return window.addEventListener("docs:add-to-ai",Q),()=>window.removeEventListener("docs:add-to-ai",Q)},[]);const Y=B.useCallback((Q,j)=>{O(I=>{const le=I.inputValue||"",ee=`@${Q}`,re=le?`${le} ${ee} `:`${ee} `;return{...I,inputValue:re}})},[O]),z=B.useMemo(()=>g.messages.map(I=>I.author).lastIndexOf("user")!==-1&&!g.isTyping,[g.messages,g.isTyping]);return B2({enabled:!0,onToggleChat:s,onFocusInput:()=>{document.querySelector(".docs-chat-input .chat-main-input")?.focus()},onSend:()=>{!g.isTyping&&(g.inputValue||"").trim()&&v()},onStop:()=>{g.canStop&&b()},onClear:()=>{window.confirm("Are you sure you want to clear all chat history? This action cannot be undone.")&&k()}}),B.useEffect(()=>{if(!P)return;const Q=j=>{j.key==="Escape"&&(j.preventDefault(),N(!1))};return document.addEventListener("keydown",Q),()=>document.removeEventListener("keydown",Q)},[P]),d.jsxs(d.Fragment,{children:[d.jsxs("aside",{ref:e,className:"docs-chat-sidebar",style:{width:`${n}px`},role:"complementary","aria-label":"AI chat",children:[d.jsx(P0,{icon:"",title:"Runtime AI (beta)",className:"sidebar-header--chat",status:d.jsxs(d.Fragment,{children:[g.isTyping?d.jsx("span",{className:"status-thinking",children:"Thinking..."}):d.jsx("span",{className:"status-ready",children:"Ready"}),d.jsx("span",{className:"status-sep",style:{margin:"0 8px",opacity:.5},children:"|"}),(()=>{const Q=T.mode==="context"?`System: ${T.breakdown.system} • History: ${T.breakdown.history} • Input: ${T.breakdown.input}`:g.lastUsage?`Prompt: ${g.lastUsage.promptTokens} • Completion: ${g.lastUsage.completionTokens} • Total: ${g.lastUsage.totalTokens}`:"";return d.jsx("span",{className:"status-context",title:Q,children:T.mode==="context"?d.jsxs(d.Fragment,{children:["Context: ",T.total]}):d.jsxs(d.Fragment,{children:["Tokens: ",T.total]})})})()]}),actions:d.jsxs(d.Fragment,{children:[d.jsx("button",{className:"sidebar-header__action-btn",onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),N(j=>!j)},title:"Settings",children:"⚙️"}),d.jsx("button",{className:"sidebar-header__action-btn sidebar-header__action-btn--destructive",onClick:()=>{window.confirm("Are you sure you want to clear all chat history? This action cannot be undone.")&&k()},title:"Clear chat",children:"🗑️"})]})}),P&&d.jsx(D2,{className:"docs-chat-settings",style:{padding:"12px",borderTop:"1px solid #eee",borderBottom:"1px solid #eee"},onClickOutside:Q=>{Q&&Q.target?.closest('button[title="Settings"]')||N(!1)},children:d.jsx(M2,{settings:g.settings,onSave:Q=>{S(Q),N(!1)},onTest:(Q,j)=>$(Q,j),onClearKey:()=>S({openaiApiKey:null})})}),d.jsxs(d.Fragment,{children:[d.jsxs("div",{ref:F,className:"docs-chat-messages",children:[d.jsx(F2,{messages:J,isTyping:g.isTyping,thinkingStage:g.thinkingStage!=="none"?g.thinkingStage:void 0,toolCalls:g.toolCalls,onOpenFile:R,onOpenDiff:V}),d.jsx("div",{ref:H,style:{height:"20px"}})]}),d.jsx(R2,{chatState:g,setChatState:O,sendMessage:v,sendMessageWithText:w,stopRequest:b,onTaggedElementSelect:Y,availableElements:u,retryLastResponse:C,canRetry:z,docsRunner:i,docsSchema:c,docsProjectOverview:o,docsRunnerDev:r})]})]}),d.jsx(un,{title:A.title,subtitle:A.subtitle,isOpen:A.isOpen,onClose:U,code:A.content})]})};function V2(){const[n,e]=B.useState(!0),[t,s]=B.useState([]),[i,r]=B.useState([]),[o,c]=B.useState([]),[u,f]=B.useState(Array.from({length:7},()=>Array.from({length:24},()=>0)));return B.useEffect(()=>{let p=!1;const g=`
|
|
354
|
+
query LiveData($afterTimestamp: Float, $last: Int) {
|
|
355
|
+
live {
|
|
356
|
+
logs(afterTimestamp: $afterTimestamp, last: $last) {
|
|
357
|
+
timestampMs
|
|
358
|
+
level
|
|
359
|
+
message
|
|
360
|
+
}
|
|
361
|
+
errors(afterTimestamp: $afterTimestamp, last: $last) {
|
|
362
|
+
timestampMs
|
|
363
|
+
sourceId
|
|
364
|
+
sourceKind
|
|
365
|
+
message
|
|
366
|
+
sourceResolved { id }
|
|
367
|
+
}
|
|
368
|
+
runs(afterTimestamp: $afterTimestamp, last: $last) {
|
|
369
|
+
timestampMs
|
|
370
|
+
nodeId
|
|
371
|
+
nodeKind
|
|
372
|
+
ok
|
|
373
|
+
durationMs
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
`;async function O(w){e(!0);try{const k=await Qt(g,{last:200,afterTimestamp:w});if(p)return;const S=Date.now(),$=30,b=6e4,C=S-$*b,T={};for(let H=0;H<$;H++){const J=C+H*b;T[J]={success:0,error:0,canceled:0,durations:[]}}for(const H of k.live.runs||[]){if(H.timestampMs<C)continue;const J=Math.floor((H.timestampMs-C)/b)*b+C,R=T[J];R&&(H.ok?R.success+=1:R.error+=1,typeof H.durationMs=="number"&&R.durations.push(H.durationMs))}const P=[],N=[];Object.keys(T).map(H=>Number(H)).sort((H,J)=>H-J).forEach(H=>{const J=T[H];if(P.push({t:H,success:J.success,error:J.error,canceled:J.canceled}),J.durations.length>0){const R=[...J.durations].sort((U,te)=>U-te),V=U=>R[Math.min(R.length-1,Math.floor(U*(R.length-1)))];N.push({t:H,p50:V(.5),p95:V(.95),p99:V(.99)})}else N.push({t:H,p50:0,p95:0,p99:0})});const A={};for(const H of k.live.errors||[]){const J=H.sourceId||"unknown";A[J]=(A[J]||0)+1}const X=Object.entries(A).map(([H,J])=>({taskId:H,errors:J})).sort((H,J)=>J.errors-H.errors).slice(0,10),F=Array.from({length:7},()=>Array.from({length:24},()=>0));for(const H of k.live.logs||[]){const J=new Date(H.timestampMs),R=J.getDay(),V=J.getHours();F[R][V]+=1}s(P),r(N),c(X),f(F)}finally{p||e(!1)}}O();const v=window.setInterval(()=>O(Date.now()-5e3),5e3);return()=>{p=!0,window.clearInterval(v)}},[]),{throughput:t,latency:i,errorByTask:o,heatmap:u,isLoading:n}}const W2=({onClose:n,overlay:e=!1})=>{const{throughput:t,latency:s,errorByTask:i,heatmap:r,isLoading:o}=V2();B.useEffect(()=>{const p=g=>{(g.key==="Escape"||g.key==="Esc")&&n()};return window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p)},[n]);const c=B.useMemo(()=>{if(t.length===0)return"";const p=800,g=160,O=Math.max(1,...t.map(S=>S.success+S.error+S.canceled)),v=S=>S/Math.max(1,t.length-1)*p,w=S=>g-S/O*g,k=t.map((S,$)=>`${v($)},${w(S.success+S.error)}`);return`M0,${g} L${k.join(" L")} L${p},${g} Z`},[t]),u=B.useMemo(()=>{if(s.length===0)return{p50:"",p95:"",p99:""};const p=800,g=160,O=Math.max(1,...s.flatMap(S=>[S.p50,S.p95,S.p99])),v=S=>S/Math.max(1,s.length-1)*p,w=S=>g-S/O*g,k=S=>s.map(($,b)=>`${b===0?"M":"L"}${v(b)},${w(S($))}`).join(" ");return{p50:k(S=>S.p50),p95:k(S=>S.p95),p99:k(S=>S.p99)}},[s]),f=d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"overview-stats-panel__header",children:[d.jsx("h3",{children:"Performance Stats"}),d.jsx("button",{onClick:n,className:"clear-button",children:"Close"})]}),d.jsxs("div",{className:"overview-stats-panel__grid",children:[d.jsxs("section",{className:"overview-stats-panel__section",children:[d.jsx("h4",{children:"Throughput over time"}),d.jsx("div",{className:"overview-stats-panel__chart",children:o?d.jsx("div",{className:"overview-stats-panel__loading",children:"Loading…"}):d.jsxs("svg",{width:"100%",height:160,viewBox:"0 0 800 160",children:[d.jsx("defs",{children:d.jsxs("linearGradient",{id:"tp",x1:"0",y1:"0",x2:"0",y2:"1",children:[d.jsx("stop",{offset:"0%",stopColor:"#60a5fa",stopOpacity:"0.7"}),d.jsx("stop",{offset:"100%",stopColor:"#60a5fa",stopOpacity:"0.1"})]})}),d.jsx("path",{d:c,fill:"url(#tp)",stroke:"#3b82f6",strokeWidth:1})]})})]}),d.jsxs("section",{className:"overview-stats-panel__section",children:[d.jsx("h4",{children:"Latency percentiles"}),d.jsx("div",{className:"overview-stats-panel__chart",children:o?d.jsx("div",{className:"overview-stats-panel__loading",children:"Loading…"}):d.jsxs("svg",{width:"100%",height:160,viewBox:"0 0 800 160",children:[d.jsx("path",{d:u.p50,fill:"none",stroke:"#22c55e",strokeWidth:2}),d.jsx("path",{d:u.p95,fill:"none",stroke:"#eab308",strokeWidth:2}),d.jsx("path",{d:u.p99,fill:"none",stroke:"#ef4444",strokeWidth:2})]})})]}),d.jsxs("section",{className:"overview-stats-panel__section",children:[d.jsx("h4",{children:"Error rate"}),d.jsx("div",{className:"overview-stats-panel__list",children:o?d.jsx("div",{className:"overview-stats-panel__loading",children:"Loading…"}):i.length===0?d.jsx("div",{className:"overview-stats-panel__empty",children:"No errors"}):d.jsx("ul",{children:i.map(p=>d.jsxs("li",{children:[p.taskId," — ",p.errors]},p.taskId))})})]}),d.jsxs("section",{className:"overview-stats-panel__section",children:[d.jsx("h4",{children:"Activity heatmap"}),d.jsx("div",{className:"overview-stats-panel__chart",children:!o&&d.jsx("svg",{width:"100%",height:160,viewBox:"0 0 800 160",children:r.map((p,g)=>p.map((O,v)=>{const w=v/24*800,k=g/7*160,$=`rgba(99,102,241,${.15+Math.min(1,O/10)*.75})`;return d.jsx("rect",{x:w,y:k,width:800/24-1,height:160/7-1,fill:$},`${v}-${g}`)}))})})]})]})]});return e?d.jsx("div",{className:"overview-stats-panel overview-stats-panel--overlay",onClick:n,children:d.jsx("div",{role:"dialog","aria-modal":"true",className:"overview-stats-panel__content",onClick:p=>p.stopPropagation(),children:f})}):d.jsx("div",{className:"overview-stats-panel overview-stats-panel--inline",children:d.jsx("div",{role:"region","aria-label":"Performance stats",className:"overview-stats-panel__content",children:f})})},S0=({introspector:n,namespacePrefix:e,runnerFrameworkMd:t,runnerDevMd:s,projectOverviewMd:i,graphqlSdl:r})=>{const o=B.useRef(!1),[c,u]=B.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.CHAT_OPEN)==="true"}catch{return Fe.DEFAULTS.CHAT_OPEN}}),[f,p]=B.useState(()=>{try{const U=localStorage.getItem("docs-dark-mode");return U?JSON.parse(U):!0}catch{return!0}});B.useEffect(()=>{document.documentElement.setAttribute("data-theme",f?"dark":"light");try{localStorage.setItem("docs-dark-mode",JSON.stringify(f))}catch(U){console.warn("Failed to save dark mode preference:",U)}},[f]);const g=()=>{p(!f)},O=v2(n,e),v=x2(),w=k2(40),k=w2(c?w.chatWidth+40:0),S=f0(k.sidebarWidth,180),$=f0(w.chatWidth,180),[b,C]=B.useState(!1),T=()=>{u(U=>{const te=!U;try{localStorage.setItem(Fe.STORAGE_KEYS.CHAT_OPEN,String(te))}catch{}return C(!0),window.setTimeout(()=>C(!1),260),te})},[P,N]=B.useState(()=>{try{return window.location.hash==="#overview-stats"}catch{return!1}});B.useEffect(()=>{const U=()=>{try{N(window.location.hash==="#overview-stats")}catch{}};return window.addEventListener("hashchange",U),U(),()=>window.removeEventListener("hashchange",U)},[]);const A=()=>{try{window.location.hash="#overview-stats"}catch{}},X=()=>{try{window.location.hash==="#overview-stats"&&(window.location.hash="#overview")}catch{}},F=_2(O.allElements,v.treeType,O.localNamespaceSearch,n,{tasks:O.tasks,resources:O.resources,events:O.events,hooks:O.hooks,middlewares:O.middlewares,tags:O.tags}),H=$2({tasks:O.tasks.length,resources:O.resources.length,events:O.events.length,hooks:O.hooks.length,middlewares:O.middlewares.length,errors:n.getErrors().length,asyncContexts:n.getAsyncContexts().length,tags:O.tags.length}),J=O.tasks.length+O.resources.length+O.events.length+O.hooks.length+O.middlewares.length,R=U=>{window.location.hash=`#${U}`,document.getElementById(U)?.scrollIntoView({behavior:"instant",block:"start"})};B.useEffect(()=>{const U=()=>{const Y=window.location.hash;if(Y&&Y.length>1){const z=Y.slice(1);document.getElementById(z)?.scrollIntoView({behavior:"instant",block:"start"})}},te=()=>{const Y=window.location.hash;if(Y.startsWith("#element-")&&O.localNamespaceSearch){const z=Y.substring(9),Q=n.getAll(),j=O.allElements,I=Q.some(ee=>ee.id===z),le=j.some(ee=>ee.id===z);I&&!le&&O.resetFilters()}U()},pe=()=>{setTimeout(U,100)},ce=()=>{pe()};return window.addEventListener("hashchange",te),window.addEventListener("docs:layout-change",pe),window.addEventListener("docs:diagnostic-change",ce),o.current||(te(),o.current=!0),()=>{window.removeEventListener("hashchange",te),window.removeEventListener("docs:layout-change",pe),window.removeEventListener("docs:diagnostic-change",ce)}},[O.localNamespaceSearch,O.allElements,O.setLocalNamespaceSearch,n]),window!==void 0&&console.log(n.serialize());const V=k.isResizing||w.isResizing||b||S!==k.sidebarWidth||$!==w.chatWidth;return d.jsxs("div",{className:"docs-app",children:[d.jsx(V_,{sidebarWidth:k.sidebarWidth,sidebarRef:k.sidebarRef,isChatOpen:c,onToggleChat:T,leftOffset:c?w.chatWidth+40:0,isDarkMode:f,onToggleDarkMode:g,viewMode:v.viewMode,treeType:v.treeType,localNamespaceSearch:O.localNamespaceSearch,showSystem:O.showSystem,treeNodes:F.treeNodes,sections:H,totalComponents:J,onViewModeChange:v.handleViewModeChange,onTreeTypeChange:v.handleTreeTypeChange,onNamespaceSearchChange:O.setLocalNamespaceSearch,onShowSystemChange:O.handleShowSystemChange,onTreeNodeClick:F.handleTreeNodeClick,onToggleExpansion:F.handleToggleExpansion,onSectionClick:R}),d.jsx("div",{ref:k.resizerRef,className:`docs-sidebar-resizer ${k.isResizing?"docs-sidebar-resizer--active":""}`,style:{left:`${(c?w.chatWidth+40:0)+k.sidebarWidth+40}px`},onMouseDown:k.handleMouseDown}),d.jsx(O2,{introspector:n,sidebarWidth:S,chatWidth:$,isChatOpen:c,openStats:A,isStatsOpen:P,closeStats:X,chatPushesLeft:!0,suspendRendering:V,tasks:O.tasks,resources:O.resources,events:O.events,hooks:O.hooks,middlewares:O.middlewares,errors:n.getErrors(),asyncContexts:n.getAsyncContexts(),tags:O.tags}),c&&d.jsxs(d.Fragment,{children:[d.jsx("div",{ref:w.resizerRef,className:`docs-sidebar-resizer ${w.isResizing?"docs-sidebar-resizer--active":""}`,style:{left:`${w.chatWidth+40}px`},onMouseDown:w.handleMouseDown}),d.jsx(X2,{width:w.chatWidth,sidebarRef:w.sidebarRef,onToggleChat:T,isChatOpen:c,runnerAiMd:t,runnerDevMd:s,projectOverviewMd:i,graphqlSdl:r,availableElements:{tasks:O.tasks.map(U=>({id:U.id,name:U.id,title:U.meta?.title||void 0,description:U.meta?.description||void 0})),resources:O.resources.map(U=>({id:U.id,name:U.id,title:U.meta?.title||void 0,description:U.meta?.description||void 0})),events:O.events.map(U=>({id:U.id,name:U.id,title:U.meta?.title||void 0,description:U.meta?.description||void 0})),hooks:O.hooks.map(U=>({id:U.id,name:U.id,title:U.meta?.title||void 0,description:U.meta?.description||void 0})),middlewares:O.middlewares.map(U=>({id:U.id,name:U.id,title:U.meta?.title||void 0,description:U.meta?.description||void 0})),tags:O.tags.map(U=>({id:U.id,name:U.id,title:U.meta?.title||void 0,description:U.meta?.description||void 0}))}})]}),P&&d.jsx(W2,{overlay:!0,onClose:X})]})},U2=Symbol("runner-dev.elementKind");function qi(n){return new Map(n.map(e=>[e.id,e]))}function pt(n){return n?Array.isArray(n)?n.map(e=>typeof e=="string"?e:Y2(e)).filter(Boolean):typeof n=="string"?[n]:[]:[]}function Y2(n){return n?typeof n.id=="string"?n.id:String(n):""}function Rb(n){return n.getEvents().filter(t=>n.getHooksOfEvent(t.id).length===0).map(t=>({id:t.id}))}function Db(n){return n.getEvents().filter(t=>n.getEmittersOfEvent(t.id).length===0).filter(t=>t.id!=="globals.events.ready").filter(t=>t.id!=="*").map(t=>({id:t.id}))}function Ib(n){return n.getMiddlewares().filter(t=>{const s=(t.usedByTasks?.length??0)>0||(t.usedByResources?.length??0)>0,i=!!t.global?.enabled;return!s&&!i}).map(t=>({id:t.id}))}function Lb(n){const e=n.getResources(),t=new Map;for(const i of e)for(const r of i.overrides??[])t.has(r)||t.set(r,new Set),t.get(r).add(i.id);const s=[];for(const[i,r]of t)if(r.size>1)for(const o of r)s.push({targetId:i,by:o});return s.sort((i,r)=>i.targetId===r.targetId?i.by.localeCompare(r.by):i.targetId.localeCompare(r.targetId)),s}function q2(n){const e=[];n.getResources(),n.getTasks(),n.getHooks(),n.getEvents(),n.getMiddlewares();for(const t of Rb(n))Tf(t.id)||e.push({severity:"warning",code:"ORPHAN_EVENT",message:`Event has no hooks: ${t.id}`,nodeId:t.id,nodeKind:"EVENT"});for(const t of Db(n))Tf(t.id)||e.push({severity:"warning",code:"UNEMITTED_EVENT",message:`Event has no emitters: ${t.id}`,nodeId:t.id,nodeKind:"EVENT"});for(const t of Ib(n))Tf(t.id)||e.push({severity:"info",code:"UNUSED_MIDDLEWARE",message:`Middleware is defined but not used: ${t.id}`,nodeId:t.id,nodeKind:"MIDDLEWARE"});for(const t of Lb(n))e.push({severity:"error",code:"OVERRIDE_CONFLICT",message:`Override conflict on ${t.targetId} by ${t.by}`,nodeId:t.targetId});return e.sort((t,s)=>{if(t.code!==s.code)return t.code.localeCompare(s.code);const i=t.nodeId??"",r=s.nodeId??"";return i!==r?i.localeCompare(r):t.message.localeCompare(s.message)}),e}function Tf(n){const e=String(n).toLowerCase();return e.startsWith("globals.")||e==="*"}function G2(n,e){try{Object.defineProperty(n,U2,{value:e,enumerable:!1,configurable:!1,writable:!1})}catch{}return n}class Im{tasks=[];hooks=[];resources=[];events=[];taskMiddlewares=[];resourceMiddlewares=[];middlewares=[];tags=[];errors=[];asyncContexts=[];store=null;rootId=null;taskMap=new Map;hookMap=new Map;resourceMap=new Map;eventMap=new Map;middlewareMap=new Map;tagMap=new Map;errorMap=new Map;asyncContextMap=new Map;constructor(e){"store"in e||(this.store=null,this.initializeFromData(e.data))}initializeFromData(e){this.tasks=Array.isArray(e.tasks)?e.tasks:[],this.hooks=Array.isArray(e.hooks)?e.hooks:[],this.resources=Array.isArray(e.resources)?e.resources:[],this.events=Array.isArray(e.events)?e.events:[],this.taskMiddlewares=[],this.resourceMiddlewares=[],this.middlewares=Array.isArray(e.middlewares)?e.middlewares:[],this.errors=Array.isArray(e.errors)?e.errors:[],this.asyncContexts=Array.isArray(e.asyncContexts)?e.asyncContexts:[],this.rootId=e.rootId??null,this.taskMap=qi(this.tasks),this.hookMap=qi(this.hooks),this.resourceMap=qi(this.resources),this.eventMap=qi(this.events),this.middlewareMap=qi(this.middlewares),this.errorMap=qi(this.errors),this.asyncContextMap=qi(this.asyncContexts),this.populateErrorThrownBy(),this.tags=e.tags,this.tagMap=new Map;for(const t of this.tags)this.tagMap.set(t.id,t)}buildRunsOptions(e,t){const s={};typeof t?.afterTimestamp=="number"&&(s.afterTimestamp=t.afterTimestamp),typeof t?.last=="number"&&(s.last=t.last);const i=t?.filter??{};return s.nodeIds=[String(e)],Array.isArray(i.nodeKinds)&&(s.nodeKinds=i.nodeKinds),typeof i.ok=="boolean"&&(s.ok=i.ok),Array.isArray(i.parentIds)&&(s.parentIds=i.parentIds),Array.isArray(i.rootIds)&&(s.rootIds=i.rootIds),Array.isArray(i.correlationIds)&&(s.correlationIds=i.correlationIds),s}getRoot(){const e=this.store,s=(e?.root?.resource?.id?String(e.root.resource.id):null)??this.rootId??this.resources[0]?.id;return G2(this.resourceMap.get(String(s)),"RESOURCE")}getAll(){return[...this.tasks,...this.hooks,...this.resources,...this.events,...this.middlewares,...this.errors,...this.asyncContexts]}populateErrorThrownBy(){const e=new Set(this.errors.map(t=>t.id));this.errors.forEach(t=>{t.thrownBy=[]}),this.tasks.forEach(t=>{pt(t.dependsOn).forEach(i=>{if(e.has(i)){const r=this.errorMap.get(i);r&&!r.thrownBy.includes(t.id)&&r.thrownBy.push(t.id)}})}),this.hooks.forEach(t=>{pt(t.dependsOn).forEach(i=>{if(e.has(i)){const r=this.errorMap.get(i);r&&!r.thrownBy.includes(t.id)&&r.thrownBy.push(t.id)}})}),this.resources.forEach(t=>{pt(t.dependsOn).forEach(i=>{if(e.has(i)){const r=this.errorMap.get(i);r&&!r.thrownBy.includes(t.id)&&r.thrownBy.push(t.id)}})})}getEvents(){return this.events}getTasks(){return this.tasks}getHooks(){return this.hooks}getMiddlewares(){return this.middlewares}getTaskMiddlewares(){return this.taskMiddlewares}getResourceMiddlewares(){return this.resourceMiddlewares}getResources(){return this.resources}getEvent(e){return this.eventMap.get(e)??null}getTask(e){return this.taskMap.get(e)??null}getHook(e){return this.hookMap.get(e)??null}getMiddleware(e){return this.middlewareMap.get(e)??null}getResource(e){return this.resourceMap.get(e)??null}getDependencies(e){const t=pt(e.dependsOn),s=this.tasks.filter(f=>t.includes(f.id)),i=this.hooks.filter(f=>t.includes(f.id)),r=this.resources.filter(f=>t.includes(f.id)),o=this.errors.filter(f=>t.includes(f.id)),c=pt(e.emits),u=this.events.filter(f=>c.includes(f.id));return{tasks:s,hooks:i,resources:r,emitters:u,errors:o}}getEmittedEvents(e){const t=pt(e.emits);return this.events.filter(s=>t.includes(s.id))}getMiddlewaresByIds(e){const t=new Set(pt(e));return this.middlewares.filter(s=>t.has(s.id))}getResourcesByIds(e){const t=new Set(pt(e));return this.resources.filter(s=>t.has(s.id))}getTasksByIds(e){const t=new Set(pt(e));return this.tasks.filter(s=>t.has(s.id))}getHooksByIds(e){const t=new Set(pt(e));return this.hooks.filter(s=>t.has(s.id))}getEventsByIds(e){const t=new Set(pt(e));return this.events.filter(s=>t.has(s.id))}getTasksUsingResource(e){return[...this.tasks,...this.hooks].filter(t=>pt(t.dependsOn).includes(e))}getTasksUsingMiddleware(e){return this.tasks.filter(t=>pt(t.middleware).includes(e))}getTaskLikesUsingMiddleware(e){return this.getTasksUsingMiddleware(e)}getEmittersOfEvent(e){return[...this.tasks,...this.hooks,...this.resources].filter(t=>pt(t.emits).includes(e))}getHooksOfEvent(e){return this.hooks.filter(t=>t.events.includes(e))}getMiddlewareEmittedEvents(e){const t=this.getTasksUsingMiddleware(e),s=new Set;for(const i of t)for(const r of pt(i.emits))s.add(r);return this.events.filter(i=>s.has(i.id))}getMiddlewareUsagesForTask(e){const t=this.taskMap.get(e);return t?(t.middlewareDetailed??[]).map(i=>({id:i.id,config:i.config??null,node:this.middlewareMap.get(i.id)})).filter(i=>!!i.node):[]}getMiddlewareUsagesForResource(e){const t=this.resourceMap.get(e);return t?(t.middlewareDetailed??[]).map(i=>({id:i.id,config:i.config??null,node:this.middlewareMap.get(i.id)})).filter(i=>!!i.node):[]}getTasksUsingMiddlewareDetailed(e){const t=[];return(i=>{for(const r of i)if((r.middleware||[]).includes(e)){const o=(r.middlewareDetailed||[]).find(c=>c.id===e)?.config??null;t.push({id:r.id,config:o??null,node:r})}})(this.tasks),t}getResourcesUsingMiddlewareDetailed(e){const t=[];for(const s of this.resources)if((s.middleware||[]).includes(e)){const i=(s.middlewareDetailed||[]).find(r=>r.id===e)?.config??null;t.push({id:s.id,config:i??null,node:s})}return t}getEmittedEventsForResource(e){const t=this.getTasksUsingResource(e),s=new Set;for(const i of t)for(const r of pt(i.emits))s.add(r);return this.getEventsByIds(Array.from(s))}getTasksWithTag(e){return this.tasks.filter(t=>pt(t.tags).includes(e))}getHooksWithTag(e){return this.hooks.filter(t=>pt(t.tags).includes(e))}getResourcesWithTag(e){return this.resources.filter(t=>pt(t.tags).includes(e))}getMiddlewaresWithTag(e){return this.middlewares.filter(t=>pt(t.tags).includes(e))}getEventsWithTag(e){return this.events.filter(t=>pt(t.tags).includes(e))}getAllTags(){return this.tags}getTag(e){return this.tagMap.get(e)??null}getTagsByIds(e){return e.map(t=>this.getTag(t)).filter(t=>t!==null)}getOrphanEvents(){return Rb(this)}getUnemittedEvents(){return Db(this)}getUnusedMiddleware(){return Ib(this)}getOverrideConflicts(){return Lb(this)}getDiagnostics(){return q2(this)}buildRunOptionsForTask(e,t){return this.buildRunsOptions(e,t)}buildRunOptionsForHook(e,t){return this.buildRunsOptions(e,t)}getErrors(){return this.errors}getError(e){return this.errorMap.get(e)??null}getTasksUsingError(e){const t=this.errorMap.get(e);return t?.thrownBy?this.tasks.filter(s=>t.thrownBy.includes(s.id)):[]}getResourcesUsingError(e){const t=this.errorMap.get(e);return t?.thrownBy?this.resources.filter(s=>t.thrownBy.includes(s.id)):[]}getHooksUsingError(e){const t=this.errorMap.get(e);return t?.thrownBy?this.hooks.filter(s=>t.thrownBy.includes(s.id)):[]}getMiddlewaresUsingError(e){const t=this.errorMap.get(e);return t?.thrownBy?this.middlewares.filter(s=>t.thrownBy.includes(s.id)):[]}getAllUsingError(e){return[...this.getTasksUsingError(e),...this.getHooksUsingError(e),...this.getResourcesUsingError(e),...this.getMiddlewaresUsingError(e)]}getAsyncContexts(){return this.asyncContexts}getAsyncContext(e){return this.asyncContextMap.get(e)??null}getTasksUsingContext(e){const t=this.asyncContextMap.get(e);return t?.usedBy?this.tasks.filter(s=>t.usedBy.includes(s.id)):[]}getResourcesUsingContext(e){const t=this.asyncContextMap.get(e);return t?.usedBy?this.resources.filter(s=>t.usedBy.includes(s.id)):[]}getResourcesProvidingContext(e){const t=this.asyncContextMap.get(e);return t?.providedBy?this.resources.filter(s=>t.providedBy.includes(s.id)):[]}getHooksUsingContext(e){const t=this.asyncContextMap.get(e);return t?.usedBy?this.hooks.filter(s=>t.usedBy.includes(s.id)):[]}getMiddlewaresUsingContext(e){const t=this.asyncContextMap.get(e);return t?.usedBy?this.middlewares.filter(s=>t.usedBy.includes(s.id)):[]}getAllUsingContext(e){return[...this.getTasksUsingContext(e),...this.getHooksUsingContext(e),...this.getResourcesUsingContext(e),...this.getMiddlewaresUsingContext(e)]}getTunnelResources(){return this.resources.filter(e=>pt(e.tags).includes("runner-dev.tunnel"))}getTunneledTasks(e){const t=this.getResource(e);return t?.tunnelInfo?.tasks?this.getTasksByIds(t.tunnelInfo.tasks):[]}getTunneledEvents(e){const t=this.getResource(e);return t?.tunnelInfo?.events?this.getEventsByIds(t.tunnelInfo.events):[]}getTunnelForTask(e){return this.getTask(e)?this.getTunnelResources().find(s=>s.tunnelInfo?.tasks?.includes(e))??null:null}getTunnelForEvent(e){return this.getTunnelResources().find(t=>t.tunnelInfo?.events?.includes(e))??null}serialize(){return{tasks:this.tasks,hooks:this.hooks,resources:this.resources,events:this.events,middlewares:this.middlewares,tags:this.tags,errors:this.errors,asyncContexts:this.asyncContexts,diagnostics:this.getDiagnostics(),orphanEvents:this.getOrphanEvents(),unemittedEvents:this.getUnemittedEvents(),unusedMiddleware:this.getUnusedMiddleware(),overrideConflicts:this.getOverrideConflicts(),rootId:this.store?.root?.resource?.id!=null?String(this.store.root.resource.id):this.rootId}}static deserialize(e){return new Im({data:e})}}function b0(n){return Im.deserialize(n)}function H2(){const n=window.location.hash;if(!n)return null;const e=decodeURIComponent(n.slice(1));return e?e.startsWith("element-")?e.slice(8):e:null}function K2(){try{return localStorage.getItem(Fe.STORAGE_KEYS.SHOW_SYSTEM)==="1"}catch{return Fe.DEFAULTS.SHOW_SYSTEM}}function J2(n){try{localStorage.setItem(Fe.STORAGE_KEYS.SHOW_SYSTEM,n?"1":"0")}catch{}}function eR(n,e){const t=Fe.SYSTEM_TAG_ID;if(e===t)return!0;const s=[n.getTask(e),n.getHook(e),n.getResource(e),n.getMiddleware(e),n.getEvent(e)];for(const i of s)if(i&&Array.isArray(i.tags)&&i.tags.includes(t))return!0;return!1}function _0(n){const e=H2();if(!e)return;!K2()&&eR(n,e)&&J2(!0)}function $0(){const n=window.location.hash;if(!n)return;const e=decodeURIComponent(n.slice(1));requestAnimationFrame(()=>{setTimeout(()=>{const t=document.getElementById(e);t&&t.scrollIntoView({block:"start"})},0)})}async function tR(){const n=document.getElementById("root"),e=window.__DOCS_PROPS__;if(e&&e.introspectorData){const c=b0(e.introspectorData);_0(c),jy.hydrateRoot(n,se.createElement(S0,{introspector:c,namespacePrefix:e.namespacePrefix,runnerFrameworkMd:e.runnerFrameworkMd,runnerDevMd:e.runnerDevMd,projectOverviewMd:e.projectOverviewMd,graphqlSdl:e.graphqlSdl})),$0();return}const t=__API_URL__||"",s=new URL("/docs/data",t||window.location.origin),r=await(await fetch(s.toString())).json(),o=b0(r.introspectorData);_0(o),jy.createRoot(n).render(se.createElement(S0,{introspector:o,namespacePrefix:r.namespacePrefix,runnerFrameworkMd:r.runnerFrameworkMd,runnerDevMd:r.runnerDevMd,projectOverviewMd:r.projectOverviewMd,graphqlSdl:r.graphqlSdl})),$0()}tR();
|
|
378
|
+
//# sourceMappingURL=docs-cA7CIFv6.js.map
|