@bluelibs/runner-dev 4.4.13 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/cli/entryLoader.d.ts +6 -0
  2. package/dist/cli/entryLoader.js +167 -0
  3. package/dist/cli/entryLoader.js.map +1 -0
  4. package/dist/cli/harness.d.ts +9 -0
  5. package/dist/cli/harness.js +28 -0
  6. package/dist/cli/harness.js.map +1 -0
  7. package/dist/cli/query.js +35 -80
  8. package/dist/cli/query.js.map +1 -1
  9. package/dist/cli/schema.js +44 -0
  10. package/dist/cli/schema.js.map +1 -1
  11. package/dist/cli/shared.js +1 -1
  12. package/dist/cli/shared.js.map +1 -1
  13. package/dist/generated/resolvers-types.d.ts +207 -4
  14. package/dist/resources/coverage.resource.d.ts +11 -2
  15. package/dist/resources/coverage.resource.js +45 -6
  16. package/dist/resources/coverage.resource.js.map +1 -1
  17. package/dist/resources/models/Introspector.d.ts +31 -3
  18. package/dist/resources/models/Introspector.js +175 -0
  19. package/dist/resources/models/Introspector.js.map +1 -1
  20. package/dist/resources/models/initializeFromStore.js +26 -0
  21. package/dist/resources/models/initializeFromStore.js.map +1 -1
  22. package/dist/resources/models/initializeFromStore.utils.d.ts +1 -0
  23. package/dist/resources/models/initializeFromStore.utils.js +34 -3
  24. package/dist/resources/models/initializeFromStore.utils.js.map +1 -1
  25. package/dist/schema/index.js +10 -0
  26. package/dist/schema/index.js.map +1 -1
  27. package/dist/schema/model.d.ts +25 -0
  28. package/dist/schema/model.js.map +1 -1
  29. package/dist/schema/query.js +58 -0
  30. package/dist/schema/query.js.map +1 -1
  31. package/dist/schema/types/AsyncContextType.d.ts +4 -0
  32. package/dist/schema/types/AsyncContextType.js +57 -0
  33. package/dist/schema/types/AsyncContextType.js.map +1 -0
  34. package/dist/schema/types/ErrorType.d.ts +4 -0
  35. package/dist/schema/types/ErrorType.js +39 -0
  36. package/dist/schema/types/ErrorType.js.map +1 -0
  37. package/dist/schema/types/ResourceType.js +16 -0
  38. package/dist/schema/types/ResourceType.js.map +1 -1
  39. package/dist/schema/types/TunnelInfoType.d.ts +4 -0
  40. package/dist/schema/types/TunnelInfoType.js +72 -0
  41. package/dist/schema/types/TunnelInfoType.js.map +1 -0
  42. package/dist/schema/types/index.d.ts +3 -0
  43. package/dist/schema/types/index.js +9 -1
  44. package/dist/schema/types/index.js.map +1 -1
  45. package/dist/ui/.vite/manifest.json +2 -2
  46. package/dist/ui/assets/docs-BEJbZEmV.js +417 -0
  47. package/dist/ui/assets/docs-BEJbZEmV.js.map +1 -0
  48. package/dist/ui/assets/docs-SCJTS9VT.css +1 -0
  49. package/dist/version.d.ts +1 -1
  50. package/dist/version.js +1 -1
  51. package/dist/version.js.map +1 -1
  52. package/package.json +8 -3
  53. package/dist/ui/assets/docs-BFikHcCB.js +0 -412
  54. package/dist/ui/assets/docs-BFikHcCB.js.map +0 -1
  55. package/dist/ui/assets/docs-BsLWILje.css +0 -1
@@ -0,0 +1,417 @@
1
+ var Sv=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function _0(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Bh={exports:{}},Le={};/**
2
+ * @license React
3
+ * react.production.min.js
4
+ *
5
+ * Copyright (c) Facebook, Inc. and its affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var wv;function j_(){if(wv)return Le;wv=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 x={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,S={};function w(j,L,le){this.props=j,this.context=L,this.refs=S,this.updater=le||x}w.prototype.isReactComponent={},w.prototype.setState=function(j,L){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,L,"setState")},w.prototype.forceUpdate=function(j){this.updater.enqueueForceUpdate(this,j,"forceUpdate")};function $(){}$.prototype=w.prototype;function b(j,L,le){this.props=j,this.context=L,this.refs=S,this.updater=le||x}var P=b.prototype=new $;P.constructor=b,k(P,w.prototype),P.isPureReactComponent=!0;var C=Array.isArray,Q=Object.prototype.hasOwnProperty,N={current:null},A={key:!0,ref:!0,__self:!0,__source:!0};function X(j,L,le){var ee,ie={},he=null,me=null;if(L!=null)for(ee in L.ref!==void 0&&(me=L.ref),L.key!==void 0&&(he=""+L.key),L)Q.call(L,ee)&&!A.hasOwnProperty(ee)&&(ie[ee]=L[ee]);var je=arguments.length-2;if(je===1)ie.children=le;else if(1<je){for(var De=Array(je),Ue=0;Ue<je;Ue++)De[Ue]=arguments[Ue+2];ie.children=De}if(j&&j.defaultProps)for(ee in je=j.defaultProps,je)ie[ee]===void 0&&(ie[ee]=je[ee]);return{$$typeof:n,type:j,key:he,ref:me,props:ie,_owner:N.current}}function B(j,L){return{$$typeof:n,type:j.type,key:L,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 L={"=":"=0",":":"=2"};return"$"+j.replace(/[=:]/g,function(le){return L[le]})}var R=/\/+/g;function V(j,L){return typeof j=="object"&&j!==null&&j.key!=null?J(""+j.key):L.toString(36)}function Y(j,L,le,ee,ie){var he=typeof j;(he==="undefined"||he==="boolean")&&(j=null);var me=!1;if(j===null)me=!0;else switch(he){case"string":case"number":me=!0;break;case"object":switch(j.$$typeof){case n:case e:me=!0}}if(me)return me=j,ie=ie(me),j=ee===""?"."+V(me,0):ee,C(ie)?(le="",j!=null&&(le=j.replace(R,"$&/")+"/"),Y(ie,L,le,"",function(Ue){return Ue})):ie!=null&&(H(ie)&&(ie=B(ie,le+(!ie.key||me&&me.key===ie.key?"":(""+ie.key).replace(R,"$&/")+"/")+j)),L.push(ie)),1;if(me=0,ee=ee===""?".":ee+":",C(j))for(var je=0;je<j.length;je++){he=j[je];var De=ee+V(he,je);me+=Y(he,L,le,De,ie)}else if(De=O(j),typeof De=="function")for(j=De.call(j),je=0;!(he=j.next()).done;)he=he.value,De=ee+V(he,je++),me+=Y(he,L,le,De,ie);else if(he==="object")throw L=String(j),Error("Objects are not valid as a React child (found: "+(L==="[object Object]"?"object with keys {"+Object.keys(j).join(", ")+"}":L)+"). If you meant to render a collection of children, use an array instead.");return me}function te(j,L,le){if(j==null)return j;var ee=[],ie=0;return Y(j,ee,"","",function(he){return L.call(le,he,ie++)}),ee}function pe(j){if(j._status===-1){var L=j._result;L=L(),L.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=L)}if(j._status===1)return j._result.default;throw j._result}var ce={current:null},U={transition:null},z={ReactCurrentDispatcher:ce,ReactCurrentBatchConfig:U,ReactCurrentOwner:N};function T(){throw Error("act(...) is not supported in production builds of React.")}return Le.Children={map:te,forEach:function(j,L,le){te(j,function(){L.apply(this,arguments)},le)},count:function(j){var L=0;return te(j,function(){L++}),L},toArray:function(j){return te(j,function(L){return L})||[]},only:function(j){if(!H(j))throw Error("React.Children.only expected to receive a single React element child.");return j}},Le.Component=w,Le.Fragment=t,Le.Profiler=i,Le.PureComponent=b,Le.StrictMode=s,Le.Suspense=u,Le.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=z,Le.act=T,Le.cloneElement=function(j,L,le){if(j==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+j+".");var ee=k({},j.props),ie=j.key,he=j.ref,me=j._owner;if(L!=null){if(L.ref!==void 0&&(he=L.ref,me=N.current),L.key!==void 0&&(ie=""+L.key),j.type&&j.type.defaultProps)var je=j.type.defaultProps;for(De in L)Q.call(L,De)&&!A.hasOwnProperty(De)&&(ee[De]=L[De]===void 0&&je!==void 0?je[De]:L[De])}var De=arguments.length-2;if(De===1)ee.children=le;else if(1<De){je=Array(De);for(var Ue=0;Ue<De;Ue++)je[Ue]=arguments[Ue+2];ee.children=je}return{$$typeof:n,type:j.type,key:ie,ref:he,props:ee,_owner:me}},Le.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},Le.createElement=X,Le.createFactory=function(j){var L=X.bind(null,j);return L.type=j,L},Le.createRef=function(){return{current:null}},Le.forwardRef=function(j){return{$$typeof:c,render:j}},Le.isValidElement=H,Le.lazy=function(j){return{$$typeof:p,_payload:{_status:-1,_result:j},_init:pe}},Le.memo=function(j,L){return{$$typeof:f,type:j,compare:L===void 0?null:L}},Le.startTransition=function(j){var L=U.transition;U.transition={};try{j()}finally{U.transition=L}},Le.unstable_act=T,Le.useCallback=function(j,L){return ce.current.useCallback(j,L)},Le.useContext=function(j){return ce.current.useContext(j)},Le.useDebugValue=function(){},Le.useDeferredValue=function(j){return ce.current.useDeferredValue(j)},Le.useEffect=function(j,L){return ce.current.useEffect(j,L)},Le.useId=function(){return ce.current.useId()},Le.useImperativeHandle=function(j,L,le){return ce.current.useImperativeHandle(j,L,le)},Le.useInsertionEffect=function(j,L){return ce.current.useInsertionEffect(j,L)},Le.useLayoutEffect=function(j,L){return ce.current.useLayoutEffect(j,L)},Le.useMemo=function(j,L){return ce.current.useMemo(j,L)},Le.useReducer=function(j,L,le){return ce.current.useReducer(j,L,le)},Le.useRef=function(j){return ce.current.useRef(j)},Le.useState=function(j){return ce.current.useState(j)},Le.useSyncExternalStore=function(j,L,le){return ce.current.useSyncExternalStore(j,L,le)},Le.useTransition=function(){return ce.current.useTransition()},Le.version="18.3.1",Le}var bv;function To(){return bv||(bv=1,Bh.exports=j_()),Bh.exports}var F=To();const se=_0(F);var mc={},Fh={exports:{}},gn={},Xh={exports:{}},Vh={};/**
10
+ * @license React
11
+ * scheduler.production.min.js
12
+ *
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var _v;function T_(){return _v||(_v=1,(function(n){function e(U,z){var T=U.length;U.push(z);e:for(;0<T;){var j=T-1>>>1,L=U[j];if(0<i(L,z))U[j]=z,U[T]=L,T=j;else break e}}function t(U){return U.length===0?null:U[0]}function s(U){if(U.length===0)return null;var z=U[0],T=U.pop();if(T!==z){U[0]=T;e:for(var j=0,L=U.length,le=L>>>1;j<le;){var ee=2*(j+1)-1,ie=U[ee],he=ee+1,me=U[he];if(0>i(ie,T))he<L&&0>i(me,ie)?(U[j]=me,U[he]=T,j=he):(U[j]=ie,U[ee]=T,j=ee);else if(he<L&&0>i(me,T))U[j]=me,U[he]=T,j=he;else break e}}return z}function i(U,z){var T=U.sortIndex-z.sortIndex;return T!==0?T:U.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,x=!1,k=!1,S=!1,w=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 P(U){for(var z=t(f);z!==null;){if(z.callback===null)s(f);else if(z.startTime<=U)s(f),z.sortIndex=z.expirationTime,e(u,z);else break;z=t(f)}}function C(U){if(S=!1,P(U),!k)if(t(u)!==null)k=!0,pe(Q);else{var z=t(f);z!==null&&ce(C,z.startTime-U)}}function Q(U,z){k=!1,S&&(S=!1,$(X),X=-1),x=!0;var T=O;try{for(P(z),g=t(u);g!==null&&(!(g.expirationTime>z)||U&&!J());){var j=g.callback;if(typeof j=="function"){g.callback=null,O=g.priorityLevel;var L=j(g.expirationTime<=z);z=n.unstable_now(),typeof L=="function"?g.callback=L:g===t(u)&&s(u),P(z)}else s(u);g=t(u)}if(g!==null)var le=!0;else{var ee=t(f);ee!==null&&ce(C,ee.startTime-z),le=!1}return le}finally{g=null,O=T,x=!1}}var N=!1,A=null,X=-1,B=5,H=-1;function J(){return!(n.unstable_now()-H<B)}function R(){if(A!==null){var U=n.unstable_now();H=U;var z=!0;try{z=A(!0,U)}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 Y=new MessageChannel,te=Y.port2;Y.port1.onmessage=R,V=function(){te.postMessage(null)}}else V=function(){w(R,0)};function pe(U){A=U,N||(N=!0,V())}function ce(U,z){X=w(function(){U(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(U){U.callback=null},n.unstable_continueExecution=function(){k||x||(k=!0,pe(Q))},n.unstable_forceFrameRate=function(U){0>U||125<U?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):B=0<U?Math.floor(1e3/U):5},n.unstable_getCurrentPriorityLevel=function(){return O},n.unstable_getFirstCallbackNode=function(){return t(u)},n.unstable_next=function(U){switch(O){case 1:case 2:case 3:var z=3;break;default:z=O}var T=O;O=z;try{return U()}finally{O=T}},n.unstable_pauseExecution=function(){},n.unstable_requestPaint=function(){},n.unstable_runWithPriority=function(U,z){switch(U){case 1:case 2:case 3:case 4:case 5:break;default:U=3}var T=O;O=U;try{return z()}finally{O=T}},n.unstable_scheduleCallback=function(U,z,T){var j=n.unstable_now();switch(typeof T=="object"&&T!==null?(T=T.delay,T=typeof T=="number"&&0<T?j+T:j):T=j,U){case 1:var L=-1;break;case 2:L=250;break;case 5:L=1073741823;break;case 4:L=1e4;break;default:L=5e3}return L=T+L,U={id:p++,callback:z,priorityLevel:U,startTime:T,expirationTime:L,sortIndex:-1},T>j?(U.sortIndex=T,e(f,U),t(u)===null&&U===t(f)&&(S?($(X),X=-1):S=!0,ce(C,T-j))):(U.sortIndex=L,e(u,U),k||x||(k=!0,pe(Q))),U},n.unstable_shouldYield=J,n.unstable_wrapCallback=function(U){var z=O;return function(){var T=O;O=z;try{return U.apply(this,arguments)}finally{O=T}}}})(Vh)),Vh}var $v;function N_(){return $v||($v=1,Xh.exports=T_()),Xh.exports}/**
18
+ * @license React
19
+ * react-dom.production.min.js
20
+ *
21
+ * Copyright (c) Facebook, Inc. and its affiliates.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */var Cv;function E_(){if(Cv)return gn;Cv=1;var n=To(),e=N_();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 x(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 k(l,a,h,m){if(a===null||typeof a>"u"||x(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 S(l,a,h,m,v,y,_){this.acceptsBooleans=a===2||a===3||a===4,this.attributeName=m,this.attributeNamespace=v,this.mustUseProperty=h,this.propertyName=l,this.type=a,this.sanitizeURL=y,this.removeEmptyString=_}var w={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(l){w[l]=new S(l,0,!1,l,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(l){var a=l[0];w[a]=new S(a,1,!1,l[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(l){w[l]=new S(l,2,!1,l.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(l){w[l]=new S(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){w[l]=new S(l,3,!1,l.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(l){w[l]=new S(l,3,!0,l,null,!1,!1)}),["capture","download"].forEach(function(l){w[l]=new S(l,4,!1,l,null,!1,!1)}),["cols","rows","size","span"].forEach(function(l){w[l]=new S(l,6,!1,l,null,!1,!1)}),["rowSpan","start"].forEach(function(l){w[l]=new S(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);w[a]=new S(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);w[a]=new S(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);w[a]=new S(a,1,!1,l,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(l){w[l]=new S(l,1,!1,l.toLowerCase(),null,!1,!1)}),w.xlinkHref=new S("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(l){w[l]=new S(l,1,!1,l.toLowerCase(),null,!0,!0)});function P(l,a,h,m){var v=w.hasOwnProperty(a)?w[a]:null;(v!==null?v.type!==0:m||!(2<a.length)||a[0]!=="o"&&a[0]!=="O"||a[1]!=="n"&&a[1]!=="N")&&(k(a,h,v,m)&&(h=null),m||v===null?O(a)&&(h===null?l.removeAttribute(a):l.setAttribute(a,""+h)):v.mustUseProperty?l[v.propertyName]=h===null?v.type===3?!1:"":h:(a=v.attributeName,m=v.attributeNamespace,h===null?l.removeAttribute(a):(v=v.type,h=v===3||v===4&&h===!0?"":""+h,m?l.setAttributeNS(m,a,h):l.setAttribute(a,h))))}var C=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Q=Symbol.for("react.element"),N=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),X=Symbol.for("react.strict_mode"),B=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"),Y=Symbol.for("react.suspense_list"),te=Symbol.for("react.memo"),pe=Symbol.for("react.lazy"),ce=Symbol.for("react.offscreen"),U=Symbol.iterator;function z(l){return l===null||typeof l!="object"?null:(l=U&&l[U]||l["@@iterator"],typeof l=="function"?l:null)}var T=Object.assign,j;function L(l){if(j===void 0)try{throw Error()}catch(h){var a=h.stack.trim().match(/\n( *(at )?)/);j=a&&a[1]||""}return`
26
+ `+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 v=K.stack.split(`
27
+ `),y=m.stack.split(`
28
+ `),_=v.length-1,E=y.length-1;1<=_&&0<=E&&v[_]!==y[E];)E--;for(;1<=_&&0<=E;_--,E--)if(v[_]!==y[E]){if(_!==1||E!==1)do if(_--,E--,0>E||v[_]!==y[E]){var D=`
29
+ `+v[_].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:"")?L(l):""}function ie(l){switch(l.tag){case 5:return L(l.type);case 16:return L("Lazy");case 13:return L("Suspense");case 19:return L("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 he(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 B:return"Profiler";case X:return"StrictMode";case V:return"Suspense";case Y: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:he(l.type)||"Memo";case pe:a=l._payload,l=l._init;try{return he(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 he(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 Ue(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 v=h.get,y=h.set;return Object.defineProperty(l,a,{configurable:!0,get:function(){return v.call(this)},set:function(_){m=""+_,y.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=Ue(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 T({},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 mr(l,a){a=a.checked,a!=null&&P(l,"checked",a,!1)}function vl(l,a){mr(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")?gr(l,a.type,h):a.hasOwnProperty("defaultValue")&&gr(l,a.type,je(a.defaultValue)),a.checked==null&&a.defaultChecked!=null&&(l.defaultChecked=!!a.defaultChecked)}function ed(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 gr(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 W(l,a,h,m){if(l=l.options,a){a={};for(var v=0;v<h.length;v++)a["$"+h[v]]=!0;for(h=0;h<l.length;h++)v=a.hasOwnProperty("$"+l[h].value),l[h].selected!==v&&(l[h].selected=v),v&&m&&(l[h].defaultSelected=!0)}else{for(h=""+je(h),a=null,v=0;v<l.length;v++){if(l[v].value===h){l[v].selected=!0,m&&(l[v].defaultSelected=!0);return}a!==null||l[v].disabled||(a=l[v])}a!==null&&(a.selected=!0)}}function ne(l,a){if(a.dangerouslySetInnerHTML!=null)throw Error(t(91));return T({},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 fe(l){var a=l.textContent;a===l._wrapperState.initialValue&&a!==""&&a!==null&&(l.value=a)}function Te(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"?Te(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,v){MSApp.execUnsafeLocalFunction(function(){return l(a,h,m,v)})}: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 ls(l,a){if(a){var h=l.firstChild;if(h&&h===l.lastChild&&h.nodeType===3){h.nodeValue=a;return}}l.textContent=a}var un={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},td=["Webkit","ms","Moz","O"];Object.keys(un).forEach(function(l){td.forEach(function(a){a=a+l.charAt(0).toUpperCase()+l.substring(1),un[a]=un[l]})});function Or(l,a,h){return a==null||typeof a=="boolean"||a===""?"":h||typeof a!="number"||a===0||un.hasOwnProperty(l)&&un[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,v=Or(h,a[h],m);h==="float"&&(h="cssFloat"),m?l.setProperty(h,v):l[h]=v}}var nd=T({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(nd[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 yr=null;function sd(l){return l=l.target||l.srcElement||window,l.correspondingUseElement&&(l=l.correspondingUseElement),l.nodeType===3?l.parentNode:l}var id=null,kr=null,Sr=null;function Im(l){if(l=zl(l)){if(typeof id!="function")throw Error(t(280));var a=l.stateNode;a&&(a=ja(a),id(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,Im(l),a)for(l=0;l<a.length;l++)Im(a[l])}}function Bm(l,a){return l(a)}function Fm(){}var rd=!1;function Xm(l,a,h){if(rd)return l(a,h);rd=!0;try{return Bm(l,a,h)}finally{rd=!1,(kr!==null||Sr!==null)&&(Fm(),zm())}}function yl(l,a){var h=l.stateNode;if(h===null)return null;var m=ja(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 ld=!1;if(c)try{var kl={};Object.defineProperty(kl,"passive",{get:function(){ld=!0}}),window.addEventListener("test",kl,kl),window.removeEventListener("test",kl,kl)}catch{ld=!1}function Rb(l,a,h,m,v,y,_,E,D){var K=Array.prototype.slice.call(arguments,3);try{a.apply(h,K)}catch(ae){this.onError(ae)}}var Sl=!1,aa=null,ca=!1,od=null,Db={onError:function(l){Sl=!0,aa=l}};function Lb(l,a,h,m,v,y,_,E,D){Sl=!1,aa=null,Rb.apply(Db,arguments)}function Ib(l,a,h,m,v,y,_,E,D){if(Lb.apply(this,arguments),Sl){if(Sl){var K=aa;Sl=!1,aa=null}else throw Error(t(198));ca||(ca=!0,od=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 qm(l){if(Ai(l)!==l)throw Error(t(188))}function Zb(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 v=h.return;if(v===null)break;var y=v.alternate;if(y===null){if(m=v.return,m!==null){h=m;continue}break}if(v.child===y.child){for(y=v.child;y;){if(y===h)return qm(v),l;if(y===m)return qm(v),a;y=y.sibling}throw Error(t(188))}if(h.return!==m.return)h=v,m=y;else{for(var _=!1,E=v.child;E;){if(E===h){_=!0,h=v,m=y;break}if(E===m){_=!0,m=v,h=y;break}E=E.sibling}if(!_){for(E=y.child;E;){if(E===h){_=!0,h=y,m=v;break}if(E===m){_=!0,m=y,h=v;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 Ym(l){return l=Zb(l),l!==null?Um(l):null}function Um(l){if(l.tag===5||l.tag===6)return l;for(l=l.child;l!==null;){var a=Um(l);if(a!==null)return a;l=l.sibling}return null}var Wm=e.unstable_scheduleCallback,Gm=e.unstable_cancelCallback,zb=e.unstable_shouldYield,Bb=e.unstable_requestPaint,Ot=e.unstable_now,Fb=e.unstable_getCurrentPriorityLevel,ad=e.unstable_ImmediatePriority,Hm=e.unstable_UserBlockingPriority,ua=e.unstable_NormalPriority,Xb=e.unstable_LowPriority,Km=e.unstable_IdlePriority,da=null,os=null;function Vb(l){if(os&&typeof os.onCommitFiberRoot=="function")try{os.onCommitFiberRoot(da,l,void 0,(l.current.flags&128)===128)}catch{}}var qn=Math.clz32?Math.clz32:Ub,qb=Math.log,Yb=Math.LN2;function Ub(l){return l>>>=0,l===0?32:31-(qb(l)/Yb|0)|0}var ha=64,fa=4194304;function wl(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 pa(l,a){var h=l.pendingLanes;if(h===0)return 0;var m=0,v=l.suspendedLanes,y=l.pingedLanes,_=h&268435455;if(_!==0){var E=_&~v;E!==0?m=wl(E):(y&=_,y!==0&&(m=wl(y)))}else _=h&~v,_!==0?m=wl(_):y!==0&&(m=wl(y));if(m===0)return 0;if(a!==0&&a!==m&&(a&v)===0&&(v=m&-m,y=a&-a,v>=y||v===16&&(y&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-qn(a),v=1<<h,m|=l[h],a&=~v;return m}function Wb(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 Gb(l,a){for(var h=l.suspendedLanes,m=l.pingedLanes,v=l.expirationTimes,y=l.pendingLanes;0<y;){var _=31-qn(y),E=1<<_,D=v[_];D===-1?((E&h)===0||(E&m)!==0)&&(v[_]=Wb(E,a)):D<=a&&(l.expiredLanes|=E),y&=~E}}function cd(l){return l=l.pendingLanes&-1073741825,l!==0?l:l&1073741824?1073741824:0}function Jm(){var l=ha;return ha<<=1,(ha&4194240)===0&&(ha=64),l}function ud(l){for(var a=[],h=0;31>h;h++)a.push(l);return a}function bl(l,a,h){l.pendingLanes|=a,a!==536870912&&(l.suspendedLanes=0,l.pingedLanes=0),l=l.eventTimes,a=31-qn(a),l[a]=h}function Hb(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 v=31-qn(h),y=1<<v;a[v]=0,m[v]=-1,l[v]=-1,h&=~y}}function dd(l,a){var h=l.entangledLanes|=a;for(l=l.entanglements;h;){var m=31-qn(h),v=1<<m;v&a|l[m]&a&&(l[m]|=a),h&=~v}}var Je=0;function eg(l){return l&=-l,1<l?4<l?(l&268435455)!==0?16:536870912:4:1}var tg,hd,ng,sg,ig,fd=!1,ma=[],Ks=null,Js=null,ei=null,_l=new Map,$l=new Map,ti=[],Kb="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":$l.delete(a.pointerId)}}function Cl(l,a,h,m,v,y){return l===null||l.nativeEvent!==y?(l={blockedOn:a,domEventName:h,eventSystemFlags:m,nativeEvent:y,targetContainers:[v]},a!==null&&(a=zl(a),a!==null&&hd(a)),l):(l.eventSystemFlags|=m,a=l.targetContainers,v!==null&&a.indexOf(v)===-1&&a.push(v),l)}function Jb(l,a,h,m,v){switch(a){case"focusin":return Ks=Cl(Ks,l,a,h,m,v),!0;case"dragenter":return Js=Cl(Js,l,a,h,m,v),!0;case"mouseover":return ei=Cl(ei,l,a,h,m,v),!0;case"pointerover":var y=v.pointerId;return _l.set(y,Cl(_l.get(y)||null,l,a,h,m,v)),!0;case"gotpointercapture":return y=v.pointerId,$l.set(y,Cl($l.get(y)||null,l,a,h,m,v)),!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 ga(l){if(l.blockedOn!==null)return!1;for(var a=l.targetContainers;0<a.length;){var h=md(l.domEventName,l.eventSystemFlags,a[0],l.nativeEvent);if(h===null){h=l.nativeEvent;var m=new h.constructor(h.type,h);yr=m,h.target.dispatchEvent(m),yr=null}else return a=zl(h),a!==null&&hd(a),l.blockedOn=h,!1;a.shift()}return!0}function og(l,a,h){ga(l)&&h.delete(a)}function e1(){fd=!1,Ks!==null&&ga(Ks)&&(Ks=null),Js!==null&&ga(Js)&&(Js=null),ei!==null&&ga(ei)&&(ei=null),_l.forEach(og),$l.forEach(og)}function Pl(l,a){l.blockedOn===a&&(l.blockedOn=null,fd||(fd=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,e1)))}function Ql(l){function a(v){return Pl(v,l)}if(0<ma.length){Pl(ma[0],l);for(var h=1;h<ma.length;h++){var m=ma[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),$l.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 wr=C.ReactCurrentBatchConfig,Oa=!0;function t1(l,a,h,m){var v=Je,y=wr.transition;wr.transition=null;try{Je=1,pd(l,a,h,m)}finally{Je=v,wr.transition=y}}function n1(l,a,h,m){var v=Je,y=wr.transition;wr.transition=null;try{Je=4,pd(l,a,h,m)}finally{Je=v,wr.transition=y}}function pd(l,a,h,m){if(Oa){var v=md(l,a,h,m);if(v===null)Nd(l,a,m,va,h),rg(l,m);else if(Jb(v,l,a,h,m))m.stopPropagation();else if(rg(l,m),a&4&&-1<Kb.indexOf(l)){for(;v!==null;){var y=zl(v);if(y!==null&&tg(y),y=md(l,a,h,m),y===null&&Nd(l,a,m,va,h),y===v)break;v=y}v!==null&&m.stopPropagation()}else Nd(l,a,m,null,h)}}var va=null;function md(l,a,h,m){if(va=null,l=sd(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 va=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(Fb()){case ad:return 1;case Hm:return 4;case ua:case Xb:return 16;case Km:return 536870912;default:return 16}default:return 16}}var ni=null,gd=null,xa=null;function cg(){if(xa)return xa;var l,a=gd,h=a.length,m,v="value"in ni?ni.value:ni.textContent,y=v.length;for(l=0;l<h&&a[l]===v[l];l++);var _=h-l;for(m=1;m<=_&&a[h-m]===v[y-m];m++);return xa=v.slice(l,1<m?1-m:void 0)}function ya(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 ka(){return!0}function ug(){return!1}function $n(l){function a(h,m,v,y,_){this._reactName=h,this._targetInst=v,this.type=m,this.nativeEvent=y,this.target=_,this.currentTarget=null;for(var E in l)l.hasOwnProperty(E)&&(h=l[E],this[E]=h?h(y):y[E]);return this.isDefaultPrevented=(y.defaultPrevented!=null?y.defaultPrevented:y.returnValue===!1)?ka:ug,this.isPropagationStopped=ug,this}return T(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=ka)},stopPropagation:function(){var h=this.nativeEvent;h&&(h.stopPropagation?h.stopPropagation():typeof h.cancelBubble!="unknown"&&(h.cancelBubble=!0),this.isPropagationStopped=ka)},persist:function(){},isPersistent:ka}),a}var br={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(l){return l.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Od=$n(br),jl=T({},br,{view:0,detail:0}),s1=$n(jl),vd,xd,Tl,Sa=T({},jl,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:kd,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!==Tl&&(Tl&&l.type==="mousemove"?(vd=l.screenX-Tl.screenX,xd=l.screenY-Tl.screenY):xd=vd=0,Tl=l),vd)},movementY:function(l){return"movementY"in l?l.movementY:xd}}),dg=$n(Sa),i1=T({},Sa,{dataTransfer:0}),r1=$n(i1),l1=T({},jl,{relatedTarget:0}),yd=$n(l1),o1=T({},br,{animationName:0,elapsedTime:0,pseudoElement:0}),a1=$n(o1),c1=T({},br,{clipboardData:function(l){return"clipboardData"in l?l.clipboardData:window.clipboardData}}),u1=$n(c1),d1=T({},br,{data:0}),hg=$n(d1),h1={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},f1={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"},p1={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function m1(l){var a=this.nativeEvent;return a.getModifierState?a.getModifierState(l):(l=p1[l])?!!a[l]:!1}function kd(){return m1}var g1=T({},jl,{key:function(l){if(l.key){var a=h1[l.key]||l.key;if(a!=="Unidentified")return a}return l.type==="keypress"?(l=ya(l),l===13?"Enter":String.fromCharCode(l)):l.type==="keydown"||l.type==="keyup"?f1[l.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:kd,charCode:function(l){return l.type==="keypress"?ya(l):0},keyCode:function(l){return l.type==="keydown"||l.type==="keyup"?l.keyCode:0},which:function(l){return l.type==="keypress"?ya(l):l.type==="keydown"||l.type==="keyup"?l.keyCode:0}}),O1=$n(g1),v1=T({},Sa,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),fg=$n(v1),x1=T({},jl,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:kd}),y1=$n(x1),k1=T({},br,{propertyName:0,elapsedTime:0,pseudoElement:0}),S1=$n(k1),w1=T({},Sa,{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}),b1=$n(w1),_1=[9,13,27,32],Sd=c&&"CompositionEvent"in window,Nl=null;c&&"documentMode"in document&&(Nl=document.documentMode);var $1=c&&"TextEvent"in window&&!Nl,pg=c&&(!Sd||Nl&&8<Nl&&11>=Nl),mg=" ",gg=!1;function Og(l,a){switch(l){case"keyup":return _1.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function vg(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var _r=!1;function C1(l,a){switch(l){case"compositionend":return vg(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 P1(l,a){if(_r)return l==="compositionend"||!Sd&&Og(l,a)?(l=cg(),xa=gd=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 Q1={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 xg(l){var a=l&&l.nodeName&&l.nodeName.toLowerCase();return a==="input"?!!Q1[l.type]:a==="textarea"}function yg(l,a,h,m){Zm(m),a=Ca(a,"onChange"),0<a.length&&(h=new Od("onChange","change",null,h,m),l.push({event:h,listeners:a}))}var El=null,Al=null;function j1(l){Lg(l,0)}function wa(l){var a=jr(l);if(Xe(a))return l}function T1(l,a){if(l==="change")return a}var kg=!1;if(c){var wd;if(c){var bd="oninput"in document;if(!bd){var Sg=document.createElement("div");Sg.setAttribute("oninput","return;"),bd=typeof Sg.oninput=="function"}wd=bd}else wd=!1;kg=wd&&(!document.documentMode||9<document.documentMode)}function wg(){El&&(El.detachEvent("onpropertychange",bg),Al=El=null)}function bg(l){if(l.propertyName==="value"&&wa(Al)){var a=[];yg(a,Al,l,sd(l)),Xm(j1,a)}}function N1(l,a,h){l==="focusin"?(wg(),El=a,Al=h,El.attachEvent("onpropertychange",bg)):l==="focusout"&&wg()}function E1(l){if(l==="selectionchange"||l==="keyup"||l==="keydown")return wa(Al)}function A1(l,a){if(l==="click")return wa(a)}function M1(l,a){if(l==="input"||l==="change")return wa(a)}function R1(l,a){return l===a&&(l!==0||1/l===1/a)||l!==l&&a!==a}var Yn=typeof Object.is=="function"?Object.is:R1;function Ml(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 v=h[m];if(!u.call(a,v)||!Yn(l[v],a[v]))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 Pg(){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 _d(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 D1(l){var a=Pg(),h=l.focusedElem,m=l.selectionRange;if(a!==h&&h&&h.ownerDocument&&Cg(h.ownerDocument.documentElement,h)){if(m!==null&&_d(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 v=h.textContent.length,y=Math.min(m.start,v);m=m.end===void 0?y:Math.min(m.end,v),!l.extend&&y>m&&(v=m,m=y,y=v),v=$g(h,y);var _=$g(h,m);v&&_&&(l.rangeCount!==1||l.anchorNode!==v.node||l.anchorOffset!==v.offset||l.focusNode!==_.node||l.focusOffset!==_.offset)&&(a=a.createRange(),a.setStart(v.node,v.offset),l.removeAllRanges(),y>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 L1=c&&"documentMode"in document&&11>=document.documentMode,$r=null,$d=null,Rl=null,Cd=!1;function Qg(l,a,h){var m=h.window===h?h.document:h.nodeType===9?h:h.ownerDocument;Cd||$r==null||$r!==gt(m)||(m=$r,"selectionStart"in m&&_d(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}),Rl&&Ml(Rl,m)||(Rl=m,m=Ca($d,"onSelect"),0<m.length&&(a=new Od("onSelect","select",null,a,h),l.push({event:a,listeners:m}),a.target=$r)))}function ba(l,a){var h={};return h[l.toLowerCase()]=a.toLowerCase(),h["Webkit"+l]="webkit"+a,h["Moz"+l]="moz"+a,h}var Cr={animationend:ba("Animation","AnimationEnd"),animationiteration:ba("Animation","AnimationIteration"),animationstart:ba("Animation","AnimationStart"),transitionend:ba("Transition","TransitionEnd")},Pd={},jg={};c&&(jg=document.createElement("div").style,"AnimationEvent"in window||(delete Cr.animationend.animation,delete Cr.animationiteration.animation,delete Cr.animationstart.animation),"TransitionEvent"in window||delete Cr.transitionend.transition);function _a(l){if(Pd[l])return Pd[l];if(!Cr[l])return l;var a=Cr[l],h;for(h in a)if(a.hasOwnProperty(h)&&h in jg)return Pd[l]=a[h];return l}var Tg=_a("animationend"),Ng=_a("animationiteration"),Eg=_a("animationstart"),Ag=_a("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 Qd=0;Qd<Rg.length;Qd++){var jd=Rg[Qd],I1=jd.toLowerCase(),Z1=jd[0].toUpperCase()+jd.slice(1);si(I1,"on"+Z1)}si(Tg,"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 Dl="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(" "),z1=new Set("cancel close invalid load scroll toggle".split(" ").concat(Dl));function Dg(l,a,h){var m=l.type||"unknown-event";l.currentTarget=h,Ib(m,a,void 0,l),l.currentTarget=null}function Lg(l,a){a=(a&4)!==0;for(var h=0;h<l.length;h++){var m=l[h],v=m.event;m=m.listeners;e:{var y=void 0;if(a)for(var _=m.length-1;0<=_;_--){var E=m[_],D=E.instance,K=E.currentTarget;if(E=E.listener,D!==y&&v.isPropagationStopped())break e;Dg(v,E,K),y=D}else for(_=0;_<m.length;_++){if(E=m[_],D=E.instance,K=E.currentTarget,E=E.listener,D!==y&&v.isPropagationStopped())break e;Dg(v,E,K),y=D}}}if(ca)throw l=od,ca=!1,od=null,l}function it(l,a){var h=a[Ld];h===void 0&&(h=a[Ld]=new Set);var m=l+"__bubble";h.has(m)||(Ig(a,l,2,!1),h.add(m))}function Td(l,a,h){var m=0;a&&(m|=4),Ig(h,l,m,a)}var $a="_reactListening"+Math.random().toString(36).slice(2);function Ll(l){if(!l[$a]){l[$a]=!0,s.forEach(function(h){h!=="selectionchange"&&(z1.has(h)||Td(h,!1,l),Td(h,!0,l))});var a=l.nodeType===9?l:l.ownerDocument;a===null||a[$a]||(a[$a]=!0,Td("selectionchange",!1,a))}}function Ig(l,a,h,m){switch(ag(a)){case 1:var v=t1;break;case 4:v=n1;break;default:v=pd}h=v.bind(null,a,h,l),v=void 0,!ld||a!=="touchstart"&&a!=="touchmove"&&a!=="wheel"||(v=!0),m?v!==void 0?l.addEventListener(a,h,{capture:!0,passive:v}):l.addEventListener(a,h,!0):v!==void 0?l.addEventListener(a,h,{passive:v}):l.addEventListener(a,h,!1)}function Nd(l,a,h,m,v){var y=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===v||E.nodeType===8&&E.parentNode===v)break;if(_===4)for(_=m.return;_!==null;){var D=_.tag;if((D===3||D===4)&&(D=_.stateNode.containerInfo,D===v||D.nodeType===8&&D.parentNode===v))return;_=_.return}for(;E!==null;){if(_=Mi(E),_===null)return;if(D=_.tag,D===5||D===6){m=y=_;continue e}E=E.parentNode}}m=m.return}Xm(function(){var K=y,ae=sd(h),ue=[];e:{var oe=Mg.get(l);if(oe!==void 0){var ke=Od,_e=l;switch(l){case"keypress":if(ya(h)===0)break e;case"keydown":case"keyup":ke=O1;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=r1;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ke=y1;break;case Tg:case Ng:case Eg:ke=a1;break;case Ag:ke=S1;break;case"scroll":ke=s1;break;case"wheel":ke=b1;break;case"copy":case"cut":case"paste":ke=u1;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ke=fg}var $e=(a&4)!==0,vt=!$e&&l==="scroll",q=$e?oe!==null?oe+"Capture":null:oe;$e=[];for(var I=K,G;I!==null;){G=I;var de=G.stateNode;if(G.tag===5&&de!==null&&(G=de,q!==null&&(de=yl(I,q),de!=null&&$e.push(Il(I,de,G)))),vt)break;I=I.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!==yr&&(_e=h.relatedTarget||h.fromElement)&&(Mi(_e)||_e[Ts]))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&&(vt=Ai(_e),_e!==vt||_e.tag!==5&&_e.tag!==6)&&(_e=null)):(ke=null,_e=K),ke!==_e)){if($e=dg,de="onMouseLeave",q="onMouseEnter",I="mouse",(l==="pointerout"||l==="pointerover")&&($e=fg,de="onPointerLeave",q="onPointerEnter",I="pointer"),vt=ke==null?oe:jr(ke),G=_e==null?oe:jr(_e),oe=new $e(de,I+"leave",ke,h,ae),oe.target=vt,oe.relatedTarget=G,de=null,Mi(ae)===K&&($e=new $e(q,I+"enter",_e,h,ae),$e.target=G,$e.relatedTarget=vt,de=$e),vt=de,ke&&_e)t:{for($e=ke,q=_e,I=0,G=$e;G;G=Pr(G))I++;for(G=0,de=q;de;de=Pr(de))G++;for(;0<I-G;)$e=Pr($e),I--;for(;0<G-I;)q=Pr(q),G--;for(;I--;){if($e===q||q!==null&&$e===q.alternate)break t;$e=Pr($e),q=Pr(q)}$e=null}else $e=null;ke!==null&&Zg(ue,oe,ke,$e,!1),_e!==null&&vt!==null&&Zg(ue,vt,_e,$e,!0)}}e:{if(oe=K?jr(K):window,ke=oe.nodeName&&oe.nodeName.toLowerCase(),ke==="select"||ke==="input"&&oe.type==="file")var Pe=T1;else if(xg(oe))if(kg)Pe=M1;else{Pe=E1;var Ne=N1}else(ke=oe.nodeName)&&ke.toLowerCase()==="input"&&(oe.type==="checkbox"||oe.type==="radio")&&(Pe=A1);if(Pe&&(Pe=Pe(l,K))){yg(ue,Pe,h,ae);break e}Ne&&Ne(l,oe,K),l==="focusout"&&(Ne=oe._wrapperState)&&Ne.controlled&&oe.type==="number"&&gr(oe,"number",oe.value)}switch(Ne=K?jr(K):window,l){case"focusin":(xg(Ne)||Ne.contentEditable==="true")&&($r=Ne,$d=K,Rl=null);break;case"focusout":Rl=$d=$r=null;break;case"mousedown":Cd=!0;break;case"contextmenu":case"mouseup":case"dragend":Cd=!1,Qg(ue,h,ae);break;case"selectionchange":if(L1)break;case"keydown":case"keyup":Qg(ue,h,ae)}var Ee;if(Sd)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,gd="value"in ni?ni.value:ni.textContent,_r=!0)),Ne=Ca(K,Ae),0<Ne.length&&(Ae=new hg(Ae,l,null,h,ae),ue.push({event:Ae,listeners:Ne}),Ee?Ae.data=Ee:(Ee=vg(h),Ee!==null&&(Ae.data=Ee)))),(Ee=$1?C1(l,h):P1(l,h))&&(K=Ca(K,"onBeforeInput"),0<K.length&&(ae=new hg("onBeforeInput","beforeinput",null,h,ae),ue.push({event:ae,listeners:K}),ae.data=Ee))}Lg(ue,a)})}function Il(l,a,h){return{instance:l,listener:a,currentTarget:h}}function Ca(l,a){for(var h=a+"Capture",m=[];l!==null;){var v=l,y=v.stateNode;v.tag===5&&y!==null&&(v=y,y=yl(l,h),y!=null&&m.unshift(Il(l,y,v)),y=yl(l,a),y!=null&&m.push(Il(l,y,v))),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,v){for(var y=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,v?(D=yl(h,y),D!=null&&_.unshift(Il(h,D,E))):v||(D=yl(h,y),D!=null&&_.push(Il(h,D,E)))),h=h.return}_.length!==0&&l.push({event:a,listeners:_})}var B1=/\r\n?/g,F1=/\u0000|\uFFFD/g;function zg(l){return(typeof l=="string"?l:""+l).replace(B1,`
30
+ `).replace(F1,"")}function Pa(l,a,h){if(a=zg(a),zg(l)!==a&&h)throw Error(t(425))}function Qa(){}var Ed=null,Ad=null;function Md(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 Rd=typeof setTimeout=="function"?setTimeout:void 0,X1=typeof clearTimeout=="function"?clearTimeout:void 0,Bg=typeof Promise=="function"?Promise:void 0,V1=typeof queueMicrotask=="function"?queueMicrotask:typeof Bg<"u"?function(l){return Bg.resolve(null).then(l).catch(q1)}:Rd;function q1(l){setTimeout(function(){throw l})}function Dd(l,a){var h=a,m=0;do{var v=h.nextSibling;if(l.removeChild(h),v&&v.nodeType===8)if(h=v.data,h==="/$"){if(m===0){l.removeChild(v),Ql(a);return}m--}else h!=="$"&&h!=="$?"&&h!=="$!"||m++;h=v}while(h);Ql(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 Fg(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 Qr=Math.random().toString(36).slice(2),as="__reactFiber$"+Qr,Zl="__reactProps$"+Qr,Ts="__reactContainer$"+Qr,Ld="__reactEvents$"+Qr,Y1="__reactListeners$"+Qr,U1="__reactHandles$"+Qr;function Mi(l){var a=l[as];if(a)return a;for(var h=l.parentNode;h;){if(a=h[Ts]||h[as]){if(h=a.alternate,a.child!==null||h!==null&&h.child!==null)for(l=Fg(l);l!==null;){if(h=l[as])return h;l=Fg(l)}return a}l=h,h=l.parentNode}return null}function zl(l){return l=l[as]||l[Ts],!l||l.tag!==5&&l.tag!==6&&l.tag!==13&&l.tag!==3?null:l}function jr(l){if(l.tag===5||l.tag===6)return l.stateNode;throw Error(t(33))}function ja(l){return l[Zl]||null}var Id=[],Tr=-1;function ri(l){return{current:l}}function rt(l){0>Tr||(l.current=Id[Tr],Id[Tr]=null,Tr--)}function st(l,a){Tr++,Id[Tr]=l.current,l.current=a}var li={},Yt=ri(li),dn=ri(!1),Ri=li;function Nr(l,a){var h=l.type.contextTypes;if(!h)return li;var m=l.stateNode;if(m&&m.__reactInternalMemoizedUnmaskedChildContext===a)return m.__reactInternalMemoizedMaskedChildContext;var v={},y;for(y in h)v[y]=a[y];return m&&(l=l.stateNode,l.__reactInternalMemoizedUnmaskedChildContext=a,l.__reactInternalMemoizedMaskedChildContext=v),v}function hn(l){return l=l.childContextTypes,l!=null}function Ta(){rt(dn),rt(Yt)}function Xg(l,a,h){if(Yt.current!==li)throw Error(t(168));st(Yt,a),st(dn,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 v in m)if(!(v in a))throw Error(t(108,me(l)||"Unknown",v));return T({},h,m)}function Na(l){return l=(l=l.stateNode)&&l.__reactInternalMemoizedMergedChildContext||li,Ri=Yt.current,st(Yt,l),st(dn,dn.current),!0}function qg(l,a,h){var m=l.stateNode;if(!m)throw Error(t(169));h?(l=Vg(l,a,Ri),m.__reactInternalMemoizedMergedChildContext=l,rt(dn),rt(Yt),st(Yt,l)):rt(dn),st(dn,h)}var Ns=null,Ea=!1,Zd=!1;function Yg(l){Ns===null?Ns=[l]:Ns.push(l)}function W1(l){Ea=!0,Yg(l)}function oi(){if(!Zd&&Ns!==null){Zd=!0;var l=0,a=Je;try{var h=Ns;for(Je=1;l<h.length;l++){var m=h[l];do m=m(!0);while(m!==null)}Ns=null,Ea=!1}catch(v){throw Ns!==null&&(Ns=Ns.slice(l+1)),Wm(ad,oi),v}finally{Je=a,Zd=!1}}return null}var Er=[],Ar=0,Aa=null,Ma=0,An=[],Mn=0,Di=null,Es=1,As="";function Li(l,a){Er[Ar++]=Ma,Er[Ar++]=Aa,Aa=l,Ma=a}function Ug(l,a,h){An[Mn++]=Es,An[Mn++]=As,An[Mn++]=Di,Di=l;var m=Es;l=As;var v=32-qn(m)-1;m&=~(1<<v),h+=1;var y=32-qn(a)+v;if(30<y){var _=v-v%5;y=(m&(1<<_)-1).toString(32),m>>=_,v-=_,Es=1<<32-qn(a)+v|h<<v|m,As=y+l}else Es=1<<y|h<<v|m,As=l}function zd(l){l.return!==null&&(Li(l,1),Ug(l,1,0))}function Bd(l){for(;l===Aa;)Aa=Er[--Ar],Er[Ar]=null,Ma=Er[--Ar],Er[Ar]=null;for(;l===Di;)Di=An[--Mn],An[Mn]=null,As=An[--Mn],An[Mn]=null,Es=An[--Mn],An[Mn]=null}var Cn=null,Pn=null,at=!1,Un=null;function Wg(l,a){var h=In(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,Pn=ii(a.firstChild),!0):!1;case 6:return a=l.pendingProps===""||a.nodeType!==3?null:a,a!==null?(l.stateNode=a,Cn=l,Pn=null,!0):!1;case 13:return a=a.nodeType!==8?null:a,a!==null?(h=Di!==null?{id:Es,overflow:As}:null,l.memoizedState={dehydrated:a,treeContext:h,retryLane:1073741824},h=In(18,null,null,0),h.stateNode=a,h.return=l,l.child=h,Cn=l,Pn=null,!0):!1;default:return!1}}function Fd(l){return(l.mode&1)!==0&&(l.flags&128)===0}function Xd(l){if(at){var a=Pn;if(a){var h=a;if(!Gg(l,a)){if(Fd(l))throw Error(t(418));a=ii(h.nextSibling);var m=Cn;a&&Gg(l,a)?Wg(m,h):(l.flags=l.flags&-4097|2,at=!1,Cn=l)}}else{if(Fd(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 Ra(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"&&!Md(l.type,l.memoizedProps)),a&&(a=Pn)){if(Fd(l))throw Kg(),Error(t(418));for(;a;)Wg(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){Pn=ii(l.nextSibling);break e}a--}else h!=="$"&&h!=="$!"&&h!=="$?"||a++}l=l.nextSibling}Pn=null}}else Pn=Cn?ii(l.stateNode.nextSibling):null;return!0}function Kg(){for(var l=Pn;l;)l=ii(l.nextSibling)}function Mr(){Pn=Cn=null,at=!1}function Vd(l){Un===null?Un=[l]:Un.push(l)}var G1=C.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 v=m,y=""+l;return a!==null&&a.ref!==null&&typeof a.ref=="function"&&a.ref._stringRef===y?a.ref:(a=function(_){var E=v.refs;_===null?delete E[y]:E[y]=_},a._stringRef=y,a)}if(typeof l!="string")throw Error(t(284));if(!h._owner)throw Error(t(290,l))}return l}function Da(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(q,I){if(l){var G=q.deletions;G===null?(q.deletions=[I],q.flags|=16):G.push(I)}}function h(q,I){if(!l)return null;for(;I!==null;)a(q,I),I=I.sibling;return null}function m(q,I){for(q=new Map;I!==null;)I.key!==null?q.set(I.key,I):q.set(I.index,I),I=I.sibling;return q}function v(q,I){return q=mi(q,I),q.index=0,q.sibling=null,q}function y(q,I,G){return q.index=G,l?(G=q.alternate,G!==null?(G=G.index,G<I?(q.flags|=2,I):G):(q.flags|=2,I)):(q.flags|=1048576,I)}function _(q){return l&&q.alternate===null&&(q.flags|=2),q}function E(q,I,G,de){return I===null||I.tag!==6?(I=Rh(G,q.mode,de),I.return=q,I):(I=v(I,G),I.return=q,I)}function D(q,I,G,de){var Pe=G.type;return Pe===A?ae(q,I,G.props.children,de,G.key):I!==null&&(I.elementType===Pe||typeof Pe=="object"&&Pe!==null&&Pe.$$typeof===pe&&Jg(Pe)===I.type)?(de=v(I,G.props),de.ref=Bl(q,I,G),de.return=q,de):(de=oc(G.type,G.key,G.props,null,q.mode,de),de.ref=Bl(q,I,G),de.return=q,de)}function K(q,I,G,de){return I===null||I.tag!==4||I.stateNode.containerInfo!==G.containerInfo||I.stateNode.implementation!==G.implementation?(I=Dh(G,q.mode,de),I.return=q,I):(I=v(I,G.children||[]),I.return=q,I)}function ae(q,I,G,de,Pe){return I===null||I.tag!==7?(I=qi(G,q.mode,de,Pe),I.return=q,I):(I=v(I,G),I.return=q,I)}function ue(q,I,G){if(typeof I=="string"&&I!==""||typeof I=="number")return I=Rh(""+I,q.mode,G),I.return=q,I;if(typeof I=="object"&&I!==null){switch(I.$$typeof){case Q:return G=oc(I.type,I.key,I.props,null,q.mode,G),G.ref=Bl(q,null,I),G.return=q,G;case N:return I=Dh(I,q.mode,G),I.return=q,I;case pe:var de=I._init;return ue(q,de(I._payload),G)}if(M(I)||z(I))return I=qi(I,q.mode,G,null),I.return=q,I;Da(q,I)}return null}function oe(q,I,G,de){var Pe=I!==null?I.key:null;if(typeof G=="string"&&G!==""||typeof G=="number")return Pe!==null?null:E(q,I,""+G,de);if(typeof G=="object"&&G!==null){switch(G.$$typeof){case Q:return G.key===Pe?D(q,I,G,de):null;case N:return G.key===Pe?K(q,I,G,de):null;case pe:return Pe=G._init,oe(q,I,Pe(G._payload),de)}if(M(G)||z(G))return Pe!==null?null:ae(q,I,G,de,null);Da(q,G)}return null}function ke(q,I,G,de,Pe){if(typeof de=="string"&&de!==""||typeof de=="number")return q=q.get(G)||null,E(I,q,""+de,Pe);if(typeof de=="object"&&de!==null){switch(de.$$typeof){case Q:return q=q.get(de.key===null?G:de.key)||null,D(I,q,de,Pe);case N:return q=q.get(de.key===null?G:de.key)||null,K(I,q,de,Pe);case pe:var Ne=de._init;return ke(q,I,G,Ne(de._payload),Pe)}if(M(de)||z(de))return q=q.get(G)||null,ae(I,q,de,Pe,null);Da(I,de)}return null}function _e(q,I,G,de){for(var Pe=null,Ne=null,Ee=I,Ae=I=0,Rt=null;Ee!==null&&Ae<G.length;Ae++){Ee.index>Ae?(Rt=Ee,Ee=null):Rt=Ee.sibling;var We=oe(q,Ee,G[Ae],de);if(We===null){Ee===null&&(Ee=Rt);break}l&&Ee&&We.alternate===null&&a(q,Ee),I=y(We,I,Ae),Ne===null?Pe=We:Ne.sibling=We,Ne=We,Ee=Rt}if(Ae===G.length)return h(q,Ee),at&&Li(q,Ae),Pe;if(Ee===null){for(;Ae<G.length;Ae++)Ee=ue(q,G[Ae],de),Ee!==null&&(I=y(Ee,I,Ae),Ne===null?Pe=Ee:Ne.sibling=Ee,Ne=Ee);return at&&Li(q,Ae),Pe}for(Ee=m(q,Ee);Ae<G.length;Ae++)Rt=ke(Ee,q,Ae,G[Ae],de),Rt!==null&&(l&&Rt.alternate!==null&&Ee.delete(Rt.key===null?Ae:Rt.key),I=y(Rt,I,Ae),Ne===null?Pe=Rt:Ne.sibling=Rt,Ne=Rt);return l&&Ee.forEach(function(gi){return a(q,gi)}),at&&Li(q,Ae),Pe}function $e(q,I,G,de){var Pe=z(G);if(typeof Pe!="function")throw Error(t(150));if(G=Pe.call(G),G==null)throw Error(t(151));for(var Ne=Pe=null,Ee=I,Ae=I=0,Rt=null,We=G.next();Ee!==null&&!We.done;Ae++,We=G.next()){Ee.index>Ae?(Rt=Ee,Ee=null):Rt=Ee.sibling;var gi=oe(q,Ee,We.value,de);if(gi===null){Ee===null&&(Ee=Rt);break}l&&Ee&&gi.alternate===null&&a(q,Ee),I=y(gi,I,Ae),Ne===null?Pe=gi:Ne.sibling=gi,Ne=gi,Ee=Rt}if(We.done)return h(q,Ee),at&&Li(q,Ae),Pe;if(Ee===null){for(;!We.done;Ae++,We=G.next())We=ue(q,We.value,de),We!==null&&(I=y(We,I,Ae),Ne===null?Pe=We:Ne.sibling=We,Ne=We);return at&&Li(q,Ae),Pe}for(Ee=m(q,Ee);!We.done;Ae++,We=G.next())We=ke(Ee,q,Ae,We.value,de),We!==null&&(l&&We.alternate!==null&&Ee.delete(We.key===null?Ae:We.key),I=y(We,I,Ae),Ne===null?Pe=We:Ne.sibling=We,Ne=We);return l&&Ee.forEach(function(Q_){return a(q,Q_)}),at&&Li(q,Ae),Pe}function vt(q,I,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 Q:e:{for(var Pe=G.key,Ne=I;Ne!==null;){if(Ne.key===Pe){if(Pe=G.type,Pe===A){if(Ne.tag===7){h(q,Ne.sibling),I=v(Ne,G.props.children),I.return=q,q=I;break e}}else if(Ne.elementType===Pe||typeof Pe=="object"&&Pe!==null&&Pe.$$typeof===pe&&Jg(Pe)===Ne.type){h(q,Ne.sibling),I=v(Ne,G.props),I.ref=Bl(q,Ne,G),I.return=q,q=I;break e}h(q,Ne);break}else a(q,Ne);Ne=Ne.sibling}G.type===A?(I=qi(G.props.children,q.mode,de,G.key),I.return=q,q=I):(de=oc(G.type,G.key,G.props,null,q.mode,de),de.ref=Bl(q,I,G),de.return=q,q=de)}return _(q);case N:e:{for(Ne=G.key;I!==null;){if(I.key===Ne)if(I.tag===4&&I.stateNode.containerInfo===G.containerInfo&&I.stateNode.implementation===G.implementation){h(q,I.sibling),I=v(I,G.children||[]),I.return=q,q=I;break e}else{h(q,I);break}else a(q,I);I=I.sibling}I=Dh(G,q.mode,de),I.return=q,q=I}return _(q);case pe:return Ne=G._init,vt(q,I,Ne(G._payload),de)}if(M(G))return _e(q,I,G,de);if(z(G))return $e(q,I,G,de);Da(q,G)}return typeof G=="string"&&G!==""||typeof G=="number"?(G=""+G,I!==null&&I.tag===6?(h(q,I.sibling),I=v(I,G),I.return=q,q=I):(h(q,I),I=Rh(G,q.mode,de),I.return=q,q=I),_(q)):h(q,I)}return vt}var Rr=eO(!0),tO=eO(!1),La=ri(null),Ia=null,Dr=null,qd=null;function Yd(){qd=Dr=Ia=null}function Ud(l){var a=La.current;rt(La),l._currentValue=a}function Wd(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){Ia=l,qd=Dr=null,l=l.dependencies,l!==null&&l.firstContext!==null&&((l.lanes&a)!==0&&(fn=!0),l.firstContext=null)}function Rn(l){var a=l._currentValue;if(qd!==l)if(l={context:l,memoizedValue:a,next:null},Dr===null){if(Ia===null)throw Error(t(308));Dr=l,Ia.dependencies={lanes:0,firstContext:l}}else Dr=Dr.next=l;return a}var Ii=null;function Gd(l){Ii===null?Ii=[l]:Ii.push(l)}function nO(l,a,h,m){var v=a.interleaved;return v===null?(h.next=h,Gd(a)):(h.next=v.next,v.next=h),a.interleaved=h,Ms(l,m)}function Ms(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 Hd(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 Rs(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,(qe&2)!==0){var v=m.pending;return v===null?a.next=a:(a.next=v.next,v.next=a),m.pending=a,Ms(l,h)}return v=m.interleaved,v===null?(a.next=a,Gd(m)):(a.next=v.next,v.next=a),m.interleaved=a,Ms(l,h)}function Za(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,dd(l,h)}}function iO(l,a){var h=l.updateQueue,m=l.alternate;if(m!==null&&(m=m.updateQueue,h===m)){var v=null,y=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};y===null?v=y=_:y=y.next=_,h=h.next}while(h!==null);y===null?v=y=a:y=y.next=a}else v=y=a;h={baseState:m.baseState,firstBaseUpdate:v,lastBaseUpdate:y,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 za(l,a,h,m){var v=l.updateQueue;ai=!1;var y=v.firstBaseUpdate,_=v.lastBaseUpdate,E=v.shared.pending;if(E!==null){v.shared.pending=null;var D=E,K=D.next;D.next=null,_===null?y=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(y!==null){var ue=v.baseState;_=0,ae=K=D=null,E=y;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=T({},ue,oe);break e;case 2:ai=!0}}E.callback!==null&&E.lane!==0&&(l.flags|=64,oe=v.effects,oe===null?v.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=v.shared.pending,E===null)break;oe=E,E=oe.next,oe.next=null,v.lastBaseUpdate=oe,v.shared.pending=null}}while(!0);if(ae===null&&(D=ue),v.baseState=D,v.firstBaseUpdate=K,v.lastBaseUpdate=ae,a=v.shared.interleaved,a!==null){v=a;do _|=v.lane,v=v.next;while(v!==a)}else y===null&&(v.shared.lanes=0);Bi|=_,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],v=m.callback;if(v!==null){if(m.callback=null,m=h,typeof v!="function")throw Error(t(191,v));v.call(m)}}}var Fl={},cs=ri(Fl),Xl=ri(Fl),Vl=ri(Fl);function Zi(l){if(l===Fl)throw Error(t(174));return l}function Kd(l,a){switch(st(Vl,a),st(Xl,l),st(cs,Fl),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(cs),st(cs,a)}function Ir(){rt(cs),rt(Xl),rt(Vl)}function lO(l){Zi(Vl.current);var a=Zi(cs.current),h=Ve(a,l.type);a!==h&&(st(Xl,l),st(cs,h))}function Jd(l){Xl.current===l&&(rt(cs),rt(Xl))}var dt=ri(0);function Ba(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 eh=[];function th(){for(var l=0;l<eh.length;l++)eh[l]._workInProgressVersionPrimary=null;eh.length=0}var Fa=C.ReactCurrentDispatcher,nh=C.ReactCurrentBatchConfig,zi=0,ht=null,Ct=null,At=null,Xa=!1,ql=!1,Yl=0,H1=0;function Ut(){throw Error(t(321))}function sh(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 ih(l,a,h,m,v,y){if(zi=y,ht=a,a.memoizedState=null,a.updateQueue=null,a.lanes=0,Fa.current=l===null||l.memoizedState===null?t_:n_,l=h(m,v),ql){y=0;do{if(ql=!1,Yl=0,25<=y)throw Error(t(301));y+=1,At=Ct=null,a.updateQueue=null,Fa.current=s_,l=h(m,v)}while(ql)}if(Fa.current=Ya,a=Ct!==null&&Ct.next!==null,zi=0,At=Ct=ht=null,Xa=!1,a)throw Error(t(300));return l}function rh(){var l=Yl!==0;return Yl=0,l}function us(){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 Dn(){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 Ul(l,a){return typeof a=="function"?a(l):a}function lh(l){var a=Dn(),h=a.queue;if(h===null)throw Error(t(311));h.lastRenderedReducer=l;var m=Ct,v=m.baseQueue,y=h.pending;if(y!==null){if(v!==null){var _=v.next;v.next=y.next,y.next=_}m.baseQueue=v=y,h.pending=null}if(v!==null){y=v.next,m=m.baseState;var E=_=null,D=null,K=y;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,Bi|=ae}K=K.next}while(K!==null&&K!==y);D===null?_=m:D.next=E,Yn(m,a.memoizedState)||(fn=!0),a.memoizedState=m,a.baseState=_,a.baseQueue=D,h.lastRenderedState=m}if(l=h.interleaved,l!==null){v=l;do y=v.lane,ht.lanes|=y,Bi|=y,v=v.next;while(v!==l)}else v===null&&(h.lanes=0);return[a.memoizedState,h.dispatch]}function oh(l){var a=Dn(),h=a.queue;if(h===null)throw Error(t(311));h.lastRenderedReducer=l;var m=h.dispatch,v=h.pending,y=a.memoizedState;if(v!==null){h.pending=null;var _=v=v.next;do y=l(y,_.action),_=_.next;while(_!==v);Yn(y,a.memoizedState)||(fn=!0),a.memoizedState=y,a.baseQueue===null&&(a.baseState=y),h.lastRenderedState=y}return[y,m]}function oO(){}function aO(l,a){var h=ht,m=Dn(),v=a(),y=!Yn(m.memoizedState,v);if(y&&(m.memoizedState=v,fn=!0),m=m.queue,ah(dO.bind(null,h,m,l),[l]),m.getSnapshot!==a||y||At!==null&&At.memoizedState.tag&1){if(h.flags|=2048,Wl(9,uO.bind(null,h,m,v,a),void 0,null),Mt===null)throw Error(t(349));(zi&30)!==0||cO(h,a,v)}return v}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=Ms(l,1);a!==null&&Kn(a,l,1,-1)}function pO(l){var a=us();return typeof l=="function"&&(l=l()),a.memoizedState=a.baseState=l,l={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Ul,lastRenderedState:l},a.queue=l,l=l.dispatch=e_.bind(null,ht,l),[a.memoizedState,l]}function Wl(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 Dn().memoizedState}function Va(l,a,h,m){var v=us();ht.flags|=l,v.memoizedState=Wl(1|a,h,void 0,m===void 0?null:m)}function qa(l,a,h,m){var v=Dn();m=m===void 0?null:m;var y=void 0;if(Ct!==null){var _=Ct.memoizedState;if(y=_.destroy,m!==null&&sh(m,_.deps)){v.memoizedState=Wl(a,h,y,m);return}}ht.flags|=l,v.memoizedState=Wl(1|a,h,y,m)}function gO(l,a){return Va(8390656,8,l,a)}function ah(l,a){return qa(2048,8,l,a)}function OO(l,a){return qa(4,2,l,a)}function vO(l,a){return qa(4,4,l,a)}function xO(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 yO(l,a,h){return h=h!=null?h.concat([l]):null,qa(4,4,xO.bind(null,a,l),h)}function ch(){}function kO(l,a){var h=Dn();a=a===void 0?null:a;var m=h.memoizedState;return m!==null&&a!==null&&sh(a,m[1])?m[0]:(h.memoizedState=[l,a],l)}function SO(l,a){var h=Dn();a=a===void 0?null:a;var m=h.memoizedState;return m!==null&&a!==null&&sh(a,m[1])?m[0]:(l=l(),h.memoizedState=[l,a],l)}function wO(l,a,h){return(zi&21)===0?(l.baseState&&(l.baseState=!1,fn=!0),l.memoizedState=h):(Yn(h,a)||(h=Jm(),ht.lanes|=h,Bi|=h,l.baseState=!0),a)}function K1(l,a){var h=Je;Je=h!==0&&4>h?h:4,l(!0);var m=nh.transition;nh.transition={};try{l(!1),a()}finally{Je=h,nh.transition=m}}function bO(){return Dn().memoizedState}function J1(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 v=nn();Kn(h,l,m,v),CO(h,a,m)}}function e_(l,a,h){var m=fi(l),v={lane:m,action:h,hasEagerState:!1,eagerState:null,next:null};if(_O(l))$O(a,v);else{var y=l.alternate;if(l.lanes===0&&(y===null||y.lanes===0)&&(y=a.lastRenderedReducer,y!==null))try{var _=a.lastRenderedState,E=y(_,h);if(v.hasEagerState=!0,v.eagerState=E,Yn(E,_)){var D=a.interleaved;D===null?(v.next=v,Gd(a)):(v.next=D.next,D.next=v),a.interleaved=v;return}}catch{}finally{}h=nO(l,a,v,m),h!==null&&(v=nn(),Kn(h,l,m,v),CO(h,a,m))}}function _O(l){var a=l.alternate;return l===ht||a!==null&&a===ht}function $O(l,a){ql=Xa=!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,dd(l,h)}}var Ya={readContext:Rn,useCallback:Ut,useContext:Ut,useEffect:Ut,useImperativeHandle:Ut,useInsertionEffect:Ut,useLayoutEffect:Ut,useMemo:Ut,useReducer:Ut,useRef:Ut,useState:Ut,useDebugValue:Ut,useDeferredValue:Ut,useTransition:Ut,useMutableSource:Ut,useSyncExternalStore:Ut,useId:Ut,unstable_isNewReconciler:!1},t_={readContext:Rn,useCallback:function(l,a){return us().memoizedState=[l,a===void 0?null:a],l},useContext:Rn,useEffect:gO,useImperativeHandle:function(l,a,h){return h=h!=null?h.concat([l]):null,Va(4194308,4,xO.bind(null,a,l),h)},useLayoutEffect:function(l,a){return Va(4194308,4,l,a)},useInsertionEffect:function(l,a){return Va(4,2,l,a)},useMemo:function(l,a){var h=us();return a=a===void 0?null:a,l=l(),h.memoizedState=[l,a],l},useReducer:function(l,a,h){var m=us();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=J1.bind(null,ht,l),[m.memoizedState,l]},useRef:function(l){var a=us();return l={current:l},a.memoizedState=l},useState:pO,useDebugValue:ch,useDeferredValue:function(l){return us().memoizedState=l},useTransition:function(){var l=pO(!1),a=l[0];return l=K1.bind(null,l[1]),us().memoizedState=l,[a,l]},useMutableSource:function(){},useSyncExternalStore:function(l,a,h){var m=ht,v=us();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)}v.memoizedState=h;var y={value:h,getSnapshot:a};return v.queue=y,gO(dO.bind(null,m,y,l),[l]),m.flags|=2048,Wl(9,uO.bind(null,m,y,h,a),void 0,null),h},useId:function(){var l=us(),a=Mt.identifierPrefix;if(at){var h=As,m=Es;h=(m&~(1<<32-qn(m)-1)).toString(32)+h,a=":"+a+"R"+h,h=Yl++,0<h&&(a+="H"+h.toString(32)),a+=":"}else h=H1++,a=":"+a+"r"+h.toString(32)+":";return l.memoizedState=a},unstable_isNewReconciler:!1},n_={readContext:Rn,useCallback:kO,useContext:Rn,useEffect:ah,useImperativeHandle:yO,useInsertionEffect:OO,useLayoutEffect:vO,useMemo:SO,useReducer:lh,useRef:mO,useState:function(){return lh(Ul)},useDebugValue:ch,useDeferredValue:function(l){var a=Dn();return wO(a,Ct.memoizedState,l)},useTransition:function(){var l=lh(Ul)[0],a=Dn().memoizedState;return[l,a]},useMutableSource:oO,useSyncExternalStore:aO,useId:bO,unstable_isNewReconciler:!1},s_={readContext:Rn,useCallback:kO,useContext:Rn,useEffect:ah,useImperativeHandle:yO,useInsertionEffect:OO,useLayoutEffect:vO,useMemo:SO,useReducer:oh,useRef:mO,useState:function(){return oh(Ul)},useDebugValue:ch,useDeferredValue:function(l){var a=Dn();return Ct===null?a.memoizedState=l:wO(a,Ct.memoizedState,l)},useTransition:function(){var l=oh(Ul)[0],a=Dn().memoizedState;return[l,a]},useMutableSource:oO,useSyncExternalStore:aO,useId:bO,unstable_isNewReconciler:!1};function Wn(l,a){if(l&&l.defaultProps){a=T({},a),l=l.defaultProps;for(var h in l)a[h]===void 0&&(a[h]=l[h]);return a}return a}function uh(l,a,h,m){a=l.memoizedState,h=h(m,a),h=h==null?a:T({},a,h),l.memoizedState=h,l.lanes===0&&(l.updateQueue.baseState=h)}var Ua={isMounted:function(l){return(l=l._reactInternals)?Ai(l)===l:!1},enqueueSetState:function(l,a,h){l=l._reactInternals;var m=nn(),v=fi(l),y=Rs(m,v);y.payload=a,h!=null&&(y.callback=h),a=ci(l,y,v),a!==null&&(Kn(a,l,v,m),Za(a,l,v))},enqueueReplaceState:function(l,a,h){l=l._reactInternals;var m=nn(),v=fi(l),y=Rs(m,v);y.tag=1,y.payload=a,h!=null&&(y.callback=h),a=ci(l,y,v),a!==null&&(Kn(a,l,v,m),Za(a,l,v))},enqueueForceUpdate:function(l,a){l=l._reactInternals;var h=nn(),m=fi(l),v=Rs(h,m);v.tag=2,a!=null&&(v.callback=a),a=ci(l,v,m),a!==null&&(Kn(a,l,m,h),Za(a,l,m))}};function PO(l,a,h,m,v,y,_){return l=l.stateNode,typeof l.shouldComponentUpdate=="function"?l.shouldComponentUpdate(m,y,_):a.prototype&&a.prototype.isPureReactComponent?!Ml(h,m)||!Ml(v,y):!0}function QO(l,a,h){var m=!1,v=li,y=a.contextType;return typeof y=="object"&&y!==null?y=Rn(y):(v=hn(a)?Ri:Yt.current,m=a.contextTypes,y=(m=m!=null)?Nr(l,v):li),a=new a(h,y),l.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Ua,l.stateNode=a,a._reactInternals=l,m&&(l=l.stateNode,l.__reactInternalMemoizedUnmaskedChildContext=v,l.__reactInternalMemoizedMaskedChildContext=y),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&&Ua.enqueueReplaceState(a,a.state,null)}function dh(l,a,h,m){var v=l.stateNode;v.props=h,v.state=l.memoizedState,v.refs={},Hd(l);var y=a.contextType;typeof y=="object"&&y!==null?v.context=Rn(y):(y=hn(a)?Ri:Yt.current,v.context=Nr(l,y)),v.state=l.memoizedState,y=a.getDerivedStateFromProps,typeof y=="function"&&(uh(l,a,y,h),v.state=l.memoizedState),typeof a.getDerivedStateFromProps=="function"||typeof v.getSnapshotBeforeUpdate=="function"||typeof v.UNSAFE_componentWillMount!="function"&&typeof v.componentWillMount!="function"||(a=v.state,typeof v.componentWillMount=="function"&&v.componentWillMount(),typeof v.UNSAFE_componentWillMount=="function"&&v.UNSAFE_componentWillMount(),a!==v.state&&Ua.enqueueReplaceState(v,v.state,null),za(l,h,v,m),v.state=l.memoizedState),typeof v.componentDidMount=="function"&&(l.flags|=4194308)}function Zr(l,a){try{var h="",m=a;do h+=ie(m),m=m.return;while(m);var v=h}catch(y){v=`
31
+ Error generating stack: `+y.message+`
32
+ `+y.stack}return{value:l,source:a,stack:v,digest:null}}function hh(l,a,h){return{value:l,source:null,stack:h??null,digest:a??null}}function fh(l,a){try{console.error(a.value)}catch(h){setTimeout(function(){throw h})}}var i_=typeof WeakMap=="function"?WeakMap:Map;function TO(l,a,h){h=Rs(-1,h),h.tag=3,h.payload={element:null};var m=a.value;return h.callback=function(){tc||(tc=!0,Ph=m),fh(l,a)},h}function NO(l,a,h){h=Rs(-1,h),h.tag=3;var m=l.type.getDerivedStateFromError;if(typeof m=="function"){var v=a.value;h.payload=function(){return m(v)},h.callback=function(){fh(l,a)}}var y=l.stateNode;return y!==null&&typeof y.componentDidCatch=="function"&&(h.callback=function(){fh(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 i_;var v=new Set;m.set(a,v)}else v=m.get(a),v===void 0&&(v=new Set,m.set(a,v));v.has(h)||(v.add(h),l=v_.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,v){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=Rs(-1,1),a.tag=2,ci(h,a,1))),h.lanes|=1),l):(l.flags|=65536,l.lanes=v,l)}var r_=C.ReactCurrentOwner,fn=!1;function tn(l,a,h,m){a.child=l===null?tO(a,null,h,m):Rr(a,l.child,h,m)}function RO(l,a,h,m,v){h=h.render;var y=a.ref;return Lr(a,v),m=ih(l,a,h,m,y,v),h=rh(),l!==null&&!fn?(a.updateQueue=l.updateQueue,a.flags&=-2053,l.lanes&=~v,Ds(l,a,v)):(at&&h&&zd(a),a.flags|=1,tn(l,a,m,v),a.child)}function DO(l,a,h,m,v){if(l===null){var y=h.type;return typeof y=="function"&&!Mh(y)&&y.defaultProps===void 0&&h.compare===null&&h.defaultProps===void 0?(a.tag=15,a.type=y,LO(l,a,y,m,v)):(l=oc(h.type,null,m,a,a.mode,v),l.ref=a.ref,l.return=a,a.child=l)}if(y=l.child,(l.lanes&v)===0){var _=y.memoizedProps;if(h=h.compare,h=h!==null?h:Ml,h(_,m)&&l.ref===a.ref)return Ds(l,a,v)}return a.flags|=1,l=mi(y,m),l.ref=a.ref,l.return=a,a.child=l}function LO(l,a,h,m,v){if(l!==null){var y=l.memoizedProps;if(Ml(y,m)&&l.ref===a.ref)if(fn=!1,a.pendingProps=m=y,(l.lanes&v)!==0)(l.flags&131072)!==0&&(fn=!0);else return a.lanes=l.lanes,Ds(l,a,v)}return ph(l,a,h,m,v)}function IO(l,a,h){var m=a.pendingProps,v=m.children,y=l!==null?l.memoizedState:null;if(m.mode==="hidden")if((a.mode&1)===0)a.memoizedState={baseLanes:0,cachePool:null,transitions:null},st(Br,Qn),Qn|=h;else{if((h&1073741824)===0)return l=y!==null?y.baseLanes|h:h,a.lanes=a.childLanes=1073741824,a.memoizedState={baseLanes:l,cachePool:null,transitions:null},a.updateQueue=null,st(Br,Qn),Qn|=l,null;a.memoizedState={baseLanes:0,cachePool:null,transitions:null},m=y!==null?y.baseLanes:h,st(Br,Qn),Qn|=m}else y!==null?(m=y.baseLanes|h,a.memoizedState=null):m=h,st(Br,Qn),Qn|=m;return tn(l,a,v,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 ph(l,a,h,m,v){var y=hn(h)?Ri:Yt.current;return y=Nr(a,y),Lr(a,v),h=ih(l,a,h,m,y,v),m=rh(),l!==null&&!fn?(a.updateQueue=l.updateQueue,a.flags&=-2053,l.lanes&=~v,Ds(l,a,v)):(at&&m&&zd(a),a.flags|=1,tn(l,a,h,v),a.child)}function zO(l,a,h,m,v){if(hn(h)){var y=!0;Na(a)}else y=!1;if(Lr(a,v),a.stateNode===null)Ga(l,a),QO(a,h,m),dh(a,h,m,v),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=Rn(K):(K=hn(h)?Ri:Yt.current,K=Nr(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,za(a,m,_,v),D=a.memoizedState,E!==m||oe!==D||dn.current||ai?(typeof ae=="function"&&(uh(a,h,ae,m),D=a.memoizedState),(E=ai||PO(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:Wn(a.type,E),_.props=K,ue=a.pendingProps,oe=_.context,D=h.contextType,typeof D=="object"&&D!==null?D=Rn(D):(D=hn(h)?Ri:Yt.current,D=Nr(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,za(a,m,_,v);var _e=a.memoizedState;E!==ue||oe!==_e||dn.current||ai?(typeof ke=="function"&&(uh(a,h,ke,m),_e=a.memoizedState),(K=ai||PO(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 mh(l,a,h,m,y,v)}function mh(l,a,h,m,v,y){ZO(l,a);var _=(a.flags&128)!==0;if(!m&&!_)return v&&qg(a,h,!1),Ds(l,a,y);m=a.stateNode,r_.current=a;var E=_&&typeof h.getDerivedStateFromError!="function"?null:m.render();return a.flags|=1,l!==null&&_?(a.child=Rr(a,l.child,null,y),a.child=Rr(a,null,E,y)):tn(l,a,E,y),a.memoizedState=m.state,v&&qg(a,h,!0),a.child}function BO(l){var a=l.stateNode;a.pendingContext?Xg(l,a.pendingContext,a.pendingContext!==a.context):a.context&&Xg(l,a.context,!1),Kd(l,a.containerInfo)}function FO(l,a,h,m,v){return Mr(),Vd(v),a.flags|=256,tn(l,a,h,m),a.child}var gh={dehydrated:null,treeContext:null,retryLane:0};function Oh(l){return{baseLanes:l,cachePool:null,transitions:null}}function XO(l,a,h){var m=a.pendingProps,v=dt.current,y=!1,_=(a.flags&128)!==0,E;if((E=_)||(E=l!==null&&l.memoizedState===null?!1:(v&2)!==0),E?(y=!0,a.flags&=-129):(l===null||l.memoizedState!==null)&&(v|=1),st(dt,v&1),l===null)return Xd(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,y?(m=a.mode,y=a.child,_={mode:"hidden",children:_},(m&1)===0&&y!==null?(y.childLanes=0,y.pendingProps=_):y=ac(_,m,0,null),l=qi(l,m,h,null),y.return=a,l.return=a,y.sibling=l,a.child=y,a.child.memoizedState=Oh(h),a.memoizedState=gh,l):vh(a,_));if(v=l.memoizedState,v!==null&&(E=v.dehydrated,E!==null))return l_(l,a,_,m,E,v,h);if(y){y=m.fallback,_=a.mode,v=l.child,E=v.sibling;var D={mode:"hidden",children:m.children};return(_&1)===0&&a.child!==v?(m=a.child,m.childLanes=0,m.pendingProps=D,a.deletions=null):(m=mi(v,D),m.subtreeFlags=v.subtreeFlags&14680064),E!==null?y=mi(E,y):(y=qi(y,_,h,null),y.flags|=2),y.return=a,m.return=a,m.sibling=y,a.child=m,m=y,y=a.child,_=l.child.memoizedState,_=_===null?Oh(h):{baseLanes:_.baseLanes|h,cachePool:null,transitions:_.transitions},y.memoizedState=_,y.childLanes=l.childLanes&~h,a.memoizedState=gh,m}return y=l.child,l=y.sibling,m=mi(y,{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 vh(l,a){return a=ac({mode:"visible",children:a},l.mode,0,null),a.return=l,l.child=a}function Wa(l,a,h,m){return m!==null&&Vd(m),Rr(a,l.child,null,h),l=vh(a,a.pendingProps.children),l.flags|=2,a.memoizedState=null,l}function l_(l,a,h,m,v,y,_){if(h)return a.flags&256?(a.flags&=-257,m=hh(Error(t(422))),Wa(l,a,_,m)):a.memoizedState!==null?(a.child=l.child,a.flags|=128,null):(y=m.fallback,v=a.mode,m=ac({mode:"visible",children:m.children},v,0,null),y=qi(y,v,_,null),y.flags|=2,m.return=a,y.return=a,m.sibling=y,a.child=m,(a.mode&1)!==0&&Rr(a,l.child,null,_),a.child.memoizedState=Oh(_),a.memoizedState=gh,y);if((a.mode&1)===0)return Wa(l,a,_,null);if(v.data==="$!"){if(m=v.nextSibling&&v.nextSibling.dataset,m)var E=m.dgst;return m=E,y=Error(t(419)),m=hh(y,m,void 0),Wa(l,a,_,m)}if(E=(_&l.childLanes)!==0,fn||E){if(m=Mt,m!==null){switch(_&-_){case 4:v=2;break;case 16:v=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:v=32;break;case 536870912:v=268435456;break;default:v=0}v=(v&(m.suspendedLanes|_))!==0?0:v,v!==0&&v!==y.retryLane&&(y.retryLane=v,Ms(l,v),Kn(m,l,v,-1))}return Ah(),m=hh(Error(t(421))),Wa(l,a,_,m)}return v.data==="$?"?(a.flags|=128,a.child=l.child,a=x_.bind(null,l),v._reactRetry=a,null):(l=y.treeContext,Pn=ii(v.nextSibling),Cn=a,at=!0,Un=null,l!==null&&(An[Mn++]=Es,An[Mn++]=As,An[Mn++]=Di,Es=l.id,As=l.overflow,Di=a),a=vh(a,m.children),a.flags|=4096,a)}function VO(l,a,h){l.lanes|=a;var m=l.alternate;m!==null&&(m.lanes|=a),Wd(l.return,a,h)}function xh(l,a,h,m,v){var y=l.memoizedState;y===null?l.memoizedState={isBackwards:a,rendering:null,renderingStartTime:0,last:m,tail:h,tailMode:v}:(y.isBackwards=a,y.rendering=null,y.renderingStartTime=0,y.last=m,y.tail=h,y.tailMode=v)}function qO(l,a,h){var m=a.pendingProps,v=m.revealOrder,y=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(v){case"forwards":for(h=a.child,v=null;h!==null;)l=h.alternate,l!==null&&Ba(l)===null&&(v=h),h=h.sibling;h=v,h===null?(v=a.child,a.child=null):(v=h.sibling,h.sibling=null),xh(a,!1,v,h,y);break;case"backwards":for(h=null,v=a.child,a.child=null;v!==null;){if(l=v.alternate,l!==null&&Ba(l)===null){a.child=v;break}l=v.sibling,v.sibling=h,h=v,v=l}xh(a,!0,h,null,y);break;case"together":xh(a,!1,null,null,void 0);break;default:a.memoizedState=null}return a.child}function Ga(l,a){(a.mode&1)===0&&l!==null&&(l.alternate=null,a.alternate=null,a.flags|=2)}function Ds(l,a,h){if(l!==null&&(a.dependencies=l.dependencies),Bi|=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 o_(l,a,h){switch(a.tag){case 3:BO(a),Mr();break;case 5:lO(a);break;case 1:hn(a.type)&&Na(a);break;case 4:Kd(a,a.stateNode.containerInfo);break;case 10:var m=a.type._context,v=a.memoizedProps.value;st(La,m._currentValue),m._currentValue=v;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=Ds(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 qO(l,a,h);a.flags|=128}if(v=a.memoizedState,v!==null&&(v.rendering=null,v.tail=null,v.lastEffect=null),st(dt,dt.current),m)break;return null;case 22:case 23:return a.lanes=0,IO(l,a,h)}return Ds(l,a,h)}var YO,yh,UO,WO;YO=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(){},UO=function(l,a,h,m){var v=l.memoizedProps;if(v!==m){l=a.stateNode,Zi(cs.current);var y=null;switch(h){case"input":v=Et(l,v),m=Et(l,m),y=[];break;case"select":v=T({},v,{value:void 0}),m=T({},m,{value:void 0}),y=[];break;case"textarea":v=ne(l,v),m=ne(l,m),y=[];break;default:typeof v.onClick!="function"&&typeof m.onClick=="function"&&(l.onclick=Qa)}xr(h,m);var _;h=null;for(K in v)if(!m.hasOwnProperty(K)&&v.hasOwnProperty(K)&&v[K]!=null)if(K==="style"){var E=v[K];for(_ in E)E.hasOwnProperty(_)&&(h||(h={}),h[_]="")}else K!=="dangerouslySetInnerHTML"&&K!=="children"&&K!=="suppressContentEditableWarning"&&K!=="suppressHydrationWarning"&&K!=="autoFocus"&&(i.hasOwnProperty(K)?y||(y=[]):(y=y||[]).push(K,null));for(K in m){var D=m[K];if(E=v?.[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||(y||(y=[]),y.push(K,h)),h=D;else K==="dangerouslySetInnerHTML"?(D=D?D.__html:void 0,E=E?E.__html:void 0,D!=null&&E!==D&&(y=y||[]).push(K,D)):K==="children"?typeof D!="string"&&typeof D!="number"||(y=y||[]).push(K,""+D):K!=="suppressContentEditableWarning"&&K!=="suppressHydrationWarning"&&(i.hasOwnProperty(K)?(D!=null&&K==="onScroll"&&it("scroll",l),y||E===D||(y=[])):(y=y||[]).push(K,D))}h&&(y=y||[]).push("style",h);var K=y;(a.updateQueue=K)&&(a.flags|=4)}},WO=function(l,a,h,m){h!==m&&(a.flags|=4)};function Gl(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 Wt(l){var a=l.alternate!==null&&l.alternate.child===l.child,h=0,m=0;if(a)for(var v=l.child;v!==null;)h|=v.lanes|v.childLanes,m|=v.subtreeFlags&14680064,m|=v.flags&14680064,v.return=l,v=v.sibling;else for(v=l.child;v!==null;)h|=v.lanes|v.childLanes,m|=v.subtreeFlags,m|=v.flags,v.return=l,v=v.sibling;return l.subtreeFlags|=m,l.childLanes=h,a}function a_(l,a,h){var m=a.pendingProps;switch(Bd(a),a.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Wt(a),null;case 1:return hn(a.type)&&Ta(),Wt(a),null;case 3:return m=a.stateNode,Ir(),rt(dn),rt(Yt),th(),m.pendingContext&&(m.context=m.pendingContext,m.pendingContext=null),(l===null||l.child===null)&&(Ra(a)?a.flags|=4:l===null||l.memoizedState.isDehydrated&&(a.flags&256)===0||(a.flags|=1024,Un!==null&&(Th(Un),Un=null))),yh(l,a),Wt(a),null;case 5:Jd(a);var v=Zi(Vl.current);if(h=a.type,l!==null&&a.stateNode!=null)UO(l,a,h,m,v),l.ref!==a.ref&&(a.flags|=512,a.flags|=2097152);else{if(!m){if(a.stateNode===null)throw Error(t(166));return Wt(a),null}if(l=Zi(cs.current),Ra(a)){m=a.stateNode,h=a.type;var y=a.memoizedProps;switch(m[as]=a,m[Zl]=y,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(v=0;v<Dl.length;v++)it(Dl[v],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,y),it("invalid",m);break;case"select":m._wrapperState={wasMultiple:!!y.multiple},it("invalid",m);break;case"textarea":xe(m,y),it("invalid",m)}xr(h,y),v=null;for(var _ in y)if(y.hasOwnProperty(_)){var E=y[_];_==="children"?typeof E=="string"?m.textContent!==E&&(y.suppressHydrationWarning!==!0&&Pa(m.textContent,E,l),v=["children",E]):typeof E=="number"&&m.textContent!==""+E&&(y.suppressHydrationWarning!==!0&&Pa(m.textContent,E,l),v=["children",""+E]):i.hasOwnProperty(_)&&E!=null&&_==="onScroll"&&it("scroll",m)}switch(h){case"input":Re(m),ed(m,y,!0);break;case"textarea":Re(m),fe(m);break;case"select":case"option":break;default:typeof y.onClick=="function"&&(m.onclick=Qa)}m=v,a.updateQueue=m,m!==null&&(a.flags|=4)}else{_=v.nodeType===9?v:v.ownerDocument,l==="http://www.w3.org/1999/xhtml"&&(l=Te(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[as]=a,l[Zl]=m,YO(l,a,!1,!1),a.stateNode=l;e:{switch(_=xl(h,m),h){case"dialog":it("cancel",l),it("close",l),v=m;break;case"iframe":case"object":case"embed":it("load",l),v=m;break;case"video":case"audio":for(v=0;v<Dl.length;v++)it(Dl[v],l);v=m;break;case"source":it("error",l),v=m;break;case"img":case"image":case"link":it("error",l),it("load",l),v=m;break;case"details":it("toggle",l),v=m;break;case"input":Hs(l,m),v=Et(l,m),it("invalid",l);break;case"option":v=m;break;case"select":l._wrapperState={wasMultiple:!!m.multiple},v=T({},m,{value:void 0}),it("invalid",l);break;case"textarea":xe(l,m),v=ne(l,m),it("invalid",l);break;default:v=m}xr(h,v),E=v;for(y in E)if(E.hasOwnProperty(y)){var D=E[y];y==="style"?vr(l,D):y==="dangerouslySetInnerHTML"?(D=D?D.__html:void 0,D!=null&&en(l,D)):y==="children"?typeof D=="string"?(h!=="textarea"||D!=="")&&ls(l,D):typeof D=="number"&&ls(l,""+D):y!=="suppressContentEditableWarning"&&y!=="suppressHydrationWarning"&&y!=="autoFocus"&&(i.hasOwnProperty(y)?D!=null&&y==="onScroll"&&it("scroll",l):D!=null&&P(l,y,D,_))}switch(h){case"input":Re(l),ed(l,m,!1);break;case"textarea":Re(l),fe(l);break;case"option":m.value!=null&&l.setAttribute("value",""+je(m.value));break;case"select":l.multiple=!!m.multiple,y=m.value,y!=null?W(l,!!m.multiple,y,!1):m.defaultValue!=null&&W(l,!!m.multiple,m.defaultValue,!0);break;default:typeof v.onClick=="function"&&(l.onclick=Qa)}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 Wt(a),null;case 6:if(l&&a.stateNode!=null)WO(l,a,l.memoizedProps,m);else{if(typeof m!="string"&&a.stateNode===null)throw Error(t(166));if(h=Zi(Vl.current),Zi(cs.current),Ra(a)){if(m=a.stateNode,h=a.memoizedProps,m[as]=a,(y=m.nodeValue!==h)&&(l=Cn,l!==null))switch(l.tag){case 3:Pa(m.nodeValue,h,(l.mode&1)!==0);break;case 5:l.memoizedProps.suppressHydrationWarning!==!0&&Pa(m.nodeValue,h,(l.mode&1)!==0)}y&&(a.flags|=4)}else m=(h.nodeType===9?h:h.ownerDocument).createTextNode(m),m[as]=a,a.stateNode=m}return Wt(a),null;case 13:if(rt(dt),m=a.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(at&&Pn!==null&&(a.mode&1)!==0&&(a.flags&128)===0)Kg(),Mr(),a.flags|=98560,y=!1;else if(y=Ra(a),m!==null&&m.dehydrated!==null){if(l===null){if(!y)throw Error(t(318));if(y=a.memoizedState,y=y!==null?y.dehydrated:null,!y)throw Error(t(317));y[as]=a}else Mr(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Wt(a),y=!1}else Un!==null&&(Th(Un),Un=null),y=!0;if(!y)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?Pt===0&&(Pt=3):Ah())),a.updateQueue!==null&&(a.flags|=4),Wt(a),null);case 4:return Ir(),yh(l,a),l===null&&Ll(a.stateNode.containerInfo),Wt(a),null;case 10:return Ud(a.type._context),Wt(a),null;case 17:return hn(a.type)&&Ta(),Wt(a),null;case 19:if(rt(dt),y=a.memoizedState,y===null)return Wt(a),null;if(m=(a.flags&128)!==0,_=y.rendering,_===null)if(m)Gl(y,!1);else{if(Pt!==0||l!==null&&(l.flags&128)!==0)for(l=a.child;l!==null;){if(_=Ba(l),_!==null){for(a.flags|=128,Gl(y,!1),m=_.updateQueue,m!==null&&(a.updateQueue=m,a.flags|=4),a.subtreeFlags=0,m=h,h=a.child;h!==null;)y=h,l=m,y.flags&=14680066,_=y.alternate,_===null?(y.childLanes=0,y.lanes=l,y.child=null,y.subtreeFlags=0,y.memoizedProps=null,y.memoizedState=null,y.updateQueue=null,y.dependencies=null,y.stateNode=null):(y.childLanes=_.childLanes,y.lanes=_.lanes,y.child=_.child,y.subtreeFlags=0,y.deletions=null,y.memoizedProps=_.memoizedProps,y.memoizedState=_.memoizedState,y.updateQueue=_.updateQueue,y.type=_.type,l=_.dependencies,y.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}y.tail!==null&&Ot()>Fr&&(a.flags|=128,m=!0,Gl(y,!1),a.lanes=4194304)}else{if(!m)if(l=Ba(_),l!==null){if(a.flags|=128,m=!0,h=l.updateQueue,h!==null&&(a.updateQueue=h,a.flags|=4),Gl(y,!0),y.tail===null&&y.tailMode==="hidden"&&!_.alternate&&!at)return Wt(a),null}else 2*Ot()-y.renderingStartTime>Fr&&h!==1073741824&&(a.flags|=128,m=!0,Gl(y,!1),a.lanes=4194304);y.isBackwards?(_.sibling=a.child,a.child=_):(h=y.last,h!==null?h.sibling=_:a.child=_,y.last=_)}return y.tail!==null?(a=y.tail,y.rendering=a,y.tail=a.sibling,y.renderingStartTime=Ot(),a.sibling=null,h=dt.current,st(dt,m?h&1|2:h&1),a):(Wt(a),null);case 22:case 23:return Eh(),m=a.memoizedState!==null,l!==null&&l.memoizedState!==null!==m&&(a.flags|=8192),m&&(a.mode&1)!==0?(Qn&1073741824)!==0&&(Wt(a),a.subtreeFlags&6&&(a.flags|=8192)):Wt(a),null;case 24:return null;case 25:return null}throw Error(t(156,a.tag))}function c_(l,a){switch(Bd(a),a.tag){case 1:return hn(a.type)&&Ta(),l=a.flags,l&65536?(a.flags=l&-65537|128,a):null;case 3:return Ir(),rt(dn),rt(Yt),th(),l=a.flags,(l&65536)!==0&&(l&128)===0?(a.flags=l&-65537|128,a):null;case 5:return Jd(a),null;case 13:if(rt(dt),l=a.memoizedState,l!==null&&l.dehydrated!==null){if(a.alternate===null)throw Error(t(340));Mr()}return l=a.flags,l&65536?(a.flags=l&-65537|128,a):null;case 19:return rt(dt),null;case 4:return Ir(),null;case 10:return Ud(a.type._context),null;case 22:case 23:return Eh(),null;case 24:return null;default:return null}}var Ha=!1,Gt=!1,u_=typeof WeakSet=="function"?WeakSet:Set,be=null;function zr(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 kh(l,a,h){try{h()}catch(m){ft(l,a,m)}}var GO=!1;function d_(l,a){if(Ed=Oa,l=Pg(),_d(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 v=m.anchorOffset,y=m.focusNode;m=m.focusOffset;try{h.nodeType,y.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||v!==0&&ue.nodeType!==3||(E=_+v),ue!==y||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===v&&(E=_),oe===y&&++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(Ad={focusedElem:l,selectionRange:h},Oa=!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,vt=_e.memoizedState,q=a.stateNode,I=q.getSnapshotBeforeUpdate(a.elementType===a.type?$e:Wn(a.type,$e),vt);q.__reactInternalSnapshotBeforeUpdate=I}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 Hl(l,a,h){var m=a.updateQueue;if(m=m!==null?m.lastEffect:null,m!==null){var v=m=m.next;do{if((v.tag&l)===l){var y=v.destroy;v.destroy=void 0,y!==void 0&&kh(a,h,y)}v=v.next}while(v!==m)}}function Ka(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 Sh(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[as],delete a[Zl],delete a[Ld],delete a[Y1],delete a[U1])),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=Qa));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 bh(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(bh(l,a,h),l=l.sibling;l!==null;)bh(l,a,h),l=l.sibling}var zt=null,Gn=!1;function ui(l,a,h){for(h=h.child;h!==null;)ev(l,a,h),h=h.sibling}function ev(l,a,h){if(os&&typeof os.onCommitFiberUnmount=="function")try{os.onCommitFiberUnmount(da,h)}catch{}switch(h.tag){case 5:Gt||zr(h,a);case 6:var m=zt,v=Gn;zt=null,ui(l,a,h),zt=m,Gn=v,zt!==null&&(Gn?(l=zt,h=h.stateNode,l.nodeType===8?l.parentNode.removeChild(h):l.removeChild(h)):zt.removeChild(h.stateNode));break;case 18:zt!==null&&(Gn?(l=zt,h=h.stateNode,l.nodeType===8?Dd(l.parentNode,h):l.nodeType===1&&Dd(l,h),Ql(l)):Dd(zt,h.stateNode));break;case 4:m=zt,v=Gn,zt=h.stateNode.containerInfo,Gn=!0,ui(l,a,h),zt=m,Gn=v;break;case 0:case 11:case 14:case 15:if(!Gt&&(m=h.updateQueue,m!==null&&(m=m.lastEffect,m!==null))){v=m=m.next;do{var y=v,_=y.destroy;y=y.tag,_!==void 0&&((y&2)!==0||(y&4)!==0)&&kh(h,a,_),v=v.next}while(v!==m)}ui(l,a,h);break;case 1:if(!Gt&&(zr(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 tv(l){var a=l.updateQueue;if(a!==null){l.updateQueue=null;var h=l.stateNode;h===null&&(h=l.stateNode=new u_),a.forEach(function(m){var v=y_.bind(null,l,m);h.has(m)||(h.add(m),m.then(v,v))})}}function Hn(l,a){var h=a.deletions;if(h!==null)for(var m=0;m<h.length;m++){var v=h[m];try{var y=l,_=a,E=_;e:for(;E!==null;){switch(E.tag){case 5:zt=E.stateNode,Gn=!1;break e;case 3:zt=E.stateNode.containerInfo,Gn=!0;break e;case 4:zt=E.stateNode.containerInfo,Gn=!0;break e}E=E.return}if(zt===null)throw Error(t(160));ev(y,_,v),zt=null,Gn=!1;var D=v.alternate;D!==null&&(D.return=null),v.return=null}catch(K){ft(v,a,K)}}if(a.subtreeFlags&12854)for(a=a.child;a!==null;)nv(a,l),a=a.sibling}function nv(l,a){var h=l.alternate,m=l.flags;switch(l.tag){case 0:case 11:case 14:case 15:if(Hn(a,l),ds(l),m&4){try{Hl(3,l,l.return),Ka(3,l)}catch($e){ft(l,l.return,$e)}try{Hl(5,l,l.return)}catch($e){ft(l,l.return,$e)}}break;case 1:Hn(a,l),ds(l),m&512&&h!==null&&zr(h,h.return);break;case 5:if(Hn(a,l),ds(l),m&512&&h!==null&&zr(h,h.return),l.flags&32){var v=l.stateNode;try{ls(v,"")}catch($e){ft(l,l.return,$e)}}if(m&4&&(v=l.stateNode,v!=null)){var y=l.memoizedProps,_=h!==null?h.memoizedProps:y,E=l.type,D=l.updateQueue;if(l.updateQueue=null,D!==null)try{E==="input"&&y.type==="radio"&&y.name!=null&&mr(v,y),xl(E,_);var K=xl(E,y);for(_=0;_<D.length;_+=2){var ae=D[_],ue=D[_+1];ae==="style"?vr(v,ue):ae==="dangerouslySetInnerHTML"?en(v,ue):ae==="children"?ls(v,ue):P(v,ae,ue,K)}switch(E){case"input":vl(v,y);break;case"textarea":ge(v,y);break;case"select":var oe=v._wrapperState.wasMultiple;v._wrapperState.wasMultiple=!!y.multiple;var ke=y.value;ke!=null?W(v,!!y.multiple,ke,!1):oe!==!!y.multiple&&(y.defaultValue!=null?W(v,!!y.multiple,y.defaultValue,!0):W(v,!!y.multiple,y.multiple?[]:"",!1))}v[Zl]=y}catch($e){ft(l,l.return,$e)}}break;case 6:if(Hn(a,l),ds(l),m&4){if(l.stateNode===null)throw Error(t(162));v=l.stateNode,y=l.memoizedProps;try{v.nodeValue=y}catch($e){ft(l,l.return,$e)}}break;case 3:if(Hn(a,l),ds(l),m&4&&h!==null&&h.memoizedState.isDehydrated)try{Ql(a.containerInfo)}catch($e){ft(l,l.return,$e)}break;case 4:Hn(a,l),ds(l);break;case 13:Hn(a,l),ds(l),v=l.child,v.flags&8192&&(y=v.memoizedState!==null,v.stateNode.isHidden=y,!y||v.alternate!==null&&v.alternate.memoizedState!==null||(Ch=Ot())),m&4&&tv(l);break;case 22:if(ae=h!==null&&h.memoizedState!==null,l.mode&1?(Gt=(K=Gt)||ae,Hn(a,l),Gt=K):Hn(a,l),ds(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:Hl(4,oe,oe.return);break;case 1:zr(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:zr(oe,oe.return);break;case 22:if(oe.memoizedState!==null){rv(ue);continue}}ke!==null?(ke.return=oe,be=ke):rv(ue)}ae=ae.sibling}e:for(ae=null,ue=l;;){if(ue.tag===5){if(ae===null){ae=ue;try{v=ue.stateNode,K?(y=v.style,typeof y.setProperty=="function"?y.setProperty("display","none","important"):y.display="none"):(E=ue.stateNode,D=ue.memoizedProps.style,_=D!=null&&D.hasOwnProperty("display")?D.display:null,E.style.display=Or("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:Hn(a,l),ds(l),m&4&&tv(l);break;case 21:break;default:Hn(a,l),ds(l)}}function ds(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 v=m.stateNode;m.flags&32&&(ls(v,""),m.flags&=-33);var y=JO(l);bh(l,y,v);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 h_(l,a,h){be=l,sv(l)}function sv(l,a,h){for(var m=(l.mode&1)!==0;be!==null;){var v=be,y=v.child;if(v.tag===22&&m){var _=v.memoizedState!==null||Ha;if(!_){var E=v.alternate,D=E!==null&&E.memoizedState!==null||Gt;E=Ha;var K=Gt;if(Ha=_,(Gt=D)&&!K)for(be=v;be!==null;)_=be,D=_.child,_.tag===22&&_.memoizedState!==null?lv(v):D!==null?(D.return=_,be=D):lv(v);for(;y!==null;)be=y,sv(y),y=y.sibling;be=v,Ha=E,Gt=K}iv(l)}else(v.subtreeFlags&8772)!==0&&y!==null?(y.return=v,be=y):iv(l)}}function iv(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||Ka(5,a);break;case 1:var m=a.stateNode;if(a.flags&4&&!Gt)if(h===null)m.componentDidMount();else{var v=a.elementType===a.type?h.memoizedProps:Wn(a.type,h.memoizedProps);m.componentDidUpdate(v,h.memoizedState,m.__reactInternalSnapshotBeforeUpdate)}var y=a.updateQueue;y!==null&&rO(a,y,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&&Ql(ue)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(t(163))}Gt||a.flags&512&&Sh(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 rv(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 lv(l){for(;be!==null;){var a=be;try{switch(a.tag){case 0:case 11:case 15:var h=a.return;try{Ka(4,a)}catch(D){ft(a,h,D)}break;case 1:var m=a.stateNode;if(typeof m.componentDidMount=="function"){var v=a.return;try{m.componentDidMount()}catch(D){ft(a,v,D)}}var y=a.return;try{Sh(a)}catch(D){ft(a,y,D)}break;case 5:var _=a.return;try{Sh(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 f_=Math.ceil,Ja=C.ReactCurrentDispatcher,_h=C.ReactCurrentOwner,Ln=C.ReactCurrentBatchConfig,qe=0,Mt=null,kt=null,Bt=0,Qn=0,Br=ri(0),Pt=0,Kl=null,Bi=0,ec=0,$h=0,Jl=null,pn=null,Ch=0,Fr=1/0,Ls=null,tc=!1,Ph=null,di=null,nc=!1,hi=null,sc=0,eo=0,Qh=null,ic=-1,rc=0;function nn(){return(qe&6)!==0?Ot():ic!==-1?ic:ic=Ot()}function fi(l){return(l.mode&1)===0?1:(qe&2)!==0&&Bt!==0?Bt&-Bt:G1.transition!==null?(rc===0&&(rc=Jm()),rc):(l=Je,l!==0||(l=window.event,l=l===void 0?16:ag(l.type)),l)}function Kn(l,a,h,m){if(50<eo)throw eo=0,Qh=null,Error(t(185));bl(l,h,m),((qe&2)===0||l!==Mt)&&(l===Mt&&((qe&2)===0&&(ec|=h),Pt===4&&pi(l,Bt)),mn(l,m),h===1&&qe===0&&(a.mode&1)===0&&(Fr=Ot()+500,Ea&&oi()))}function mn(l,a){var h=l.callbackNode;Gb(l,a);var m=pa(l,l===Mt?Bt: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?W1(av.bind(null,l)):Yg(av.bind(null,l)),V1(function(){(qe&6)===0&&oi()}),h=null;else{switch(eg(m)){case 1:h=ad;break;case 4:h=Hm;break;case 16:h=ua;break;case 536870912:h=Km;break;default:h=ua}h=gv(h,ov.bind(null,l))}l.callbackPriority=a,l.callbackNode=h}}function ov(l,a){if(ic=-1,rc=0,(qe&6)!==0)throw Error(t(327));var h=l.callbackNode;if(Xr()&&l.callbackNode!==h)return null;var m=pa(l,l===Mt?Bt:0);if(m===0)return null;if((m&30)!==0||(m&l.expiredLanes)!==0||a)a=lc(l,m);else{a=m;var v=qe;qe|=2;var y=uv();(Mt!==l||Bt!==a)&&(Ls=null,Fr=Ot()+500,Xi(l,a));do try{g_();break}catch(E){cv(l,E)}while(!0);Yd(),Ja.current=y,qe=v,kt!==null?a=0:(Mt=null,Bt=0,a=Pt)}if(a!==0){if(a===2&&(v=cd(l),v!==0&&(m=v,a=jh(l,v))),a===1)throw h=Kl,Xi(l,0),pi(l,m),mn(l,Ot()),h;if(a===6)pi(l,m);else{if(v=l.current.alternate,(m&30)===0&&!p_(v)&&(a=lc(l,m),a===2&&(y=cd(l),y!==0&&(m=y,a=jh(l,y))),a===1))throw h=Kl,Xi(l,0),pi(l,m),mn(l,Ot()),h;switch(l.finishedWork=v,l.finishedLanes=m,a){case 0:case 1:throw Error(t(345));case 2:Vi(l,pn,Ls);break;case 3:if(pi(l,m),(m&130023424)===m&&(a=Ch+500-Ot(),10<a)){if(pa(l,0)!==0)break;if(v=l.suspendedLanes,(v&m)!==m){nn(),l.pingedLanes|=l.suspendedLanes&v;break}l.timeoutHandle=Rd(Vi.bind(null,l,pn,Ls),a);break}Vi(l,pn,Ls);break;case 4:if(pi(l,m),(m&4194240)===m)break;for(a=l.eventTimes,v=-1;0<m;){var _=31-qn(m);y=1<<_,_=a[_],_>v&&(v=_),m&=~y}if(m=v,m=Ot()-m,m=(120>m?120:480>m?480:1080>m?1080:1920>m?1920:3e3>m?3e3:4320>m?4320:1960*f_(m/1960))-m,10<m){l.timeoutHandle=Rd(Vi.bind(null,l,pn,Ls),m);break}Vi(l,pn,Ls);break;case 5:Vi(l,pn,Ls);break;default:throw Error(t(329))}}}return mn(l,Ot()),l.callbackNode===h?ov.bind(null,l):null}function jh(l,a){var h=Jl;return l.current.memoizedState.isDehydrated&&(Xi(l,a).flags|=256),l=lc(l,a),l!==2&&(a=pn,pn=h,a!==null&&Th(a)),l}function Th(l){pn===null?pn=l:pn.push.apply(pn,l)}function p_(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 v=h[m],y=v.getSnapshot;v=v.value;try{if(!Yn(y(),v))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&=~$h,a&=~ec,l.suspendedLanes|=a,l.pingedLanes&=~a,l=l.expirationTimes;0<a;){var h=31-qn(a),m=1<<h;l[h]=-1,a&=~m}}function av(l){if((qe&6)!==0)throw Error(t(327));Xr();var a=pa(l,0);if((a&1)===0)return mn(l,Ot()),null;var h=lc(l,a);if(l.tag!==0&&h===2){var m=cd(l);m!==0&&(a=m,h=jh(l,m))}if(h===1)throw h=Kl,Xi(l,0),pi(l,a),mn(l,Ot()),h;if(h===6)throw Error(t(345));return l.finishedWork=l.current.alternate,l.finishedLanes=a,Vi(l,pn,Ls),mn(l,Ot()),null}function Nh(l,a){var h=qe;qe|=1;try{return l(a)}finally{qe=h,qe===0&&(Fr=Ot()+500,Ea&&oi())}}function Fi(l){hi!==null&&hi.tag===0&&(qe&6)===0&&Xr();var a=qe;qe|=1;var h=Ln.transition,m=Je;try{if(Ln.transition=null,Je=1,l)return l()}finally{Je=m,Ln.transition=h,qe=a,(qe&6)===0&&oi()}}function Eh(){Qn=Br.current,rt(Br)}function Xi(l,a){l.finishedWork=null,l.finishedLanes=0;var h=l.timeoutHandle;if(h!==-1&&(l.timeoutHandle=-1,X1(h)),kt!==null)for(h=kt.return;h!==null;){var m=h;switch(Bd(m),m.tag){case 1:m=m.type.childContextTypes,m!=null&&Ta();break;case 3:Ir(),rt(dn),rt(Yt),th();break;case 5:Jd(m);break;case 4:Ir();break;case 13:rt(dt);break;case 19:rt(dt);break;case 10:Ud(m.type._context);break;case 22:case 23:Eh()}h=h.return}if(Mt=l,kt=l=mi(l.current,null),Bt=Qn=a,Pt=0,Kl=null,$h=ec=Bi=0,pn=Jl=null,Ii!==null){for(a=0;a<Ii.length;a++)if(h=Ii[a],m=h.interleaved,m!==null){h.interleaved=null;var v=m.next,y=h.pending;if(y!==null){var _=y.next;y.next=v,m.next=_}h.pending=m}Ii=null}return l}function cv(l,a){do{var h=kt;try{if(Yd(),Fa.current=Ya,Xa){for(var m=ht.memoizedState;m!==null;){var v=m.queue;v!==null&&(v.pending=null),m=m.next}Xa=!1}if(zi=0,At=Ct=ht=null,ql=!1,Yl=0,_h.current=null,h===null||h.return===null){Pt=1,Kl=a,kt=null;break}e:{var y=l,_=h.return,E=h,D=a;if(a=Bt,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,y,a),ke.mode&1&&EO(y,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(y,K,a),Ah();break e}D=Error(t(426))}}else if(at&&E.mode&1){var vt=AO(_);if(vt!==null){(vt.flags&65536)===0&&(vt.flags|=256),MO(vt,_,E,y,a),Vd(Zr(D,E));break e}}y=D=Zr(D,E),Pt!==4&&(Pt=2),Jl===null?Jl=[y]:Jl.push(y),y=_;do{switch(y.tag){case 3:y.flags|=65536,a&=-a,y.lanes|=a;var q=TO(y,D,a);iO(y,q);break e;case 1:E=D;var I=y.type,G=y.stateNode;if((y.flags&128)===0&&(typeof I.getDerivedStateFromError=="function"||G!==null&&typeof G.componentDidCatch=="function"&&(di===null||!di.has(G)))){y.flags|=65536,a&=-a,y.lanes|=a;var de=NO(y,E,a);iO(y,de);break e}}y=y.return}while(y!==null)}hv(h)}catch(Pe){a=Pe,kt===h&&h!==null&&(kt=h=h.return);continue}break}while(!0)}function uv(){var l=Ja.current;return Ja.current=Ya,l===null?Ya:l}function Ah(){(Pt===0||Pt===3||Pt===2)&&(Pt=4),Mt===null||(Bi&268435455)===0&&(ec&268435455)===0||pi(Mt,Bt)}function lc(l,a){var h=qe;qe|=2;var m=uv();(Mt!==l||Bt!==a)&&(Ls=null,Xi(l,a));do try{m_();break}catch(v){cv(l,v)}while(!0);if(Yd(),qe=h,Ja.current=m,kt!==null)throw Error(t(261));return Mt=null,Bt=0,Pt}function m_(){for(;kt!==null;)dv(kt)}function g_(){for(;kt!==null&&!zb();)dv(kt)}function dv(l){var a=mv(l.alternate,l,Qn);l.memoizedProps=l.pendingProps,a===null?hv(l):kt=a,_h.current=null}function hv(l){var a=l;do{var h=a.alternate;if(l=a.return,(a.flags&32768)===0){if(h=a_(h,a,Qn),h!==null){kt=h;return}}else{if(h=c_(h,a),h!==null){h.flags&=32767,kt=h;return}if(l!==null)l.flags|=32768,l.subtreeFlags=0,l.deletions=null;else{Pt=6,kt=null;return}}if(a=a.sibling,a!==null){kt=a;return}kt=a=l}while(a!==null);Pt===0&&(Pt=5)}function Vi(l,a,h){var m=Je,v=Ln.transition;try{Ln.transition=null,Je=1,O_(l,a,h,m)}finally{Ln.transition=v,Je=m}return null}function O_(l,a,h,m){do Xr();while(hi!==null);if((qe&6)!==0)throw Error(t(327));h=l.finishedWork;var v=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 y=h.lanes|h.childLanes;if(Hb(l,y),l===Mt&&(kt=Mt=null,Bt=0),(h.subtreeFlags&2064)===0&&(h.flags&2064)===0||nc||(nc=!0,gv(ua,function(){return Xr(),null})),y=(h.flags&15990)!==0,(h.subtreeFlags&15990)!==0||y){y=Ln.transition,Ln.transition=null;var _=Je;Je=1;var E=qe;qe|=4,_h.current=null,d_(l,h),nv(h,l),D1(Ad),Oa=!!Ed,Ad=Ed=null,l.current=h,h_(h),Bb(),qe=E,Je=_,Ln.transition=y}else l.current=h;if(nc&&(nc=!1,hi=l,sc=v),y=l.pendingLanes,y===0&&(di=null),Vb(h.stateNode),mn(l,Ot()),a!==null)for(m=l.onRecoverableError,h=0;h<a.length;h++)v=a[h],m(v.value,{componentStack:v.stack,digest:v.digest});if(tc)throw tc=!1,l=Ph,Ph=null,l;return(sc&1)!==0&&l.tag!==0&&Xr(),y=l.pendingLanes,(y&1)!==0?l===Qh?eo++:(eo=0,Qh=l):eo=0,oi(),null}function Xr(){if(hi!==null){var l=eg(sc),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,sc=0,(qe&6)!==0)throw Error(t(331));var v=qe;for(qe|=4,be=l.current;be!==null;){var y=be,_=y.child;if((be.flags&16)!==0){var E=y.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:Hl(8,ae,y)}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=y.alternate;if(_e!==null){var $e=_e.child;if($e!==null){_e.child=null;do{var vt=$e.sibling;$e.sibling=null,$e=vt}while($e!==null)}}be=y}}if((y.subtreeFlags&2064)!==0&&_!==null)_.return=y,be=_;else e:for(;be!==null;){if(y=be,(y.flags&2048)!==0)switch(y.tag){case 0:case 11:case 15:Hl(9,y,y.return)}var q=y.sibling;if(q!==null){q.return=y.return,be=q;break e}be=y.return}}var I=l.current;for(be=I;be!==null;){_=be;var G=_.child;if((_.subtreeFlags&2064)!==0&&G!==null)G.return=_,be=G;else e:for(_=I;be!==null;){if(E=be,(E.flags&2048)!==0)try{switch(E.tag){case 0:case 11:case 15:Ka(9,E)}}catch(Pe){ft(E,E.return,Pe)}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(qe=v,oi(),os&&typeof os.onPostCommitFiberRoot=="function")try{os.onPostCommitFiberRoot(da,l)}catch{}m=!0}return m}finally{Je=h,Ln.transition=a}}return!1}function fv(l,a,h){a=Zr(h,a),a=TO(l,a,1),l=ci(l,a,1),a=nn(),l!==null&&(bl(l,1,a),mn(l,a))}function ft(l,a,h){if(l.tag===3)fv(l,l,h);else for(;a!==null;){if(a.tag===3){fv(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&&(bl(a,1,l),mn(a,l));break}}a=a.return}}function v_(l,a,h){var m=l.pingCache;m!==null&&m.delete(a),a=nn(),l.pingedLanes|=l.suspendedLanes&h,Mt===l&&(Bt&h)===h&&(Pt===4||Pt===3&&(Bt&130023424)===Bt&&500>Ot()-Ch?Xi(l,0):$h|=h),mn(l,a)}function pv(l,a){a===0&&((l.mode&1)===0?a=1:(a=fa,fa<<=1,(fa&130023424)===0&&(fa=4194304)));var h=nn();l=Ms(l,a),l!==null&&(bl(l,a,h),mn(l,h))}function x_(l){var a=l.memoizedState,h=0;a!==null&&(h=a.retryLane),pv(l,h)}function y_(l,a){var h=0;switch(l.tag){case 13:var m=l.stateNode,v=l.memoizedState;v!==null&&(h=v.retryLane);break;case 19:m=l.stateNode;break;default:throw Error(t(314))}m!==null&&m.delete(a),pv(l,h)}var mv;mv=function(l,a,h){if(l!==null)if(l.memoizedProps!==a.pendingProps||dn.current)fn=!0;else{if((l.lanes&h)===0&&(a.flags&128)===0)return fn=!1,o_(l,a,h);fn=(l.flags&131072)!==0}else fn=!1,at&&(a.flags&1048576)!==0&&Ug(a,Ma,a.index);switch(a.lanes=0,a.tag){case 2:var m=a.type;Ga(l,a),l=a.pendingProps;var v=Nr(a,Yt.current);Lr(a,h),v=ih(null,a,m,l,v,h);var y=rh();return a.flags|=1,typeof v=="object"&&v!==null&&typeof v.render=="function"&&v.$$typeof===void 0?(a.tag=1,a.memoizedState=null,a.updateQueue=null,hn(m)?(y=!0,Na(a)):y=!1,a.memoizedState=v.state!==null&&v.state!==void 0?v.state:null,Hd(a),v.updater=Ua,a.stateNode=v,v._reactInternals=a,dh(a,m,l,h),a=mh(null,a,m,!0,y,h)):(a.tag=0,at&&y&&zd(a),tn(null,a,v,h),a=a.child),a;case 16:m=a.elementType;e:{switch(Ga(l,a),l=a.pendingProps,v=m._init,m=v(m._payload),a.type=m,v=a.tag=S_(m),l=Wn(m,l),v){case 0:a=ph(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,Wn(m.type,l),h);break e}throw Error(t(306,m,""))}return a;case 0:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:Wn(m,v),ph(l,a,m,v,h);case 1:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:Wn(m,v),zO(l,a,m,v,h);case 3:e:{if(BO(a),l===null)throw Error(t(387));m=a.pendingProps,y=a.memoizedState,v=y.element,sO(l,a),za(a,m,null,h);var _=a.memoizedState;if(m=_.element,y.isDehydrated)if(y={element:m,isDehydrated:!1,cache:_.cache,pendingSuspenseBoundaries:_.pendingSuspenseBoundaries,transitions:_.transitions},a.updateQueue.baseState=y,a.memoizedState=y,a.flags&256){v=Zr(Error(t(423)),a),a=FO(l,a,m,h,v);break e}else if(m!==v){v=Zr(Error(t(424)),a),a=FO(l,a,m,h,v);break e}else for(Pn=ii(a.stateNode.containerInfo.firstChild),Cn=a,at=!0,Un=null,h=tO(a,null,m,h),a.child=h;h;)h.flags=h.flags&-3|4096,h=h.sibling;else{if(Mr(),m===v){a=Ds(l,a,h);break e}tn(l,a,m,h)}a=a.child}return a;case 5:return lO(a),l===null&&Xd(a),m=a.type,v=a.pendingProps,y=l!==null?l.memoizedProps:null,_=v.children,Md(m,v)?_=null:y!==null&&Md(m,y)&&(a.flags|=32),ZO(l,a),tn(l,a,_,h),a.child;case 6:return l===null&&Xd(a),null;case 13:return XO(l,a,h);case 4:return Kd(a,a.stateNode.containerInfo),m=a.pendingProps,l===null?a.child=Rr(a,null,m,h):tn(l,a,m,h),a.child;case 11:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:Wn(m,v),RO(l,a,m,v,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,v=a.pendingProps,y=a.memoizedProps,_=v.value,st(La,m._currentValue),m._currentValue=_,y!==null)if(Yn(y.value,_)){if(y.children===v.children&&!dn.current){a=Ds(l,a,h);break e}}else for(y=a.child,y!==null&&(y.return=a);y!==null;){var E=y.dependencies;if(E!==null){_=y.child;for(var D=E.firstContext;D!==null;){if(D.context===m){if(y.tag===1){D=Rs(-1,h&-h),D.tag=2;var K=y.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}}y.lanes|=h,D=y.alternate,D!==null&&(D.lanes|=h),Wd(y.return,h,a),E.lanes|=h;break}D=D.next}}else if(y.tag===10)_=y.type===a.type?null:y.child;else if(y.tag===18){if(_=y.return,_===null)throw Error(t(341));_.lanes|=h,E=_.alternate,E!==null&&(E.lanes|=h),Wd(_,h,a),_=y.sibling}else _=y.child;if(_!==null)_.return=y;else for(_=y;_!==null;){if(_===a){_=null;break}if(y=_.sibling,y!==null){y.return=_.return,_=y;break}_=_.return}y=_}tn(l,a,v.children,h),a=a.child}return a;case 9:return v=a.type,m=a.pendingProps.children,Lr(a,h),v=Rn(v),m=m(v),a.flags|=1,tn(l,a,m,h),a.child;case 14:return m=a.type,v=Wn(m,a.pendingProps),v=Wn(m.type,v),DO(l,a,m,v,h);case 15:return LO(l,a,a.type,a.pendingProps,h);case 17:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:Wn(m,v),Ga(l,a),a.tag=1,hn(m)?(l=!0,Na(a)):l=!1,Lr(a,h),QO(a,m,v),dh(a,m,v,h),mh(null,a,m,!0,l,h);case 19:return qO(l,a,h);case 22:return IO(l,a,h)}throw Error(t(156,a.tag))};function gv(l,a){return Wm(l,a)}function k_(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 In(l,a,h,m){return new k_(l,a,h,m)}function Mh(l){return l=l.prototype,!(!l||!l.isReactComponent)}function S_(l){if(typeof l=="function")return Mh(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=In(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 oc(l,a,h,m,v,y){var _=2;if(m=l,typeof l=="function")Mh(l)&&(_=1);else if(typeof l=="string")_=5;else e:switch(l){case A:return qi(h.children,v,y,a);case X:_=8,v|=8;break;case B:return l=In(12,h,a,v|2),l.elementType=B,l.lanes=y,l;case V:return l=In(13,h,a,v),l.elementType=V,l.lanes=y,l;case Y:return l=In(19,h,a,v),l.elementType=Y,l.lanes=y,l;case ce:return ac(h,v,y,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=In(_,h,a,v),a.elementType=l,a.type=m,a.lanes=y,a}function qi(l,a,h,m){return l=In(7,l,m,a),l.lanes=h,l}function ac(l,a,h,m){return l=In(22,l,m,a),l.elementType=ce,l.lanes=h,l.stateNode={isHidden:!1},l}function Rh(l,a,h){return l=In(6,l,null,a),l.lanes=h,l}function Dh(l,a,h){return a=In(4,l.children!==null?l.children:[],l.key,a),a.lanes=h,a.stateNode={containerInfo:l.containerInfo,pendingChildren:null,implementation:l.implementation},a}function w_(l,a,h,m,v){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=ud(0),this.expirationTimes=ud(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ud(0),this.identifierPrefix=m,this.onRecoverableError=v,this.mutableSourceEagerHydrationData=null}function Lh(l,a,h,m,v,y,_,E,D){return l=new w_(l,a,h,E,D),a===1?(a=1,y===!0&&(a|=8)):a=0,y=In(3,null,null,a),l.current=y,y.stateNode=l,y.memoizedState={element:m,isDehydrated:h,cache:null,transitions:null,pendingSuspenseBoundaries:null},Hd(y),l}function b_(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 Ov(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(hn(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(hn(h))return Vg(l,h,a)}return a}function vv(l,a,h,m,v,y,_,E,D){return l=Lh(h,m,!0,l,v,y,_,E,D),l.context=Ov(null),h=l.current,m=nn(),v=fi(h),y=Rs(m,v),y.callback=a??null,ci(h,y,v),l.current.lanes=v,bl(l,v,m),mn(l,m),l}function cc(l,a,h,m){var v=a.current,y=nn(),_=fi(v);return h=Ov(h),a.context===null?a.context=h:a.pendingContext=h,a=Rs(y,_),a.payload={element:l},m=m===void 0?null:m,m!==null&&(a.callback=m),l=ci(v,a,_),l!==null&&(Kn(l,v,_,y),Za(l,v,_)),_}function uc(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 xv(l,a){if(l=l.memoizedState,l!==null&&l.dehydrated!==null){var h=l.retryLane;l.retryLane=h!==0&&h<a?h:a}}function Ih(l,a){xv(l,a),(l=l.alternate)&&xv(l,a)}function __(){return null}var yv=typeof reportError=="function"?reportError:function(l){console.error(l)};function Zh(l){this._internalRoot=l}dc.prototype.render=Zh.prototype.render=function(l){var a=this._internalRoot;if(a===null)throw Error(t(409));cc(l,a,null,null)},dc.prototype.unmount=Zh.prototype.unmount=function(){var l=this._internalRoot;if(l!==null){this._internalRoot=null;var a=l.containerInfo;Fi(function(){cc(null,l,null,null)}),a[Ts]=null}};function dc(l){this._internalRoot=l}dc.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 zh(l){return!(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11)}function hc(l){return!(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11&&(l.nodeType!==8||l.nodeValue!==" react-mount-point-unstable "))}function kv(){}function $_(l,a,h,m,v){if(v){if(typeof m=="function"){var y=m;m=function(){var K=uc(_);y.call(K)}}var _=vv(a,m,l,0,null,!1,!1,"",kv);return l._reactRootContainer=_,l[Ts]=_.current,Ll(l.nodeType===8?l.parentNode:l),Fi(),_}for(;v=l.lastChild;)l.removeChild(v);if(typeof m=="function"){var E=m;m=function(){var K=uc(D);E.call(K)}}var D=Lh(l,0,!1,null,null,!1,!1,"",kv);return l._reactRootContainer=D,l[Ts]=D.current,Ll(l.nodeType===8?l.parentNode:l),Fi(function(){cc(a,D,h,m)}),D}function fc(l,a,h,m,v){var y=h._reactRootContainer;if(y){var _=y;if(typeof v=="function"){var E=v;v=function(){var D=uc(_);E.call(D)}}cc(a,_,l,v)}else _=$_(h,a,l,v,m);return uc(_)}tg=function(l){switch(l.tag){case 3:var a=l.stateNode;if(a.current.memoizedState.isDehydrated){var h=wl(a.pendingLanes);h!==0&&(dd(a,h|1),mn(a,Ot()),(qe&6)===0&&(Fr=Ot()+500,oi()))}break;case 13:Fi(function(){var m=Ms(l,1);if(m!==null){var v=nn();Kn(m,l,1,v)}}),Ih(l,1)}},hd=function(l){if(l.tag===13){var a=Ms(l,134217728);if(a!==null){var h=nn();Kn(a,l,134217728,h)}Ih(l,134217728)}},ng=function(l){if(l.tag===13){var a=fi(l),h=Ms(l,a);if(h!==null){var m=nn();Kn(h,l,a,m)}Ih(l,a)}},sg=function(){return Je},ig=function(l,a){var h=Je;try{return Je=l,a()}finally{Je=h}},id=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 v=ja(m);if(!v)throw Error(t(90));Xe(m),vl(m,v)}}}break;case"textarea":ge(l,h);break;case"select":a=h.value,a!=null&&W(l,!!h.multiple,a,!1)}},Bm=Nh,Fm=Fi;var C_={usingClientEntryPoint:!1,Events:[zl,jr,ja,Zm,zm,Nh]},to={findFiberByHostInstance:Mi,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},P_={bundleType:to.bundleType,version:to.version,rendererPackageName:to.rendererPackageName,rendererConfig:to.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:C.ReactCurrentDispatcher,findHostInstanceByFiber:function(l){return l=Ym(l),l===null?null:l.stateNode},findFiberByHostInstance:to.findFiberByHostInstance||__,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 pc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!pc.isDisabled&&pc.supportsFiber)try{da=pc.inject(P_),os=pc}catch{}}return gn.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=C_,gn.createPortal=function(l,a){var h=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!zh(a))throw Error(t(200));return b_(l,a,null,h)},gn.createRoot=function(l,a){if(!zh(l))throw Error(t(299));var h=!1,m="",v=yv;return a!=null&&(a.unstable_strictMode===!0&&(h=!0),a.identifierPrefix!==void 0&&(m=a.identifierPrefix),a.onRecoverableError!==void 0&&(v=a.onRecoverableError)),a=Lh(l,1,!1,null,null,h,!1,m,v),l[Ts]=a.current,Ll(l.nodeType===8?l.parentNode:l),new Zh(a)},gn.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=Ym(a),l=l===null?null:l.stateNode,l},gn.flushSync=function(l){return Fi(l)},gn.hydrate=function(l,a,h){if(!hc(a))throw Error(t(200));return fc(null,l,a,!0,h)},gn.hydrateRoot=function(l,a,h){if(!zh(l))throw Error(t(405));var m=h!=null&&h.hydratedSources||null,v=!1,y="",_=yv;if(h!=null&&(h.unstable_strictMode===!0&&(v=!0),h.identifierPrefix!==void 0&&(y=h.identifierPrefix),h.onRecoverableError!==void 0&&(_=h.onRecoverableError)),a=vv(a,null,l,1,h??null,v,!1,y,_),l[Ts]=a.current,Ll(l),m)for(l=0;l<m.length;l++)h=m[l],v=h._getVersion,v=v(h._source),a.mutableSourceEagerHydrationData==null?a.mutableSourceEagerHydrationData=[h,v]:a.mutableSourceEagerHydrationData.push(h,v);return new dc(a)},gn.render=function(l,a,h){if(!hc(a))throw Error(t(200));return fc(null,l,a,!1,h)},gn.unmountComponentAtNode=function(l){if(!hc(l))throw Error(t(40));return l._reactRootContainer?(Fi(function(){fc(null,null,l,!1,function(){l._reactRootContainer=null,l[Ts]=null})}),!0):!1},gn.unstable_batchedUpdates=Nh,gn.unstable_renderSubtreeIntoContainer=function(l,a,h,m){if(!hc(h))throw Error(t(200));if(l==null||l._reactInternals===void 0)throw Error(t(38));return fc(l,a,h,!1,m)},gn.version="18.3.1-next-f1338f8080-20240426",gn}var Pv;function $0(){if(Pv)return Fh.exports;Pv=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(),Fh.exports=E_(),Fh.exports}var Qv;function A_(){if(Qv)return mc;Qv=1;var n=$0();return mc.createRoot=n.createRoot,mc.hydrateRoot=n.hydrateRoot,mc}var jv=A_(),qh={exports:{}},no={};/**
33
+ * @license React
34
+ * react-jsx-runtime.production.min.js
35
+ *
36
+ * Copyright (c) Facebook, Inc. and its affiliates.
37
+ *
38
+ * This source code is licensed under the MIT license found in the
39
+ * LICENSE file in the root directory of this source tree.
40
+ */var Tv;function M_(){if(Tv)return no;Tv=1;var n=To(),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,x=null;f!==void 0&&(O=""+f),u.key!==void 0&&(O=""+u.key),u.ref!==void 0&&(x=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:x,props:g,_owner:i.current}}return no.Fragment=t,no.jsx=o,no.jsxs=o,no}var Nv;function R_(){return Nv||(Nv=1,qh.exports=M_()),qh.exports}var d=R_();const D_=({mode:n,nodes:e=[],sections:t=[],onNodeClick:s,onSectionClick:i,onToggleExpansion:r,searchTerm:o="",className:c=""})=>{const[u,f]=F.useState(null),p=F.useRef(null);F.useEffect(()=>{const x=w=>{!u||!p.current?.contains(document.activeElement)||(n==="tree"?k(w):S(w))},k=w=>{const $=I_(e),b=$.findIndex(P=>P.id===u);switch(w.key){case"ArrowDown":w.preventDefault(),b<$.length-1&&f($[b+1].id);break;case"ArrowUp":w.preventDefault(),b>0&&f($[b-1].id);break;case"ArrowRight":w.preventDefault();const P=$[b];P.type==="folder"&&!P.isExpanded&&P.children.length>0&&r?.(P.id,!0);break;case"ArrowLeft":w.preventDefault();const C=$[b];C.type==="folder"&&C.isExpanded&&r?.(C.id,!1);break;case"Enter":case" ":w.preventDefault();const Q=$[b];Q.type==="folder"?r?.(Q.id):s&&s(Q);break}},S=w=>{const $=["home",...t.map(P=>P.id)],b=$.findIndex(P=>P===u);switch(w.key){case"ArrowDown":w.preventDefault(),b<$.length-1&&f($[b+1]);break;case"ArrowUp":w.preventDefault(),b>0&&f($[b-1]);break;case"Enter":case" ":w.preventDefault(),u&&i&&i(u==="home"?"top":u);break}};return document.addEventListener("keydown",x),()=>document.removeEventListener("keydown",x)},[u,e,t,n,r,s,i]);const g=()=>{const x=(k,S=0)=>{const w=k.children.length>0,$=k.type==="folder",b=u===k.id,P=Q=>{Q.stopPropagation(),f(k.id),$?r?.(k.id):s&&s(k)},C=Q=>{Q.stopPropagation(),r?.(k.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:`${S*10+8}px`},onClick:P,tabIndex:0,role:"treeitem","aria-expanded":$?k.isExpanded:void 0,"aria-level":S+1,onFocus:()=>f(k.id),children:[$&&w&&d.jsx("button",{className:`nav-expander ${k.isExpanded?"nav-expander--expanded":""}`,onClick:C,"aria-label":k.isExpanded?"Collapse":"Expand",children:d.jsx("span",{className:"nav-expander-icon",children:"▶"})}),(!$||!w)&&d.jsx("span",{className:"nav-expander nav-expander--placeholder"}),d.jsx("span",{className:"nav-node-icon",children:k.icon}),d.jsxs("span",{className:"nav-node-label",children:[L_(k.label,o),k.element?.tags?.includes("globals.tags.system")&&d.jsx("span",{className:"system-label",children:"SYS"})]}),k.count!==void 0&&d.jsx("span",{className:"nav-node-count",children:k.count})]}),$&&k.isExpanded&&w&&d.jsx("div",{className:"nav-children",role:"group",children:k.children.map(Q=>x(Q,S+1))})]},k.id)};return d.jsx("div",{className:"nav-tree-container",role:"tree","aria-label":"Documentation tree",children:e.map(k=>x(k))})},O=()=>{const x=(k,S)=>{S.preventDefault(),S.stopPropagation(),f(k),i&&i(k==="home"?"top":k)};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:k=>x("home",k),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(k=>d.jsx("li",{children:d.jsxs("a",{href:`#${k.id}`,className:`nav-link ${u===k.id?"nav-link--focused":""}`,onClick:S=>x(k.id,S),onFocus:()=>f(k.id),tabIndex:0,role:"listitem",children:[d.jsxs("div",{className:"nav-content",children:[d.jsx("span",{className:"icon",children:k.icon}),d.jsx("span",{className:"text",children:k.label})]}),k.count!==null&&d.jsx("span",{className:"nav-badge",children:k.count})]})},k.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 L_(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 I_(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 C0=({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})]}),Z_=({content:n,children:e,position:t="top",delay:s=300,className:i=""})=>{const[r,o]=F.useState(!1),[c,u]=F.useState({x:0,y:0}),f=F.useRef(null),p=F.useRef(null),g=F.useRef(null),O=()=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{if(g.current){const k=g.current.getBoundingClientRect();u({x:k.left+k.width/2,y:k.top}),o(!0)}},s)},x=()=>{f.current&&clearTimeout(f.current),o(!1)};return F.useEffect(()=>()=>{f.current&&clearTimeout(f.current)},[]),F.useEffect(()=>{if(r&&p.current&&g.current){const k=g.current.getBoundingClientRect(),S=p.current.getBoundingClientRect();let w=c.x,$=c.y;switch(t){case"top":w=c.x-S.width/2,$=k.top-S.height-8;break;case"bottom":w=c.x-S.width/2,$=k.bottom+8;break;case"left":w=k.left-S.width-8,$=c.y-S.height/2;break;case"right":w=k.right+8,$=c.y-S.height/2;break}const b=8;w=Math.max(b,Math.min(w,window.innerWidth-S.width-b)),$=Math.max(b,Math.min($,window.innerHeight-S.height-b)),p.current.style.left=`${w}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:x,onFocus:O,onBlur:x,children:e}),r&&d.jsx("div",{ref:p,className:`docs-tooltip docs-tooltip--${t}`,role:"tooltip",children:n})]})},z_=({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:x,onViewModeChange:k,onTreeTypeChange:S,onNamespaceSearchChange:w,onShowSystemChange:$,onTreeNodeClick:b,onToggleExpansion:P,onSectionClick:C})=>d.jsxs("nav",{ref:e,className:"docs-sidebar",style:{width:`${n}px`,left:`${i}px`},children:[d.jsx(C0,{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(Z_,{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:Q=>w(Q.target.value),onKeyDown:Q=>Q.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:Q=>$(Q.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:()=>k("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:()=>k("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:()=>S("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:()=>S("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(D_,{mode:c,nodes:g,sections:O,onNodeClick:b,onSectionClick:C,onToggleExpansion:P,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:x}),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:"→"})]})]})]}),B_=n=>{if(!n)return"No schema defined";try{const e=JSON.parse(n);return JSON.stringify(e,null,2)}catch{return n}},F_=n=>{if(!n)return"No configuration";try{const e=JSON.parse(n);return JSON.stringify(e,null,2)}catch{return n}},an=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("/")},X_=n=>{switch(n.toLowerCase()){case"error":return"❌";case"warning":return"⚠️";case"info":return"ℹ️";default:return"📝"}},ye=n=>n.replace(/\./g," › "),V_=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=$0();function Tf(){return Tf=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},Tf.apply(null,arguments)}function q_(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 Nf=[],P0=[];(()=>{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?P0:Nf).push(t=t+n[e])})();function Y_(n){if(n<768)return!1;for(let e=0,t=Nf.length;;){let s=e+t>>1;if(n<Nf[s])t=s;else if(n>=P0[s])e=s+1;else return!0;if(e==t)return!1}}function Ev(n){return n>=127462&&n<=127487}const Av=8205;function U_(n,e,t=!0,s=!0){return(t?Q0:W_)(n,e,s)}function Q0(n,e,t){if(e==n.length)return e;e&&j0(n.charCodeAt(e))&&T0(n.charCodeAt(e-1))&&e--;let s=Yh(n,e);for(e+=Mv(s);e<n.length;){let i=Yh(n,e);if(s==Av||i==Av||t&&Y_(i))e+=Mv(i),s=i;else if(Ev(i)){let r=0,o=e-2;for(;o>=0&&Ev(Yh(n,o));)r++,o-=2;if(r%2==0)break;e+=2}else break}return e}function W_(n,e,t){for(;e>0;){let s=Q0(n,e-2,t);if(s<e)return s;e--}return 0}function Yh(n,e){let t=n.charCodeAt(e);if(!T0(t)||e+1==n.length)return t;let s=n.charCodeAt(e+1);return j0(s)?(t-55296<<10)+(s-56320)+65536:t}function j0(n){return n>=56320&&n<57344}function T0(n){return n>=55296&&n<56320}function Mv(n){return n<65536?1:2}class Fe{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]=rl(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),vs.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]=rl(this,e,t);let s=[];return this.decompose(e,t,s,0),vs.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 yo(this),r=new yo(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 yo(this,e)}iterRange(e,t=this.length){return new N0(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 E0(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]?Fe.empty:e.length<=32?new xt(e):vs.from(xt.split(e,[]))}}class xt extends Fe{constructor(e,t=G_(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 H_(i,c,s,o);i=c+1,s++}}decompose(e,t,s,i){let r=e<=0&&t>=this.length?this:new xt(Rv(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(i&1){let o=s.pop(),c=Bc(r.text,o.text.slice(),0,r.length);if(c.length<=32)s.push(new xt(c,o.length+r.length));else{let u=c.length>>1;s.push(new xt(c.slice(0,u)),new xt(c.slice(u)))}}else s.push(r)}replace(e,t,s){if(!(s instanceof xt))return super.replace(e,t,s);[e,t]=rl(this,e,t);let i=Bc(this.text,Bc(s.text,Rv(this.text,0,e)),t),r=this.length+s.length-(t-e);return i.length<=32?new xt(i,r):vs.from(xt.split(i,[]),r)}sliceString(e,t=this.length,s=`
41
+ `){[e,t]=rl(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 xt(s,i)),s=[],i=-1);return i>-1&&t.push(new xt(s,i)),t}}class vs extends Fe{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]=rl(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 vs(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=`
42
+ `){[e,t]=rl(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 vs))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 x of e)s+=x.lines;if(s<32){let x=[];for(let k of e)k.flatten(x);return new xt(x,t)}let i=Math.max(32,s>>5),r=i<<1,o=i>>1,c=[],u=0,f=-1,p=[];function g(x){let k;if(x.lines>r&&x instanceof vs)for(let S of x.children)g(S);else x.lines>o&&(u>o||!u)?(O(),c.push(x)):x instanceof xt&&u&&(k=p[p.length-1])instanceof xt&&x.lines+k.lines<=32?(u+=x.lines,f+=x.length+1,p[p.length-1]=new xt(k.text.concat(x.text),k.length+1+x.length)):(u+x.lines>i&&O(),u+=x.lines,f+=x.length+1,p.push(x))}function O(){u!=0&&(c.push(p.length==1?p[0]:vs.from(p,f)),f=-1,u=p.length=0)}for(let x of e)g(x);return O(),c.length==1?c[0]:new vs(c,t)}}Fe.empty=new xt([""],0);function G_(n){let e=-1;for(let t of n)e+=t.length+1;return e}function Bc(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 Rv(n,e,t){return Bc(n,[""],e,t)}class yo{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 xt?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 xt?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=`
43
+ `,this;e--}else if(i instanceof xt){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 xt?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 N0{constructor(e,t,s){this.value="",this.done=!1,this.cursor=new yo(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 E0{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"&&(Fe.prototype[Symbol.iterator]=function(){return this.iter()},yo.prototype[Symbol.iterator]=N0.prototype[Symbol.iterator]=E0.prototype[Symbol.iterator]=function(){return this});class H_{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 rl(n,e,t){return e=Math.max(0,Math.min(n.length,e)),[e,Math.max(e,Math.min(n.length,t))]}function qt(n,e,t=!0,s=!0){return U_(n,e,t,s)}function K_(n){return n>=56320&&n<57344}function J_(n){return n>=55296&&n<56320}function xn(n,e){let t=n.charCodeAt(e);if(!J_(t)||e+1==n.length)return t;let s=n.charCodeAt(e+1);return K_(s)?(t-55296<<10)+(s-56320)+65536:t}function Ip(n){return n<=65535?String.fromCharCode(n):(n-=65536,String.fromCharCode((n>>10)+55296,(n&1023)+56320))}function xs(n){return n<65536?1:2}const Ef=/\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 _s{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){Af(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 _s(e)}composeDesc(e){return this.empty?e:e.empty?this:A0(this,e)}mapDesc(e,t=!1){return e.empty?this:Mf(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 _s(e)}static create(e){return new _s(e)}}class Qt extends _s{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 Af(this,(t,s,i,r,o)=>e=e.replace(i,i+(s-t),o),!1),e}mapDesc(e,t=!1){return Mf(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(Fe.empty);s.push(o?e.slice(r,r+o):Fe.empty)}r+=o}return new Qt(t,s)}compose(e){return this.empty?e:e.empty?this:A0(this,e,!0)}map(e,t=!1){return e.empty?this:Mf(this,e,t,!0)}iterChanges(e,t=!1){Af(this,e,t)}get desc(){return _s.create(this.sections)}filter(e){let t=[],s=[],i=[],r=new No(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&&Si(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 Qt(t,s),filtered:_s.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 Qt(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 Qt){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:x}=p;if(g>O||g<0||O>t)throw new RangeError(`Invalid change range ${g} to ${O} (in doc of length ${t})`);let k=x?typeof x=="string"?Fe.of(x.split(s||Ef)):x:Fe.empty,S=k.length;if(g==O&&S==0)return;g<o&&u(),g>o&&Ht(i,g-o,-1),Ht(i,O-g,S),Si(r,i,k),o=O}}return f(e),u(!c),c}static empty(e){return new Qt(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(Fe.empty);s[i]=Fe.of(r.slice(1)),t.push(r[0],s[i].length)}}}return new Qt(t,s)}static createSet(e,t){return new Qt(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 Si(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(Fe.empty);n.push(t)}}function Af(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=Fe.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 Mf(n,e,t,s=!1){let i=[],r=s?[]:null,o=new No(n),c=new No(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&&Si(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&&Si(r,i,o.text),u=o.i,o.forward(o.len-p)}else{if(o.done&&c.done)return r?Qt.createSet(i,r):_s.create(i);throw new Error("Mismatched change set lengths")}}}function A0(n,e,t=!1){let s=[],i=t?[]:null,r=new No(n),o=new No(e);for(let c=!1;;){if(r.done&&o.done)return i?Qt.createSet(s,i):_s.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&&Si(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&&Si(i,s,o.text)}else o.ins==-1?(Ht(s,r.off?0:r.len,u,c),i&&Si(i,s,r.textBit(u))):(Ht(s,r.off?0:r.len,o.off?0:o.ins,c),i&&!o.off&&Si(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 No{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?Fe.empty:e[t]}textBit(e){let{inserted:t}=this.set,s=this.i-2>>1;return s>=t.length&&!e?Fe.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 Ki{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 Ki(s,i,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return re.range(e,t);let s=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return re.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 re.range(e.anchor,e.head)}static create(e,t,s){return new Ki(e,t,s)}}class re{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:re.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 re([this.main],0)}addRange(e,t=!0){return re.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let s=this.ranges.slice();return s[t]=e,re.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 re(e.ranges.map(t=>Ki.fromJSON(t)),e.main)}static single(e,t=e){return new re([re.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 re.normalized(e.slice(),t);s=r.to}return new re(e,t)}static cursor(e,t=0,s,i){return Ki.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?Ki.create(t,e,48|r):Ki.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?re.range(u,c):re.range(c,u))}}return new re(e,t)}}function M0(n,e){for(let t of n.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let Zp=0;class we{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 we(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 Fc([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Fc(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Fc(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 Fc{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)||Rf(g,p)){let x=s(g);if(c?!Dv(x,g.values[o],i):!i(x,g.values[o]))return g.values[o]=x,1}return 0},reconfigure:(g,O)=>{let x,k=O.config.address[r];if(k!=null){let S=lu(O,k);if(this.dependencies.every(w=>w instanceof we?O.facet(w)===g.facet(w):w instanceof Zt?O.field(w,!1)==g.field(w,!1):!0)||(c?Dv(x=s(g),S,i):i(x=s(g),S)))return g.values[o]=S,0}else x=s(g);return g.values[o]=x,1}}}}function Dv(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 Rf(n,e){let t=!1;for(let s of e)ko(n,s)&1&&(t=!0);return t}function e$(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(!Rf(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=Rf(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 x=c(u);return e.compare(x,O)?(u.values[o]=O,0):(u.values[o]=x,1)}}}const gc=we.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(gc).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(gc),o=i.facet(gc),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,gc.of({field:this,create:e})]}get extension(){return this}}const Gi={lowest:4,low:3,default:2,high:1,highest:0};function so(n){return e=>new R0(e,n)}const Ni={highest:so(Gi.highest),high:so(Gi.high),default:so(Gi.default),low:so(Gi.low),lowest:so(Gi.lowest)};class R0{constructor(e,t){this.inner=e,this.prec=t}}class Lu{of(e){return new Df(this,e)}reconfigure(e){return Lu.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Df{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 t$(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(x=>O.slot(x));let p=s?.config.facets;for(let O in r){let x=r[O],k=x[0].facet,S=p&&p[O]||[];if(x.every(w=>w.type==0))if(c[k.id]=u.length<<1|1,zp(S,x))u.push(s.facet(k));else{let w=k.combine(x.map($=>$.value));u.push(s&&k.compare(w,s.facet(k))?s.facet(k):w)}else{for(let w of x)w.type==0?(c[w.id]=u.length<<1|1,u.push(w.value)):(c[w.id]=f.length<<1,f.push($=>w.dynamicSlot($)));c[k.id]=f.length<<1,f.push(w=>e$(w,k,x))}}let g=f.map(O=>O(c));return new ru(e,o,g,c,u,r)}}function t$(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 Df&&t.delete(o.compartment)}if(i.set(o,c),Array.isArray(o))for(let f of o)r(f,c);else if(o instanceof Df){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 R0)r(o.inner,o.prec);else if(o instanceof Zt)s[c].push(o),o.provides&&r(o.provides,c);else if(o instanceof Fc)s[c].push(o),o.facet.extensions&&r(o.facet.extensions,Gi.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,Gi.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 D0=we.define(),Lf=we.define({combine:n=>n.some(e=>e),static:!0}),L0=we.define({combine:n=>n.length?n[0]:void 0,static:!0}),I0=we.define(),Z0=we.define(),z0=we.define(),B0=we.define({combine:n=>n.length?n[0]:!1});class Cs{constructor(e,t){this.type=e,this.value=t}static define(){return new n$}}class n${of(e){return new Cs(this,e)}}class s${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 s$(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 _t{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&&M0(s,t.newLength),r.some(c=>c.type==_t.time)||(this.annotations=r.concat(_t.time.of(Date.now())))}static create(e,t,s,i,r,o){return new _t(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(_t.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}_t.time=Cs.define();_t.userEvent=Cs.define();_t.addToHistory=Cs.define();_t.remote=Cs.define();function i$(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 F0(n,e,t){var s;let i,r,o;return t?(i=e.changes,r=Qt.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 If(n,e,t){let s=e.selection,i=Jr(e.annotations);return e.userEvent&&(i=i.concat(_t.userEvent.of(e.userEvent))),{changes:e.changes instanceof Qt?e.changes:Qt.of(e.changes||[],t,n.facet(L0)),selection:s&&(s instanceof re?s:re.single(s.anchor,s.head)),effects:Jr(e.effects),annotations:i,scrollIntoView:!!e.scrollIntoView}}function X0(n,e,t){let s=If(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=F0(s,If(n,e[r],o?s.changes.newLength:n.doc.length),o)}let i=_t.create(n,s.changes,s.selection,s.effects,s.annotations,s.scrollIntoView);return l$(t?r$(i):i)}function r$(n){let e=n.startState,t=!0;for(let i of e.facet(I0)){let r=i(n);if(r===!1){t=!1;break}Array.isArray(r)&&(t=t===!0?r:i$(t,r))}if(t!==!0){let i,r;if(t===!1)r=n.changes.invertedDesc,i=Qt.empty(e.doc.length);else{let o=n.changes.filter(t);i=o.changes,r=o.filtered.mapDesc(o.changes).invertedDesc}n=_t.create(e,i,n.selection&&n.selection.map(r),Me.mapEffects(n.effects,r),n.annotations,n.scrollIntoView)}let s=e.facet(Z0);for(let i=s.length-1;i>=0;i--){let r=s[i](n);r instanceof _t?n=r:Array.isArray(r)&&r.length==1&&r[0]instanceof _t?n=r[0]:n=X0(e,Jr(r),!1)}return n}function l$(n){let e=n.startState,t=e.facet(z0),s=n;for(let i=t.length-1;i>=0;i--){let r=t[i](n);r&&Object.keys(r).length&&(s=F0(s,If(e,r,n.changes.newLength),!0))}return s==n?n:_t.create(e,n.changes,n.selection,s.effects,s.annotations,s.scrollIntoView)}const o$=[];function Jr(n){return n==null?o$: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 a$=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let Zf;try{Zf=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function c$(n){if(Zf)return Zf.test(n);for(let e=0;e<n.length;e++){let t=n[e];if(/\w/.test(t)||t>"€"&&(t.toUpperCase()!=t.toLowerCase()||a$.test(t)))return!0}return!1}function u$(n){return e=>{if(!/\S/.test(e))return ut.Space;if(c$(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 X0(this,e,!0)}applyTransaction(e){let t=this.config,{base:s,compartments:i}=t;for(let c of e.effects)c.is(Lu.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=Jr(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(Lf)?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:re.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=Jr(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(Jr(u.effects),g))}return{changes:i,selection:re.create(r,t.mainIndex),effects:o}}changes(e=[]){return e instanceof Qt?e:Qt.of(e,this.doc.length,this.facet(ze.lineSeparator))}toText(e){return Fe.of(e.split(this.facet(ze.lineSeparator)||Ef))}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:re.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 Fe?e.doc:Fe.of((e.doc||"").split(t.staticFacet(ze.lineSeparator)||Ef)),i=e.selection?e.selection instanceof re?e.selection:re.single(e.selection.anchor,e.selection.head):re.single(0);return M0(i,s.length),t.staticFacet(Lf)||(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)||`
44
+ `}get readOnly(){return this.facet(B0)}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(D0))for(let o of r(this,t,s))Object.prototype.hasOwnProperty.call(o,e)&&i.push(o[e]);return i}charCategorizer(e){return u$(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=qt(t,o,!1);if(r(t.slice(u,o))!=ut.Word)break;o=u}for(;c<i;){let u=qt(t,c);if(r(t.slice(c,u))!=ut.Word)break;c=u}return o==c?null:re.range(o+s,c+s)}}ze.allowMultipleSelections=Lf;ze.tabSize=we.define({combine:n=>n.length?n[0]:4});ze.lineSeparator=L0;ze.readOnly=B0;ze.phrases=we.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=D0;ze.changeFilter=I0;ze.transactionFilter=Z0;ze.transactionExtender=z0;Lu.reconfigure=Me.define();function Ps(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 lr{eq(e){return this==e}range(e,t=e){return zf.create(e,t,this)}}lr.prototype.startSide=lr.prototype.endSide=0;lr.prototype.point=!1;lr.prototype.mapMode=Vt.TrackDel;let zf=class V0{constructor(e,t,s){this.from=e,this.to=t,this.value=s}static create(e,t,s){return new V0(e,t,s)}};function Bf(n,e){return n.from-e.from||n.value.startSide-e.value.startSide}class Bp{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,x;if(p==g){let k=t.mapPos(p,f.startSide,f.mapMode);if(k==null||(O=x=k,f.startSide!=f.endSide&&(x=t.mapPos(p,f.endSide),x<O)))continue}else if(O=t.mapPos(p,f.startSide),x=t.mapPos(g,f.endSide),O>x||O==x&&f.startSide>0&&f.endSide<=0)continue;(x-O||f.endSide-f.startSide)<0||(o<0&&(o=O),f.point&&(c=Math.max(c,x-O)),s.push(f),i.push(O-o),r.push(x-o))}return{mapped:s.length?new Bp(i,r,s,c):null,pos:o}}}class Ye{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 Ye(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(Bf)),this.isEmpty)return t.length?Ye.of(t):this;let c=new q0(this,null,-1).goto(0),u=0,f=[],p=new Us;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(zf.create(c.from,c.to,c.value))),c.next());return p.finishInner(this.nextLayer.isEmpty&&!f.length?Ye.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 Ye(s,t,r||Ye.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 Eo.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Eo.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=Lv(o,c,s),f=new io(o,u,r),p=new io(c,u,r);s.iterGaps((g,O,x)=>Iv(f,g,p,O,x,i)),s.empty&&s.length==0&&Iv(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=Lv(r,o),u=new io(r,c,0).goto(s),f=new io(o,c,0).goto(s);for(;;){if(u.to!=f.to||!Ff(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 io(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 Us;for(let i of e instanceof zf?[e]:t?d$(e):e)s.add(i.from,i.to,i.value);return s.finish()}static join(e){if(!e.length)return Ye.empty;let t=e[e.length-1];for(let s=e.length-2;s>=0;s--)for(let i=e[s];i!=Ye.empty;i=i.nextLayer)t=new Ye(i.chunkPos,i.chunk,t,Math.max(i.maxPoint,t.maxPoint));return t}}Ye.empty=new Ye([],[],null,-1);function d$(n){if(n.length>1)for(let e=n[0],t=1;t<n.length;t++){let s=n[t];if(Bf(e,s)>0)return n.slice().sort(Bf);e=s}return n}Ye.empty.nextLayer=Ye.empty;class Us{finishChunk(e){this.chunks.push(new Bp(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 Us)).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(Ye.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=Ye.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function Lv(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 q0{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 Eo{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 q0(o,t,s,r));return i.length==1?i[0]:new Eo(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--)Uh(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--)Uh(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(),Uh(this.heap,0)}}}function Uh(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 io{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=Eo.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){Oc(this.active,e),Oc(this.activeTo,e),Oc(this.activeRank,e),this.minActive=Zv(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++;vc(this.active,t,s),vc(this.activeTo,t,i),vc(this.activeRank,t,r),e&&vc(e,t,this.cursor.from),this.minActive=Zv(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&&Oc(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 Iv(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))&&Ff(n.activeForPoint(n.to),t.activeForPoint(t.to))||r.comparePoint(c,O,n.point,t.point):O>c&&!Ff(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 Ff(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 Oc(n,e){for(let t=e,s=n.length-1;t<s;t++)n[t]=n[t+1];n.pop()}function vc(n,e,t){for(let s=n.length-1;s>=e;s--)n[s+1]=n[s];n[e]=t}function Zv(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 fl(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=qt(n,i));return s}function Xf(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=qt(n,i)}return s===!0?-1:n.length}const Vf="ͼ",zv=typeof Symbol>"u"?"__"+Vf:Symbol.for(Vf),qf=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),Bv=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 x in c){let k=c[x];if(/&/.test(x))r(x.split(/,\s*/).map(S=>o.map(w=>S.replace(/&/,w))).reduce((S,w)=>S.concat(w)),k,u);else if(k&&typeof k=="object"){if(!g)throw new RangeError("The value of a property ("+x+") should be a primitive value.");r(i(x),k,p,O)}else k!=null&&p.push(x.replace(/_.*/,"").replace(/[A-Z]/g,S=>"-"+S.toLowerCase())+": "+k+";")}(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(`
45
+ `)}static newName(){let e=Bv[zv]||1;return Bv[zv]=e+1,Vf+e.toString(36)}static mount(e,t,s){let i=e[qf],r=s&&s.nonce;i?r&&i.setNonce(r):i=new h$(e,r),i.mount(Array.isArray(t)?t:[t],e)}}let Fv=new Map;class h${constructor(e,t){let s=e.ownerDocument||e,i=s.defaultView;if(!e.head&&e.adoptedStyleSheets&&i.CSSStyleSheet){let r=Fv.get(s);if(r)return e[qf]=r;this.sheet=new i.CSSStyleSheet,Fv.set(s,this)}else this.styleTag=s.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[qf]=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()+`
46
+ `;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 Pi={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:"'"},Ao={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},f$=typeof navigator<"u"&&/Mac/.test(navigator.platform),p$=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Xt=0;Xt<10;Xt++)Pi[48+Xt]=Pi[96+Xt]=String(Xt);for(var Xt=1;Xt<=24;Xt++)Pi[Xt+111]="F"+Xt;for(var Xt=65;Xt<=90;Xt++)Pi[Xt]=String.fromCharCode(Xt+32),Ao[Xt]=String.fromCharCode(Xt);for(var Wh in Pi)Ao.hasOwnProperty(Wh)||(Ao[Wh]=Pi[Wh]);function m$(n){var e=f$&&n.metaKey&&n.shiftKey&&!n.ctrlKey&&!n.altKey||p$&&n.shiftKey&&n.key&&n.key.length==1||n.key=="Unidentified",t=!e&&n.key||(n.shiftKey?Ao:Pi)[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 et(){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++)Y0(n,arguments[e]);return n}function Y0(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++)Y0(n,e[t]);else throw new RangeError("Unsupported child node: "+e)}function Mo(n){let e;return n.nodeType==11?e=n.getSelection?n:n.ownerDocument:e=n,e.getSelection()}function Yf(n,e){return e?n==e||n.contains(e.nodeType!=1?e.parentNode:e):!1}function Xc(n,e){if(!e.anchorNode)return!1;try{return Yf(n,e.anchorNode)}catch{return!1}}function ll(n){return n.nodeType==3?ar(n,0,n.nodeValue.length).getClientRects():n.nodeType==1?n.getClientRects():[]}function So(n,e,t,s){return t?Xv(n,e,t,s,-1)||Xv(n,e,t,s,1):!1}function or(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 Xv(n,e,t,s,i){for(;;){if(n==t&&e==s)return!0;if(e==(i<0?0:$s(n))){if(n.nodeName=="DIV")return!1;let r=n.parentNode;if(!r||r.nodeType!=1)return!1;e=or(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?$s(n):0}else return!1}}function $s(n){return n.nodeType==3?n.nodeValue.length:n.childNodes.length}function Uo(n,e){let t=e?n.left:n.right;return{left:t,right:t,top:n.top,bottom:n.bottom}}function g$(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 U0(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 O$(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,x=p==u.body,k=1,S=1;if(x)O=g$(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:k,scaleY:S}=U0(p,b)),O={left:b.left,right:b.left+p.clientWidth*k,top:b.top,bottom:b.top+p.clientHeight*S}}let w=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,P=O.bottom-O.top;$=(i=="center"&&b<=P?e.top+b/2-P/2:i=="start"||i=="center"&&t<0?e.top-o:e.bottom-P+o)-O.top}if(s=="nearest"?e.left<O.left?(w=e.left-(O.left+r),t>0&&e.right>O.right+w&&(w=e.right-O.right+r)):e.right>O.right&&(w=e.right-O.right+r,t<0&&e.left<O.left+w&&(w=e.left-(O.left+r))):w=(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,w||$)if(x)f.scrollBy(w,$);else{let b=0,P=0;if($){let C=p.scrollTop;p.scrollTop+=$/S,P=(p.scrollTop-C)*S}if(w){let C=p.scrollLeft;p.scrollLeft+=w/k,b=(p.scrollLeft-C)*k}e={left:e.left-b,top:e.top-P,right:e.right-b,bottom:e.bottom-P},b&&Math.abs(b-w)<1&&(s="nearest"),P&&Math.abs(P-$)<1&&(i="nearest")}if(x)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 v$(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 x${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?$s(t):0),s,Math.min(e.focusOffset,s?$s(s):0))}set(e,t,s,i){this.anchorNode=e,this.anchorOffset=t,this.focusNode=s,this.focusOffset=i}}let Vr=null;function W0(n){if(n.setActive)return n.setActive();if(Vr)return n.focus(Vr);let e=[];for(let t=n;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(n.focus(Vr==null?{get preventScroll(){return Vr={preventScroll:!0},!0}}:void 0),!Vr){Vr=!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 Vv;function ar(n,e,t=e){let s=Vv||(Vv=document.createRange());return s.setEnd(n,t),s.setStart(n,e),s}function el(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 y$(n){for(;n;){if(n&&(n.nodeType==9||n.nodeType==11&&n.host))return n;n=n.assignedSlot||n.parentNode}return null}function G0(n){for(;n.attributes.length;)n.removeAttributeNode(n.attributes[0])}function k$(n,e){let t=e.focusNode,s=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=s)return!1;for(s=Math.min(s,$s(t));;)if(s){if(t.nodeType!=1)return!1;let i=t.childNodes[s-1];i.contentEditable=="false"?s--:(t=i,s=$s(t))}else{if(t==n)return!0;s=or(t),t=t.parentNode}}function H0(n){return n.scrollTop>Math.max(1,n.scrollHeight-n.clientHeight-4)}function K0(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=$s(t)}else if(t.parentNode&&!ou(t))s=or(t),t=t.parentNode;else return null}}function J0(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=or(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,or(e),t)}static after(e,t){return new Kt(e.parentNode,or(e)+1,t)}}const Fp=[];class nt{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=nt.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=qv(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=qv(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=$s(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&&!nt.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=Fp){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 ek(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}}nt.prototype.breakAfter=0;function qv(n){let e=n.nextSibling;return n.parentNode.removeChild(n),e}class ek{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 tk(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 x=f[s];x&&(i<x.length||x.breakAfter&&g?.breakAfter)?(e==s&&(x=x.split(i),i=0),!O&&g&&x.merge(0,i,g,!0,0,u)?r[r.length-1]=x:((i||x.children.length&&!x.children[0].length)&&x.merge(0,i,null,!1,0,u),r.push(x))):x?.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 nk(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,tk(n,f,p,c,u,s,0,i,r)}let yn=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},Uf=typeof document<"u"?document:{documentElement:{style:{}}};const Wf=/Edge\/(\d+)/.exec(yn.userAgent),sk=/MSIE \d/.test(yn.userAgent),Gf=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(yn.userAgent),Iu=!!(sk||Gf||Wf),Yv=!Iu&&/gecko\/(\d+)/i.test(yn.userAgent),Gh=!Iu&&/Chrome\/(\d+)/.exec(yn.userAgent),S$="webkitFontSmoothing"in Uf.documentElement.style,ik=!Iu&&/Apple Computer/.test(yn.vendor),Uv=ik&&(/Mobile\/\w+/.test(yn.userAgent)||yn.maxTouchPoints>2);var Se={mac:Uv||/Mac/.test(yn.platform),windows:/Win/.test(yn.platform),linux:/Linux|X11/.test(yn.platform),ie:Iu,ie_version:sk?Uf.documentMode||6:Gf?+Gf[1]:Wf?+Wf[1]:0,gecko:Yv,gecko_version:Yv?+(/Firefox\/(\d+)/.exec(yn.userAgent)||[0,0])[1]:0,chrome:!!Gh,chrome_version:Gh?+Gh[1]:0,ios:Uv,android:/Android\b/.test(yn.userAgent),safari:ik,webkit_version:S$?+(/\bAppleWebKit\/(\d+)/.exec(yn.userAgent)||[0,0])[1]:0,tabSize:Uf.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};const w$=256;class ss extends nt{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 ss)||this.length-(t-e)+s.length>w$||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 ss(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 b$(this.dom,e,t)}}class Ws extends nt{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(G0(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 Ws&&s.mark.eq(this.mark))||e&&r<=0||t<this.length&&o<=0)?!1:(nk(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 Ws(this.mark,t,o)}domAtPos(e){return rk(this,e)}coordsAt(e,t){return ok(this,e,t)}}function b$(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?Se.chrome||Se.gecko||(e?(i--,o=1):r<s&&(r++,o=-1)):t<0?i--:r<s&&r++;let c=ar(n,i,r).getClientRects();if(!c.length)return null;let u=c[(o?o<0:t>=0)?0:c.length-1];return Se.safari&&!o&&u.width==0&&(u=Array.prototype.find.call(c,f=>f.width)||u),o?Uo(u,o<0):u||null}class wi extends nt{static create(e,t,s){return new wi(e,t,s)}constructor(e,t,s){super(),this.widget=e,this.length=t,this.side=s,this.prevWidget=null}split(e){let t=wi.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 wi)||!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 wi&&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 Fe.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):Fe.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 Uo(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 ol extends nt{constructor(e){super(),this.side=e}get length(){return 0}merge(){return!1}become(e){return e instanceof ol&&e.side==this.side}split(){return new ol(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 Fe.empty}get isHidden(){return!0}}ss.prototype.children=wi.prototype.children=ol.prototype.children=Fp;function rk(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 lk(n,e,t){let s,{children:i}=n;t>0&&e instanceof Ws&&i.length&&(s=i[i.length-1])instanceof Ws&&s.mark.eq(e.mark)?lk(s,e.children[0],t-1):(i.push(e),e.setParent(n)),n.length+=e.length}function ok(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 x=f.children[g],k=O+x.length;k>=p&&(x.children.length?c(x,p-O):(!r||r.isHidden&&(t>0||$$(r,x)))&&(k>p||O==k&&x.getSide()>0)?(r=x,o=p-O):(O<p||O==k&&x.getSide()<0&&!x.isHidden)&&(s=x,i=p-O)),O=k}}c(n,e);let u=(t<0?s:r)||s||r;return u?u.coordsAt(Math.max(0,u==s?i:o),t):_$(n)}function _$(n){let e=n.dom.lastChild;if(!e)return n.dom.getBoundingClientRect();let t=ll(e);return t[t.length-1]||null}function $$(n,e){let t=n.coordsAt(0,1),s=e.coordsAt(0,1);return t&&s&&s.top<t.bottom}function Hf(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 Wv=Object.create(null);function au(n,e,t){if(n==e)return!0;n||(n=Wv),e||(e=Wv);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 Kf(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 C$(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 Qs{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 ln=(function(n){return n[n.Text=0]="Text",n[n.WidgetBefore=1]="WidgetBefore",n[n.WidgetAfter=2]="WidgetAfter",n[n.WidgetRange=3]="WidgetRange",n})(ln||(ln={}));class Qe extends lr{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 Wo(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 Qi(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}=ak(e,t);s=(r?t?-3e8:-1:5e8)-1,i=(o?t?2e8:1:-6e8)+1}return new Qi(e,s,i,t,e.widget||null,!0)}static line(e){return new Go(e)}static set(e,t=!1){return Ye.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}Qe.none=Ye.empty;class Wo extends Qe{constructor(e){let{start:t,end:s}=ak(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 Wo&&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)}}Wo.prototype.point=!1;class Go extends Qe{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof Go&&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)}}Go.prototype.mapMode=Vt.TrackBefore;Go.prototype.point=!0;class Qi extends Qe{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?ln.WidgetRange:this.startSide<=0?ln.WidgetBefore:ln.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof Qi&&P$(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)}}Qi.prototype.point=!0;function ak(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 P$(n,e){return n==e||!!(n&&e&&n.compare(e))}function Vc(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 wt extends nt{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 wt))return!1;this.dom||s.transferDOM(this)}return i&&this.setDeco(s?s.attrs:null),nk(this,e,t,s?s.children.slice():[],r,o),!0}split(e){let t=new wt;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){lk(this,e,t)}addLineDeco(e){let t=e.spec.attributes,s=e.spec.class;t&&(this.attrs=Hf(t,this.attrs||{})),s&&(this.attrs=Hf({class:s},this.attrs||{}))}domAtPos(e){return rk(this,e)}reuseDOM(e){e.nodeName=="DIV"&&(this.setDOM(e),this.flags|=6)}sync(e,t){var s;this.dom?this.flags&4&&(G0(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&&(Kf(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&&nt.get(i)instanceof Ws;)i=i.lastChild;if(!i||!this.length||i.nodeName!="BR"&&((s=nt.get(i))===null||s===void 0?void 0:s.isEditable)==!1&&(!Se.ios||!this.children.some(r=>r instanceof ss))){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 ss)||/[^ -~]/.test(s.text))return null;let i=ll(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=ok(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 wt&&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 wt)return r;if(o>t)break}i=o+r.breakAfter}return null}}class Ys extends nt{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 Ys)||!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 Ys(this.widget,t,this.deco);return s.breakAfter=this.breakAfter,s}get children(){return Fp}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):Fe.empty}domBoundsAround(){return null}become(e){return e instanceof Ys&&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 Jf?null:Uo(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 Jf extends Qs{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 wo{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 Ys&&e.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new wt),this.atCursorPos=!0),this.curLine}flushBuffer(e=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(xc(new ol(-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 Ys)&&this.getLine()}buildText(e,t,s){for(;e>0;){if(this.textOff==this.text.length){let{value:r,lineBreak:o,done:c}=this.cursor.next(this.skip);if(this.skip=0,c)throw new Error("Ran out of text content when drawing inline views");if(o){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=r,this.textOff=0}let i=Math.min(this.text.length-this.textOff,e,512);this.flushBuffer(t.slice(t.length-s)),this.getLine().append(xc(new ss(this.text.slice(this.textOff,this.textOff+i)),t),s),this.atCursorPos=!0,this.textOff+=i,e-=i,s=0}}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 Qi){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 Qi)if(s.block)s.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new Ys(s.widget||al.block,c,s));else{let u=wi.create(s.widget||al.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(xc(new ol(1),i),r),r=i.length+Math.max(0,r-i.length)),g.append(xc(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 wo(e,t,s,r);return o.openEnd=Ye.spans(i,t,s,o),o.openStart<0&&(o.openStart=o.openEnd),o.finish(o.openEnd),o}}function xc(n,e){for(let t of e)n=new Ws(t,[n],n.length);return n}class al extends Qs{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}}al.inline=new al("span");al.block=new al("div");var ot=(function(n){return n[n.LTR=0]="LTR",n[n.RTL=1]="RTL",n})(ot||(ot={}));const cr=ot.LTR,Xp=ot.RTL;function ck(n){let e=[];for(let t=0;t<n.length;t++)e.push(1<<+n[t]);return e}const Q$=ck("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),j$=ck("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),ep=Object.create(null),hs=[];for(let n of["()","[]","{}"]){let e=n.charCodeAt(0),t=n.charCodeAt(1);ep[e]=t,ep[t]=-e}function uk(n){return n<=247?Q$[n]:1424<=n&&n<=1524?2:1536<=n&&n<=1785?j$[n-1536]:1774<=n&&n<=2220?4:8192<=n&&n<=8204?256:64336<=n&&n<=65023?4:1}const T$=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class bi{get dir(){return this.level%2?Xp:cr}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 dk(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||!dk(s.inner,i.inner))return!1}return!0}const tt=[];function N$(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=uk(n.charCodeAt(f));O==512?O=p:O==8&&g==4&&(O=16),tt[f]=O==4?2:O,O&7&&(g=O),p=O}for(let f=o,p=u,g=u;f<c;f++){let O=tt[f];if(O==128)f<c-1&&p==tt[f+1]&&p&24?O=tt[f]=p:tt[f]=256;else if(O==64){let x=f+1;for(;x<c&&tt[x]==64;)x++;let k=f&&p==8||x<t&&tt[x]==8?g==1?1:8:256;for(let S=f;S<x;S++)tt[S]=k;f=x-1}else O==8&&g==1&&(tt[f]=1);p=O,O&7&&(g=O)}}}function E$(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,x,k;g<p;g++)if(x=ep[O=n.charCodeAt(g)])if(x<0){for(let S=c-3;S>=0;S-=3)if(hs[S+1]==-x){let w=hs[S+2],$=w&2?i:w&4?w&1?r:i:0;$&&(tt[g]=tt[hs[S]]=$),c=S;break}}else{if(hs.length==189)break;hs[c++]=g,hs[c++]=O,hs[c++]=u}else if((k=tt[g])==2||k==1){let S=k==i;u=S?0:1;for(let w=c-3;w>=0;w-=3){let $=hs[w+2];if($&2)break;if(S)hs[w+2]|=2;else{if($&4)break;hs[w+2]|=4}}}}}function A$(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=tt[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(tt[p]==256)p++;else break;let g=r==1,O=(p<e?tt[p]:s)==1,x=g==O?g?1:2:s;for(let k=p,S=i,w=S?t[S-1].to:n;k>u;)k==w&&(k=t[--S].from,w=S?t[S-1].to:n),tt[--k]=x;u=p}else r=f,u++}}}function tp(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 S=tt[u];S!=c&&(p=!1,g=S==16)}let O=!p&&c==1?[]:null,x=p?s:s+1,k=u;e:for(;;)if(f<r.length&&k==r[f].from){if(g)break e;let S=r[f];if(!p)for(let w=S.to,$=f+1;;){if(w==t)break e;if($<r.length&&r[$].from==w)w=r[$++].to;else{if(tt[w]==c)break e;break}}if(f++,O)O.push(S);else{S.from>u&&o.push(new bi(u,S.from,x));let w=S.direction==cr!=!(x%2);np(n,w?s+1:s,i,S.inner,S.from,S.to,o),u=S.to}k=S.to}else{if(k==t||(p?tt[k]!=c:tt[k]==c))break;k++}O?tp(n,u,k,s+1,i,O,o):u<k&&o.push(new bi(u,k,x)),u=k}else for(let u=t,f=r.length;u>e;){let p=!0,g=!1;if(!f||u>r[f-1].to){let S=tt[u-1];S!=c&&(p=!1,g=S==16)}let O=!p&&c==1?[]:null,x=p?s:s+1,k=u;e:for(;;)if(f&&k==r[f-1].to){if(g)break e;let S=r[--f];if(!p)for(let w=S.from,$=f;;){if(w==e)break e;if($&&r[$-1].to==w)w=r[--$].from;else{if(tt[w-1]==c)break e;break}}if(O)O.push(S);else{S.to<u&&o.push(new bi(S.to,u,x));let w=S.direction==cr!=!(x%2);np(n,w?s+1:s,i,S.inner,S.from,S.to,o),u=S.from}k=S.from}else{if(k==e||(p?tt[k-1]!=c:tt[k-1]==c))break;k--}O?tp(n,k,u,s+1,i,O,o):k<u&&o.push(new bi(k,u,x)),u=k}}function np(n,e,t,s,i,r,o){let c=e%2?2:1;N$(n,i,r,s,c),E$(n,i,r,s,c),A$(i,r,s,c),tp(n,i,r,e,t,s,o)}function M$(n,e,t){if(!n)return[new bi(0,0,e==Xp?1:0)];if(e==cr&&!t.length&&!T$.test(n))return hk(n.length);if(t.length)for(;n.length>tt.length;)tt[tt.length]=256;let s=[],i=e==cr?0:1;return np(n,i,i,t,0,n.length,s),s}function hk(n){return[new bi(0,n,0)]}let fk="";function R$(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=qt(n.text,o,u.forward(i,t));(p<u.from||p>u.to)&&(p=f),fk=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?re.cursor(g.side(!i,t)+n.from,g.forward(i,t)?1:-1,g.level):re.cursor(p+n.from,u.forward(i,t)?-1:1,u.level)}function D$(n,e,t){for(let s=e;s<t;s++){let i=uk(n.charCodeAt(s));if(i==1)return cr;if(i==2||i==4)return Xp}return cr}const pk=we.define(),mk=we.define(),gk=we.define(),Ok=we.define(),sp=we.define(),vk=we.define(),xk=we.define(),Vp=we.define(),qp=we.define(),yk=we.define({combine:n=>n.some(e=>e)}),kk=we.define({combine:n=>n.some(e=>e)}),Sk=we.define();class tl{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 tl(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 tl(re.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const yc=Me.define({map:(n,e)=>n.map(e)}),wk=Me.define();function Sn(n,e,t){let s=n.facet(Ok);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 Xs=we.define({combine:n=>n.length?n[0]:!0});let L$=0;const Wr=we.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(Wr.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(Wr.of({plugin:this,arg:e}))}static define(e,t){const{eventHandlers:s,eventObservers:i,provide:r,decorations:o}=t||{};return new mt(L$++,e,s,i,c=>{let u=[];return o&&u.push(Ro.of(f=>{let p=f.plugin(c);return p?o(p):Qe.none})),r&&u.push(r(c)),u})}static fromClass(e,t){return mt.define((s,i)=>new e(s,i),t)}}class Hh{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(Sn(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){Sn(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){Sn(e.state,s,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const bk=we.define(),Yp=we.define(),Ro=we.define(),_k=we.define(),Zu=we.define(),$k=we.define();function Gv(n,e){let t=n.state.facet($k);if(!t.length)return t;let s=t.map(r=>r instanceof Function?r(n):r),i=[];return Ye.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 x=c[O].spec.bidiIsolate,k;if(x==null&&(x=D$(e.text,f,p)),u>0&&g.length&&(k=g[g.length-1]).to==f&&k.direction==x)k.to=p,g=k.inner;else{let S={from:f,to:p,direction:x,inner:[]};g.push(S),g=S.inner}}}}),i}const Ck=we.define();function Up(n){let e=0,t=0,s=0,i=0;for(let r of n.state.facet(Ck)){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=we.define();class Fn{constructor(e,t,s,i){this.fromA=e,this.toA=t,this.fromB=s,this.toB=i}join(e){return new Fn(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],x=Math.max(c,g),k=Math.min(p,O);if(x<=k&&new Fn(x+f,k+f,x,k).addToSet(s),O>p)break;r+=2}if(!u)return s;new Fn(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=Qt.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 Fn(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 Hv extends nt{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=Qe.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.setDOM(e.contentDOM),this.children=[new wt],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new Fn(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:!V$(e.changes,this.hasComposition)&&!e.selectionSet&&(i=e.state.selection.main.head));let r=i>-1?Z$(this.view,e.changes,i):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:f,to:p}=this.hasComposition;s=new Fn(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,(Se.ie||Se.chrome)&&!r&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,c=this.updateDeco(),u=F$(o,c,e.changes);return s=Fn.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=Se.chrome||Se.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 Ys&&o.widget instanceof Jf&&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,x,k,S;if(s&&s.range.fromB<g&&s.range.toB>p){let C=wo.build(this.view.state.doc,p,s.range.fromB,this.decorations,this.dynamicDecorationMap),Q=wo.build(this.view.state.doc,s.range.toB,g,this.decorations,this.dynamicDecorationMap);x=C.breakAtStart,k=C.openStart,S=Q.openEnd;let N=this.compositionView(s);Q.breakAtStart?N.breakAfter=1:Q.content.length&&N.merge(N.length,N.length,Q.content[0],!1,Q.openStart,0)&&(N.breakAfter=Q.content[0].breakAfter,Q.content.shift()),C.content.length&&N.merge(0,0,C.content[C.content.length-1],!0,0,C.openEnd)&&C.content.pop(),O=C.content.concat(N).concat(Q.content)}else({content:O,breakAtStart:x,openStart:k,openEnd:S}=wo.build(this.view.state.doc,p,g,this.decorations,this.dynamicDecorationMap));let{i:w,off:$}=r.findPos(f,1),{i:b,off:P}=r.findPos(u,-1);tk(this,b,P,w,$,O,x,k,S)}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(wk)&&(this.editContextFormatting=s.value)}compositionView(e){let t=new ss(e.text.nodeValue);t.flags|=8;for(let{deco:i}of e.marks)t=new Ws(i,[t],t.length);let s=new wt;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=nt.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(Xs)||this.dom.tabIndex>-1)&&Xc(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(Se.gecko&&c.empty&&!this.hasComposition&&I$(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(()=>{Se.android&&Se.chrome&&this.dom.contains(p.focusNode)&&X$(p.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let g=Mo(this.view.root);if(g)if(c.empty){if(Se.gecko){let O=z$(u.node,u.offset);if(O&&O!=3){let x=(O==1?K0:J0)(u.node,u.offset);x&&(u=new Kt(x.node,x.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=Mo(e.root),{anchorNode:i,anchorOffset:r}=e.observer.selectionRange;if(!s||!t.empty||!t.assoc||!s.modify)return;let o=wt.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=nt.get(t.childNodes[i]);r instanceof wt&&(s=r.domAtPos(0))}for(let i=e.offset-1;!s&&i>=0;i--){let r=nt.get(t.childNodes[i]);r instanceof wt&&(s=r.domAtPos(r.length))}return s?new Kt(s.node,s.offset,!0):e}nearest(e){for(let t=e;t;){let s=nt.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 wt)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 wt&&!(s instanceof wt&&t>=0)))s=c,i=f;else if(s&&f==e&&u==e&&c instanceof Ys&&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 wt))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 ss))return null;let r=qt(i.text,s);if(r==s)return null;let o=ar(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 x=g.dom.getBoundingClientRect();if(t.push(x.height),o){let k=g.dom.lastChild,S=k?ll(k):[];if(S.length){let w=S[S.length-1],$=u?w.right-x.left:x.right-w.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 wt){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=ll(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 ek(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(Qe.replace({widget:new Jf(c),block:!0,inclusive:!0,isBlockGap:!0}).range(s,o))}if(!r)break;s=r.to+1}return Qe.set(e)}updateDeco(){let e=1,t=this.view.state.facet(Ro).map(r=>(this.dynamicDecorationMap[e++]=typeof r=="function")?r(this.view):r),s=!1,i=this.view.state.facet(_k).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(Ye.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(Sk))try{if(f(this.view,e.range,e))return!0}catch(p){Sn(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=Up(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;O$(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 I$(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 Pk(n,e){let t=n.observer.selectionRange;if(!t.focusNode)return null;let s=K0(t.focusNode,t.focusOffset),i=J0(t.focusNode,t.focusOffset),r=s||i;if(i&&s&&i.node!=s.node){let c=nt.get(i.node);if(!c||c instanceof ss&&c.text!=i.node.nodeValue)r=i;else if(n.docView.lastCompositionAfterCursor){let u=nt.get(s.node);!u||u instanceof ss&&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 Z$(n,e,t){let s=Pk(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 Fn(u.mapPos(r),u.mapPos(o),r,o),p=[];for(let g=i.parentNode;;g=g.parentNode){let O=nt.get(g);if(O instanceof Ws)p.push({node:g,deco:O.mark});else{if(O instanceof wt||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 Wo({inclusive:!0,attributes:C$(g),tagName:g.tagName.toLowerCase()})});else return null}}}function z$(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 B$=class{constructor(){this.changes=[]}compareRange(e,t){Vc(e,t,this.changes)}comparePoint(e,t){Vc(e,t,this.changes)}boundChange(e){Vc(e,e,this.changes)}};function F$(n,e,t){let s=new B$;return Ye.compare(n,e,t,s),s.changes}function X$(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 V$(n,e){let t=!1;return e&&n.iterChangedRanges((s,i)=>{s<e.to&&i>e.from&&(t=!0)}),t}function q$(n,e,t=1){let s=n.charCategorizer(e),i=n.doc.lineAt(e),r=e-i.from;if(i.length==0)return re.cursor(e);r==0?t=1:r==i.length&&(t=-1);let o=r,c=r;t<0?o=qt(i.text,r,!1):c=qt(i.text,r);let u=s(i.text.slice(o,c));for(;o>0;){let f=qt(i.text,o,!1);if(s(i.text.slice(f,o))!=u)break;o=f}for(;c<i.length;){let f=qt(i.text,c);if(s(i.text.slice(c,f))!=u)break;c=f}return re.range(o+i.from,c+i.from)}function Y$(n,e){return e.left>n?e.left-n:Math.max(0,n-e.right)}function U$(n,e){return e.top>n?e.top-n:Math.max(0,n-e.bottom)}function Kh(n,e){return n.top<e.bottom-1&&n.bottom>e.top+1}function Kv(n,e){return e<n.top?{top:e,left:n.left,right:n.right,bottom:n.bottom}:n}function Jv(n,e){return e>n.bottom?{top:n.top,left:n.left,right:n.right,bottom:e}:n}function ip(n,e,t){let s,i,r,o,c=!1,u,f,p,g;for(let k=n.firstChild;k;k=k.nextSibling){let S=ll(k);for(let w=0;w<S.length;w++){let $=S[w];i&&Kh(i,$)&&($=Kv(Jv($,i.bottom),i.top));let b=Y$(e,$),P=U$(t,$);if(b==0&&P==0)return k.nodeType==3?ex(k,e,t):ip(k,e,t);(!s||o>P||o==P&&r>b)&&(s=k,i=$,r=b,o=P,c=b?e<$.left?w>0:w<S.length-1:!0),b==0?t>$.bottom&&(!p||p.bottom<$.bottom)?(u=k,p=$):t<$.top&&(!g||g.top>$.top)&&(f=k,g=$):p&&Kh(p,$)?p=Jv(p,$.bottom):g&&Kh(g,$)&&(g=Kv(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 ex(s,O,t);if(c&&s.contentEditable!="false")return ip(s,O,t);let x=Array.prototype.indexOf.call(n.childNodes,s)+(e>=(i.left+i.right)/2?1:0);return{node:n,offset:x}}function ex(n,e,t){let s=n.nodeValue.length,i=-1,r=1e9,o=0;for(let c=0;c<s;c++){let u=ar(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,x=O;if((Se.chrome||Se.gecko)&&ar(n,c).getBoundingClientRect().left==p.right&&(x=!O),g<=0)return{node:n,offset:c+(x?1:0)};i=c+(x?1:0),r=g}}}return{node:n,offset:i>-1?i:o>0?n.nodeValue.length:0}}function Qk(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 C=n.viewState.heightOracle.textHeight/2,Q=!1;u=n.elementAtHeight(O),u.type!=ln.Text;)for(;O=s>0?u.bottom+C:u.top-C,!(O>=0&&O<=f);){if(Q)return t?null:0;Q=!0,s=-s}g=c+O;let x=u.from;if(x<n.viewport.from)return n.viewport.from==0?0:t?null:tx(n,o,u,p,g);if(x>n.viewport.to)return n.viewport.to==n.state.doc.length?n.state.doc.length:t?null:tx(n,o,u,p,g);let k=n.dom.ownerDocument,S=n.root.elementFromPoint?n.root:k,w=S.elementFromPoint(p,g);w&&!n.contentDOM.contains(w)&&(w=null),w||(p=Math.max(o.left+1,Math.min(o.right-1,p)),w=S.elementFromPoint(p,g),w&&!n.contentDOM.contains(w)&&(w=null));let $,b=-1;if(w&&((i=n.docView.nearest(w))===null||i===void 0?void 0:i.isEditable)!=!1){if(k.caretPositionFromPoint){let C=k.caretPositionFromPoint(p,g);C&&({offsetNode:$,offset:b}=C)}else if(k.caretRangeFromPoint){let C=k.caretRangeFromPoint(p,g);C&&({startContainer:$,startOffset:b}=C,(!n.contentDOM.contains($)||Se.safari&&W$($,b,p)||Se.chrome&&G$($,b,p))&&($=void 0))}$&&(b=Math.min($s($),b))}if(!$||!n.docView.dom.contains($)){let C=wt.find(n.docView,x);if(!C)return O>u.top+u.height/2?u.to:u.from;({node:$,offset:b}=ip(C.dom,p,g))}let P=n.docView.nearest($);if(!P)return null;if(P.isWidget&&((r=P.dom)===null||r===void 0?void 0:r.nodeType)==1){let C=P.dom.getBoundingClientRect();return e.y<C.top||e.y<=C.bottom&&e.x<=(C.left+C.right)/2?P.posAtStart:P.posAtEnd}else return P.localPosFromDOM($,b)+P.posAtStart}function tx(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+Xf(o,r,n.state.tabSize)}function W$(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 ar(n,s-1,s).getBoundingClientRect().right>t}function G$(n,e,t){if(e!=0)return!1;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():ar(n,0,Math.max(n.nodeValue.length,1)).getBoundingClientRect();return t-s.left>5}function rp(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==ln.Text&&(i.type!=r.type||(t<0?r.from<e:r.to>e)))&&(i=r)}}return i||s}return s}function H$(n,e,t,s){let i=rp(n,e.head,e.assoc||-1),r=!s||i.type!=ln.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 re.cursor(u,t?-1:1)}return re.cursor(t?i.to:i.from,t?-1:1)}function nx(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=R$(i,r,o,c,t),p=fk;if(!f){if(i.number==(t?n.state.doc.lines:1))return c;p=`
47
+ `,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 K$(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 J$(n,e,t,s){let i=e.head,r=t?1:-1;if(i==(t?n.state.doc.length:0))return re.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 x=n.viewState.lineBlockAt(i);o==null&&(o=Math.min(u.right-u.left,n.defaultCharacterWidth*(i-x.from))),c=(r<0?x.top:x.bottom)+p}let g=u.left+o,O=s??n.viewState.heightOracle.textHeight>>1;for(let x=0;;x+=10){let k=c+(O+x)*r,S=Qk(n,{x:g,y:k},!1,r);if(k<u.top||k>u.bottom||(r<0?S<i:S>i)){let w=n.docView.coordsForChar(S),$=!w||k<w.top?-1:1;return re.cursor(S,$,void 0,o)}}}function qc(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 jk(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=qc(n,i.from,0);o!=i.from&&(r=re.cursor(o,-1))}else{let o=qc(n,i.from,-1),c=qc(n,i.to,1);(o!=i.from||c!=i.to)&&(r=re.range(i.from==i.anchor?o:c,i.from==i.head?o:c))}r&&(t||(t=e.ranges.slice()),t[s]=r)}return t?re.create(t,e.mainIndex):e}function Jh(n,e,t){let s=qc(n.state.facet(Zu).map(i=>i(n)),t.from,e.head>t.from?-1:1);return s==t.from?t:re.cursor(s,s<t.from?1:-1)}const go="￿";class eC{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=nt.get(i),u=nt.get(o);(c&&u?c.breakAfter:(c?c.breakAfter:ou(i))||ou(o)&&(i.nodeName!="BR"||i.cmIgnore)&&this.text.length>r)&&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=nt.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+(tC(e,s.node,s.offset)?t:0))}}function tC(n,e,t){for(;;){if(!e||t<$s(e))return!1;if(e==n)return!0;t=or(e)+1,e=e.parentNode}}class sx{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class nC{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?[]:rC(e),u=new eC(c,e.state);u.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=u.text,this.newSel=lC(c,this.bounds.from)}else{let c=e.observer.selectionRange,u=r&&r.node==c.focusNode&&r.offset==c.focusOffset||!Yf(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||!Yf(e.contentDOM,c.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(c.anchorNode,c.anchorOffset),p=e.viewport;if((Se.ios||Se.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),x=p.from-g,k=p.to-O;(x==0||x==1||g==0)&&(k==0||k==-1||O==e.state.doc.length)&&(u=0,f=e.state.doc.length)}this.newSel=re.single(f,u)}}}function Tk(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||Se.android&&e.text.length<c-o)&&(u=i.to,f="end");let p=iC(n.state.doc.sliceString(o,c,go),e.text,u-o,f);p&&(Se.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:Fe.of(e.text.slice(p.from,p.toB).split(go))})}else s&&(!n.hasFocus&&n.state.facet(Xs)||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)}:(Se.mac||Se.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=re.single(s.main.anchor-1,s.main.head-1)),t={from:t.from,to:t.to,insert:Fe.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))}:Se.chrome&&t&&t.from==t.to&&t.from==i.head&&t.insert.toString()==`
48
+ `&&n.lineWrapping&&(s&&(s=re.single(s.main.anchor-1,s.main.head-1)),t={from:i.from,to:i.to,insert:Fe.of([" "])}),t)return Wp(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=jk(n.state.facet(Zu).map(u=>u(n)),s))),n.dispatch({selection:s,scrollIntoView:o,userEvent:c}),!0}else return!1}function Wp(n,e,t,s=-1){if(Se.ios&&n.inputState.flushIOSKey(e))return!0;let i=n.state.selection.main;if(Se.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&&el(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)&&el(n.contentDOM,"Backspace",8)||e.from==i.from&&e.to==i.to+1&&e.insert.length==0&&el(n.contentDOM,"Delete",46)))return!0;let r=e.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let o,c=()=>o||(o=sC(n,e,t));return n.state.facet(vk).some(u=>u(n,e.from,e.to,r,c))||n.dispatch(c()),!0}function sC(n,e,t){let s,i=n.state,r=i.selection.main;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 c=r.from<e.from?i.sliceDoc(r.from,e.from):"",u=r.to>e.to?i.sliceDoc(e.to,r.to):"";s=i.replaceSelection(n.state.toText(c+e.insert.sliceString(0,void 0,n.state.lineBreak)+u))}else{let c=i.changes(e),u=t&&t.main.to<=c.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 f=n.state.sliceDoc(e.from,e.to),p,g=t&&Pk(n,t.main.head);if(g){let k=e.insert.length-(e.to-e.from);p={from:g.from,to:g.to-k}}else p=n.state.doc.lineAt(r.head);let O=r.to-e.to,x=r.to-r.from;s=i.changeByRange(k=>{if(k.from==r.from&&k.to==r.to)return{changes:c,range:u||k.map(c)};let S=k.to-O,w=S-f.length;if(k.to-k.from!=x||n.state.sliceDoc(w,S)!=f||k.to>=p.from&&k.from<=p.to)return{range:k};let $=i.changes({from:w,to:S,insert:e.insert}),b=k.to-r.to;return{changes:$,range:u?re.range(Math.max(0,u.anchor+b),Math.max(0,u.head+b)):k.map($)}})}else s={changes:c,selection:u&&i.selection.replaceRange(u)}}let o="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,o+=".compose",n.inputState.compositionFirstChange&&(o+=".start",n.inputState.compositionFirstChange=!1)),i.update(s,{userEvent:o,scrollIntoView:!0})}function iC(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 rC(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 sx(t,s)),(i!=t||r!=s)&&e.push(new sx(i,r))),e}function lC(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?re.single(t+e,s+e):null}class oC{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,Se.safari&&e.contentDOM.addEventListener("input",()=>null),Se.gecko&&wC(e.contentDOM.ownerDocument)}handleEvent(e){!mC(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=aC(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&&Ek.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),Se.android&&Se.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let t;return Se.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&((t=Nk.find(s=>s.keyCode==e.keyCode))&&!e.ctrlKey||cC.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,el(this.view.contentDOM,t.key,t.keyCode,t instanceof KeyboardEvent?t:void 0))}ignoreDuringComposition(e){return/^key/.test(e.type)?this.composing>0?!0:Se.safari&&!Se.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1:!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 ix(n,e){return(t,s)=>{try{return e.call(n,s,t)}catch(i){Sn(t.state,i)}}}function aC(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(ix(s.value,u))}if(o)for(let c in o){let u=o[c];u&&t(c).observers.push(ix(s.value,u))}}for(let s in is)t(s).handlers.push(is[s]);for(let s in Xn)t(s).observers.push(Xn[s]);return e}const Nk=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],cC="dthko",Ek=[16,17,18,20,91,92,224,225],kc=6;function Sc(n){return Math.max(0,n)*.7+8}function uC(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}class dC{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=v$(e.contentDOM),this.atoms=e.state.facet(Zu).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)&&hC(e,t),this.dragging=pC(e,t)&&Rk(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&&uC(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=Up(this.view);e.clientX-u.left<=i+kc?t=-Sc(i-e.clientX):e.clientX+u.right>=o-kc&&(t=Sc(e.clientX-o)),e.clientY-u.top<=r+kc?s=-Sc(r-e.clientY):e.clientY+u.bottom>=c-kc&&(s=Sc(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=jk(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 hC(n,e){let t=n.state.facet(pk);return t.length?t[0](e):Se.mac?e.metaKey:e.ctrlKey}function fC(n,e){let t=n.state.facet(mk);return t.length?t[0](e):Se.mac?!e.altKey:!e.ctrlKey}function pC(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let s=Mo(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 mC(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=nt.get(t))&&s.ignoreEvent(e))return!1;return!0}const is=Object.create(null),Xn=Object.create(null),Ak=Se.ie&&Se.ie_version<15||Se.ios&&Se.webkit_version<604;function gC(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(),Mk(n,t.value)},50)}function zu(n,e,t){for(let s of n.facet(e))t=s(t,n);return t}function Mk(n,e){e=zu(n.state,Vp,e);let{state:t}=n,s,i=1,r=t.toText(e),o=r.lines==t.selection.ranges.length;if(lp!=null&&t.selection.ranges.every(u=>u.empty)&&lp==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:re.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:re.cursor(u.from+f.length)}}):s=t.replaceSelection(r);n.dispatch(s,{userEvent:"input.paste",scrollIntoView:!0})}Xn.scroll=n=>{n.inputState.lastScrollTop=n.scrollDOM.scrollTop,n.inputState.lastScrollLeft=n.scrollDOM.scrollLeft};is.keydown=(n,e)=>(n.inputState.setSelectionOrigin("select"),e.keyCode==27&&n.inputState.tabFocusMode!=0&&(n.inputState.tabFocusMode=Date.now()+2e3),!1);Xn.touchstart=(n,e)=>{n.inputState.lastTouchTime=Date.now(),n.inputState.setSelectionOrigin("select.pointer")};Xn.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};is.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(gk))if(t=s(n,e),t)break;if(!t&&e.button==0&&(t=xC(n,e)),t){let s=!n.hasFocus;n.inputState.startMouseSelection(new dC(n,e,t,s)),s&&n.observer.ignore(()=>{W0(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 rx(n,e,t,s){if(s==1)return re.cursor(e,t);if(s==2)return q$(n.state,e,t);{let i=wt.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++,re.range(o,c)}}let lx=(n,e,t)=>e>=t.top&&e<=t.bottom&&n>=t.left&&n<=t.right;function OC(n,e,t,s){let i=wt.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&&lx(t,s,o))return-1;let c=i.coordsAt(r,1);return c&&lx(t,s,c)?1:o&&o.bottom>=s?-1:1}function ox(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:OC(n,t,e.clientX,e.clientY)}}const vC=Se.ie&&Se.ie_version<=11;let ax=null,cx=0,ux=0;function Rk(n){if(!vC)return n.detail;let e=ax,t=ux;return ax=n,ux=Date.now(),cx=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(cx+1)%3:1}function xC(n,e){let t=ox(n,e),s=Rk(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=ox(n,r),f,p=rx(n,u.pos,u.bias,s);if(t.pos!=u.pos&&!o){let g=rx(n,t.pos,t.bias,s),O=Math.min(g.from,p.from),x=Math.max(g.to,p.to);p=O<p.from?re.range(O,x):re.range(x,O)}return o?i.replaceRange(i.main.extend(p.from,p.to)):c&&s==1&&i.ranges.length>1&&(f=yC(i,u.pos))?f:c?i.addRange(p):re.create([p])}}}function yC(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 re.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}is.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=re.range(r,o))}}let{inputState:s}=n;return s.mouseSelection&&(s.mouseSelection.dragging=!0),s.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",zu(n.state,qp,n.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};is.dragend=n=>(n.inputState.draggedContent=null,!1);function dx(n,e,t,s){if(t=zu(n.state,Vp,t),!t)return;let i=n.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:r}=n.inputState,o=s&&r&&fC(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}is.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&&dx(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 dx(n,e,s,!0),!0}return!1};is.paste=(n,e)=>{if(n.state.readOnly)return!0;n.observer.flush();let t=Ak?null:e.clipboardData;return t?(Mk(n,t.getData("text/plain")||t.getData("text/uri-list")),!0):(gC(n),!1)};function kC(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 SC(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:zu(n,qp,e.join(n.lineBreak)),ranges:t,linewise:s}}let lp=null;is.copy=is.cut=(n,e)=>{let{text:t,ranges:s,linewise:i}=SC(n.state);if(!t&&!i)return!1;lp=i?t:null,e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:s,scrollIntoView:!0,userEvent:"delete.cut"});let r=Ak?null:e.clipboardData;return r?(r.clearData(),r.setData("text/plain",t),!0):(kC(n,t),!1)};const Dk=Cs.define();function Lk(n,e){let t=[];for(let s of n.facet(xk)){let i=s(n,e);i&&t.push(i)}return t.length?n.update({effects:t,annotations:Dk.of(!0)}):null}function Ik(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=Lk(n.state,e);t?n.dispatch(t):n.update([])}},10)}Xn.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),Ik(n)};Xn.blur=n=>{n.observer.clearSelectionRange(),Ik(n)};Xn.compositionstart=Xn.compositionupdate=n=>{n.observer.editContext||(n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0&&(n.inputState.composing=0))};Xn.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,Se.chrome&&Se.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50))};Xn.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};is.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 Wp(n,{from:u,to:f,insert:n.state.toText(r)},null),!0}}let i;if(Se.chrome&&Se.android&&(i=Nk.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 Se.ios&&e.inputType=="deleteContentForward"&&n.observer.flushSoon(),Se.safari&&e.inputType=="insertText"&&n.inputState.composing>=0&&setTimeout(()=>Xn.compositionend(n,e),20),!1};const hx=new Set;function wC(n){hx.has(n)||(hx.add(n),n.addEventListener("copy",()=>{}),n.addEventListener("cut",()=>{}))}const fx=["pre-wrap","normal","pre-line","break-spaces"];let cl=!1;function px(){cl=!1}class bC{constructor(e){this.lineWrapping=e,this.doc=Fe.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 fx.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=fx.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 _C{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class ys{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"?ln.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 Qi?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 ys(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 Yc=.001;class on{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)>Yc&&(cl=!0),this.height=e)}replace(e,t,s){return on.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),x=O.to>=f?O:r.lineAt(f,lt.ByPosNoHeight,s,0,0);for(g+=x.to-f,f=x.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 k=Gp.build(s.setDoc(o),e,p,g);r=uu(r,r.replace(u,f,k))}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 $C(on.of(e.slice(0,t)),o,on.of(e.slice(s)))}}function uu(n,e){return n==e?n:(n.constructor!=e.constructor&&(cl=!0),e)}on.prototype.size=1;class Zk extends on{constructor(e,t,s){super(e,t),this.deco=s}blockAt(e,t,s,i){return new ys(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 Zk{constructor(e,t){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,t,s,i){return new ys(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 Ft&&i.flags&4)&&Math.abs(this.length-i.length)<10?(i instanceof Ft?i=new Nn(i.length,this.height):i.height=this.height,this.outdated||(i.outdated=!1),i):on.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 Ft extends on{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 ys(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 ys(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:x,to:k}=s.doc.lineAt(e);return new ys(x,k-x,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 ys(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 k=O.number-c;g+=u*k+f*(e-r-k)}let x=u+f*O.length;o(new ys(O.from,O.length,g,x,0)),g+=x,p=O.to+1}}replace(e,t,s){let i=this.length-t;if(i>0){let r=s[s.length-1];r instanceof Ft?s[s.length-1]=new Ft(r.length+i):s.push(null,new Ft(i-1))}if(e>0){let r=s[0];r instanceof Ft?s[0]=new Ft(e+r.length):s.unshift(new Ft(e-1),null)}return on.of(s)}decomposeLeft(e,t){t.push(new Ft(e-1),null)}decomposeRight(e,t){t.push(null,new Ft(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 Ft(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)>=Yc&&(u=-2);let O=new Nn(p,g);O.outdated=!1,o.push(O),c+=p+1}c<=r&&o.push(null,new Ft(r-c).updateHeight(e,c));let f=on.of(o);return(u<0||Math.abs(f.height-this.height)>=Yc||Math.abs(u-this.heightMetrics(e,t).perLine)>=Yc)&&(cl=!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 $C extends on{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&&mx(r,o-1),t<this.length){let c=r.length;this.decomposeRight(t,r),mx(r,c)}return on.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?on.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 mx(n,e){let t,s;n[e]==null&&(t=n[e-1])instanceof Ft&&(s=n[e+1])instanceof Ft&&n.splice(e-1,3,new Ft(t.length+1+s.length))}const CC=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 Zk(o,i,s)):(o||r||i>=CC)&&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 Ft(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 Ye.spans(t,s,i,r,0),r.finish(s)}}function PC(n,e,t){let s=new QC;return Ye.compare(n,e,t,s,0),s.changes}class QC{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,s,i){(e<t||s&&s.heightRelevant||i&&i.heightRelevant)&&Vc(e,t,this.changes,5)}}function jC(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 TC(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 NC(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class ef{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 Qe.replace({widget:new EC(this.displaySize*(t?e.scaleY:e.scaleX),t)}).range(this.from,this.to)}}class EC extends Qs{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 gx{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=Ox,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=ot.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let t=e.facet(Yp).some(s=>typeof s!="function"&&s.class=="cm-lineWrapping");this.heightOracle=new bC(t),this.stateDeco=e.facet(Ro).filter(s=>typeof s!="function"),this.heightMap=on.empty().applyChanges(this.stateDeco,Fe.empty,this.heightOracle.setDoc(e.doc),[new Fn(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=Qe.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 wc(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?Ox: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(Ro).filter(p=>typeof p!="function");let i=e.changedRanges,r=Fn.extendWithRanges(i,PC(s,this.stateDeco,e?e.changes:Qt.empty(this.state.doc.length))),o=this.heightMap.height,c=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);px(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),r),(this.heightMap.height!=o||cl)&&(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(kk)&&(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:C,scaleY:Q}=U0(t,c);(C>.005&&Math.abs(this.scaleX-C)>.005||Q>.005&&Math.abs(this.scaleY-Q)>.005)&&(this.scaleX=C,this.scaleY=Q,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 x=e.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=x&&(this.scrollAnchorHeight=-1,this.scrollTop=x),this.scrolledToBottom=H0(e.scrollDOM);let k=(this.printing?NC:jC)(t,this.paddingTop),S=k.top-this.pixelViewport.top,w=k.bottom-this.pixelViewport.bottom;this.pixelViewport=k;let $=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if($!=this.inView&&(this.inView=$,$&&(u=!0)),!this.inView&&!this.scrollTarget&&!TC(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 C=e.docView.measureVisibleLineHeights(this.viewport);if(i.mustRefreshForHeights(C)&&(o=!0),o||i.lineWrapping&&Math.abs(b-this.contentDOMWidth)>i.charWidth){let{lineHeight:Q,charWidth:N,textHeight:A}=e.docView.measureTextSize();o=Q>0&&i.refresh(r,Q,N,A,Math.max(5,b/N),C),o&&(e.docView.minWidth=0,f|=16)}S>0&&w>0?p=Math.max(S,w):S<0&&w<0&&(p=Math.min(S,w)),px();for(let Q of this.viewports){let N=Q.from==this.viewport.from?C:e.docView.measureVisibleLineHeights(Q);this.heightMap=(o?on.empty().applyChanges(this.stateDeco,Fe.empty,this.heightOracle,[new Fn(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(i,0,o,new _C(Q.from,N))}cl&&(f|=2)}let P=!this.viewportIsAppropriate(this.viewport,p)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return P&&(f&2&&(f|=this.updateScaler()),this.viewport=this.getViewport(p,this.scrollTarget),f|=this.updateForViewport()),(f&2||P)&&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 wc(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 wc(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 wc(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 ef(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,x)=>{if(g-p<r)return;let k=this.state.selection.main,S=[k.from];k.empty||S.push(k.to);for(let $ of S)if($>p&&$<g){u(p,$-10,O,x),u($+10,g,O,x);return}let w=MC(e,$=>$.from>=O.from&&$.to<=O.to&&Math.abs($.from-p)<r&&Math.abs($.to-g)<r&&!S.some(b=>$.from<b&&$.to>b));if(!w){if(g<O.to&&t&&s&&t.visibleRanges.some(P=>P.from<=g&&P.to>=g)){let P=t.moveToLineBoundary(re.cursor(g),!1,!0).head;P>p&&(g=P)}let $=this.gapSize(O,p,g,x),b=s||$<2e6?$:2e6;w=new ef(p,g,$,b)}c.push(w)},f=p=>{if(p.length<o||p.type!=ln.Text)return;let g=AC(p.from,p.to,this.stateDeco);if(g.total<o)return;let O=this.scrollTarget?this.scrollTarget.range.head:null,x,k;if(s){let S=i/this.heightOracle.lineLength*this.heightOracle.lineHeight,w,$;if(O!=null){let b=_c(g,O),P=((this.visibleBottom-this.visibleTop)/2+S)/p.height;w=b-P,$=b+P}else w=(this.visibleTop-p.top-S)/p.height,$=(this.visibleBottom-p.top+S)/p.height;x=bc(g,w),k=bc(g,$)}else{let S=g.total*this.heightOracle.charWidth,w=i*this.heightOracle.charWidth,$=0;if(S>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+$,P=this.pixelViewport.right+$,C,Q;if(O!=null){let N=_c(g,O),A=((P-b)/2+w)/S;C=N-A,Q=N+A}else C=(b-w)/S,Q=(P+w)/S;x=bc(g,C),k=bc(g,Q)}x>p.from&&u(p.from,x,p,g),k<p.to&&u(k,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=_c(i,s)-_c(i,t);return this.heightOracle.lineWrapping?e.height*r:i.total*this.heightOracle.charWidth*r}updateLineGaps(e){ef.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=Qe.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=[];Ye.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 wc{constructor(e,t){this.from=e,this.to=t}}function AC(n,e,t){let s=[],i=n,r=0;return Ye.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 bc({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 _c(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 MC(n,e){for(let t of n)if(e(t))return t}const Ox={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 ys(n.from,n.length,t,s-t,Array.isArray(n._content)?n._content.map(i=>Oo(i,e)):n._content)}const $c=we.define({combine:n=>n.join(" ")}),op=we.define({combine:n=>n.indexOf(!0)>-1}),ap=Ci.newName(),zk=Ci.newName(),Bk=Ci.newName(),Fk={"&light":"."+zk,"&dark":"."+Bk};function cp(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 RC=cp("."+ap,{"&":{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"}},Fk),DC={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},tf=Se.ie&&Se.ie_version<=11;class LC{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new x$,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);(Se.ie&&Se.ie_version<=11||Se.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&&Se.android&&e.constructor.EDIT_CONTEXT!==!1&&!(Se.chrome&&Se.chrome_version<126)&&(this.editContext=new ZC(e),e.state.facet(Xs)&&(e.contentDOM.editContext=this.editContext.editContext)),tf&&(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(Xs)?s.root.activeElement!=this.dom:!Xc(this.dom,i))return;let r=i.anchorNode&&s.docView.nearest(i.anchorNode);if(r&&r.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(Se.ie&&Se.ie_version<=11||Se.android&&Se.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=Mo(e.root);if(!t)return!1;let s=Se.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&IC(this.view,t)||t;if(!s||this.selectionRange.eq(s))return!1;let i=Xc(this.dom,s);return i&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&k$(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,DC),tf&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),tf&&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&&el(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&&Xc(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 nC(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=Tk(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=vx(t,e.previousSibling||e.target.previousSibling,-1),i=vx(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(Xs)!=e.state.facet(Xs)&&(e.view.contentDOM.editContext=e.state.facet(Xs)?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 vx(n,e,t){for(;e;){let s=nt.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 xx(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 IC(n,e){if(e.getComposedRanges){let i=e.getComposedRanges(n.root)[0];if(i)return xx(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?xx(n,t):null}class ZC{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={from:c,to:u,insert:Fe.of(s.text.split(`
49
+ `))};if(f.from==this.from&&r<this.from?f.from=r:f.to==this.to&&r>this.to&&(f.to=r),f.from==f.to&&!f.insert.length){let p=re.single(this.toEditorPos(s.selectionStart),this.toEditorPos(s.selectionEnd));p.main.eq(i)||e.dispatch({selection:p,userEvent:"select"});return}if((Se.mac||Se.android)&&f.from==o-1&&/^\. ?$/.test(s.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(f={from:c,to:u,insert:Fe.of([s.text.replace("."," ")])}),this.pendingContextChange=f,!e.state.readOnly){let p=this.to-this.from+(f.to-f.from+f.insert.length);Wp(e,f,re.single(this.toEditorPos(s.selectionStart,p),this.toEditorPos(s.selectionEnd,p)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state))},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(o!="None"&&c!="None"){let u=this.toEditorPos(r.rangeStart),f=this.toEditorPos(r.rangeEnd);if(u<f){let p=`text-decoration: underline ${o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${c=="Thin"?1:2}px`;i.push(Qe.mark({attributes:{style:p}}).range(u,f))}}}e.dispatch({effects:wk.of(Qe.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=Mo(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 ve{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||y$(e.parent)||document,this.viewState=new gx(e.state||ze.create(e)),e.scrollTo&&e.scrollTo.is(yc)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Wr).map(i=>new Hh(i));for(let i of this.plugins)i.update(this);this.observer=new LC(this),this.inputState=new oC(this),this.inputState.ensureHandlers(this.plugins),this.docView=new Hv(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 _t?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(Dk))?(this.inputState.notifiedFocused=o,c=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,u=Lk(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:x}=O.state.selection;g=new tl(x.empty?x:re.cursor(x.head,x.head>x.anchor?-1:1))}for(let x of O.effects)x.is(yc)&&(g=x.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($c)!=i.state.facet($c)&&(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(sp))try{O(i)}catch(x){Sn(this.state,x,"update listener")}(u||p)&&Promise.resolve().then(()=>{u&&this.state==u.startState&&this.dispatch(u),p&&!Tk(this,p)&&f.force&&el(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 gx(e),this.plugins=e.facet(Wr).map(s=>new Hh(s)),this.pluginMap.clear();for(let s of this.plugins)s.update(this);this.docView.destroy(),this.docView=new Hv(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(Wr),s=e.state.facet(Wr);if(t!=s){let i=[];for(let r of s){let o=t.indexOf(r);if(o<0)i.push(new Hh(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){Sn(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(H0(s))r=-1,o=this.viewState.heightMap.height;else{let x=this.viewState.scrollAnchorAt(i);r=x.from,o=x.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(x=>{try{return x.read(this)}catch(k){return Sn(this.state,k),yx}}),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 x=0;x<f.length;x++)if(p[x]!=yx)try{let k=f[x];k.write&&k.write(p[x],this)}catch(k){Sn(this.state,k)}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 k=(r<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(r).top)-o;if(k>1||k<-1){i=i+k,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(sp))c(t)}get themeClasses(){return ap+" "+(this.state.facet(op)?Bk:zk)+" "+this.state.facet($c)}updateAttrs(){let e=kx(this,bk,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Xs)?"true":"false",class:"cm-content",style:`${Se.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),kx(this,Yp,t);let s=this.observer.ignore(()=>{let i=Kf(this.contentDOM,this.contentAttrs,t),r=Kf(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(ve.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(ve.cspNonce);Ci.mount(this.root,this.styleModules.concat(RC).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 Jh(this,e,nx(this,e,t,s))}moveByGroup(e,t){return Jh(this,e,nx(this,e,t,s=>K$(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 re.cursor(r.side(t,i)+e.from,r.forward(!t,i)?1:-1)}moveToLineBoundary(e,t,s=!0){return H$(this,e,t,s)}moveVertically(e,t,s){return Jh(this,e,J$(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(),Qk(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 Uo(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(yk)||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>zC)return hk(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||dk(r.isolates,s=Gv(this,e))))return r.order;s||(s=Gv(this,e));let i=M$(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()||Se.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{W0(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 yc.of(new tl(typeof e=="number"?re.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 yc.of(new tl(re.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=[$c.of(s),mo.of(cp(`.${s}`,e))];return t&&t.dark&&i.push(op.of(!0)),i}static baseTheme(e){return Ni.lowest(mo.of(cp("."+ap,e,Fk)))}static findFromDOM(e){var t;let s=e.querySelector(".cm-content"),i=s&&nt.get(s)||nt.get(e);return((t=i?.rootView)===null||t===void 0?void 0:t.view)||null}}ve.styleModule=mo;ve.inputHandler=vk;ve.clipboardInputFilter=Vp;ve.clipboardOutputFilter=qp;ve.scrollHandler=Sk;ve.focusChangeEffect=xk;ve.perLineTextDirection=yk;ve.exceptionSink=Ok;ve.updateListener=sp;ve.editable=Xs;ve.mouseSelectionStyle=gk;ve.dragMovesSelection=mk;ve.clickAddsSelectionRange=pk;ve.decorations=Ro;ve.outerDecorations=_k;ve.atomicRanges=Zu;ve.bidiIsolatedRanges=$k;ve.scrollMargins=Ck;ve.darkTheme=op;ve.cspNonce=we.define({combine:n=>n.length?n[0]:""});ve.contentAttributes=Yp;ve.editorAttributes=bk;ve.lineWrapping=ve.contentAttributes.of({class:"cm-lineWrapping"});ve.announce=Me.define();const zC=4096,yx={};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 kx(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&&Hf(o,t)}return t}const BC=Se.mac?"mac":Se.windows?"win":Se.linux?"linux":"key";function FC(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 Cc(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 XC=Ni.default(ve.domEventHandlers({keydown(n,e){return Vk(Xk(e.state),n,e,"editor")}})),Ho=we.define({enables:XC}),Sx=new WeakMap;function Xk(n){let e=n.facet(Ho),t=Sx.get(e);return t||Sx.set(e,t=YC(e.reduce((s,i)=>s.concat(i),[]))),t}function VC(n,e,t){return Vk(Xk(n.state),e,n,t)}let yi=null;const qC=4e3;function YC(n,e=BC){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 x=t[o]||(t[o]=Object.create(null)),k=c.split(/ (?!$)/).map($=>FC($,e));for(let $=1;$<k.length;$++){let b=k.slice(0,$).join(" ");i(b,!0),x[b]||(x[b]={preventDefault:!0,stopPropagation:!1,run:[P=>{let C=yi={view:P,prefix:b,scope:o};return setTimeout(()=>{yi==C&&(yi=null)},qC),!0}]})}let S=k.join(" ");i(S,!1);let w=x[S]||(x[S]={preventDefault:!1,stopPropagation:!1,run:((O=(g=x._any)===null||g===void 0?void 0:g.run)===null||O===void 0?void 0:O.slice())||[]});u&&w.run.push(u),f&&(w.preventDefault=!0),p&&(w.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(x=>g(x,up))}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 up=null;function Vk(n,e,t,s){up=e;let i=m$(e),r=xn(i,0),o=xs(r)==i.length&&i!=" ",c="",u=!1,f=!1,p=!1;yi&&yi.view==t&&yi.scope==s&&(c=yi.prefix+" ",Ek.indexOf(e.keyCode)<0&&(f=!0,yi=null));let g=new Set,O=w=>{if(w){for(let $ of w.run)if(!g.has($)&&(g.add($),$(t)))return w.stopPropagation&&(p=!0),!0;w.preventDefault&&(w.stopPropagation&&(p=!0),f=!0)}return!1},x=n[s],k,S;return x&&(O(x[c+Cc(i,e,!o)])?u=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(Se.windows&&e.ctrlKey&&e.altKey)&&!(Se.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(k=Pi[e.keyCode])&&k!=i?(O(x[c+Cc(k,e,!0)])||e.shiftKey&&(S=Ao[e.keyCode])!=i&&S!=k&&O(x[c+Cc(S,e,!1)]))&&(u=!0):o&&e.shiftKey&&O(x[c+Cc(i,e,!0)])&&(u=!0),!u&&O(x._any)&&(u=!0)),f&&(u=!0),u&&p&&e.stopPropagation(),up=null,u}class Ko{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=qk(e);return[new Ko(t,i.left-r.left,i.top-r.top,null,i.bottom-i.top)]}else return UC(e,t,s)}}function qk(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 wx(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 UC(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=qk(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),x=rp(n,s,1),k=rp(n,i,-1),S=x.type==ln.Text?x:null,w=k.type==ln.Text?k:null;if(S&&(n.lineWrapping||x.widgetLineBreaks)&&(S=wx(n,s,1,S)),w&&(n.lineWrapping||k.widgetLineBreaks)&&(w=wx(n,i,-1,w)),S&&w&&S.from==w.from&&S.to==w.to)return b(P(t.from,t.to,S));{let Q=S?P(t.from,null,S):C(x,!1),N=w?P(null,t.to,w):C(k,!0),A=[];return(S||x).to<(w||k).from-(S&&w?1:0)||x.widgetLineBreaks>1&&Q.bottom+n.defaultLineHeight/2<N.top?A.push($(g,Q.bottom,O,N.top)):Q.bottom<N.top&&n.elementAtHeight((Q.bottom+N.top)/2).type==ln.Text&&(Q.bottom=N.top=(Q.bottom+N.top)/2),b(Q).concat(A).concat(b(N))}function $(Q,N,A,X){return new Ko(e,Q-u.left,N-u.top,A-Q,X-N)}function b({top:Q,bottom:N,horizontal:A}){let X=[];for(let B=0;B<A.length;B+=2)X.push($(A[B],Q,A[B+1],N));return X}function P(Q,N,A){let X=1e9,B=-1e9,H=[];function J(Y,te,pe,ce,U){let z=n.coordsAtPos(Y,Y==A.to?-2:2),T=n.coordsAtPos(pe,pe==A.from?2:-2);!z||!T||(X=Math.min(z.top,T.top,X),B=Math.max(z.bottom,T.bottom,B),U==ot.LTR?H.push(r&&te?g:z.left,r&&ce?O:T.right):H.push(!r&&ce?g:T.left,!r&&te?O:z.right))}let R=Q??A.from,V=N??A.to;for(let Y of n.visibleRanges)if(Y.to>R&&Y.from<V)for(let te=Math.max(Y.from,R),pe=Math.min(Y.to,V);;){let ce=n.state.doc.lineAt(te);for(let U of n.bidiSpans(ce)){let z=U.from+ce.from,T=U.to+ce.from;if(z>=pe)break;T>te&&J(Math.max(z,te),Q==null&&z<=R,Math.min(T,pe),N==null&&T>=V,U.dir)}if(te=ce.to+1,te>=pe)break}return H.length==0&&J(R,Q==null,V,N==null,n.textDirection),{top:X,bottom:B,horizontal:H}}function C(Q,N){let A=c.top+(N?Q.top:Q.bottom);return{top:A,bottom:A,horizontal:[]}}}function WC(n,e){return n.constructor==e.constructor&&n.eq(e)}class GC{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(Uc)!=e.state.facet(Uc)&&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(Uc);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)=>!WC(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}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const Uc=we.define();function Yk(n){return[mt.define(e=>new GC(e,n)),Uc.of(n)]}const Do=we.define({combine(n){return Ps(n,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function HC(n={}){return[Do.of(n),KC,JC,eP,kk.of(!0)]}function Uk(n){return n.startState.facet(Do)!=n.state.facet(Do)}const KC=Yk({above:!0,markers(n){let{state:e}=n,t=e.facet(Do),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:re.cursor(i.head,i.head>i.anchor?-1:1);for(let u of Ko.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=Uk(n);return t&&bx(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){bx(e.state,n)},class:"cm-cursorLayer"});function bx(n,e){e.style.animationDuration=n.facet(Do).cursorBlinkRate+"ms"}const JC=Yk({above:!1,markers(n){return n.state.selection.ranges.map(e=>e.empty?[]:Ko.forRange(n,"cm-selectionBackground",e)).reduce((e,t)=>e.concat(t))},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||Uk(n)},class:"cm-selectionLayer"}),eP=Ni.highest(ve.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"}}}})),Wk=Me.define({map(n,e){return n==null?null:e.mapPos(n)}}),vo=Zt.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,s)=>s.is(Wk)?s.value:t,n)}}),tP=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(vo);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(vo)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:n}=this,e=n.state.field(vo),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(vo)!=n&&this.view.dispatch({effects:Wk.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 nP(){return[vo,tP]}function _x(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 sP(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 iP{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 Us,s=t.add.bind(t);for(let{from:i,to:r}of sP(e,this.maxLength))_x(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=[],x,k=(S,w,$)=>O.push($.range(S,w));if(u==f)for(this.regexp.lastIndex=p-u.from;(x=this.regexp.exec(u.text))&&x.index<g-u.from;)this.addMatch(x,e,x.index+u.from,k);else _x(e.state.doc,this.regexp,p,g,(S,w)=>this.addMatch(w,e,S,k));t=t.update({filterFrom:p,filterTo:g,filter:(S,w)=>S<p||w>g,add:O})}}return t}}const dp=/x/.unicode!=null?"gu":"g",rP=new RegExp(`[\0-\b
50
+ --Ÿ­؜​‎‏\u2028\u2029‭‮⁦⁧⁩\uFEFF-]`,dp),lP={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 nf=null;function oP(){var n;if(nf==null&&typeof document<"u"&&document.body){let e=document.body.style;nf=((n=e.tabSize)!==null&&n!==void 0?n:e.MozTabSize)!=null}return nf||!1}const Wc=we.define({combine(n){let e=Ps(n,{render:null,specialChars:rP,addSpecialChars:null});return(e.replaceTabs=!oP())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,dp)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,dp)),e}});function aP(n={}){return[Wc.of(n),cP()]}let $x=null;function cP(){return $x||($x=mt.fromClass(class{constructor(n){this.view=n,this.decorations=Qe.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(n.state.facet(Wc)),this.decorations=this.decorator.createDeco(n)}makeDecorator(n){return new iP({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=fl(o.text,c,s-o.from);return Qe.replace({widget:new fP((c-u%c)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[r]||(this.decorationCache[r]=Qe.replace({widget:new hP(n,r)}))},boundary:n.replaceTabs?void 0:/[^]/})}update(n){let e=n.state.facet(Wc);n.startState.facet(Wc)!=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 uP="•";function dP(n){return n>=32?uP:n==10?"␤":String.fromCharCode(9216+n)}class hP extends Qs{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=dP(this.code),s=e.state.phrase("Control character")+" "+(lP[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 fP extends Qs{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 pP(){return gP}const mP=Qe.line({class:"cm-activeLine"}),gP=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(mP.range(i.from)),e=i.from)}return Qe.set(t)}},{decorations:n=>n.decorations});class OP extends Qs{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?ll(e.firstChild):[];if(!t.length)return null;let s=window.getComputedStyle(e.parentNode),i=Uo(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 vP(n){let e=mt.fromClass(class{constructor(t){this.view=t,this.placeholder=n?Qe.set([Qe.widget({widget:new OP(n),side:1}).range(0)]):Qe.none}get decorations(){return this.view.state.doc.length?Qe.none:this.placeholder}},{decorations:t=>t.decorations});return typeof n=="string"?[e,ve.contentAttributes.of({"aria-placeholder":n})]:e}const hp=2e3;function xP(n,e,t){let s=Math.min(e.line,t.line),i=Math.max(e.line,t.line),r=[];if(e.off>hp||t.off>hp||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(re.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=Xf(f.text,o,n.tabSize,!0);if(p<0)r.push(re.cursor(f.to));else{let g=Xf(f.text,c,n.tabSize);r.push(re.range(f.from+p,f.from+g))}}}return r}function yP(n,e){let t=n.coordsAtPos(n.viewport.from);return t?Math.round(Math.abs((t.left-e)/n.defaultCharacterWidth)):-1}function Cx(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>hp?-1:i==s.length?yP(n,e.clientX):fl(s.text,n.state.tabSize,t-s.from);return{line:s.number,col:r,off:i}}function kP(n,e){let t=Cx(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=Cx(n,i);if(!c)return s;let u=xP(n.state,t,c);return u.length?o?re.create(u.concat(s.ranges)):re.create(u):s}}:null}function SP(n){let e=(t=>t.altKey&&t.button==0);return ve.mouseSelectionStyle.of((t,s)=>e(s)?kP(t,s):null)}const wP={Alt:[18,n=>!!n.altKey],Control:[17,n=>!!n.ctrlKey],Shift:[16,n=>!!n.shiftKey],Meta:[91,n=>!!n.metaKey]},bP={style:"cursor: crosshair"};function _P(n={}){let[e,t]=wP[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,ve.contentAttributes.of(i=>{var r;return!((r=i.plugin(s))===null||r===void 0)&&r.isDown?bP:null})]}const ro="-10000px";class Gk{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 $P(n){let e=n.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}const sf=we.define({combine:n=>{var e,t,s;return{position:Se.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)||$P}}}),Px=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(sf);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 Gk(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(sf);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=ro,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(Se.gecko)t=r.offsetParent!=this.container.ownerDocument.body;else if(r.style.top==ro&&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=Up(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(sf).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=ro;continue}let x=u.arrow?f.dom.querySelector(".cm-tooltip-arrow"):null,k=x?7:0,S=O.right-O.left,w=(e=Px.get(f))!==null&&e!==void 0?e:O.bottom-O.top,$=f.offset||PP,b=this.view.textDirection==ot.LTR,P=O.width>s.right-s.left?b?s.left:s.right-O.width:b?Math.max(s.left,Math.min(g.left-(x?14:0)+$.x,s.right-S)):Math.min(Math.max(s.left,g.left-S+(x?14:0)-$.x),s.right-S),C=this.above[c];!u.strictSide&&(C?g.top-w-k-$.y<s.top:g.bottom+w+k+$.y>s.bottom)&&C==s.bottom-g.bottom>g.top-s.top&&(C=this.above[c]=!C);let Q=(C?g.top-s.top:s.bottom-g.bottom)-k;if(Q<w&&f.resize!==!1){if(Q<this.view.defaultLineHeight){p.style.top=ro;continue}Px.set(f,w),p.style.height=(w=Q)/r+"px"}else p.style.height&&(p.style.height="");let N=C?g.top-w-k-$.y:g.bottom+k+$.y,A=P+S;if(f.overlap!==!0)for(let X of o)X.left<A&&X.right>P&&X.top<N+w&&X.bottom>N&&(N=C?X.top-w-2-k:X.bottom+k+2);if(this.position=="absolute"?(p.style.top=(N-n.parent.top)/r+"px",Qx(p,(P-n.parent.left)/i)):(p.style.top=N/r+"px",Qx(p,P/i)),x){let X=g.left+(b?$.x:-$.x)-(P+14-7);x.style.left=X/i+"px"}f.overlap!==!0&&o.push({left:P,top:N,right:A,bottom:N+w}),p.classList.toggle("cm-tooltip-above",C),p.classList.toggle("cm-tooltip-below",!C),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=ro}},{eventObservers:{scroll(){this.maybeMeasure()}}});function Qx(n,e){let t=parseInt(n.style.left,10);(isNaN(t)||Math.abs(e-t)>1)&&(n.style.left=e+"px")}const CP=ve.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"}}}),PP={x:0,y:0},Jp=we.define({enables:[Kp,CP]}),hu=we.define({combine:n=>n.reduce((e,t)=>e.concat(t),[])});class Bu{static create(e){return new Bu(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new Gk(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 QP=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:Bu.create,above:e[0].above,arrow:e.some(t=>t.arrow)}});class jP{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 wi)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=>Sn(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==Bu.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&&!TP(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:!NP(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 Pc=4;function TP(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-Pc&&e.clientX<=s+Pc&&e.clientY>=i-Pc&&e.clientY<=r+Pc}function NP(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 EP(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(AP)&&(i=[]);return i},provide:i=>hu.from(i)});return{active:s,extension:[s,mt.define(i=>new jP(i,n,s,t,e.hoverTime||300)),QP]}}function Hk(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 AP=Me.define(),jx=we.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 Lo(n,e){let t=n.plugin(Kk),s=t?t.specs.indexOf(e):-1;return s>-1?t.panels[s]:null}const Kk=mt.fromClass(class{constructor(n){this.input=n.state.facet(Io),this.specs=this.input.filter(t=>t),this.panels=this.specs.map(t=>t(n));let e=n.state.facet(jx);this.top=new Qc(n,!0,e.topContainer),this.bottom=new Qc(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(jx);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new Qc(n.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new Qc(n.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let t=n.state.facet(Io);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=>ve.scrollMargins.of(e=>{let t=e.plugin(n);return t&&{top:t.top.scrollMargin(),bottom:t.bottom.scrollMargin()}})});class Qc{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=Tx(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=Tx(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 Tx(n){let e=n.nextSibling;return n.remove(),e}const Io=we.define({enables:Kk});class Gs extends lr{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 Gc=we.define(),MP=we.define(),RP={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>Ye.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},bo=we.define();function DP(n){return[Jk(),bo.of({...RP,...n})]}const Nx=we.define({combine:n=>n.some(e=>e)});function Jk(n){return[LP]}const LP=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(bo).map(e=>new Ax(n,e)),this.fixed=!n.state.facet(Nx);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(Nx)!=!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=Ye.iter(this.view.state.facet(Gc),this.view.viewport.from),s=[],i=this.gutters.map(r=>new IP(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==ln.Text&&o){fp(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==ln.Text){fp(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(bo),t=n.state.facet(bo),s=n.docChanged||n.heightChanged||n.viewportChanged||!Ye.eq(n.startState.facet(Gc),n.state.facet(Gc),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 Ax(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=>ve.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 Ex(n){return Array.isArray(n)?n:[n]}function fp(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}class IP{constructor(e,t,s){this.gutter=e,this.height=s,this.i=0,this.cursor=Ye.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 eS(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=[];fp(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(MP)){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 Ax{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=Ex(t.markers(e)),t.initialSpacer&&(this.spacer=new eS(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=Ex(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!Ye.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 eS{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":""),ZP(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 ZP(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 zP=we.define(),BP=we.define(),Gr=we.define({combine(n){return Ps(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 rf extends Gs{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function lf(n,e){return n.state.facet(Gr).formatNumber(e,n.state)}const FP=bo.compute([Gr],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(zP)},lineMarker(e,t,s){return s.some(i=>i.toDOM)?null:new rf(lf(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,s)=>{for(let i of e.state.facet(BP)){let r=i(e,t,s);if(r)return r}return null},lineMarkerChange:e=>e.startState.facet(Gr)!=e.state.facet(Gr),initialSpacer(e){return new rf(lf(e,Mx(e.state.doc.lines)))},updateSpacer(e,t){let s=lf(t.view,Mx(t.view.state.doc.lines));return s==e.number?e:new rf(s)},domEventHandlers:n.facet(Gr).domEventHandlers,side:"before"}));function XP(n={}){return[Gr.of(n),Jk(),FP]}function Mx(n){let e=9;for(;e<n;)e=e*10+9;return e}const VP=new class extends Gs{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},qP=Gc.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(VP.range(i)))}return Ye.of(e)});function YP(){return qP}const tS=1024;let UP=0;class of{constructor(e,t){this.from=e,this.to=t}}class Ie{constructor(e={}){this.id=UP++,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]}}}Ie.closedBy=new Ie({deserialize:n=>n.split(" ")});Ie.openedBy=new Ie({deserialize:n=>n.split(" ")});Ie.group=new Ie({deserialize:n=>n.split(" ")});Ie.isolate=new Ie({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});Ie.contextHash=new Ie({perNode:!0});Ie.lookAhead=new Ie({perNode:!0});Ie.mounted=new Ie({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[Ie.mounted.id]}}const WP=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):WP,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(Ie.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(Ie.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 jc=new WeakMap,Rx=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 mp(this.topNode,e)}cursorAt(e,t=0,s=0){let i=jc.get(this)||this.topNode,r=new mp(i);return r.moveTo(e,t),jc.set(this,r._tree),r}get topNode(){return new bn(this,0,0,null)}resolve(e,t=0){let s=Zo(jc.get(this)||this.topNode,e,t,!1);return jc.set(this,s),s}resolveInner(e,t=0){let s=Zo(Rx.get(this)||this.topNode,e,t,!0);return Rx.set(this,s),s}resolveStack(e,t=0){return KP(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 JP(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&&!(nS(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 nS(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 Zo(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 sS{cursor(e=0){return new mp(this,e)}getChild(e,t=null,s=null){let i=Dx(this,e,t,s);return i.length?i[0]:null}getChildren(e,t=null,s=null){return Dx(this,e,t,s)}resolve(e,t=0){return Zo(this,e,t,!1)}resolveInner(e,t=0){return Zo(this,e,t,!0)}matchContext(e){return pp(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 sS{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(nS(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 ks(new GP(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 x=new bn(p,g,e,o);return r&jt.IncludeAnonymous||!x.type.isAnonymous?x:x.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 Dx(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 pp(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 GP{constructor(e,t,s,i){this.parent=e,this.buffer=t,this.index=s,this.start=i}}class ks extends sS{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 ks(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 ks(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 ks(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 ks(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 iS(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 HP(i,t)}class HP{constructor(e,t){this.heads=e,this.node=t}get next(){return iS(this.heads)}}function KP(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(Zo(c,e,t,!1))}}return i?iS(i):s}class mp{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 ks(this.buffer,t,this.stack[i]);return this.bufferNode=new ks(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 pp(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 pp(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 JP(n){var e;let{buffer:t,nodeSet:s,maxBufferLength:i=tS,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(Q,N,A,X,B,H){let{id:J,start:R,end:V,size:Y}=c,te=p,pe=f;for(;Y<0;)if(c.next(),Y==-1){let j=r[J];A.push(j),X.push(R-Q);return}else if(Y==-3){f=J;return}else if(Y==-4){p=J;return}else throw new RangeError(`Unrecognized record size: ${Y}`);let ce=u[J],U,z,T=R-Q;if(V-R<=i&&(z=w(c.pos-N,B))){let j=new Uint16Array(z.size-z.skip),L=c.pos-z.size,le=j.length;for(;c.pos>L;)le=$(z.start,j,le);U=new ji(j,V-z.start,s),T=z.start-Q}else{let j=c.pos-Y;c.next();let L=[],le=[],ee=J>=o?J:-1,ie=0,he=V;for(;c.pos>j;)ee>=0&&c.id==ee&&c.size>=0?(c.end<=he-i&&(k(L,le,R,ie,c.end,he,ee,te,pe),ie=L.length,he=c.end),c.next()):H>2500?O(R,j,L,le):g(R,j,L,le,ee,H+1);if(ee>=0&&ie>0&&ie<L.length&&k(L,le,R,ie,R,he,ee,te,pe),L.reverse(),le.reverse(),ee>-1&&ie>0){let me=x(ce,pe);U=sm(ce,L,le,0,L.length,0,V-R,me,me)}else U=S(ce,L,le,V-R,te-V,pe)}A.push(U),X.push(T)}function O(Q,N,A,X){let B=[],H=0,J=-1;for(;c.pos>N;){let{id:R,start:V,end:Y,size:te}=c;if(te>4)c.next();else{if(J>-1&&V<J)break;J<0&&(J=Y-i),B.push(R,V,Y),H++,c.next()}}if(H){let R=new Uint16Array(H*4),V=B[B.length-2];for(let Y=B.length-3,te=0;Y>=0;Y-=3)R[te++]=B[Y],R[te++]=B[Y+1]-V,R[te++]=B[Y+2]-V,R[te++]=te;A.push(new ji(R,B[2]-V,s)),X.push(V-Q)}}function x(Q,N){return(A,X,B)=>{let H=0,J=A.length-1,R,V;if(J>=0&&(R=A[J])instanceof $t){if(!J&&R.type==Q&&R.length==B)return R;(V=R.prop(Ie.lookAhead))&&(H=X[J]+R.length+V)}return S(Q,A,X,B,H,N)}}function k(Q,N,A,X,B,H,J,R,V){let Y=[],te=[];for(;Q.length>X;)Y.push(Q.pop()),te.push(N.pop()+A-B);Q.push(S(s.types[J],Y,te,H-B,R-H,V)),N.push(B-A)}function S(Q,N,A,X,B,H,J){if(H){let R=[Ie.contextHash,H];J=J?[R].concat(J):[R]}if(B>25){let R=[Ie.lookAhead,B];J=J?[R].concat(J):[R]}return new $t(Q,N,A,X,J)}function w(Q,N){let A=c.fork(),X=0,B=0,H=0,J=A.end-i,R={size:0,start:0,skip:0};e:for(let V=A.pos-Q;A.pos>V;){let Y=A.size;if(A.id==N&&Y>=0){R.size=X,R.start=B,R.skip=H,H+=4,X+=4,A.next();continue}let te=A.pos-Y;if(Y<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()}B=ce,X+=Y,H+=pe}return(N<0||X==Q)&&(R.size=X,R.start=B,R.skip=H),R.size>4?R:void 0}function $(Q,N,A){let{id:X,start:B,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=$(Q,N,A)}N[--A]=R,N[--A]=H-Q,N[--A]=B-Q,N[--A]=X}else J==-3?f=X:J==-4&&(p=X);return A}let b=[],P=[];for(;c.pos>0;)g(n.start||0,n.bufferStart||0,b,P,-1,0);let C=(e=n.length)!==null&&e!==void 0?e:b.length?P[0]+b[0].length:0;return new $t(u[n.topID],b.reverse(),P.reverse(),C)}const Lx=new WeakMap;function Hc(n,e){if(!n.isAnonymous||e instanceof ji||e.type!=n)return 1;let t=Lx.get(e);if(t==null){t=1;for(let s of e.children){if(s.type!=n||!(s instanceof $t)){t=1;break}t+=Hc(n,s)}Lx.set(e,t)}return t}function sm(n,e,t,s,i,r,o,c,u){let f=0;for(let k=s;k<i;k++)f+=Hc(n,e[k]);let p=Math.ceil(f*1.5/8),g=[],O=[];function x(k,S,w,$,b){for(let P=w;P<$;){let C=P,Q=S[P],N=Hc(n,k[P]);for(P++;P<$;P++){let A=Hc(n,k[P]);if(N+A>=p)break;N+=A}if(P==C+1){if(N>p){let A=k[C];x(A.children,A.positions,0,A.children.length,S[C]+b);continue}g.push(k[C])}else{let A=S[P-1]+k[P-1].length-Q;g.push(sm(n,k,S,C,P,Q,A,null,u))}O.push(Q+b-r)}}return x(e,t,s,i,0),(c||u)(g,O,o)}class eQ{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 ks?this.setBuffer(e.context.buffer,e.index,t):e instanceof bn&&this.map.set(e.tree,t)}get(e){return e instanceof ks?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 nr{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 nr(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 x=Math.max(O.from,u)-f,k=Math.min(O.to,g)-f;O=x>=k?null:new nr(x,k,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 rS{startParse(e,t,s){return typeof e=="string"&&(e=new tQ(e)),s=s?s.length?s.map(i=>new of(i.from,i.to)):[new of(0,0)]:[new of(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 tQ{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 Ie({perNode:!0});let nQ=0;class Zn{constructor(e,t,s,i){this.name=e,this.set=t,this.base=s,this.modified=i,this.id=nQ++}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 sQ=0;class pu{constructor(e){this.name=e,this.instances=[],this.id=sQ++}static get(e,t){if(!t.length)return e;let s=t[0].instances.find(c=>c.base==e&&iQ(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=rQ(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 iQ(n,e){return n.length==e.length&&n.every((t,s)=>t==e[s])}function rQ(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 lS(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 x=i[g++];if(g==i.length&&x=="!"){o=0;break}if(x!="/")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 oS.add(e)}const oS=new Ie;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 aS(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 lQ(n,e){let t=null;for(let s of n){let i=s.style(e);i&&(t=t?t+" "+i:i)}return t}function oQ(n,e,t,s=0,i=n.length){let r=new aQ(s,Array.isArray(e)?e:[e],t);r.highlightRange(n.cursor(),s,i,"",r.highlighters),r.flush(i)}class aQ{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(x=>!x.scope||x.scope(o)));let f=i,p=cQ(e)||mu.empty,g=lQ(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(Ie.mounted);if(O&&O.overlay){let x=e.node.enter(O.overlay[0].from+c,1),k=this.highlighters.filter(w=>!w.scope||w.scope(O.tree.type)),S=e.firstChild();for(let w=0,$=c;;w++){let b=w<O.overlay.length?O.overlay[w]:null,P=b?b.from+c:u,C=Math.max(t,$),Q=Math.min(s,P);if(C<Q&&S)for(;e.from<Q&&(this.highlightRange(e,C,Q,i,r),this.startSpan(Math.min(Q,e.to),f),!(e.to>=P||!e.nextSibling())););if(!b||P>s)break;$=b.to+c,$>t&&(this.highlightRange(x.cursor(),Math.max(t,b.from+c),Math.min(s,$),"",k),this.startSpan(Math.min(s,$),f))}S&&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 cQ(n){let e=n.type.prop(oS);for(;e&&e.context&&!n.matchContext(e.context);)e=e.next;return e||null}const Oe=Zn.define,Tc=Oe(),vi=Oe(),Ix=Oe(vi),Zx=Oe(vi),xi=Oe(),Nc=Oe(xi),af=Oe(xi),ms=Oe(),Yi=Oe(ms),fs=Oe(),ps=Oe(),gp=Oe(),lo=Oe(gp),Ec=Oe(),Z={comment:Tc,lineComment:Oe(Tc),blockComment:Oe(Tc),docComment:Oe(Tc),name:vi,variableName:Oe(vi),typeName:Ix,tagName:Oe(Ix),propertyName:Zx,attributeName:Oe(Zx),className:Oe(vi),labelName:Oe(vi),namespace:Oe(vi),macroName:Oe(vi),literal:xi,string:Nc,docString:Oe(Nc),character:Oe(Nc),attributeValue:Oe(Nc),number:af,integer:Oe(af),float:Oe(af),bool:Oe(xi),regexp:Oe(xi),escape:Oe(xi),color:Oe(xi),url:Oe(xi),keyword:fs,self:Oe(fs),null:Oe(fs),atom:Oe(fs),unit:Oe(fs),modifier:Oe(fs),operatorKeyword:Oe(fs),controlKeyword:Oe(fs),definitionKeyword:Oe(fs),moduleKeyword:Oe(fs),operator:ps,derefOperator:Oe(ps),arithmeticOperator:Oe(ps),logicOperator:Oe(ps),bitwiseOperator:Oe(ps),compareOperator:Oe(ps),updateOperator:Oe(ps),definitionOperator:Oe(ps),typeOperator:Oe(ps),controlOperator:Oe(ps),punctuation:gp,separator:Oe(gp),bracket:lo,angleBracket:Oe(lo),squareBracket:Oe(lo),paren:Oe(lo),brace:Oe(lo),content:ms,heading:Yi,heading1:Oe(Yi),heading2:Oe(Yi),heading3:Oe(Yi),heading4:Oe(Yi),heading5:Oe(Yi),heading6:Oe(Yi),contentSeparator:Oe(ms),list:Oe(ms),quote:Oe(ms),emphasis:Oe(ms),strong:Oe(ms),link:Oe(ms),monospace:Oe(ms),strikethrough:Oe(ms),inserted:Oe(),deleted:Oe(),changed:Oe(),invalid:Oe(),meta:Ec,documentMeta:Oe(Ec),annotation:Oe(Ec),processingInstruction:Oe(Ec),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)}aS([{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 cf;const Hr=new Ie;function cS(n){return we.define({combine:n?e=>e.concat(n):void 0})}const im=new Ie;class ns{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=[Ti.of(this),ze.languageData.of((r,o,c)=>{let u=zx(r,o,c),f=u.type.prop(Hr);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 x of g)if(x.test(O,r)){let k=r.facet(x.facet);return x.type=="replace"?k:k.concat(p)}}return p})].concat(s)}isActiveAt(e,t,s=-1){return zx(e,t,s).type.prop(Hr)==this.data}findRegions(e){let t=e.facet(Ti);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(Hr)==this.data){s.push({from:o,to:o+r.length});return}let c=r.prop(Ie.mounted);if(c){if(c.tree.prop(Hr)==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}}ns.setState=Me.define();function zx(n,e,t){let s=n.facet(Ti),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 ns{constructor(e,t,s){super(e,t,[],s),this.parser=t}static define(e){let t=cS(e.languageData);return new gu(t,e.parser.configure({props:[Hr.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(ns.state,!1);return e?e.tree:$t.empty}class uQ{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 oo=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 uQ(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(nr.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(nr.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=oo;oo=this;try{return e()}finally{oo=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Bx(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=nr.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=Bx(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 rS{createParse(t,s,i){let r=i[0].from,o=i[i.length-1].to;return{parsedPos:r,advance(){let u=oo;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 oo}}function Bx(n,e,t){return nr.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}class ul{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 ul(t)}static init(e){let t=Math.min(3e3,e.doc.length),s=Ou.create(e.facet(Ti).parser,e,{from:0,to:t});return s.work(20,t)||s.takeTree(),new ul(s)}}ns.state=Zt.define({create:ul.init,update(n,e){for(let t of e.effects)if(t.is(ns.setState))return t.value;return e.startState.facet(Ti)!=e.state.facet(Ti)?ul.init(e.state):n.apply(e)}});let uS=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(uS=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const uf=typeof navigator<"u"&&(!((cf=navigator.scheduling)===null||cf===void 0)&&cf.isInputPending)?()=>navigator.scheduling.isInputPending():null,dQ=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(ns.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(ns.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=uS(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(ns.state);if(r.tree==r.context.tree&&r.context.isDone(i+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!uf?Math.max(25,e.timeRemaining()-5):1e9),c=r.context.treeLen<i&&s.doc.length>i+1e3,u=r.context.work(()=>uf&&uf()||Date.now()>o,i+(c?0:1e5));this.chunkBudget-=Date.now()-t,(u||this.chunkBudget<=0)&&(r.context.takeTree(),this.view.dispatch({effects:ns.setState.of(new ul(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=>Sn(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()}}}),Ti=we.define({combine(n){return n.length?n[0]:null},enables:n=>[ns.state,dQ,ve.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});class hQ{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}const fQ=we.define(),Jo=we.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 vu(n){let e=n.facet(Jo);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function zo(n,e){let t="",s=n.tabSize,i=n.facet(Jo)[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 Fu(n));for(let s of n.state.facet(fQ)){let i=s(n,e);if(i!==void 0)return i}let t=Nt(n.state);return t.length>=e?pQ(n,t,e):null}class Fu{constructor(e,t={}){this.state=e,this.options=t,this.unit=vu(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 fl(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 dS=new Ie;function pQ(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 hS(s,n,t)}function hS(n,e,t){for(let s=n;s;s=s.next){let i=gQ(s.node);if(i)return i(lm.create(e,t,s))}return 0}function mQ(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function gQ(n){let e=n.type.prop(dS);if(e)return e;let t=n.firstChild,s;if(t&&(s=t.type.prop(Ie.closedBy))){let i=n.lastChild,r=i&&s.indexOf(i.name)>-1;return o=>fS(o,!0,1,void 0,r&&!mQ(o)?i.from:void 0)}return n.parent==null?OQ:null}function OQ(){return 0}class lm extends Fu{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(vQ(s,e))break;t=this.state.doc.lineAt(s.from)}return this.lineIndent(t.from)}continue(){return hS(this.context.next,this.base,this.pos)}}function vQ(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function xQ(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 yQ({closing:n,align:e=!0,units:t=1}){return s=>fS(s,e,t,n)}function fS(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?xQ(n):null;return u?c?n.column(u.from):n.column(u.to):n.baseIndent+(c?0:n.unit*t)}const kQ=n=>n.baseIndent;function df({except:n,units:e=1}={}){return t=>{let s=n&&n.test(t.textAfter);return t.baseIndent+(s?0:e*t.unit)}}const SQ=200;function wQ(){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+SQ)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],x=zo(o,g);O!=x&&u.push({from:p.from,to:p.from+O.length,insert:x})}return u.length?[n,{changes:u,sequential:!0}]:n})}const bQ=we.define(),pS=new Ie;function _Q(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 $Q(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(pS);if(u&&(c.to<s.length-50||s.length==n.doc.length||!CQ(c))){let f=u(c,n);f&&f.from<=t&&f.from>=e&&f.to>t&&(r=f)}}return r}function CQ(n){let e=n.lastChild;return e&&e.to==n.to&&e.type.isError}function xu(n,e,t){for(let s of n.facet(bQ)){let i=s(n,e,t);if(i)return i}return $Q(n,e,t)}function mS(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 Xu=Me.define({map:mS}),ea=Me.define({map:mS});function gS(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 ur=Zt.define({create(){return Qe.none},update(n,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((t,s)=>n=Fx(n,t,s)),n=n.map(e.changes);for(let t of e.effects)if(t.is(Xu)&&!PQ(n,t.value.from,t.value.to)){let{preparePlaceholder:s}=e.state.facet(xS),i=s?Qe.replace({widget:new MQ(s(e.state,t.value))}):Xx;n=n.update({add:[i.range(t.value.from,t.value.to)]})}else t.is(ea)&&(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=Fx(n,e.selection.main.head)),n},provide:n=>ve.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(Xx.range(s,i))}return Qe.set(e,!0)}});function Fx(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 yu(n,e,t){var s;let i=null;return(s=n.field(ur,!1))===null||s===void 0||s.between(e,t,(r,o)=>{(!i||i.from>r)&&(i={from:r,to:o})}),i}function PQ(n,e,t){let s=!1;return n.between(e,e,(i,r)=>{i==e&&r==t&&(s=!0)}),s}function OS(n,e){return n.field(ur,!1)?e:e.concat(Me.appendConfig.of(yS()))}const QQ=n=>{for(let e of gS(n)){let t=xu(n.state,e.from,e.to);if(t)return n.dispatch({effects:OS(n.state,[Xu.of(t),vS(n,t)])}),!0}return!1},jQ=n=>{if(!n.state.field(ur,!1))return!1;let e=[];for(let t of gS(n)){let s=yu(n.state,t.from,t.to);s&&e.push(ea.of(s),vS(n,s,!1))}return e.length&&n.dispatch({effects:e}),e.length>0};function vS(n,e,t=!0){let s=n.state.doc.lineAt(e.from).number,i=n.state.doc.lineAt(e.to).number;return ve.announce.of(`${n.state.phrase(t?"Folded lines":"Unfolded lines")} ${s} ${n.state.phrase("to")} ${i}.`)}const TQ=n=>{let{state:e}=n,t=[];for(let s=0;s<e.doc.length;){let i=n.lineBlockAt(s),r=xu(e,i.from,i.to);r&&t.push(Xu.of(r)),s=(r?n.lineBlockAt(r.to):i).to+1}return t.length&&n.dispatch({effects:OS(n.state,t)}),!!t.length},NQ=n=>{let e=n.state.field(ur,!1);if(!e||!e.size)return!1;let t=[];return e.between(0,n.state.doc.length,(s,i)=>{t.push(ea.of({from:s,to:i}))}),n.dispatch({effects:t}),!0},EQ=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:QQ},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:jQ},{key:"Ctrl-Alt-[",run:TQ},{key:"Ctrl-Alt-]",run:NQ}],AQ={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},xS=we.define({combine(n){return Ps(n,AQ)}});function yS(n){return[ur,LQ]}function kS(n,e){let{state:t}=n,s=t.facet(xS),i=o=>{let c=n.lineBlockAt(n.posAtDOM(o.target)),u=yu(n.state,c.from,c.to);u&&n.dispatch({effects:ea.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 Xx=Qe.replace({widget:new class extends Qs{toDOM(n){return kS(n,null)}}});class MQ extends Qs{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return kS(e,this.value)}}const RQ={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class hf 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 DQ(n={}){let e={...RQ,...n},t=new hf(e,!0),s=new hf(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(Ti)!=o.state.facet(Ti)||o.startState.field(ur,!1)!=o.state.field(ur,!1)||Nt(o.startState)!=Nt(o.state)||e.foldingChanged(o))&&(this.markers=this.buildMarkers(o.view))}buildMarkers(o){let c=new Us;for(let u of o.viewportLineBlocks){let f=yu(o.state,u.from,u.to)?s:xu(o.state,u.from,u.to)?t:null;f&&c.add(u.from,u.from,f)}return c.finish()}}),{domEventHandlers:r}=e;return[i,DP({class:"cm-foldGutter",markers(o){var c;return((c=o.plugin(i))===null||c===void 0?void 0:c.markers)||Ye.empty},initialSpacer(){return new hf(e,!1)},domEventHandlers:{...r,click:(o,c,u)=>{if(r.click&&r.click(o,c,u))return!0;let f=yu(o.state,c.from,c.to);if(f)return o.dispatch({effects:ea.of(f)}),!0;let p=xu(o.state,c.from,c.to);return p?(o.dispatch({effects:Xu.of(p)}),!0):!1}}}),yS()]}const LQ=ve.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 ta{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 ns?c=>c.prop(Hr)==o.data:o?c=>c==o:void 0,this.style=aS(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 ta(e,t||{})}}const Op=we.define(),SS=we.define({combine(n){return n.length?[n[0]]:null}});function ff(n){let e=n.facet(Op);return e.length?e:n.facet(SS)}function wS(n,e){let t=[ZQ],s;return n instanceof ta&&(n.module&&t.push(ve.styleModule.of(n.module)),s=n.themeType),e?.fallback?t.push(SS.of(n)):s?t.push(Op.computeN([ve.darkTheme],i=>i.facet(ve.darkTheme)==(s=="dark")?[n]:[])):t.push(Op.of(n)),t}class IQ{constructor(e){this.markCache=Object.create(null),this.tree=Nt(e.state),this.decorations=this.buildDeco(e,ff(e.state)),this.decoratedTo=e.viewport.to}update(e){let t=Nt(e.state),s=ff(e.state),i=s!=ff(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 Qe.none;let s=new Us;for(let{from:i,to:r}of e.visibleRanges)oQ(this.tree,t,(o,c,u)=>{s.add(o,c,this.markCache[u]||(this.markCache[u]=Qe.mark({class:u})))},i,r);return s.finish()}}const ZQ=Ni.high(mt.fromClass(IQ,{decorations:n=>n.decorations})),zQ=ta.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"}]),BQ=ve.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),bS=1e4,_S="()[]{}",$S=we.define({combine(n){return Ps(n,{afterCursor:!0,brackets:_S,maxScanDistance:bS,renderMatch:VQ})}}),FQ=Qe.mark({class:"cm-matchingBracket"}),XQ=Qe.mark({class:"cm-nonmatchingBracket"});function VQ(n){let e=[],t=n.matched?FQ:XQ;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 qQ=Zt.define({create(){return Qe.none},update(n,e){if(!e.docChanged&&!e.selection)return n;let t=[],s=e.state.facet($S);for(let i of e.state.selection.ranges){if(!i.empty)continue;let r=Ss(e.state,i.head,-1,s)||i.head>0&&Ss(e.state,i.head-1,1,s)||s.afterCursor&&(Ss(e.state,i.head,1,s)||i.head<e.state.doc.length&&Ss(e.state,i.head+1,-1,s));r&&(t=t.concat(s.renderMatch(r,e.state)))}return Qe.set(t,!0)},provide:n=>ve.decorations.from(n)}),YQ=[qQ,BQ];function UQ(n={}){return[$S.of(n),YQ]}const WQ=new Ie;function vp(n,e,t){let s=n.prop(e<0?Ie.openedBy:Ie.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 xp(n){let e=n.type.prop(WQ);return e?e(n.node):n}function Ss(n,e,t,s={}){let i=s.maxScanDistance||bS,r=s.brackets||_S,o=Nt(n),c=o.resolveInner(e,t);for(let u=c;u;u=u.parent){let f=vp(u.type,t,r);if(f&&u.from<u.to){let p=xp(u);if(p&&(t>0?e>=p.from&&e<p.to:e>p.from&&e<=p.to))return GQ(n,e,t,u,p,f,r)}}return HQ(n,e,t,o,c.type,i,r)}function GQ(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=xp(p);return{start:u,end:g?{from:g.from,to:g.to}:void 0,matched:!0}}else if(vp(p.type,t,o))f++;else if(vp(p.type,-t,o)){if(f==0){let g=xp(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 HQ(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 x=p.value;t<0&&(O+=x.length);let k=e+O*t;for(let S=t>0?0:x.length-1,w=t>0?x.length:-1;S!=w;S+=t){let $=o.indexOf(x[S]);if(!($<0||s.resolveInner(k+S,1).type!=i))if($%2==0==t>0)g++;else{if(g==1)return{start:f,end:{from:k+S,to:k+S+1},matched:$>>1==u>>1};g--}}t>0&&(O+=x.length)}return p.done?{start:f,matched:!1}:null}const KQ=Object.create(null),Vx=[_n.none],qx=[],Yx=Object.create(null),JQ=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"]])JQ[n]=ej(KQ,e);function pf(n,e){qx.indexOf(n)>-1||(qx.push(n),console.warn(e))}function ej(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):pf(f,`Modifier ${f} used at start of tag`):u.length?pf(f,`Tag ${f} used as modifier`):u=Array.isArray(p)?p:[p]:pf(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=Yx[i];if(r)return r.id;let o=Yx[i]=_n.define({id:Vx.length,name:s,props:[lS({[s]:t})]});return Vx.push(o),o.id}ot.RTL,ot.LTR;const tj=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),s=am(n.state,t.from);return s.line?nj(n):s.block?ij(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 nj=om(oj,0),sj=om(CS,0),ij=om((n,e)=>CS(n,e,lj(e)),0);function am(n,e){let t=n.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}const ao=50;function rj(n,{open:e,close:t},s,i){let r=n.sliceDoc(s-ao,s),o=n.sliceDoc(i,i+ao),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*ao?p=g=n.sliceDoc(s,i):(p=n.sliceDoc(s,s+ao),g=n.sliceDoc(i-ao,i));let O=/^\s*/.exec(p)[0].length,x=/\s*$/.exec(g)[0].length,k=g.length-x-t.length;return p.slice(O,O+e.length)==e&&g.slice(k,k+t.length)==t?{open:{pos:s+O+e.length,margin:/\s/.test(p.charAt(O+e.length))?1:0},close:{pos:i-x-t.length,margin:/\s/.test(g.charAt(k-1))?1:0}}:null}function lj(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 CS(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)=>rj(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 oj(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,x=O==g.length,k=g.text.slice(O,O+f.length)==f?O:-1;O<g.text.length&&O<u&&(u=O),s.push({line:g,comment:k,token:f,indent:O,empty:x,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 yp=Cs.define(),aj=Cs.define(),cj=we.define(),PS=we.define({combine(n){return Ps(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)})}}),QS=Zt.define({create(){return ws.empty},update(n,e){let t=e.state.facet(PS),s=e.annotation(yp);if(s){let u=wn.fromTransaction(e,s.selection),f=s.side,p=f==0?n.undone:n.done;return u?p=ku(p,p.length,t.minDepth,u):p=NS(p,e.startState.selection),new ws(f==0?s.rest:p,f==0?p:s.rest)}let i=e.annotation(aj);if((i=="full"||i=="before")&&(n=n.isolate()),e.annotation(_t.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let r=wn.fromTransaction(e),o=e.annotation(_t.time),c=e.annotation(_t.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 ws(n.done.map(wn.fromJSON),n.undone.map(wn.fromJSON))}});function uj(n={}){return[QS,PS.of(n),ve.domEventHandlers({beforeinput(e,t){let s=e.inputType=="historyUndo"?jS:e.inputType=="historyRedo"?kp:null;return s?(e.preventDefault(),s(t)):!1}})]}function Vu(n,e){return function({state:t,dispatch:s}){if(!e&&t.readOnly)return!1;let i=t.field(QS,!1);if(!i)return!1;let r=i.pop(n,t,e);return r?(s(r),!0):!1}}const jS=Vu(0,!1),kp=Vu(1,!1),dj=Vu(0,!0),hj=Vu(1,!0);class wn{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 wn(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 wn(e.changes&&Qt.fromJSON(e.changes),[],e.mapped&&_s.fromJSON(e.mapped),e.startSelection&&re.fromJSON(e.startSelection),e.selectionsAfter.map(re.fromJSON))}static fromTransaction(e,t){let s=zn;for(let i of e.startState.facet(cj)){let r=i(e);r.length&&(s=s.concat(r))}return!s.length&&e.changes.empty?null:new wn(e.changes.invert(e.startState.doc),s,void 0,t||e.startState.selection,zn)}static selection(e){return new wn(void 0,zn,void 0,void 0,e)}}function ku(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 fj(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 pj(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,s)=>t.empty!=e.ranges[s].empty).length===0}function TS(n,e){return n.length?e.length?n.concat(e):n:e}const zn=[],mj=200;function NS(n,e){if(n.length){let t=n[n.length-1],s=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-mj));return s.length&&s[s.length-1].eq(e)?n:(s.push(e),ku(n,n.length-1,1e9,t.setSelAfter(s)))}else return[wn.selection([e])]}function gj(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 mf(n,e){if(!n.length)return n;let t=n.length,s=zn;for(;t;){let i=Oj(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?[wn.selection(s)]:zn}function Oj(n,e,t){let s=TS(n.selectionsAfter.length?n.selectionsAfter.map(c=>c.map(e)):zn,t);if(!n.changes)return wn.selection(s);let i=n.changes.map(e),r=e.mapDesc(n.changes,!0),o=n.mapped?n.mapped.composeDesc(r):r;return new wn(i,Me.mapEffects(n.effects,e),o,n.startSelection.map(r),s)}const vj=/^(input\.type|delete)($|\.)/;class ws{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 ws(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||vj.test(s))&&(!c.selectionsAfter.length&&t-this.prevTime<i.newGroupDelay&&i.joinToEvent(r,fj(c.changes,e.changes))||s=="input.type.compose")?o=ku(o,o.length-1,i.minDepth,new wn(e.changes.compose(c.changes),TS(Me.mapEffects(e.effects,c.changes),c.effects),c.mapped,c.startSelection,zn)):o=ku(o,o.length,i.minDepth,e),new ws(o,zn,t,s)}addSelection(e,t,s,i){let r=this.done.length?this.done[this.done.length-1].selectionsAfter:zn;return r.length>0&&t-this.prevTime<i&&s==this.prevUserEvent&&s&&/^select($|\.)/.test(s)&&pj(r[r.length-1],e)?this:new ws(NS(this.done,e),this.undone,t,s)}addMapping(e){return new ws(mf(this.done,e),mf(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:yp.of({side:e,rest:gj(i),selection:o}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(r.changes){let c=i.length==1?zn:i.slice(0,i.length-1);return r.mapped&&(c=mf(c,r.mapped)),t.update({changes:r.changes,selection:r.startSelection,effects:r.effects,annotations:yp.of({side:e,rest:c,selection:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}ws.empty=new ws(zn,zn);const xj=[{key:"Mod-z",run:jS,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:kp,preventDefault:!0},{linux:"Ctrl-Shift-z",run:kp,preventDefault:!0},{key:"Mod-u",run:dj,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:hj,preventDefault:!0}];function pl(n,e){return re.create(n.ranges.map(e),n.mainIndex)}function js(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function rs({state:n,dispatch:e},t){let s=pl(n.selection,t);return s.eq(n.selection,!0)?!1:(e(js(n,s)),!0)}function qu(n,e){return re.cursor(e?n.to:n.from)}function ES(n,e){return rs(n,t=>t.empty?n.moveByChar(t,e):qu(t,e))}function Jt(n){return n.textDirectionAt(n.state.selection.main.head)==ot.LTR}const AS=n=>ES(n,!Jt(n)),MS=n=>ES(n,Jt(n));function RS(n,e){return rs(n,t=>t.empty?n.moveByGroup(t,e):qu(t,e))}const yj=n=>RS(n,!Jt(n)),kj=n=>RS(n,Jt(n));function Sj(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 Yu(n,e,t){let s=Nt(n).resolveInner(e.head),i=t?Ie.closedBy:Ie.openedBy;for(let u=e.head;;){let f=t?s.childAfter(u):s.childBefore(u);if(!f)break;Sj(n,f,i)?s=f:u=t?f.to:f.from}let r=s.type.prop(i),o,c;return r&&(o=t?Ss(n,s.from,1):Ss(n,s.to,-1))&&o.matched?c=t?o.end.to:o.end.from:c=t?s.to:s.from,re.cursor(c,t?-1:1)}const wj=n=>rs(n,e=>Yu(n.state,e,!Jt(n))),bj=n=>rs(n,e=>Yu(n.state,e,Jt(n)));function DS(n,e){return rs(n,t=>{if(!t.empty)return qu(t,e);let s=n.moveVertically(t,e);return s.head!=t.head?s:n.moveToLineBoundary(t,e)})}const LS=n=>DS(n,!1),IS=n=>DS(n,!0);function ZS(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,s=0,i;if(e){for(let r of n.state.facet(ve.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 zS(n,e){let t=ZS(n),{state:s}=n,i=pl(s.selection,o=>o.empty?n.moveVertically(o,e,t.height):qu(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=ve.scrollIntoView(i.main.head,{y:"start",yMargin:o.top-u}))}return n.dispatch(js(s,i),{effects:r}),!0}const Ux=n=>zS(n,!1),Sp=n=>zS(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=re.cursor(s.from+r))}return i}const _j=n=>rs(n,e=>Ei(n,e,!0)),$j=n=>rs(n,e=>Ei(n,e,!1)),Cj=n=>rs(n,e=>Ei(n,e,!Jt(n))),Pj=n=>rs(n,e=>Ei(n,e,Jt(n))),Qj=n=>rs(n,e=>re.cursor(n.lineBlockAt(e.head).from,1)),jj=n=>rs(n,e=>re.cursor(n.lineBlockAt(e.head).to,-1));function Tj(n,e,t){let s=!1,i=pl(n.selection,r=>{let o=Ss(n,r.head,-1)||Ss(n,r.head,1)||r.head>0&&Ss(n,r.head-1,1)||r.head<n.doc.length&&Ss(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 re.cursor(c)});return s?(e(js(n,i)),!0):!1}const Nj=({state:n,dispatch:e})=>Tj(n,e);function Vn(n,e){let t=pl(n.state.selection,s=>{let i=e(s);return re.range(s.anchor,i.head,i.goalColumn,i.bidiLevel||void 0)});return t.eq(n.state.selection)?!1:(n.dispatch(js(n.state,t)),!0)}function BS(n,e){return Vn(n,t=>n.moveByChar(t,e))}const FS=n=>BS(n,!Jt(n)),XS=n=>BS(n,Jt(n));function VS(n,e){return Vn(n,t=>n.moveByGroup(t,e))}const Ej=n=>VS(n,!Jt(n)),Aj=n=>VS(n,Jt(n)),Mj=n=>Vn(n,e=>Yu(n.state,e,!Jt(n))),Rj=n=>Vn(n,e=>Yu(n.state,e,Jt(n)));function qS(n,e){return Vn(n,t=>n.moveVertically(t,e))}const YS=n=>qS(n,!1),US=n=>qS(n,!0);function WS(n,e){return Vn(n,t=>n.moveVertically(t,e,ZS(n).height))}const Wx=n=>WS(n,!1),Gx=n=>WS(n,!0),Dj=n=>Vn(n,e=>Ei(n,e,!0)),Lj=n=>Vn(n,e=>Ei(n,e,!1)),Ij=n=>Vn(n,e=>Ei(n,e,!Jt(n))),Zj=n=>Vn(n,e=>Ei(n,e,Jt(n))),zj=n=>Vn(n,e=>re.cursor(n.lineBlockAt(e.head).from)),Bj=n=>Vn(n,e=>re.cursor(n.lineBlockAt(e.head).to)),Hx=({state:n,dispatch:e})=>(e(js(n,{anchor:0})),!0),Kx=({state:n,dispatch:e})=>(e(js(n,{anchor:n.doc.length})),!0),Jx=({state:n,dispatch:e})=>(e(js(n,{anchor:n.selection.main.anchor,head:0})),!0),ey=({state:n,dispatch:e})=>(e(js(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),Fj=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),Xj=({state:n,dispatch:e})=>{let t=Uu(n).map(({from:s,to:i})=>re.range(s,Math.min(i+1,n.doc.length)));return e(n.update({selection:re.create(t),userEvent:"select"})),!0},Vj=({state:n,dispatch:e})=>{let t=pl(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 re.range(c.to,c.from)}return s});return t.eq(n.selection)?!1:(e(js(n,t)),!0)},qj=({state:n,dispatch:e})=>{let t=n.selection,s=null;return t.ranges.length>1?s=re.create([t.main]):t.main.empty||(s=re.create([re.cursor(t.main.head)])),s?(e(js(n,s)),!0):!1};function na(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=Ac(n,u,!1)):u>o&&(t="delete.forward",u=Ac(n,u,!0)),o=Math.min(o,u),c=Math.max(c,u)}else o=Ac(n,o,!1),c=Ac(n,c,!0);return o==c?{range:r}:{changes:{from:o,to:c},range:re.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"?ve.announce.of(s.phrase("Selection deleted")):void 0})),!0)}function Ac(n,e,t){if(n instanceof ve)for(let s of n.state.facet(ve.atomicRanges).map(i=>i(n)))s.between(e,e,(i,r)=>{i<e&&r>e&&(e=t?r:i)});return e}const GS=(n,e,t)=>na(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=fl(c,r.tabSize),p=f%vu(r)||vu(r);for(let g=0;g<p&&c[c.length-1-g]==" ";g++)i--;u=i}else u=qt(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=qt(o.text,u-o.from,!1,!1)+o.from);return u}),wp=n=>GS(n,!1,!0),HS=n=>GS(n,!0,!1),KS=(n,e)=>na(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=qt(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}),JS=n=>KS(n,!1),Yj=n=>KS(n,!0),Uj=n=>na(n,e=>{let t=n.lineBlockAt(e.head).to;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),Wj=n=>na(n,e=>{let t=n.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),Gj=n=>na(n,e=>{let t=n.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),Hj=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(s=>({changes:{from:s.from,to:s.to,insert:Fe.of(["",""])},range:re.cursor(s.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},Kj=({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:qt(r.text,i-r.from,!1)+r.from,c=i==r.to?i+1:qt(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:re.cursor(c)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Uu(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 ew(n,e,t){if(n.readOnly)return!1;let s=[],i=[];for(let r of Uu(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(re.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(re.range(u.anchor-c,u.head-c))}}return s.length?(e(n.update({changes:s,scrollIntoView:!0,selection:re.create(i,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const Jj=({state:n,dispatch:e})=>ew(n,e,!1),eT=({state:n,dispatch:e})=>ew(n,e,!0);function tw(n,e,t){if(n.readOnly)return!1;let s=[];for(let i of Uu(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 tT=({state:n,dispatch:e})=>tw(n,e,!1),nT=({state:n,dispatch:e})=>tw(n,e,!0),sT=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(Uu(e).map(({from:i,to:r})=>(i>0?i--:r<e.doc.length&&r++,{from:i,to:r}))),s=pl(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 iT(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(Ie.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 ty=nw(!1),rT=nw(!0);function nw(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&&iT(e,r);n&&(r=o=(o<=c.to?c:e.doc.lineAt(o)).to);let f=new Fu(e,{simulateBreak:r,simulateDoubleBreak:!!u}),p=rm(f,r);for(p==null&&(p=fl(/^\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=["",zo(e,p)];return u&&g.push(zo(e,f.lineIndent(c.from,-1))),{changes:{from:r,to:o,insert:Fe.of(g)},range:re.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:re.range(r.mapPos(s.anchor,1),r.mapPos(s.head,1))}})}const lT=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),s=new Fu(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=zo(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},sw=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(cm(n,(t,s)=>{s.push({from:t.from,insert:n.facet(Jo)})}),{userEvent:"input.indent"})),!0),iw=({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=fl(i,n.tabSize),o=0,c=zo(n,Math.max(0,r-vu(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),oT=n=>(n.setTabFocusMode(),!0),aT=[{key:"Ctrl-b",run:AS,shift:FS,preventDefault:!0},{key:"Ctrl-f",run:MS,shift:XS},{key:"Ctrl-p",run:LS,shift:YS},{key:"Ctrl-n",run:IS,shift:US},{key:"Ctrl-a",run:Qj,shift:zj},{key:"Ctrl-e",run:jj,shift:Bj},{key:"Ctrl-d",run:HS},{key:"Ctrl-h",run:wp},{key:"Ctrl-k",run:Uj},{key:"Ctrl-Alt-h",run:JS},{key:"Ctrl-o",run:Hj},{key:"Ctrl-t",run:Kj},{key:"Ctrl-v",run:Sp}],cT=[{key:"ArrowLeft",run:AS,shift:FS,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:yj,shift:Ej,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:Cj,shift:Ij,preventDefault:!0},{key:"ArrowRight",run:MS,shift:XS,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:kj,shift:Aj,preventDefault:!0},{mac:"Cmd-ArrowRight",run:Pj,shift:Zj,preventDefault:!0},{key:"ArrowUp",run:LS,shift:YS,preventDefault:!0},{mac:"Cmd-ArrowUp",run:Hx,shift:Jx},{mac:"Ctrl-ArrowUp",run:Ux,shift:Wx},{key:"ArrowDown",run:IS,shift:US,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Kx,shift:ey},{mac:"Ctrl-ArrowDown",run:Sp,shift:Gx},{key:"PageUp",run:Ux,shift:Wx},{key:"PageDown",run:Sp,shift:Gx},{key:"Home",run:$j,shift:Lj,preventDefault:!0},{key:"Mod-Home",run:Hx,shift:Jx},{key:"End",run:_j,shift:Dj,preventDefault:!0},{key:"Mod-End",run:Kx,shift:ey},{key:"Enter",run:ty,shift:ty},{key:"Mod-a",run:Fj},{key:"Backspace",run:wp,shift:wp},{key:"Delete",run:HS},{key:"Mod-Backspace",mac:"Alt-Backspace",run:JS},{key:"Mod-Delete",mac:"Alt-Delete",run:Yj},{mac:"Mod-Backspace",run:Wj},{mac:"Mod-Delete",run:Gj}].concat(aT.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),uT=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:wj,shift:Mj},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:bj,shift:Rj},{key:"Alt-ArrowUp",run:Jj},{key:"Shift-Alt-ArrowUp",run:tT},{key:"Alt-ArrowDown",run:eT},{key:"Shift-Alt-ArrowDown",run:nT},{key:"Escape",run:qj},{key:"Mod-Enter",run:rT},{key:"Alt-l",mac:"Ctrl-l",run:Xj},{key:"Mod-i",run:Vj,preventDefault:!0},{key:"Mod-[",run:iw},{key:"Mod-]",run:sw},{key:"Mod-Alt-\\",run:lT},{key:"Shift-Mod-k",run:sT},{key:"Shift-Mod-\\",run:Nj},{key:"Mod-/",run:tj},{key:"Alt-A",run:sj},{key:"Ctrl-m",mac:"Shift-Alt-m",run:oT}].concat(cT),dT={key:"Tab",run:sw,shift:iw},ny=typeof String.prototype.normalize=="function"?n=>n.normalize("NFKD"):n=>n;class dl{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(ny(c)):ny,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=Ip(e),s=this.bufferStart+this.bufferPos;this.bufferPos+=xs(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"&&(dl.prototype[Symbol.iterator]=function(){return this});const rw={from:-1,to:-1,match:/.*/.exec("")},um="gm"+(/x/.unicode==null?"":"u");class lw{constructor(e,t,s,i=0,r=e.length){if(this.text=e,this.to=r,this.curLine="",this.done=!1,this.value=rw,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new ow(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=Su(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=Su(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 gf=new WeakMap;class nl{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,s){let i=gf.get(e);if(!i||i.from>=s||i.to<=t){let c=new nl(t,e.sliceString(t,s));return gf.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)),gf.set(e,new nl(o,r)),new nl(t,r.slice(t-o,s-o))}}class ow{constructor(e,t,s,i,r){this.text=e,this.to=r,this.done=!1,this.value=rw,this.matchPos=Su(e,i),this.re=new RegExp(t,um+(s?.ignoreCase?"i":"")),this.test=s?.test,this.flat=nl.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=Su(this.text,i+(s==i?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=nl.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(lw.prototype[Symbol.iterator]=ow.prototype[Symbol.iterator]=function(){return this});function hT(n){try{return new RegExp(n,um),!0}catch{return!1}}function Su(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 bp(n){let e=String(n.state.doc.lineAt(n.state.selection.main.head).number),t=et("input",{class:"cm-textfield",name:"line",value:e}),s=et("form",{class:"cm-gotoLine",onkeydown:r=>{r.keyCode==27?(r.preventDefault(),n.dispatch({effects:_o.of(!1)}),n.focus()):r.keyCode==13&&(r.preventDefault(),i())},onsubmit:r=>{r.preventDefault(),i()}},et("label",n.state.phrase("Go to line"),": ",t)," ",et("button",{class:"cm-button",type:"submit"},n.state.phrase("go")),et("button",{name:"close",onclick:()=>{n.dispatch({effects:_o.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,x=f?+f:c.number;if(f&&g){let w=x/100;u&&(w=w*(u=="-"?-1:1)+c.number/o.doc.lines),x=Math.round(o.doc.lines*w)}else f&&u&&(x=x*(u=="-"?-1:1)+c.number);let k=o.doc.line(Math.max(1,Math.min(o.doc.lines,x))),S=re.cursor(k.from+Math.max(0,Math.min(O,k.length)));n.dispatch({effects:[_o.of(!1),ve.scrollIntoView(S.from,{y:"center"})],selection:S}),n.focus()}return{dom:s}}const _o=Me.define(),sy=Zt.define({create(){return!0},update(n,e){for(let t of e.effects)t.is(_o)&&(n=t.value);return n},provide:n=>Io.from(n,e=>e?bp:null)}),fT=n=>{let e=Lo(n,bp);if(!e){let t=[_o.of(!0)];n.state.field(sy,!1)==null&&t.push(Me.appendConfig.of([sy,pT])),n.dispatch({effects:t}),e=Lo(n,bp)}return e&&e.dom.querySelector("input").select(),!0},pT=ve.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"}}}),mT={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},gT=we.define({combine(n){return Ps(n,mT,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function OT(n){return[ST,kT]}const vT=Qe.mark({class:"cm-selectionMatch"}),xT=Qe.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function iy(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 yT(n,e,t,s){return n(e.sliceDoc(t,t+1))==ut.Word&&n(e.sliceDoc(s-1,s))==ut.Word}const kT=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(gT),{state:t}=n,s=t.selection;if(s.ranges.length>1)return Qe.none;let i=s.main,r,o=null;if(i.empty){if(!e.highlightWordAroundCursor)return Qe.none;let u=t.wordAt(i.head);if(!u)return Qe.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 Qe.none;if(e.wholeWords){if(r=t.sliceDoc(i.from,i.to),o=t.charCategorizer(i.head),!(iy(o,t,i.from,i.to)&&yT(o,t,i.from,i.to)))return Qe.none}else if(r=t.sliceDoc(i.from,i.to),!r)return Qe.none}let c=[];for(let u of n.visibleRanges){let f=new dl(t.doc,r,u.from,u.to);for(;!f.next().done;){let{from:p,to:g}=f.value;if((!o||iy(o,t,p,g))&&(i.empty&&p<=i.from&&g>=i.to?c.push(xT.range(p,g)):(p>=i.to||g<=i.from)&&c.push(vT.range(p,g)),c.length>e.maxMatches))return Qe.none}}return Qe.set(c)}},{decorations:n=>n.decorations}),ST=ve.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),wT=({state:n,dispatch:e})=>{let{selection:t}=n,s=re.create(t.ranges.map(i=>n.wordAt(i.head)||re.cursor(i.head)),t.mainIndex);return s.eq(t)?!1:(e(n.update({selection:s})),!0)};function bT(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 dl(n.doc,e,s[s.length-1].to);;)if(c.next(),c.done){if(o)return null;c=new dl(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 _T=({state:n,dispatch:e})=>{let{ranges:t}=n.selection;if(t.some(r=>r.from===r.to))return wT({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=bT(n,s);return i?(e(n.update({selection:n.selection.addRange(re.range(i.from,i.to),!1),effects:ve.scrollIntoView(i.to)})),!0):!1},ml=we.define({combine(n){return Ps(n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new DT(e),scrollToMatch:e=>ve.scrollIntoView(e)})}});class aw{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||hT(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"?`
51
+ `: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 QT(this):new CT(this)}getCursor(e,t=0,s){let i=e.doc?e:ze.create({doc:e});return s==null&&(s=i.doc.length),this.regexp?Ur(this,i,t,s):Yr(this,i,t,s)}}class cw{constructor(e){this.spec=e}}function Yr(n,e,t,s){return new dl(e.doc,n.unquoted,t,s,n.caseSensitive?void 0:i=>i.toLowerCase(),n.wholeWord?$T(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function $T(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(wu(i,t-r))!=ut.Word||e(bu(i,t-r))!=ut.Word)&&(e(bu(i,s-r))!=ut.Word||e(wu(i,s-r))!=ut.Word))}class CT extends cw{constructor(e){super(e)}nextMatch(e,t,s){let i=Yr(this.spec,e,s,e.doc.length).nextOverlapping();if(i.done){let r=Math.min(e.doc.length,t+this.spec.unquoted.length);i=Yr(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=Yr(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=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-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 Ur(n,e,t,s){return new lw(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:n.wholeWord?PT(e.charCategorizer(e.selection.main.head)):void 0},t,s)}function wu(n,e){return n.slice(qt(n,e,!1),e)}function bu(n,e){return n.slice(e,qt(n,e))}function PT(n){return(e,t,s)=>!s[0].length||(n(wu(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(wu(s.input,s.index+s[0].length))!=ut.Word)}class QT extends cw{nextMatch(e,t,s){let i=Ur(this.spec,e,s,e.doc.length).next();return i.done&&(i=Ur(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=Ur(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=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-250),Math.min(s+250,e.doc.length));for(;!r.next().done;)i(r.value.from,r.value.to)}}const Bo=Me.define(),dm=Me.define(),$i=Zt.define({create(n){return new Of(_p(n).create(),null)},update(n,e){for(let t of e.effects)t.is(Bo)?n=new Of(t.value.create(),n.panel):t.is(dm)&&(n=new Of(n.query,t.value?hm:null));return n},provide:n=>Io.from(n,e=>e.panel)});class Of{constructor(e,t){this.query=e,this.panel=t}}const jT=Qe.mark({class:"cm-searchMatch"}),TT=Qe.mark({class:"cm-searchMatch cm-searchMatch-selected"}),NT=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 Qe.none;let{view:t}=this,s=new Us;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?TT:jT)})}return s.finish()}},{decorations:n=>n.decorations});function sa(n){return e=>{let t=e.state.field($i,!1);return t&&t.query.spec.valid?n(e,t):hw(e)}}const _u=sa((n,{query:e})=>{let{to:t}=n.state.selection.main,s=e.nextMatch(n.state,t,t);if(!s)return!1;let i=re.single(s.from,s.to),r=n.state.facet(ml);return n.dispatch({selection:i,effects:[fm(n,s),r.scrollToMatch(i.main,n)],userEvent:"select.search"}),dw(n),!0}),$u=sa((n,{query:e})=>{let{state:t}=n,{from:s}=t.selection.main,i=e.prevMatch(t,s,s);if(!i)return!1;let r=re.single(i.from,i.to),o=n.state.facet(ml);return n.dispatch({selection:r,effects:[fm(n,i),o.scrollToMatch(r.main,n)],userEvent:"select.search"}),dw(n),!0}),ET=sa((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:re.create(t.map(s=>re.range(s.from,s.to))),userEvent:"select.search.matches"}),!0)}),AT=({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 dl(n.doc,n.sliceDoc(s,i));!c.next().done;){if(r.length>1e3)return!1;c.value.from==s&&(o=r.length),r.push(re.range(c.value.from,c.value.to))}return e(n.update({selection:re.create(r,o),userEvent:"select.search.matches"})),!0},ry=sa((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(ve.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(s).number)+".")));let g=n.state.changes(c);return o&&(u=re.single(o.from,o.to).map(g),p.push(fm(n,o)),p.push(t.facet(ml).scrollToMatch(u.main,n))),n.dispatch({changes:g,selection:u,effects:p,userEvent:"input.replace"}),!0}),MT=sa((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:ve.announce.of(s),userEvent:"input.replace.all"}),!0});function hm(n){return n.state.facet(ml).createPanel(n)}function _p(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(ml);return new aw({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 uw(n){let e=Lo(n,hm);return e&&e.dom.querySelector("[main-field]")}function dw(n){let e=uw(n);e&&e==n.root.activeElement&&e.select()}const hw=n=>{let e=n.state.field($i,!1);if(e&&e.panel){let t=uw(n);if(t&&t!=n.root.activeElement){let s=_p(n.state,e.query.spec);s.valid&&n.dispatch({effects:Bo.of(s)}),t.focus(),t.select()}}else n.dispatch({effects:[dm.of(!0),e?Bo.of(_p(n.state,e.query.spec)):Me.appendConfig.of(IT)]});return!0},fw=n=>{let e=n.state.field($i,!1);if(!e||!e.panel)return!1;let t=Lo(n,hm);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:dm.of(!1)}),!0},RT=[{key:"Mod-f",run:hw,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:fw,scope:"editor search-panel"},{key:"Mod-Shift-l",run:AT},{key:"Mod-Alt-g",run:fT},{key:"Mod-d",run:_T,preventDefault:!0}];class DT{constructor(e){this.view=e;let t=this.query=e.state.field($i).query.spec;this.commit=this.commit.bind(this),this.searchField=et("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=et("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=et("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=et("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=et("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function s(i,r,o){return et("button",{class:"cm-button",name:i,onclick:r,type:"button"},o)}this.dom=et("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",()=>ET(e),[jn(e,"all")]),et("label",null,[this.caseField,jn(e,"match case")]),et("label",null,[this.reField,jn(e,"regexp")]),et("label",null,[this.wordField,jn(e,"by word")]),...e.state.readOnly?[]:[et("br"),this.replaceField,s("replace",()=>ry(e),[jn(e,"replace")]),s("replaceAll",()=>MT(e),[jn(e,"replace all")])],et("button",{name:"close",onclick:()=>fw(e),"aria-label":jn(e,"close"),type:"button"},["×"])])}commit(){let e=new aw({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:Bo.of(e)}))}keydown(e){VC(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(),ry(this.view))}update(e){for(let t of e.transactions)for(let s of t.effects)s.is(Bo)&&!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(ml).top}}function jn(n,e){return n.state.phrase(e)}const Mc=30,Rc=/[\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-Mc),o=Math.min(i,t+Mc),c=n.state.sliceDoc(r,o);if(r!=s.from){for(let u=0;u<Mc;u++)if(!Rc.test(c[u+1])&&Rc.test(c[u])){c=c.slice(u);break}}if(o!=i){for(let u=c.length-1;u>c.length-Mc;u--)if(!Rc.test(c[u-1])&&Rc.test(c[u])){c=c.slice(0,u);break}}return ve.announce.of(`${n.state.phrase("current match")}. ${c} ${n.state.phrase("on line")} ${s.number}.`)}const LT=ve.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"}}),IT=[$i,Ni.low(NT),LT];class pw{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(gw(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 ly(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 ZT(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=ly(e)+ly(t)+"*$";return[new RegExp("^"+s),new RegExp(s)]}function mw(n){let e=n.map(i=>typeof i=="string"?{label:i}:i),[t,s]=e.every(i=>/^\w+$/.test(i.label))?[/\w*$/,/\w+$/]:ZT(e);return i=>{let r=i.matchBefore(s);return r||i.explicit?{from:r?r.from:i.pos,options:e,validFor:t}:null}}function zT(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 oy{constructor(e,t,s,i){this.completion=e,this.source=t,this.match=s,this.score=i}}function sr(n){return n.selection.main.from}function gw(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=Cs.define();function BT(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:re.cursor(c.from+r+u.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const ay=new WeakMap;function FT(n){if(!Array.isArray(n))return n;let e=ay.get(n);return e||ay.set(n,e=mw(n)),e}const Cu=Me.define(),Fo=Me.define();class XT{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=xs(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),P=xs(b),C=P==e.length?0:-100;if(b!=t[0])if(b==s[0])C+=-200;else return null;return this.ret(C,[0,P])}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,P=Math.min(e.length,200);b<P&&f<u;){let C=xn(e,b);(C==t[f]||C==s[f])&&(i[f++]=b),b+=xs(C)}if(f<u)return null}let p=0,g=0,O=!1,x=0,k=-1,S=-1,w=/[a-z]/.test(e),$=!0;for(let b=0,P=Math.min(e.length,200),C=0;b<P&&g<u;){let Q=xn(e,b);c<0&&(p<u&&Q==t[p]&&(r[p++]=b),x<u&&(Q==t[x]||Q==s[x]?(x==0&&(k=b),S=b+1,x++):x=0));let N,A=Q<255?Q>=48&&Q<=57||Q>=97&&Q<=122?2:Q>=65&&Q<=90?1:0:(N=Ip(Q))!=N.toLowerCase()?1:N!=N.toUpperCase()?2:0;(!b||A==1&&w||C==0&&A!=0)&&(t[g]==Q||s[g]==Q&&(O=!0)?o[g++]=b:o.length&&($=!1)),C=A,b+=xs(Q)}return g==u&&o[0]==0&&$?this.result(-100+(O?-200:0),o,e):x==u&&k==0?this.ret(-200-e.length+(S==e.length?0:-100),[0,S]):c>-1?this.ret(-700-e.length,[c,c+this.pattern.length]):x==u?this.ret(-900-e.length,[k,S]):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?xs(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 VT{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 Lt=we.define({combine(n){return Ps(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:qT,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=>cy(e(s),t(s)),optionClass:(e,t)=>s=>cy(e(s),t(s)),addToOptions:(e,t)=>e.concat(t),filterStrict:(e,t)=>e||t})}});function cy(n,e){return n?e?n+" "+e:n:e}function qT(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,x=i.right-e.right,k=s.right-s.left,S=s.bottom-s.top;if(c&&O<Math.min(k,x)?c=!1:!c&&x<Math.min(k,O)&&(c=!0),k<=(c?O:x))p=Math.max(i.top,Math.min(t.top,i.bottom-S))-e.top,g=Math.min(400,c?O:x);else{u=!0,g=Math.min(400,(o?e.right:i.right-e.left)-30);let b=i.bottom-e.bottom;b>=S||b>e.top?p=t.bottom-e.top:(f="bottom",p=e.bottom-t.top)}let w=(e.bottom-e.top)/r.offsetHeight,$=(e.right-e.left)/r.offsetWidth;return{style:`${f}: ${p/w}px; max-width: ${g/$}px`,class:"cm-completionInfo-"+(u?o?"left-narrow":"right-narrow":c?"left":"right")}}function YT(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 vf(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 UT{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(Lt);this.optionContent=YT(c),this.optionClass=c.optionClass,this.tooltipClass=c.tooltipClass,this.range=vf(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(Lt).closeOnBlur&&u.relatedTarget!=e.contentDOM&&e.dispatch({effects:Fo.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=vf(r.length,o,e.state.facet(Lt).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=vf(t.options.length,t.selected,this.view.state.facet(Lt).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=>Sn(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&&GT(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(Lt).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 x=i.appendChild(document.createElement("completion-section"));x.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 x=O(c,this.view.state,this.view,u);x&&p.appendChild(x)}}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 WT(n,e){return t=>new UT(t,n,e)}function GT(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 uy(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function HT(n,e){let t=[],s=null,i=f=>{t.push(f);let{section:p}=f.completion;if(p){s||(s=[]);let g=typeof p=="string"?p:p.name;s.some(O=>O.name==g)||s.push(typeof p=="string"?{name:g}:p)}},r=e.facet(Lt);for(let f of n)if(f.hasResult()){let p=f.result.getMatch;if(f.result.filter===!1)for(let g of f.result.options)i(new oy(g,f.source,p?p(g):[],1e9-t.length));else{let g=e.sliceDoc(f.from,f.to),O,x=r.filterStrict?new VT(g):new XT(g);for(let k of f.result.options)if(O=x.match(k.label)){let S=k.displayLabel?p?p(k,O.matched):[]:O.matched;i(new oy(k,f.source,S,O.score+(k.boost||0)))}}}if(s){let f=Object.create(null),p=0,g=(O,x)=>{var k,S;return((k=O.rank)!==null&&k!==void 0?k:1e9)-((S=x.rank)!==null&&S!==void 0?S:1e9)||(O.name<x.name?-1:1)};for(let O of s.sort(g))p-=1e5,f[O.name]=p;for(let O of t){let{section:x}=O.completion;x&&(O.score+=f[typeof x=="string"?x:x.name])}}let o=[],c=null,u=r.compareCompletions;for(let f of t.sort((p,g)=>g.score-p.score||u(p.completion,g.completion))){let p=f.completion;!c||c.label!=p.label||c.detail!=p.detail||c.type!=null&&p.type!=null&&c.type!=p.type||c.apply!=p.apply||c.boost!=p.boost?o.push(f):uy(f.completion)>uy(c)&&(o[o.length-1]=f),c=f.completion}return o}class Kr{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 Kr(this.options,dy(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=HT(e,t);if(!c.length)return i&&e.some(f=>f.isPending)?i.setDisabled():null;let u=t.facet(Lt).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 Kr(c,dy(s,u),{pos:e.reduce((f,p)=>p.hasResult()?Math.min(f,p.from):f,1e8),create:sN,above:r.aboveCursor},i?i.timestamp:Date.now(),u,!1)}map(e){return new Kr(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new Kr(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class Pu{constructor(e,t,s){this.active=e,this.id=t,this.open=s}static start(){return new Pu(tN,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,s=t.facet(Lt),r=(s.override||t.languageDataAt("autocomplete",sr(t)).map(FT)).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))||!KT(r,this.active)||c?o=Kr.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(vw)&&(o=o&&o.setSelected(u.value,this.id));return r==this.active&&o==this.open?this:new Pu(r,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?JT:eN}}function KT(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 JT={"aria-autocomplete":"list"},eN={};function dy(n,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":n};return e>-1&&(t["aria-activedescendant"]=n+"-"+e),t}const tN=[];function Ow(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=Ow(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(Fo))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(sr(e.state))}}class sl 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=sr(e.state);if(c>o||!i||t&2&&(sr(e.startState)==this.from||c<this.limit))return new Bn(this.source,t&4?1:0);let u=e.changes.mapPos(this.limit);return nN(i.validFor,e.state,r,o)?new sl(this.source,this.explicit,u,i,r,o):i.update&&(i=i.update(i,r,o,new pw(e.state,c,!1)))?new sl(this.source,this.explicit,u,i,i.from,(s=i.to)!==null&&s!==void 0?s:sr(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 sl(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 nN(n,e,t,s){if(!n)return!1;let i=e.sliceDoc(t,s);return typeof n=="function"?n(i,t,s,e):gw(n,!0).test(i)}const mm=Me.define({map(n,e){return n.map(t=>t.map(e))}}),vw=Me.define(),kn=Zt.define({create(){return Pu.start()},update(n,e){return n.update(e)},provide:n=>[Jp.from(n,e=>e.tooltip),ve.contentAttributes.from(n,e=>e.attrs)]});function gm(n,e){const t=e.completion.apply||e.completion.label;let s=n.state.field(kn).active.find(i=>i.source==e.source);return s instanceof sl?(typeof t=="string"?n.dispatch({...BT(n.state,t,s.from,s.to),annotations:pm.of(e.completion)}):t(n,e.completion,s.from,s.to),!0):!1}const sN=WT(kn,gm);function Dc(n,e="option"){return t=>{let s=t.state.field(kn,!1);if(!s||!s.open||s.open.disabled||Date.now()-s.open.timestamp<t.state.facet(Lt).interactionDelay)return!1;let i=1,r;e=="page"&&(r=Hk(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:vw.of(c)}),!0}}const iN=n=>{let e=n.state.field(kn,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<n.state.facet(Lt).interactionDelay?!1:gm(n,e.open.options[e.open.selected])},xf=n=>n.state.field(kn,!1)?(n.dispatch({effects:Cu.of(!0)}),!0):!1,rN=n=>{let e=n.state.field(kn,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Fo.of(null)}),!0)};class lN{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const oN=50,aN=1e3,cN=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(kn).active)e.isPending&&this.startQuery(e)}update(n){let e=n.state.field(kn),t=n.state.facet(Lt);if(!n.selectionSet&&!n.docChanged&&n.startState.field(kn)==e)return;let s=n.transactions.some(r=>{let o=Ow(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>oN&&Date.now()-o.time>aN){for(let c of o.context.abortListeners)try{c()}catch(u){Sn(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(kn);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(Lt).updateSyncTime))}startQuery(n){let{state:e}=this.view,t=sr(e),s=new pw(e,t,n.explicit,this.view),i=new lN(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:Fo.of(null)}),Sn(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(Lt).updateSyncTime))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(Lt),s=this.view.state.field(kn);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=sr(r.updates.length?r.updates[0].startState:this.view.state),u=Math.min(c,r.done.from+(r.active.explicit?0:1)),f=new sl(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(kn,!1);if(e&&e.tooltip&&this.view.state.facet(Lt).closeOnBlur){let t=e.open&&Hk(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:Fo.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Cu.of(!1)}),20),this.composing=0}}}),uN=typeof navigator=="object"&&/Win/.test(navigator.platform),dN=Ni.highest(ve.domEventHandlers({keydown(n,e){let t=e.state.field(kn,!1);if(!t||!t.open||t.open.disabled||t.open.selected<0||n.key.length>1||n.ctrlKey&&!(uN&&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}})),xw=ve.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 hN{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 vm{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(Jo);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 hN(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 vm(s,i)}}let fN=Qe.widget({widget:new class extends Qs{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),pN=Qe.mark({class:"cm-snippetField"});class gl{constructor(e,t){this.ranges=e,this.active=t,this.deco=Qe.set(e.map(s=>(s.from==s.to?fN:pN).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 gl(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 ia=Me.define({map(n,e){return n&&n.map(e)}}),mN=Me.define(),Xo=Zt.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(ia))return t.value;if(t.is(mN)&&n)return new gl(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=>ve.decorations.from(n,e=>e?e.deco:Qe.none)});function xm(n,e){return re.create(n.filter(t=>t.field==e).map(t=>re.range(t.from,t.to)))}function gN(n){let e=vm.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:Fe.of(o)},scrollIntoView:!0,annotations:s?[pm.of(s),_t.userEvent.of("input.complete")]:void 0};if(c.length&&(f.selection=xm(c,0)),c.some(p=>p.field>0)){let p=new gl(c,0),g=f.effects=[ia.of(p)];t.state.field(Xo,!1)===void 0&&g.push(Me.appendConfig.of([Xo,kN,SN,xw]))}t.dispatch(t.state.update(f))}}function yw(n){return({state:e,dispatch:t})=>{let s=e.field(Xo,!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:xm(s.ranges,i),effects:ia.of(r?null:new gl(s.ranges,i)),scrollIntoView:!0})),!0}}const ON=({state:n,dispatch:e})=>n.field(Xo,!1)?(e(n.update({effects:ia.of(null)})),!0):!1,vN=yw(1),xN=yw(-1),yN=[{key:"Tab",run:vN,shift:xN},{key:"Escape",run:ON}],hy=we.define({combine(n){return n.length?n[0]:yN}}),kN=Ni.highest(Ho.compute([hy],n=>n.facet(hy)));function On(n,e){return{...e,apply:gN(n)}}const SN=ve.domEventHandlers({mousedown(n,e){let t=e.state.field(Xo,!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:xm(t.ranges,i.field),effects:ia.of(t.ranges.some(r=>r.field>i.field)?new gl(t.ranges,i.field):null),scrollIntoView:!0}),!0)}}),Vo={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},Ji=Me.define({map(n,e){let t=e.mapPos(n,-1,Vt.TrackAfter);return t??void 0}}),ym=new class extends lr{};ym.startSide=1;ym.endSide=-1;const kw=Zt.define({create(){return Ye.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(Ji)&&(n=n.update({add:[ym.range(t.value,t.value+1)]}));return n}});function wN(){return[_N,kw]}const yf="()[]{}<>«»»«[]{}";function Sw(n){for(let e=0;e<yf.length;e+=2)if(yf.charCodeAt(e)==n)return yf.charAt(e+1);return Ip(n<128?n:n+1)}function ww(n,e){return n.languageDataAt("closeBrackets",e)[0]||Vo}const bN=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),_N=ve.inputHandler.of((n,e,t,s)=>{if((bN?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let i=n.state.selection.main;if(s.length>2||s.length==2&&xs(xn(s,0))==1||e!=i.from||t!=i.to)return!1;let r=PN(n.state,s);return r?(n.dispatch(r),!0):!1}),$N=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let s=ww(n,n.selection.main.head).brackets||Vo.brackets,i=null,r=n.changeByRange(o=>{if(o.empty){let c=QN(n.doc,o.head);for(let u of s)if(u==c&&Wu(n.doc,o.head)==Sw(xn(u,0)))return{changes:{from:o.head-u.length,to:o.head+u.length},range:re.cursor(o.head-u.length)}}return{range:i=o}});return i||e(n.update(r,{scrollIntoView:!0,userEvent:"delete.backward"})),!i},CN=[{key:"Backspace",run:$N}];function PN(n,e){let t=ww(n,n.selection.main.head),s=t.brackets||Vo.brackets;for(let i of s){let r=Sw(xn(i,0));if(e==i)return r==i?NN(n,i,s.indexOf(i+i+i)>-1,t):jN(n,i,r,t.before||Vo.before);if(e==r&&bw(n,n.selection.main.from))return TN(n,i,r)}return null}function bw(n,e){let t=!1;return n.field(kw).between(0,n.doc.length,s=>{s==e&&(t=!0)}),t}function Wu(n,e){let t=n.sliceString(e,e+2);return t.slice(0,xs(xn(t,0)))}function QN(n,e){let t=n.sliceString(e-2,e);return xs(xn(t,0))==t.length?t:t.slice(1)}function jN(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:Ji.of(o.to+e.length),range:re.range(o.anchor+e.length,o.head+e.length)};let c=Wu(n.doc,o.head);return!c||/\s/.test(c)||s.indexOf(c)>-1?{changes:{insert:e+t,from:o.head},effects:Ji.of(o.head+e.length),range:re.cursor(o.head+e.length)}:{range:i=o}});return i?null:n.update(r,{scrollIntoView:!0,userEvent:"input.type"})}function TN(n,e,t){let s=null,i=n.changeByRange(r=>r.empty&&Wu(n.doc,r.head)==t?{changes:{from:r.head,to:r.head+t.length,insert:t},range:re.cursor(r.head+t.length)}:s={range:r});return s?null:n.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function NN(n,e,t,s){let i=s.stringPrefixes||Vo.stringPrefixes,r=null,o=n.changeByRange(c=>{if(!c.empty)return{changes:[{insert:e,from:c.from},{insert:e,from:c.to}],effects:Ji.of(c.to+e.length),range:re.range(c.anchor+e.length,c.head+e.length)};let u=c.head,f=Wu(n.doc,u),p;if(f==e){if(fy(n,u))return{changes:{insert:e+e,from:u},effects:Ji.of(u+e.length),range:re.cursor(u+e.length)};if(bw(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:re.cursor(u+O.length)}}}else{if(t&&n.sliceDoc(u-2*e.length,u)==e+e&&(p=py(n,u-2*e.length,i))>-1&&fy(n,p))return{changes:{insert:e+e+e+e,from:u},effects:Ji.of(u+e.length),range:re.cursor(u+e.length)};if(n.charCategorizer(u)(f)!=ut.Word&&py(n,u,i)>-1&&!EN(n,u,e,i))return{changes:{insert:e+e,from:u},effects:Ji.of(u+e.length),range:re.cursor(u+e.length)}}return{range:r=c}});return r?null:n.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function fy(n,e){let t=Nt(n).resolveInner(e+1);return t.parent&&t.from==e}function EN(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 py(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 AN(n={}){return[dN,kn,Lt.of(n),cN,MN,xw]}const _w=[{key:"Ctrl-Space",run:xf},{mac:"Alt-`",run:xf},{mac:"Alt-i",run:xf},{key:"Escape",run:rN},{key:"ArrowDown",run:Dc(!0)},{key:"ArrowUp",run:Dc(!1)},{key:"PageDown",run:Dc(!0,"page")},{key:"PageUp",run:Dc(!1,"page")},{key:"Enter",run:iN}],MN=Ni.highest(Ho.computeN([Lt],n=>n.facet(Lt).defaultKeymap?[_w]:[]));class my{constructor(e,t,s){this.from=e,this.to=t,this.diagnostic=s}}class Hi{constructor(e,t,s){this.diagnostics=e,this.panel=t,this.selected=s}static init(e,t,s){let i=s.facet(qo).markerFilter;i&&(e=i(e,s));let r=e.slice().sort((p,g)=>p.from-g.from||p.to-g.to),o=new Us,c=[],u=0;for(let p=0;;){let g=p==r.length?null:r[p];if(!g&&!c.length)break;let O,x;for(c.length?(O=u,x=c.reduce((S,w)=>Math.min(S,w.to),g&&g.from>O?g.from:1e8)):(O=g.from,x=g.to,c.push(g),p++);p<r.length;){let S=r[p];if(S.from==O&&(S.to>S.from||S.to==O))c.push(S),p++,x=Math.min(S.to,x);else{x=Math.min(S.from,x);break}}let k=UN(c);if(c.some(S=>S.from==S.to||S.from==S.to-1&&s.doc.lineAt(S.from).to==S.from))o.add(O,O,Qe.widget({widget:new XN(k),diagnostics:c.slice()}));else{let S=c.reduce((w,$)=>$.markClass?w+" "+$.markClass:w,"");o.add(O,x,Qe.mark({class:"cm-lintRange cm-lintRange-"+k+S,diagnostics:c.slice(),inclusiveEnd:c.some(w=>w.to>x)}))}u=x;for(let S=0;S<c.length;S++)c[S].to<=u&&c.splice(S--,1)}let f=o.finish();return new Hi(f,t,hl(f))}}function hl(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 my(i,r,e||o.diagnostics[0]);else{if(o.diagnostics.indexOf(s.diagnostic)<0)return!1;s=new my(s.from,r,s.diagnostic)}}),s}function RN(n,e){let t=e.pos,s=e.end||t,i=n.state.facet(qo).hideOn(n,t,s);if(i!=null)return i;let r=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(o=>o.is($w))||n.changes.touchesRange(r.from,Math.max(r.to,s)))}function DN(n,e){return n.field(En,!1)?e:e.concat(Me.appendConfig.of(WN))}const $w=Me.define(),km=Me.define(),Cw=Me.define(),En=Zt.define({create(){return new Hi(Qe.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=hl(t,n.selected.diagnostic,r)||hl(t,null,r)}!t.size&&i&&e.state.facet(qo).autoPanel&&(i=null),n=new Hi(t,i,s)}for(let t of e.effects)if(t.is($w)){let s=e.state.facet(qo).autoPanel?t.value.length?Yo.open:null:n.panel;n=Hi.init(t.value,s,e.state)}else t.is(km)?n=new Hi(n.diagnostics,t.value?Yo.open:null,n.selected):t.is(Cw)&&(n=new Hi(n.diagnostics,n.panel,t.value));return n},provide:n=>[Io.from(n,e=>e.panel),ve.decorations.from(n,e=>e.diagnostics)]}),LN=Qe.mark({class:"cm-lintRange cm-lintRange-active"});function IN(n,e,t){let{diagnostics:s}=n.state.field(En),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(qo).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:ZN(n,i)}}}:null}function ZN(n,e){return et("ul",{class:"cm-tooltip-lint"},e.map(t=>Qw(n,t,!1)))}const zN=n=>{let e=n.state.field(En,!1);(!e||!e.panel)&&n.dispatch({effects:DN(n.state,[km.of(!0)])});let t=Lo(n,Yo.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},gy=n=>{let e=n.state.field(En,!1);return!e||!e.panel?!1:(n.dispatch({effects:km.of(!1)}),!0)},BN=n=>{let e=n.state.field(En,!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)},FN=[{key:"Mod-Shift-m",run:zN,preventDefault:!0},{key:"F8",run:BN}],qo=we.define({combine(n){return Object.assign({sources:n.map(e=>e.source).filter(e=>e!=null)},Ps(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{needsRefresh:(e,t)=>e?t?s=>e(s)||t(s):e:t}))}});function Pw(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 Qw(n,e,t){var s;let i=t?Pw(e.actions):[];return et("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},et("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=O=>{if(O.preventDefault(),c)return;c=!0;let x=hl(n.state.field(En).diagnostics,e);x&&r.apply(n,x.from,x.to)},{name:f}=r,p=i[o]?f.indexOf(i[o]):-1,g=p<0?f:[f.slice(0,p),et("u",f.slice(p,p+1)),f.slice(p+1)];return et("button",{type:"button",class:"cm-diagnosticAction",onclick:u,onmousedown:u,"aria-label":` Action: ${f}${p<0?"":` (access key "${i[o]})"`}.`},g)}),e.source&&et("div",{class:"cm-diagnosticSource"},e.source))}class XN extends Qs{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return et("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class Oy{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=Qw(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class Yo{constructor(e){this.view=e,this.items=[];let t=i=>{if(i.keyCode==27)gy(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=Pw(r.actions);for(let c=0;c<o.length;c++)if(o[c].toUpperCase().charCodeAt(0)==i.keyCode){let u=hl(this.view.state.field(En).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=et("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:s}),this.dom=et("div",{class:"cm-panel-lint"},this.list,et("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>gy(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(En).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(En),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 x=s;x<this.items.length;x++)if(this.items[x].diagnostic==p){g=x;break}g<0?(O=new Oy(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 Oy(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(En),s=hl(t.diagnostics,this.items[e].diagnostic);s&&this.view.dispatch({selection:{anchor:s.from,head:s.to},scrollIntoView:!0,effects:Cw.of(s)})}static open(e){return new Yo(e)}}function VN(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 Lc(n){return VN(`<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 qN=ve.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:Lc("#d11")},".cm-lintRange-warning":{backgroundImage:Lc("orange")},".cm-lintRange-info":{backgroundImage:Lc("#999")},".cm-lintRange-hint":{backgroundImage:Lc("#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 YN(n){return n=="error"?4:n=="warning"?3:n=="info"?2:1}function UN(n){let e="hint",t=1;for(let s of n){let i=YN(s.severity);i>t&&(t=i,e=s.severity)}return e}const WN=[En,ve.decorations.compute([En],n=>{let{selected:e,panel:t}=n.field(En);return!e||!t||e.from==e.to?Qe.none:Qe.set([LN.range(e.from,e.to)])}),EP(IN,{hideOn:RN}),qN];var vy=function(e){e===void 0&&(e={});var{crosshairCursor:t=!1}=e,s=[];e.closeBracketsKeymap!==!1&&(s=s.concat(CN)),e.defaultKeymap!==!1&&(s=s.concat(uT)),e.searchKeymap!==!1&&(s=s.concat(RT)),e.historyKeymap!==!1&&(s=s.concat(xj)),e.foldKeymap!==!1&&(s=s.concat(EQ)),e.completionKeymap!==!1&&(s=s.concat(_w)),e.lintKeymap!==!1&&(s=s.concat(FN));var i=[];return e.lineNumbers!==!1&&i.push(XP()),e.highlightActiveLineGutter!==!1&&i.push(YP()),e.highlightSpecialChars!==!1&&i.push(aP()),e.history!==!1&&i.push(uj()),e.foldGutter!==!1&&i.push(DQ()),e.drawSelection!==!1&&i.push(HC()),e.dropCursor!==!1&&i.push(nP()),e.allowMultipleSelections!==!1&&i.push(ze.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&i.push(wQ()),e.syntaxHighlighting!==!1&&i.push(wS(zQ,{fallback:!0})),e.bracketMatching!==!1&&i.push(UQ()),e.closeBrackets!==!1&&i.push(wN()),e.autocompletion!==!1&&i.push(AN()),e.rectangularSelection!==!1&&i.push(SP()),t!==!1&&i.push(_P()),e.highlightActiveLine!==!1&&i.push(pP()),e.highlightSelectionMatches!==!1&&i.push(OT()),e.tabSize&&typeof e.tabSize=="number"&&i.push(Jo.of(" ".repeat(e.tabSize))),i.concat([Ho.of(s.flat())]).filter(Boolean)};const GN="#e5c07b",xy="#e06c75",HN="#56b6c2",KN="#ffffff",Kc="#abb2bf",$p="#7d8799",JN="#61afef",eE="#98c379",yy="#d19a66",tE="#c678dd",nE="#21252b",ky="#2c313a",Sy="#282c34",kf="#353a42",sE="#3E4451",wy="#528bff",iE=ve.theme({"&":{color:Kc,backgroundColor:Sy},".cm-content":{caretColor:wy},".cm-cursor, .cm-dropCursor":{borderLeftColor:wy},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:sE},".cm-panels":{backgroundColor:nE,color:Kc},".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:Sy,color:$p,border:"none"},".cm-activeLineGutter":{backgroundColor:ky},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:kf},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:kf,borderBottomColor:kf},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:ky,color:Kc}}},{dark:!0}),rE=ta.define([{tag:Z.keyword,color:tE},{tag:[Z.name,Z.deleted,Z.character,Z.propertyName,Z.macroName],color:xy},{tag:[Z.function(Z.variableName),Z.labelName],color:JN},{tag:[Z.color,Z.constant(Z.name),Z.standard(Z.name)],color:yy},{tag:[Z.definition(Z.name),Z.separator],color:Kc},{tag:[Z.typeName,Z.className,Z.number,Z.changed,Z.annotation,Z.modifier,Z.self,Z.namespace],color:GN},{tag:[Z.operator,Z.operatorKeyword,Z.url,Z.escape,Z.regexp,Z.link,Z.special(Z.string)],color:HN},{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:xy},{tag:[Z.atom,Z.bool,Z.special(Z.variableName)],color:yy},{tag:[Z.processingInstruction,Z.string,Z.inserted],color:eE},{tag:Z.invalid,color:KN}]),jw=[iE,wS(rE)];var lE=ve.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),oE=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(Ho.of([dT])),c&&(typeof c=="boolean"?u.unshift(vy()):u.unshift(vy(c))),o&&u.unshift(vP(o)),r){case"light":u.push(lE);break;case"dark":u.push(jw);break;case"none":break;default:u.push(r);break}return s===!1&&u.push(ve.editable.of(!1)),i&&u.push(ze.readOnly.of(!0)),[...u]},aE=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 cE{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 by{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 Sf=null,uE=()=>typeof window>"u"?new by:(Sf||(Sf=new by),Sf),_y=Cs.define(),dE=200,hE=[];function fE(n){var{value:e,selection:t,onChange:s,onStatistics:i,onCreateEditor:r,onUpdate:o,extensions:c=hE,autoFocus:u,theme:f="light",height:p=null,minHeight:g=null,maxHeight:O=null,width:x=null,minWidth:k=null,maxWidth:S=null,placeholder:w="",editable:$=!0,readOnly:b=!1,indentWithTab:P=!0,basicSetup:C=!0,root:Q,initialState:N}=n,[A,X]=F.useState(),[B,H]=F.useState(),[J,R]=F.useState(),V=F.useState(()=>({current:null}))[0],Y=F.useState(()=>({current:null}))[0],te=ve.theme({"&":{height:p,minHeight:g,maxHeight:O,width:x,minWidth:k,maxWidth:S},"& .cm-scroller":{height:"100% !important"}}),pe=ve.updateListener.of(z=>{if(z.docChanged&&typeof s=="function"&&!z.transactions.some(L=>L.annotation(_y))){V.current?V.current.reset():(V.current=new cE(()=>{if(Y.current){var L=Y.current;Y.current=null,L()}V.current=null},dE),uE().add(V.current));var T=z.state.doc,j=T.toString();s(j,z)}i&&i(aE(z))}),ce=oE({theme:f,editable:$,readOnly:b,placeholder:w,indentWithTab:P,basicSetup:C}),U=[pe,te,...ce];return o&&typeof o=="function"&&U.push(ve.updateListener.of(o)),U=U.concat(c),F.useLayoutEffect(()=>{if(A&&!J){var z={doc:e,selection:t,extensions:U},T=N?ze.fromJSON(N.json,z,N.fields):ze.create(z);if(R(T),!B){var j=new ve({state:T,parent:A,root:Q});H(j),r&&r(j,T)}}return()=>{B&&(R(void 0),H(void 0))}},[A,J]),F.useEffect(()=>{n.container&&X(n.container)},[n.container]),F.useEffect(()=>()=>{B&&(B.destroy(),H(void 0)),V.current&&(V.current.cancel(),V.current=null)},[B]),F.useEffect(()=>{u&&B&&B.focus()},[u,B]),F.useEffect(()=>{B&&B.dispatch({effects:Me.reconfigure.of(U)})},[f,c,p,g,O,x,k,S,w,$,b,P,C,s,o]),F.useEffect(()=>{if(e!==void 0){var z=B?B.state.doc.toString():"";if(B&&e!==z){var T=V.current&&!V.current.isDone,j=()=>{B&&e!==B.state.doc.toString()&&B.dispatch({changes:{from:0,to:B.state.doc.toString().length,insert:e||""},annotations:[_y.of(!0)]})};T?Y.current=j:j()}}},[e,B]),{state:J,setState:R,view:B,setView:H,container:A,setContainer:X}}var pE=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],Tw=F.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:x,maxHeight:k,width:S,minWidth:w,maxWidth:$,basicSetup:b,placeholder:P,indentWithTab:C,editable:Q,readOnly:N,root:A,initialState:X}=n,B=q_(n,pE),H=F.useRef(null),{state:J,view:R,container:V,setContainer:Y}=fE({root:A,value:s,autoFocus:p,theme:g,height:O,minHeight:x,maxHeight:k,width:S,minWidth:w,maxWidth:$,basicSetup:b,placeholder:P,indentWithTab:C,editable:Q,readOnly:N,selection:i,onChange:o,onStatistics:c,onCreateEditor:u,onUpdate:f,extensions:r,initialState:X});F.useImperativeHandle(e,()=>({editor:H.current,state:J,view:R}),[H,V,J,R]);var te=F.useCallback(ce=>{H.current=ce,Y(ce)},[Y]);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",Tf({ref:te,className:""+pe+(t?" "+t:"")},B))});Tw.displayName="CodeMirror";var $y={};class Qu{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 Qu(e,[],t,s,s,0,[],0,i?new Cy(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 x=r.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(i,f,x,O+4,!0)}if(e&262144)this.state=this.stack[u];else{let x=this.stack[u-3];this.state=r.getGoto(x,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 Qu(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 mE(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 Cy(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 Cy{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class mE{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 xo(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 Jc{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const Py=new Jc;class gE{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=Py,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=Py,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 il{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:s}=t.p;Nw(this.data,e,t,this.id,s.data,s.tokenPrecTable)}}il.prototype.contextual=il.prototype.fallback=il.prototype.extend=!1;class Cp{constructor(e,t,s){this.precTable=t,this.elseToken=s,this.data=typeof e=="string"?xo(e):e}token(e,t){let s=e.pos,i=0;for(;;){let r=e.next<0,o=e.resolveOffset(1,1);if(Nw(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))}}Cp.prototype.contextual=il.prototype.fallback=il.prototype.extend=!1;class ra{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function Nw(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 x=o+3;x<f;x+=2)if((n[x+1]&c)>0){let k=n[x];if(u.allows(k)&&(e.token.value==-1||e.token.value==k||OE(k,e.token.value,i,r))){e.acceptToken(k);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 x=g+O>>1,k=f+x+(x<<1),S=n[k],w=n[k+1]||65536;if(p<S)O=x;else if(p>=w)g=x+1;else{o=n[k+2],e.advance();continue e}}break}}function Qy(n,e,t){for(let s=e,i;(i=n[s])!=65535;s++)if(i==t)return s-e;return-1}function OE(n,e,t,s){let i=Qy(t,s,e);return i<0||Qy(t,s,n)<i}const Tn=typeof process<"u"&&$y&&/\bparse\b/.test($y.LOG);let wf=null;function jy(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 vE{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?jy(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?jy(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(Ie.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 xE{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(s=>new Jc)}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 Jc,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 Jc,{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=zs(c,f+2);else{i==0&&c[f+1]==2&&(i=this.putAction(zs(c,f+2),t,s,i));break}c[f]==t&&(i=this.putAction(zs(c,f+1),t,s,i))}return i}}class yE{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 gE(t,i),this.tokens=new xE(e,this.stream),this.topTerm=e.top[1];let{from:r}=i[0];this.stacks=[Qu.start(this,e.top[0],r)],this.fragments=s.length&&this.stream.end-r>e.bufferLength*4?new vE(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&&wE(i);if(o)return Tn&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw Tn&&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 Tn&&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=Tn?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(Ie.contextHash)||0)==p))return e.useNode(g,O),Tn&&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 x=g.children[0];if(x instanceof $t&&g.positions[0]==0)g=x;else break}}let c=r.stateSlot(e.state,4);if(c>0)return e.reduce(c),Tn&&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++],x=f==u.length||!s,k=x?e:e.split(),S=this.tokens.mainToken;if(k.apply(p,g,S?S.start:k.pos,O),Tn&&console.log(o+this.stackID(k)+` (via ${(p&65536)==0?"shift":`reduce of ${r.getName(p&65535)}`} for ${r.getName(g)} @ ${i}${k==e?"":", split"})`),x)return!0;k.pos>i?t.push(k):s.push(k)}return!1}advanceFully(e,t){let s=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>s)return Ty(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=Tn?this.stackID(c)+" -> ":"";if(c.deadEnd&&(r||(r=!0,c.restart(),Tn&&console.log(p+this.stackID(c)+" (restarted)"),this.advanceFully(c,s))))continue;let g=c.split(),O=p;for(let x=0;g.forceReduce()&&x<10&&(Tn&&console.log(O+this.stackID(g)+" (via force-reduce)"),!this.advanceFully(g,s));x++)Tn&&(O=this.stackID(g)+" -> ");for(let x of c.recoverByInsert(u))Tn&&console.log(p+this.stackID(x)+" (via recover-insert)"),this.advanceFully(x,s);this.stream.end>c.pos?(f==c.pos&&(f++,u=0),c.recoverByDelete(u,f),Tn&&console.log(p+this.stackID(c)+` (via recover-delete ${this.parser.getName(u)})`),Ty(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 Ty(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 kE{constructor(e,t,s){this.source=e,this.flags=t,this.disabled=s}allows(e){return!this.disabled||this.disabled[e]==0}}const bf=n=>n;class SE{constructor(e){this.start=e.start,this.shift=e.shift||bf,this.reduce=e.reduce||bf,this.reuse=e.reuse||bf,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class Tu extends rS{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=Ie[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=tS;let o=xo(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(Ny),this.states=xo(e.states,Uint32Array),this.data=xo(e.stateData),this.goto=xo(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(c=>typeof c=="number"?new il(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 yE(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=zs(s,r+2)];else{if(s[r+1]==2)return zs(s,r+2);break}if(o==t||o==0)return zs(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=zs(this.data,r+2);else break;i=t(zs(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=zs(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(Tu.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]=Ny(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 kE(e,s,i)}static deserialize(e){return new Tu(e)}}function zs(n,e){return n[e]|n[e+1]<<16}function wE(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 Ny(n){if(n.external){let e=n.extend?1:0;return(t,s)=>n.external(t,s)<<1|e}return n.get}const bE=315,_E=316,Ey=1,$E=2,CE=3,PE=4,QE=317,jE=319,TE=320,NE=5,EE=6,AE=0,Pp=[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],Ew=125,ME=59,Qp=47,RE=42,DE=43,LE=45,IE=60,ZE=44,zE=63,BE=46,FE=91,XE=new SE({start:!1,shift(n,e){return e==NE||e==EE||e==jE?n:e==TE},strict:!1}),VE=new ra((n,e)=>{let{next:t}=n;(t==Ew||t==-1||e.context)&&n.acceptToken(QE)},{contextual:!0,fallback:!0}),qE=new ra((n,e)=>{let{next:t}=n,s;Pp.indexOf(t)>-1||t==Qp&&((s=n.peek(1))==Qp||s==RE)||t!=Ew&&t!=ME&&t!=-1&&!e.context&&n.acceptToken(bE)},{contextual:!0}),YE=new ra((n,e)=>{n.next==FE&&!e.context&&n.acceptToken(_E)},{contextual:!0}),UE=new ra((n,e)=>{let{next:t}=n;if(t==DE||t==LE){if(n.advance(),t==n.next){n.advance();let s=!e.context&&e.canShift(Ey);n.acceptToken(s?Ey:$E)}}else t==zE&&n.peek(1)==BE&&(n.advance(),n.advance(),(n.next<48||n.next>57)&&n.acceptToken(CE))},{contextual:!0});function _f(n,e){return n>=65&&n<=90||n>=97&&n<=122||n==95||n>=192||!e&&n>=48&&n<=57}const WE=new ra((n,e)=>{if(n.next!=IE||!e.dialectEnabled(AE)||(n.advance(),n.next==Qp))return;let t=0;for(;Pp.indexOf(n.next)>-1;)n.advance(),t++;if(_f(n.next,!0)){for(n.advance(),t++;_f(n.next,!1);)n.advance(),t++;for(;Pp.indexOf(n.next)>-1;)n.advance(),t++;if(n.next==ZE)return;for(let s=0;;s++){if(s==7){if(!_f(n.next,!0))return;break}if(n.next!="extends".charCodeAt(s))break;n.advance(),t++}}n.acceptToken(PE,-t)}),GE=lS({"get set async static":Z.modifier,"for while do if else switch try catch finally return throw break continue default case":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)}),HE={__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,for:474,of:483,while:486,with:490,do:494,if:498,else:500,switch:504,case:510,try:516,catch:520,finally:524,return:528,throw:532,break:536,continue:540,debugger:544},KE={__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},JE={__proto__:null,"<":193},eA=Tu.deserialize({version:14,states:"$EOQ%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'#Ik'#IkO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JqO6[Q!0MxO'#JrO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO7eQMhO'#F|O9[Q`O'#F{OOQ!0Lf'#Jr'#JrOOQ!0Lb'#Jq'#JqO9aQ`O'#GwOOQ['#K^'#K^O9lQ`O'#IXO9qQ!0LrO'#IYOOQ['#J_'#J_OOQ['#I^'#I^Q`QlOOQ`QlOOO9yQ!L^O'#DvO:QQlO'#EOO:XQlO'#EQO9gQ`O'#GsO:`QMhO'#CoO:nQ`O'#EnO:yQ`O'#EyO;OQMhO'#FeO;mQ`O'#GsOOQO'#K_'#K_O;rQ`O'#K_O<QQ`O'#G{O<QQ`O'#G|O<QQ`O'#HOO9gQ`O'#HRO<wQ`O'#HUO>`Q`O'#CeO>pQ`O'#HbO>xQ`O'#HhO>xQ`O'#HjO`QlO'#HlO>xQ`O'#HnO>xQ`O'#HqO>}Q`O'#HwO?SQ!0LsO'#H}O%[QlO'#IPO?_Q!0LsO'#IRO?jQ!0LsO'#ITO9qQ!0LrO'#IVO?uQ!0MxO'#CiO@wQpO'#DlQOQ`OOO%[QlO'#EQOA_Q`O'#ETO:`QMhO'#EnOAjQ`O'#EnOAuQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Ju'#JuO%[QlO'#JuOOQO'#Jx'#JxOOQO'#Ig'#IgOBuQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J|'#J|OCqQ!0MSO'#EgOC{QpO'#EWOOQO'#Jw'#JwODaQpO'#JxOEnQpO'#EWOC{QpO'#EgPE{O&2DjO'#CbPOOO)CD|)CD|OOOO'#I_'#I_OFWO#tO,59UOOQ!0Lh,59U,59UOOOO'#I`'#I`OFfO&jO,59UOFtQ!L^O'#DcOOOO'#Ib'#IbOF{O#@ItO,59{OOQ!0Lf,59{,59{OGZQlO'#IcOGnQ`O'#JsOImQ!fO'#JsO+}QlO'#JsOItQ`O,5:ROJ[Q`O'#EpOJiQ`O'#KSOJtQ`O'#KROJtQ`O'#KROJ|Q`O,5;^OKRQ`O'#KQOOQ!0Ln,5:^,5:^OKYQlO,5:^OMWQ!0MxO,5:fOMwQ`O,5:nONbQ!0LrO'#KPONiQ`O'#KOO9aQ`O'#KOON}Q`O'#KOO! VQ`O,5;]O! [Q`O'#KOO!#aQ!fO'#JrOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$PQ!fO,5:sOOQS'#Jy'#JyOOQO-E<i-E<iO9gQ`O,5=_O!$gQ`O,5=_O!$lQlO,5;ZO!&oQMhO'#EkO!(YQ`O,5;ZO!(_QlO'#DyO!(iQpO,5;dO!(qQpO,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!)PQlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IoO!+SQ!0LrO,5<iO%[QlO,5;eO!&oQMhO,5;eO!+qQMhO,5;eO!-cQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-jQ,UO'#FjO!.gQ,UO'#KWO!.RQ,UO'#KWO!.nQ,UO'#KWOOQO'#KW'#KWO!/SQ,UO,5<SOOOW,5<`,5<`O!/eQlO'#FvOOOW'#In'#InO7VO7dO,5<QO!/lQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0]Q$IUO'#CyOOQ!0Lh'#C}'#C}O!0pO#@ItO'#DRO!1^QMjO,5<eO!1eQ`O,5<hO!3QQ(CWO'#GXO!3_Q`O'#GYO!3dQ`O'#GYO!5SQ(CWO'#G^O!6XQpO'#GbOOQO'#Gn'#GnO!+xQMhO'#GmOOQO'#Gp'#GpO!+xQMhO'#GoO!6zQ$IUO'#JkOOQ!0Lh'#Jk'#JkO!7UQ`O'#JjO!7dQ`O'#JiO!7lQ`O'#CuOOQ!0Lh'#C{'#C{O!7}Q`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO1SQ`O'#DZO!+xQMhO'#GPO!+xQMhO'#GRO!8SQ`O'#GTO!8XQ`O'#GUO!3dQ`O'#G[O!+xQMhO'#GaO<QQ`O'#JjO!8^Q`O'#EqO!8{Q`O,5<gOOQ!0Lb'#Cr'#CrO!9TQ`O'#ErO!9}QpO'#EsOOQ!0Lb'#KQ'#KQO!:UQ!0LrO'#K`O9qQ!0LrO,5=cO`QlO,5>sOOQ['#Jg'#JgOOQ[,5>t,5>tOOQ[-E<[-E<[O!<TQ!0MxO,5:bO!9xQpO,5:`O!>nQ!0MxO,5:jO%[QlO,5:jO!AUQ!0MxO,5:lOOQO,5@y,5@yO!AuQMhO,5=_O!BTQ!0LrO'#JhO9[Q`O'#JhO!BfQ!0LrO,59ZO!BqQpO,59ZO!ByQMhO,59ZO:`QMhO,59ZO!CUQ`O,5;ZO!C^Q`O'#HaO!CrQ`O'#KcO%[QlO,5;}O!9xQpO,5<PO!CzQ`O,5=zO!DPQ`O,5=zO!DUQ`O,5=zO9qQ!0LrO,5=zO<QQ`O,5=jOOQO'#Cy'#CyO!DdQpO,5=gO!DlQMhO,5=hO!DwQ`O,5=jO!D|Q!bO,5=mO!EUQ`O'#K_O>}Q`O'#HWO9gQ`O'#HYO!EZQ`O'#HYO:`QMhO'#H[O!E`Q`O'#H[OOQ[,5=p,5=pO!EeQ`O'#H]O!EvQ`O'#CoO!E{Q`O,59PO!FVQ`O,59PO!H[QlO,59POOQ[,59P,59PO!HlQ!0LrO,59PO%[QlO,59PO!JwQlO'#HdOOQ['#He'#HeOOQ['#Hf'#HfO`QlO,5=|O!K_Q`O,5=|O`QlO,5>SO`QlO,5>UO!KdQ`O,5>WO`QlO,5>YO!KiQ`O,5>]O!KnQlO,5>cOOQ[,5>i,5>iO%[QlO,5>iO9qQ!0LrO,5>kOOQ[,5>m,5>mO# xQ`O,5>mOOQ[,5>o,5>oO# xQ`O,5>oOOQ[,5>q,5>qO#!fQpO'#D_O%[QlO'#JuO##XQpO'#JuO##cQpO'#DmO##tQpO'#DmO#&VQlO'#DmO#&^Q`O'#JtO#&fQ`O,5:WO#&kQ`O'#EtO#&yQ`O'#KTO#'RQ`O,5;_O#'WQpO'#DmO#'eQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#'lQ`O,5:oO>}Q`O,5;YO!BqQpO,5;YO!ByQMhO,5;YO:`QMhO,5;YO#'tQ`O,5@aO#'yQ07dO,5:sOOQO-E<e-E<eO#)PQ!0MSO,5;ROC{QpO,5:rO#)ZQpO,5:rOC{QpO,5;RO!BfQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#)hQ!0LrO,5;RO#)sQ!0LrO,5;RO!BqQpO,5:rOOQO,5;X,5;XO#*RQ!0LrO,5;RPOOO'#I]'#I]P#*gO&2DjO,58|POOO,58|,58|OOOO-E<]-E<]OOQ!0Lh1G.p1G.pOOOO-E<^-E<^OOOO,59},59}O#*rQ!bO,59}OOOO-E<`-E<`OOQ!0Lf1G/g1G/gO#*wQ!fO,5>}O+}QlO,5>}OOQO,5?T,5?TO#+RQlO'#IcOOQO-E<a-E<aO#+`Q`O,5@_O#+hQ!fO,5@_O#+oQ`O,5@mOOQ!0Lf1G/m1G/mO%[QlO,5@nO#+wQ`O'#IiOOQO-E<g-E<gO#+oQ`O,5@mOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@kO#,]Q!0LrO,5@kO#,nQ!0LrO,5@kO#,uQ`O,5@jO9aQ`O,5@jO#,}Q`O,5@jO#-]Q`O'#IlO#,uQ`O,5@jOOQ!0Lb1G0w1G0wO!(iQpO,5:uO!(tQpO,5:uOOQS,5:w,5:wO#-}QdO,5:wO#.VQMhO1G2yO9gQ`O1G2yOOQ!0Lf1G0u1G0uO#.eQ!0MxO1G0uO#/jQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0WQ!0MzO'#JkO!$lQlO1G0uO#2cQ!fO'#JvO%[QlO'#JvO#2mQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#2rQ`O1G1OO#5WQ!0MxO1G1PO#5_Q!0MxO1G1PO#7uQ!0MxO1G1PO#7|Q!0MxO1G1PO#:dQ!0MxO1G1PO#<zQ!0MxO1G1PO#=RQ!0MxO1G1PO#=YQ!0MxO1G1PO#?pQ!0MxO1G1PO#?wQ!0MxO1G1PO#BUQ?MtO'#CiO#DPQ?MtO1G1`O#DWQ?MtO'#JrO#DkQ!0MxO,5?ZOOQ!0Lb-E<m-E<mO#FxQ!0MxO1G1PO#GuQ!0MzO1G1POOQ!0Lf1G1P1G1PO#HxQMjO'#J{O#ISQ`O,5:xO#IXQ!0MxO1G1cO#I{Q,UO,5<WO#JTQ,UO,5<XO#J]Q,UO'#FoO#JtQ`O'#FnOOQO'#KX'#KXOOQO'#Im'#ImO#JyQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#K[Q?MtO'#JqO#KfQ`O,5<bO!)PQlO,5<bOOOW-E<l-E<lOOQ!0Lf1G1l1G1lO#KkQpO'#KWOOQ!0Lf,5<d,5<dO#KsQpO,5<dO#KxQMhO'#DTOOOO'#Ia'#IaO#LPO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8XQ`O'#IqO#L[Q`O,5<zOOQ!0Lh,5<w,5<wO!+xQMhO'#ItO#LxQMjO,5=XO!+xQMhO'#IvO#MkQMjO,5=ZO!&oQMhO,5=]OOQO1G2S1G2SO#MuQ!dO'#CrO#NYQ(CWO'#ErO$ _QpO'#GbO$ uQ!dO,5<sO$ |Q`O'#KZO9aQ`O'#KZO$![Q`O,5<uO!+xQMhO,5<tO$!aQ`O'#GZO$!rQ`O,5<tO$!wQ!dO'#GWO$#UQ!dO'#K[O$#`Q`O'#K[O!&oQMhO'#K[O$#eQ`O,5<xO$#jQlO'#JuO$#tQpO'#GcO##tQpO'#GcO$$VQ`O'#GgO!3dQ`O'#GkO$$[Q!0LrO'#IsO$$gQpO,5<|OOQ!0Lp,5<|,5<|O$$nQpO'#GcO$${QpO'#GdO$%^QpO'#GdO$%cQMjO,5=XO$%sQMjO,5=ZOOQ!0Lh,5=^,5=^O!+xQMhO,5@UO!+xQMhO,5@UO$&TQ`O'#IxO$&iQ`O,5@TO$&qQ`O,59aOOQ!0Lh,59i,59iO$'hQ$IYO,59uOOQ!0Lh'#Jo'#JoO$(ZQMjO,5<kO$(|QMjO,5<mO@oQ`O,5<oOOQ!0Lh,5<p,5<pO$)WQ`O,5<vO$)]QMjO,5<{O$)mQ`O,5@UO$){Q`O'#KOO!$lQlO1G2RO$*QQ`O1G2RO9aQ`O'#KRO9aQ`O'#EtO%[QlO'#EtO9aQ`O'#IzO$*VQ!0LrO,5@zOOQ[1G2}1G2}OOQ[1G4_1G4_OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$,XQ!0MxO1G0UOOQ[1G2y1G2yO!&oQMhO1G2yO%[QlO1G2yO#.YQ`O1G2yO$.]QMhO'#EkOOQ!0Lb,5@S,5@SO$.jQ!0LrO,5@SOOQ[1G.u1G.uO!BfQ!0LrO1G.uO!BqQpO1G.uO!ByQMhO1G.uO$.{Q`O1G0uO$/QQ`O'#CiO$/]Q`O'#KdO$/eQ`O,5={O$/jQ`O'#KdO$/oQ`O'#KdO$/}Q`O'#JQO$0]Q`O,5@}O$0eQ!fO1G1iOOQ!0Lf1G1k1G1kO9gQ`O1G3fO@oQ`O1G3fO$0lQ`O1G3fO$0qQ`O1G3fOOQ[1G3f1G3fO!DwQ`O1G3UO!&oQMhO1G3RO$0vQ`O1G3ROOQ[1G3S1G3SO!&oQMhO1G3SO$0{Q`O1G3SO$1TQpO'#HQOOQ[1G3U1G3UO!6SQpO'#I|O!D|Q!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$1]QMhO,5=tO9gQ`O,5=tO$$VQ`O,5=vO9[Q`O,5=vO!BqQpO,5=vO!ByQMhO,5=vO:`QMhO,5=vO$1kQ`O'#KbO$1vQ`O,5=wOOQ[1G.k1G.kO$1{Q!0LrO1G.kO@oQ`O1G.kO$2WQ`O1G.kO9qQ!0LrO1G.kO$4`Q!fO,5APO$4mQ`O,5APO9aQ`O,5APO$4xQlO,5>OO$5PQ`O,5>OOOQ[1G3h1G3hO`QlO1G3hOOQ[1G3n1G3nOOQ[1G3p1G3pO>xQ`O1G3rO$5UQlO1G3tO$9YQlO'#HsOOQ[1G3w1G3wO$9gQ`O'#HyO>}Q`O'#H{OOQ[1G3}1G3}O$9oQlO1G3}O9qQ!0LrO1G4TOOQ[1G4V1G4VOOQ!0Lb'#G_'#G_O9qQ!0LrO1G4XO9qQ!0LrO1G4ZO$=vQ`O,5@aO!)PQlO,5;`O9aQ`O,5;`O>}Q`O,5:XO!)PQlO,5:XO!BqQpO,5:XO$={Q?MtO,5:XOOQO,5;`,5;`O$>VQpO'#IdO$>mQ`O,5@`OOQ!0Lf1G/r1G/rO$>uQpO'#IjO$?PQ`O,5@oOOQ!0Lb1G0y1G0yO##tQpO,5:XOOQO'#If'#IfO$?XQpO,5:qOOQ!0Ln,5:q,5:qO#'oQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO>}Q`O1G0tO!BqQpO1G0tO!ByQMhO1G0tOOQ!0Lb1G5{1G5{O!BfQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$?`Q!0LrO1G0mO$?kQ!0LrO1G0mO!BqQpO1G0^OC{QpO1G0^O$?yQ!0LrO1G0mOOQO1G0^1G0^O$@_Q!0MxO1G0mPOOO-E<Z-E<ZPOOO1G.h1G.hOOOO1G/i1G/iO$@iQ!bO,5<iO$@qQ!fO1G4iOOQO1G4o1G4oO%[QlO,5>}O$@{Q`O1G5yO$ATQ`O1G6XO$A]Q!fO1G6YO9aQ`O,5?TO$AgQ!0MxO1G6VO%[QlO1G6VO$AwQ!0LrO1G6VO$BYQ`O1G6UO$BYQ`O1G6UO9aQ`O1G6UO$BbQ`O,5?WO9aQ`O,5?WOOQO,5?W,5?WO$BvQ`O,5?WO$){Q`O,5?WOOQO-E<j-E<jOOQS1G0a1G0aOOQS1G0c1G0cO#.QQ`O1G0cOOQ[7+(e7+(eO!&oQMhO7+(eO%[QlO7+(eO$CUQ`O7+(eO$CaQMhO7+(eO$CoQ!0MzO,5=XO$EzQ!0MzO,5=ZO$HVQ!0MzO,5=XO$JhQ!0MzO,5=ZO$LyQ!0MzO,59uO% OQ!0MzO,5<kO%#ZQ!0MzO,5<mO%%fQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%'wQ!0MxO7+&aO%(kQlO'#IeO%(xQ`O,5@bO%)QQ!fO,5@bOOQ!0Lf1G0P1G0PO%)[Q`O7+&jOOQ!0Lf7+&j7+&jO%)aQ?MtO,5:fO%[QlO7+&zO%)kQ?MtO,5:bO%)xQ?MtO,5:jO%*SQ?MtO,5:lO%*^QMhO'#IhO%*hQ`O,5@gOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%*pQ!jO,5<ZO!)PQlO,5<YOOQO-E<k-E<kOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%*{Q`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%+QQ!dO,59oOOOO-E<_-E<_OOQ!0Lh1G/X1G/XO%+XQ!0MxO7+'kOOQ!0Lh,5?],5?]O%+{QMhO1G2fP%,SQ`O'#IqPOQ!0Lh-E<o-E<oO%,pQMjO,5?`OOQ!0Lh-E<r-E<rO%-cQMjO,5?bOOQ!0Lh-E<t-E<tO%-mQ!dO1G2wO%-tQ!dO'#CrO%.[QMhO'#KRO$#jQlO'#JuOOQ!0Lh1G2_1G2_O%.cQ`O'#IpO%.wQ`O,5@uO%.wQ`O,5@uO%/PQ`O,5@uO%/[Q`O,5@uOOQO1G2a1G2aO%/jQMjO1G2`O!+xQMhO1G2`O%/zQ(CWO'#IrO%0XQ`O,5@vO!&oQMhO,5@vO%0aQ!dO,5@vOOQ!0Lh1G2d1G2dO%2qQ!fO'#CiO%2{Q`O,5=POOQ!0Lb,5<},5<}O%3TQpO,5<}OOQ!0Lb,5=O,5=OOClQ`O,5<}O%3`QpO,5<}OOQ!0Lb,5=R,5=RO$){Q`O,5=VOOQO,5?_,5?_OOQO-E<q-E<qOOQ!0Lp1G2h1G2hO##tQpO,5<}O$#jQlO,5=PO%3nQ`O,5=OO%3yQpO,5=OO!+xQMhO'#ItO%4sQMjO1G2sO!+xQMhO'#IvO%5fQMjO1G2uO%5pQMjO1G5pO%5zQMjO1G5pOOQO,5?d,5?dOOQO-E<v-E<vOOQO1G.{1G.{O!9xQpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%6XQ`O1G2ZO!+xQMhO1G2bO!+xQMhO1G5pO!+xQMhO1G5pO%6^Q!0MxO7+'mOOQ!0Lf7+'m7+'mO!$lQlO7+'mO%7QQ`O,5;`OOQ!0Lb,5?f,5?fOOQ!0Lb-E<x-E<xO%7VQ!dO'#K]O#'oQ`O7+(eO4UQ!fO7+(eO$CXQ`O7+(eO%7aQ!0MvO'#CiO%7tQ!0MvO,5=SO%8fQ`O,5=SO%8nQ`O,5=SOOQ!0Lb1G5n1G5nOOQ[7+$a7+$aO!BfQ!0LrO7+$aO!BqQpO7+$aO!$lQlO7+&aO%8sQ`O'#JPO%9[Q`O,5AOOOQO1G3g1G3gO9gQ`O,5AOO%9[Q`O,5AOO%9dQ`O,5AOOOQO,5?l,5?lOOQO-E=O-E=OOOQ!0Lf7+'T7+'TO%9iQ`O7+)QO9qQ!0LrO7+)QO9gQ`O7+)QO@oQ`O7+)QOOQ[7+(p7+(pO%9nQ!0MvO7+(mO!&oQMhO7+(mO!DrQ`O7+(nOOQ[7+(n7+(nO!&oQMhO7+(nO%9xQ`O'#KaO%:TQ`O,5=lOOQO,5?h,5?hOOQO-E<z-E<zOOQ[7+(s7+(sO%;gQpO'#HZOOQ[1G3`1G3`O!&oQMhO1G3`O%[QlO1G3`O%;nQ`O1G3`O%;yQMhO1G3`O9qQ!0LrO1G3bO$$VQ`O1G3bO9[Q`O1G3bO!BqQpO1G3bO!ByQMhO1G3bO%<XQ`O'#JOO%<mQ`O,5@|O%<uQpO,5@|OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@oQ`O7+$VO9qQ!0LrO7+$VO%=QQ`O7+$VO%[QlO1G6kO%[QlO1G6lO%=VQ!0LrO1G6kO%=aQlO1G3jO%=hQ`O1G3jO%=mQlO1G3jOOQ[7+)S7+)SO9qQ!0LrO7+)^O`QlO7+)`OOQ['#Kg'#KgOOQ['#JR'#JRO%=tQlO,5>_OOQ[,5>_,5>_O%[QlO'#HtO%>RQ`O'#HvOOQ[,5>e,5>eO9aQ`O,5>eOOQ[,5>g,5>gOOQ[7+)i7+)iOOQ[7+)o7+)oOOQ[7+)s7+)sOOQ[7+)u7+)uO%>WQpO1G5{O%>rQ?MtO1G0zO%>|Q`O1G0zOOQO1G/s1G/sO%?XQ?MtO1G/sO>}Q`O1G/sO!)PQlO'#DmOOQO,5?O,5?OOOQO-E<b-E<bOOQO,5?U,5?UOOQO-E<h-E<hO!BqQpO1G/sOOQO-E<d-E<dOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#'oQ`O7+%uOOQ!0Lf7+&`7+&`O>}Q`O7+&`O!BqQpO7+&`OOQO7+%x7+%xO$@_Q!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%?cQ!0LrO7+&XO!BfQ!0LrO7+%xO!BqQpO7+%xO%?nQ!0LrO7+&XO%?|Q!0MxO7++qO%[QlO7++qO%@^Q`O7++pO%@^Q`O7++pOOQO1G4r1G4rO9aQ`O1G4rO%@fQ`O1G4rOOQS7+%}7+%}O#'oQ`O<<LPO4UQ!fO<<LPO%@tQ`O<<LPOOQ[<<LP<<LPO!&oQMhO<<LPO%[QlO<<LPO%@|Q`O<<LPO%AXQ!0MzO,5?`O%CdQ!0MzO,5?bO%EoQ!0MzO1G2`O%HQQ!0MzO1G2sO%J]Q!0MzO1G2uO%LhQ!fO,5?PO%[QlO,5?POOQO-E<c-E<cO%LrQ`O1G5|OOQ!0Lf<<JU<<JUO%LzQ?MtO1G0uO& RQ?MtO1G1PO& YQ?MtO1G1PO&#ZQ?MtO1G1PO&#bQ?MtO1G1PO&%cQ?MtO1G1PO&'dQ?MtO1G1PO&'kQ?MtO1G1PO&'rQ?MtO1G1PO&)sQ?MtO1G1PO&)zQ?MtO1G1PO&*RQ!0MxO<<JfO&+yQ?MtO1G1PO&,vQ?MvO1G1PO&-yQ?MvO'#JkO&0PQ?MtO1G1cO&0^Q?MtO1G0UO&0hQMjO,5?SOOQO-E<f-E<fO!)PQlO'#FqOOQO'#KY'#KYOOQO1G1u1G1uO&0rQ`O1G1tO&0wQ?MtO,5?ZOOOW7+'h7+'hOOOO1G/Z1G/ZO&1RQ!dO1G4wOOQ!0Lh7+(Q7+(QP!&oQMhO,5?]O!+xQMhO7+(cO&1YQ`O,5?[O9aQ`O,5?[OOQO-E<n-E<nO&1hQ`O1G6aO&1hQ`O1G6aO&1pQ`O1G6aO&1{QMjO7+'zO&2]Q!dO,5?^O&2gQ`O,5?^O!&oQMhO,5?^OOQO-E<p-E<pO&2lQ!dO1G6bO&2vQ`O1G6bO&3OQ`O1G2kO!&oQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%3TQpO1G2iO!BqQpO1G2iOClQ`O1G2iOOQ!0Lb1G2q1G2qO&3TQpO1G2iO&3cQ`O1G2kO$){Q`O1G2jOClQ`O1G2jO$#jQlO1G2kO&3kQ`O1G2jO&4_QMjO,5?`OOQ!0Lh-E<s-E<sO&5QQMjO,5?bOOQ!0Lh-E<u-E<uO!+xQMhO7++[OOQ!0Lh1G/c1G/cO&5[Q`O1G/cOOQ!0Lh7+'u7+'uO&5aQMjO7+'|O&5qQMjO7++[O&5{QMjO7++[O&6YQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&6|Q`O1G0zO!&oQMhO'#IyO&7RQ`O,5@wO&9TQ!fO<<LPO!&oQMhO1G2nO&9[Q!0LrO1G2nOOQ[<<G{<<G{O!BfQ!0LrO<<G{O&9mQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?k,5?kO&:aQ`O,5?kO&:fQ`O,5?kOOQO-E<}-E<}O&:tQ`O1G6jO&:tQ`O1G6jO9gQ`O1G6jO@oQ`O<<LlOOQ[<<Ll<<LlO&:|Q`O<<LlO9qQ!0LrO<<LlOOQ[<<LX<<LXO%9nQ!0MvO<<LXOOQ[<<LY<<LYO!DrQ`O<<LYO&;RQpO'#I{O&;^Q`O,5@{O!)PQlO,5@{OOQ[1G3W1G3WOOQO'#I}'#I}O9qQ!0LrO'#I}O&;fQpO,5=uOOQ[,5=u,5=uO&;mQpO'#EgO&;tQpO'#GeO&;yQ`O7+(zO&<OQ`O7+(zOOQ[7+(z7+(zO!&oQMhO7+(zO%[QlO7+(zO&<WQ`O7+(zOOQ[7+(|7+(|O9qQ!0LrO7+(|O$$VQ`O7+(|O9[Q`O7+(|O!BqQpO7+(|O&<cQ`O,5?jOOQO-E<|-E<|OOQO'#H^'#H^O&<nQ`O1G6hO9qQ!0LrO<<GqOOQ[<<Gq<<GqO@oQ`O<<GqO&<vQ`O7+,VO&<{Q`O7+,WO%[QlO7+,VO%[QlO7+,WOOQ[7+)U7+)UO&=QQ`O7+)UO&=VQlO7+)UO&=^Q`O7+)UOOQ[<<Lx<<LxOOQ[<<Lz<<LzOOQ[-E=P-E=POOQ[1G3y1G3yO&=cQ`O,5>`OOQ[,5>b,5>bO&=hQ`O1G4PO9aQ`O7+&fO!)PQlO7+&fOOQO7+%_7+%_O&=mQ?MtO1G6YO>}Q`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO>}Q`O<<IzOOQO<<Is<<IsO$@_Q!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!BfQ!0LrO<<IdO&=wQ!0LrO<<IsO&>SQ!0MxO<= ]O&>dQ`O<= [OOQO7+*^7+*^O9aQ`O7+*^OOQ[ANAkANAkO&>lQ!fOANAkO!&oQMhOANAkO#'oQ`OANAkO4UQ!fOANAkO&>sQ`OANAkO%[QlOANAkO&>{Q!0MzO7+'zO&A^Q!0MzO,5?`O&CiQ!0MzO,5?bO&EtQ!0MzO7+'|O&HVQ!fO1G4kO&HaQ?MtO7+&aO&JeQ?MvO,5=XO&LlQ?MvO,5=ZO&L|Q?MvO,5=XO&M^Q?MvO,5=ZO&MnQ?MvO,59uO' tQ?MvO,5<kO'#wQ?MvO,5<mO'&]Q?MvO,5<{O'(RQ?MtO7+'kO'(`Q?MtO7+'mO'(mQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*c7+*cO'(rQMjO<<K}OOQO1G4v1G4vO'(yQ`O1G4vO')UQ`O1G4vO')dQ`O7++{O')dQ`O7++{O!&oQMhO1G4xO')lQ!dO1G4xO')vQ`O7++|O'*OQ`O7+(VO'*ZQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!BqQpO7+(TOClQ`O7+(TO'*eQ`O7+(VO!&oQMhO7+(VO$){Q`O7+(UO'*jQ`O7+(VOClQ`O7+(UO'*rQMjO<<NvOOQ!0Lh7+$}7+$}O!+xQMhO<<NvO'*|Q!dO,5?eOOQO-E<w-E<wO'+WQ!0MvO7+(YO!&oQMhO7+(YOOQ[AN=gAN=gO9gQ`O1G5VOOQO1G5V1G5VO'+hQ`O1G5VO'+mQ`O7+,UO'+mQ`O7+,UO9qQ!0LrOANBWO@oQ`OANBWOOQ[ANBWANBWOOQ[ANAsANAsOOQ[ANAtANAtO'+uQ`O,5?gOOQO-E<y-E<yO',QQ?MtO1G6gOOQO,5?i,5?iOOQO-E<{-E<{OOQ[1G3a1G3aO',[Q`O,5=POOQ[<<Lf<<LfO!&oQMhO<<LfO&;yQ`O<<LfO',aQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9qQ!0LrO<<LhO$$VQ`O<<LhO9[Q`O<<LhO',iQpO1G5UO',tQ`O7+,SOOQ[AN=]AN=]O9qQ!0LrOAN=]OOQ[<= q<= qOOQ[<= r<= rO',|Q`O<= qO'-RQ`O<= rOOQ[<<Lp<<LpO'-WQ`O<<LpO'-]QlO<<LpOOQ[1G3z1G3zO>}Q`O7+)kO'-dQ`O<<JQO'-oQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$@_Q!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<Mx<<MxOOQ[G27VG27VO!&oQMhOG27VO#'oQ`OG27VO'-yQ!fOG27VO4UQ!fOG27VO'.QQ`OG27VO'.YQ?MtO<<JfO'.gQ?MvO1G2`O'0]Q?MvO,5?`O'2`Q?MvO,5?bO'4cQ?MvO1G2sO'6fQ?MvO1G2uO'8iQ?MtO<<KXO'8vQ?MtO<<I{OOQO1G1w1G1wO!+xQMhOANAiOOQO7+*b7+*bO'9TQ`O7+*bO'9`Q`O<= gO'9hQ!dO7+*dOOQ!0Lb<<Kq<<KqO$){Q`O<<KqOClQ`O<<KqO'9rQ`O<<KqO!&oQMhO<<KqOOQ!0Lb<<Ko<<KoO!BqQpO<<KoO'9}Q!dO<<KqOOQ!0Lb<<Kp<<KpO':XQ`O<<KqO!&oQMhO<<KqO$){Q`O<<KpO':^QMjOANDbO':hQ!0MvO<<KtOOQO7+*q7+*qO9gQ`O7+*qO':xQ`O<= pOOQ[G27rG27rO9qQ!0LrOG27rO!)PQlO1G5RO';QQ`O7+,RO';YQ`O1G2kO&;yQ`OANBQOOQ[ANBQANBQO!&oQMhOANBQO';_Q`OANBQOOQ[ANBSANBSO9qQ!0LrOANBSO$$VQ`OANBSOOQO'#H_'#H_OOQO7+*p7+*pOOQ[G22wG22wOOQ[ANE]ANE]OOQ[ANE^ANE^OOQ[ANB[ANB[O';gQ`OANB[OOQ[<<MV<<MVO!)PQlOAN?lOOQOG24yG24yO$@_Q!0MxOG24yO#'oQ`OLD,qOOQ[LD,qLD,qO!&oQMhOLD,qO';lQ!fOLD,qO';sQ?MvO7+'zO'=iQ?MvO,5?`O'?lQ?MvO,5?bO'AoQ?MvO7+'|O'CeQMjOG27TOOQO<<M|<<M|OOQ!0LbANA]ANA]O$){Q`OANA]OClQ`OANA]O'CuQ!dOANA]OOQ!0LbANAZANAZO'C|Q`OANA]O!&oQMhOANA]O'DXQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N]<<N]OOQ[LD-^LD-^O'DcQ?MtO7+*mOOQO'#Gf'#GfOOQ[G27lG27lO&;yQ`OG27lO!&oQMhOG27lOOQ[G27nG27nO9qQ!0LrOG27nOOQ[G27vG27vO'DmQ?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#'oQ`O!$(!]O!&oQMhO!$(!]O'DwQ!0MzOG27TOOQ!0LbG26wG26wO$){Q`OG26wO'GYQ`OG26wOClQ`OG26wO'GeQ!dOG26wO!&oQMhOG26wOOQ[LD-WLD-WO&;yQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#'oQ`O!)9EwOOQ!0LbLD,cLD,cO$){Q`OLD,cOClQ`OLD,cO'GlQ`OLD,cO'GwQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'HOQ?MvOG27TOOQ!0Lb!$( }!$( }O$){Q`O!$( }OClQ`O!$( }O'ItQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$){Q`O!)9EiOClQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$){Q`O!.K;TOOQ!0Lb!4/0o!4/0oO!)PQlO'#DzO1PQ`O'#EXO'JPQ!fO'#JqO'JWQ!L^O'#DvO'J_QlO'#EOO'JfQ!fO'#CiO'L|Q!fO'#CiO!)PQlO'#EQO'M^QlO,5;ZO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO,5;eO!)PQlO'#IoO( aQ`O,5<iO!)PQlO,5;eO( iQMhO,5;eO(#SQMhO,5;eO!)PQlO,5;wO!&oQMhO'#GmO( iQMhO'#GmO!&oQMhO'#GoO( iQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&oQMhO'#GPO( iQMhO'#GPO!&oQMhO'#GRO( iQMhO'#GRO!&oQMhO'#GaO( iQMhO'#GaO!)PQlO,5:jO(#ZQpO'#D_O(#eQpO'#JuO!)PQlO,5@nO'M^QlO1G0uO(#oQ?MtO'#CiO!)PQlO1G2PO!&oQMhO'#ItO( iQMhO'#ItO!&oQMhO'#IvO( iQMhO'#IvO(#yQ!dO'#CrO!&oQMhO,5<tO( iQMhO,5<tO'M^QlO1G2RO!)PQlO7+&zO!&oQMhO1G2`O( iQMhO1G2`O!&oQMhO'#ItO( iQMhO'#ItO!&oQMhO'#IvO( iQMhO'#IvO!&oQMhO1G2bO( iQMhO1G2bO'M^QlO7+'mO'M^QlO7+&aO!&oQMhOANAiO( iQMhOANAiO($^Q`O'#EoO($cQ`O'#EoO($kQ`O'#F]O($pQ`O'#EyO($uQ`O'#KSO(%QQ`O'#KQO(%]Q`O,5;ZO(%bQMjO,5<eO(%iQ`O'#GYO(%nQ`O'#GYO(%sQ`O,5<gO(%{Q`O,5;ZO(&TQ?MtO1G1`O(&[Q`O,5<tO(&aQ`O,5<tO(&fQ`O,5<vO(&kQ`O,5<vO(&pQ`O1G2RO(&uQ`O1G0uO(&zQMjO<<K}O('RQMjO<<K}O7eQMhO'#F|O9[Q`O'#F{OAjQ`O'#EnO!)PQlO,5;tO!3dQ`O'#GYO!3dQ`O'#GYO!3dQ`O'#G[O!3dQ`O'#G[O!+xQMhO7+(cO!+xQMhO7+(cO%-mQ!dO1G2wO%-mQ!dO1G2wO!&oQMhO,5=]O!&oQMhO,5=]",stateData:"((X~O'{OS'|OSTOS'}RQ~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&V!WO&]!XO&_!YO&a!ZO&c![O&f!]O&l!^O&r!_O&t!`O&v!aO&x!bO&z!cO(SSO(UTO(XUO(`VO(n[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(S!dO(UTO(XUO(`VO(n[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|;wO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(T!lO(UTO(XUO(d!mO(n!sO~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'y]X(`]X(q]X(x]X(y]X~O!g%RX~P(qO_!}O(U#PO(V!}O(W#PO~O_#QO(W#PO(X#PO(Y#QO~Ox#SO!U#TO(a#TO(b#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(S;{O(UTO(XUO(`VO(n[O~O![#ZO!]#WO!Y(gP!Y(uP~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(UTO(XUO(`VO(n[O~Op#mO![#iO!|]O#i#lO#j#iO(S;|O!k(rP~P.iO!l#oO(S#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(`VO(q$YO(x#|O(y#}O~Oa(eX'y(eX'v(eX!k(eX!Y(eX!_(eX%i(eX!g(eX~P1qO#S$dO#`$eO$Q$eOP(fXR(fX[(fXj(fXr(fX!Q(fX!S(fX!](fX!l(fX!p(fX#R(fX#n(fX#o(fX#p(fX#q(fX#r(fX#s(fX#t(fX#u(fX#v(fX#x(fX#z(fX#{(fX(`(fX(q(fX(x(fX(y(fX!_(fX%i(fX~Oa(fX'y(fX'v(fX!Y(fX!k(fXv(fX!g(fX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%cOk%cOl%cOp%WOr%XOs$tOt$tOz%YO|%ZO!O%[O!S${O!_$|O!i%aO!l$xO#j%bO$W%_O$t%]O$v%^O$y%`O(S$sO(UTO(XUO(`$uO(x$}O(y%POg(]P~O!l%dO~O!S%gO!_%hO(S%fO~O!g%lO~Oa%mO'y%mO~O!Q%qO~P%[O(T!lO~P%[O%n%uO~P%[Oh%VO!l%dO(S%fO(T!lO~Oe%|O!l%dO(S%fO~Oj$RO~O!Q&RO!_&OO!l&QO%j&UO(S%fO(T!lO(UTO(XUO`)VP~O!x#sO~O%s&WO!S)RX!_)RX(S)RX~O(S&XO~Ol!PO!u&^O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&cOe&bO!x&`O%h&aO%{&_O~P<VOd&fOeyOl!PO!_&eO!u&^O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&iO#`&lO%j&gO(T!lO~P=[O!l&mO!u&qO~O!l#oO~O!_XO~Oa%mO'w&yO'y%mO~Oa%mO'w&|O'y%mO~Oa%mO'w'OO'y%mO~O'v]X!Y]Xv]X!k]X&Z]X!_]X%i]X!g]X~P(qO!b']O!c'UO!d'UO(T!lO(UTO(XUO~Os'SO!S'RO!['VO(d'QO!^(hP!^(wP~P@cOn'`O!_'^O(S%fO~Oe'eO!l%dO(S%fO~O!Q&RO!l&QO~Os!nO!S!oO!|;wO#T!pO#U!pO#W!pO#X!pO(T!lO(UTO(XUO(d!mO(n!sO~O!b'kO!c'jO!d'jO#V!pO#['lO#]'lO~PA}Oa%mOh%VO!g#vO!l%dO'y%mO(q'nO~O!p'rO#`'pO~PC]Os!nO!S!oO(UTO(XUO(d!mO(n!sO~O!_XOs(lX!S(lX!b(lX!c(lX!d(lX!|(lX#T(lX#U(lX#V(lX#W(lX#X(lX#[(lX#](lX(T(lX(U(lX(X(lX(d(lX(n(lX~O!c'jO!d'jO(T!lO~PC{O(O'vO(P'vO(Q'xO~O_!}O(U'zO(V!}O(W'zO~O_#QO(W'zO(X'zO(Y#QO~Ov'|O~P%[Ox#SO!U#TO(a#TO(b(PO~O![(RO!Y'VX!Y']X!]'VX!]']X~P+}O!](TO!Y(gX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](TO!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(`VO(q$YO(x#|O(y#}O~O!Y(gX~PGvO!Y(YO~O!Y(tX!](tX!g(tX!k(tX(q(tX~O#`(tX#k#dX!^(tX~PIyO#`(ZO!Y(vX!](vX~O!]([O!Y(uX~O!Y(_O~O#`$eO~PIyO!^(`O~P`OR#zO!Q#yO!S#{O!l#xO(`VOP!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(q!na(x!na(y!na~Oa!na'y!na'v!na!Y!na!k!nav!na!_!na%i!na!g!na~PKaO!k(aO~O!g#vO#`(bO(q'nO!](sXa(sX'y(sX~O!k(sX~PM|O!S%gO!_%hO!|]O#i(gO#j(fO(S%fO~O!](hO!k(rX~O!k(jO~O!S%gO!_%hO#j(fO(S%fO~OP(fXR(fX[(fXj(fXr(fX!Q(fX!S(fX!](fX!l(fX!p(fX#R(fX#n(fX#o(fX#p(fX#q(fX#r(fX#s(fX#t(fX#u(fX#v(fX#x(fX#z(fX#{(fX(`(fX(q(fX(x(fX(y(fX~O!g#vO!k(fX~P! jOR(lO!Q(kO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(S!{a~P!#kO!x(pO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(S!dO(UTO(XUO(`VO(n[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<eO!S${O!_$|O!i=vO!l$xO#j<kO$W%_O$t<gO$v<iO$y%`O(S(tO(UTO(XUO(`$uO(x$}O(y%PO~O#k(vO~O![(xO!k(jP~P%[O(d(zO(n[O~O!S(|O!l#xO(d(zO(n[O~OP;vOQ;vOSfOd=rOe!iOpkOr;vOskOtkOzkO|;vO!O;vO!SWO!WkO!XkO!_!eO!i;yO!lZO!o;vO!p;vO!q;vO!s;zO!u;}O!x!hO$W!kO$n=pO(S)ZO(UTO(XUO(`VO(n[O~O!]$_Oa$qa'y$qa'v$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)bO~P!&oOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%[O!S${O!_$|O!i%aO!l$xO#j%bO$W%_O$t%]O$v%^O$y%`O(S(tO(UTO(XUO(`$uO(x$}O(y%PO~Og(oP~P!+xO!Q)gO!g)fO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)fO!_(zX$Z(zX$](zX$_(zX$f(zX~O!Q)gO~P!.RO!Q)gO!_(zX$Z(zX$](zX$_(zX$f(zX~O!_)iO$Z)mO$])hO$_)hO$f)nO~O![)qO~P!)PO$]$hO$_$gO$f)uO~On$zX!Q$zX#S$zX'x$zX(x$zX(y$zX~OgmXg$zXnmX!]mX#`mX~P!/wOx)wO(a)xO(b)zO~On*TO!Q)|O'x)}O(x$}O(y%PO~Og){O~P!0{Og*UO~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<eO!S*WO!_*XO!i=vO!l$xO#j<kO$W%_O$t<gO$v<iO$y%`O(UTO(XUO(`$uO(x$}O(y%PO~O![*[O(S*VO!k(}P~P!1jO#k*^O~O!l*_O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<eO!S${O!_$|O!i=vO!l$xO#j<kO$W%_O$t<gO$v<iO$y%`O(S*aO(UTO(XUO(`$uO(x$}O(y%PO~O![*dO!Y)OP~P!3iOr*pOs!nO!S*fO!b*nO!c*hO!d*hO!l*_O#[*oO%`*jO(T!lO(UTO(XUO(d!mO~O!^*mO~P!5^O#S$dOn(_X!Q(_X'x(_X(x(_X(y(_X!](_X#`(_X~Og(_X$O(_X~P!6`On*uO#`*tOg(^X!](^X~O!]*vOg(]X~Oj%cOk%cOl%cO(S&XOg(]P~Os*yO~O!l+OO~O(S(tO~Op+TO!S%gO![#iO!_%hO!|]O#i#lO#j#iO(S%fO!k(rP~O!g#vO#k+UO~O!S%gO![+WO!]([O!_%hO(S%fO!Y(uP~Os'YO!S+YO![+XO(UTO(XUO(d(zO~O!^(wP~P!9iO!]+ZOa)SX'y)SX~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(`VO(q$YO(x#|O(y#}O~Oa!ja!]!ja'y!ja'v!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:aOR#zO!Q#yO!S#{O!l#xO(`VOP!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(q!ra(x!ra(y!ra~Oa!ra'y!ra'v!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!<wOR#zO!Q#yO!S#{O!l#xO(`VOP!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(q!ta(x!ta(y!ta~Oa!ta'y!ta'v!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?_Oh%VOn+dO!_'^O%i+cO~O!g+fOa([X!_([X'y([X!]([X~Oa%mO!_XO'y%mO~Oh%VO!l%dO~Oh%VO!l%dO(S%fO~O!g#vO#k(vO~Ob+qO%j+rO(S+nO(UTO(XUO!^)WP~O!]+sO`)VX~O[+wO~O`+xO~O!_&OO(S%fO(T!lO`)VP~Oh%VO#`+}O~Oh%VOn,QO!_$|O~O!_,SO~O!Q,UO!_XO~O%n%uO~O!x,ZO~Oe,`O~Ob,aO(S#nO(UTO(XUO!^)UP~Oe%|O~O%j!QO(S&XO~P=[O[,fO`,eO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(UTO(XUO(`VO(n[O~O!_!eO!u!gO$W!kO(S!dO~P!F_O`,eOa%mO'y%mO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(S!dO(UTO(XUO(`VO(n[O~Oa,kOl!OO!uwO%l!OO%m!OO%n!OO~P!HwO!l&mO~O&],qO~O!_,sO~O&n,uO&p,vOP&kaQ&kaS&kaY&kaa&kad&kae&kal&kap&kar&kas&kat&kaz&ka|&ka!O&ka!S&ka!W&ka!X&ka!_&ka!i&ka!l&ka!o&ka!p&ka!q&ka!s&ka!u&ka!x&ka!|&ka$W&ka$n&ka%h&ka%j&ka%l&ka%m&ka%n&ka%q&ka%s&ka%v&ka%w&ka%y&ka&V&ka&]&ka&_&ka&a&ka&c&ka&f&ka&l&ka&r&ka&t&ka&v&ka&x&ka&z&ka'v&ka(S&ka(U&ka(X&ka(`&ka(n&ka!^&ka&d&kab&ka&i&ka~O(S,{O~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P# }O!g-QO#`-POh(iX!]#hX!^#hX!g(iX!l(iX~O!](iX!^(iX~P#!pOh%VO!g-SO!l%dO!]!aX!^!aX~Os!nO!S!oO(UTO(XUO(d!mO~OP;vOQ;vOSfOd=rOe!iOpkOr;vOskOtkOzkO|;vO!O;vO!SWO!WkO!XkO!_!eO!i;yO!lZO!o;vO!p;vO!q;vO!s;zO!u;}O!x!hO$W!kO$n=pO(UTO(XUO(`VO(n[O~O(S<rO~P#$VO!]-WO!^(hX~O!^-YO~O!g-QO#`-PO!]#hX!^#hX~O!]-ZO!^(wX~O!^-]O~O!c-^O!d-^O(T!lO~P##tO!^-aO~P'_On-dO!_'^O~O!Y-iO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(T!{a(U!{a(X!{a(d!{a(n!{a~P!#kO!p-nO#`-lO~PC]O!c-pO!d-pO(T!lO~PC{Oa%mO#`-lO'y%mO~Oa%mO!g#vO#`-lO'y%mO~Oa%mO!g#vO!p-nO#`-lO'y%mO(q'nO~O(O'vO(P'vO(Q-uO~Ov-vO~O!Y'Va!]'Va~P!:aO![-zO!Y'VX!]'VX~P%[O!](TO!Y(ga~O!Y(ga~PGvO!]([O!Y(ua~O!S%gO![.OO!_%hO(S%fO!Y']X!]']X~O#`.QO!](sa!k(saa(sa'y(sa~O!g#vO~P#,]O!](hO!k(ra~O!S%gO!_%hO#j.UO(S%fO~Op.ZO!S%gO![.WO!_%hO!|]O#i.YO#j.WO(S%fO!]'`X!k'`X~OR._O!l#xO~Oh%VOn.bO!_'^O%i.aO~Oa#ci!]#ci'y#ci'v#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:aOn=|O!Q)|O'x)}O(x$}O(y%PO~O#k#_aa#_a#`#_a'y#_a!]#_a!k#_a!_#_a!Y#_a~P#/XO#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'y(_X(`(_X(q(_X!k(_X!Y(_X'v(_Xv(_X!_(_X%i(_X!g(_X~P!6`O!].oO!k(jX~P!:aO!k.rO~O!Y.tO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(`VO[#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'y#mi(q#mi(x#mi(y#mi'v#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#2wO#n$OO~P#2wOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(`VO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'y#mi(q#mi(x#mi(y#mi'v#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#5fO#r$QO~P#5fOP$[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(`VOa#mi!]#mi#x#mi#z#mi#{#mi'y#mi(q#mi(x#mi(y#mi'v#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8TOP$[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(`VO(y#}Oa#mi!]#mi#z#mi#{#mi'y#mi(q#mi(x#mi'v#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#:kO#x#mi~P#:kO#v$SO~P#8TOP$[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(`VO(x#|O(y#}Oa#mi!]#mi#{#mi'y#mi(q#mi'v#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#=aO#z$WO~P#=aOP]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(`]X(q]X(x]X(y]X!]]X!^]X~O$O]X~P#@OOP$[OR#zO[<_Oj<SOr<]O!Q#yO!S#{O!l#xO!p$[O#R<SO#n<PO#o<QO#p<QO#q<QO#r<RO#s<SO#t<SO#u<^O#v<TO#x<VO#z<XO#{<YO(`VO(q$YO(x#|O(y#}O~O$O.vO~P#B]O#S$dO#`<`O$Q<`O$O(fX!^(fX~P! jOa'ca!]'ca'y'ca'v'ca!k'ca!Y'cav'ca!_'ca%i'ca!g'ca~P!:aO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'y#mi(q#mi'v#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(`VO(x#mi(y#mi~P#E_On=|O!Q)|O'x)}O(x$}O(y%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(`#mi~P#E_O!].zOg(oX~P!0{Og.|O~Oa$Pi!]$Pi'y$Pi'v$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:aO$].}O$_.}O~O$]/OO$_/OO~O!g)fO#`/PO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/QO~O!_)iO$Z/SO$])hO$_)hO$f/TO~O!]<ZO!^(eX~P#B]O!^/UO~O!g)fO$f(zX~O$f/WO~Ov/XO~P!&oOx)wO(a)xO(b/[O~O!S/_O~O(x$}On%aa!Q%aa'x%aa(y%aa!]%aa#`%aa~Og%aa$O%aa~P#LaO(y%POn%ca!Q%ca'x%ca(x%ca!]%ca#`%ca~Og%ca$O%ca~P#MSO!]fX!gfX!kfX!k$zX(qfX~P!/wO![/hO!]([O(S/gO!Y(uP!Y)OP~P!1jOr*pO!b*nO!c*hO!d*hO!l*_O#[*oO%`*jO(T!lO(UTO(XUO~Os<oO!S/iO![+XO!^*mO(d<nO!^(wP~P#NmO!k/jO~P#/XO!]/kO!g#vO(q'nO!k(}X~O!k/pO~O!S%gO![*[O!_%hO(S%fO!k(}P~O#k/rO~O!Y$zX!]$zX!g%RX~P!/wO!]/sO!Y)OX~P#/XO!g/uO~O!Y/wO~OpkO(S/xO~P.iOh%VOr/}O!g#vO!l%dO(q'nO~O!g+fO~Oa%mO!]0RO'y%mO~O!^0TO~P!5^O!c0UO!d0UO(T!lO~P##tOs!nO!S0VO(UTO(XUO(d!mO~O#[0XO~Og%aa!]%aa#`%aa$O%aa~P!0{Og%ca!]%ca#`%ca$O%ca~P!0{Oj%cOk%cOl%cO(S&XOg'lX!]'lX~O!]*vOg(]a~Og0bO~OR0cO!Q0cO!S0dO#S$dOn}a'x}a(x}a(y}a!]}a#`}a~Og}a$O}a~P$&vO!Q)|O'x)}On$sa(x$sa(y$sa!]$sa#`$sa~Og$sa$O$sa~P$'rO!Q)|O'x)}On$ua(x$ua(y$ua!]$ua#`$ua~Og$ua$O$ua~P$(eO#k0gO~Og%Ta!]%Ta#`%Ta$O%Ta~P!0{On0iO#`0hOg(^a!](^a~O!g#vO~O#k0lO~O!]+ZOa)Sa'y)Sa~OR#zO!Q#yO!S#{O!l#xO(`VOP!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(q!ri(x!ri(y!ri~Oa!ri'y!ri'v!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$*bOh%VOr%XOs$tOt$tOz%YO|%ZO!O<eO!S${O!_$|O!i=vO!l$xO#j<kO$W%_O$t<gO$v<iO$y%`O(UTO(XUO(`$uO(x$}O(y%PO~Op0uO%]0vO(S0tO~P$,xO!g+fOa([a!_([a'y([a!]([a~O#k0|O~O[]X!]fX!^fX~O!]0}O!^)WX~O!^1PO~O[1QO~Ob1SO(S+nO(UTO(XUO~O!_&OO(S%fO`'tX!]'tX~O!]+sO`)Va~O!k1VO~P!:aO[1YO~O`1ZO~O#`1^O~On1aO!_$|O~O(d(zO!^)TP~Oh%VOn1jO!_1gO%i1iO~O[1tO!]1rO!^)UX~O!^1uO~O`1wOa%mO'y%mO~O(S#nO(UTO(XUO~O#S$dO#`$eO$Q$eOP(fXR(fX[(fXr(fX!Q(fX!S(fX!](fX!l(fX!p(fX#R(fX#n(fX#o(fX#p(fX#q(fX#r(fX#s(fX#t(fX#u(fX#v(fX#x(fX#z(fX#{(fX(`(fX(q(fX(x(fX(y(fX~Oj1zO&Z1{Oa(fX~P$2cOj1zO#`$eO&Z1{O~Oa1}O~P%[Oa2PO~O&d2SOP&biQ&biS&biY&bia&bid&bie&bil&bip&bir&bis&bit&biz&bi|&bi!O&bi!S&bi!W&bi!X&bi!_&bi!i&bi!l&bi!o&bi!p&bi!q&bi!s&bi!u&bi!x&bi!|&bi$W&bi$n&bi%h&bi%j&bi%l&bi%m&bi%n&bi%q&bi%s&bi%v&bi%w&bi%y&bi&V&bi&]&bi&_&bi&a&bi&c&bi&f&bi&l&bi&r&bi&t&bi&v&bi&x&bi&z&bi'v&bi(S&bi(U&bi(X&bi(`&bi(n&bi!^&bib&bi&i&bi~Ob2YO!^2WO&i2XO~P`O!_XO!l2[O~O&p,vOP&kiQ&kiS&kiY&kia&kid&kie&kil&kip&kir&kis&kit&kiz&ki|&ki!O&ki!S&ki!W&ki!X&ki!_&ki!i&ki!l&ki!o&ki!p&ki!q&ki!s&ki!u&ki!x&ki!|&ki$W&ki$n&ki%h&ki%j&ki%l&ki%m&ki%n&ki%q&ki%s&ki%v&ki%w&ki%y&ki&V&ki&]&ki&_&ki&a&ki&c&ki&f&ki&l&ki&r&ki&t&ki&v&ki&x&ki&z&ki'v&ki(S&ki(U&ki(X&ki(`&ki(n&ki!^&ki&d&kib&ki&i&ki~O!Y2bO~O!]!aa!^!aa~P#B]Os!nO!S!oO![2hO(d!mO!]'WX!^'WX~P@cO!]-WO!^(ha~O!]'^X!^'^X~P!9iO!]-ZO!^(wa~O!^2oO~P'_Oa%mO#`2xO'y%mO~Oa%mO!g#vO#`2xO'y%mO~Oa%mO!g#vO!p2|O#`2xO'y%mO(q'nO~Oa%mO'y%mO~P!:aO!]$_Ov$qa~O!Y'Vi!]'Vi~P!:aO!](TO!Y(gi~O!]([O!Y(ui~O!Y(vi!](vi~P!:aO!](si!k(sia(si'y(si~P!:aO#`3OO!](si!k(sia(si'y(si~O!](hO!k(ri~O!S%gO!_%hO!|]O#i3TO#j3SO(S%fO~O!S%gO!_%hO#j3SO(S%fO~On3[O!_'^O%i3ZO~Oh%VOn3[O!_'^O%i3ZO~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'y%aa(`%aa(q%aa!k%aa!Y%aa'v%aav%aa!_%aa%i%aa!g%aa~P#LaO#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'y%ca(`%ca(q%ca!k%ca!Y%ca'v%cav%ca!_%ca%i%ca!g%ca~P#MSO#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'y%aa(`%aa(q%aa!k%aa!Y%aa'v%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/XO#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'y%ca(`%ca(q%ca!k%ca!Y%ca'v%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/XO#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'y}a(`}a(q}a!k}a!Y}a'v}av}a!_}a%i}a!g}a~P$&vO#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'y$sa(`$sa(q$sa!k$sa!Y$sa'v$sav$sa!_$sa%i$sa!g$sa~P$'rO#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'y$ua(`$ua(q$ua!k$ua!Y$ua'v$uav$ua!_$ua%i$ua!g$ua~P$(eO#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'y%Ta(`%Ta(q%Ta!k%Ta!Y%Ta'v%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/XOa#cq!]#cq'y#cq'v#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:aO![3dO!]'XX!k'XX~P%[O!].oO!k(ja~O!].oO!k(ja~P!:aO!Y3gO~O$O!na!^!na~PKaO$O!ja!]!ja!^!ja~P#B]O$O!ra!^!ra~P!<wO$O!ta!^!ta~P!?_Og'[X!]'[X~P!+xO!].zOg(oa~OSfO!_3{O$d3|O~O!^4QO~Ov4RO~P#/XOa$mq!]$mq'y$mq'v$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:aO!Y4TO~P!&oO!S4UO~O!Q)|O'x)}O(y%POn'ha(x'ha!]'ha#`'ha~Og'ha$O'ha~P%,XO!Q)|O'x)}On'ja(x'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P%,zO(q$YO~P#/XO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!/wO(S<xO~P!1jO!S%gO![4XO!_%hO(S%fO!]'dX!k'dX~O!]/kO!k(}a~O!]/kO!g#vO!k(}a~O!]/kO!g#vO(q'nO!k(}a~Og$|i!]$|i#`$|i$O$|i~P!0{O![4aO!Y'fX!]'fX~P!3iO!]/sO!Y)Oa~O!]/sO!Y)Oa~P#/XOP]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(`]X(q]X(x]X(y]X~Oj%YX!g%YX~P%0kOj4fO!g#vO~Oh%VO!g#vO!l%dO~Oh%VOr4kO!l%dO(q'nO~Or4pO!g#vO(q'nO~Os!nO!S4qO(UTO(XUO(d!mO~O(x$}On%ai!Q%ai'x%ai(y%ai!]%ai#`%ai~Og%ai$O%ai~P%4[O(y%POn%ci!Q%ci'x%ci(x%ci!]%ci#`%ci~Og%ci$O%ci~P%4}Og(^i!](^i~P!0{O#`4wOg(^i!](^i~P!0{O!k4zO~Oa$oq!]$oq'y$oq'v$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:aO!Y5QO~O!]5RO!_)PX~P#/XOa$zX!_$zX%^]X'y$zX!]$zX~P!/wO%^5UOaoXnoX!QoX!_oX'xoX'yoX(xoX(yoX!]oX~Op5VO(S#nO~O%^5UO~Ob5]O%j5^O(S+nO(UTO(XUO!]'sX!^'sX~O!]0}O!^)Wa~O[5bO~O`5cO~Oa%mO'y%mO~P#/XO!]5kO#`5mO!^)TX~O!^5nO~Or5tOs!nO!S*fO!b!yO!c!vO!d!vO!|;wO#T!pO#U!pO#V!pO#W!pO#X!pO#[5sO#]!zO(T!lO(UTO(XUO(d!mO(n!sO~O!^5rO~P%:YOn5yO!_1gO%i5xO~Oh%VOn5yO!_1gO%i5xO~Ob6QO(S#nO(UTO(XUO!]'rX!^'rX~O!]1rO!^)Ua~O(UTO(XUO(d6SO~O`6WO~Oj6ZO&Z6[O~PM|O!k6]O~P%[Oa6_O~Oa6_O~P%[Ob2YO!^6dO&i2XO~P`O!g6fO~O!g6hOh(ii!](ii!^(ii!g(ii!l(iir(ii(q(ii~O!]#hi!^#hi~P#B]O#`6iO!]#hi!^#hi~O!]!ai!^!ai~P#B]Oa%mO#`6rO'y%mO~Oa%mO!g#vO#`6rO'y%mO~O!](sq!k(sqa(sq'y(sq~P!:aO!](hO!k(rq~O!S%gO!_%hO#j6yO(S%fO~O!_'^O%i6|O~On7QO!_'^O%i6|O~O#k'haP'haR'ha['haa'haj'har'ha!S'ha!l'ha!p'ha#R'ha#n'ha#o'ha#p'ha#q'ha#r'ha#s'ha#t'ha#u'ha#v'ha#x'ha#z'ha#{'ha'y'ha(`'ha(q'ha!k'ha!Y'ha'v'hav'ha!_'ha%i'ha!g'ha~P%,XO#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'y'ja(`'ja(q'ja!k'ja!Y'ja'v'jav'ja!_'ja%i'ja!g'ja~P%,zO#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'y$|i(`$|i(q$|i!k$|i!Y$|i'v$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/XO#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'y%ai(`%ai(q%ai!k%ai!Y%ai'v%aiv%ai!_%ai%i%ai!g%ai~P%4[O#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'y%ci(`%ci(q%ci!k%ci!Y%ci'v%civ%ci!_%ci%i%ci!g%ci~P%4}O!]'Xa!k'Xa~P!:aO!].oO!k(ji~O$O#ci!]#ci!^#ci~P#B]OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(`VO[#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(q#mi(x#mi(y#mi!]#mi!^#mi~O#n#mi~P%MXO#n<PO~P%MXOP$[OR#zOr<]O!Q#yO!S#{O!l#xO!p$[O#n<PO#o<QO#p<QO#q<QO(`VO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(q#mi(x#mi(y#mi!]#mi!^#mi~O#r#mi~P& aO#r<RO~P& aOP$[OR#zO[<_Oj<SOr<]O!Q#yO!S#{O!l#xO!p$[O#R<SO#n<PO#o<QO#p<QO#q<QO#r<RO#s<SO#t<SO#u<^O(`VO#x#mi#z#mi#{#mi$O#mi(q#mi(x#mi(y#mi!]#mi!^#mi~O#v#mi~P&#iOP$[OR#zO[<_Oj<SOr<]O!Q#yO!S#{O!l#xO!p$[O#R<SO#n<PO#o<QO#p<QO#q<QO#r<RO#s<SO#t<SO#u<^O#v<TO(`VO(y#}O#z#mi#{#mi$O#mi(q#mi(x#mi!]#mi!^#mi~O#x<VO~P&%jO#x#mi~P&%jO#v<TO~P&#iOP$[OR#zO[<_Oj<SOr<]O!Q#yO!S#{O!l#xO!p$[O#R<SO#n<PO#o<QO#p<QO#q<QO#r<RO#s<SO#t<SO#u<^O#v<TO#x<VO(`VO(x#|O(y#}O#{#mi$O#mi(q#mi!]#mi!^#mi~O#z#mi~P&'yO#z<XO~P&'yOa#|y!]#|y'y#|y'v#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:aO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(q#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<PO#o<QO#p<QO#q<QO(`VO(x#mi(y#mi~P&*uOn=}O!Q)|O'x)}O(x$}O(y%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(`#mi~P&*uO#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'x(_X(`(_X(q(_X(x(_X(y(_X!](_X!^(_X~O$O$Pi!]$Pi!^$Pi~P#B]O$O!ri!^!ri~P$*bOg'[a!]'[a~P!0{O!^7dO~O!]'ca!^'ca~P#B]O!Y7eO~P#/XO!g#vO(q'nO!]'da!k'da~O!]/kO!k(}i~O!]/kO!g#vO!k(}i~Og$|q!]$|q#`$|q$O$|q~P!0{O!Y'fa!]'fa~P#/XO!g7lO~O!]/sO!Y)Oi~P#/XO!]/sO!Y)Oi~O!Y7oO~Oh%VOr7tO!l%dO(q'nO~Oj7vO!g#vO~Or7yO!g#vO(q'nO~O!Q)|O'x)}O(y%POn'ia(x'ia!]'ia#`'ia~Og'ia$O'ia~P&3vO!Q)|O'x)}On'ka(x'ka(y'ka!]'ka#`'ka~Og'ka$O'ka~P&4iO!Y7{O~Og%Oq!]%Oq#`%Oq$O%Oq~P!0{Og(^q!](^q~P!0{O#`7|Og(^q!](^q~P!0{Oa$oy!]$oy'y$oy'v$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:aO!g6hO~O!]5RO!_)Pa~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(`$Ta(q$Ta(x$Ta(y$Ta~O%i6|O~P&7ZO%^8QOa%[i!_%[i'y%[i!]%[i~Oa#cy!]#cy'y#cy'v#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:aO[8SO~Ob8UO(S+nO(UTO(XUO~O!]0}O!^)Wi~O`8YO~O(d(zO!]'oX!^'oX~O!]5kO!^)Ta~O!^8cO~P%:YO(n!sO~P$${O#[8dO~O!_1gO~O!_1gO%i8fO~On8iO!_1gO%i8fO~O[8nO!]'ra!^'ra~O!]1rO!^)Ui~O!k8rO~O!k8sO~O!k8vO~O!k8vO~P%[Oa8xO~O!g8yO~O!k8zO~O!](vi!^(vi~P#B]Oa%mO#`9SO'y%mO~O!](sy!k(sya(sy'y(sy~P!:aO!](hO!k(ry~O%i9VO~P&7ZO!_'^O%i9VO~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'y$|q(`$|q(q$|q!k$|q!Y$|q'v$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/XO#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'y'ia(`'ia(q'ia!k'ia!Y'ia'v'iav'ia!_'ia%i'ia!g'ia~P&3vO#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'y'ka(`'ka(q'ka!k'ka!Y'ka'v'kav'ka!_'ka%i'ka!g'ka~P&4iO#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'y%Oq(`%Oq(q%Oq!k%Oq!Y%Oq'v%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/XO!]'Xi!k'Xi~P!:aO$O#cq!]#cq!^#cq~P#B]O(x$}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(`%aa(q%aa!]%aa!^%aa~On%aa!Q%aa'x%aa(y%aa~P&HnO(y%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(`%ca(q%ca!]%ca!^%ca~On%ca!Q%ca'x%ca(x%ca~P&JuOn=}O!Q)|O'x)}O(y%PO~P&HnOn=}O!Q)|O'x)}O(x$}O~P&JuOR0cO!Q0cO!S0dO#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'x}a(`}a(q}a(x}a(y}a!]}a!^}a~O!Q)|O'x)}OP$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(`$sa(q$sa(x$sa(y$sa!]$sa!^$sa~O!Q)|O'x)}OP$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(`$ua(q$ua(x$ua(y$ua!]$ua!^$ua~On=}O!Q)|O'x)}O(x$}O(y%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(`%Ta(q%Ta!]%Ta!^%Ta~P'%zO$O$mq!]$mq!^$mq~P#B]O$O$oq!]$oq!^$oq~P#B]O!^9dO~O$O9eO~P!0{O!g#vO!]'di!k'di~O!g#vO(q'nO!]'di!k'di~O!]/kO!k(}q~O!Y'fi!]'fi~P#/XO!]/sO!Y)Oq~Or9lO!g#vO(q'nO~O[9nO!Y9mO~P#/XO!Y9mO~Oj9tO!g#vO~Og(^y!](^y~P!0{O!]'ma!_'ma~P#/XOa%[q!_%[q'y%[q!]%[q~P#/XO[9yO~O!]0}O!^)Wq~O#`9}O!]'oa!^'oa~O!]5kO!^)Ti~P#B]O!S:PO~O!_1gO%i:SO~O(UTO(XUO(d:XO~O!]1rO!^)Uq~O!k:[O~O!k:]O~O!k:^O~O!k:^O~P%[O#`:aO!]#hy!^#hy~O!]#hy!^#hy~P#B]O%i:fO~P&7ZO!_'^O%i:fO~O$O#|y!]#|y!^#|y~P#B]OP$|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(`$|i(q$|i!]$|i!^$|i~P'%zO!Q)|O'x)}O(y%POP'haR'ha['haj'han'har'ha!S'ha!l'ha!p'ha#R'ha#n'ha#o'ha#p'ha#q'ha#r'ha#s'ha#t'ha#u'ha#v'ha#x'ha#z'ha#{'ha$O'ha(`'ha(q'ha(x'ha!]'ha!^'ha~O!Q)|O'x)}OP'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(`'ja(q'ja(x'ja(y'ja!]'ja!^'ja~O(x$}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'x%ai(`%ai(q%ai(y%ai!]%ai!^%ai~O(y%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'x%ci(`%ci(q%ci(x%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#B]O$O#cy!]#cy!^#cy~P#B]O!g#vO!]'dq!k'dq~O!]/kO!k(}y~O!Y'fq!]'fq~P#/XOr:pO!g#vO(q'nO~O[:tO!Y:sO~P#/XO!Y:sO~Og(^!R!](^!R~P!0{Oa%[y!_%[y'y%[y!]%[y~P#/XO!]0}O!^)Wy~O!]5kO!^)Tq~O(S:zO~O!_1gO%i:}O~O!k;QO~O%i;VO~P&7ZOP$|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(`$|q(q$|q!]$|q!^$|q~P'%zO!Q)|O'x)}O(y%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(`'ia(q'ia(x'ia!]'ia!^'ia~O!Q)|O'x)}OP'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(`'ka(q'ka(x'ka(y'ka!]'ka!^'ka~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(`%Oq(q%Oq!]%Oq!^%Oq~P'%zOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!0{O!Y;ZO~P#/XOr;[O!g#vO(q'nO~O[;^O!Y;ZO~P#/XO!]'oq!^'oq~P#B]O!]#h!Z!^#h!Z~P#B]O#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'y%e!Z(`%e!Z(q%e!Z!k%e!Z!Y%e!Z'v%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/XOr;fO!g#vO(q'nO~O!Y;gO~P#/XOr;nO!g#vO(q'nO~O!Y;oO~P#/XOP%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(`%e!Z(q%e!Z!]%e!Z!^%e!Z~P'%zOr;rO!g#vO(q'nO~Ov(eX~P1qO!Q%qO~P!)PO(T!lO~P!)PO!YfX!]fX#`fX~P%0kOP]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(`]X(q]X(x]X(y]X~O!gfX!k]X!kfX(qfX~P'JsOP;vOQ;vOSfOd=rOe!iOpkOr;vOskOtkOzkO|;vO!O;vO!SWO!WkO!XkO!_XO!i;yO!lZO!o;vO!p;vO!q;vO!s;zO!u;}O!x!hO$W!kO$n=pO(S)ZO(UTO(XUO(`VO(n[O~O!]<ZO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<fO!S${O!_$|O!i=wO!l$xO#j<lO$W%_O$t<hO$v<jO$y%`O(S(tO(UTO(XUO(`$uO(x$}O(y%PO~Ol)bO~P( iOr!eX(q!eX~P# }Or(iX(q(iX~P#!pO!^]X!^fX~P'JsO!YfX!Y$zX!]fX!]$zX#`fX~P!/wO#k<OO~O!g#vO#k<OO~O#`<`O~Oj<SO~O#`<pO!](vX!^(vX~O#`<`O!](tX!^(tX~O#k<qO~Og<sO~P!0{O#k<yO~O#k<zO~O!g#vO#k<{O~O!g#vO#k<qO~O$O<|O~P#B]O#k<}O~O#k=OO~O#k=TO~O#k=UO~O#k=VO~O#k=WO~O$O=XO~P!0{O$O=YO~P!0{Ok#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~'}T#o!X'{(T#ps#n#qr!Q'|$]'|(S$_(d~",goto:"$8g)[PPPPPP)]PP)`P)qP+R/WPPPP6bPP6xPP<pPPP@dP@zP@zPPP@zPCSP@zP@zP@zPCWPC]PCzPHtPPPHxPPPPHxK{PPPLRLsPHxPHxPP! RHxPPPHxPHxP!#YHxP!&p!'u!(OP!(r!(v!(r!,TPPPPPPP!,t!'uPP!-U!.vP!2SHxHx!2X!5e!:R!:R!>QPPP!>YHxPPPPPPPPP!AiP!BvPPHx!DXPHxPHxHxHxHxHxPHx!EkP!HuP!K{P!LP!LZ!L_!L_P!HrP!Lc!LcP# iP# mHxPHx# s#$xCW@zP@zP@z@zP#&V@z@z#(i@z#+a@z#-m@z@z#.]#0q#0q#0v#1P#0q#1[PP#0qP@z#1t@z#5s@z@z6bPPP#9xPPP#:c#:cP#:cP#:y#:cPP#;PP#:vP#:v#;d#:v#<O#<U#<X)`#<[)`P#<c#<c#<cP)`P)`P)`P)`PP)`P#<i#<lP#<l)`P#<pP#<sP)`P)`P)`P)`P)`P)`)`PP#<y#=P#=[#=b#=h#=n#=t#>S#>Y#>d#>j#>t#>z#?[#?b#@S#@f#@l#@r#AQ#Ag#C[#Cj#Cq#E]#Ek#G]#Gk#Gq#Gw#G}#HX#H_#He#Ho#IR#IXPPPPPPPPPPP#I_PPPPPPP#JS#MZ#Ns#Nz$ SPPP$&nP$&w$)p$0Z$0^$0a$1`$1c$1j$1rP$1x$1{P$2i$2m$3e$4s$4x$5`PP$5e$5k$5o$5r$5v$5z$6v$7_$7v$7z$7}$8Q$8W$8Z$8_$8cR!|RoqOXst!Z#d%l&p&r&s&u,n,s2S2VY!vQ'^-`1g5qQ%svQ%{yQ&S|Q&h!VS'U!e-WQ'd!iS'j!r!yU*h$|*X*lQ+l%|Q+y&UQ,_&bQ-^']Q-h'eQ-p'kQ0U*nQ1q,`R<m;z%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y,k,n,s-d-l-z.Q.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3d4q5y6Z6[6_6r8i8x9SS#q];w!r)]$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sU*{%[<e<fQ+q&OQ,a&eQ,h&mQ0r+dQ0w+fQ1S+rQ1y,fQ3W.bQ5V0vQ5]0}Q6Q1rQ7O3[Q8U5^R9Y7Q'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%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=s!S!nQ!r!v!y!z$|'U']'^'j'k'l*h*l*n*o-W-^-`-p0U0X1g5q5s%[$ti#v$b$c$d$x${%O%Q%]%^%b)w*P*R*T*W*^*d*t*u+c+f+},Q.a.z/_/h/r/s/u0Y0[0g0h0i1^1a1i3Z4U4V4a4f4w5R5U5x6|7l7v7|8Q8f9V9e9n9t:S:f:t:};V;^<^<_<a<b<c<d<g<h<i<j<k<l<t<u<v<w<y<z<}=O=P=Q=R=S=T=U=X=Y=p=x=y=|=}Q&V|Q'S!eS'Y%h-ZQ+q&OQ,a&eQ0f+OQ1S+rQ1X+xQ1x,eQ1y,fQ5]0}Q5f1ZQ6Q1rQ6T1tQ6U1wQ8U5^Q8X5cQ8q6WQ9|8YQ:Y8nR<o*XrnOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VR,c&i&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%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=r=s[#]WZ#W#Z'V(R!b%im#h#i#l$x%d%g([(f(g(h*W*[*_+W+X+Z,j-Q.O.U.V.W.Y/h/k2[3S3T4X6h6yQ%vxQ%zyS&P|&UQ&]!TQ'a!hQ'c!iQ(o#sS+k%{%|Q+o&OQ,Y&`Q,^&bS-g'd'eQ.d(pQ0{+lQ1R+rQ1T+sQ1W+wQ1l,ZS1p,_,`Q2t-hQ5[0}Q5`1QQ5e1YQ6P1qQ8T5^Q8W5bQ9x8SR:w9y!U$zi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y!^%xy!i!u%z%{%|'T'c'd'e'i's*g+k+l-T-g-h-o/{0O0{2m2t2{4i4j4m7s9pQ+e%vQ,O&YQ,R&ZQ,]&bQ.c(oQ1k,YU1o,^,_,`Q3].dQ5z1lS6O1p1qQ8m6P#f=t#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}o=u<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=YW%Ti%V*v=pS&Y!Q&gQ&Z!RQ&[!SQ+S%cR+|&W%]%Si#v$b$c$d$x${%O%Q%]%^%b)w*P*R*T*W*^*d*t*u+c+f+},Q.a.z/_/h/r/s/u0Y0[0g0h0i1^1a1i3Z4U4V4a4f4w5R5U5x6|7l7v7|8Q8f9V9e9n9t:S:f:t:};V;^<^<_<a<b<c<d<g<h<i<j<k<l<t<u<v<w<y<z<}=O=P=Q=R=S=T=U=X=Y=p=x=y=|=}T)x$u)yV*{%[<e<fW'Y!e%h*X-ZS({#y#zQ+`%qQ+v&RS.](k(lQ1b,SQ4x0cR8^5k'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%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=s$i$^c#Y#e%p%r%t(Q(W(r(w)P)Q)R)S)T)U)V)W)X)Y)[)^)`)e)o+a+u-U-s-x-}.P.n.q.u.w.x.y/]0j2c2f2v2}3c3h3i3j3k3l3m3n3o3p3q3r3s3t3w3x4P5O5Y6k6q6v7V7W7a7b8`8|9Q9[9b9c:c:y;R;x=gT#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%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sQ'W!eR2i-W!W!nQ!e!r!v!y!z$|'U']'^'j'k'l*X*h*l*n*o-W-^-`-p0U0X1g5q5sR1d,UnqOXst!Z#d%l&p&r&s&u,n,s2S2VQ&w!^Q't!xS(q#u<OQ+i%yQ,W&]Q,X&_Q-e'bQ-r'mS.m(v<qS0k+U<{Q0y+jQ1f,VQ2Z,uQ2],vQ2e-RQ2r-fQ2u-jS5P0l=VQ5W0zS5Z0|=WQ6j2gQ6n2sQ6s2zQ8R5XQ8}6lQ9O6oQ9R6tR:`8z$d$]c#Y#e%r%t(Q(W(r(w)P)Q)R)S)T)U)V)W)X)Y)[)^)`)e)o+a+u-U-s-x-}.P.n.q.u.x.y/]0j2c2f2v2}3c3h3i3j3k3l3m3n3o3p3q3r3s3t3w3x4P5O5Y6k6q6v7V7W7a7b8`8|9Q9[9b9c:c:y;R;x=gS(m#p'gQ(}#zS+_%p.wS.^(l(nR3U._'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%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sS#q];wQ&r!XQ&s!YQ&u![Q&v!]R2R,qQ'_!hQ+b%vQ-c'aS.`(o+eQ2p-bW3Y.c.d0q0sQ6m2qW6z3V3X3]5TU9U6{6}7PU:e9W9X9ZS;T:d:gQ;b;UR;j;cU!wQ'^-`T5o1g5q!Q_OXZ`st!V!Z#d#h%d%l&g&i&p&r&s&u(h,n,s.V2S2V]!pQ!r'^-`1g5qT#q];w%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SS({#y#zS.](k(l!s=^$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sU$fd)],hS(n#p'gU*s%R(u3vU0e*z.i7]Q5T0rQ6{3WQ9X7OR:g9Ym!tQ!r!v!y!z'^'j'k'l-`-p1g5q5sQ'r!uS(d#g1|S-n'i'uQ/n*ZQ/{*gQ2|-qQ4]/oQ4i/}Q4j0OQ4o0WQ7h4WS7s4k4mS7w4p4rQ9g7iQ9k7oQ9p7tQ9u7yS:o9l9mS;Y:p:sS;e;Z;[S;m;f;gS;q;n;oR;t;rQ#wbQ'q!uS(c#g1|S(e#m+TQ+V%eQ+g%wQ+m%}U-m'i'r'uQ.R(dQ/m*ZQ/|*gQ0P*iQ0x+hQ1m,[S2y-n-qQ3R.ZS4[/n/oQ4e/yS4h/{0WQ4l0QQ5|1nQ6u2|Q7g4WQ7k4]U7r4i4o4rQ7u4nQ8k5}S9f7h7iQ9j7oQ9r7wQ9s7xQ:V8lQ:m9gS:n9k9mQ:v9uQ;P:WS;X:o:sS;d;Y;ZS;l;e;gS;p;m;oQ;s;qQ;u;tQ=a=[Q=l=eR=m=fV!wQ'^-`%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SS#wz!j!r=Z$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sR=a=r%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SQ%ej!^%wy!i!u%z%{%|'T'c'd'e'i's*g+k+l-T-g-h-o/{0O0{2m2t2{4i4j4m7s9pS%}z!jQ+h%xQ,[&bW1n,],^,_,`U5}1o1p1qS8l6O6PQ:W8m!r=[$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sQ=e=qR=f=r%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&p&r&s&u&y'R'`'p(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9SY#bWZ#W#Z(R!b%im#h#i#l$x%d%g([(f(g(h*W*[*_+W+X+Z,j-Q.O.U.V.W.Y/h/k2[3S3T4X6h6yQ,i&m!p=]$Z$n)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sR=`'VU'Z!e%h*XR2k-Z%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y,k,n,s-d-l-z.Q.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3d4q5y6Z6[6_6r8i8x9S!r)]$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sQ,h&mQ0r+dQ3W.bQ7O3[R9Y7Q!b$Tc#Y%p(Q(W(r(w)X)Y)^)e+u-s-x-}.P.n.q/]0j2v2}3c3s5O5Y6q6v7V9Q:c;x!P<U)[)o-U.w2c2f3h3q3r3w4P6k7W7a7b8`8|9[9b9c:y;R=g!f$Vc#Y%p(Q(W(r(w)U)V)X)Y)^)e+u-s-x-}.P.n.q/]0j2v2}3c3s5O5Y6q6v7V9Q:c;x!T<W)[)o-U.w2c2f3h3n3o3q3r3w4P6k7W7a7b8`8|9[9b9c:y;R=g!^$Zc#Y%p(Q(W(r(w)^)e+u-s-x-}.P.n.q/]0j2v2}3c3s5O5Y6q6v7V9Q:c;xQ4V/fz=s)[)o-U.w2c2f3h3w4P6k7W7a7b8`8|9[9b9c:y;R=gQ=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%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sS$oh$pR3|/P'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%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/P/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sT$kf$qQ$ifS)h$l)lR)t$qT$jf$qT)j$l)l'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%l%s&Q&i&l&m&p&r&s&u&y'R'V'`'p(R(T(Z(b(v(x(|)q){*f+U+Y+d,k,n,s-P-S-d-l-z.Q.b.o.v/P/Q/i0V0d0l0|1j1z1{1}2P2S2V2X2h2x3O3[3d3{4q5m5y6Z6[6_6i6r7Q8i8x9S9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=sT$oh$pQ$rhR)s$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%l%s&Q&i&l&m&p&r&s&u&y'R'`'p(R(T(Z(b(v(x(|){*f+U+Y+d,k,n,s-d-l-z.Q.b.o.v/i0V0d0l0|1j1z1{1}2P2S2V2X2x3O3[3d4q5y6Z6[6_6r7Q8i8x9S!s=q$Z$n'V)q-P-S/Q2h3{5m6i9}:a;v;y;z;}<O<P<Q<R<S<T<U<V<W<X<Y<Z<]<`<m<p<q<s<{<|=V=W=s#glOPXZst!Z!`!o#S#d#o#{$n%l&i&l&m&p&r&s&u&y'R'`(|)q*f+Y+d,k,n,s-d.b/Q/i0V0d1j1z1{1}2P2S2V2X3[3{4q5y6Z6[6_7Q8i8x!U%Ri$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y#f(u#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}Q+P%`Q/^)|o3v<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=Y!U$yi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=yQ*`$zU*i$|*X*lQ+Q%aQ0Q*j#f=c#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}n=d<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=YQ=h=tQ=i=uQ=j=vR=k=w!U%Ri$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y#f(u#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}o3v<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=YnoOXst!Z#d%l&p&r&s&u,n,s2S2VS*c${*WQ,|&|Q,}'OR4`/s%[%Si#v$b$c$d$x${%O%Q%]%^%b)w*P*R*T*W*^*d*t*u+c+f+},Q.a.z/_/h/r/s/u0Y0[0g0h0i1^1a1i3Z4U4V4a4f4w5R5U5x6|7l7v7|8Q8f9V9e9n9t:S:f:t:};V;^<^<_<a<b<c<d<g<h<i<j<k<l<t<u<v<w<y<z<}=O=P=Q=R=S=T=U=X=Y=p=x=y=|=}Q,P&ZQ1`,RQ5i1_R8]5jV*k$|*X*lU*k$|*X*lT5p1g5qS/y*f/iQ4n0VT7x4q:PQ+g%wQ0P*iQ0x+hQ1m,[Q5|1nQ8k5}Q:V8lR;P:W!U%Oi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=yx*P$v)c*Q*r+R/q0^0_3y4^4{4|4}7f7z9v:l=b=n=oS0Y*q0Z#f<a#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}n<b<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=Y!d<t(s)a*Y*b.e.h.l/Y/f/v0p1]3`4S4_4c5h7R7U7m7p7}8P9i9q9w:q:u;W;];h=z={`<u3u7X7[7`9]:h:k;kS=P.g3aT=Q7Z9`!U%Qi$d%O%Q%]%^%b*P*R*^*t*u.z/r0Y0[0g0h0i4V4w7|9e=p=x=y|*R$v)c*S*q+R/b/q0^0_3y4^4s4{4|4}7f7z9v:l=b=n=oS0[*r0]#f<c#v$b$c$x${)w*T*W*d+c+f+},Q.a/_/h/s/u1^1a1i3Z4U4a4f5R5U5x6|7l7v8Q8f9V9n9t:S:f:t:};V;^<a<c<g<i<k<t<v<y<}=P=R=T=X=|=}n<d<^<_<b<d<h<j<l<u<w<z=O=Q=S=U=Y!h<v(s)a*Y*b.f.g.l/Y/f/v0p1]3^3`4S4_4c5h7R7S7U7m7p7}8P9i9q9w:q:u;W;];h=z={d<w3u7Y7Z7`9]9^:h:i:k;kS=R.h3bT=S7[9arnOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VQ&d!UR,k&mrnOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VR&d!UQ,T&[R1[+|snOXst!V!Z#d%l&g&p&r&s&u,n,s2S2VQ1h,YS5w1k1lU8e5u5v5zS:R8g8hS:{:Q:TQ;_:|R;i;`Q&k!VR,d&gR6T1tR:Y8nS&P|&UR1T+sQ&p!WR,n&qR,t&vT2T,s2VR,x&wQ,w&wR2^,xQ'w!{R-t'wSsOtQ#dXT%os#dQ#OTR'y#OQ#RUR'{#RQ)y$uR/Z)yQ#UVR(O#UQ#XWU(U#X(V-{Q(V#YR-{(WQ-X'WR2j-XQ.p(wS3e.p3fR3f.qQ-`'^R2n-`Y!rQ'^-`1g5qR'h!rQ.{)cR3z.{U#_W%g*WU(]#_(^-|Q(^#`R-|(XQ-['ZR2l-[t`OXst!V!Z#d%l&g&i&p&r&s&u,n,s2S2VS#hZ%dU#r`#h.VR.V(hQ(i#jQ.S(eW.[(i.S3P6wQ3P.TR6w3QQ)l$lR/R)lQ$phR)r$pQ$`cU)_$`-w<[Q-w;xR<[)oQ/l*ZW4Y/l4Z7j9hU4Z/m/n/oS7j4[4]R9h7k$e*O$v(s)a)c*Y*b*q*r*|*}+R.g.h.j.k.l/Y/b/d/f/q/v0^0_0p1]3^3_3`3u3y4S4^4_4c4s4u4{4|4}5h7R7S7T7U7Z7[7^7_7`7f7m7p7z7}8P9]9^9_9i9q9v9w:h:i:j:k:l:q:u;W;];h;k=b=n=o=z={Q/t*bU4b/t4d7nQ4d/vR7n4cS*l$|*XR0S*lx*Q$v)c*q*r+R/q0^0_3y4^4{4|4}7f7z9v:l=b=n=o!d.e(s)a*Y*b.g.h.l/Y/f/v0p1]3`4S4_4c5h7R7U7m7p7}8P9i9q9w:q:u;W;];h=z={U/c*Q.e7Xa7X3u7Z7[7`9]:h:k;kQ0Z*qQ3a.gU4t0Z3a9`R9`7Z|*S$v)c*q*r+R/b/q0^0_3y4^4s4{4|4}7f7z9v:l=b=n=o!h.f(s)a*Y*b.g.h.l/Y/f/v0p1]3^3`4S4_4c5h7R7S7U7m7p7}8P9i9q9w:q:u;W;];h=z={U/e*S.f7Ye7Y3u7Z7[7`9]9^:h:i:k;kQ0]*rQ3b.hU4v0]3b9aR9a7[Q*w%UR0a*wQ5S0pR8O5SQ+[%jR0o+[Q5l1bS8_5l:OR:O8`Q,V&]R1e,VQ5q1gR8b5qQ1s,aS6R1s8oR8o6TQ1O+oW5_1O5a8V9zQ5a1RQ8V5`R9z8WQ+t&PR1U+tQ2V,sR6c2VYrOXst#dQ&t!ZQ+^%lQ,m&pQ,o&rQ,p&sQ,r&uQ2Q,nS2T,s2VR6b2SQ%npQ&x!_Q&{!aQ&}!bQ'P!cQ'o!uQ+]%kQ+i%yQ+{&VQ,c&kQ,z&zW-k'i'q'r'uQ-r'mQ0R*kQ0y+jS1v,d,gQ2_,yQ2`,|Q2a,}Q2u-jW2w-m-n-q-sQ5W0zQ5d1XQ5g1]Q5{1mQ6V1xQ6a2RU6p2v2y2|Q6s2zQ8R5XQ8Z5fQ8[5hQ8a5pQ8j5|Q8p6US9P6q6uQ9R6tQ9{8XQ:U8kQ:Z8qQ:b9QQ:x9|Q;O:VQ;S:cR;a;PQ%yyQ'b!iQ'm!uU+j%z%{%|Q-R'TU-f'c'd'eS-j'i'sQ/z*gS0z+k+lQ2g-TS2s-g-hQ2z-oS4g/{0OQ5X0{Q6l2mQ6o2tQ6t2{U7q4i4j4mQ9o7sR:r9pS$wi=pR*x%VU%Ui%V=pR0`*vQ$viS(s#v+fS)a$b$cQ)c$dQ*Y$xS*b${*WQ*q%OQ*r%QQ*|%]Q*}%^Q+R%bQ.g<aQ.h<cQ.j<gQ.k<iQ.l<kQ/Y)wQ/b*PQ/d*RQ/f*TQ/q*^S/v*d/hQ0^*tQ0_*ul0p+c,Q.a1a1i3Z5x6|8f9V:S:f:};VQ1]+}Q3^<tQ3_<vQ3`<yS3u<^<_Q3y.zS4S/_4UQ4^/rQ4_/sQ4c/uQ4s0YQ4u0[Q4{0gQ4|0hQ4}0iQ5h1^Q7R<}Q7S=PQ7T=RQ7U=TQ7Z<bQ7[<dQ7^<hQ7_<jQ7`<lQ7f4VQ7m4aQ7p4fQ7z4wQ7}5RQ8P5UQ9]<zQ9^<uQ9_<wQ9i7lQ9q7vQ9v7|Q9w8QQ:h=OQ:i=QQ:j=SQ:k=UQ:l9eQ:q9nQ:u9tQ;W=XQ;]:tQ;h;^Q;k=YQ=b=pQ=n=xQ=o=yQ=z=|R={=}Q*z%[Q.i<eR7]<fnpOXst!Z#d%l&p&r&s&u,n,s2S2VQ!fPS#fZ#oQ&z!`W'f!o*f0V4qQ'}#SQ)O#{Q)p$nS,g&i&lQ,l&mQ,y&yS-O'R/iQ-b'`Q.s(|Q/V)qQ0m+YQ0s+dQ2O,kQ2q-dQ3X.bQ4O/QQ4y0dQ5v1jQ6X1zQ6Y1{Q6^1}Q6`2PQ6e2XQ7P3[Q7c3{Q8h5yQ8t6ZQ8u6[Q8w6_Q9Z7QQ:T8iR:_8x#[cOPXZst!Z!`!o#d#o#{%l&i&l&m&p&r&s&u&y'R'`(|*f+Y+d,k,n,s-d.b/i0V0d1j1z1{1}2P2S2V2X3[4q5y6Z6[6_7Q8i8xQ#YWQ#eYQ%puQ%rvS%tw!gS(Q#W(TQ(W#ZQ(r#uQ(w#xQ)P$OQ)Q$PQ)R$QQ)S$RQ)T$SQ)U$TQ)V$UQ)W$VQ)X$WQ)Y$XQ)[$ZQ)^$_Q)`$aQ)e$eW)o$n)q/Q3{Q+a%sQ+u&QS-U'V2hQ-s'pS-x(R-zQ-}(ZQ.P(bQ.n(vQ.q(xQ.u;vQ.w;yQ.x;zQ.y;}Q/]){Q0j+UQ2c-PQ2f-SQ2v-lQ2}.QQ3c.oQ3h<OQ3i<PQ3j<QQ3k<RQ3l<SQ3m<TQ3n<UQ3o<VQ3p<WQ3q<XQ3r<YQ3s.vQ3t<]Q3w<`Q3x<mQ4P<ZQ5O0lQ5Y0|Q6k<pQ6q2xQ6v3OQ7V3dQ7W<qQ7a<sQ7b<{Q8`5mQ8|6iQ9Q6rQ9[<|Q9b=VQ9c=WQ:c9SQ:y9}Q;R:aQ;x#SR=g=sR#[WR'X!el!tQ!r!v!y!z'^'j'k'l-`-p1g5q5sS'T!e-WU*g$|*X*lS-T'U']S0O*h*nQ0W*oQ2m-^Q4m0UR4r0XR(y#xQ!fQT-_'^-`]!qQ!r'^-`1g5qQ#p]R'g;wR)d$dY!uQ'^-`1g5qQ'i!rS's!v!yS'u!z5sS-o'j'kQ-q'lR2{-pT#kZ%dS#jZ%dS%jm,jU(e#h#i#lS.T(f(gQ.X(hQ0n+ZQ3Q.UU3R.V.W.YS6x3S3TR9T6yd#^W#W#Z%g(R([*W+W.O/hr#gZm#h#i#l%d(f(g(h+Z.U.V.W.Y3S3T6yS*Z$x*_Q/o*[Q1|,jQ2d-QQ4W/kQ6g2[Q7i4XQ8{6hT=_'V+XV#aW%g*WU#`W%g*WS(S#W([U(X#Z+W/hS-V'V+XT-y(R.OV'[!e%h*XQ$lfR)v$qT)k$l)lR3}/PT*]$x*_T*e${*WQ0q+cQ1_,QQ3V.aQ5j1aQ5u1iQ6}3ZQ8g5xQ9W6|Q:Q8fQ:d9VQ:|:SQ;U:fQ;`:}R;c;VnqOXst!Z#d%l&p&r&s&u,n,s2S2VQ&j!VR,c&gtmOXst!U!V!Z#d%l&g&p&r&s&u,n,s2S2VR,j&mT%km,jR1c,SR,b&eQ&T|R+z&UR+p&OT&n!W&qT&o!W&qT2U,s2V",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 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:379,context:XE,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,236,242,244,246,248,251,257,263,265,267,269,271,273,274,"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:[GE],skippedNodes:[0,5,6,277],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(Vp(Y!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(Y!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Y!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(VpOY(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(VpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Vp(Y!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(Vp(Y!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(W#S$i&j'|0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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_(U':f$i&j(Y!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Y!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(Y!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Y!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Y!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Vp(Y!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(Vp(Y!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(Y!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(Y!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(VpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(VpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Vp(Y!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(n%1l(Vp(Y!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(Vp(Y!b$]#t(S,2j(d$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(Vp(Y!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(Vp(Y!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(Vp(Y!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(y+JY$i&j(Vp(Y!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(Vp(Y!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_(X';W$i&j(VpOY!!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(VpOY!!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(VpOY(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(VpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(VpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Vp(Y!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(Vp(Y!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(Vp(Y!b(T%&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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Y!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(Y!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(Y!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(Y!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(Y!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(Y!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(Vp!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(Vp!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(Vp!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(Vp!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(VpOY#$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(VpOY#%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(Vp(Y!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](Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!b'}0/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(Vp(Y!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(Y!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(Y!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(VpT0/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(VpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Vp(Y!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Vp(Y!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Vp(Y!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(q(Ct$i&j(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!b(`+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(Vp(Y!b(S,2j$_#t(d$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(Vp(Y!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(Vp(Y!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(x+JY$i&j(Vp(Y!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(Vp(Y!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(Vp(Y!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(Vp(Y!b'{0/l$]#t(S,2j(d$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(Vp(Y!b'|0/l$]#t(S,2j(d$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:[qE,YE,UE,WE,2,3,4,5,6,7,8,9,10,11,12,13,14,VE,new Cp("$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(b~~",141,339),new Cp("j~RQYZXz{^~^O(P~~aP!P!Qd~iO(Q~~",25,322)],topRules:{Script:[0,7],SingleExpression:[1,275],SingleClassItem:[2,276]},dialects:{jsx:0,ts:15098},dynamicPrecedences:{80:1,82:1,94:1,169:1,199:1},specialized:[{term:326,get:n=>HE[n]||-1},{term:342,get:n=>KE[n]||-1},{term:95,get:n=>JE[n]||-1}],tokenPrec:15124}),Aw=[On("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),On("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),On("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),On("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),On("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),On(`try {
52
+ \${}
53
+ } catch (\${error}) {
54
+ \${}
55
+ }`,{label:"try",detail:"/ catch block",type:"keyword"}),On("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),On(`if (\${}) {
56
+ \${}
57
+ } else {
58
+ \${}
59
+ }`,{label:"if",detail:"/ else block",type:"keyword"}),On(`class \${name} {
60
+ constructor(\${params}) {
61
+ \${}
62
+ }
63
+ }`,{label:"class",detail:"definition",type:"keyword"}),On('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),On('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],tA=Aw.concat([On("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),On("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),On("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),Ay=new eQ,Mw=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function co(n){return(e,t)=>{let s=e.node.getChild("VariableDefinition");return s&&t(s,n),!0}}const nA=["FunctionDeclaration"],sA={FunctionDeclaration:co("function"),ClassDeclaration:co("class"),ClassExpression:()=>!0,EnumDeclaration:co("constant"),TypeAliasDeclaration:co("type"),NamespaceDeclaration:co("namespace"),VariableDefinition(n,e){n.matchContext(nA)||e(n,"variable")},TypeDefinition(n,e){e(n,"type")},__proto__:null};function Rw(n,e){let t=Ay.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=sA[o.name];if(c&&c(o,r)||Mw.has(o.name))return!1}else if(o.to-o.from>8192){for(let c of Rw(n,o.node))s.push(c);return!1}}),Ay.set(e,s),s}const My=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,Dw=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function iA(n){let e=Nt(n.state).resolveInner(n.pos,-1);if(Dw.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&My.test(n.state.sliceDoc(e.from,e.to));if(!t&&!n.explicit)return null;let s=[];for(let i=e;i;i=i.parent)Mw.has(i.name)&&(s=s.concat(Rw(n.state.doc,i)));return{options:s,from:t?e.from:n.pos,validFor:My}}const ir=gu.define({name:"javascript",parser:eA.configure({props:[dS.add({IfStatement:df({except:/^\s*({|else\b)/}),TryStatement:df({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:kQ,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:yQ({closing:"}"}),ArrowFunction:n=>n.baseIndent+n.unit,"TemplateString BlockComment":()=>null,"Statement Property":df({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}}),pS.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":_Q,BlockComment(n){return{from:n.from+2,to:n.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),Lw={test:n=>/^JSX/.test(n.name),facet:cS({commentTokens:{block:{open:"{/*",close:"*/}"}}})},rA=ir.configure({dialect:"ts"},"typescript"),lA=ir.configure({dialect:"jsx",props:[im.add(n=>n.isTop?[Lw]:void 0)]}),oA=ir.configure({dialect:"jsx ts",props:[im.add(n=>n.isTop?[Lw]:void 0)]},"typescript");let Iw=n=>({label:n,type:"keyword"});const Zw="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(Iw),aA=Zw.concat(["declare","implements","private","protected","public"].map(Iw));function cA(n={}){let e=n.jsx?n.typescript?oA:lA:n.typescript?rA:ir,t=n.typescript?tA.concat(aA):Aw.concat(Zw);return new hQ(e,[ir.data.of({autocomplete:zT(Dw,mw(t))}),ir.data.of({autocomplete:iA}),n.jsx?hA:[]])}function uA(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 Ry(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 dA=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),hA=ve.inputHandler.of((n,e,t,s,i)=>{if((dA?n.composing:n.compositionStarted)||n.state.readOnly||e!=t||s!=">"&&s!="/"||!ir.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 x=g.parent,k=x.parent;if(k&&x.from==p-2&&((O=Ry(o.doc,k.firstChild,p))||((f=k.firstChild)===null||f===void 0?void 0:f.name)=="JSXFragmentTag")){let S=`${O}>`;return{range:re.cursor(p+S.length,-1),changes:{from:p,insert:S}}}}else if(s==">"){let x=uA(g);if(x&&x.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(o.doc.sliceString(p,p+2))&&(O=Ry(o.doc,x,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 fA(){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 Tt(n,e){const t=new URL("/graphql",fA()).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(`
64
+ `));return i.data}const Dy=`
65
+ query TaskFile($id: ID!, $startLine: Int, $endLine: Int) {
66
+ task(id: $id) {
67
+ id
68
+ filePath
69
+ fileContents(startLine: $startLine, endLine: $endLine)
70
+ }
71
+ }
72
+ `,Ly=`
73
+ query ResourceFile($id: ID!, $startLine: Int, $endLine: Int) {
74
+ resource(id: $id) {
75
+ id
76
+ filePath
77
+ fileContents(startLine: $startLine, endLine: $endLine)
78
+ }
79
+ }
80
+ `,pA=`
81
+ query TaskCoverageDetails($id: ID!) {
82
+ task(id: $id) {
83
+ id
84
+ coverage {
85
+ percentage
86
+ totalStatements
87
+ coveredStatements
88
+ details
89
+ }
90
+ }
91
+ }
92
+ `,mA=`
93
+ query ResourceCoverageDetails($id: ID!) {
94
+ resource(id: $id) {
95
+ id
96
+ coverage {
97
+ percentage
98
+ totalStatements
99
+ coveredStatements
100
+ details
101
+ }
102
+ }
103
+ }
104
+ `,gA=`
105
+ query MiddlewareFile($id: ID!, $startLine: Int, $endLine: Int) {
106
+ middleware(id: $id) {
107
+ id
108
+ filePath
109
+ fileContents(startLine: $startLine, endLine: $endLine)
110
+ }
111
+ }
112
+ `,OA=`
113
+ query EventFile($id: ID!, $startLine: Int, $endLine: Int) {
114
+ event(id: $id) {
115
+ id
116
+ filePath
117
+ fileContents(startLine: $startLine, endLine: $endLine)
118
+ }
119
+ }
120
+ `,vA=`
121
+ query HookFile($id: ID!, $startLine: Int, $endLine: Int) {
122
+ hook(id: $id) {
123
+ id
124
+ filePath
125
+ fileContents(startLine: $startLine, endLine: $endLine)
126
+ }
127
+ }
128
+ `,xA=`
129
+ query TagFile($id: ID!, $startLine: Int, $endLine: Int) {
130
+ tag(id: $id) {
131
+ id
132
+ filePath
133
+ fileContents(startLine: $startLine, endLine: $endLine)
134
+ }
135
+ }
136
+ `,yA=`
137
+ query ErrorFile($id: ID!, $startLine: Int, $endLine: Int) {
138
+ error(id: $id) {
139
+ id
140
+ filePath
141
+ fileContents(startLine: $startLine, endLine: $endLine)
142
+ }
143
+ }
144
+ `,kA=`
145
+ query AsyncContextFile($id: ID!, $startLine: Int, $endLine: Int) {
146
+ asyncContext(id: $id) {
147
+ id
148
+ filePath
149
+ fileContents(startLine: $startLine, endLine: $endLine)
150
+ }
151
+ }
152
+ `,Ic=n=>Math.ceil((n||"").length/4),zw=(n,e)=>{const t=[],s=n;if(/@docs\.runner\b/.test(n)&&e.runnerAiMd&&t.push(`
153
+
154
+ <runner_docs>
155
+ ${e.runnerAiMd}
156
+ </runner_docs>`),/@docs\.schema\b/.test(n)&&e.graphqlSdl&&t.push(`
157
+
158
+ <graphql_sdl>
159
+ ${e.graphqlSdl}
160
+ </graphql_sdl>`),/@docs\.runnerDev\b/.test(n)&&e.runnerDevMd&&t.push(`
161
+
162
+ <runner_dev_docs>
163
+ ${e.runnerDevMd}
164
+ </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(`
165
+
166
+ <${c}>
167
+ ${o}
168
+ </${c}>`)}return t.length===0?{modelText:n,displayText:s}:{modelText:`${n.replace(/\s*@docs\.(runner|schema|projectOverview|runnerDev)\b/g,"")}${t.join("")}`,displayText:s}},Bw=(n,e)=>{const t=[];if(e.runner&&n.runnerAiMd&&t.push(`<runner_docs>
169
+ ${n.runnerAiMd}
170
+ </runner_docs>`),e.runnerDev&&n.runnerDevMd&&t.push(`<runner_dev_docs>
171
+ ${n.runnerDevMd}
172
+ </runner_dev_docs>`),e.schema&&n.graphqlSdl&&t.push(`<graphql_sdl>
173
+ ${n.graphqlSdl}
174
+ </graphql_sdl>`),e.projectOverview&&n.projectOverviewMd){const s=(n.projectOverviewMd||"").trim(),i=s.startsWith("#")?"project_overview":"project_ai_md";t.push(`<${i}>
175
+ ${s}
176
+ </${i}>`)}return t.join(`
177
+
178
+ `)},eu=(n,e,t,s,i)=>{const r=[{role:"system",content:n}];r.push(...t);const o=Bw(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},SA=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},$o=(n,e,t,s,i)=>{const r=Ic(n),o=Ic((e||[]).join(`
179
+
180
+ `)),c=SA(t||""),u={runner:i.runner||c.runner,runnerDev:i.runnerDev||c.runnerDev,schema:i.schema||c.schema,projectOverview:i.projectOverview||c.projectOverview},f=Bw(s,u),p=Ic(f),g=Ic(t||""),O=r+o+p+g;return{system:r,history:o,input:g+p,total:O}},wA=(n,e,t)=>{const s=n.split(`
181
+ `),i=e.split(`
182
+ `);let r=`--- a/${t}
183
+ +++ b/${t}
184
+ `;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} @@
185
+ `,r+=u.join(`
186
+ `)),r},bA=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`},Sm=async n=>{try{return await navigator.clipboard.writeText(n),!0}catch(e){return console.warn("Failed to copy to clipboard:",e),!1}},_A=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},Fw=n=>{try{localStorage.setItem("chat-sidebar-history",JSON.stringify({messages:n,timestamp:Date.now()}))}catch(e){console.warn("Failed to save chat history:",e)}},Xw=()=>{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},Vw=n=>{try{localStorage.setItem("chat-sidebar-settings",JSON.stringify(n))}catch(e){console.warn("Failed to save chat settings:",e)}},Gu=()=>{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},qw=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)}},Yw=()=>{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},$A=()=>{try{localStorage.removeItem("chat-sidebar-context")}catch(n){console.warn("Failed to clear chat context:",n)}},CA=n=>n>=100?"#66bb6a":n>=80?"#ffa726":"#ef5350",PA=n=>n>=100?{label:"excellent",icon:"✓"}:n>=80?{label:"good",icon:"○"}:n>=50?{label:"partial",icon:"◐"}:{label:"low",icon:"✗"},QA=({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=CA(s),u=PA(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 jA(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=Qe.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))}}),Qe.set(s)}}),ve.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 cn=({title:n,subtitle:e,isOpen:t,onClose:s,code:i,enableEdit:r=!1,saveOnFile:o,coverageData:c,showCoverage:u=!1})=>{const[f,p]=F.useState(i??""),[g,O]=F.useState(i??""),[x,k]=F.useState(!1),[S,w]=F.useState(null),[$,b]=F.useState(!1),P=F.useRef({position:"",top:"",left:"",right:"",width:"",overflowY:""});F.useEffect(()=>{function X(H){H.key==="Escape"&&s()}if(!t)return;const B=window.scrollY||window.pageYOffset||0;return P.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=`-${B}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=P.current.position,document.body.style.top=P.current.top,document.body.style.left=P.current.left,document.body.style.right=P.current.right,document.body.style.width=P.current.width,document.body.style.overflowY=P.current.overflowY,window.scrollTo(0,B)}},[t,s]),F.useEffect(()=>{const X=i??"";p(X),O(X)},[i,t]);const C=r&&typeof o=="string"&&o.length>0,Q=se.useMemo(()=>{const X=[cA({typescript:!0})];return u&&c?.lines&&X.push(jA(c.lines)),X},[u,c?.lines]),N=F.useCallback(async()=>{if(!(!C||!o)){k(!0),w(null);try{const B=await Tt(`
187
+ mutation EditFile($path: String!, $content: String!) {
188
+ editFile(path: $path, content: $content) {
189
+ success
190
+ error
191
+ path
192
+ resolvedPath
193
+ }
194
+ }
195
+ `,{path:o,content:f});if(!B.editFile?.success)throw new Error(B.editFile?.error||"Unknown error while saving");O(f)}catch(X){const B=X instanceof Error?X.message:String(X);w(B)}finally{k(!1)}}},[C,o,f]),A=F.useCallback(async()=>{await Sm(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"}),C&&f!==g&&d.jsx("button",{className:"code-modal__btn code-modal__btn--glass-primary",onClick:N,disabled:x,children:x?"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(QA,{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 B=X.key;(X.metaKey||X.ctrlKey)&&(B==="s"||B==="S")&&(X.preventDefault(),C&&f!==g&&!x&&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(Tw,{value:f,onChange:X=>{C&&p(X)},extensions:Q,theme:jw,editable:C,basicSetup:{lineNumbers:!0,foldGutter:!0,dropCursor:!1,allowMultipleSelections:!1},className:`code-modal__editor${u&&c?.lines?" code-modal__editor--with-coverage":""}`,style:{fontSize:"14px"}})]}),S&&d.jsx("div",{className:"code-modal__error",children:S})]})]})}),document.body):null},hr=({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?ye(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 la=n=>n.type==="checkbox",er=n=>n instanceof Date,sn=n=>n==null;const Uw=n=>typeof n=="object";var yt=n=>!sn(n)&&!Array.isArray(n)&&Uw(n)&&!er(n),TA=n=>yt(n)&&n.target?la(n.target)?n.target.checked:n.target.value:n,NA=n=>n.substring(0,n.search(/\.\d+(\.|$)/))||n,EA=(n,e)=>n.has(NA(e)),AA=n=>{const e=n.constructor&&n.constructor.prototype;return yt(e)&&e.hasOwnProperty("isPrototypeOf")},wm=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(!(wm&&(n instanceof Blob||s))&&(t||yt(n)))if(e=t?[]:Object.create(Object.getPrototypeOf(n)),!t&&!AA(n))e=n;else for(const i in n)n.hasOwnProperty(i)&&(e[i]=Dt(n[i]));else return n;return e}var Hu=n=>/^\w*$/.test(n),bt=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||!yt(n))return t;const s=(Hu(e)?[e]:_m(e)).reduce((i,r)=>sn(i)?i:i[r],n);return bt(s)||s===n?bt(n[e])?t:n[e]:s},Os=n=>typeof n=="boolean",ct=(n,e,t)=>{let s=-1;const i=Hu(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=yt(f)||Array.isArray(f)?f:isNaN(+i[s+1])?{}:[]}if(c==="__proto__"||c==="constructor"||c==="prototype")return;n[c]=u,n=n[c]}};const Iy={BLUR:"blur",FOCUS_OUT:"focusout"},es={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},Is={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},MA=se.createContext(null);MA.displayName="HookFormContext";var RA=(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]!==es.all&&(e._proxyFormState[o]=!s||es.all),n[o]}});return i};const DA=typeof window<"u"?se.useLayoutEffect:se.useEffect;var bs=n=>typeof n=="string",LA=(n,e,t,s,i)=>bs(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),jp=n=>sn(n)||!Uw(n);function ki(n,e,t=new WeakSet){if(jp(n)||jp(e))return n===e;if(er(n)&&er(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(er(o)&&er(c)||yt(o)&&yt(c)||Array.isArray(o)&&Array.isArray(c)?!ki(o,c,t):o!==c)return!1}}return!0}var IA=(n,e,t,s,i)=>e?{...t[n],types:{...t[n]&&t[n].types?t[n].types:{},[s]:i||!0}}:{},Co=n=>Array.isArray(n)?n:[n],Zy=()=>{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=[]}}},vn=n=>yt(n)&&!Object.keys(n).length,$m=n=>n.type==="file",ts=n=>typeof n=="function",Nu=n=>{if(!wm)return!1;const e=n?n.ownerDocument:0;return n instanceof(e&&e.defaultView?e.defaultView.HTMLElement:HTMLElement)},Ww=n=>n.type==="select-multiple",Cm=n=>n.type==="radio",ZA=n=>Cm(n)||la(n),$f=n=>Nu(n)&&n.isConnected;function zA(n,e){const t=e.slice(0,-1).length;let s=0;for(;s<t;)n=bt(n)?s++:n[e[s++]];return n}function BA(n){for(const e in n)if(n.hasOwnProperty(e)&&!bt(n[e]))return!1;return!0}function St(n,e){const t=Array.isArray(e)?e:Hu(e)?[e]:_m(e),s=t.length===1?n:zA(n,t),i=t.length-1,r=t[i];return s&&delete s[r],i!==0&&(yt(s)&&vn(s)||Array.isArray(s)&&BA(s))&&St(n,t.slice(0,-1)),n}var Gw=n=>{for(const e in n)if(ts(n[e]))return!0;return!1};function Eu(n,e={}){const t=Array.isArray(n);if(yt(n)||t)for(const s in n)Array.isArray(n[s])||yt(n[s])&&!Gw(n[s])?(e[s]=Array.isArray(n[s])?[]:{},Eu(n[s],e[s])):sn(n[s])||(e[s]=!0);return e}function Hw(n,e,t){const s=Array.isArray(n);if(yt(n)||s)for(const i in n)Array.isArray(n[i])||yt(n[i])&&!Gw(n[i])?bt(e)||jp(t[i])?t[i]=Array.isArray(n[i])?Eu(n[i],[]):{...Eu(n[i])}:Hw(n[i],sn(e)?{}:e[i],t[i]):t[i]=!ki(n[i],e[i]);return t}var uo=(n,e)=>Hw(n,e,Eu(e));const zy={value:!1,isValid:!1},By={value:!0,isValid:!0};var Kw=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&&!bt(n[0].attributes.value)?bt(n[0].value)||n[0].value===""?By:{value:n[0].value,isValid:!0}:By:zy}return zy},Jw=(n,{valueAsNumber:e,valueAsDate:t,setValueAs:s})=>bt(n)?n:e?n===""?NaN:n&&+n:t&&bs(n)?new Date(n):s?s(n):n;const Fy={isValid:!1,value:null};var eb=n=>Array.isArray(n)?n.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,Fy):Fy;function Xy(n){const e=n.ref;return $m(e)?e.files:Cm(e)?eb(n.refs).value:Ww(e)?[...e.selectedOptions].map(({value:t})=>t):la(e)?Kw(n.refs).value:Jw(bt(e.value)?n.ref.value:e.value,n)}var FA=(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}},Au=n=>n instanceof RegExp,ho=n=>bt(n)?n:Au(n)?n.source:yt(n)?Au(n.value)?n.value.source:n.value:n,Vy=n=>({isOnSubmit:!n||n===es.onSubmit,isOnBlur:n===es.onBlur,isOnChange:n===es.onChange,isOnAll:n===es.all,isOnTouch:n===es.onTouched});const qy="AsyncFunction";var XA=n=>!!n&&!!n.validate&&!!(ts(n.validate)&&n.validate.constructor.name===qy||yt(n.validate)&&Object.values(n.validate).find(e=>e.constructor.name===qy)),VA=n=>n.mount&&(n.required||n.min||n.max||n.maxLength||n.minLength||n.pattern||n.validate),Yy=(n,e,t)=>!t&&(e.watchAll||e.watch.has(n)||[...e.watch].some(s=>n.startsWith(s)&&/^\.\w+/.test(n.slice(s.length))));const Po=(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(Po(c,e))break}else if(yt(c)&&Po(c,e))break}}};function Uy(n,e,t){const s=Ce(n,t);if(s||Hu(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 qA=(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||es.all))},YA=(n,e,t)=>!n||!e||n===e||Co(n).some(s=>s&&(t?s===e:s.startsWith(e)||e.startsWith(s))),UA=(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,WA=(n,e)=>!bm(Ce(n,e)).length&&St(n,e),GA=(n,e,t)=>{const s=Co(Ce(n,t));return ct(s,"root",e[t]),ct(n,t,s),n},tu=n=>bs(n);function Wy(n,e,t="validate"){if(tu(n)||Array.isArray(n)&&n.every(tu)||Os(n)&&!n)return{type:t,message:tu(n)?n:"",ref:e}}var qr=n=>yt(n)&&!Au(n)?n:{value:n,message:""},Gy=async(n,e,t,s,i,r)=>{const{ref:o,refs:c,required:u,maxLength:f,minLength:p,min:g,max:O,pattern:x,validate:k,name:S,valueAsNumber:w,mount:$}=n._f,b=Ce(t,S);if(!$||e.has(S))return{};const P=c?c[0]:o,C=R=>{i&&P.reportValidity&&(P.setCustomValidity(Os(R)?"":R||""),P.reportValidity())},Q={},N=Cm(o),A=la(o),X=N||A,B=(w||$m(o))&&bt(o.value)&&bt(b)||Nu(o)&&o.value===""||b===""||Array.isArray(b)&&!b.length,H=IA.bind(null,S,s,Q),J=(R,V,Y,te=Is.maxLength,pe=Is.minLength)=>{const ce=R?V:Y;Q[S]={type:R?te:pe,message:ce,ref:o,...H(R?te:pe,ce)}};if(r?!Array.isArray(b)||!b.length:u&&(!X&&(B||sn(b))||Os(b)&&!b||A&&!Kw(c).isValid||N&&!eb(c).isValid)){const{value:R,message:V}=tu(u)?{value:!!u,message:u}:qr(u);if(R&&(Q[S]={type:Is.required,message:V,ref:P,...H(Is.required,V)},!s))return C(V),Q}if(!B&&(!sn(g)||!sn(O))){let R,V;const Y=qr(O),te=qr(g);if(!sn(b)&&!isNaN(b)){const pe=o.valueAsNumber||b&&+b;sn(Y.value)||(R=pe>Y.value),sn(te.value)||(V=pe<te.value)}else{const pe=o.valueAsDate||new Date(b),ce=T=>new Date(new Date().toDateString()+" "+T),U=o.type=="time",z=o.type=="week";bs(Y.value)&&b&&(R=U?ce(b)>ce(Y.value):z?b>Y.value:pe>new Date(Y.value)),bs(te.value)&&b&&(V=U?ce(b)<ce(te.value):z?b<te.value:pe<new Date(te.value))}if((R||V)&&(J(!!R,Y.message,te.message,Is.max,Is.min),!s))return C(Q[S].message),Q}if((f||p)&&!B&&(bs(b)||r&&Array.isArray(b))){const R=qr(f),V=qr(p),Y=!sn(R.value)&&b.length>+R.value,te=!sn(V.value)&&b.length<+V.value;if((Y||te)&&(J(Y,R.message,V.message),!s))return C(Q[S].message),Q}if(x&&!B&&bs(b)){const{value:R,message:V}=qr(x);if(Au(R)&&!b.match(R)&&(Q[S]={type:Is.pattern,message:V,ref:o,...H(Is.pattern,V)},!s))return C(V),Q}if(k){if(ts(k)){const R=await k(b,t),V=Wy(R,P);if(V&&(Q[S]={...V,...H(Is.validate,V.message)},!s))return C(V.message),Q}else if(yt(k)){let R={};for(const V in k){if(!vn(R)&&!s)break;const Y=Wy(await k[V](b,t),P,V);Y&&(R={...Y,...H(V,Y.message)},C(Y.message),s&&(Q[S]=R))}if(!vn(R)&&(Q[S]={ref:P,...R},!s))return Q}}return C(!0),Q};const HA={mode:es.onSubmit,reValidateMode:es.onChange,shouldFocusError:!0};function KA(n={}){let e={...HA,...n},t={submitCount:0,isDirty:!1,isReady:!1,isLoading:ts(e.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1},s={},i=yt(e.defaultValues)||yt(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:Zy(),state:Zy()},x=e.criteriaMode===es.all,k=M=>W=>{clearTimeout(f),f=setTimeout(M,W)},S=async M=>{if(!e.disabled&&(p.isValid||g.isValid||M)){const W=e.resolver?vn((await A()).errors):await B(s,!0);W!==t.isValid&&O.state.next({isValid:W})}},w=(M,W)=>{!e.disabled&&(p.isValidating||p.validatingFields||g.isValidating||g.validatingFields)&&((M||Array.from(c.mount)).forEach(ne=>{ne&&(W?ct(t.validatingFields,ne,W):St(t.validatingFields,ne))}),O.state.next({validatingFields:t.validatingFields,isValidating:!vn(t.validatingFields)}))},$=(M,W=[],ne,xe,ge=!0,fe=!0)=>{if(xe&&ne&&!e.disabled){if(o.action=!0,fe&&Array.isArray(Ce(s,M))){const Te=ne(Ce(s,M),xe.argA,xe.argB);ge&&ct(s,M,Te)}if(fe&&Array.isArray(Ce(t.errors,M))){const Te=ne(Ce(t.errors,M),xe.argA,xe.argB);ge&&ct(t.errors,M,Te),WA(t.errors,M)}if((p.touchedFields||g.touchedFields)&&fe&&Array.isArray(Ce(t.touchedFields,M))){const Te=ne(Ce(t.touchedFields,M),xe.argA,xe.argB);ge&&ct(t.touchedFields,M,Te)}(p.dirtyFields||g.dirtyFields)&&(t.dirtyFields=uo(i,r)),O.state.next({name:M,isDirty:J(M,W),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else ct(r,M,W)},b=(M,W)=>{ct(t.errors,M,W),O.state.next({errors:t.errors})},P=M=>{t.errors=M,O.state.next({errors:t.errors,isValid:!1})},C=(M,W,ne,xe)=>{const ge=Ce(s,M);if(ge){const fe=Ce(r,M,bt(ne)?Ce(i,M):ne);bt(fe)||xe&&xe.defaultChecked||W?ct(r,M,W?fe:Xy(ge._f)):Y(M,fe),o.mount&&S()}},Q=(M,W,ne,xe,ge)=>{let fe=!1,Te=!1;const Ve={name:M};if(!e.disabled){if(!ne||xe){(p.isDirty||g.isDirty)&&(Te=t.isDirty,t.isDirty=Ve.isDirty=J(),fe=Te!==Ve.isDirty);const Ge=ki(Ce(i,M),W);Te=!!Ce(t.dirtyFields,M),Ge?St(t.dirtyFields,M):ct(t.dirtyFields,M,!0),Ve.dirtyFields=t.dirtyFields,fe=fe||(p.dirtyFields||g.dirtyFields)&&Te!==!Ge}if(ne){const Ge=Ce(t.touchedFields,M);Ge||(ct(t.touchedFields,M,ne),Ve.touchedFields=t.touchedFields,fe=fe||(p.touchedFields||g.touchedFields)&&Ge!==ne)}fe&&ge&&O.state.next(Ve)}return fe?Ve:{}},N=(M,W,ne,xe)=>{const ge=Ce(t.errors,M),fe=(p.isValid||g.isValid)&&Os(W)&&t.isValid!==W;if(e.delayError&&ne?(u=k(()=>b(M,ne)),u(e.delayError)):(clearTimeout(f),u=null,ne?ct(t.errors,M,ne):St(t.errors,M)),(ne?!ki(ge,ne):ge)||!vn(xe)||fe){const Te={...xe,...fe&&Os(W)?{isValid:W}:{},errors:t.errors,name:M};t={...t,...Te},O.state.next(Te)}},A=async M=>{w(M,!0);const W=await e.resolver(r,e.context,FA(M||c.mount,s,e.criteriaMode,e.shouldUseNativeValidation));return w(M),W},X=async M=>{const{errors:W}=await A(M);if(M)for(const ne of M){const xe=Ce(W,ne);xe?ct(t.errors,ne,xe):St(t.errors,ne)}else t.errors=W;return W},B=async(M,W,ne={valid:!0})=>{for(const xe in M){const ge=M[xe];if(ge){const{_f:fe,...Te}=ge;if(fe){const Ve=c.array.has(fe.name),Ge=ge._f&&XA(ge._f);Ge&&p.validatingFields&&w([xe],!0);const en=await Gy(ge,c.disabled,r,x,e.shouldUseNativeValidation&&!W,Ve);if(Ge&&p.validatingFields&&w([xe]),en[fe.name]&&(ne.valid=!1,W))break;!W&&(Ce(en,fe.name)?Ve?GA(t.errors,en,fe.name):ct(t.errors,fe.name,en[fe.name]):St(t.errors,fe.name))}!vn(Te)&&await B(Te,W,ne)}}return ne.valid},H=()=>{for(const M of c.unMount){const W=Ce(s,M);W&&(W._f.refs?W._f.refs.every(ne=>!$f(ne)):!$f(W._f.ref))&&me(M)}c.unMount=new Set},J=(M,W)=>!e.disabled&&(M&&W&&ct(r,M,W),!ki(T(),i)),R=(M,W,ne)=>LA(M,c,{...o.mount?r:bt(W)?i:bs(M)?{[M]:W}:W},ne,W),V=M=>bm(Ce(o.mount?r:i,M,e.shouldUnregister?Ce(i,M,[]):[])),Y=(M,W,ne={})=>{const xe=Ce(s,M);let ge=W;if(xe){const fe=xe._f;fe&&(!fe.disabled&&ct(r,M,Jw(W,fe)),ge=Nu(fe.ref)&&sn(W)?"":W,Ww(fe.ref)?[...fe.ref.options].forEach(Te=>Te.selected=ge.includes(Te.value)):fe.refs?la(fe.ref)?fe.refs.forEach(Te=>{(!Te.defaultChecked||!Te.disabled)&&(Array.isArray(ge)?Te.checked=!!ge.find(Ve=>Ve===Te.value):Te.checked=ge===Te.value||!!ge)}):fe.refs.forEach(Te=>Te.checked=Te.value===ge):$m(fe.ref)?fe.ref.value="":(fe.ref.value=ge,fe.ref.type||O.state.next({name:M,values:Dt(r)})))}(ne.shouldDirty||ne.shouldTouch)&&Q(M,ge,ne.shouldTouch,ne.shouldDirty,!0),ne.shouldValidate&&z(M)},te=(M,W,ne)=>{for(const xe in W){if(!W.hasOwnProperty(xe))return;const ge=W[xe],fe=M+"."+xe,Te=Ce(s,fe);(c.array.has(M)||yt(ge)||Te&&!Te._f)&&!er(ge)?te(fe,ge,ne):Y(fe,ge,ne)}},pe=(M,W,ne={})=>{const xe=Ce(s,M),ge=c.array.has(M),fe=Dt(W);ct(r,M,fe),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:uo(i,r),isDirty:J(M,fe)})):xe&&!xe._f&&!sn(fe)?te(M,fe,ne):Y(M,fe,ne),Yy(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 W=M.target;let ne=W.name,xe=!0;const ge=Ce(s,ne),fe=Ge=>{xe=Number.isNaN(Ge)||er(Ge)&&isNaN(Ge.getTime())||ki(Ge,Ce(r,ne,Ge))},Te=Vy(e.mode),Ve=Vy(e.reValidateMode);if(ge){let Ge,en;const ls=W.type?Xy(ge._f):TA(M),un=M.type===Iy.BLUR||M.type===Iy.FOCUS_OUT,td=!VA(ge._f)&&!e.resolver&&!Ce(t.errors,ne)&&!ge._f.deps||UA(un,Ce(t.touchedFields,ne),t.isSubmitted,Ve,Te),Or=Yy(ne,c,un);ct(r,ne,ls),un?(!W||!W.readOnly)&&(ge._f.onBlur&&ge._f.onBlur(M),u&&u(0)):ge._f.onChange&&ge._f.onChange(M);const vr=Q(ne,ls,un),nd=!vn(vr)||Or;if(!un&&O.state.next({name:ne,type:M.type,values:Dt(r)}),td)return(p.isValid||g.isValid)&&(e.mode==="onBlur"?un&&S():un||S()),nd&&O.state.next({name:ne,...Or?{}:vr});if(!un&&Or&&O.state.next({...t}),e.resolver){const{errors:xr}=await A([ne]);if(fe(ls),xe){const xl=Uy(t.errors,s,ne),yr=Uy(xr,s,xl.name||ne);Ge=yr.error,ne=yr.name,en=vn(xr)}}else w([ne],!0),Ge=(await Gy(ge,c.disabled,r,x,e.shouldUseNativeValidation))[ne],w([ne]),fe(ls),xe&&(Ge?en=!1:(p.isValid||g.isValid)&&(en=await B(s,!0)));xe&&(ge._f.deps&&z(ge._f.deps),N(ne,en,Ge,vr))}},U=(M,W)=>{if(Ce(t.errors,W)&&M.focus)return M.focus(),1},z=async(M,W={})=>{let ne,xe;const ge=Co(M);if(e.resolver){const fe=await X(bt(M)?M:ge);ne=vn(fe),xe=M?!ge.some(Te=>Ce(fe,Te)):ne}else M?(xe=(await Promise.all(ge.map(async fe=>{const Te=Ce(s,fe);return await B(Te&&Te._f?{[fe]:Te}:Te)}))).every(Boolean),!(!xe&&!t.isValid)&&S()):xe=ne=await B(s);return O.state.next({...!bs(M)||(p.isValid||g.isValid)&&ne!==t.isValid?{}:{name:M},...e.resolver||!M?{isValid:ne}:{},errors:t.errors}),W.shouldFocus&&!xe&&Po(s,U,M?ge:c.mount),xe},T=M=>{const W={...o.mount?r:i};return bt(M)?W:bs(M)?Ce(W,M):M.map(ne=>Ce(W,ne))},j=(M,W)=>({invalid:!!Ce((W||t).errors,M),isDirty:!!Ce((W||t).dirtyFields,M),error:Ce((W||t).errors,M),isValidating:!!Ce(t.validatingFields,M),isTouched:!!Ce((W||t).touchedFields,M)}),L=M=>{M&&Co(M).forEach(W=>St(t.errors,W)),O.state.next({errors:M?t.errors:{}})},le=(M,W,ne)=>{const xe=(Ce(s,M,{_f:{}})._f||{}).ref,ge=Ce(t.errors,M)||{},{ref:fe,message:Te,type:Ve,...Ge}=ge;ct(t.errors,M,{...Ge,...W,ref:xe}),O.state.next({name:M,errors:t.errors,isValid:!1}),ne&&ne.shouldFocus&&xe&&xe.focus&&xe.focus()},ee=(M,W)=>ts(M)?O.state.subscribe({next:ne=>"values"in ne&&M(R(void 0,W),ne)}):R(M,W,!0),ie=M=>O.state.subscribe({next:W=>{YA(M.name,W.name,M.exact)&&qA(W,M.formState||p,vl,M.reRenderRoot)&&M.callback({values:{...r},...t,...W,defaultValues:i})}}).unsubscribe,he=M=>(o.mount=!0,g={...g,...M.formState},ie({...M,formState:g})),me=(M,W={})=>{for(const ne of M?Co(M):c.mount)c.mount.delete(ne),c.array.delete(ne),W.keepValue||(St(s,ne),St(r,ne)),!W.keepError&&St(t.errors,ne),!W.keepDirty&&St(t.dirtyFields,ne),!W.keepTouched&&St(t.touchedFields,ne),!W.keepIsValidating&&St(t.validatingFields,ne),!e.shouldUnregister&&!W.keepDefaultValue&&St(i,ne);O.state.next({values:Dt(r)}),O.state.next({...t,...W.keepDirty?{isDirty:J()}:{}}),!W.keepIsValid&&S()},je=({disabled:M,name:W})=>{(Os(M)&&o.mount||M||c.disabled.has(W))&&(M?c.disabled.add(W):c.disabled.delete(W))},De=(M,W={})=>{let ne=Ce(s,M);const xe=Os(W.disabled)||Os(e.disabled);return ct(s,M,{...ne||{},_f:{...ne&&ne._f?ne._f:{ref:{name:M}},name:M,mount:!0,...W}}),c.mount.add(M),ne?je({disabled:Os(W.disabled)?W.disabled:e.disabled,name:M}):C(M,!0,W.value),{...xe?{disabled:W.disabled||e.disabled}:{},...e.progressive?{required:!!W.required,min:ho(W.min),max:ho(W.max),minLength:ho(W.minLength),maxLength:ho(W.maxLength),pattern:ho(W.pattern)}:{},name:M,onChange:ce,onBlur:ce,ref:ge=>{if(ge){De(M,W),ne=Ce(s,M);const fe=bt(ge.value)&&ge.querySelectorAll&&ge.querySelectorAll("input,select,textarea")[0]||ge,Te=ZA(fe),Ve=ne._f.refs||[];if(Te?Ve.find(Ge=>Ge===fe):fe===ne._f.ref)return;ct(s,M,{_f:{...ne._f,...Te?{refs:[...Ve.filter($f),fe,...Array.isArray(Ce(i,M))?[{}]:[]],ref:{type:fe.type,name:M}}:{ref:fe}}}),C(M,!1,void 0,fe)}else ne=Ce(s,M,{}),ne._f&&(ne._f.mount=!1),(e.shouldUnregister||W.shouldUnregister)&&!(EA(c.array,M)&&o.action)&&c.unMount.add(M)}}},Ue=()=>e.shouldFocusError&&Po(s,U,c.mount),Re=M=>{Os(M)&&(O.state.next({disabled:M}),Po(s,(W,ne)=>{const xe=Ce(s,ne);xe&&(W.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,W)=>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:fe,values:Te}=await A();t.errors=fe,ge=Dt(Te)}else await B(s);if(c.disabled.size)for(const fe of c.disabled)St(ge,fe);if(St(t.errors,"root"),vn(t.errors)){O.state.next({errors:{}});try{await M(ge,ne)}catch(fe){xe=fe}}else W&&await W({...t.errors},ne),Ue(),setTimeout(Ue);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,W={})=>{Ce(s,M)&&(bt(W.defaultValue)?pe(M,Dt(Ce(i,M))):(pe(M,W.defaultValue),ct(i,M,Dt(W.defaultValue))),W.keepTouched||St(t.touchedFields,M),W.keepDirty||(St(t.dirtyFields,M),t.isDirty=W.defaultValue?J(M,Dt(Ce(i,M))):J()),W.keepError||(St(t.errors,M),p.isValid&&S()),O.state.next({...t}))},Et=(M,W={})=>{const ne=M?Dt(M):i,xe=Dt(ne),ge=vn(M),fe=ge?i:xe;if(W.keepDefaultValues||(i=ne),!W.keepValues){if(W.keepDirtyValues){const Te=new Set([...c.mount,...Object.keys(uo(i,r))]);for(const Ve of Array.from(Te))Ce(t.dirtyFields,Ve)?ct(fe,Ve,Ce(r,Ve)):pe(Ve,Ce(fe,Ve))}else{if(wm&&bt(M))for(const Te of c.mount){const Ve=Ce(s,Te);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(W.keepFieldsRef)for(const Te of c.mount)pe(Te,Ce(fe,Te));else s={}}r=e.shouldUnregister?W.keepDefaultValues?Dt(i):{}:Dt(fe),O.array.next({values:{...fe}}),O.state.next({values:{...fe}})}c={mount:W.keepDirtyValues?c.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},o.mount=!p.isValid||!!W.keepIsValid||!!W.keepDirtyValues,o.watch=!!e.shouldUnregister,O.state.next({submitCount:W.keepSubmitCount?t.submitCount:0,isDirty:ge?!1:W.keepDirty?t.isDirty:!!(W.keepDefaultValues&&!ki(M,i)),isSubmitted:W.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:ge?{}:W.keepDirtyValues?W.keepDefaultValues&&r?uo(i,r):t.dirtyFields:W.keepDefaultValues&&M?uo(i,M):W.keepDirty?t.dirtyFields:{},touchedFields:W.keepTouched?t.touchedFields:{},errors:W.keepErrors?t.errors:{},isSubmitSuccessful:W.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},Hs=(M,W)=>Et(ts(M)?M(r):M,W),mr=(M,W={})=>{const ne=Ce(s,M),xe=ne&&ne._f;if(xe){const ge=xe.refs?xe.refs[0]:xe.ref;ge.focus&&(ge.focus(),W.shouldSelect&&ts(ge.select)&&ge.select())}},vl=M=>{t={...t,...M}},gr={control:{register:De,unregister:me,getFieldState:j,handleSubmit:Xe,setError:le,_subscribe:ie,_runSchema:A,_focusError:Ue,_getWatch:R,_getDirty:J,_setValid:S,_setFieldArray:$,_setDisabledField:je,_setErrors:P,_getFieldArray:V,_reset:Et,_resetDefaultValues:()=>ts(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:he,trigger:z,register:De,handleSubmit:Xe,watch:ee,setValue:pe,getValues:T,reset:Hs,resetField:gt,clearErrors:L,unregister:me,setError:le,setFocus:mr,getFieldState:j};return{...gr,formControl:gr}}function tb(n={}){const e=se.useRef(void 0),t=se.useRef(void 0),[s,i]=se.useState({isDirty:!1,isValidating:!1,isLoading:ts(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:ts(n.defaultValues)?void 0:n.defaultValues});if(!e.current)if(n.formControl)e.current={...n.formControl,formState:s},n.defaultValues&&!ts(n.defaultValues)&&n.formControl.reset(n.defaultValues,n.resetOptions);else{const{formControl:o,...c}=KA(n);e.current={...c,formState:s}}const r=e.current.control;return r._options=n,DA(()=>{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&&!ki(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=RA(s,r),e.current}const nu=({children:n,className:e="",...t})=>d.jsx("form",{className:`form ${e}`,...t,children:n}),Bs=({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})]}),tr=se.forwardRef(({className:n="",invalid:e,...t},s)=>d.jsx("input",{ref:s,className:`form__input ${e?"is-invalid":""} ${n}`,...t}));tr.displayName="TextInput";const nb=se.forwardRef(({className:n="",invalid:e,...t},s)=>d.jsx("input",{ref:s,type:"password",className:`form__input ${e?"is-invalid":""} ${n}`,...t}));nb.displayName="PasswordInput";const sb=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}));sb.displayName="Select";const JA=({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"]||""})]}),eM=({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=(P=>{const C=[];for(const Q of P){if(Q.role==="system"||Q.role==="user"){const N=Q.content??"";C.push({role:Q.role,content:N});continue}if(Q.role==="assistant"){const N=Q.content??void 0;Array.isArray(Q.tool_calls)&&Q.tool_calls.length?C.push({role:"assistant",content:N??null,tool_calls:Q.tool_calls.map(A=>({id:A.id,type:"function",function:{name:A.function.name,arguments:A.function.arguments}}))}):C.push({role:"assistant",content:N??null});continue}if(Q.role==="tool"){const N=Q.content??"",A=Q.tool_call_id??"";C.push({role:"tool",content:N,tool_call_id:A});continue}}return C})(s),p=Array.isArray(i)?i.map(P=>({type:"function",function:{...P.function}})):void 0,g=r==="auto"?"auto":r&&typeof r=="object"&&"function"in r?{type:"function",function:{name:r.function.name}}:void 0,x=`${(t.baseUrl||"https://api.openai.com").replace(/\/$/,"")}/v1/chat/completions`,k={model:t.model,messages:f,stream:t.stream,...o?{response_format:o}:{},...p&&p.length?{tools:p}:{},...g?{tool_choice:g}:{}};t.stream&&(k.stream_options={include_usage:!0});const S=await fetch(x,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t.openaiApiKey}`},body:JSON.stringify(k),signal:n.signal});if(!S.ok){const P=await S.text();e.onError?.(new Error(P||`HTTP ${S.status}`));return}if(!t.stream){const P=await S.json(),C=P.choices?.[0],Q=(C?.message?.content??"")||"";P.usage&&e.onUsage?.({prompt_tokens:P.usage.prompt_tokens,completion_tokens:P.usage.completion_tokens,total_tokens:P.usage.total_tokens}),await Promise.resolve(e.onFinish?.(Q,C?.finish_reason??void 0));return}if(!S.body){e.onError?.(new Error("No response body for stream"));return}const w=new TextDecoder,$=S.body.getReader();let b="";for(;;){const{value:P,done:C}=await $.read();if(C)break;const Q=w.decode(P,{stream:!0});for(const N of Q.split(`
196
+ `)){const A=N.trim();if(!A.startsWith("data:"))continue;const X=A.replace("data: ","");if(X!=="[DONE]")try{const B=JSON.parse(X),H=B.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){B.usage&&e.onUsage?.(B.usage),await Promise.resolve(e.onFinish?.(b,H.finish_reason));return}}B.usage&&e.onUsage?.(B.usage)}catch{}}}}function Tp(){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 ib(n){return n.map(e=>({type:"function",function:{name:e.name,description:e.description,parameters:e.parameters}}))}async function rb(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 lb=()=>{try{return!!Gu()?.openaiApiKey}catch{return!1}};async function ob(n,e){const t=Gu();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(`
197
+ `),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(`
198
+
199
+ `),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 tM(n){if(!n)return null;try{return JSON.parse(n)}catch{return null}}function ab(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]=ab(s);return e}default:return}}}function nM(n){if(n)return ab(n)}function sM(n){return n.replace(/~1/g,"/").replace(/~0/g,"~")}function cb(n,e){if(!n||!e||!e.startsWith("#/"))return null;const t=e.slice(2).split("/").map(sM);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 Hy(n,e){if(!n)return n;if(n.$ref){const t=cb(e,n.$ref);if(t)return t}return n}const fr=({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),x=se.useMemo(()=>tM(n),[n]),k=se.useMemo(()=>x?.$ref&&cb(x,x.$ref)||x,[x]),S=se.useMemo(()=>nM(k),[k]),{register:w,control:$,watch:b,setValue:P,reset:C}=tb({defaultValues:S??{}}),Q=b();se.useEffect(()=>{O(lb())},[n]);const N=(R,V)=>{if(R)return V?V.split(".").reduce((Y,te)=>Y?Y[te]:void 0,R):R},A=(R,V,Y=[],te)=>{const pe=Hy(V,x)||V,ce=[...Y,R].join("."),U=pe.title||R,z=!!(te&&te.includes(R));if(pe.enum&&pe.enum.length>0)return d.jsx(Bs,{label:`${U}${z?" *":""}`,children:d.jsx(sb,{...w(ce),children:pe.enum.map((T,j)=>d.jsx("option",{value:String(T),children:String(T)},j))})},ce);switch(pe.type){case"string":return d.jsx(Bs,{label:`${U}${z?" *":""}`,children:d.jsx(tr,{value:N(Q,ce)??"",onChange:T=>P(ce,T.target.value,{shouldDirty:!0,shouldTouch:!0}),placeholder:pe.description||U})},ce);case"number":case"integer":return d.jsx(Bs,{label:`${U}${z?" *":""}`,children:d.jsx(tr,{type:"number",step:pe.type==="integer"?1:"any",value:N(Q,ce)??"",onChange:T=>{const j=T.target.value===""?void 0:Number(T.target.value);P(ce,j,{shouldDirty:!0,shouldTouch:!0})}})},ce);case"boolean":return d.jsx(Bs,{label:`${U}${z?" *":""}`,children:d.jsx(JA,{checked:!!N(Q,ce),onChange:T=>P(ce,T.target.checked,{shouldDirty:!0,shouldTouch:!0})})},ce);case"array":{const j=Hy(pe.items,x)?.type||"string";return d.jsx(Bs,{label:`${U}${z?" *":""}`,hint:`Array of ${j}. Comma-separated.`,children:d.jsx(tr,{value:(N(Q,ce)||[]).join(", "),onChange:L=>{const le=L.target.value.split(",").map(ee=>ee.trim()).filter(Boolean);P(ce,le,{shouldDirty:!0,shouldTouch:!0})}})},ce)}case"object":{const T=pe.properties||{};return d.jsxs("div",{className:"schema-renderer__object",children:[d.jsx("div",{className:"schema-renderer__object-title",children:U}),d.jsx("div",{className:"schema-renderer__grid",children:Object.entries(T).map(([j,L])=>A(j,L,[...Y,R],pe.required))})]},ce)}default:return d.jsx(Bs,{label:`${U}${z?" *":""}`,children:d.jsx(tr,{...w(ce)})},ce)}},X=R=>R?R.type==="object"&&R.properties?d.jsx(nu,{className:"schema-renderer__form",children:d.jsx("div",{className:"schema-renderer__grid",children:Object.entries(R.properties).map(([V,Y])=>A(V,Y,[],R.required))})}):d.jsx(nu,{className:"schema-renderer__form",children:A("value",R||{type:"string"})}):d.jsx(nu,{className:"schema-renderer__form",children:d.jsx("div",{className:"schema-renderer__empty",children:"No schema defined"})}),B=se.useMemo(()=>{try{return JSON.stringify(Q??{},null,2)}catch{return"{}"}},[Q]);se.useEffect(()=>{if(e)try{const R=JSON.stringify(Q??{});e(R,Q)}catch{e("{}",Q)}},[Q,e]);const H=se.useCallback(async()=>{await Sm(B)&&(u(!0),setTimeout(()=>u(!1),1500))},[B]),J=async()=>{if(n){p(!0);try{const R=await ob(n);R&&typeof R=="object"&&C(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:[x&&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&&x){const R=Np(x);R&&typeof R=="object"&&C(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:B_(n)}),s==="form"&&d.jsxs("div",{className:"schema-renderer__form-wrapper",children:[X(k),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:B})]})]}),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:B})]})]})};function Np(n){if(n){if(n.enum&&n.enum.length>0)return n.enum[0];switch(n.type){case"string":return iM();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 iM(){const n=["✨ stardust","🧪 lab-magic","🚀 rocket-fuel","🍕 pizza-slice","🧩 puzzle-piece","🐙 octo-value"];return n[Math.floor(Math.random()*n.length)]}const ub=({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,x]=se.useState(null),[k,S]=se.useState(null),[w,$]=se.useState(!1),[b,P]=se.useState(!1),C=se.useRef(null),Q=se.useRef(null),N=se.useRef(null),[A,X]=se.useState({}),[B,H]=se.useState(!1),J=se.useMemo(()=>{if(!t)return null;try{return JSON.parse(t)}catch(T){return n&&console.error("ExecuteModal - failed to parse schema:",{schemaString:t,error:T}),null}},[t,n]),R=se.useMemo(()=>{if(!J)return null;if(J.$ref&&J.definitions){const T=J.$ref.replace("#/definitions/","");return J.definitions[T]||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 T=j=>{j.key==="Escape"&&i(),(j.ctrlKey||j.metaKey)&&j.key==="Enter"&&(j.preventDefault(),p||U())};return window.addEventListener("keydown",T),()=>window.removeEventListener("keydown",T)},[n,i,p]),se.useEffect(()=>{s!==void 0&&c(s)},[s]),se.useEffect(()=>{if(!n)return;N.current=document.activeElement;const T=Q.current;if(T){const L=Array.from(T.querySelectorAll('button, [href], input, textarea, select, [tabindex]:not([tabindex="-1"])')).filter(le=>!le.hasAttribute("disabled"));L.length>0&&L[0].focus()}const j=L=>{if(L.key!=="Tab")return;const le=T?Array.from(T.querySelectorAll('button, [href], input, textarea, select, [tabindex]:not([tabindex="-1"])')).filter(he=>!he.hasAttribute("disabled")):[];if(le.length===0)return;const ee=le[0],ie=le[le.length-1];!L.shiftKey&&document.activeElement===ie&&(L.preventDefault(),ee.focus()),L.shiftKey&&document.activeElement===ee&&(L.preventDefault(),ie.focus())};return document.addEventListener("keydown",j),()=>{document.removeEventListener("keydown",j);try{N.current?.focus()}catch{}}},[n]),se.useEffect(()=>{P(lb())},[n]),se.useEffect(()=>{if(R&&R.properties){const T={};Object.entries(R.properties).forEach(([j,L])=>{if(L.default!==void 0)T[j]=L.default;else switch(L.type){case"string":T[j]="";break;case"number":case"integer":T[j]=0;break;case"boolean":T[j]=!1;break;case"array":T[j]=[];break;default:T[j]=""}}),X(T)}},[R]),se.useEffect(()=>{V&&Object.keys(A).length>0&&c(JSON.stringify(A,null,2))},[A,V]);const Y=(T,j)=>{X(L=>({...L,[T]:j}))},te=async()=>{if(!(!t||!R)){S(null),$(!0);try{const T=await ob(t),j={...A,...T||{}};X(j),c(JSON.stringify(j,null,2))}catch(T){S(T?.message||String(T))}finally{$(!1)}}},pe=(T,j)=>{const L=R.required&&R.required.includes(T),le=A[T]||"";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||T,L?" *":""]}),d.jsx("select",{className:"execute-modal__select",value:le,onChange:ee=>Y(T,ee.target.value),children:j.enum.map(ee=>d.jsx("option",{value:ee,children:ee},ee))})]},T);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=>Y(T,ee.target.checked)}),j.title||T,L?" *":""]})},T);case"number":case"integer":return d.jsxs("div",{className:"execute-modal__field",children:[d.jsxs("label",{className:"execute-modal__label",children:[j.title||T,L?" *":""]}),d.jsx("input",{type:"number",className:"execute-modal__input",value:le,step:j.type==="integer"?1:"any",placeholder:j.description,onChange:ee=>Y(T,ee.target.value?Number(ee.target.value):"")})]},T);default:return d.jsxs("div",{className:"execute-modal__field",children:[d.jsxs("label",{className:"execute-modal__label",children:[j.title||T,L?" *":""]}),d.jsx("input",{type:"text",className:"execute-modal__input",value:le,placeholder:j.description,onChange:ee=>Y(T,ee.target.value)})]},T)}},ce=T=>{if(!u)return T;try{const j=Function(`"use strict"; return (${T})`)();return JSON.stringify(j)}catch(j){throw new Error(j?.message||String(j))}},U=async()=>{S(null),x(null),g(!0);try{const T=ce(o),j=await r({inputJson:T,evalInput:!1});if(j.error)S(j.error);else if(j.output)try{const L=JSON.parse(j.output);x(JSON.stringify(L,null,2))}catch{x(j.output)}}catch(T){S(T?.message||String(T))}finally{g(!1)}};if(se.useEffect(()=>{if(!n)return;const T=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=`-${T}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,T)}},[n]),!n)return null;const z=d.jsx("div",{className:"execute-modal__overlay",role:"dialog","aria-modal":"true","aria-labelledby":"execute-modal-title",ref:C,onMouseDown:T=>{T.target===C.current&&i()},children:d.jsxs("div",{className:"execute-modal__container",ref:Q,"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||w,children:w?"Filling…":"✧ Prefill"}),d.jsxs("label",{className:"execute-modal__eval",children:[d.jsx("input",{type:"checkbox",checked:u,onChange:T=>f(T.target.checked)}),"Eval input"]}),d.jsx("button",{className:`btn btn-primary ${p?"execute-modal__loading":""}`,onClick:U,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(([T,j])=>pe(T,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${B?" execute-modal__copy-btn--copied":""}`,onClick:async()=>{await Sm(o||"")&&(H(!0),setTimeout(()=>H(!1),1200))},title:B?"Copied!":"Copy JSON","aria-label":B?"Copied":"Copy JSON",type:"button"})]}),d.jsx("textarea",{className:"execute-modal__textarea execute-modal__textarea--preview",value:o,onChange:T=>c(T.target.value),onKeyDown:T=>{(T.ctrlKey||T.metaKey)&&T.key==="Enter"&&(T.preventDefault(),p||U())},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:T=>c(T.target.value),onKeyDown:T=>{(T.ctrlKey||T.metaKey)&&T.key==="Enter"&&(T.preventDefault(),p||U())},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:[k&&d.jsx("pre",{className:"execute-modal__error",children:k}),O&&d.jsx("pre",{className:"execute-modal__code",children:O}),!O&&!k&&d.jsx("div",{className:"execute-modal__empty",children:"No response yet"})]})})]})]})});return iu.createPortal(z,document.body)},Pm=({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||ye(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||ye(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||ye(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||ye(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||ye(i.id)}),d.jsx("div",{className:"id",children:i.id})]},i.id))})]})]})]});function rr(...n){return n.filter(Boolean).join(" ")}const Ol=({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:rr(n,c),children:[d.jsx("div",{className:rr(`${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:rr(`${n}__content`,f),children:p})]})},It=({prefix:n,title:e,children:t,className:s,contentClassName:i})=>d.jsxs("div",{className:rr(`${n}__section`,s),children:[d.jsx("h4",{className:`${n}__section__title`,children:e}),d.jsx("div",{className:rr(`${n}__section__content`,i),children:t})]}),Ze=({prefix:n,label:e,children:t,className:s,valueClassName:i})=>d.jsxs("div",{className:rr(`${n}__info-block`,s),children:[d.jsx("div",{className:"label",children:e}),d.jsx("div",{className:rr("value",i),children:t})]}),rM=({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),[x,k]=se.useState(!1),[S,w]=se.useState(null),[$,b]=se.useState(!1),[P,C]=se.useState(null),[Q,N]=se.useState(null),[A,X]=se.useState(!1),[B,H]=se.useState(null),[J,R]=se.useState(!1);async function V(){if(n?.id){p(!0),k(!0),w(null);try{const te=await Tt(Dy,{id:n.id});O(te?.task?.fileContents??null)}catch(te){w(te?.message??"Failed to load file"),O(null)}finally{k(!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 Y(){if(n?.id){b(!0),X(!0),H(null);try{const[te,pe]=await Promise.all([Tt(pA,{id:n.id}),Tt(Dy,{id:n.id})]);C(te?.task?.coverage),N(pe?.task?.fileContents)}catch(te){H(te?.message??"Failed to load coverage data"),C(null),N(null)}finally{X(!1)}}}return d.jsxs(Ol,{prefix:"task-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[n.meta?.title||ye(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(It,{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:an(n.filePath)}):an(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:Y,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:ye(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(It,{prefix:"task-card",title:"Input Schema",contentClassName:"task-card__config",children:d.jsx(fr,{schemaString:n.inputSchema})}),o&&d.jsxs(It,{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||ye(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(It,{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||ye(te.id)},te.id))})})})]}),t.errors.length>0&&d.jsx(It,{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||ye(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(Pm,{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||ye(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(hr,{element:n,introspector:e,className:"task-card__tags-section"}),d.jsx(cn,{title:n.meta?.title||ye(n.id),subtitle:n.filePath||void 0,isOpen:f,onClose:()=>p(!1),code:x?"Loading...":S?`Error: ${S}`:g,enableEdit:!!n.filePath,saveOnFile:n.filePath||null}),d.jsx(ub,{isOpen:J,title:n.meta?.title||ye(n.id),schemaString:n.inputSchema,onClose:()=>R(!1),onInvoke:async({inputJson:te})=>{const pe=`
200
+ mutation InvokeTask($taskId: ID!, $inputJson: String, $evalInput: Boolean) {
201
+ invokeTask(taskId: $taskId, inputJson: $inputJson, evalInput: $evalInput) {
202
+ success
203
+ error
204
+ result
205
+ invocationId
206
+ }
207
+ }
208
+ `;try{const ce=await Tt(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(cn,{title:`${n.meta?.title||ye(n.id)} — Coverage Details`,subtitle:n.filePath||void 0,isOpen:$,onClose:()=>b(!1),code:A?"Loading coverage data...":B?`Error: ${B}`:Q,enableEdit:!1,saveOnFile:null,coverageData:P,showCoverage:!0})]})},lM=({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),[x,k]=se.useState(!1),[S,w]=se.useState(null),[$,b]=se.useState(!1),[P,C]=se.useState(null),[Q,N]=se.useState(null),[A,X]=se.useState(!1),[B,H]=se.useState(null);async function J(){if(n?.id){p(!0),k(!0),w(null);try{const V=await Tt(Ly,{id:n.id});O(V?.resource?.fileContents??null)}catch(V){w(V?.message??"Failed to load file"),O(null)}finally{k(!1)}}}async function R(){if(n?.id){b(!0),X(!0),H(null);try{const[V,Y]=await Promise.all([Tt(mA,{id:n.id}),Tt(Ly,{id:n.id})]);C(V?.resource?.coverage),N(Y?.resource?.fileContents)}catch(V){H(V?.message??"Failed to load coverage data"),C(null),N(null)}finally{X(!1)}}}return d.jsxs(Ol,{prefix:"resource-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[n.meta?.title||ye(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(It,{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:an(n.filePath)}):an(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:ye(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(It,{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:F_(n.config)})]}),d.jsxs("div",{className:"resource-card__config__subsection",children:[d.jsx("h5",{children:"Configuration Schema"}),d.jsx(fr,{schemaString:n.configSchema})]})]}),o&&d.jsxs(It,{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||ye(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||ye(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(Pm,{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||ye(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||ye(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||ye(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(hr,{element:n,introspector:e,className:"resource-card__tags-section"}),d.jsx(cn,{title:n.meta?.title||ye(n.id),subtitle:n.filePath||void 0,isOpen:f,onClose:()=>p(!1),code:x?"Loading...":S?`Error: ${S}`:g,enableEdit:!!n.filePath,saveOnFile:n.filePath||null}),d.jsx(cn,{title:`${n.meta?.title||ye(n.id)} — Coverage Details`,subtitle:n.filePath||void 0,isOpen:$,onClose:()=>b(!1),code:A?"Loading coverage data...":B?`Error: ${B}`:Q,enableEdit:!1,saveOnFile:null,coverageData:P,showCoverage:!0})]})},oM=({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 x(){if(n?.id){o(!0),p(!0),O(null);try{const S=await Tt(gA,{id:n.id});u(S?.middleware?.fileContents??null)}catch(S){O(S?.message??"Failed to load file"),u(null)}finally{p(!1)}}}const k=se.useMemo(()=>{const S=[];if(n.meta?.description&&S.push(d.jsx("p",{children:n.meta.description},"description")),n.global?.enabled&&S.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")),S.length!==0)return d.jsx(d.Fragment,{children:S})},[n]);return d.jsxs(Ol,{prefix:"middleware-card",elementId:n.id,title:n.meta?.title||ye(n.id),id:n.id,description:k,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(It,{prefix:"middleware-card",title:"Overview",children:[d.jsx(Ze,{prefix:"middleware-card",label:"File Path:",children:n.filePath?d.jsx("a",{type:"button",onClick:x,title:"View file contents",children:an(n.filePath)}):an(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(S=>d.jsx("a",{href:`#element-${S.id}`,className:"clean-button",children:ye(S.id)},S.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(It,{prefix:"middleware-card",title:"Configuration Schema",contentClassName:"middleware-card__config",children:d.jsx(fr,{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(S=>d.jsxs("a",{href:`#element-${S.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:S.node.meta?.title||ye(S.id)}),d.jsx("div",{className:"id",children:S.id})]}),S.config&&d.jsx("span",{className:"configured-badge configured-badge--task",children:"Configured"})]}),S.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:S.config})]})]},S.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(S=>d.jsxs("a",{href:`#element-${S.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:S.node.meta?.title||ye(S.id)}),d.jsx("div",{className:"id",children:S.id})]}),S.config&&d.jsx("span",{className:"configured-badge configured-badge--resource",children:"Configured"})]}),S.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:S.config})]})]},S.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(S=>d.jsxs("a",{href:`#element-${S.id}`,className:"middleware-card__event-item middleware-card__event-link",children:[d.jsx("div",{className:"title",children:S.meta?.title||ye(S.id)}),d.jsx("div",{className:"id",children:S.id})]},S.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(hr,{element:n,introspector:e,className:"middleware-card__tags-section"}),d.jsx(cn,{title:n.meta?.title||ye(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})]})},aM=({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 x(){if(n?.id){o(!0),p(!0),O(null);try{const b=await Tt(OA,{id:n.id});u(b?.event?.fileContents??null)}catch(b){O(b?.message??"Failed to load file"),u(null)}finally{p(!1)}}}const S=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"},[w,$]=se.useState(!1);return se.useEffect(()=>{const b=P=>{const C=P;C?.detail?.type==="event"&&C.detail.id===n.id&&$(!0)};return window.addEventListener("docs:execute-element",b),()=>window.removeEventListener("docs:execute-element",b)},[n.id]),d.jsxs(Ol,{prefix:"event-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[i?n.meta?.title||"Global Event":n.meta?.title||ye(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(It,{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:x,title:"View file contents",children:an(n.filePath)}):an(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 ${S.className}`,children:S.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:ye(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:ye(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(It,{prefix:"event-card",title:"Payload Schema",contentClassName:"event-card__config",children:d.jsx(fr,{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 P="event-card__emitter",C="📤";return"emits"in b&&Array.isArray(b.emits)?"dependsOn"in b&&"middleware"in b?(P+=" event-card__emitter--task",C="Task"):"event"in b&&(P+=" event-card__emitter--hook",C="Hook"):"config"in b&&(P+=" event-card__emitter--resource",C="Resource"),d.jsx("a",{href:`#element-${b.id}`,className:`${P} event-card__emitter-link`,children:d.jsxs("div",{className:"event-card__emitter__content",children:[d.jsx("span",{children:C}),d.jsxs("div",{className:"event-card__emitter__info",children:[d.jsx("div",{className:`title ${P.includes("--task")?"title--task":P.includes("--hook")?"title--hook":"title--resource"}`,children:b.meta?.title||ye(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||ye(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(hr,{element:n,introspector:e,className:"event-card__tags-section"}),d.jsx(cn,{title:i?n.meta?.title||"Global Event":n.meta?.title||ye(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(ub,{isOpen:w,title:n.meta?.title||ye(n.id),schemaString:n.payloadSchema,onClose:()=>$(!1),onInvoke:async({inputJson:b})=>{const P=`
209
+ mutation InvokeEvent($eventId: ID!, $inputJson: String, $evalInput: Boolean) {
210
+ invokeEvent(eventId: $eventId, inputJson: $inputJson, evalInput: $evalInput) {
211
+ success
212
+ error
213
+ invocationId
214
+ }
215
+ }
216
+ `;try{const C=await Tt(P,{eventId:n.id,inputJson:b?.trim()||void 0,evalInput:!1});return{output:C.invokeEvent.success?"Event invoked successfully":C.invokeEvent.error??void 0,error:C.invokeEvent.error??void 0}}catch(C){return{error:C?.message??String(C)}}}})]})},cM=({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 x(){if(n?.id){o(!0),p(!0),O(null);try{const k=await Tt(vA,{id:n.id});u(k?.hook?.fileContents??null)}catch(k){O(k?.message??"Failed to load file"),u(null)}finally{p(!1)}}}return d.jsxs(d.Fragment,{children:[d.jsxs(It,{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:x,children:an(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(k=>d.jsxs("div",{children:[d.jsx("a",{href:`#element-${k.id}`,className:"hook-card__event-link",children:ye(k.id)}),k.meta?.title&&d.jsxs("div",{children:["(",k.meta.title,")"]})]},k.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:V_(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(k=>d.jsx("a",{href:`#element-${k.id}`,className:"clean-button",children:ye(k.id)},k.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(cn,{title:n.meta?.title||ye(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})]})},uM=({isGlobal:n,targetEvents:e,introspector:t})=>n?d.jsxs(It,{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(It,{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(It,{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||ye(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(fr,{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))}),dM=({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(Ol,{prefix:"hook-card",elementId:n.id,title:d.jsxs(d.Fragment,{children:[r?"🌐":"🪝"," ",n.meta?.title||ye(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(cM,{hook:n,targetEvents:i,isGlobal:r,introspector:e})}),d.jsx("div",{children:d.jsx(uM,{isGlobal:r,targetEvents:i,introspector:e})})]}),d.jsx(Pm,{dependencies:t,emittedEvents:s,className:"hook-card__relations"}),d.jsx(hr,{element:n,introspector:e,className:"hook-card__tags-section"})]})})},hM=({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||ye(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||ye(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||ye(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||ye(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||ye(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)})})]})]})]}),fM=({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),[x,k]=se.useState(null),[S,w]=se.useState(null);async function $(){if(n?.id){i(!0),O(!0),k(null),o(n.meta?.title||ye(n.id)),u(n.filePath||void 0),w(n.filePath||null);try{const b=await Tt(xA,{id:n.id});p(b?.tag?.fileContents??null)}catch(b){k(b?.message??"Failed to load file"),p(null)}finally{O(!1)}}}return d.jsxs(Ol,{prefix:"tag-card",elementId:n.id,title:n.meta?.title||ye(n.id),id:n.id,description:n.meta?.description,children:[d.jsxs("div",{className:"tag-card__grid",children:[d.jsxs(It,{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:an(n.filePath)}):an(n.filePath)})]}),d.jsx(It,{prefix:"tag-card",title:"Configuration Schema",contentClassName:"tag-card__config",children:d.jsx(fr,{schemaString:n.configSchema})})]}),d.jsx(hM,{tag:n,introspector:e}),d.jsx(cn,{title:r,subtitle:c,isOpen:s,onClose:()=>i(!1),code:g?"Loading...":x?`Error: ${x}`:f,enableEdit:!!S,saveOnFile:S})]})};function pM(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 mM=({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),[x,k]=se.useState(null);async function S(){if(n?.id){u(!0),O(!0),k(null);try{const w=await Tt(yA,{id:n.id});p(w?.error?.fileContents??null)}catch(w){k(w?.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||ye(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:S,title:"View file contents",children:an(n.filePath)}):an(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(w=>d.jsx("a",{href:`#element-${w.id}`,className:"clean-button",children:ye(w.id)},w.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(w=>d.jsxs("a",{href:`#element-${w.id}`,className:`error-card__thrower-link ${pM(w)}`,children:[d.jsx("div",{className:"title",children:w.meta?.title||ye(w.id)}),d.jsx("div",{className:"id",children:w.id})]},w.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(fr,{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(w=>d.jsxs("a",{href:`#element-${w.id}`,className:"error-card__relation-item error-card__relation-item--task error-card__relation-link",children:[d.jsx("div",{className:"title title--task",children:w.meta?.title||ye(w.id)}),d.jsx("div",{className:"id",children:w.id})]},w.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(w=>d.jsxs("a",{href:`#element-${w.id}`,className:"error-card__relation-item error-card__relation-item--resource error-card__relation-link",children:[d.jsx("div",{className:"title title--resource",children:w.meta?.title||ye(w.id)}),d.jsx("div",{className:"id",children:w.id})]},w.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(w=>d.jsxs("a",{href:`#element-${w.id}`,className:"error-card__relation-item error-card__relation-item--hook error-card__relation-link",children:[d.jsx("div",{className:"title title--hook",children:w.meta?.title||ye(w.id)}),d.jsx("div",{className:"id",children:w.id})]},w.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(w=>d.jsxs("a",{href:`#element-${w.id}`,className:"error-card__relation-item error-card__relation-item--middleware error-card__relation-link",children:[d.jsx("div",{className:"title title--middleware",children:w.meta?.title||ye(w.id)}),d.jsx("div",{className:"id",children:w.id})]},w.id))})]})]})]}),d.jsx(hr,{element:n,introspector:e,className:"error-card__tags-section"})]}),d.jsx(cn,{title:n.meta?.title||ye(n.id),subtitle:n.filePath||void 0,isOpen:c,onClose:()=>u(!1),code:g?"Loading...":x?`Error: ${x}`:f,enableEdit:!!n.filePath,saveOnFile:n.filePath||null})]})},gM=({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,x]=se.useState(!1),[k,S]=se.useState(null);async function w(){if(n?.id){f(!0),x(!0),S(null);try{const $=await Tt(kA,{id:n.id});g($?.asyncContext?.fileContents??null)}catch($){S($?.message??"Failed to load file"),g(null)}finally{x(!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||ye(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:w,title:"View file contents",children:an(n.filePath)}):an(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:ye($.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||ye($.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||ye($.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||ye($.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||ye($.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||ye($.id)}),d.jsx("div",{className:"id",children:$.id})]},$.id))})]})]})]}),d.jsx(hr,{element:n,introspector:e,className:"async-context-card__tags-section"})]}),d.jsx(cn,{title:n.meta?.title||ye(n.id),subtitle:n.filePath||void 0,isOpen:u,onClose:()=>f(!1),code:O?"Loading...":k?`Error: ${k}`:p,enableEdit:!!n.filePath,saveOnFile:n.filePath||null})]})},OM=({introspector:n,detailed:e=!1})=>{const[t,s]=F.useState("summary");se.useEffect(()=>{const w=setTimeout(()=>{window.dispatchEvent(new CustomEvent("docs:diagnostic-change"))},0);return()=>clearTimeout(w)},[]);const i=n.getDiagnostics(),r=n.getOrphanEvents(),o=n.getUnemittedEvents(),c=n.getUnusedMiddleware(),u=n.getOverrideConflicts(),f=i.filter(w=>w.severity==="error").length,p=i.filter(w=>w.severity==="warning").length,g=i.filter(w=>w.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}],x=(w,$,b,P,C,Q)=>d.jsxs("div",{className:`diagnostics-panel__summary-card ${Q||""}`,children:[d.jsxs("div",{className:"diagnostics-panel__summary-card__header",children:[d.jsx("span",{className:"icon",children:P}),d.jsx("h4",{children:w})]}),d.jsx("div",{className:"diagnostics-panel__summary-card__value",children:$}),d.jsx("div",{className:"diagnostics-panel__summary-card__description",children:C})]}),k=w=>{const $=w.nodeId?"a":"div",b=w.nodeId?{href:`#element-${w.nodeId}`,className:`diagnostics-panel__item diagnostics-panel__item--${w.severity} diagnostics-panel__item--clickable`}:{className:`diagnostics-panel__item diagnostics-panel__item--${w.severity}`};return d.jsx($,{...b,children:d.jsxs("div",{className:"diagnostics-panel__item-content",children:[d.jsx("span",{className:"icon",children:X_(w.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--${w.severity}`,children:w.severity}),d.jsx("span",{className:"diagnostics-panel__code-badge",children:w.code})]}),d.jsx("div",{className:"diagnostics-panel__message",children:w.message}),w.nodeId&&d.jsxs("div",{className:"diagnostics-panel__node-info",children:[d.jsxs("div",{children:[d.jsx("strong",{children:"Node:"})," ",ye(w.nodeId)]}),w.nodeKind&&d.jsxs("div",{children:[d.jsx("strong",{children:"Type:"})," ",w.nodeKind]})]})]}),w.nodeId&&d.jsx("div",{className:"diagnostics-panel__click-indicator",children:"🔗"})]})},`${w.code}-${w.nodeId||"global"}`)},S=(w,$,b,P,C,Q,N)=>d.jsxs("div",{className:"diagnostics-panel__special-section",children:[d.jsxs("h4",{children:[d.jsx("span",{className:"icon",children:b}),$," (",w.length,")"]}),w.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:w.map((A,X)=>{const B=C(A),H=!!(B&&String(B).trim()),J=H?String(B):"(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:Q?Q(A):ye(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(w=>d.jsxs("button",{onClick:()=>s(w.id),className:`diagnostics-panel__tab ${t===w.id?"diagnostics-panel__tab--active":""}`,children:[w.label,w.count>0&&d.jsx("span",{className:"diagnostics-panel__tab-count",children:w.count})]},w.id))}),d.jsxs("div",{className:"diagnostics-panel__content",children:[t==="summary"&&d.jsxs("div",{children:[d.jsxs("div",{className:"diagnostics-panel__detailed-grid",children:[x("Total Issues",i.length,"#6c757d","📊","All diagnostic items","diagnostics-panel__summary-card--total"),x("Errors",f,"#dc3545","❌","Critical issues requiring attention","diagnostics-panel__summary-card--errors"),x("Warnings",p,"#ffc107","⚠️","Potential problems to review","diagnostics-panel__summary-card--warnings"),x("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(k)})]})]}),t==="errors"&&d.jsx("div",{children:d.jsxs("div",{className:"diagnostics-panel__items",children:[i.filter(w=>w.severity==="error").map(k),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(w=>w.severity==="warning").map(k),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"&&S(r,"Orphan Events","👻","#6f42c1",w=>w.id,w=>`${ye(w.id)} (No listeners)`,"diagnostics-panel__special-section__item--orphan"),t==="unemitted"&&S(o,"Unemitted Events","📤","#fd7e14",w=>w.id,w=>`${ye(w.id)} (No emitters)`,"diagnostics-panel__special-section__item--unused"),t==="unused"&&S(c,"Unused Middleware","🔗","#6c757d",w=>w.id,w=>`${ye(w.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((w,$)=>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-${w.targetId}`,className:"diagnostics-panel__conflict-link",children:ye(w.targetId)})," ← overridden by → ",d.jsx("a",{href:`#element-${w.by}`,className:"diagnostics-panel__conflict-link",children:ye(w.by)})]}),d.jsxs("div",{className:"id",children:["Target: ",w.targetId]})]},$))})]})]})]}):d.jsxs("div",{className:"diagnostics-panel__summary-grid",children:[x("Errors",f,"#dc3545","❌","Critical issues","diagnostics-panel__summary-card--errors"),x("Warnings",p,"#ffc107","⚠️","Potential problems","diagnostics-panel__summary-card--warnings"),x("Orphan Events",r.length,"#6f42c1","👻","Events with no listeners","diagnostics-panel__summary-card--orphans"),x("Unused Middleware",c.length,"#fd7e14","🔗","Middleware not in use","diagnostics-panel__summary-card--unused"),x("Override Conflicts",u.length,"#dc3545","⚔️","Resource override issues","diagnostics-panel__summary-card--conflicts")]})},vM=({data:n})=>{const[e,t]=F.useState(()=>{const u=[],f=(p,g,O)=>{O>=4||typeof p!="object"||p===null||(u.push(g),Object.keys(p).forEach(x=>{f(p[x],`${g}.${x}`,O+1)}))};return f(n,"root",0),u}),[s,i]=F.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((x,k)=>d.jsxs("div",{className:"json-key-value",children:[!p&&d.jsxs("span",{className:"json-key",children:['"',x,'":']}),c(u[x],`${f}.${x}`),k<g.length-1&&d.jsx("span",{children:","})]},k))}),!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),x=O?p:p.substring(0,g);return d.jsxs("span",{className:`json-value json-value--${typeof u}`,children:[x,!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")})},Cf=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"},Ky=(n,e=6)=>n?n.length>e?n.slice(-e):n:"",xM=({logs:n})=>{const[e,t]=F.useState(!1),[s,i]=F.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=F.useMemo(()=>[...e?n:n.slice(-50)].reverse(),[n,e]),u=F.useMemo(()=>s===null?null:c[s]??null,[s,c]);return F.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--${Cf(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:Ky(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--${Cf(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:Ky(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--${Cf(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(vM,{data:f}):d.jsx("pre",{className:"recent-logs-modal__pre",children:u.data})})()})]})]})]})})]})}),document.body)]})},yM=({emissions:n,detailed:e=!1})=>{const[t,s]=F.useState(null),[i,r]=F.useState(null),[o,c]=F.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(cn,{title:"Event Payload",subtitle:i||void 0,isOpen:o,onClose:f,code:t})]})},kM=({runs:n,errors:e,detailed:t=!1})=>{const[s,i]=F.useState(null),[r,o]=F.useState(null),[c,u]=F.useState(!1),f=(O,x)=>{i(O),o(x),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,x)=>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 S=`I have the following error on @${O.sourceResolved&&O.sourceResolved.id||O.sourceId}: ${O.message} with stack:
217
+ ${O.stack||""}`,w=S;window.dispatchEvent(new CustomEvent("docs:add-to-ai",{detail:{messageText:S,displayText:w}}))},children:"✦"})]})]},`${O.timestampMs}-${x}`))})]}),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,x)=>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}-${x}`))})]}),d.jsx(cn,{title:"Error Stack Trace",subtitle:r||void 0,isOpen:c,onClose:p,code:s})]})},SM=`
218
+ query LiveData($afterTimestamp: Float, $last: Int) {
219
+ live {
220
+ memory {
221
+ heapUsed
222
+ heapTotal
223
+ rss
224
+ }
225
+ cpu {
226
+ usage
227
+ loadAverage
228
+ }
229
+ eventLoop {
230
+ lag
231
+ }
232
+ gc(windowMs: 30000) {
233
+ collections
234
+ duration
235
+ }
236
+ logs(afterTimestamp: $afterTimestamp, last: $last) {
237
+ timestampMs
238
+ level
239
+ message
240
+ data
241
+ correlationId
242
+ sourceId
243
+ }
244
+ emissions(afterTimestamp: $afterTimestamp, last: $last) {
245
+ timestampMs
246
+ eventId
247
+ emitterId
248
+ payload
249
+ correlationId
250
+ eventResolved {
251
+ id
252
+ tags {
253
+ id
254
+ config
255
+ }
256
+ meta {
257
+ title
258
+ description
259
+ }
260
+ }
261
+ }
262
+ errors(afterTimestamp: $afterTimestamp, last: $last) {
263
+ timestampMs
264
+ sourceId
265
+ sourceKind
266
+ message
267
+ stack
268
+ data
269
+ correlationId
270
+ sourceResolved {
271
+ id
272
+ tags {
273
+ id
274
+ config
275
+ }
276
+ meta {
277
+ title
278
+ description
279
+ }
280
+ }
281
+ }
282
+ runs(afterTimestamp: $afterTimestamp, last: $last) {
283
+ timestampMs
284
+ nodeId
285
+ nodeKind
286
+ ok
287
+ durationMs
288
+ error
289
+ }
290
+ }
291
+ }
292
+ `,wM=({detailed:n=!1,introspector:e})=>{const[t,s]=F.useState(null),[i,r]=F.useState(!0),[o,c]=F.useState(null),[u,f]=F.useState(Date.now()),p=F.useRef(null),g=async x=>{try{const k={last:n?50:10};x&&(k.afterTimestamp=x);const S=await Tt(SM,k);if(S.live){s($=>!$||!x?S.live:{...S.live,logs:[...$.logs,...S.live.logs].slice(-100),emissions:[...$.emissions,...S.live.emissions].slice(-100),errors:[...$.errors,...S.live.errors].slice(-100),runs:[...$.runs,...S.live.runs].slice(-100)});const w=[...S.live.logs,...S.live.emissions,...S.live.errors,...S.live.runs];if(w.length>0){const $=Math.max(...w.map(b=>b.timestampMs));f($)}}c(null)}catch(k){c(k instanceof Error?k.message:"Failed to fetch live data")}};F.useEffect(()=>(g(),i&&(p.current=setInterval(()=>{g(u)},5e3)),()=>{p.current&&clearInterval(p.current)}),[i,u]);const O=x=>`${(x/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(xM,{logs:t.logs})}),d.jsxs("div",{className:"live-events-runs-grid",children:[d.jsx("div",{className:"live-section",children:d.jsx(yM,{emissions:t.emissions,detailed:n})}),d.jsx("div",{className:"live-section",children:d.jsx(kM,{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 Qm(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var pr=Qm();function db(n){pr=n}var jo={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(rn.caret,"$1"),t=t.replace(i,o),s},getRegex:()=>new RegExp(t,e)};return s}var rn={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")},bM=/^(?:[ \t]*(?:\n|$))+/,_M=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,$M=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,oa=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,CM=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,jm=/(?:[*+-]|\d{1,9}[.)])/,hb=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,fb=Ke(hb).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(),PM=Ke(hb).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(),Tm=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,QM=/^[^\n]+/,Nm=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,jM=Ke(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Nm).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),TM=Ke(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,jm).getRegex(),Ku="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]*?(?:-->|$))/,NM=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",Ku).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),pb=Ke(Tm).replace("hr",oa).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",Ku).getRegex(),EM=Ke(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",pb).getRegex(),Am={blockquote:EM,code:_M,def:jM,fences:$M,heading:CM,hr:oa,html:NM,lheading:fb,list:TM,newline:bM,paragraph:pb,table:jo,text:QM},Jy=Ke("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",oa).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",Ku).getRegex(),AM={...Am,lheading:PM,table:Jy,paragraph:Ke(Tm).replace("hr",oa).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Jy).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",Ku).getRegex()},MM={...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:jo,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Ke(Tm).replace("hr",oa).replace("heading",` *#{1,6} *[^
293
+ ]`).replace("lheading",fb).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},RM=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,DM=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,mb=/^( {2,}|\\)\n(?!\s*$)/,LM=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Ju=/[\p{P}\p{S}]/u,Mm=/[\s\p{P}\p{S}]/u,gb=/[^\s\p{P}\p{S}]/u,IM=Ke(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Mm).getRegex(),Ob=/(?!~)[\p{P}\p{S}]/u,ZM=/(?!~)[\s\p{P}\p{S}]/u,zM=/(?:[^\s\p{P}\p{S}]|~)/u,BM=/\[[^\[\]]*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)|`[^`]*?`|<(?! )[^<>]*?>/g,vb=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,FM=Ke(vb,"u").replace(/punct/g,Ju).getRegex(),XM=Ke(vb,"u").replace(/punct/g,Ob).getRegex(),xb="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",VM=Ke(xb,"gu").replace(/notPunctSpace/g,gb).replace(/punctSpace/g,Mm).replace(/punct/g,Ju).getRegex(),qM=Ke(xb,"gu").replace(/notPunctSpace/g,zM).replace(/punctSpace/g,ZM).replace(/punct/g,Ob).getRegex(),YM=Ke("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,gb).replace(/punctSpace/g,Mm).replace(/punct/g,Ju).getRegex(),UM=Ke(/\\(punct)/,"gu").replace(/punct/g,Ju).getRegex(),WM=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(),GM=Ke(Em).replace("(?:-->|$)","-->").getRegex(),HM=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",GM).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Mu=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`[^`]*`|[^\[\]\\`])*?/,KM=Ke(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Mu).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),yb=Ke(/^!?\[(label)\]\[(ref)\]/).replace("label",Mu).replace("ref",Nm).getRegex(),kb=Ke(/^!?\[(ref)\](?:\[\])?/).replace("ref",Nm).getRegex(),JM=Ke("reflink|nolink(?!\\()","g").replace("reflink",yb).replace("nolink",kb).getRegex(),Rm={_backpedal:jo,anyPunctuation:UM,autolink:WM,blockSkip:BM,br:mb,code:DM,del:jo,emStrongLDelim:FM,emStrongRDelimAst:VM,emStrongRDelimUnd:YM,escape:RM,link:KM,nolink:kb,punctuation:IM,reflink:yb,reflinkSearch:JM,tag:HM,text:LM,url:jo},eR={...Rm,link:Ke(/^!?\[(label)\]\((.*?)\)/).replace("label",Mu).getRegex(),reflink:Ke(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Mu).getRegex()},Ep={...Rm,emStrongRDelimAst:qM,emStrongLDelim:XM,url:Ke(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").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:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},tR={...Ep,br:Ke(mb).replace("{2,}","*").getRegex(),text:Ke(Ep.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Zc={normal:Am,gfm:AM,pedantic:MM},fo={normal:Rm,gfm:Ep,breaks:tR,pedantic:eR},nR={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},e0=n=>nR[n];function gs(n,e){if(e){if(rn.escapeTest.test(n))return n.replace(rn.escapeReplace,e0)}else if(rn.escapeTestNoEncode.test(n))return n.replace(rn.escapeReplaceNoEncode,e0);return n}function t0(n){try{n=encodeURI(n).replace(rn.percentDecode,"%")}catch{return null}return n}function n0(n,e){let t=n.replace(rn.findPipe,(r,o,c)=>{let u=!1,f=o;for(;--f>=0&&c[f]==="\\";)u=!u;return u?"|":" |"}),s=t.split(rn.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(rn.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 sR(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 s0(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 iR(n,e,t){let s=n.match(t.other.indentCodeCompensation);if(s===null)return e;let i=s[1];return e.split(`
294
+ `).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(`
295
+ `)}var Ru=class{options;rules;lexer;constructor(n){this.options=n||pr}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,`
296
+ `)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],s=iR(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],`
297
+ `)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=po(e[0],`
298
+ `).split(`
299
+ `),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(`
300
+ `),p=f.replace(this.rules.other.blockquoteSetextReplace,`
301
+ $1`).replace(this.rules.other.blockquoteSetextReplace2,"");s=s?`${s}
302
+ ${f}`:f,i=i?`${i}
303
+ ${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 x=O,k=x.raw+`
304
+ `+t.join(`
305
+ `),S=this.blockquote(k);r[r.length-1]=S,s=s.substring(0,s.length-x.raw.length)+S.raw,i=i.substring(0,i.length-x.text.length)+S.text;break}else if(O?.type==="list"){let x=O,k=x.raw+`
306
+ `+t.join(`
307
+ `),S=this.list(k);r[r.length-1]=S,s=s.substring(0,s.length-O.raw.length)+S.raw,i=i.substring(0,i.length-x.raw.length)+S.raw,t=k.substring(r.at(-1).raw.length).split(`
308
+ `);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(`
309
+ `,1)[0].replace(this.rules.other.listReplaceTabs,$=>" ".repeat(3*$.length)),O=n.split(`
310
+ `,1)[0],x=!g.trim(),k=0;if(this.options.pedantic?(k=2,p=g.trimStart()):x?k=e[1].length+1:(k=e[2].search(this.rules.other.nonSpaceChar),k=k>4?1:k,p=g.slice(k),k+=e[1].length),x&&this.rules.other.blankLine.test(O)&&(f+=O+`
311
+ `,n=n.substring(O.length+1),u=!0),!u){let $=this.rules.other.nextBulletRegex(k),b=this.rules.other.hrRegex(k),P=this.rules.other.fencesBeginRegex(k),C=this.rules.other.headingBeginRegex(k),Q=this.rules.other.htmlBeginRegex(k);for(;n;){let N=n.split(`
312
+ `,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," "),P.test(O)||C.test(O)||Q.test(O)||$.test(O)||b.test(O))break;if(A.search(this.rules.other.nonSpaceChar)>=k||!O.trim())p+=`
313
+ `+A.slice(k);else{if(x||g.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||P.test(g)||C.test(g)||b.test(g))break;p+=`
314
+ `+O}!x&&!O.trim()&&(x=!0),f+=N+`
315
+ `,n=n.substring(N.length+1),g=A.slice(k)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(f)&&(o=!0));let S=null,w;this.options.gfm&&(S=this.rules.other.listIsTask.exec(p),S&&(w=S[0]!=="[ ] ",p=p.replace(this.rules.other.listReplaceTask,""))),i.items.push({type:"list_item",raw:f,task:!!S,checked:w,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=n0(e[1]),s=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
316
+ `):[],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(n0(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)===`
317
+ `?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=sR(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)),s0(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 s0(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 x=g.slice(1,-1);return{type:"em",raw:g,text:x,tokens:this.lexer.inlineTokens(x)}}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}}}},Vs=class Ap{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||pr,this.options.tokenizer=this.options.tokenizer||new Ru,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:rn,block:Zc.normal,inline:fo.normal};this.options.pedantic?(t.block=Zc.pedantic,t.inline=fo.pedantic):this.options.gfm&&(t.block=Zc.gfm,this.options.breaks?t.inline=fo.breaks:t.inline=fo.gfm),this.tokenizer.rules=t}static get rules(){return{block:Zc,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(rn.carriageReturn,`
318
+ `),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(rn.tabCharGlobal," ").replace(rn.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+=`
319
+ `: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(`
320
+ `)?"":`
321
+ `)+i.raw,o.text+=`
322
+ `+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(`
323
+ `)?"":`
324
+ `)+i.raw,o.text+=`
325
+ `+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(`
326
+ `)?"":`
327
+ `)+i.raw,o.text+=`
328
+ `+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(`
329
+ `)?"":`
330
+ `)+i.raw,o.text+=`
331
+ `+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);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}},Du=class{options;parser;constructor(n){this.options=n||pr}space(n){return""}code({text:n,lang:e,escaped:t}){let s=(e||"").match(rn.notSpaceStart)?.[0],i=n.replace(rn.endingNewline,"")+`
332
+ `;return s?'<pre><code class="language-'+gs(s)+'">'+(t?i:gs(i,!0))+`</code></pre>
333
+ `:"<pre><code>"+(t?i:gs(i,!0))+`</code></pre>
334
+ `}blockquote({tokens:n}){return`<blockquote>
335
+ ${this.parser.parse(n)}</blockquote>
336
+ `}html({text:n}){return n}def(n){return""}heading({tokens:n,depth:e}){return`<h${e}>${this.parser.parseInline(n)}</h${e}>
337
+ `}hr(n){return`<hr>
338
+ `}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+`>
339
+ `+s+"</"+i+`>
340
+ `}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+" "+gs(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>
341
+ `}checkbox({checked:n}){return"<input "+(n?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:n}){return`<p>${this.parser.parseInline(n)}</p>
342
+ `}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>
343
+ <thead>
344
+ `+e+`</thead>
345
+ `+s+`</table>
346
+ `}tablerow({text:n}){return`<tr>
347
+ ${n}</tr>
348
+ `}tablecell(n){let e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+`</${t}>
349
+ `}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>${gs(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=t0(n);if(i===null)return s;n=i;let r='<a href="'+n+'"';return e&&(r+=' title="'+gs(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=t0(n);if(i===null)return gs(t);n=i;let r=`<img src="${n}" alt="${t}"`;return e&&(r+=` title="${gs(e)}"`),r+=">",r}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:gs(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""}},qs=class Mp{options;renderer;textRenderer;constructor(e){this.options=e||pr,this.options.renderer=this.options.renderer||new Du,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+=`
350
+ `+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}},su=class{options;block;constructor(n){this.options=n||pr}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}provideLexer(){return this.block?Vs.lex:Vs.lexInline}provideParser(){return this.block?qs.parse:qs.parseInline}},rR=class{defaults=Qm();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=qs;Renderer=Du;TextRenderer=Dm;Lexer=Vs;Tokenizer=Ru;Hooks=su;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 Du(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 Ru(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 su;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];su.passThroughHooks.has(r)?i[o]=f=>{if(this.defaults.async)return Promise.resolve(c.call(i,f)).then(g=>u.call(i,g));let p=c.call(i,f);return u.call(i,p)}:i[o]=(...f)=>{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 Vs.lex(n,e??this.defaults)}parser(n,e){return qs.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"));i.hooks&&(i.hooks.options=i,i.hooks.block=n);let o=i.hooks?i.hooks.provideLexer():n?Vs.lex:Vs.lexInline,c=i.hooks?i.hooks.provideParser():n?qs.parse:qs.parseInline;if(i.async)return Promise.resolve(i.hooks?i.hooks.preprocess(e):e).then(u=>o(u,i)).then(u=>i.hooks?i.hooks.processAllTokens(u):u).then(u=>i.walkTokens?Promise.all(this.walkTokens(u,i.walkTokens)).then(()=>u):u).then(u=>c(u,i)).then(u=>i.hooks?i.hooks.postprocess(u):u).catch(r);try{i.hooks&&(e=i.hooks.preprocess(e));let u=o(e,i);i.hooks&&(u=i.hooks.processAllTokens(u)),i.walkTokens&&this.walkTokens(u,i.walkTokens);let f=c(u,i);return i.hooks&&(f=i.hooks.postprocess(f)),f}catch(u){return r(u)}}}onError(n,e){return t=>{if(t.message+=`
351
+ Please report this to https://github.com/markedjs/marked.`,n){let s="<p>An error occurred:</p><pre>"+gs(t.message+"",!0)+"</pre>";return e?Promise.resolve(s):s}if(e)return Promise.reject(t);throw t}}},dr=new rR;function He(n,e){return dr.parse(n,e)}He.options=He.setOptions=function(n){return dr.setOptions(n),He.defaults=dr.defaults,db(He.defaults),He};He.getDefaults=Qm;He.defaults=pr;He.use=function(...n){return dr.use(...n),He.defaults=dr.defaults,db(He.defaults),He};He.walkTokens=function(n,e){return dr.walkTokens(n,e)};He.parseInline=dr.parseInline;He.Parser=qs;He.parser=qs.parse;He.Renderer=Du;He.TextRenderer=Dm;He.Lexer=Vs;He.lexer=Vs.lex;He.Tokenizer=Ru;He.Hooks=su;He.parse=He;He.options;He.setOptions;He.use;He.walkTokens;He.parseInline;qs.parse;Vs.lex;var Pf={exports:{}},i0;function lR(){return i0||(i0=1,(function(n){var e=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};/**
352
+ * Prism: Lightweight, robust, elegant syntax highlighting
353
+ *
354
+ * @license MIT <https://opensource.org/licenses/MIT>
355
+ * @author Lea Verou <https://lea.verou.me>
356
+ * @namespace
357
+ * @public
358
+ */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(P){return P instanceof u?new u(P.type,b(P.content),P.alias):Array.isArray(P)?P.map(b):P.replace(/&/g,"&amp;").replace(/</g,"&lt;").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(P,C){C=C||{};var Q,N;switch(c.util.type(P)){case"Object":if(N=c.util.objId(P),C[N])return C[N];Q={},C[N]=Q;for(var A in P)P.hasOwnProperty(A)&&(Q[A]=b(P[A],C));return Q;case"Array":return N=c.util.objId(P),C[N]?C[N]:(Q=[],C[N]=Q,P.forEach(function(X,B){Q[B]=b(X,C)}),Q);default:return P}},getLanguage:function(b){for(;b;){var P=i.exec(b.className);if(P)return P[1].toLowerCase();b=b.parentElement}return"none"},setLanguage:function(b,P){b.className=b.className.replace(RegExp(i,"gi"),""),b.classList.add("language-"+P)},currentScript:function(){if(typeof document>"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(Q){var b=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(Q.stack)||[])[1];if(b){var P=document.getElementsByTagName("script");for(var C in P)if(P[C].src==b)return P[C]}return null}},isActive:function(b,P,C){for(var Q="no-"+P;b;){var N=b.classList;if(N.contains(P))return!0;if(N.contains(Q))return!1;b=b.parentElement}return!!C}},languages:{plain:o,plaintext:o,text:o,txt:o,extend:function(b,P){var C=c.util.clone(c.languages[b]);for(var Q in P)C[Q]=P[Q];return C},insertBefore:function(b,P,C,Q){Q=Q||c.languages;var N=Q[b],A={};for(var X in N)if(N.hasOwnProperty(X)){if(X==P)for(var B in C)C.hasOwnProperty(B)&&(A[B]=C[B]);C.hasOwnProperty(X)||(A[X]=N[X])}var H=Q[b];return Q[b]=A,c.languages.DFS(c.languages,function(J,R){R===H&&J!=b&&(this[J]=A)}),A},DFS:function b(P,C,Q,N){N=N||{};var A=c.util.objId;for(var X in P)if(P.hasOwnProperty(X)){C.call(P,X,P[X],Q||X);var B=P[X],H=c.util.type(B);H==="Object"&&!N[A(B)]?(N[A(B)]=!0,b(B,C,null,N)):H==="Array"&&!N[A(B)]&&(N[A(B)]=!0,b(B,C,X,N))}}},plugins:{},highlightAll:function(b,P){c.highlightAllUnder(document,b,P)},highlightAllUnder:function(b,P,C){var Q={callback:C,container:b,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};c.hooks.run("before-highlightall",Q),Q.elements=Array.prototype.slice.apply(Q.container.querySelectorAll(Q.selector)),c.hooks.run("before-all-elements-highlight",Q);for(var N=0,A;A=Q.elements[N++];)c.highlightElement(A,P===!0,Q.callback)},highlightElement:function(b,P,C){var Q=c.util.getLanguage(b),N=c.languages[Q];c.util.setLanguage(b,Q);var A=b.parentElement;A&&A.nodeName.toLowerCase()==="pre"&&c.util.setLanguage(A,Q);var X=b.textContent,B={element:b,language:Q,grammar:N,code:X};function H(R){B.highlightedCode=R,c.hooks.run("before-insert",B),B.element.innerHTML=B.highlightedCode,c.hooks.run("after-highlight",B),c.hooks.run("complete",B),C&&C.call(B.element)}if(c.hooks.run("before-sanity-check",B),A=B.element.parentElement,A&&A.nodeName.toLowerCase()==="pre"&&!A.hasAttribute("tabindex")&&A.setAttribute("tabindex","0"),!B.code){c.hooks.run("complete",B),C&&C.call(B.element);return}if(c.hooks.run("before-highlight",B),!B.grammar){H(c.util.encode(B.code));return}if(P&&s.Worker){var J=new Worker(c.filename);J.onmessage=function(R){H(R.data)},J.postMessage(JSON.stringify({language:B.language,code:B.code,immediateClose:!0}))}else H(c.highlight(B.code,B.grammar,B.language))},highlight:function(b,P,C){var Q={code:b,grammar:P,language:C};if(c.hooks.run("before-tokenize",Q),!Q.grammar)throw new Error('The language "'+Q.language+'" has no grammar.');return Q.tokens=c.tokenize(Q.code,Q.grammar),c.hooks.run("after-tokenize",Q),u.stringify(c.util.encode(Q.tokens),Q.language)},tokenize:function(b,P){var C=P.rest;if(C){for(var Q in C)P[Q]=C[Q];delete P.rest}var N=new g;return O(N,N.head,b),p(b,N,P,N.head,0),k(N)},hooks:{all:{},add:function(b,P){var C=c.hooks.all;C[b]=C[b]||[],C[b].push(P)},run:function(b,P){var C=c.hooks.all[b];if(!(!C||!C.length))for(var Q=0,N;N=C[Q++];)N(P)}},Token:u};s.Prism=c;function u(b,P,C,Q){this.type=b,this.content=P,this.alias=C,this.length=(Q||"").length|0}u.stringify=function b(P,C){if(typeof P=="string")return P;if(Array.isArray(P)){var Q="";return P.forEach(function(H){Q+=b(H,C)}),Q}var N={type:P.type,content:b(P.content,C),tag:"span",classes:["token",P.type],attributes:{},language:C},A=P.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 B in N.attributes)X+=" "+B+'="'+(N.attributes[B]||"").replace(/"/g,"&quot;")+'"';return"<"+N.tag+' class="'+N.classes.join(" ")+'"'+X+">"+N.content+"</"+N.tag+">"};function f(b,P,C,Q){b.lastIndex=P;var N=b.exec(C);if(N&&Q&&N[1]){var A=N[1].length;N.index+=A,N[0]=N[0].slice(A)}return N}function p(b,P,C,Q,N,A){for(var X in C)if(!(!C.hasOwnProperty(X)||!C[X])){var B=C[X];B=Array.isArray(B)?B:[B];for(var H=0;H<B.length;++H){if(A&&A.cause==X+","+H)return;var J=B[H],R=J.inside,V=!!J.lookbehind,Y=!!J.greedy,te=J.alias;if(Y&&!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,U=Q.next,z=N;U!==P.tail&&!(A&&z>=A.reach);z+=U.value.length,U=U.next){var T=U.value;if(P.length>b.length)return;if(!(T instanceof u)){var j=1,L;if(Y){if(L=f(ce,z,b,V),!L||L.index>=b.length)break;var he=L.index,le=L.index+L[0].length,ee=z;for(ee+=U.value.length;he>=ee;)U=U.next,ee+=U.value.length;if(ee-=U.value.length,z=ee,U.value instanceof u)continue;for(var ie=U;ie!==P.tail&&(ee<le||typeof ie.value=="string");ie=ie.next)j++,ee+=ie.value.length;j--,T=b.slice(z,ee),L.index-=z}else if(L=f(ce,0,T,V),!L)continue;var he=L.index,me=L[0],je=T.slice(0,he),De=T.slice(he+me.length),Ue=z+T.length;A&&Ue>A.reach&&(A.reach=Ue);var Re=U.prev;je&&(Re=O(P,Re,je),z+=je.length),x(P,Re,j);var Xe=new u(X,R?c.tokenize(me,R):me,te,me);if(U=O(P,Re,Xe),De&&O(P,U,De),j>1){var gt={cause:X+","+H,reach:Ue};p(b,P,C,U.prev,z,gt),A&&gt.reach>A.reach&&(A.reach=gt.reach)}}}}}}function g(){var b={value:null,prev:null,next:null},P={value:null,prev:b,next:null};b.next=P,this.head=b,this.tail=P,this.length=0}function O(b,P,C){var Q=P.next,N={value:C,prev:P,next:Q};return P.next=N,Q.prev=N,b.length++,N}function x(b,P,C){for(var Q=P.next,N=0;N<C&&Q!==b.tail;N++)Q=Q.next;P.next=Q,Q.prev=P,b.length-=N}function k(b){for(var P=[],C=b.head.next;C!==b.tail;)P.push(C.value),C=C.next;return P}if(!s.document)return s.addEventListener&&(c.disableWorkerMessageHandler||s.addEventListener("message",function(b){var P=JSON.parse(b.data),C=P.language,Q=P.code,N=P.immediateClose;s.postMessage(c.highlight(Q,c.languages[C],C)),N&&s.close()},!1)),c;var S=c.util.currentScript();S&&(c.filename=S.src,S.hasAttribute("data-manual")&&(c.manual=!0));function w(){c.manual||c.highlightAll()}if(!c.manual){var $=document.readyState;$==="loading"||$==="interactive"&&S&&S.defer?document.addEventListener("DOMContentLoaded",w):window.requestAnimationFrame?window.requestAnimationFrame(w):window.setTimeout(w,16)}return c})(e);n.exports&&(n.exports=t),typeof Sv<"u"&&(Sv.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(/&amp;/,"&"))}),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(S,w){return"✖ Error "+S+" while fetching file: "+w},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(S,w,$){var b=new XMLHttpRequest;b.open("GET",S,!0),b.onreadystatechange=function(){b.readyState==4&&(b.status<400&&b.responseText?w(b.responseText):b.status>=400?$(i(b.status,b.statusText)):$(r))},b.send(null)}function x(S){var w=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(S||"");if(w){var $=Number(w[1]),b=w[2],P=w[3];return b?P?[$,Number(P)]:[$,void 0]:[$,$]}}t.hooks.add("before-highlightall",function(S){S.selector+=", "+g}),t.hooks.add("before-sanity-check",function(S){var w=S.element;if(w.matches(g)){S.code="",w.setAttribute(c,u);var $=w.appendChild(document.createElement("CODE"));$.textContent=s;var b=w.getAttribute("data-src"),P=S.language;if(P==="none"){var C=(/\.(\w+)$/.exec(b)||[,"none"])[1];P=o[C]||C}t.util.setLanguage($,P),t.util.setLanguage(w,P);var Q=t.plugins.autoloader;Q&&Q.loadLanguages(P),O(b,function(N){w.setAttribute(c,f);var A=x(w.getAttribute("data-range"));if(A){var X=N.split(/\r\n?|\n/g),B=A[0],H=A[1]==null?X.length:A[1];B<0&&(B+=X.length),B=Math.max(0,Math.min(B-1,X.length)),H<0&&(H+=X.length),H=Math.max(0,Math.min(H,X.length)),N=X.slice(B,H).join(`
359
+ `),w.hasAttribute("data-start")||w.setAttribute("data-start",String(B+1))}$.textContent=N,t.highlightElement($)},function(N){w.setAttribute(c,p),$.textContent=N})}}),t.plugins.fileHighlight={highlight:function(w){for(var $=(w||document).querySelectorAll(g),b=0,P;P=$[b++];)t.highlightElement(P)}};var k=!1;t.fileHighlight=function(){k||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),k=!0),t.plugins.fileHighlight.highlight.apply(this,arguments)}})()})(Pf)),Pf.exports}var oR=lR();const Qf=_0(oR);var r0={},l0;function aR(){return l0||(l0=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)),r0}aR();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 x=o(g);p<u.length-1&&(typeof u[p+1]=="string"||u[p+1].type==="plain-text")&&(x+=o(u[p+1]),u.splice(p+1,1)),p>0&&(typeof u[p-1]=="string"||u[p-1].type==="plain-text")&&(x=o(u[p-1])+x,u.splice(p-1,1),p--),u[p]=new n.Token("plain-text",x,null,x)}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 o0={},a0;function cR(){return a0||(a0=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),o0}cR();(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(S){return typeof S!="string"&&S.type!=="comment"&&S.type!=="scalar"}),s=0;function i(S){return t[s+S]}function r(S,w){w=w||0;for(var $=0;$<S.length;$++){var b=i($+w);if(!b||b.type!==S[$])return!1}return!0}function o(S,w){for(var $=1,b=s;b<t.length;b++){var P=t[b],C=P.content;if(P.type==="punctuation"&&typeof C=="string"){if(S.test(C))$++;else if(w.test(C)&&($--,$===0))return b}}return-1}function c(S,w){var $=S.alias;$?Array.isArray($)||(S.alias=$=[$]):S.alias=$=[],$.push(w)}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 x=s;x<O;x++){var k=t[x];k.type==="variable"&&f.indexOf(k.content)>=0&&c(k,"variable-input")}}}}});const Sb=new He.Renderer;Sb.code=(n,e)=>{let t=n;if(e&&Qf.languages[e])try{t=Qf.highlight(n,Qf.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:Sb});const wb=({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=x=>{c(k=>({...k,[x]:!k[x]}))};if(se.useEffect(()=>{const k=setTimeout(()=>{const S={};Object.entries(p.current).forEach(([w,$])=>{if($){const b=$.firstElementChild;if(b){const P=b.scrollHeight>b.clientHeight;S[w]=P}}}),f(S)},0);return()=>clearTimeout(k)},[n]),n.length===0)return null;const O=x=>{r?.(x)};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(x=>{const k=!!o[x.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-${x.id}`,className:"element-table__id-link",title:x.id,children:d.jsx("code",{className:"element-table__id-code",children:x.id})})})}),d.jsxs("td",{className:"element-table__cell element-table__cell--title",children:[d.jsx("a",{href:`#element-${x.id}`,className:"element-table__title-link",title:x.meta?.title||x.id,children:x.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:S=>{S.preventDefault(),S.stopPropagation(),O(x)},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:x.meta?.description?d.jsxs("div",{className:"element-table__description-container",children:[d.jsx("div",{ref:S=>{p.current[x.id]=S},className:`element-table__description ${k?"expanded":""}`,children:d.jsx(wb,{content:x.meta.description})}),u[x.id]&&d.jsx("button",{className:"element-table__expand-btn",onClick:S=>{S.stopPropagation(),g(x.id)},"aria-expanded":k,title:k?"Show less":"Show more",children:k?"Less":"More"})]}):d.jsx("span",{className:"element-table__empty",children:"—"})})]},x.id)})})]})})]})},uR=({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:x,errors:k,asyncContexts:S,tags:w})=>{const $=n.getRoot(),b=$?.meta?.title||"Runner Application Documentation",P=$?.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:P})]}),d.jsxs("section",{id:"live",className:"docs-section",children:[d.jsx("h2",{children:"📡 Live Telemetry"}),d.jsx(wM,{detailed:!0,introspector:n})]}),d.jsxs("section",{id:"diagnostics",className:"docs-section",children:[d.jsx("h2",{children:"🔍 Diagnostics"}),d.jsx(OM,{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:x.length})]}),d.jsxs("a",{href:"#hooks",className:"card card--hooks",children:[d.jsx("h3",{children:"Hooks"}),d.jsx("div",{className:"count",children:O.length})]}),k.length>0&&d.jsxs("a",{href:"#errors",className:"card card--errors",children:[d.jsx("h3",{children:"Errors"}),d.jsx("div",{className:"count",children:k.length})]}),S.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:S.length})]}),d.jsxs("a",{href:"#tags",className:"card card--tags",children:[d.jsx("h3",{children:"Tags"}),d.jsx("div",{className:"count",children:w.length})]})]})]}),f.length>0&&d.jsx(Oi,{elements:f,title:"Tasks Overview",icon:"⚙️",id:"tasks",enableActions:"task",onAction:C=>{window.dispatchEvent(new CustomEvent("docs:execute-element",{detail:{type:"task",id:C.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(C=>d.jsx(rM,{task:C,introspector:n},C.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(C=>d.jsx(lM,{resource:C,introspector:n},C.id))})]}),g.length>0&&d.jsx(Oi,{elements:g,title:"Events Overview",icon:"📡",id:"events",enableActions:"event",onAction:C=>{window.dispatchEvent(new CustomEvent("docs:execute-element",{detail:{type:"event",id:C.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(C=>d.jsx(aM,{event:C,introspector:n},C.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(C=>d.jsx(dM,{hook:C,introspector:n},C.id))})]}),k.length>0&&d.jsx(Oi,{elements:k,title:"Errors Overview",icon:"❌",id:"errors"}),k.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["❌ Errors (",k.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:k.map(C=>d.jsx(mM,{error:C,introspector:n},C.id))})]}),S.length>0&&d.jsx(Oi,{elements:S,title:"Async Contexts Overview",icon:"🔄",id:"asyncContexts"}),S.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["🔄 Async Contexts (",S.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:S.map(C=>d.jsx(gM,{asyncContext:C,introspector:n},C.id))})]}),x.length>0&&d.jsx(Oi,{elements:x,title:"Middlewares Overview",icon:"🔗",id:"middlewares"}),x.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["🔗 Middlewares (",x.length,")"]}),d.jsx("div",{className:"docs-component-grid",children:x.map(C=>d.jsx(oM,{middleware:C,introspector:n},C.id))})]}),w.length>0&&d.jsx(Oi,{elements:w,title:"Tags Overview",icon:"🏷️",id:"tags"}),w.length>0&&d.jsxs("section",{className:"docs-section",children:[d.jsxs("h2",{children:["Tags (",w.length,")"]}),d.jsx("div",{className:"docs-tags-grid",children:w.map(C=>d.jsx(fM,{tag:C,introspector:n},C.id))})]})]})]})},Be={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 c0(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 dR(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 hR=(n,e)=>{const[t,s]=F.useState(e||""),i=F.useMemo(()=>Rp(t),[t]),[r,o]=F.useState(()=>{try{return localStorage.getItem(Be.STORAGE_KEYS.SHOW_SYSTEM)==="1"}catch{return Be.DEFAULTS.SHOW_SYSTEM}});F.useEffect(()=>{s(e||"")},[e]);const c=O=>O?Array.isArray(O?.tags)?O.tags.includes(Be.SYSTEM_TAG_ID):O?.id===Be.SYSTEM_TAG_ID:!1,u=O=>{let x=O;return r||(x=x.filter(k=>!c(k))),t&&(x=x.filter(k=>c0({id:String(k.id),tags:k.tags||[]},i))),x},f=F.useMemo(()=>{const O=u(n.getTasks()),x=u(n.getResources()),k=u(n.getEvents()),S=u(n.getHooks()),w=u(n.getMiddlewares());let $=n.getAllTags();if(r||($=$.filter(b=>!c(b))),t){const b=i.isTagSearch?t.trim().slice(1):t.trim(),P=Rp(b);$=$.filter(C=>c0({id:C.id,tags:[]},P))}return{tasks:O,resources:x,events:k,hooks:S,middlewares:w,tags:$,allElements:[...O,...x,...k,...S,...w,...$]}},[n,r,t,i]),p=O=>{o(O);try{localStorage.setItem(Be.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}},fR=()=>{const[n,e]=F.useState(()=>{try{return localStorage.getItem(Be.STORAGE_KEYS.VIEW_MODE)||Be.DEFAULTS.VIEW_MODE}catch{return Be.DEFAULTS.VIEW_MODE}}),[t,s]=F.useState(()=>{try{return localStorage.getItem(Be.STORAGE_KEYS.TREE_TYPE)||Be.DEFAULTS.TREE_TYPE}catch{return Be.DEFAULTS.TREE_TYPE}});return{viewMode:n,treeType:t,handleViewModeChange:o=>{e(o);try{localStorage.setItem(Be.STORAGE_KEYS.VIEW_MODE,o)}catch{}},handleTreeTypeChange:o=>{s(o);try{localStorage.setItem(Be.STORAGE_KEYS.TREE_TYPE,o)}catch{}}}},pR=(n=0)=>{const[e,t]=F.useState(()=>{try{return parseInt(localStorage.getItem(Be.STORAGE_KEYS.SIDEBAR_WIDTH)||Be.DEFAULTS.SIDEBAR_WIDTH.toString(),10)}catch{return Be.DEFAULTS.SIDEBAR_WIDTH}}),[s,i]=F.useState(!1),r=F.useRef(null),o=F.useRef(null),c=F.useCallback(p=>{p.preventDefault(),i(!0),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[]),u=F.useCallback(p=>{if(!s)return;const g=p.clientX-n,O=Math.min(Math.max(g,Be.CONSTRAINTS.MIN_SIDEBAR_WIDTH),Be.CONSTRAINTS.MAX_SIDEBAR_WIDTH);t(O)},[s,n]),f=F.useCallback(()=>{if(s){i(!1),document.body.style.cursor="",document.body.style.userSelect="";try{localStorage.setItem(Be.STORAGE_KEYS.SIDEBAR_WIDTH,e.toString())}catch{}}},[s,e]);return F.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}},mR=n=>{const[e,t]=F.useState(()=>{try{return parseInt(localStorage.getItem(Be.STORAGE_KEYS.CHAT_SIDEBAR_WIDTH)||Be.DEFAULTS.CHAT_SIDEBAR_WIDTH.toString(),10)}catch{return Be.DEFAULTS.CHAT_SIDEBAR_WIDTH}}),[s,i]=F.useState(!1),r=F.useRef(null),o=F.useRef(null),c=F.useCallback(p=>{p.preventDefault(),i(!0),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[]),u=F.useCallback(p=>{if(!s)return;const g=p.clientX-n,O=Math.min(Math.max(g,Be.CONSTRAINTS.MIN_CHAT_WIDTH),Be.CONSTRAINTS.MAX_CHAT_WIDTH);t(O)},[s,n]),f=F.useCallback(()=>{if(s){i(!1),document.body.style.cursor="",document.body.style.userSelect="";try{localStorage.setItem(Be.STORAGE_KEYS.CHAT_SIDEBAR_WIDTH,e.toString())}catch{}}},[s,e]);return F.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 bb(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 Lp(n){return{folder:"📁",task:"⚙️",resource:"🔧",event:"📡",hook:"🪝",middleware:"🔗",tag:"🏷️"}[n]||"📄"}function _b(n){const e=new Map;n.forEach(i=>{const r=Dp(i.id),o=bb(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",x={id:c,label:p,type:O,icon:Lp(O),children:[],elementId:g?i.id:void 0,element:g?i:void 0,isExpanded:!1};if(u.set(c,x),f>0){const k=r.slice(0,f).join("."),S=e.get(k);S&&!S.children.find(w=>w.id===c)&&S.children.push(x)}}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"?$b(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 $b(n){return n.children.length===0?1:n.children.reduce((e,t)=>e+$b(t),0)}function gR(n){const e=new Map;n.forEach(s=>{const i=bb(s);e.has(i)||e.set(i,[]),e.get(i).push(s)});const t=[];return e.forEach((s,i)=>{const r=_b(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:u0(i+"s"),type:"folder",icon:Lp(i),children:c(r[0].children),count:s.length,isExpanded:!1}):t.push({id:i,label:u0(i+"s"),type:"folder",icon:Lp(i),children:c(r),count:s.length,isExpanded:!1})}),t.sort((s,i)=>s.label.localeCompare(i.label))}function OR(n,e){if(!e.trim())return n;const t=Rp(e),s=i=>{const r=dR({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 Cb(n,e,t){return n.map(s=>s.id===e?{...s,isExpanded:t!==void 0?t:!s.isExpanded}:s.children.length>0?{...s,children:Cb(s.children,e,t)}:s)}function u0(n){return n.charAt(0).toUpperCase()+n.slice(1)}const vR=(n,e,t,s,i)=>{const[r,o]=F.useState([]);F.useEffect(()=>{let f;e==="namespace"?f=_b(n):f=gR(n),t&&(f=OR(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(Be.CSS_CLASSES.HIGHLIGHT_TARGET),setTimeout(()=>{g.classList.remove(Be.CSS_CLASSES.HIGHLIGHT_TARGET)},Be.CONSTRAINTS.HIGHLIGHT_DURATION))},u=(f,p)=>{o(g=>Cb(g,f,p))};return F.useEffect(()=>{const f=()=>{const p=window.location.hash;if(p.startsWith("#element-")&&t){const g=p.substring(9),O=s.getAll(),x=[...i.tasks,...i.resources,...i.events,...i.hooks,...i.middlewares,...i.tags];O.some(k=>k.id===g),x.some(k=>k.id===g)}};return window.addEventListener("hashchange",f),f(),()=>{window.removeEventListener("hashchange",f)}},[t,i,s]),{treeNodes:r,handleTreeNodeClick:c,handleToggleExpansion:u}};function d0(n,e){const[t,s]=F.useState(n);return F.useEffect(()=>{const i=window.setTimeout(()=>s(n),e);return()=>window.clearTimeout(i)},[n,e]),t}const xR=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),Fs=["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(`
360
+ `),yR=`
361
+ query UniversalElementFile($idIncludes: ID!, $startLine: Int, $endLine: Int) {
362
+ all(idIncludes: $idIncludes) {
363
+ id
364
+ filePath
365
+ fileContents(startLine: $startLine, endLine: $endLine)
366
+ __typename
367
+ }
368
+ }
369
+ `;async function kR(n,e,t){try{const r=(await Tt(yR,{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 Pb=(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 kR(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(`
370
+ `),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 Tt(s.query,i)}}}];function h0(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 f0(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 zc(n,e,t,s){n(i=>({...i,toolCalls:(i.toolCalls||[]).map((r,o)=>o===e?{...r,status:t,...s?{resultPreview:s}:{}}:r)}))}function p0(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 m0(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 Qb={openaiApiKey:null,model:"gpt-5-mini",stream:!0,responseMode:"text",baseUrl:"https://api.openai.com",enableShortcuts:!0,showTokenMeter:!0,virtualizeMessages:!1},Zs={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:Qb,canStop:!1,lastUsage:null,chatContext:{include:{runner:!1,runnerDev:!1,schema:!1,projectOverview:!1}}},SR=n=>{const[e,t]=F.useState(Zs),s=F.useRef(null),i=F.useRef(null),r=F.useRef({runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null});F.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]),F.useEffect(()=>{const b=Xw();b&&b.length>0&&t(Q=>({...Q,messages:b}));const P=Gu();P&&t(Q=>({...Q,settings:{...Qb,...P}}));const C=Yw();C&&C.include&&t(Q=>({...Q,chatContext:{include:{...Q.chatContext?.include,...C.include}}}))},[]),F.useEffect(()=>{const b=setTimeout(()=>{Fw(e.messages)},1e3);return()=>clearTimeout(b)},[e.messages]),F.useEffect(()=>{qw(e.chatContext||null)},[e.chatContext]),F.useEffect(()=>()=>{s.current&&window.clearTimeout(s.current),i.current&&i.current.abort()},[]),F.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",Y=Array.isArray(R.children)?R.children:[];return V&&Y.every(J)};return J(H)})||b.flowStage==="done"||b.flowStage==="patch.ready"){t(H=>({...H,deepImpl:{...H.deepImpl||Zs.deepImpl,auto:{running:!1}}}));return}const C=b.budget?.totalTokens??65500,Q=b.budget?.usedApprox??0,N=b.budget?.reserveOutput??2e3,A=b.budget?.reserveSafety??1500;if(Math.max(0,C-Q-N-A)<=0){t(H=>({...H,deepImpl:{...H.deepImpl||Zs.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 B=["DEEPIMPL_CONTINUE","Proceed with the next actionable step.","If TODOs are complete, move to implement or finalize patch."].join(`
371
+ `);u(B)},[e.deepImpl,e.isTyping,e.canStop]);const o=F.useCallback(b=>{t(P=>{const C={...P,settings:{...P.settings,...b}};return Vw(C.settings),C})},[]),c=F.useCallback(b=>{const P={id:`error-${Date.now()}`,author:"bot",type:"text",text:b,timestamp:Date.now()};t(C=>({...C,messages:[...C.messages,P],isTyping:!1,thinkingStage:"none",canStop:!1}))},[]),u=F.useCallback(async(b,P)=>{const{settings:C}=e;if(!C.openaiApiKey){c("❌ OpenAI API key is required. Please configure it in the settings to use the AI assistant.");return}i.current=new AbortController;const Q=`b-${Date.now()}`;t(R=>({...R,isTyping:!0,thinkingStage:"thinking",toolCalls:[],canStop:!0,messages:[...R.messages,{id:Q,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||""})),B=[...Pb()],H=ib(B),J=Tp();try{const R={runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},Y=/@docs\.(runner|schema|runnerDev|projectOverview)\b/.test(b);Y&&console.log("[chat] @docs tokens detected in input, include flags:",e.chatContext?.include||{});const te=zw(b,R);Y&&console.log("[chat] expandDocsInMessage applied:",{originalLength:b.length,expandedLength:te.modelText.length});const pe=eu(Fs,P??(e.chatContext?.include||{}),X,te.modelText,R),ce=async()=>{const U=J.list();if(U.length!==0)try{const z={role:"assistant",tool_calls:U.map((ie,he)=>({id:ie.id||`call_${he}`,type:"function",function:{name:ie.name,arguments:ie.argsText}}))};f0(t,U);const T=[];for(let ie=0;ie<U.length;ie++){const he=U[ie],me=B.find(Ue=>Ue.name===he.name);if(!me)continue;let je={};try{je=he.argsText?JSON.parse(he.argsText):{}}catch{}zc(t,ie,"running");const De=await me.run(je);zc(t,ie,"done",JSON.stringify(De,null,2)),T.push({role:"tool",content:JSON.stringify(De),tool_call_id:he.id,name:he.name})}const j=`b-${Date.now()}-2`;t(ie=>{const me=(ie.messages.find(je=>je.id===Q)?.text||"").trim().length>0?ie.messages:ie.messages.filter(je=>je.id!==Q);return{...ie,messages:me}}),m0(t,j);let L="";const le=[...eu(Fs,P??(e.chatContext?.include||{}),X,te.modelText,R),z,...T],ee=Tp();await Qo({settings:C,messages:le,tools:H,tool_choice:"auto",temperature:.2,response_format:C.responseMode==="json"?{type:"json_object"}:void 0,signal:i.current?.signal},{onTextDelta:ie=>{L+=ie,t(he=>({...he,messages:he.messages.map(me=>me.id===j?{...me,text:L}:me)}))},onToolCallDelta:ie=>{ee.accept(ie),h0(t,ie)},onUsage:ie=>{A={promptTokens:A.promptTokens+(ie.prompt_tokens||0),completionTokens:A.completionTokens+(ie.completion_tokens||0),totalTokens:A.totalTokens+(ie.total_tokens||0)},t(he=>({...he,lastUsage:{...A},deepImpl:{...he.deepImpl||Zs.deepImpl,budget:{...he.deepImpl?.budget||Zs.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:async()=>{p0(t);const ie=ee.list();if(ie.length>0)try{const he={role:"assistant",tool_calls:ie.map((Re,Xe)=>({id:Re.id||`call2_${Xe}`,type:"function",function:{name:Re.name,arguments:Re.argsText}}))};f0(t,ie);const me=[];for(let Re=0;Re<ie.length;Re++){const Xe=ie[Re],gt=B.find(mr=>mr.name===Xe.name);if(!gt)continue;let Et={};try{Et=Xe.argsText?JSON.parse(Xe.argsText):{}}catch{}zc(t,Re,"running");const Hs=await gt.run(Et);zc(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`;m0(t,je);let De="";const Ue=[...eu(Fs,P??(e.chatContext?.include||{}),X,te.modelText,R),he,...me];await Qo({settings:C,messages:Ue,temperature:.2,response_format:C.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||Zs.deepImpl,budget:{...Xe.deepImpl?.budget||Zs.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:()=>{p0(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?`
372
+
373
+ ❌ Error: ${Xe}`:"")}:Et)}))}})}catch(he){const me=`❌ Tool execution failed: ${String(he)}`,je=L.endsWith(`
374
+ `)?"":`
375
+
376
+ `,De=L+je+me;t(Ue=>({...Ue,messages:Ue.messages.map(Re=>Re.id===j?{...Re,text:De}:Re),toolCalls:(Ue.toolCalls||[]).map(Re=>Re.status==="running"||Re.status==="pending"?{...Re,status:"error"}:Re)}))}},onError:ie=>{const he=ie?.message||String(ie);t(me=>({...me,isTyping:!1,thinkingStage:"none",canStop:!1,messages:me.messages.map(je=>je.id===j?{...je,text:(je.text||"")+(he?`
377
+
378
+ ❌ Error: ${he}`:"")}:je)}))}})}catch(z){const T=`❌ Tool execution failed: ${String(z)}`,j=N.endsWith(`
379
+ `)?"":`
380
+
381
+ `,L=N+j+T;t(le=>({...le,messages:le.messages.map(ee=>ee.id===Q?{...ee,text:L}:ee),toolCalls:(le.toolCalls||[]).map(ee=>ee.status==="running"||ee.status==="pending"?{...ee,status:"error"}:ee)}))}};await Qo({settings:C,messages:pe,tools:H,tool_choice:"auto",response_format:C.responseMode==="json"?{type:"json_object"}:void 0,signal:i.current?.signal},{onTextDelta:U=>{N+=U,t(z=>({...z,thinkingStage:"generating",messages:z.messages.map(T=>T.id===Q?{...T,text:N}:T)}))},onToolCallDelta:U=>{J.accept(U),h0(t,U)},onUsage:U=>{A={promptTokens:A.promptTokens+(U.prompt_tokens||0),completionTokens:A.completionTokens+(U.completion_tokens||0),totalTokens:A.totalTokens+(U.total_tokens||0)},t(z=>({...z,lastUsage:{...A},deepImpl:{...z.deepImpl||Zs.deepImpl,budget:{...z.deepImpl?.budget||Zs.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:async(U,z)=>{},onError:U=>{const z=U?.message||String(U);t(T=>({...T,isTyping:!1,thinkingStage:"none",canStop:!1,messages:T.messages.map(j=>j.id===Q?{...j,text:(j.text||"")+(z?`
382
+
383
+ ❌ Error: ${z}`:"")}:j)}))}}),await ce(),t(U=>({...U,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(Y=>Y.id===Q?{...Y,text:"❌ Request stopped by user"}:Y)})):t(V=>({...V,isTyping:!1,thinkingStage:"none",toolCalls:[],canStop:!1,messages:V.messages.map(Y=>Y.id===Q?{...Y,text:`❌ Error: ${R?.message||"Failed to contact OpenAI"}`}:Y)}))}},[e,c]),f=F.useCallback(()=>{const b=e.inputValue.trim();if(!b)return;try{const C=e.messages.filter(N=>N.type==="text").map(N=>N.text||""),Q=$o(Fs,C,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:Q.system,history:Q.history,input:Q.input,tokens:Q.total}}))}catch{}const P={id:`m-${Date.now()}`,author:"user",type:"text",text:b,timestamp:Date.now()};t(C=>({...C,messages:[...C.messages,P],inputValue:""})),u(b)},[e.inputValue,u]),p=F.useCallback((b,P,C)=>{if(!b.trim())return;try{const N=e.messages.filter(X=>X.type==="text").map(X=>X.text||""),A=$o(Fs,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 Q={id:`m-${Date.now()}`,author:"user",type:"text",text:P||b.trim(),timestamp:Date.now()};t(N=>({...N,messages:[...N.messages,Q],inputValue:""})),u(b.trim(),C)},[u,e.messages,e.inputValue,n?.docs]),g=F.useCallback(async(b,P)=>{const C=b??e.settings.openaiApiKey;return C?rb({apiKey:C,model:e.settings.model,baseUrl:P??e.settings.baseUrl??"https://api.openai.com"}):{ok:!1,error:"Missing API key"}},[e.settings.model,e.settings.openaiApiKey,e.settings.baseUrl]),O=F.useCallback(()=>{i.current&&(i.current.abort(),i.current=null),s.current&&(window.clearTimeout(s.current),s.current=null)},[]),x=F.useCallback(()=>{localStorage.removeItem("chat-sidebar-history"),$A(),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}))},[]),k=F.useCallback(()=>{const b=e.messages,P=b.map(N=>N.author).lastIndexOf("user");if(P===-1)return;const C=b[P],Q=b.slice(0,P+1);t(N=>({...N,messages:Q})),u(C.text)},[e.messages,u]);F.useMemo(()=>e.inputValue||"",[e.inputValue]);const S=e.messages.filter(b=>b.type==="text").filter(b=>b.id!=="welcome").map(b=>b.text||""),w=$o(Fs,S,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,P=!!(e.chatContext?.include?.runner||e.chatContext?.include?.runnerDev||e.chatContext?.include?.schema||e.chatContext?.include?.projectOverview);if(!(S.length>0)&&!b&&!P&&!e.isTyping)return{mode:"context",total:w.system,breakdown:{system:w.system,history:0,input:0}};if(e.isTyping){const Q=e.preflightContext;return{mode:"context",total:Q?.tokens??w.total,breakdown:Q?{system:Q.system,history:Q.history,input:Q.input}:{system:w.system,history:w.history,input:w.input}}}return b||!e.lastUsage?{mode:"context",total:w.total,breakdown:{system:w.system,history:w.history,input:w.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:x,updateSettings:o,testOpenAIConnection:g,stopRequest:O,retryLastResponse:k,tokenStatus:$}};var Ui={},Jn={},g0;function wR(){if(g0)return Jn;g0=1;var n=Jn&&Jn.__awaiter||function(u,f,p,g){function O(x){return x instanceof p?x:new p(function(k){k(x)})}return new(p||(p=Promise))(function(x,k){function S(b){try{$(g.next(b))}catch(P){k(P)}}function w(b){try{$(g.throw(b))}catch(P){k(P)}}function $(b){b.done?x(b.value):O(b.value).then(S,w)}$((g=g.apply(u,f||[])).next())})};Object.defineProperty(Jn,"__esModule",{value:!0}),Jn.Smart=void 0,Jn.useSmart=i,Jn.newSmart=r,Jn.useNewSmart=o,Jn.withSmart=c;const e=To(),t=To();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}};Jn.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(x=>x+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 x=u.getContext();return e.createElement(x.Provider,{value:p},O)};return(0,t.useEffect)(()=>()=>{p.destroy()},[p]),[p,g]}function c(u,...f){return function(p){return function(O){const[x,k]=o(u,...f);return e.createElement(k,null,e.createElement(p,Object.assign({},O)))}}}return Jn}var O0;function bR(){return O0||(O0=1,(function(n){var e=Ui&&Ui.__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=Ui&&Ui.__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(wR(),n)})(Ui)),Ui}var jb=bR();const _R={openaiApiKey:null,model:"gpt-5-mini",stream:!0,responseMode:"text",baseUrl:"https://api.openai.com",enableShortcuts:!0,showTokenMeter:!0,virtualizeMessages:!1},v0={enabled:!1,flowId:null,flowStage:"idle",answers:{},todo:[],logs:[],patch:null,budget:{totalTokens:65500,reserveOutput:2e3,reserveSafety:1500,usedApprox:0},auto:{running:!1},docs:{}},x0=()=>({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 $R extends jb.Smart{static context=F.createContext(null);static getContext(){return this.context}messages=[x0()];isTyping=!1;thinkingStage="none";lastUsage=null;inputValue="";searchQuery="";isSearching=!1;selectedMessageId=null;canStop=!1;settings=_R;chatContext={include:{runner:!1,runnerDev:!1,schema:!1,projectOverview:!1}};stickyDocs={runner:!1,runnerDev:!1,schema:!1,projectOverview:!1};preflightContext=null;toolCalls=[];deepImpl=v0;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=[x0()],this.lastUsage=null,this.preflightContext=null,this.deepImpl=v0,this.toolCalls=[],this.inform(),this.persistChatHistory()}async streamResponse(e,t){const s=Tp();let i="";const r=this.messages.filter(p=>p.type==="text").map(p=>({role:p.author==="user"?"user":"assistant",content:p.text||""})),o=zw(e,this.docsBundle),c=eu(Fs,this.chatContext.include,r,o.modelText,this.docsBundle),u=Pb(()=>this.getStateForTools(),this.setStateFromTools.bind(this)),f=ib(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 rb({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(`
384
+ `);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=$o(Fs,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=Xw(),t=Gu(),s=Yw();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{Fw(this.messages)}catch(e){console.warn("Failed to persist chat history:",e)}}persistSettings(){try{Vw(this.settings)}catch(e){console.warn("Failed to persist settings:",e)}}persistChatContext(){try{qw(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=$o(Fs,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 CR=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]=jb.useNewSmart($R,e,n?.availableElements||{});F.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}},PR=({settings:n,onSave:e,onTest:t,onClearKey:s})=>{const i=F.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}}=tb({defaultValues:i});se.useEffect(()=>{c(i)},[i,c]);const[p,g]=F.useState("idle"),[O,x]=F.useState(void 0),k=S=>{const w={openaiApiKey:S.openaiApiKey||null,baseUrl:S.baseUrl||"https://api.openai.com",model:S.model,stream:n.stream,responseMode:n.responseMode,enableShortcuts:n.enableShortcuts,showTokenMeter:n.showTokenMeter,virtualizeMessages:n.virtualizeMessages};e(w)};return d.jsxs(nu,{className:"dark-mode",onSubmit:o(k),children:[d.jsxs(d.Fragment,{children:[d.jsx(Bs,{label:"OpenAI API Key",htmlFor:"openai-key",hint:"Stored locally in your browser via localStorage.",children:d.jsx(nb,{id:"openai-key",placeholder:"sk-...",...r("openaiApiKey")})}),d.jsx(Bs,{label:"OpenAI Base URL",htmlFor:"openai-base",hint:"For proxies or Azure-hosted endpoints.",children:d.jsx(tr,{id:"openai-base",placeholder:"https://api.openai.com",...r("baseUrl")})}),d.jsx(Bs,{label:"Model",htmlFor:"openai-model",hint:"Example: gpt-5-mini",children:d.jsx(tr,{id:"openai-model",...r("model")})})]}),d.jsxs(eM,{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"),x(void 0);const S=document.getElementById("openai-key")?.value||i.openaiApiKey,w=document.getElementById("openai-base")?.value||i.baseUrl,$=await t(S,w);$.ok?g("ok"):(g("error"),x($.error))},className:"btn",title:"Test connection",children:p==="testing"?"Testing…":"Test"}),d.jsx("button",{type:"button",onClick:()=>{s();const S={...i,openaiApiKey:""};c(S),u("openaiApiKey",""),g("idle"),x(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})]})},QR=({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 x=F.useRef(null),[k,S]=F.useState([]),[w,$]=F.useState(!1),[b,P]=F.useState(-1),[C,Q]=F.useState(""),[N,A]=F.useState(-1),[X,B]=F.useState(!1),[H,J]=F.useState(!1);F.useEffect(()=>{x.current&&setTimeout(()=>{x.current?.focus()},100)},[]);const R=F.useCallback(async()=>{if(!(!n.inputValue.trim()||n.isTyping||X)){B(!0);try{const z=n.inputValue,T=/\s*@docs\.(runnerDev|runner|schema|projectOverview|fullContext|clear)\b/g,j=[];z.replace(T,ee=>(j.push(ee.trim()),ee)),j.length>0&&e(ee=>{const ie={...ee.chatContext?.include||{}};let he=!1;for(const me of j){if(me.endsWith("clear")){ie.runner=!1,ie.runnerDev=!1,ie.schema=!1,ie.projectOverview=!1,he=!0;continue}me.endsWith("runner")&&(ie.runner=!0),me.endsWith("runnerDev")&&(ie.runnerDev=!0),me.endsWith("schema")&&(ie.schema=!0),me.endsWith("projectOverview")&&(ie.projectOverview=!0),me.endsWith("fullContext")&&(ie.runner=!0,ie.schema=!0,ie.projectOverview=!0)}return{...ee,chatContext:{include:ie}}});const L=z.replace(T," ").replace(/\s{2,}/g," ").trim(),le=j.length>0?(()=>{const ee={...n.chatContext?.include||{}};let ie=!1;for(const he of j){if(he.endsWith("clear")){ee.runner=!1,ee.runnerDev=!1,ee.schema=!1,ee.projectOverview=!1,ie=!0;continue}he.endsWith("runner")&&(ee.runner=!0),he.endsWith("runnerDev")&&(ee.runnerDev=!0),he.endsWith("schema")&&(ee.schema=!0),he.endsWith("projectOverview")&&(ee.projectOverview=!0),he.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(L.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 ie=L.trim().toLowerCase();if(/^(read|read it|read them|read this|summarize|summary)$/i.test(ie)){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(L,z,le)}finally{B(!1)}}},[n.inputValue,n.isTyping,X,s,e]),V=F.useCallback(z=>{if(z.length===0)return[];const T=z.toLowerCase(),j=[];if(T.startsWith("docs")){let L=T.substring(4);L.startsWith(".")&&(L=L.substring(1)),ce.forEach(le=>{const ee=le.id.replace("docs.",""),ie=le.id;(L===""||ee.toLowerCase().includes(L)||ie.toLowerCase().includes(T))&&j.push({id:le.id,name:le.id,type:"docs",title:le.title,description:le.description})})}else o&&Object.entries(o).forEach(([L,le])=>{le.forEach(ee=>{ee.name.toLowerCase().includes(T)&&j.push({id:ee.id,name:ee.name,type:L.slice(0,-1),title:ee.title,description:ee.description})})});return j.sort((L,le)=>{const ee=L.name.toLowerCase(),ie=le.name.toLowerCase();return ee===T?-1:ie===T?1:ee.startsWith(T)&&!ie.startsWith(T)?-1:ie.startsWith(T)&&!ee.startsWith(T)?1:ee.localeCompare(ie)}).slice(0,10)},[o]),Y=F.useCallback(z=>{const T=z.target.value,j=z.target.selectionStart;e(ee=>({...ee,inputValue:T}));const L=T.substring(0,j),le=L.lastIndexOf("@");if(le!==-1){const ee=L.substring(le+1);if(/\s/.test(ee))$(!1);else{const he=ee,me=V(he);S(me),$(me.length>0),Q(he),A(le),P(-1)}}else $(!1)},[e,V]),te=F.useCallback(z=>{if(N===-1)return;const T=n.inputValue,j=T.substring(0,N),L=T.substring(N+1+C.length),le=`${j}@${z.name} ${L}`;e(ie=>({...ie,inputValue:le})),$(!1);const ee=j.length+1+z.name.length+1;setTimeout(()=>{x.current&&(x.current.setSelectionRange(ee,ee),x.current.focus())},0)},[n.inputValue,N,C,e,r]),pe=F.useCallback(z=>{if(w&&k.length>0){if(z.key==="ArrowDown"){z.preventDefault(),P(T=>T<k.length-1?T+1:0);return}if(z.key==="ArrowUp"){z.preventDefault(),P(T=>T>0?T-1:k.length-1);return}if((z.key==="Enter"||z.key==="Tab")&&b>=0){z.preventDefault(),te(k[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&&!w)z.preventDefault(),R();else if(z.key==="Escape")n.canStop?(z.preventDefault(),i()):n.inputValue===""&&x.current?.blur();else if(z.key==="ArrowUp"&&n.inputValue===""&&!w){const T=[...n.messages].reverse().find(j=>j.author==="user"&&j.type==="text");T&&T.type==="text"&&e(j=>({...j,inputValue:T.text}))}},[w,k,b,te,R,n.canStop,n.inputValue,n.messages,e,i]);F.useEffect(()=>{const z=T=>{T.target?.closest?.(".chat-input-container")||($(!1),J(!1))};if(w||H)return document.addEventListener("click",z),()=>document.removeEventListener("click",z)},[w,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),U=z=>{const T=x.current,j=`@${z}`;e(L=>{const le=L.inputValue||"";if(!T){const Xe=le?`${le} ${j} `:`${j} `;return{...L,inputValue:Xe}}const ee=T.selectionStart??le.length,ie=T.selectionEnd??ee,he=le.slice(0,ee),me=le.slice(ie),je=he.length>0&&!/\s$/.test(he),De=me.length===0||!/^\s/.test(me),Ue=`${je?" ":""}${j}${De?" ":""}`,Re=`${he}${Ue}${me}`;return setTimeout(()=>{try{const Xe=(he+Ue).length;T.focus(),T.setSelectionRange(Xe,Xe)}catch{}},0),{...L,inputValue:Re}})};return d.jsxs("div",{className:"docs-chat-input",children:[d.jsxs("div",{className:"chat-input-container",children:[d.jsx("textarea",{ref:x,placeholder:"Ask about code, request files, or get help... (Use @ to reference elements or @docs for context)",value:n.inputValue,onChange:Y,onKeyDown:pe,autoComplete:"off",autoCorrect:"off",spellCheck:!1,className:"chat-main-input",rows:3}),w&&k.length>0&&d.jsx("div",{className:"chat-suggestions-dropdown",children:k.map((z,T)=>d.jsxs("div",{className:`chat-suggestion-item ${T===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:()=>{U(z.id),J(!1),setTimeout(()=>x.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"]})})]})},jR=({children:n,onClickOutside:e,className:t="",style:s,enabled:i=!0})=>{const r=F.useRef(null);return F.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 TR(n,e){return F.useMemo(()=>n.filter(t=>!(e&&t.author==="bot"&&t.type==="text"&&!t.text.trim())),[n,e])}function NR(n,e){const[t,s]=F.useState(!0),i=F.useRef(null),r=F.useRef(!1),o=F.useRef(!1),c=F.useCallback(()=>{const u=n.current;u&&(u.scrollTop=u.scrollHeight)},[n]);return F.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}},[]),F.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]),F.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 Tb=({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},ER=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:"",x=se.useCallback(async k=>{if(k)try{if(navigator?.clipboard?.writeText)await navigator.clipboard.writeText(k);else{const S=document.createElement("textarea");S.value=k,S.className="clipboard-textarea",document.body.appendChild(S),S.focus(),S.select(),document.execCommand("copy"),document.body.removeChild(S)}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(wb,{content:n.text}):_A(n.text).map((k,S)=>d.jsx("span",{children:k.type==="text"?k.content:d.jsxs("button",{className:"file-reference-btn",onClick:w=>{w.stopPropagation(),e({fileName:k.content,content:`// File: ${k.content}
385
+ // This is a simulated file view
386
+ // In production, this would load the actual file content`,language:"typescript"},`File: ${k.content}`)},children:["[",k.content,"]"]})},S))}),n.author==="bot"&&n.type==="text"&&(()=>{const S=n.toolCalls||[];return S.length?d.jsxs("details",{className:"message-tool-calls",children:[d.jsxs("summary",{children:["Used tools (",S.length,")"]}),d.jsx("div",{className:"tool-calls-content",children:d.jsx(Tb,{calls:S,showStatus:!1,onOpenArguments:(w,$)=>{u(w),p($),o(!0)},onOpenResponse:(w,$)=>{u(w),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:k=>{k.stopPropagation(),e(n.file,`File: ${n.file.fileName}`)},role:"button",tabIndex:0,onKeyDown:k=>{(k.key==="Enter"||k.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(`
387
+ `).slice(0,3).join(`
388
+ `),n.file.content.split(`
389
+ `).length>3&&`
390
+ ...`]})]})]}),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:k=>{k.stopPropagation(),t(n.diff)},role:"button",tabIndex:0,onKeyDown:k=>{(k.key==="Enter"||k.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(`
391
+ `).length]}),d.jsxs("span",{className:"diff-deletions",children:["-",n.diff.previousVersion.split(`
392
+ `).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:k=>{k.stopPropagation(),x(O)}})]}),d.jsx(cn,{title:c,isOpen:r,onClose:()=>o(!1),code:f,enableEdit:!1})]})}),AR=({stage:n="thinking",toolCalls:e=[]})=>{const[t,s]=F.useState(!1),[i,r]=F.useState(""),[o,c]=F.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(x=>!!x);function O(x,k){r(x),c(k??""),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(Tb,{calls:g,showStatus:!0,onOpenArguments:(x,k)=>O(x,k),onOpenResponse:(x,k)=>O(x,k)})]}),d.jsx(cn,{title:i,isOpen:t,onClose:()=>s(!1),code:o??"",enableEdit:!1})]})},MR=se.memo(({messages:n,isTyping:e,onOpenFile:t,onOpenDiff:s,thinkingStage:i,toolCalls:r})=>{const o=F.useMemo(()=>n.map(c=>({m:c,time:bA(c.timestamp)})),[n]);return d.jsxs(d.Fragment,{children:[o.map(({m:c,time:u})=>d.jsx("div",{children:d.jsx(ER,{message:c,onOpenFile:t,onOpenDiff:s})},c.id)),e&&d.jsx(AR,{stage:i,toolCalls:r})]})});function RR(n){const{enabled:e=!0}=n;F.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 y0={};const DR=({width:n,sidebarRef:e,isChatOpen:t,onToggleChat:s,runnerAiMd:i,runnerDevMd:r,projectOverviewMd:o,graphqlSdl:c,availableElements:u})=>{const p=y0.REACT_APP_USE_SMART_CHAT==="true"||y0.NEXT_PUBLIC_USE_SMART_CHAT==="true"||window.location.search.includes("useSmartChat=true")?CR({availableElements:u,docs:{runnerAiMd:i,graphqlSdl:c,runnerDevMd:r,projectOverviewMd:o}}):SR({availableElements:u,docs:{runnerAiMd:i,graphqlSdl:c,runnerDevMd:r,projectOverviewMd:o}}),{chatState:g,setChatState:O,sendMessage:x,sendMessageWithText:k,clearChat:S,updateSettings:w,testOpenAIConnection:$,stopRequest:b,retryLastResponse:P,tokenStatus:C}=p,[Q,N]=F.useState(!1),[A,X]=F.useState({isOpen:!1,title:"",content:""}),B=F.useRef(null),H=F.useRef(null),J=TR(g.messages,g.isTyping);NR(B,[J,g.isTyping]);const R=F.useCallback((T,j)=>{X({isOpen:!0,title:j,subtitle:T.fileName,content:T.content,language:T.language})},[]),V=F.useCallback(T=>{X({isOpen:!0,title:`Diff: ${T.fileName}`,subtitle:"Unified diff format",content:T.diffText||wA(T.previousVersion,T.newVersion,T.fileName),language:"diff"})},[]),Y=F.useCallback(()=>{X(T=>({...T,isOpen:!1}))},[]),te=F.useRef(k),pe=F.useRef(t),ce=F.useRef(s);F.useEffect(()=>{te.current=k,pe.current=t,ce.current=s},[k,t,s]),F.useEffect(()=>{const T=j=>{const L=j.detail||{},le=L.messageText||"",ee=L.displayText||void 0;le&&(pe.current||ce.current(),te.current(le,ee))};return window.addEventListener("docs:add-to-ai",T),()=>window.removeEventListener("docs:add-to-ai",T)},[]);const U=F.useCallback((T,j)=>{O(L=>{const le=L.inputValue||"",ee=`@${T}`,ie=le?`${le} ${ee} `:`${ee} `;return{...L,inputValue:ie}})},[O]),z=F.useMemo(()=>g.messages.map(L=>L.author).lastIndexOf("user")!==-1&&!g.isTyping,[g.messages,g.isTyping]);return RR({enabled:!0,onToggleChat:s,onFocusInput:()=>{document.querySelector(".docs-chat-input .chat-main-input")?.focus()},onSend:()=>{!g.isTyping&&(g.inputValue||"").trim()&&x()},onStop:()=>{g.canStop&&b()},onClear:()=>{window.confirm("Are you sure you want to clear all chat history? This action cannot be undone.")&&S()}}),F.useEffect(()=>{if(!Q)return;const T=j=>{j.key==="Escape"&&(j.preventDefault(),N(!1))};return document.addEventListener("keydown",T),()=>document.removeEventListener("keydown",T)},[Q]),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(C0,{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 T=C.mode==="context"?`System: ${C.breakdown.system} • History: ${C.breakdown.history} • Input: ${C.breakdown.input}`:g.lastUsage?`Prompt: ${g.lastUsage.promptTokens} • Completion: ${g.lastUsage.completionTokens} • Total: ${g.lastUsage.totalTokens}`:"";return d.jsx("span",{className:"status-context",title:T,children:C.mode==="context"?d.jsxs(d.Fragment,{children:["Context: ",C.total]}):d.jsxs(d.Fragment,{children:["Tokens: ",C.total]})})})()]}),actions:d.jsxs(d.Fragment,{children:[d.jsx("button",{className:"sidebar-header__action-btn",onClick:T=>{T.preventDefault(),T.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.")&&S()},title:"Clear chat",children:"🗑️"})]})}),Q&&d.jsx(jR,{className:"docs-chat-settings",style:{padding:"12px",borderTop:"1px solid #eee",borderBottom:"1px solid #eee"},onClickOutside:T=>{T&&T.target?.closest('button[title="Settings"]')||N(!1)},children:d.jsx(PR,{settings:g.settings,onSave:T=>{w(T),N(!1)},onTest:(T,j)=>$(T,j),onClearKey:()=>w({openaiApiKey:null})})}),d.jsxs(d.Fragment,{children:[d.jsxs("div",{ref:B,className:"docs-chat-messages",children:[d.jsx(MR,{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(QR,{chatState:g,setChatState:O,sendMessage:x,sendMessageWithText:k,stopRequest:b,onTaggedElementSelect:U,availableElements:u,retryLastResponse:P,canRetry:z,docsRunner:i,docsSchema:c,docsProjectOverview:o,docsRunnerDev:r})]})]}),d.jsx(cn,{title:A.title,subtitle:A.subtitle,isOpen:A.isOpen,onClose:Y,code:A.content})]})};function LR(){const[n,e]=F.useState(!0),[t,s]=F.useState([]),[i,r]=F.useState([]),[o,c]=F.useState([]),[u,f]=F.useState(Array.from({length:7},()=>Array.from({length:24},()=>0)));return F.useEffect(()=>{let p=!1;const g=`
393
+ query LiveData($afterTimestamp: Float, $last: Int) {
394
+ live {
395
+ logs(afterTimestamp: $afterTimestamp, last: $last) {
396
+ timestampMs
397
+ level
398
+ message
399
+ }
400
+ errors(afterTimestamp: $afterTimestamp, last: $last) {
401
+ timestampMs
402
+ sourceId
403
+ sourceKind
404
+ message
405
+ sourceResolved { id }
406
+ }
407
+ runs(afterTimestamp: $afterTimestamp, last: $last) {
408
+ timestampMs
409
+ nodeId
410
+ nodeKind
411
+ ok
412
+ durationMs
413
+ }
414
+ }
415
+ }
416
+ `;async function O(k){e(!0);try{const S=await Tt(g,{last:200,afterTimestamp:k});if(p)return;const w=Date.now(),$=30,b=6e4,P=w-$*b,C={};for(let H=0;H<$;H++){const J=P+H*b;C[J]={success:0,error:0,canceled:0,durations:[]}}for(const H of S.live.runs||[]){if(H.timestampMs<P)continue;const J=Math.floor((H.timestampMs-P)/b)*b+P,R=C[J];R&&(H.ok?R.success+=1:R.error+=1,typeof H.durationMs=="number"&&R.durations.push(H.durationMs))}const Q=[],N=[];Object.keys(C).map(H=>Number(H)).sort((H,J)=>H-J).forEach(H=>{const J=C[H];if(Q.push({t:H,success:J.success,error:J.error,canceled:J.canceled}),J.durations.length>0){const R=[...J.durations].sort((Y,te)=>Y-te),V=Y=>R[Math.min(R.length-1,Math.floor(Y*(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 S.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),B=Array.from({length:7},()=>Array.from({length:24},()=>0));for(const H of S.live.logs||[]){const J=new Date(H.timestampMs),R=J.getDay(),V=J.getHours();B[R][V]+=1}s(Q),r(N),c(X),f(B)}finally{p||e(!1)}}O();const x=window.setInterval(()=>O(Date.now()-5e3),5e3);return()=>{p=!0,window.clearInterval(x)}},[]),{throughput:t,latency:i,errorByTask:o,heatmap:u,isLoading:n}}const IR=({onClose:n,overlay:e=!1})=>{const{throughput:t,latency:s,errorByTask:i,heatmap:r,isLoading:o}=LR();F.useEffect(()=>{const p=g=>{(g.key==="Escape"||g.key==="Esc")&&n()};return window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p)},[n]);const c=F.useMemo(()=>{if(t.length===0)return"";const p=800,g=160,O=Math.max(1,...t.map(w=>w.success+w.error+w.canceled)),x=w=>w/Math.max(1,t.length-1)*p,k=w=>g-w/O*g,S=t.map((w,$)=>`${x($)},${k(w.success+w.error)}`);return`M0,${g} L${S.join(" L")} L${p},${g} Z`},[t]),u=F.useMemo(()=>{if(s.length===0)return{p50:"",p95:"",p99:""};const p=800,g=160,O=Math.max(1,...s.flatMap(w=>[w.p50,w.p95,w.p99])),x=w=>w/Math.max(1,s.length-1)*p,k=w=>g-w/O*g,S=w=>s.map(($,b)=>`${b===0?"M":"L"}${x(b)},${k(w($))}`).join(" ");return{p50:S(w=>w.p50),p95:S(w=>w.p95),p99:S(w=>w.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,x)=>{const k=x/24*800,S=g/7*160,$=`rgba(99,102,241,${.15+Math.min(1,O/10)*.75})`;return d.jsx("rect",{x:k,y:S,width:800/24-1,height:160/7-1,fill:$},`${x}-${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})})},k0=({introspector:n,namespacePrefix:e,runnerFrameworkMd:t,runnerDevMd:s,projectOverviewMd:i,graphqlSdl:r})=>{const o=F.useRef(!1),[c,u]=F.useState(()=>{try{return localStorage.getItem(Be.STORAGE_KEYS.CHAT_OPEN)==="true"}catch{return Be.DEFAULTS.CHAT_OPEN}}),[f,p]=F.useState(()=>{try{const Y=localStorage.getItem("docs-dark-mode");return Y?JSON.parse(Y):!0}catch{return!0}});F.useEffect(()=>{document.documentElement.setAttribute("data-theme",f?"dark":"light");try{localStorage.setItem("docs-dark-mode",JSON.stringify(f))}catch(Y){console.warn("Failed to save dark mode preference:",Y)}},[f]);const g=()=>{p(!f)},O=hR(n,e),x=fR(),k=mR(40),S=pR(c?k.chatWidth+40:0),w=d0(S.sidebarWidth,180),$=d0(k.chatWidth,180),[b,P]=F.useState(!1),C=()=>{u(Y=>{const te=!Y;try{localStorage.setItem(Be.STORAGE_KEYS.CHAT_OPEN,String(te))}catch{}return P(!0),window.setTimeout(()=>P(!1),260),te})},[Q,N]=F.useState(()=>{try{return window.location.hash==="#overview-stats"}catch{return!1}});F.useEffect(()=>{const Y=()=>{try{N(window.location.hash==="#overview-stats")}catch{}};return window.addEventListener("hashchange",Y),Y(),()=>window.removeEventListener("hashchange",Y)},[]);const A=()=>{try{window.location.hash="#overview-stats"}catch{}},X=()=>{try{window.location.hash==="#overview-stats"&&(window.location.hash="#overview")}catch{}},B=vR(O.allElements,x.treeType,O.localNamespaceSearch,n,{tasks:O.tasks,resources:O.resources,events:O.events,hooks:O.hooks,middlewares:O.middlewares,tags:O.tags}),H=xR({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=Y=>{window.location.hash=`#${Y}`,document.getElementById(Y)?.scrollIntoView({behavior:"instant",block:"start"})};F.useEffect(()=>{const Y=()=>{const U=window.location.hash;if(U&&U.length>1){const z=U.slice(1);document.getElementById(z)?.scrollIntoView({behavior:"instant",block:"start"})}},te=()=>{const U=window.location.hash;if(U.startsWith("#element-")&&O.localNamespaceSearch){const z=U.substring(9),T=n.getAll(),j=O.allElements,L=T.some(ee=>ee.id===z),le=j.some(ee=>ee.id===z);L&&!le&&O.resetFilters()}Y()},pe=()=>{setTimeout(Y,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=S.isResizing||k.isResizing||b||w!==S.sidebarWidth||$!==k.chatWidth;return d.jsxs("div",{className:"docs-app",children:[d.jsx(z_,{sidebarWidth:S.sidebarWidth,sidebarRef:S.sidebarRef,isChatOpen:c,onToggleChat:C,leftOffset:c?k.chatWidth+40:0,isDarkMode:f,onToggleDarkMode:g,viewMode:x.viewMode,treeType:x.treeType,localNamespaceSearch:O.localNamespaceSearch,showSystem:O.showSystem,treeNodes:B.treeNodes,sections:H,totalComponents:J,onViewModeChange:x.handleViewModeChange,onTreeTypeChange:x.handleTreeTypeChange,onNamespaceSearchChange:O.setLocalNamespaceSearch,onShowSystemChange:O.handleShowSystemChange,onTreeNodeClick:B.handleTreeNodeClick,onToggleExpansion:B.handleToggleExpansion,onSectionClick:R}),d.jsx("div",{ref:S.resizerRef,className:`docs-sidebar-resizer ${S.isResizing?"docs-sidebar-resizer--active":""}`,style:{left:`${(c?k.chatWidth+40:0)+S.sidebarWidth+40}px`},onMouseDown:S.handleMouseDown}),d.jsx(uR,{introspector:n,sidebarWidth:w,chatWidth:$,isChatOpen:c,openStats:A,isStatsOpen:Q,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:k.resizerRef,className:`docs-sidebar-resizer ${k.isResizing?"docs-sidebar-resizer--active":""}`,style:{left:`${k.chatWidth+40}px`},onMouseDown:k.handleMouseDown}),d.jsx(DR,{width:k.chatWidth,sidebarRef:k.sidebarRef,onToggleChat:C,isChatOpen:c,runnerAiMd:t,runnerDevMd:s,projectOverviewMd:i,graphqlSdl:r,availableElements:{tasks:O.tasks.map(Y=>({id:Y.id,name:Y.id,title:Y.meta?.title||void 0,description:Y.meta?.description||void 0})),resources:O.resources.map(Y=>({id:Y.id,name:Y.id,title:Y.meta?.title||void 0,description:Y.meta?.description||void 0})),events:O.events.map(Y=>({id:Y.id,name:Y.id,title:Y.meta?.title||void 0,description:Y.meta?.description||void 0})),hooks:O.hooks.map(Y=>({id:Y.id,name:Y.id,title:Y.meta?.title||void 0,description:Y.meta?.description||void 0})),middlewares:O.middlewares.map(Y=>({id:Y.id,name:Y.id,title:Y.meta?.title||void 0,description:Y.meta?.description||void 0})),tags:O.tags.map(Y=>({id:Y.id,name:Y.id,title:Y.meta?.title||void 0,description:Y.meta?.description||void 0}))}})]}),Q&&d.jsx(IR,{overlay:!0,onClose:X})]})},ZR=Symbol("runner-dev.elementKind");function Wi(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:zR(e)).filter(Boolean):typeof n=="string"?[n]:[]:[]}function zR(n){return n?typeof n.id=="string"?n.id:String(n):""}function Nb(n){return n.getEvents().filter(t=>n.getHooksOfEvent(t.id).length===0).map(t=>({id:t.id}))}function Eb(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 Ab(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 Mb(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 BR(n){const e=[];n.getResources(),n.getTasks(),n.getHooks(),n.getEvents(),n.getMiddlewares();for(const t of Nb(n))jf(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 Eb(n))jf(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 Ab(n))jf(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 Mb(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 jf(n){const e=String(n).toLowerCase();return e.startsWith("globals.")||e==="*"}function FR(n,e){try{Object.defineProperty(n,ZR,{value:e,enumerable:!1,configurable:!1,writable:!1})}catch{}return n}class Lm{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=Wi(this.tasks),this.hookMap=Wi(this.hooks),this.resourceMap=Wi(this.resources),this.eventMap=Wi(this.events),this.middlewareMap=Wi(this.middlewares),this.errorMap=Wi(this.errors),this.asyncContextMap=Wi(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 FR(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 Nb(this)}getUnemittedEvents(){return Eb(this)}getUnusedMiddleware(){return Ab(this)}getOverrideConflicts(){return Mb(this)}getDiagnostics(){return BR(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 Lm({data:e})}}function S0(n){return Lm.deserialize(n)}function XR(){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 VR(){try{return localStorage.getItem(Be.STORAGE_KEYS.SHOW_SYSTEM)==="1"}catch{return Be.DEFAULTS.SHOW_SYSTEM}}function qR(n){try{localStorage.setItem(Be.STORAGE_KEYS.SHOW_SYSTEM,n?"1":"0")}catch{}}function YR(n,e){const t=Be.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 w0(n){const e=XR();if(!e)return;!VR()&&YR(n,e)&&qR(!0)}function b0(){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 UR(){const n=document.getElementById("root"),e=window.__DOCS_PROPS__;if(e&&e.introspectorData){const c=S0(e.introspectorData);w0(c),jv.hydrateRoot(n,se.createElement(k0,{introspector:c,namespacePrefix:e.namespacePrefix,runnerFrameworkMd:e.runnerFrameworkMd,runnerDevMd:e.runnerDevMd,projectOverviewMd:e.projectOverviewMd,graphqlSdl:e.graphqlSdl})),b0();return}const t=__API_URL__||"",s=new URL("/docs/data",t||window.location.origin),r=await(await fetch(s.toString())).json(),o=S0(r.introspectorData);w0(o),jv.createRoot(n).render(se.createElement(k0,{introspector:o,namespacePrefix:r.namespacePrefix,runnerFrameworkMd:r.runnerFrameworkMd,runnerDevMd:r.runnerDevMd,projectOverviewMd:r.projectOverviewMd,graphqlSdl:r.graphqlSdl})),b0()}UR();
417
+ //# sourceMappingURL=docs-BEJbZEmV.js.map