@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
@@ -1,412 +0,0 @@
1
- var p0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function dx(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Nh={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 m0;function l_(){if(m0)return Le;m0=1;var n=Symbol.for("react.element"),e=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),s=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,w={};function b(j,I,se){this.props=j,this.context=I,this.refs=w,this.updater=se||x}b.prototype.isReactComponent={},b.prototype.setState=function(j,I){if(typeof j!="object"&&typeof j!="function"&&j!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,j,I,"setState")},b.prototype.forceUpdate=function(j){this.updater.enqueueForceUpdate(this,j,"forceUpdate")};function C(){}C.prototype=b.prototype;function S(j,I,se){this.props=j,this.context=I,this.refs=w,this.updater=se||x}var Q=S.prototype=new C;Q.constructor=S,k(Q,b.prototype),Q.isPureReactComponent=!0;var P=Array.isArray,_=Object.prototype.hasOwnProperty,T={current:null},A={key:!0,ref:!0,__self:!0,__source:!0};function J(j,I,se){var K,ie={},he=null,pe=null;if(I!=null)for(K in I.ref!==void 0&&(pe=I.ref),I.key!==void 0&&(he=""+I.key),I)_.call(I,K)&&!A.hasOwnProperty(K)&&(ie[K]=I[K]);var Qe=arguments.length-2;if(Qe===1)ie.children=se;else if(1<Qe){for(var De=Array(Qe),Ye=0;Ye<Qe;Ye++)De[Ye]=arguments[Ye+2];ie.children=De}if(j&&j.defaultProps)for(K in Qe=j.defaultProps,Qe)ie[K]===void 0&&(ie[K]=Qe[K]);return{$$typeof:n,type:j,key:he,ref:pe,props:ie,_owner:T.current}}function z(j,I){return{$$typeof:n,type:j.type,key:I,ref:j.ref,props:j.props,_owner:j._owner}}function G(j){return typeof j=="object"&&j!==null&&j.$$typeof===n}function H(j){var I={"=":"=0",":":"=2"};return"$"+j.replace(/[=:]/g,function(se){return I[se]})}var D=/\/+/g;function ee(j,I){return typeof j=="object"&&j!==null&&j.key!=null?H(""+j.key):I.toString(36)}function q(j,I,se,K,ie){var he=typeof j;(he==="undefined"||he==="boolean")&&(j=null);var pe=!1;if(j===null)pe=!0;else switch(he){case"string":case"number":pe=!0;break;case"object":switch(j.$$typeof){case n:case e:pe=!0}}if(pe)return pe=j,ie=ie(pe),j=K===""?"."+ee(pe,0):K,P(ie)?(se="",j!=null&&(se=j.replace(D,"$&/")+"/"),q(ie,I,se,"",function(Ye){return Ye})):ie!=null&&(G(ie)&&(ie=z(ie,se+(!ie.key||pe&&pe.key===ie.key?"":(""+ie.key).replace(D,"$&/")+"/")+j)),I.push(ie)),1;if(pe=0,K=K===""?".":K+":",P(j))for(var Qe=0;Qe<j.length;Qe++){he=j[Qe];var De=K+ee(he,Qe);pe+=q(he,I,se,De,ie)}else if(De=O(j),typeof De=="function")for(j=De.call(j),Qe=0;!(he=j.next()).done;)he=he.value,De=K+ee(he,Qe++),pe+=q(he,I,se,De,ie);else if(he==="object")throw I=String(j),Error("Objects are not valid as a React child (found: "+(I==="[object Object]"?"object with keys {"+Object.keys(j).join(", ")+"}":I)+"). If you meant to render a collection of children, use an array instead.");return pe}function ue(j,I,se){if(j==null)return j;var K=[],ie=0;return q(j,K,"","",function(he){return I.call(se,he,ie++)}),K}function ve(j){if(j._status===-1){var I=j._result;I=I(),I.then(function(se){(j._status===0||j._status===-1)&&(j._status=1,j._result=se)},function(se){(j._status===0||j._status===-1)&&(j._status=2,j._result=se)}),j._status===-1&&(j._status=0,j._result=I)}if(j._status===1)return j._result.default;throw j._result}var de={current:null},X={transition:null},L={ReactCurrentDispatcher:de,ReactCurrentBatchConfig:X,ReactCurrentOwner:T};function N(){throw Error("act(...) is not supported in production builds of React.")}return Le.Children={map:ue,forEach:function(j,I,se){ue(j,function(){I.apply(this,arguments)},se)},count:function(j){var I=0;return ue(j,function(){I++}),I},toArray:function(j){return ue(j,function(I){return I})||[]},only:function(j){if(!G(j))throw Error("React.Children.only expected to receive a single React element child.");return j}},Le.Component=b,Le.Fragment=t,Le.Profiler=s,Le.PureComponent=S,Le.StrictMode=i,Le.Suspense=u,Le.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=L,Le.act=N,Le.cloneElement=function(j,I,se){if(j==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+j+".");var K=k({},j.props),ie=j.key,he=j.ref,pe=j._owner;if(I!=null){if(I.ref!==void 0&&(he=I.ref,pe=T.current),I.key!==void 0&&(ie=""+I.key),j.type&&j.type.defaultProps)var Qe=j.type.defaultProps;for(De in I)_.call(I,De)&&!A.hasOwnProperty(De)&&(K[De]=I[De]===void 0&&Qe!==void 0?Qe[De]:I[De])}var De=arguments.length-2;if(De===1)K.children=se;else if(1<De){Qe=Array(De);for(var Ye=0;Ye<De;Ye++)Qe[Ye]=arguments[Ye+2];K.children=Qe}return{$$typeof:n,type:j.type,key:ie,ref:he,props:K,_owner:pe}},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=J,Le.createFactory=function(j){var I=J.bind(null,j);return I.type=j,I},Le.createRef=function(){return{current:null}},Le.forwardRef=function(j){return{$$typeof:c,render:j}},Le.isValidElement=G,Le.lazy=function(j){return{$$typeof:p,_payload:{_status:-1,_result:j},_init:ve}},Le.memo=function(j,I){return{$$typeof:f,type:j,compare:I===void 0?null:I}},Le.startTransition=function(j){var I=X.transition;X.transition={};try{j()}finally{X.transition=I}},Le.unstable_act=N,Le.useCallback=function(j,I){return de.current.useCallback(j,I)},Le.useContext=function(j){return de.current.useContext(j)},Le.useDebugValue=function(){},Le.useDeferredValue=function(j){return de.current.useDeferredValue(j)},Le.useEffect=function(j,I){return de.current.useEffect(j,I)},Le.useId=function(){return de.current.useId()},Le.useImperativeHandle=function(j,I,se){return de.current.useImperativeHandle(j,I,se)},Le.useInsertionEffect=function(j,I){return de.current.useInsertionEffect(j,I)},Le.useLayoutEffect=function(j,I){return de.current.useLayoutEffect(j,I)},Le.useMemo=function(j,I){return de.current.useMemo(j,I)},Le.useReducer=function(j,I,se){return de.current.useReducer(j,I,se)},Le.useRef=function(j){return de.current.useRef(j)},Le.useState=function(j){return de.current.useState(j)},Le.useSyncExternalStore=function(j,I,se){return de.current.useSyncExternalStore(j,I,se)},Le.useTransition=function(){return de.current.useTransition()},Le.version="18.3.1",Le}var g0;function jp(){return g0||(g0=1,Nh.exports=l_()),Nh.exports}var V=jp();const oe=dx(V);var lc={},Eh={exports:{}},hn={},Ah={exports:{}},Mh={};/**
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 O0;function o_(){return O0||(O0=1,(function(n){function e(X,L){var N=X.length;X.push(L);e:for(;0<N;){var j=N-1>>>1,I=X[j];if(0<s(I,L))X[j]=L,X[N]=I,N=j;else break e}}function t(X){return X.length===0?null:X[0]}function i(X){if(X.length===0)return null;var L=X[0],N=X.pop();if(N!==L){X[0]=N;e:for(var j=0,I=X.length,se=I>>>1;j<se;){var K=2*(j+1)-1,ie=X[K],he=K+1,pe=X[he];if(0>s(ie,N))he<I&&0>s(pe,ie)?(X[j]=pe,X[he]=N,j=he):(X[j]=ie,X[K]=N,j=K);else if(he<I&&0>s(pe,N))X[j]=pe,X[he]=N,j=he;else break e}}return L}function s(X,L){var N=X.sortIndex-L.sortIndex;return N!==0?N:X.id-L.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,w=!1,b=typeof setTimeout=="function"?setTimeout:null,C=typeof clearTimeout=="function"?clearTimeout:null,S=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Q(X){for(var L=t(f);L!==null;){if(L.callback===null)i(f);else if(L.startTime<=X)i(f),L.sortIndex=L.expirationTime,e(u,L);else break;L=t(f)}}function P(X){if(w=!1,Q(X),!k)if(t(u)!==null)k=!0,ve(_);else{var L=t(f);L!==null&&de(P,L.startTime-X)}}function _(X,L){k=!1,w&&(w=!1,C(J),J=-1),x=!0;var N=O;try{for(Q(L),g=t(u);g!==null&&(!(g.expirationTime>L)||X&&!H());){var j=g.callback;if(typeof j=="function"){g.callback=null,O=g.priorityLevel;var I=j(g.expirationTime<=L);L=n.unstable_now(),typeof I=="function"?g.callback=I:g===t(u)&&i(u),Q(L)}else i(u);g=t(u)}if(g!==null)var se=!0;else{var K=t(f);K!==null&&de(P,K.startTime-L),se=!1}return se}finally{g=null,O=N,x=!1}}var T=!1,A=null,J=-1,z=5,G=-1;function H(){return!(n.unstable_now()-G<z)}function D(){if(A!==null){var X=n.unstable_now();G=X;var L=!0;try{L=A(!0,X)}finally{L?ee():(T=!1,A=null)}}else T=!1}var ee;if(typeof S=="function")ee=function(){S(D)};else if(typeof MessageChannel<"u"){var q=new MessageChannel,ue=q.port2;q.port1.onmessage=D,ee=function(){ue.postMessage(null)}}else ee=function(){b(D,0)};function ve(X){A=X,T||(T=!0,ee())}function de(X,L){J=b(function(){X(n.unstable_now())},L)}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(X){X.callback=null},n.unstable_continueExecution=function(){k||x||(k=!0,ve(_))},n.unstable_forceFrameRate=function(X){0>X||125<X?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):z=0<X?Math.floor(1e3/X):5},n.unstable_getCurrentPriorityLevel=function(){return O},n.unstable_getFirstCallbackNode=function(){return t(u)},n.unstable_next=function(X){switch(O){case 1:case 2:case 3:var L=3;break;default:L=O}var N=O;O=L;try{return X()}finally{O=N}},n.unstable_pauseExecution=function(){},n.unstable_requestPaint=function(){},n.unstable_runWithPriority=function(X,L){switch(X){case 1:case 2:case 3:case 4:case 5:break;default:X=3}var N=O;O=X;try{return L()}finally{O=N}},n.unstable_scheduleCallback=function(X,L,N){var j=n.unstable_now();switch(typeof N=="object"&&N!==null?(N=N.delay,N=typeof N=="number"&&0<N?j+N:j):N=j,X){case 1:var I=-1;break;case 2:I=250;break;case 5:I=1073741823;break;case 4:I=1e4;break;default:I=5e3}return I=N+I,X={id:p++,callback:L,priorityLevel:X,startTime:N,expirationTime:I,sortIndex:-1},N>j?(X.sortIndex=N,e(f,X),t(u)===null&&X===t(f)&&(w?(C(J),J=-1):w=!0,de(P,N-j))):(X.sortIndex=I,e(u,X),k||x||(k=!0,ve(_))),X},n.unstable_shouldYield=H,n.unstable_wrapCallback=function(X){var L=O;return function(){var N=O;O=L;try{return X.apply(this,arguments)}finally{O=N}}}})(Mh)),Mh}var v0;function a_(){return v0||(v0=1,Ah.exports=o_()),Ah.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 y0;function c_(){if(y0)return hn;y0=1;var n=jp(),e=a_();function t(l){for(var a="https://reactjs.org/docs/error-decoder.html?invariant="+l,d=1;d<arguments.length;d++)a+="&args[]="+encodeURIComponent(arguments[d]);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 i=new Set,s={};function r(l,a){o(l,a),o(l+"Capture",a)}function o(l,a){for(s[l]=a,l=0;l<a.length;l++)i.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,d,m){if(d!==null&&d.type===0)return!1;switch(typeof a){case"function":case"symbol":return!0;case"boolean":return m?!1:d!==null?!d.acceptsBooleans:(l=l.toLowerCase().slice(0,5),l!=="data-"&&l!=="aria-");default:return!1}}function k(l,a,d,m){if(a===null||typeof a>"u"||x(l,a,d,m))return!0;if(m)return!1;if(d!==null)switch(d.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 w(l,a,d,m,v,y,$){this.acceptsBooleans=a===2||a===3||a===4,this.attributeName=m,this.attributeNamespace=v,this.mustUseProperty=d,this.propertyName=l,this.type=a,this.sanitizeURL=y,this.removeEmptyString=$}var b={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(l){b[l]=new w(l,0,!1,l,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(l){var a=l[0];b[a]=new w(a,1,!1,l[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(l){b[l]=new w(l,2,!1,l.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(l){b[l]=new w(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){b[l]=new w(l,3,!1,l.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(l){b[l]=new w(l,3,!0,l,null,!1,!1)}),["capture","download"].forEach(function(l){b[l]=new w(l,4,!1,l,null,!1,!1)}),["cols","rows","size","span"].forEach(function(l){b[l]=new w(l,6,!1,l,null,!1,!1)}),["rowSpan","start"].forEach(function(l){b[l]=new w(l,5,!1,l.toLowerCase(),null,!1,!1)});var C=/[\-:]([a-z])/g;function S(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(C,S);b[a]=new w(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(C,S);b[a]=new w(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(C,S);b[a]=new w(a,1,!1,l,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(l){b[l]=new w(l,1,!1,l.toLowerCase(),null,!1,!1)}),b.xlinkHref=new w("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(l){b[l]=new w(l,1,!1,l.toLowerCase(),null,!0,!0)});function Q(l,a,d,m){var v=b.hasOwnProperty(a)?b[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,d,v,m)&&(d=null),m||v===null?O(a)&&(d===null?l.removeAttribute(a):l.setAttribute(a,""+d)):v.mustUseProperty?l[v.propertyName]=d===null?v.type===3?!1:"":d:(a=v.attributeName,m=v.attributeNamespace,d===null?l.removeAttribute(a):(v=v.type,d=v===3||v===4&&d===!0?"":""+d,m?l.setAttributeNS(m,a,d):l.setAttribute(a,d))))}var P=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,_=Symbol.for("react.element"),T=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),J=Symbol.for("react.strict_mode"),z=Symbol.for("react.profiler"),G=Symbol.for("react.provider"),H=Symbol.for("react.context"),D=Symbol.for("react.forward_ref"),ee=Symbol.for("react.suspense"),q=Symbol.for("react.suspense_list"),ue=Symbol.for("react.memo"),ve=Symbol.for("react.lazy"),de=Symbol.for("react.offscreen"),X=Symbol.iterator;function L(l){return l===null||typeof l!="object"?null:(l=X&&l[X]||l["@@iterator"],typeof l=="function"?l:null)}var N=Object.assign,j;function I(l){if(j===void 0)try{throw Error()}catch(d){var a=d.stack.trim().match(/\n( *(at )?)/);j=a&&a[1]||""}return`
26
- `+j+l}var se=!1;function K(l,a){if(!l||se)return"";se=!0;var d=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(U){var m=U}Reflect.construct(l,[],a)}else{try{a.call()}catch(U){m=U}l.call(a.prototype)}else{try{throw Error()}catch(U){m=U}l()}}catch(U){if(U&&m&&typeof U.stack=="string"){for(var v=U.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 R=`
29
- `+v[$].replace(" at new "," at ");return l.displayName&&R.includes("<anonymous>")&&(R=R.replace("<anonymous>",l.displayName)),R}while(1<=$&&0<=E);break}}}finally{se=!1,Error.prepareStackTrace=d}return(l=l?l.displayName||l.name:"")?I(l):""}function ie(l){switch(l.tag){case 5:return I(l.type);case 16:return I("Lazy");case 13:return I("Suspense");case 19:return I("SuspenseList");case 0:case 2:case 15:return l=K(l.type,!1),l;case 11:return l=K(l.type.render,!1),l;case 1:return l=K(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 T:return"Portal";case z:return"Profiler";case J:return"StrictMode";case ee:return"Suspense";case q:return"SuspenseList"}if(typeof l=="object")switch(l.$$typeof){case H:return(l.displayName||"Context")+".Consumer";case G:return(l._context.displayName||"Context")+".Provider";case D:var a=l.render;return l=l.displayName,l||(l=a.displayName||a.name||"",l=l!==""?"ForwardRef("+l+")":"ForwardRef"),l;case ue:return a=l.displayName||null,a!==null?a:he(l.type)||"Memo";case ve:a=l._payload,l=l._init;try{return he(l(a))}catch{}}return null}function pe(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===J?"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 Qe(l){switch(typeof l){case"boolean":case"number":case"string":case"undefined":return l;case"object":return l;default:return""}}function De(l){var a=l.type;return(l=l.nodeName)&&l.toLowerCase()==="input"&&(a==="checkbox"||a==="radio")}function Ye(l){var a=De(l)?"checked":"value",d=Object.getOwnPropertyDescriptor(l.constructor.prototype,a),m=""+l[a];if(!l.hasOwnProperty(a)&&typeof d<"u"&&typeof d.get=="function"&&typeof d.set=="function"){var v=d.get,y=d.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:d.enumerable}),{getValue:function(){return m},setValue:function($){m=""+$},stopTracking:function(){l._valueTracker=null,delete l[a]}}}}function Re(l){l._valueTracker||(l._valueTracker=Ye(l))}function ze(l){if(!l)return!1;var a=l._valueTracker;if(!a)return!0;var d=a.getValue(),m="";return l&&(m=De(l)?l.checked?"true":"false":l.value),l=m,l!==d?(a.setValue(l),!0):!1}function ft(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 jt(l,a){var d=a.checked;return N({},a,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:d??l._wrapperState.initialChecked})}function Yi(l,a){var d=a.defaultValue==null?"":a.defaultValue,m=a.checked!=null?a.checked:a.defaultChecked;d=Qe(a.value!=null?a.value:d),l._wrapperState={initialChecked:m,initialValue:d,controlled:a.type==="checkbox"||a.type==="radio"?a.checked!=null:a.value!=null}}function rr(l,a){a=a.checked,a!=null&&Q(l,"checked",a,!1)}function ul(l,a){rr(l,a);var d=Qe(a.value),m=a.type;if(d!=null)m==="number"?(d===0&&l.value===""||l.value!=d)&&(l.value=""+d):l.value!==""+d&&(l.value=""+d);else if(m==="submit"||m==="reset"){l.removeAttribute("value");return}a.hasOwnProperty("value")?lr(l,a.type,d):a.hasOwnProperty("defaultValue")&&lr(l,a.type,Qe(a.defaultValue)),a.checked==null&&a.defaultChecked!=null&&(l.defaultChecked=!!a.defaultChecked)}function Bu(l,a,d){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,d||a===l.value||(l.value=a),l.defaultValue=a}d=l.name,d!==""&&(l.name=""),l.defaultChecked=!!l._wrapperState.initialChecked,d!==""&&(l.name=d)}function lr(l,a,d){(a!=="number"||ft(l.ownerDocument)!==l)&&(d==null?l.defaultValue=""+l._wrapperState.initialValue:l.defaultValue!==""+d&&(l.defaultValue=""+d))}var M=Array.isArray;function Y(l,a,d,m){if(l=l.options,a){a={};for(var v=0;v<d.length;v++)a["$"+d[v]]=!0;for(d=0;d<l.length;d++)v=a.hasOwnProperty("$"+l[d].value),l[d].selected!==v&&(l[d].selected=v),v&&m&&(l[d].defaultSelected=!0)}else{for(d=""+Qe(d),a=null,v=0;v<l.length;v++){if(l[v].value===d){l[v].selected=!0,m&&(l[v].defaultSelected=!0);return}a!==null||l[v].disabled||(a=l[v])}a!==null&&(a.selected=!0)}}function te(l,a){if(a.dangerouslySetInnerHTML!=null)throw Error(t(91));return N({},a,{value:void 0,defaultValue:void 0,children:""+l._wrapperState.initialValue})}function ye(l,a){var d=a.value;if(d==null){if(d=a.children,a=a.defaultValue,d!=null){if(a!=null)throw Error(t(92));if(M(d)){if(1<d.length)throw Error(t(93));d=d[0]}a=d}a==null&&(a=""),d=a}l._wrapperState={initialValue:Qe(d)}}function me(l,a){var d=Qe(a.value),m=Qe(a.defaultValue);d!=null&&(d=""+d,d!==l.value&&(l.value=d),a.defaultValue==null&&l.defaultValue!==d&&(l.defaultValue=d)),m!=null&&(l.defaultValue=""+m)}function fe(l){var a=l.textContent;a===l._wrapperState.initialValue&&a!==""&&a!==null&&(l.value=a)}function Ce(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 Be(l,a){return l==null||l==="http://www.w3.org/1999/xhtml"?Ce(a):l==="http://www.w3.org/2000/svg"&&a==="foreignObject"?"http://www.w3.org/1999/xhtml":l}var Ue,Ht=(function(l){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(a,d,m,v){MSApp.execUnsafeLocalFunction(function(){return l(a,d,m,v)})}:l})(function(l,a){if(l.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in l)l.innerHTML=a;else{for(Ue=Ue||document.createElement("div"),Ue.innerHTML="<svg>"+a.valueOf().toString()+"</svg>",a=Ue.firstChild;l.firstChild;)l.removeChild(l.firstChild);for(;a.firstChild;)l.appendChild(a.firstChild)}});function ii(l,a){if(a){var d=l.firstChild;if(d&&d===l.lastChild&&d.nodeType===3){d.nodeValue=a;return}}l.textContent=a}var ln={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},Vu=["Webkit","ms","Moz","O"];Object.keys(ln).forEach(function(l){Vu.forEach(function(a){a=a+l.charAt(0).toUpperCase()+l.substring(1),ln[a]=ln[l]})});function or(l,a,d){return a==null||typeof a=="boolean"||a===""?"":d||typeof a!="number"||a===0||ln.hasOwnProperty(l)&&ln[l]?(""+a).trim():a+"px"}function ar(l,a){l=l.style;for(var d in a)if(a.hasOwnProperty(d)){var m=d.indexOf("--")===0,v=or(d,a[d],m);d==="float"&&(d="cssFloat"),m?l.setProperty(d,v):l[d]=v}}var qu=N({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 cr(l,a){if(a){if(qu[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 dl(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 ur=null;function Yu(l){return l=l.target||l.srcElement||window,l.correspondingUseElement&&(l=l.correspondingUseElement),l.nodeType===3?l.parentNode:l}var Wu=null,dr=null,hr=null;function Tm(l){if(l=El(l)){if(typeof Wu!="function")throw Error(t(280));var a=l.stateNode;a&&(a=ka(a),Wu(l.stateNode,l.type,a))}}function Nm(l){dr?hr?hr.push(l):hr=[l]:dr=l}function Em(){if(dr){var l=dr,a=hr;if(hr=dr=null,Tm(l),a)for(l=0;l<a.length;l++)Tm(a[l])}}function Am(l,a){return l(a)}function Mm(){}var Uu=!1;function Rm(l,a,d){if(Uu)return l(a,d);Uu=!0;try{return Am(l,a,d)}finally{Uu=!1,(dr!==null||hr!==null)&&(Mm(),Em())}}function hl(l,a){var d=l.stateNode;if(d===null)return null;var m=ka(d);if(m===null)return null;d=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(d&&typeof d!="function")throw Error(t(231,a,typeof d));return d}var Gu=!1;if(c)try{var fl={};Object.defineProperty(fl,"passive",{get:function(){Gu=!0}}),window.addEventListener("test",fl,fl),window.removeEventListener("test",fl,fl)}catch{Gu=!1}function h1(l,a,d,m,v,y,$,E,R){var U=Array.prototype.slice.call(arguments,3);try{a.apply(d,U)}catch(le){this.onError(le)}}var pl=!1,Jo=null,ea=!1,Hu=null,f1={onError:function(l){pl=!0,Jo=l}};function p1(l,a,d,m,v,y,$,E,R){pl=!1,Jo=null,h1.apply(f1,arguments)}function m1(l,a,d,m,v,y,$,E,R){if(p1.apply(this,arguments),pl){if(pl){var U=Jo;pl=!1,Jo=null}else throw Error(t(198));ea||(ea=!0,Hu=U)}}function Cs(l){var a=l,d=l;if(l.alternate)for(;a.return;)a=a.return;else{l=a;do a=l,(a.flags&4098)!==0&&(d=a.return),l=a.return;while(l)}return a.tag===3?d:null}function Dm(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 Lm(l){if(Cs(l)!==l)throw Error(t(188))}function g1(l){var a=l.alternate;if(!a){if(a=Cs(l),a===null)throw Error(t(188));return a!==l?null:l}for(var d=l,m=a;;){var v=d.return;if(v===null)break;var y=v.alternate;if(y===null){if(m=v.return,m!==null){d=m;continue}break}if(v.child===y.child){for(y=v.child;y;){if(y===d)return Lm(v),l;if(y===m)return Lm(v),a;y=y.sibling}throw Error(t(188))}if(d.return!==m.return)d=v,m=y;else{for(var $=!1,E=v.child;E;){if(E===d){$=!0,d=v,m=y;break}if(E===m){$=!0,m=v,d=y;break}E=E.sibling}if(!$){for(E=y.child;E;){if(E===d){$=!0,d=y,m=v;break}if(E===m){$=!0,m=y,d=v;break}E=E.sibling}if(!$)throw Error(t(189))}}if(d.alternate!==m)throw Error(t(190))}if(d.tag!==3)throw Error(t(188));return d.stateNode.current===d?l:a}function Im(l){return l=g1(l),l!==null?Zm(l):null}function Zm(l){if(l.tag===5||l.tag===6)return l;for(l=l.child;l!==null;){var a=Zm(l);if(a!==null)return a;l=l.sibling}return null}var Fm=e.unstable_scheduleCallback,Xm=e.unstable_cancelCallback,O1=e.unstable_shouldYield,v1=e.unstable_requestPaint,pt=e.unstable_now,y1=e.unstable_getCurrentPriorityLevel,Ku=e.unstable_ImmediatePriority,zm=e.unstable_UserBlockingPriority,ta=e.unstable_NormalPriority,x1=e.unstable_LowPriority,Bm=e.unstable_IdlePriority,na=null,si=null;function k1(l){if(si&&typeof si.onCommitFiberRoot=="function")try{si.onCommitFiberRoot(na,l,void 0,(l.current.flags&128)===128)}catch{}}var zn=Math.clz32?Math.clz32:b1,S1=Math.log,w1=Math.LN2;function b1(l){return l>>>=0,l===0?32:31-(S1(l)/w1|0)|0}var ia=64,sa=4194304;function ml(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 ra(l,a){var d=l.pendingLanes;if(d===0)return 0;var m=0,v=l.suspendedLanes,y=l.pingedLanes,$=d&268435455;if($!==0){var E=$&~v;E!==0?m=ml(E):(y&=$,y!==0&&(m=ml(y)))}else $=d&~v,$!==0?m=ml($):y!==0&&(m=ml(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|=d&16),a=l.entangledLanes,a!==0)for(l=l.entanglements,a&=m;0<a;)d=31-zn(a),v=1<<d,m|=l[d],a&=~v;return m}function _1(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 $1(l,a){for(var d=l.suspendedLanes,m=l.pingedLanes,v=l.expirationTimes,y=l.pendingLanes;0<y;){var $=31-zn(y),E=1<<$,R=v[$];R===-1?((E&d)===0||(E&m)!==0)&&(v[$]=_1(E,a)):R<=a&&(l.expiredLanes|=E),y&=~E}}function Ju(l){return l=l.pendingLanes&-1073741825,l!==0?l:l&1073741824?1073741824:0}function Vm(){var l=ia;return ia<<=1,(ia&4194240)===0&&(ia=64),l}function ed(l){for(var a=[],d=0;31>d;d++)a.push(l);return a}function gl(l,a,d){l.pendingLanes|=a,a!==536870912&&(l.suspendedLanes=0,l.pingedLanes=0),l=l.eventTimes,a=31-zn(a),l[a]=d}function P1(l,a){var d=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<d;){var v=31-zn(d),y=1<<v;a[v]=0,m[v]=-1,l[v]=-1,d&=~y}}function td(l,a){var d=l.entangledLanes|=a;for(l=l.entanglements;d;){var m=31-zn(d),v=1<<m;v&a|l[m]&a&&(l[m]|=a),d&=~v}}var Ke=0;function qm(l){return l&=-l,1<l?4<l?(l&268435455)!==0?16:536870912:4:1}var Ym,nd,Wm,Um,Gm,id=!1,la=[],Wi=null,Ui=null,Gi=null,Ol=new Map,vl=new Map,Hi=[],Q1="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 Hm(l,a){switch(l){case"focusin":case"focusout":Wi=null;break;case"dragenter":case"dragleave":Ui=null;break;case"mouseover":case"mouseout":Gi=null;break;case"pointerover":case"pointerout":Ol.delete(a.pointerId);break;case"gotpointercapture":case"lostpointercapture":vl.delete(a.pointerId)}}function yl(l,a,d,m,v,y){return l===null||l.nativeEvent!==y?(l={blockedOn:a,domEventName:d,eventSystemFlags:m,nativeEvent:y,targetContainers:[v]},a!==null&&(a=El(a),a!==null&&nd(a)),l):(l.eventSystemFlags|=m,a=l.targetContainers,v!==null&&a.indexOf(v)===-1&&a.push(v),l)}function C1(l,a,d,m,v){switch(a){case"focusin":return Wi=yl(Wi,l,a,d,m,v),!0;case"dragenter":return Ui=yl(Ui,l,a,d,m,v),!0;case"mouseover":return Gi=yl(Gi,l,a,d,m,v),!0;case"pointerover":var y=v.pointerId;return Ol.set(y,yl(Ol.get(y)||null,l,a,d,m,v)),!0;case"gotpointercapture":return y=v.pointerId,vl.set(y,yl(vl.get(y)||null,l,a,d,m,v)),!0}return!1}function Km(l){var a=js(l.target);if(a!==null){var d=Cs(a);if(d!==null){if(a=d.tag,a===13){if(a=Dm(d),a!==null){l.blockedOn=a,Gm(l.priority,function(){Wm(d)});return}}else if(a===3&&d.stateNode.current.memoizedState.isDehydrated){l.blockedOn=d.tag===3?d.stateNode.containerInfo:null;return}}}l.blockedOn=null}function oa(l){if(l.blockedOn!==null)return!1;for(var a=l.targetContainers;0<a.length;){var d=rd(l.domEventName,l.eventSystemFlags,a[0],l.nativeEvent);if(d===null){d=l.nativeEvent;var m=new d.constructor(d.type,d);ur=m,d.target.dispatchEvent(m),ur=null}else return a=El(d),a!==null&&nd(a),l.blockedOn=d,!1;a.shift()}return!0}function Jm(l,a,d){oa(l)&&d.delete(a)}function j1(){id=!1,Wi!==null&&oa(Wi)&&(Wi=null),Ui!==null&&oa(Ui)&&(Ui=null),Gi!==null&&oa(Gi)&&(Gi=null),Ol.forEach(Jm),vl.forEach(Jm)}function xl(l,a){l.blockedOn===a&&(l.blockedOn=null,id||(id=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,j1)))}function kl(l){function a(v){return xl(v,l)}if(0<la.length){xl(la[0],l);for(var d=1;d<la.length;d++){var m=la[d];m.blockedOn===l&&(m.blockedOn=null)}}for(Wi!==null&&xl(Wi,l),Ui!==null&&xl(Ui,l),Gi!==null&&xl(Gi,l),Ol.forEach(a),vl.forEach(a),d=0;d<Hi.length;d++)m=Hi[d],m.blockedOn===l&&(m.blockedOn=null);for(;0<Hi.length&&(d=Hi[0],d.blockedOn===null);)Km(d),d.blockedOn===null&&Hi.shift()}var fr=P.ReactCurrentBatchConfig,aa=!0;function T1(l,a,d,m){var v=Ke,y=fr.transition;fr.transition=null;try{Ke=1,sd(l,a,d,m)}finally{Ke=v,fr.transition=y}}function N1(l,a,d,m){var v=Ke,y=fr.transition;fr.transition=null;try{Ke=4,sd(l,a,d,m)}finally{Ke=v,fr.transition=y}}function sd(l,a,d,m){if(aa){var v=rd(l,a,d,m);if(v===null)Sd(l,a,m,ca,d),Hm(l,m);else if(C1(v,l,a,d,m))m.stopPropagation();else if(Hm(l,m),a&4&&-1<Q1.indexOf(l)){for(;v!==null;){var y=El(v);if(y!==null&&Ym(y),y=rd(l,a,d,m),y===null&&Sd(l,a,m,ca,d),y===v)break;v=y}v!==null&&m.stopPropagation()}else Sd(l,a,m,null,d)}}var ca=null;function rd(l,a,d,m){if(ca=null,l=Yu(m),l=js(l),l!==null)if(a=Cs(l),a===null)l=null;else if(d=a.tag,d===13){if(l=Dm(a),l!==null)return l;l=null}else if(d===3){if(a.stateNode.current.memoizedState.isDehydrated)return a.tag===3?a.stateNode.containerInfo:null;l=null}else a!==l&&(l=null);return ca=l,null}function eg(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(y1()){case Ku:return 1;case zm:return 4;case ta:case x1:return 16;case Bm:return 536870912;default:return 16}default:return 16}}var Ki=null,ld=null,ua=null;function tg(){if(ua)return ua;var l,a=ld,d=a.length,m,v="value"in Ki?Ki.value:Ki.textContent,y=v.length;for(l=0;l<d&&a[l]===v[l];l++);var $=d-l;for(m=1;m<=$&&a[d-m]===v[y-m];m++);return ua=v.slice(l,1<m?1-m:void 0)}function da(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 ha(){return!0}function ng(){return!1}function Sn(l){function a(d,m,v,y,$){this._reactName=d,this._targetInst=v,this.type=m,this.nativeEvent=y,this.target=$,this.currentTarget=null;for(var E in l)l.hasOwnProperty(E)&&(d=l[E],this[E]=d?d(y):y[E]);return this.isDefaultPrevented=(y.defaultPrevented!=null?y.defaultPrevented:y.returnValue===!1)?ha:ng,this.isPropagationStopped=ng,this}return N(a.prototype,{preventDefault:function(){this.defaultPrevented=!0;var d=this.nativeEvent;d&&(d.preventDefault?d.preventDefault():typeof d.returnValue!="unknown"&&(d.returnValue=!1),this.isDefaultPrevented=ha)},stopPropagation:function(){var d=this.nativeEvent;d&&(d.stopPropagation?d.stopPropagation():typeof d.cancelBubble!="unknown"&&(d.cancelBubble=!0),this.isPropagationStopped=ha)},persist:function(){},isPersistent:ha}),a}var pr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(l){return l.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},od=Sn(pr),Sl=N({},pr,{view:0,detail:0}),E1=Sn(Sl),ad,cd,wl,fa=N({},Sl,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:dd,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!==wl&&(wl&&l.type==="mousemove"?(ad=l.screenX-wl.screenX,cd=l.screenY-wl.screenY):cd=ad=0,wl=l),ad)},movementY:function(l){return"movementY"in l?l.movementY:cd}}),ig=Sn(fa),A1=N({},fa,{dataTransfer:0}),M1=Sn(A1),R1=N({},Sl,{relatedTarget:0}),ud=Sn(R1),D1=N({},pr,{animationName:0,elapsedTime:0,pseudoElement:0}),L1=Sn(D1),I1=N({},pr,{clipboardData:function(l){return"clipboardData"in l?l.clipboardData:window.clipboardData}}),Z1=Sn(I1),F1=N({},pr,{data:0}),sg=Sn(F1),X1={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},z1={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"},B1={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function V1(l){var a=this.nativeEvent;return a.getModifierState?a.getModifierState(l):(l=B1[l])?!!a[l]:!1}function dd(){return V1}var q1=N({},Sl,{key:function(l){if(l.key){var a=X1[l.key]||l.key;if(a!=="Unidentified")return a}return l.type==="keypress"?(l=da(l),l===13?"Enter":String.fromCharCode(l)):l.type==="keydown"||l.type==="keyup"?z1[l.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:dd,charCode:function(l){return l.type==="keypress"?da(l):0},keyCode:function(l){return l.type==="keydown"||l.type==="keyup"?l.keyCode:0},which:function(l){return l.type==="keypress"?da(l):l.type==="keydown"||l.type==="keyup"?l.keyCode:0}}),Y1=Sn(q1),W1=N({},fa,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),rg=Sn(W1),U1=N({},Sl,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:dd}),G1=Sn(U1),H1=N({},pr,{propertyName:0,elapsedTime:0,pseudoElement:0}),K1=Sn(H1),J1=N({},fa,{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}),eb=Sn(J1),tb=[9,13,27,32],hd=c&&"CompositionEvent"in window,bl=null;c&&"documentMode"in document&&(bl=document.documentMode);var nb=c&&"TextEvent"in window&&!bl,lg=c&&(!hd||bl&&8<bl&&11>=bl),og=" ",ag=!1;function cg(l,a){switch(l){case"keyup":return tb.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ug(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var mr=!1;function ib(l,a){switch(l){case"compositionend":return ug(a);case"keypress":return a.which!==32?null:(ag=!0,og);case"textInput":return l=a.data,l===og&&ag?null:l;default:return null}}function sb(l,a){if(mr)return l==="compositionend"||!hd&&cg(l,a)?(l=tg(),ua=ld=Ki=null,mr=!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 lg&&a.locale!=="ko"?null:a.data;default:return null}}var rb={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 dg(l){var a=l&&l.nodeName&&l.nodeName.toLowerCase();return a==="input"?!!rb[l.type]:a==="textarea"}function hg(l,a,d,m){Nm(m),a=va(a,"onChange"),0<a.length&&(d=new od("onChange","change",null,d,m),l.push({event:d,listeners:a}))}var _l=null,$l=null;function lb(l){jg(l,0)}function pa(l){var a=xr(l);if(ze(a))return l}function ob(l,a){if(l==="change")return a}var fg=!1;if(c){var fd;if(c){var pd="oninput"in document;if(!pd){var pg=document.createElement("div");pg.setAttribute("oninput","return;"),pd=typeof pg.oninput=="function"}fd=pd}else fd=!1;fg=fd&&(!document.documentMode||9<document.documentMode)}function mg(){_l&&(_l.detachEvent("onpropertychange",gg),$l=_l=null)}function gg(l){if(l.propertyName==="value"&&pa($l)){var a=[];hg(a,$l,l,Yu(l)),Rm(lb,a)}}function ab(l,a,d){l==="focusin"?(mg(),_l=a,$l=d,_l.attachEvent("onpropertychange",gg)):l==="focusout"&&mg()}function cb(l){if(l==="selectionchange"||l==="keyup"||l==="keydown")return pa($l)}function ub(l,a){if(l==="click")return pa(a)}function db(l,a){if(l==="input"||l==="change")return pa(a)}function hb(l,a){return l===a&&(l!==0||1/l===1/a)||l!==l&&a!==a}var Bn=typeof Object.is=="function"?Object.is:hb;function Pl(l,a){if(Bn(l,a))return!0;if(typeof l!="object"||l===null||typeof a!="object"||a===null)return!1;var d=Object.keys(l),m=Object.keys(a);if(d.length!==m.length)return!1;for(m=0;m<d.length;m++){var v=d[m];if(!u.call(a,v)||!Bn(l[v],a[v]))return!1}return!0}function Og(l){for(;l&&l.firstChild;)l=l.firstChild;return l}function vg(l,a){var d=Og(l);l=0;for(var m;d;){if(d.nodeType===3){if(m=l+d.textContent.length,l<=a&&m>=a)return{node:d,offset:a-l};l=m}e:{for(;d;){if(d.nextSibling){d=d.nextSibling;break e}d=d.parentNode}d=void 0}d=Og(d)}}function yg(l,a){return l&&a?l===a?!0:l&&l.nodeType===3?!1:a&&a.nodeType===3?yg(l,a.parentNode):"contains"in l?l.contains(a):l.compareDocumentPosition?!!(l.compareDocumentPosition(a)&16):!1:!1}function xg(){for(var l=window,a=ft();a instanceof l.HTMLIFrameElement;){try{var d=typeof a.contentWindow.location.href=="string"}catch{d=!1}if(d)l=a.contentWindow;else break;a=ft(l.document)}return a}function md(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 fb(l){var a=xg(),d=l.focusedElem,m=l.selectionRange;if(a!==d&&d&&d.ownerDocument&&yg(d.ownerDocument.documentElement,d)){if(m!==null&&md(d)){if(a=m.start,l=m.end,l===void 0&&(l=a),"selectionStart"in d)d.selectionStart=a,d.selectionEnd=Math.min(l,d.value.length);else if(l=(a=d.ownerDocument||document)&&a.defaultView||window,l.getSelection){l=l.getSelection();var v=d.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=vg(d,y);var $=vg(d,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=d;l=l.parentNode;)l.nodeType===1&&a.push({element:l,left:l.scrollLeft,top:l.scrollTop});for(typeof d.focus=="function"&&d.focus(),d=0;d<a.length;d++)l=a[d],l.element.scrollLeft=l.left,l.element.scrollTop=l.top}}var pb=c&&"documentMode"in document&&11>=document.documentMode,gr=null,gd=null,Ql=null,Od=!1;function kg(l,a,d){var m=d.window===d?d.document:d.nodeType===9?d:d.ownerDocument;Od||gr==null||gr!==ft(m)||(m=gr,"selectionStart"in m&&md(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}),Ql&&Pl(Ql,m)||(Ql=m,m=va(gd,"onSelect"),0<m.length&&(a=new od("onSelect","select",null,a,d),l.push({event:a,listeners:m}),a.target=gr)))}function ma(l,a){var d={};return d[l.toLowerCase()]=a.toLowerCase(),d["Webkit"+l]="webkit"+a,d["Moz"+l]="moz"+a,d}var Or={animationend:ma("Animation","AnimationEnd"),animationiteration:ma("Animation","AnimationIteration"),animationstart:ma("Animation","AnimationStart"),transitionend:ma("Transition","TransitionEnd")},vd={},Sg={};c&&(Sg=document.createElement("div").style,"AnimationEvent"in window||(delete Or.animationend.animation,delete Or.animationiteration.animation,delete Or.animationstart.animation),"TransitionEvent"in window||delete Or.transitionend.transition);function ga(l){if(vd[l])return vd[l];if(!Or[l])return l;var a=Or[l],d;for(d in a)if(a.hasOwnProperty(d)&&d in Sg)return vd[l]=a[d];return l}var wg=ga("animationend"),bg=ga("animationiteration"),_g=ga("animationstart"),$g=ga("transitionend"),Pg=new Map,Qg="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 Ji(l,a){Pg.set(l,a),r(a,[l])}for(var yd=0;yd<Qg.length;yd++){var xd=Qg[yd],mb=xd.toLowerCase(),gb=xd[0].toUpperCase()+xd.slice(1);Ji(mb,"on"+gb)}Ji(wg,"onAnimationEnd"),Ji(bg,"onAnimationIteration"),Ji(_g,"onAnimationStart"),Ji("dblclick","onDoubleClick"),Ji("focusin","onFocus"),Ji("focusout","onBlur"),Ji($g,"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 Cl="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(" "),Ob=new Set("cancel close invalid load scroll toggle".split(" ").concat(Cl));function Cg(l,a,d){var m=l.type||"unknown-event";l.currentTarget=d,m1(m,a,void 0,l),l.currentTarget=null}function jg(l,a){a=(a&4)!==0;for(var d=0;d<l.length;d++){var m=l[d],v=m.event;m=m.listeners;e:{var y=void 0;if(a)for(var $=m.length-1;0<=$;$--){var E=m[$],R=E.instance,U=E.currentTarget;if(E=E.listener,R!==y&&v.isPropagationStopped())break e;Cg(v,E,U),y=R}else for($=0;$<m.length;$++){if(E=m[$],R=E.instance,U=E.currentTarget,E=E.listener,R!==y&&v.isPropagationStopped())break e;Cg(v,E,U),y=R}}}if(ea)throw l=Hu,ea=!1,Hu=null,l}function it(l,a){var d=a[Qd];d===void 0&&(d=a[Qd]=new Set);var m=l+"__bubble";d.has(m)||(Tg(a,l,2,!1),d.add(m))}function kd(l,a,d){var m=0;a&&(m|=4),Tg(d,l,m,a)}var Oa="_reactListening"+Math.random().toString(36).slice(2);function jl(l){if(!l[Oa]){l[Oa]=!0,i.forEach(function(d){d!=="selectionchange"&&(Ob.has(d)||kd(d,!1,l),kd(d,!0,l))});var a=l.nodeType===9?l:l.ownerDocument;a===null||a[Oa]||(a[Oa]=!0,kd("selectionchange",!1,a))}}function Tg(l,a,d,m){switch(eg(a)){case 1:var v=T1;break;case 4:v=N1;break;default:v=sd}d=v.bind(null,a,d,l),v=void 0,!Gu||a!=="touchstart"&&a!=="touchmove"&&a!=="wheel"||(v=!0),m?v!==void 0?l.addEventListener(a,d,{capture:!0,passive:v}):l.addEventListener(a,d,!0):v!==void 0?l.addEventListener(a,d,{passive:v}):l.addEventListener(a,d,!1)}function Sd(l,a,d,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 R=$.tag;if((R===3||R===4)&&(R=$.stateNode.containerInfo,R===v||R.nodeType===8&&R.parentNode===v))return;$=$.return}for(;E!==null;){if($=js(E),$===null)return;if(R=$.tag,R===5||R===6){m=y=$;continue e}E=E.parentNode}}m=m.return}Rm(function(){var U=y,le=Yu(d),ae=[];e:{var re=Pg.get(l);if(re!==void 0){var xe=od,be=l;switch(l){case"keypress":if(da(d)===0)break e;case"keydown":case"keyup":xe=Y1;break;case"focusin":be="focus",xe=ud;break;case"focusout":be="blur",xe=ud;break;case"beforeblur":case"afterblur":xe=ud;break;case"click":if(d.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":xe=ig;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":xe=M1;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":xe=G1;break;case wg:case bg:case _g:xe=L1;break;case $g:xe=K1;break;case"scroll":xe=E1;break;case"wheel":xe=eb;break;case"copy":case"cut":case"paste":xe=Z1;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":xe=rg}var _e=(a&4)!==0,mt=!_e&&l==="scroll",B=_e?re!==null?re+"Capture":null:re;_e=[];for(var Z=U,W;Z!==null;){W=Z;var ce=W.stateNode;if(W.tag===5&&ce!==null&&(W=ce,B!==null&&(ce=hl(Z,B),ce!=null&&_e.push(Tl(Z,ce,W)))),mt)break;Z=Z.return}0<_e.length&&(re=new xe(re,be,null,d,le),ae.push({event:re,listeners:_e}))}}if((a&7)===0){e:{if(re=l==="mouseover"||l==="pointerover",xe=l==="mouseout"||l==="pointerout",re&&d!==ur&&(be=d.relatedTarget||d.fromElement)&&(js(be)||be[Qi]))break e;if((xe||re)&&(re=le.window===le?le:(re=le.ownerDocument)?re.defaultView||re.parentWindow:window,xe?(be=d.relatedTarget||d.toElement,xe=U,be=be?js(be):null,be!==null&&(mt=Cs(be),be!==mt||be.tag!==5&&be.tag!==6)&&(be=null)):(xe=null,be=U),xe!==be)){if(_e=ig,ce="onMouseLeave",B="onMouseEnter",Z="mouse",(l==="pointerout"||l==="pointerover")&&(_e=rg,ce="onPointerLeave",B="onPointerEnter",Z="pointer"),mt=xe==null?re:xr(xe),W=be==null?re:xr(be),re=new _e(ce,Z+"leave",xe,d,le),re.target=mt,re.relatedTarget=W,ce=null,js(le)===U&&(_e=new _e(B,Z+"enter",be,d,le),_e.target=W,_e.relatedTarget=mt,ce=_e),mt=ce,xe&&be)t:{for(_e=xe,B=be,Z=0,W=_e;W;W=vr(W))Z++;for(W=0,ce=B;ce;ce=vr(ce))W++;for(;0<Z-W;)_e=vr(_e),Z--;for(;0<W-Z;)B=vr(B),W--;for(;Z--;){if(_e===B||B!==null&&_e===B.alternate)break t;_e=vr(_e),B=vr(B)}_e=null}else _e=null;xe!==null&&Ng(ae,re,xe,_e,!1),be!==null&&mt!==null&&Ng(ae,mt,be,_e,!0)}}e:{if(re=U?xr(U):window,xe=re.nodeName&&re.nodeName.toLowerCase(),xe==="select"||xe==="input"&&re.type==="file")var Pe=ob;else if(dg(re))if(fg)Pe=db;else{Pe=cb;var Ne=ab}else(xe=re.nodeName)&&xe.toLowerCase()==="input"&&(re.type==="checkbox"||re.type==="radio")&&(Pe=ub);if(Pe&&(Pe=Pe(l,U))){hg(ae,Pe,d,le);break e}Ne&&Ne(l,re,U),l==="focusout"&&(Ne=re._wrapperState)&&Ne.controlled&&re.type==="number"&&lr(re,"number",re.value)}switch(Ne=U?xr(U):window,l){case"focusin":(dg(Ne)||Ne.contentEditable==="true")&&(gr=Ne,gd=U,Ql=null);break;case"focusout":Ql=gd=gr=null;break;case"mousedown":Od=!0;break;case"contextmenu":case"mouseup":case"dragend":Od=!1,kg(ae,d,le);break;case"selectionchange":if(pb)break;case"keydown":case"keyup":kg(ae,d,le)}var Ee;if(hd)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 mr?cg(l,d)&&(Ae="onCompositionEnd"):l==="keydown"&&d.keyCode===229&&(Ae="onCompositionStart");Ae&&(lg&&d.locale!=="ko"&&(mr||Ae!=="onCompositionStart"?Ae==="onCompositionEnd"&&mr&&(Ee=tg()):(Ki=le,ld="value"in Ki?Ki.value:Ki.textContent,mr=!0)),Ne=va(U,Ae),0<Ne.length&&(Ae=new sg(Ae,l,null,d,le),ae.push({event:Ae,listeners:Ne}),Ee?Ae.data=Ee:(Ee=ug(d),Ee!==null&&(Ae.data=Ee)))),(Ee=nb?ib(l,d):sb(l,d))&&(U=va(U,"onBeforeInput"),0<U.length&&(le=new sg("onBeforeInput","beforeinput",null,d,le),ae.push({event:le,listeners:U}),le.data=Ee))}jg(ae,a)})}function Tl(l,a,d){return{instance:l,listener:a,currentTarget:d}}function va(l,a){for(var d=a+"Capture",m=[];l!==null;){var v=l,y=v.stateNode;v.tag===5&&y!==null&&(v=y,y=hl(l,d),y!=null&&m.unshift(Tl(l,y,v)),y=hl(l,a),y!=null&&m.push(Tl(l,y,v))),l=l.return}return m}function vr(l){if(l===null)return null;do l=l.return;while(l&&l.tag!==5);return l||null}function Ng(l,a,d,m,v){for(var y=a._reactName,$=[];d!==null&&d!==m;){var E=d,R=E.alternate,U=E.stateNode;if(R!==null&&R===m)break;E.tag===5&&U!==null&&(E=U,v?(R=hl(d,y),R!=null&&$.unshift(Tl(d,R,E))):v||(R=hl(d,y),R!=null&&$.push(Tl(d,R,E)))),d=d.return}$.length!==0&&l.push({event:a,listeners:$})}var vb=/\r\n?/g,yb=/\u0000|\uFFFD/g;function Eg(l){return(typeof l=="string"?l:""+l).replace(vb,`
30
- `).replace(yb,"")}function ya(l,a,d){if(a=Eg(a),Eg(l)!==a&&d)throw Error(t(425))}function xa(){}var wd=null,bd=null;function _d(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 $d=typeof setTimeout=="function"?setTimeout:void 0,xb=typeof clearTimeout=="function"?clearTimeout:void 0,Ag=typeof Promise=="function"?Promise:void 0,kb=typeof queueMicrotask=="function"?queueMicrotask:typeof Ag<"u"?function(l){return Ag.resolve(null).then(l).catch(Sb)}:$d;function Sb(l){setTimeout(function(){throw l})}function Pd(l,a){var d=a,m=0;do{var v=d.nextSibling;if(l.removeChild(d),v&&v.nodeType===8)if(d=v.data,d==="/$"){if(m===0){l.removeChild(v),kl(a);return}m--}else d!=="$"&&d!=="$?"&&d!=="$!"||m++;d=v}while(d);kl(a)}function es(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 Mg(l){l=l.previousSibling;for(var a=0;l;){if(l.nodeType===8){var d=l.data;if(d==="$"||d==="$!"||d==="$?"){if(a===0)return l;a--}else d==="/$"&&a++}l=l.previousSibling}return null}var yr=Math.random().toString(36).slice(2),ri="__reactFiber$"+yr,Nl="__reactProps$"+yr,Qi="__reactContainer$"+yr,Qd="__reactEvents$"+yr,wb="__reactListeners$"+yr,bb="__reactHandles$"+yr;function js(l){var a=l[ri];if(a)return a;for(var d=l.parentNode;d;){if(a=d[Qi]||d[ri]){if(d=a.alternate,a.child!==null||d!==null&&d.child!==null)for(l=Mg(l);l!==null;){if(d=l[ri])return d;l=Mg(l)}return a}l=d,d=l.parentNode}return null}function El(l){return l=l[ri]||l[Qi],!l||l.tag!==5&&l.tag!==6&&l.tag!==13&&l.tag!==3?null:l}function xr(l){if(l.tag===5||l.tag===6)return l.stateNode;throw Error(t(33))}function ka(l){return l[Nl]||null}var Cd=[],kr=-1;function ts(l){return{current:l}}function st(l){0>kr||(l.current=Cd[kr],Cd[kr]=null,kr--)}function nt(l,a){kr++,Cd[kr]=l.current,l.current=a}var ns={},Bt=ts(ns),on=ts(!1),Ts=ns;function Sr(l,a){var d=l.type.contextTypes;if(!d)return ns;var m=l.stateNode;if(m&&m.__reactInternalMemoizedUnmaskedChildContext===a)return m.__reactInternalMemoizedMaskedChildContext;var v={},y;for(y in d)v[y]=a[y];return m&&(l=l.stateNode,l.__reactInternalMemoizedUnmaskedChildContext=a,l.__reactInternalMemoizedMaskedChildContext=v),v}function an(l){return l=l.childContextTypes,l!=null}function Sa(){st(on),st(Bt)}function Rg(l,a,d){if(Bt.current!==ns)throw Error(t(168));nt(Bt,a),nt(on,d)}function Dg(l,a,d){var m=l.stateNode;if(a=a.childContextTypes,typeof m.getChildContext!="function")return d;m=m.getChildContext();for(var v in m)if(!(v in a))throw Error(t(108,pe(l)||"Unknown",v));return N({},d,m)}function wa(l){return l=(l=l.stateNode)&&l.__reactInternalMemoizedMergedChildContext||ns,Ts=Bt.current,nt(Bt,l),nt(on,on.current),!0}function Lg(l,a,d){var m=l.stateNode;if(!m)throw Error(t(169));d?(l=Dg(l,a,Ts),m.__reactInternalMemoizedMergedChildContext=l,st(on),st(Bt),nt(Bt,l)):st(on),nt(on,d)}var Ci=null,ba=!1,jd=!1;function Ig(l){Ci===null?Ci=[l]:Ci.push(l)}function _b(l){ba=!0,Ig(l)}function is(){if(!jd&&Ci!==null){jd=!0;var l=0,a=Ke;try{var d=Ci;for(Ke=1;l<d.length;l++){var m=d[l];do m=m(!0);while(m!==null)}Ci=null,ba=!1}catch(v){throw Ci!==null&&(Ci=Ci.slice(l+1)),Fm(Ku,is),v}finally{Ke=a,jd=!1}}return null}var wr=[],br=0,_a=null,$a=0,Tn=[],Nn=0,Ns=null,ji=1,Ti="";function Es(l,a){wr[br++]=$a,wr[br++]=_a,_a=l,$a=a}function Zg(l,a,d){Tn[Nn++]=ji,Tn[Nn++]=Ti,Tn[Nn++]=Ns,Ns=l;var m=ji;l=Ti;var v=32-zn(m)-1;m&=~(1<<v),d+=1;var y=32-zn(a)+v;if(30<y){var $=v-v%5;y=(m&(1<<$)-1).toString(32),m>>=$,v-=$,ji=1<<32-zn(a)+v|d<<v|m,Ti=y+l}else ji=1<<y|d<<v|m,Ti=l}function Td(l){l.return!==null&&(Es(l,1),Zg(l,1,0))}function Nd(l){for(;l===_a;)_a=wr[--br],wr[br]=null,$a=wr[--br],wr[br]=null;for(;l===Ns;)Ns=Tn[--Nn],Tn[Nn]=null,Ti=Tn[--Nn],Tn[Nn]=null,ji=Tn[--Nn],Tn[Nn]=null}var wn=null,bn=null,ot=!1,Vn=null;function Fg(l,a){var d=Rn(5,null,null,0);d.elementType="DELETED",d.stateNode=a,d.return=l,a=l.deletions,a===null?(l.deletions=[d],l.flags|=16):a.push(d)}function Xg(l,a){switch(l.tag){case 5:var d=l.type;return a=a.nodeType!==1||d.toLowerCase()!==a.nodeName.toLowerCase()?null:a,a!==null?(l.stateNode=a,wn=l,bn=es(a.firstChild),!0):!1;case 6:return a=l.pendingProps===""||a.nodeType!==3?null:a,a!==null?(l.stateNode=a,wn=l,bn=null,!0):!1;case 13:return a=a.nodeType!==8?null:a,a!==null?(d=Ns!==null?{id:ji,overflow:Ti}:null,l.memoizedState={dehydrated:a,treeContext:d,retryLane:1073741824},d=Rn(18,null,null,0),d.stateNode=a,d.return=l,l.child=d,wn=l,bn=null,!0):!1;default:return!1}}function Ed(l){return(l.mode&1)!==0&&(l.flags&128)===0}function Ad(l){if(ot){var a=bn;if(a){var d=a;if(!Xg(l,a)){if(Ed(l))throw Error(t(418));a=es(d.nextSibling);var m=wn;a&&Xg(l,a)?Fg(m,d):(l.flags=l.flags&-4097|2,ot=!1,wn=l)}}else{if(Ed(l))throw Error(t(418));l.flags=l.flags&-4097|2,ot=!1,wn=l}}}function zg(l){for(l=l.return;l!==null&&l.tag!==5&&l.tag!==3&&l.tag!==13;)l=l.return;wn=l}function Pa(l){if(l!==wn)return!1;if(!ot)return zg(l),ot=!0,!1;var a;if((a=l.tag!==3)&&!(a=l.tag!==5)&&(a=l.type,a=a!=="head"&&a!=="body"&&!_d(l.type,l.memoizedProps)),a&&(a=bn)){if(Ed(l))throw Bg(),Error(t(418));for(;a;)Fg(l,a),a=es(a.nextSibling)}if(zg(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 d=l.data;if(d==="/$"){if(a===0){bn=es(l.nextSibling);break e}a--}else d!=="$"&&d!=="$!"&&d!=="$?"||a++}l=l.nextSibling}bn=null}}else bn=wn?es(l.stateNode.nextSibling):null;return!0}function Bg(){for(var l=bn;l;)l=es(l.nextSibling)}function _r(){bn=wn=null,ot=!1}function Md(l){Vn===null?Vn=[l]:Vn.push(l)}var $b=P.ReactCurrentBatchConfig;function Al(l,a,d){if(l=d.ref,l!==null&&typeof l!="function"&&typeof l!="object"){if(d._owner){if(d=d._owner,d){if(d.tag!==1)throw Error(t(309));var m=d.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(!d._owner)throw Error(t(290,l))}return l}function Qa(l,a){throw l=Object.prototype.toString.call(a),Error(t(31,l==="[object Object]"?"object with keys {"+Object.keys(a).join(", ")+"}":l))}function Vg(l){var a=l._init;return a(l._payload)}function qg(l){function a(B,Z){if(l){var W=B.deletions;W===null?(B.deletions=[Z],B.flags|=16):W.push(Z)}}function d(B,Z){if(!l)return null;for(;Z!==null;)a(B,Z),Z=Z.sibling;return null}function m(B,Z){for(B=new Map;Z!==null;)Z.key!==null?B.set(Z.key,Z):B.set(Z.index,Z),Z=Z.sibling;return B}function v(B,Z){return B=ds(B,Z),B.index=0,B.sibling=null,B}function y(B,Z,W){return B.index=W,l?(W=B.alternate,W!==null?(W=W.index,W<Z?(B.flags|=2,Z):W):(B.flags|=2,Z)):(B.flags|=1048576,Z)}function $(B){return l&&B.alternate===null&&(B.flags|=2),B}function E(B,Z,W,ce){return Z===null||Z.tag!==6?(Z=$h(W,B.mode,ce),Z.return=B,Z):(Z=v(Z,W),Z.return=B,Z)}function R(B,Z,W,ce){var Pe=W.type;return Pe===A?le(B,Z,W.props.children,ce,W.key):Z!==null&&(Z.elementType===Pe||typeof Pe=="object"&&Pe!==null&&Pe.$$typeof===ve&&Vg(Pe)===Z.type)?(ce=v(Z,W.props),ce.ref=Al(B,Z,W),ce.return=B,ce):(ce=Ka(W.type,W.key,W.props,null,B.mode,ce),ce.ref=Al(B,Z,W),ce.return=B,ce)}function U(B,Z,W,ce){return Z===null||Z.tag!==4||Z.stateNode.containerInfo!==W.containerInfo||Z.stateNode.implementation!==W.implementation?(Z=Ph(W,B.mode,ce),Z.return=B,Z):(Z=v(Z,W.children||[]),Z.return=B,Z)}function le(B,Z,W,ce,Pe){return Z===null||Z.tag!==7?(Z=Fs(W,B.mode,ce,Pe),Z.return=B,Z):(Z=v(Z,W),Z.return=B,Z)}function ae(B,Z,W){if(typeof Z=="string"&&Z!==""||typeof Z=="number")return Z=$h(""+Z,B.mode,W),Z.return=B,Z;if(typeof Z=="object"&&Z!==null){switch(Z.$$typeof){case _:return W=Ka(Z.type,Z.key,Z.props,null,B.mode,W),W.ref=Al(B,null,Z),W.return=B,W;case T:return Z=Ph(Z,B.mode,W),Z.return=B,Z;case ve:var ce=Z._init;return ae(B,ce(Z._payload),W)}if(M(Z)||L(Z))return Z=Fs(Z,B.mode,W,null),Z.return=B,Z;Qa(B,Z)}return null}function re(B,Z,W,ce){var Pe=Z!==null?Z.key:null;if(typeof W=="string"&&W!==""||typeof W=="number")return Pe!==null?null:E(B,Z,""+W,ce);if(typeof W=="object"&&W!==null){switch(W.$$typeof){case _:return W.key===Pe?R(B,Z,W,ce):null;case T:return W.key===Pe?U(B,Z,W,ce):null;case ve:return Pe=W._init,re(B,Z,Pe(W._payload),ce)}if(M(W)||L(W))return Pe!==null?null:le(B,Z,W,ce,null);Qa(B,W)}return null}function xe(B,Z,W,ce,Pe){if(typeof ce=="string"&&ce!==""||typeof ce=="number")return B=B.get(W)||null,E(Z,B,""+ce,Pe);if(typeof ce=="object"&&ce!==null){switch(ce.$$typeof){case _:return B=B.get(ce.key===null?W:ce.key)||null,R(Z,B,ce,Pe);case T:return B=B.get(ce.key===null?W:ce.key)||null,U(Z,B,ce,Pe);case ve:var Ne=ce._init;return xe(B,Z,W,Ne(ce._payload),Pe)}if(M(ce)||L(ce))return B=B.get(W)||null,le(Z,B,ce,Pe,null);Qa(Z,ce)}return null}function be(B,Z,W,ce){for(var Pe=null,Ne=null,Ee=Z,Ae=Z=0,Et=null;Ee!==null&&Ae<W.length;Ae++){Ee.index>Ae?(Et=Ee,Ee=null):Et=Ee.sibling;var We=re(B,Ee,W[Ae],ce);if(We===null){Ee===null&&(Ee=Et);break}l&&Ee&&We.alternate===null&&a(B,Ee),Z=y(We,Z,Ae),Ne===null?Pe=We:Ne.sibling=We,Ne=We,Ee=Et}if(Ae===W.length)return d(B,Ee),ot&&Es(B,Ae),Pe;if(Ee===null){for(;Ae<W.length;Ae++)Ee=ae(B,W[Ae],ce),Ee!==null&&(Z=y(Ee,Z,Ae),Ne===null?Pe=Ee:Ne.sibling=Ee,Ne=Ee);return ot&&Es(B,Ae),Pe}for(Ee=m(B,Ee);Ae<W.length;Ae++)Et=xe(Ee,B,Ae,W[Ae],ce),Et!==null&&(l&&Et.alternate!==null&&Ee.delete(Et.key===null?Ae:Et.key),Z=y(Et,Z,Ae),Ne===null?Pe=Et:Ne.sibling=Et,Ne=Et);return l&&Ee.forEach(function(hs){return a(B,hs)}),ot&&Es(B,Ae),Pe}function _e(B,Z,W,ce){var Pe=L(W);if(typeof Pe!="function")throw Error(t(150));if(W=Pe.call(W),W==null)throw Error(t(151));for(var Ne=Pe=null,Ee=Z,Ae=Z=0,Et=null,We=W.next();Ee!==null&&!We.done;Ae++,We=W.next()){Ee.index>Ae?(Et=Ee,Ee=null):Et=Ee.sibling;var hs=re(B,Ee,We.value,ce);if(hs===null){Ee===null&&(Ee=Et);break}l&&Ee&&hs.alternate===null&&a(B,Ee),Z=y(hs,Z,Ae),Ne===null?Pe=hs:Ne.sibling=hs,Ne=hs,Ee=Et}if(We.done)return d(B,Ee),ot&&Es(B,Ae),Pe;if(Ee===null){for(;!We.done;Ae++,We=W.next())We=ae(B,We.value,ce),We!==null&&(Z=y(We,Z,Ae),Ne===null?Pe=We:Ne.sibling=We,Ne=We);return ot&&Es(B,Ae),Pe}for(Ee=m(B,Ee);!We.done;Ae++,We=W.next())We=xe(Ee,B,Ae,We.value,ce),We!==null&&(l&&We.alternate!==null&&Ee.delete(We.key===null?Ae:We.key),Z=y(We,Z,Ae),Ne===null?Pe=We:Ne.sibling=We,Ne=We);return l&&Ee.forEach(function(r_){return a(B,r_)}),ot&&Es(B,Ae),Pe}function mt(B,Z,W,ce){if(typeof W=="object"&&W!==null&&W.type===A&&W.key===null&&(W=W.props.children),typeof W=="object"&&W!==null){switch(W.$$typeof){case _:e:{for(var Pe=W.key,Ne=Z;Ne!==null;){if(Ne.key===Pe){if(Pe=W.type,Pe===A){if(Ne.tag===7){d(B,Ne.sibling),Z=v(Ne,W.props.children),Z.return=B,B=Z;break e}}else if(Ne.elementType===Pe||typeof Pe=="object"&&Pe!==null&&Pe.$$typeof===ve&&Vg(Pe)===Ne.type){d(B,Ne.sibling),Z=v(Ne,W.props),Z.ref=Al(B,Ne,W),Z.return=B,B=Z;break e}d(B,Ne);break}else a(B,Ne);Ne=Ne.sibling}W.type===A?(Z=Fs(W.props.children,B.mode,ce,W.key),Z.return=B,B=Z):(ce=Ka(W.type,W.key,W.props,null,B.mode,ce),ce.ref=Al(B,Z,W),ce.return=B,B=ce)}return $(B);case T:e:{for(Ne=W.key;Z!==null;){if(Z.key===Ne)if(Z.tag===4&&Z.stateNode.containerInfo===W.containerInfo&&Z.stateNode.implementation===W.implementation){d(B,Z.sibling),Z=v(Z,W.children||[]),Z.return=B,B=Z;break e}else{d(B,Z);break}else a(B,Z);Z=Z.sibling}Z=Ph(W,B.mode,ce),Z.return=B,B=Z}return $(B);case ve:return Ne=W._init,mt(B,Z,Ne(W._payload),ce)}if(M(W))return be(B,Z,W,ce);if(L(W))return _e(B,Z,W,ce);Qa(B,W)}return typeof W=="string"&&W!==""||typeof W=="number"?(W=""+W,Z!==null&&Z.tag===6?(d(B,Z.sibling),Z=v(Z,W),Z.return=B,B=Z):(d(B,Z),Z=$h(W,B.mode,ce),Z.return=B,B=Z),$(B)):d(B,Z)}return mt}var $r=qg(!0),Yg=qg(!1),Ca=ts(null),ja=null,Pr=null,Rd=null;function Dd(){Rd=Pr=ja=null}function Ld(l){var a=Ca.current;st(Ca),l._currentValue=a}function Id(l,a,d){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===d)break;l=l.return}}function Qr(l,a){ja=l,Rd=Pr=null,l=l.dependencies,l!==null&&l.firstContext!==null&&((l.lanes&a)!==0&&(cn=!0),l.firstContext=null)}function En(l){var a=l._currentValue;if(Rd!==l)if(l={context:l,memoizedValue:a,next:null},Pr===null){if(ja===null)throw Error(t(308));Pr=l,ja.dependencies={lanes:0,firstContext:l}}else Pr=Pr.next=l;return a}var As=null;function Zd(l){As===null?As=[l]:As.push(l)}function Wg(l,a,d,m){var v=a.interleaved;return v===null?(d.next=d,Zd(a)):(d.next=v.next,v.next=d),a.interleaved=d,Ni(l,m)}function Ni(l,a){l.lanes|=a;var d=l.alternate;for(d!==null&&(d.lanes|=a),d=l,l=l.return;l!==null;)l.childLanes|=a,d=l.alternate,d!==null&&(d.childLanes|=a),d=l,l=l.return;return d.tag===3?d.stateNode:null}var ss=!1;function Fd(l){l.updateQueue={baseState:l.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Ug(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 Ei(l,a){return{eventTime:l,lane:a,tag:0,payload:null,callback:null,next:null}}function rs(l,a,d){var m=l.updateQueue;if(m===null)return null;if(m=m.shared,(Ve&2)!==0){var v=m.pending;return v===null?a.next=a:(a.next=v.next,v.next=a),m.pending=a,Ni(l,d)}return v=m.interleaved,v===null?(a.next=a,Zd(m)):(a.next=v.next,v.next=a),m.interleaved=a,Ni(l,d)}function Ta(l,a,d){if(a=a.updateQueue,a!==null&&(a=a.shared,(d&4194240)!==0)){var m=a.lanes;m&=l.pendingLanes,d|=m,a.lanes=d,td(l,d)}}function Gg(l,a){var d=l.updateQueue,m=l.alternate;if(m!==null&&(m=m.updateQueue,d===m)){var v=null,y=null;if(d=d.firstBaseUpdate,d!==null){do{var $={eventTime:d.eventTime,lane:d.lane,tag:d.tag,payload:d.payload,callback:d.callback,next:null};y===null?v=y=$:y=y.next=$,d=d.next}while(d!==null);y===null?v=y=a:y=y.next=a}else v=y=a;d={baseState:m.baseState,firstBaseUpdate:v,lastBaseUpdate:y,shared:m.shared,effects:m.effects},l.updateQueue=d;return}l=d.lastBaseUpdate,l===null?d.firstBaseUpdate=a:l.next=a,d.lastBaseUpdate=a}function Na(l,a,d,m){var v=l.updateQueue;ss=!1;var y=v.firstBaseUpdate,$=v.lastBaseUpdate,E=v.shared.pending;if(E!==null){v.shared.pending=null;var R=E,U=R.next;R.next=null,$===null?y=U:$.next=U,$=R;var le=l.alternate;le!==null&&(le=le.updateQueue,E=le.lastBaseUpdate,E!==$&&(E===null?le.firstBaseUpdate=U:E.next=U,le.lastBaseUpdate=R))}if(y!==null){var ae=v.baseState;$=0,le=U=R=null,E=y;do{var re=E.lane,xe=E.eventTime;if((m&re)===re){le!==null&&(le=le.next={eventTime:xe,lane:0,tag:E.tag,payload:E.payload,callback:E.callback,next:null});e:{var be=l,_e=E;switch(re=a,xe=d,_e.tag){case 1:if(be=_e.payload,typeof be=="function"){ae=be.call(xe,ae,re);break e}ae=be;break e;case 3:be.flags=be.flags&-65537|128;case 0:if(be=_e.payload,re=typeof be=="function"?be.call(xe,ae,re):be,re==null)break e;ae=N({},ae,re);break e;case 2:ss=!0}}E.callback!==null&&E.lane!==0&&(l.flags|=64,re=v.effects,re===null?v.effects=[E]:re.push(E))}else xe={eventTime:xe,lane:re,tag:E.tag,payload:E.payload,callback:E.callback,next:null},le===null?(U=le=xe,R=ae):le=le.next=xe,$|=re;if(E=E.next,E===null){if(E=v.shared.pending,E===null)break;re=E,E=re.next,re.next=null,v.lastBaseUpdate=re,v.shared.pending=null}}while(!0);if(le===null&&(R=ae),v.baseState=R,v.firstBaseUpdate=U,v.lastBaseUpdate=le,a=v.shared.interleaved,a!==null){v=a;do $|=v.lane,v=v.next;while(v!==a)}else y===null&&(v.shared.lanes=0);Ds|=$,l.lanes=$,l.memoizedState=ae}}function Hg(l,a,d){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=d,typeof v!="function")throw Error(t(191,v));v.call(m)}}}var Ml={},li=ts(Ml),Rl=ts(Ml),Dl=ts(Ml);function Ms(l){if(l===Ml)throw Error(t(174));return l}function Xd(l,a){switch(nt(Dl,a),nt(Rl,l),nt(li,Ml),l=a.nodeType,l){case 9:case 11:a=(a=a.documentElement)?a.namespaceURI:Be(null,"");break;default:l=l===8?a.parentNode:a,a=l.namespaceURI||null,l=l.tagName,a=Be(a,l)}st(li),nt(li,a)}function Cr(){st(li),st(Rl),st(Dl)}function Kg(l){Ms(Dl.current);var a=Ms(li.current),d=Be(a,l.type);a!==d&&(nt(Rl,l),nt(li,d))}function zd(l){Rl.current===l&&(st(li),st(Rl))}var ut=ts(0);function Ea(l){for(var a=l;a!==null;){if(a.tag===13){var d=a.memoizedState;if(d!==null&&(d=d.dehydrated,d===null||d.data==="$?"||d.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 Bd=[];function Vd(){for(var l=0;l<Bd.length;l++)Bd[l]._workInProgressVersionPrimary=null;Bd.length=0}var Aa=P.ReactCurrentDispatcher,qd=P.ReactCurrentBatchConfig,Rs=0,dt=null,_t=null,Tt=null,Ma=!1,Ll=!1,Il=0,Pb=0;function Vt(){throw Error(t(321))}function Yd(l,a){if(a===null)return!1;for(var d=0;d<a.length&&d<l.length;d++)if(!Bn(l[d],a[d]))return!1;return!0}function Wd(l,a,d,m,v,y){if(Rs=y,dt=a,a.memoizedState=null,a.updateQueue=null,a.lanes=0,Aa.current=l===null||l.memoizedState===null?Tb:Nb,l=d(m,v),Ll){y=0;do{if(Ll=!1,Il=0,25<=y)throw Error(t(301));y+=1,Tt=_t=null,a.updateQueue=null,Aa.current=Eb,l=d(m,v)}while(Ll)}if(Aa.current=La,a=_t!==null&&_t.next!==null,Rs=0,Tt=_t=dt=null,Ma=!1,a)throw Error(t(300));return l}function Ud(){var l=Il!==0;return Il=0,l}function oi(){var l={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Tt===null?dt.memoizedState=Tt=l:Tt=Tt.next=l,Tt}function An(){if(_t===null){var l=dt.alternate;l=l!==null?l.memoizedState:null}else l=_t.next;var a=Tt===null?dt.memoizedState:Tt.next;if(a!==null)Tt=a,_t=l;else{if(l===null)throw Error(t(310));_t=l,l={memoizedState:_t.memoizedState,baseState:_t.baseState,baseQueue:_t.baseQueue,queue:_t.queue,next:null},Tt===null?dt.memoizedState=Tt=l:Tt=Tt.next=l}return Tt}function Zl(l,a){return typeof a=="function"?a(l):a}function Gd(l){var a=An(),d=a.queue;if(d===null)throw Error(t(311));d.lastRenderedReducer=l;var m=_t,v=m.baseQueue,y=d.pending;if(y!==null){if(v!==null){var $=v.next;v.next=y.next,y.next=$}m.baseQueue=v=y,d.pending=null}if(v!==null){y=v.next,m=m.baseState;var E=$=null,R=null,U=y;do{var le=U.lane;if((Rs&le)===le)R!==null&&(R=R.next={lane:0,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null}),m=U.hasEagerState?U.eagerState:l(m,U.action);else{var ae={lane:le,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null};R===null?(E=R=ae,$=m):R=R.next=ae,dt.lanes|=le,Ds|=le}U=U.next}while(U!==null&&U!==y);R===null?$=m:R.next=E,Bn(m,a.memoizedState)||(cn=!0),a.memoizedState=m,a.baseState=$,a.baseQueue=R,d.lastRenderedState=m}if(l=d.interleaved,l!==null){v=l;do y=v.lane,dt.lanes|=y,Ds|=y,v=v.next;while(v!==l)}else v===null&&(d.lanes=0);return[a.memoizedState,d.dispatch]}function Hd(l){var a=An(),d=a.queue;if(d===null)throw Error(t(311));d.lastRenderedReducer=l;var m=d.dispatch,v=d.pending,y=a.memoizedState;if(v!==null){d.pending=null;var $=v=v.next;do y=l(y,$.action),$=$.next;while($!==v);Bn(y,a.memoizedState)||(cn=!0),a.memoizedState=y,a.baseQueue===null&&(a.baseState=y),d.lastRenderedState=y}return[y,m]}function Jg(){}function eO(l,a){var d=dt,m=An(),v=a(),y=!Bn(m.memoizedState,v);if(y&&(m.memoizedState=v,cn=!0),m=m.queue,Kd(iO.bind(null,d,m,l),[l]),m.getSnapshot!==a||y||Tt!==null&&Tt.memoizedState.tag&1){if(d.flags|=2048,Fl(9,nO.bind(null,d,m,v,a),void 0,null),Nt===null)throw Error(t(349));(Rs&30)!==0||tO(d,a,v)}return v}function tO(l,a,d){l.flags|=16384,l={getSnapshot:a,value:d},a=dt.updateQueue,a===null?(a={lastEffect:null,stores:null},dt.updateQueue=a,a.stores=[l]):(d=a.stores,d===null?a.stores=[l]:d.push(l))}function nO(l,a,d,m){a.value=d,a.getSnapshot=m,sO(a)&&rO(l)}function iO(l,a,d){return d(function(){sO(a)&&rO(l)})}function sO(l){var a=l.getSnapshot;l=l.value;try{var d=a();return!Bn(l,d)}catch{return!0}}function rO(l){var a=Ni(l,1);a!==null&&Un(a,l,1,-1)}function lO(l){var a=oi();return typeof l=="function"&&(l=l()),a.memoizedState=a.baseState=l,l={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Zl,lastRenderedState:l},a.queue=l,l=l.dispatch=jb.bind(null,dt,l),[a.memoizedState,l]}function Fl(l,a,d,m){return l={tag:l,create:a,destroy:d,deps:m,next:null},a=dt.updateQueue,a===null?(a={lastEffect:null,stores:null},dt.updateQueue=a,a.lastEffect=l.next=l):(d=a.lastEffect,d===null?a.lastEffect=l.next=l:(m=d.next,d.next=l,l.next=m,a.lastEffect=l)),l}function oO(){return An().memoizedState}function Ra(l,a,d,m){var v=oi();dt.flags|=l,v.memoizedState=Fl(1|a,d,void 0,m===void 0?null:m)}function Da(l,a,d,m){var v=An();m=m===void 0?null:m;var y=void 0;if(_t!==null){var $=_t.memoizedState;if(y=$.destroy,m!==null&&Yd(m,$.deps)){v.memoizedState=Fl(a,d,y,m);return}}dt.flags|=l,v.memoizedState=Fl(1|a,d,y,m)}function aO(l,a){return Ra(8390656,8,l,a)}function Kd(l,a){return Da(2048,8,l,a)}function cO(l,a){return Da(4,2,l,a)}function uO(l,a){return Da(4,4,l,a)}function dO(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 hO(l,a,d){return d=d!=null?d.concat([l]):null,Da(4,4,dO.bind(null,a,l),d)}function Jd(){}function fO(l,a){var d=An();a=a===void 0?null:a;var m=d.memoizedState;return m!==null&&a!==null&&Yd(a,m[1])?m[0]:(d.memoizedState=[l,a],l)}function pO(l,a){var d=An();a=a===void 0?null:a;var m=d.memoizedState;return m!==null&&a!==null&&Yd(a,m[1])?m[0]:(l=l(),d.memoizedState=[l,a],l)}function mO(l,a,d){return(Rs&21)===0?(l.baseState&&(l.baseState=!1,cn=!0),l.memoizedState=d):(Bn(d,a)||(d=Vm(),dt.lanes|=d,Ds|=d,l.baseState=!0),a)}function Qb(l,a){var d=Ke;Ke=d!==0&&4>d?d:4,l(!0);var m=qd.transition;qd.transition={};try{l(!1),a()}finally{Ke=d,qd.transition=m}}function gO(){return An().memoizedState}function Cb(l,a,d){var m=cs(l);if(d={lane:m,action:d,hasEagerState:!1,eagerState:null,next:null},OO(l))vO(a,d);else if(d=Wg(l,a,d,m),d!==null){var v=Jt();Un(d,l,m,v),yO(d,a,m)}}function jb(l,a,d){var m=cs(l),v={lane:m,action:d,hasEagerState:!1,eagerState:null,next:null};if(OO(l))vO(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($,d);if(v.hasEagerState=!0,v.eagerState=E,Bn(E,$)){var R=a.interleaved;R===null?(v.next=v,Zd(a)):(v.next=R.next,R.next=v),a.interleaved=v;return}}catch{}finally{}d=Wg(l,a,v,m),d!==null&&(v=Jt(),Un(d,l,m,v),yO(d,a,m))}}function OO(l){var a=l.alternate;return l===dt||a!==null&&a===dt}function vO(l,a){Ll=Ma=!0;var d=l.pending;d===null?a.next=a:(a.next=d.next,d.next=a),l.pending=a}function yO(l,a,d){if((d&4194240)!==0){var m=a.lanes;m&=l.pendingLanes,d|=m,a.lanes=d,td(l,d)}}var La={readContext:En,useCallback:Vt,useContext:Vt,useEffect:Vt,useImperativeHandle:Vt,useInsertionEffect:Vt,useLayoutEffect:Vt,useMemo:Vt,useReducer:Vt,useRef:Vt,useState:Vt,useDebugValue:Vt,useDeferredValue:Vt,useTransition:Vt,useMutableSource:Vt,useSyncExternalStore:Vt,useId:Vt,unstable_isNewReconciler:!1},Tb={readContext:En,useCallback:function(l,a){return oi().memoizedState=[l,a===void 0?null:a],l},useContext:En,useEffect:aO,useImperativeHandle:function(l,a,d){return d=d!=null?d.concat([l]):null,Ra(4194308,4,dO.bind(null,a,l),d)},useLayoutEffect:function(l,a){return Ra(4194308,4,l,a)},useInsertionEffect:function(l,a){return Ra(4,2,l,a)},useMemo:function(l,a){var d=oi();return a=a===void 0?null:a,l=l(),d.memoizedState=[l,a],l},useReducer:function(l,a,d){var m=oi();return a=d!==void 0?d(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=Cb.bind(null,dt,l),[m.memoizedState,l]},useRef:function(l){var a=oi();return l={current:l},a.memoizedState=l},useState:lO,useDebugValue:Jd,useDeferredValue:function(l){return oi().memoizedState=l},useTransition:function(){var l=lO(!1),a=l[0];return l=Qb.bind(null,l[1]),oi().memoizedState=l,[a,l]},useMutableSource:function(){},useSyncExternalStore:function(l,a,d){var m=dt,v=oi();if(ot){if(d===void 0)throw Error(t(407));d=d()}else{if(d=a(),Nt===null)throw Error(t(349));(Rs&30)!==0||tO(m,a,d)}v.memoizedState=d;var y={value:d,getSnapshot:a};return v.queue=y,aO(iO.bind(null,m,y,l),[l]),m.flags|=2048,Fl(9,nO.bind(null,m,y,d,a),void 0,null),d},useId:function(){var l=oi(),a=Nt.identifierPrefix;if(ot){var d=Ti,m=ji;d=(m&~(1<<32-zn(m)-1)).toString(32)+d,a=":"+a+"R"+d,d=Il++,0<d&&(a+="H"+d.toString(32)),a+=":"}else d=Pb++,a=":"+a+"r"+d.toString(32)+":";return l.memoizedState=a},unstable_isNewReconciler:!1},Nb={readContext:En,useCallback:fO,useContext:En,useEffect:Kd,useImperativeHandle:hO,useInsertionEffect:cO,useLayoutEffect:uO,useMemo:pO,useReducer:Gd,useRef:oO,useState:function(){return Gd(Zl)},useDebugValue:Jd,useDeferredValue:function(l){var a=An();return mO(a,_t.memoizedState,l)},useTransition:function(){var l=Gd(Zl)[0],a=An().memoizedState;return[l,a]},useMutableSource:Jg,useSyncExternalStore:eO,useId:gO,unstable_isNewReconciler:!1},Eb={readContext:En,useCallback:fO,useContext:En,useEffect:Kd,useImperativeHandle:hO,useInsertionEffect:cO,useLayoutEffect:uO,useMemo:pO,useReducer:Hd,useRef:oO,useState:function(){return Hd(Zl)},useDebugValue:Jd,useDeferredValue:function(l){var a=An();return _t===null?a.memoizedState=l:mO(a,_t.memoizedState,l)},useTransition:function(){var l=Hd(Zl)[0],a=An().memoizedState;return[l,a]},useMutableSource:Jg,useSyncExternalStore:eO,useId:gO,unstable_isNewReconciler:!1};function qn(l,a){if(l&&l.defaultProps){a=N({},a),l=l.defaultProps;for(var d in l)a[d]===void 0&&(a[d]=l[d]);return a}return a}function eh(l,a,d,m){a=l.memoizedState,d=d(m,a),d=d==null?a:N({},a,d),l.memoizedState=d,l.lanes===0&&(l.updateQueue.baseState=d)}var Ia={isMounted:function(l){return(l=l._reactInternals)?Cs(l)===l:!1},enqueueSetState:function(l,a,d){l=l._reactInternals;var m=Jt(),v=cs(l),y=Ei(m,v);y.payload=a,d!=null&&(y.callback=d),a=rs(l,y,v),a!==null&&(Un(a,l,v,m),Ta(a,l,v))},enqueueReplaceState:function(l,a,d){l=l._reactInternals;var m=Jt(),v=cs(l),y=Ei(m,v);y.tag=1,y.payload=a,d!=null&&(y.callback=d),a=rs(l,y,v),a!==null&&(Un(a,l,v,m),Ta(a,l,v))},enqueueForceUpdate:function(l,a){l=l._reactInternals;var d=Jt(),m=cs(l),v=Ei(d,m);v.tag=2,a!=null&&(v.callback=a),a=rs(l,v,m),a!==null&&(Un(a,l,m,d),Ta(a,l,m))}};function xO(l,a,d,m,v,y,$){return l=l.stateNode,typeof l.shouldComponentUpdate=="function"?l.shouldComponentUpdate(m,y,$):a.prototype&&a.prototype.isPureReactComponent?!Pl(d,m)||!Pl(v,y):!0}function kO(l,a,d){var m=!1,v=ns,y=a.contextType;return typeof y=="object"&&y!==null?y=En(y):(v=an(a)?Ts:Bt.current,m=a.contextTypes,y=(m=m!=null)?Sr(l,v):ns),a=new a(d,y),l.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Ia,l.stateNode=a,a._reactInternals=l,m&&(l=l.stateNode,l.__reactInternalMemoizedUnmaskedChildContext=v,l.__reactInternalMemoizedMaskedChildContext=y),a}function SO(l,a,d,m){l=a.state,typeof a.componentWillReceiveProps=="function"&&a.componentWillReceiveProps(d,m),typeof a.UNSAFE_componentWillReceiveProps=="function"&&a.UNSAFE_componentWillReceiveProps(d,m),a.state!==l&&Ia.enqueueReplaceState(a,a.state,null)}function th(l,a,d,m){var v=l.stateNode;v.props=d,v.state=l.memoizedState,v.refs={},Fd(l);var y=a.contextType;typeof y=="object"&&y!==null?v.context=En(y):(y=an(a)?Ts:Bt.current,v.context=Sr(l,y)),v.state=l.memoizedState,y=a.getDerivedStateFromProps,typeof y=="function"&&(eh(l,a,y,d),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&&Ia.enqueueReplaceState(v,v.state,null),Na(l,d,v,m),v.state=l.memoizedState),typeof v.componentDidMount=="function"&&(l.flags|=4194308)}function jr(l,a){try{var d="",m=a;do d+=ie(m),m=m.return;while(m);var v=d}catch(y){v=`
31
- Error generating stack: `+y.message+`
32
- `+y.stack}return{value:l,source:a,stack:v,digest:null}}function nh(l,a,d){return{value:l,source:null,stack:d??null,digest:a??null}}function ih(l,a){try{console.error(a.value)}catch(d){setTimeout(function(){throw d})}}var Ab=typeof WeakMap=="function"?WeakMap:Map;function wO(l,a,d){d=Ei(-1,d),d.tag=3,d.payload={element:null};var m=a.value;return d.callback=function(){qa||(qa=!0,vh=m),ih(l,a)},d}function bO(l,a,d){d=Ei(-1,d),d.tag=3;var m=l.type.getDerivedStateFromError;if(typeof m=="function"){var v=a.value;d.payload=function(){return m(v)},d.callback=function(){ih(l,a)}}var y=l.stateNode;return y!==null&&typeof y.componentDidCatch=="function"&&(d.callback=function(){ih(l,a),typeof m!="function"&&(os===null?os=new Set([this]):os.add(this));var $=a.stack;this.componentDidCatch(a.value,{componentStack:$!==null?$:""})}),d}function _O(l,a,d){var m=l.pingCache;if(m===null){m=l.pingCache=new Ab;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(d)||(v.add(d),l=Wb.bind(null,l,a,d),a.then(l,l))}function $O(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 PO(l,a,d,m,v){return(l.mode&1)===0?(l===a?l.flags|=65536:(l.flags|=128,d.flags|=131072,d.flags&=-52805,d.tag===1&&(d.alternate===null?d.tag=17:(a=Ei(-1,1),a.tag=2,rs(d,a,1))),d.lanes|=1),l):(l.flags|=65536,l.lanes=v,l)}var Mb=P.ReactCurrentOwner,cn=!1;function Kt(l,a,d,m){a.child=l===null?Yg(a,null,d,m):$r(a,l.child,d,m)}function QO(l,a,d,m,v){d=d.render;var y=a.ref;return Qr(a,v),m=Wd(l,a,d,m,y,v),d=Ud(),l!==null&&!cn?(a.updateQueue=l.updateQueue,a.flags&=-2053,l.lanes&=~v,Ai(l,a,v)):(ot&&d&&Td(a),a.flags|=1,Kt(l,a,m,v),a.child)}function CO(l,a,d,m,v){if(l===null){var y=d.type;return typeof y=="function"&&!_h(y)&&y.defaultProps===void 0&&d.compare===null&&d.defaultProps===void 0?(a.tag=15,a.type=y,jO(l,a,y,m,v)):(l=Ka(d.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(d=d.compare,d=d!==null?d:Pl,d($,m)&&l.ref===a.ref)return Ai(l,a,v)}return a.flags|=1,l=ds(y,m),l.ref=a.ref,l.return=a,a.child=l}function jO(l,a,d,m,v){if(l!==null){var y=l.memoizedProps;if(Pl(y,m)&&l.ref===a.ref)if(cn=!1,a.pendingProps=m=y,(l.lanes&v)!==0)(l.flags&131072)!==0&&(cn=!0);else return a.lanes=l.lanes,Ai(l,a,v)}return sh(l,a,d,m,v)}function TO(l,a,d){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},nt(Nr,_n),_n|=d;else{if((d&1073741824)===0)return l=y!==null?y.baseLanes|d:d,a.lanes=a.childLanes=1073741824,a.memoizedState={baseLanes:l,cachePool:null,transitions:null},a.updateQueue=null,nt(Nr,_n),_n|=l,null;a.memoizedState={baseLanes:0,cachePool:null,transitions:null},m=y!==null?y.baseLanes:d,nt(Nr,_n),_n|=m}else y!==null?(m=y.baseLanes|d,a.memoizedState=null):m=d,nt(Nr,_n),_n|=m;return Kt(l,a,v,d),a.child}function NO(l,a){var d=a.ref;(l===null&&d!==null||l!==null&&l.ref!==d)&&(a.flags|=512,a.flags|=2097152)}function sh(l,a,d,m,v){var y=an(d)?Ts:Bt.current;return y=Sr(a,y),Qr(a,v),d=Wd(l,a,d,m,y,v),m=Ud(),l!==null&&!cn?(a.updateQueue=l.updateQueue,a.flags&=-2053,l.lanes&=~v,Ai(l,a,v)):(ot&&m&&Td(a),a.flags|=1,Kt(l,a,d,v),a.child)}function EO(l,a,d,m,v){if(an(d)){var y=!0;wa(a)}else y=!1;if(Qr(a,v),a.stateNode===null)Fa(l,a),kO(a,d,m),th(a,d,m,v),m=!0;else if(l===null){var $=a.stateNode,E=a.memoizedProps;$.props=E;var R=$.context,U=d.contextType;typeof U=="object"&&U!==null?U=En(U):(U=an(d)?Ts:Bt.current,U=Sr(a,U));var le=d.getDerivedStateFromProps,ae=typeof le=="function"||typeof $.getSnapshotBeforeUpdate=="function";ae||typeof $.UNSAFE_componentWillReceiveProps!="function"&&typeof $.componentWillReceiveProps!="function"||(E!==m||R!==U)&&SO(a,$,m,U),ss=!1;var re=a.memoizedState;$.state=re,Na(a,m,$,v),R=a.memoizedState,E!==m||re!==R||on.current||ss?(typeof le=="function"&&(eh(a,d,le,m),R=a.memoizedState),(E=ss||xO(a,d,E,m,re,R,U))?(ae||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=R),$.props=m,$.state=R,$.context=U,m=E):(typeof $.componentDidMount=="function"&&(a.flags|=4194308),m=!1)}else{$=a.stateNode,Ug(l,a),E=a.memoizedProps,U=a.type===a.elementType?E:qn(a.type,E),$.props=U,ae=a.pendingProps,re=$.context,R=d.contextType,typeof R=="object"&&R!==null?R=En(R):(R=an(d)?Ts:Bt.current,R=Sr(a,R));var xe=d.getDerivedStateFromProps;(le=typeof xe=="function"||typeof $.getSnapshotBeforeUpdate=="function")||typeof $.UNSAFE_componentWillReceiveProps!="function"&&typeof $.componentWillReceiveProps!="function"||(E!==ae||re!==R)&&SO(a,$,m,R),ss=!1,re=a.memoizedState,$.state=re,Na(a,m,$,v);var be=a.memoizedState;E!==ae||re!==be||on.current||ss?(typeof xe=="function"&&(eh(a,d,xe,m),be=a.memoizedState),(U=ss||xO(a,d,U,m,re,be,R)||!1)?(le||typeof $.UNSAFE_componentWillUpdate!="function"&&typeof $.componentWillUpdate!="function"||(typeof $.componentWillUpdate=="function"&&$.componentWillUpdate(m,be,R),typeof $.UNSAFE_componentWillUpdate=="function"&&$.UNSAFE_componentWillUpdate(m,be,R)),typeof $.componentDidUpdate=="function"&&(a.flags|=4),typeof $.getSnapshotBeforeUpdate=="function"&&(a.flags|=1024)):(typeof $.componentDidUpdate!="function"||E===l.memoizedProps&&re===l.memoizedState||(a.flags|=4),typeof $.getSnapshotBeforeUpdate!="function"||E===l.memoizedProps&&re===l.memoizedState||(a.flags|=1024),a.memoizedProps=m,a.memoizedState=be),$.props=m,$.state=be,$.context=R,m=U):(typeof $.componentDidUpdate!="function"||E===l.memoizedProps&&re===l.memoizedState||(a.flags|=4),typeof $.getSnapshotBeforeUpdate!="function"||E===l.memoizedProps&&re===l.memoizedState||(a.flags|=1024),m=!1)}return rh(l,a,d,m,y,v)}function rh(l,a,d,m,v,y){NO(l,a);var $=(a.flags&128)!==0;if(!m&&!$)return v&&Lg(a,d,!1),Ai(l,a,y);m=a.stateNode,Mb.current=a;var E=$&&typeof d.getDerivedStateFromError!="function"?null:m.render();return a.flags|=1,l!==null&&$?(a.child=$r(a,l.child,null,y),a.child=$r(a,null,E,y)):Kt(l,a,E,y),a.memoizedState=m.state,v&&Lg(a,d,!0),a.child}function AO(l){var a=l.stateNode;a.pendingContext?Rg(l,a.pendingContext,a.pendingContext!==a.context):a.context&&Rg(l,a.context,!1),Xd(l,a.containerInfo)}function MO(l,a,d,m,v){return _r(),Md(v),a.flags|=256,Kt(l,a,d,m),a.child}var lh={dehydrated:null,treeContext:null,retryLane:0};function oh(l){return{baseLanes:l,cachePool:null,transitions:null}}function RO(l,a,d){var m=a.pendingProps,v=ut.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),nt(ut,v&1),l===null)return Ad(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=Ja($,m,0,null),l=Fs(l,m,d,null),y.return=a,l.return=a,y.sibling=l,a.child=y,a.child.memoizedState=oh(d),a.memoizedState=lh,l):ah(a,$));if(v=l.memoizedState,v!==null&&(E=v.dehydrated,E!==null))return Rb(l,a,$,m,E,v,d);if(y){y=m.fallback,$=a.mode,v=l.child,E=v.sibling;var R={mode:"hidden",children:m.children};return($&1)===0&&a.child!==v?(m=a.child,m.childLanes=0,m.pendingProps=R,a.deletions=null):(m=ds(v,R),m.subtreeFlags=v.subtreeFlags&14680064),E!==null?y=ds(E,y):(y=Fs(y,$,d,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(d):{baseLanes:$.baseLanes|d,cachePool:null,transitions:$.transitions},y.memoizedState=$,y.childLanes=l.childLanes&~d,a.memoizedState=lh,m}return y=l.child,l=y.sibling,m=ds(y,{mode:"visible",children:m.children}),(a.mode&1)===0&&(m.lanes=d),m.return=a,m.sibling=null,l!==null&&(d=a.deletions,d===null?(a.deletions=[l],a.flags|=16):d.push(l)),a.child=m,a.memoizedState=null,m}function ah(l,a){return a=Ja({mode:"visible",children:a},l.mode,0,null),a.return=l,l.child=a}function Za(l,a,d,m){return m!==null&&Md(m),$r(a,l.child,null,d),l=ah(a,a.pendingProps.children),l.flags|=2,a.memoizedState=null,l}function Rb(l,a,d,m,v,y,$){if(d)return a.flags&256?(a.flags&=-257,m=nh(Error(t(422))),Za(l,a,$,m)):a.memoizedState!==null?(a.child=l.child,a.flags|=128,null):(y=m.fallback,v=a.mode,m=Ja({mode:"visible",children:m.children},v,0,null),y=Fs(y,v,$,null),y.flags|=2,m.return=a,y.return=a,m.sibling=y,a.child=m,(a.mode&1)!==0&&$r(a,l.child,null,$),a.child.memoizedState=oh($),a.memoizedState=lh,y);if((a.mode&1)===0)return Za(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=nh(y,m,void 0),Za(l,a,$,m)}if(E=($&l.childLanes)!==0,cn||E){if(m=Nt,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,Ni(l,v),Un(m,l,v,-1))}return bh(),m=nh(Error(t(421))),Za(l,a,$,m)}return v.data==="$?"?(a.flags|=128,a.child=l.child,a=Ub.bind(null,l),v._reactRetry=a,null):(l=y.treeContext,bn=es(v.nextSibling),wn=a,ot=!0,Vn=null,l!==null&&(Tn[Nn++]=ji,Tn[Nn++]=Ti,Tn[Nn++]=Ns,ji=l.id,Ti=l.overflow,Ns=a),a=ah(a,m.children),a.flags|=4096,a)}function DO(l,a,d){l.lanes|=a;var m=l.alternate;m!==null&&(m.lanes|=a),Id(l.return,a,d)}function ch(l,a,d,m,v){var y=l.memoizedState;y===null?l.memoizedState={isBackwards:a,rendering:null,renderingStartTime:0,last:m,tail:d,tailMode:v}:(y.isBackwards=a,y.rendering=null,y.renderingStartTime=0,y.last=m,y.tail=d,y.tailMode=v)}function LO(l,a,d){var m=a.pendingProps,v=m.revealOrder,y=m.tail;if(Kt(l,a,m.children,d),m=ut.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&&DO(l,d,a);else if(l.tag===19)DO(l,d,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(nt(ut,m),(a.mode&1)===0)a.memoizedState=null;else switch(v){case"forwards":for(d=a.child,v=null;d!==null;)l=d.alternate,l!==null&&Ea(l)===null&&(v=d),d=d.sibling;d=v,d===null?(v=a.child,a.child=null):(v=d.sibling,d.sibling=null),ch(a,!1,v,d,y);break;case"backwards":for(d=null,v=a.child,a.child=null;v!==null;){if(l=v.alternate,l!==null&&Ea(l)===null){a.child=v;break}l=v.sibling,v.sibling=d,d=v,v=l}ch(a,!0,d,null,y);break;case"together":ch(a,!1,null,null,void 0);break;default:a.memoizedState=null}return a.child}function Fa(l,a){(a.mode&1)===0&&l!==null&&(l.alternate=null,a.alternate=null,a.flags|=2)}function Ai(l,a,d){if(l!==null&&(a.dependencies=l.dependencies),Ds|=a.lanes,(d&a.childLanes)===0)return null;if(l!==null&&a.child!==l.child)throw Error(t(153));if(a.child!==null){for(l=a.child,d=ds(l,l.pendingProps),a.child=d,d.return=a;l.sibling!==null;)l=l.sibling,d=d.sibling=ds(l,l.pendingProps),d.return=a;d.sibling=null}return a.child}function Db(l,a,d){switch(a.tag){case 3:AO(a),_r();break;case 5:Kg(a);break;case 1:an(a.type)&&wa(a);break;case 4:Xd(a,a.stateNode.containerInfo);break;case 10:var m=a.type._context,v=a.memoizedProps.value;nt(Ca,m._currentValue),m._currentValue=v;break;case 13:if(m=a.memoizedState,m!==null)return m.dehydrated!==null?(nt(ut,ut.current&1),a.flags|=128,null):(d&a.child.childLanes)!==0?RO(l,a,d):(nt(ut,ut.current&1),l=Ai(l,a,d),l!==null?l.sibling:null);nt(ut,ut.current&1);break;case 19:if(m=(d&a.childLanes)!==0,(l.flags&128)!==0){if(m)return LO(l,a,d);a.flags|=128}if(v=a.memoizedState,v!==null&&(v.rendering=null,v.tail=null,v.lastEffect=null),nt(ut,ut.current),m)break;return null;case 22:case 23:return a.lanes=0,TO(l,a,d)}return Ai(l,a,d)}var IO,uh,ZO,FO;IO=function(l,a){for(var d=a.child;d!==null;){if(d.tag===5||d.tag===6)l.appendChild(d.stateNode);else if(d.tag!==4&&d.child!==null){d.child.return=d,d=d.child;continue}if(d===a)break;for(;d.sibling===null;){if(d.return===null||d.return===a)return;d=d.return}d.sibling.return=d.return,d=d.sibling}},uh=function(){},ZO=function(l,a,d,m){var v=l.memoizedProps;if(v!==m){l=a.stateNode,Ms(li.current);var y=null;switch(d){case"input":v=jt(l,v),m=jt(l,m),y=[];break;case"select":v=N({},v,{value:void 0}),m=N({},m,{value:void 0}),y=[];break;case"textarea":v=te(l,v),m=te(l,m),y=[];break;default:typeof v.onClick!="function"&&typeof m.onClick=="function"&&(l.onclick=xa)}cr(d,m);var $;d=null;for(U in v)if(!m.hasOwnProperty(U)&&v.hasOwnProperty(U)&&v[U]!=null)if(U==="style"){var E=v[U];for($ in E)E.hasOwnProperty($)&&(d||(d={}),d[$]="")}else U!=="dangerouslySetInnerHTML"&&U!=="children"&&U!=="suppressContentEditableWarning"&&U!=="suppressHydrationWarning"&&U!=="autoFocus"&&(s.hasOwnProperty(U)?y||(y=[]):(y=y||[]).push(U,null));for(U in m){var R=m[U];if(E=v?.[U],m.hasOwnProperty(U)&&R!==E&&(R!=null||E!=null))if(U==="style")if(E){for($ in E)!E.hasOwnProperty($)||R&&R.hasOwnProperty($)||(d||(d={}),d[$]="");for($ in R)R.hasOwnProperty($)&&E[$]!==R[$]&&(d||(d={}),d[$]=R[$])}else d||(y||(y=[]),y.push(U,d)),d=R;else U==="dangerouslySetInnerHTML"?(R=R?R.__html:void 0,E=E?E.__html:void 0,R!=null&&E!==R&&(y=y||[]).push(U,R)):U==="children"?typeof R!="string"&&typeof R!="number"||(y=y||[]).push(U,""+R):U!=="suppressContentEditableWarning"&&U!=="suppressHydrationWarning"&&(s.hasOwnProperty(U)?(R!=null&&U==="onScroll"&&it("scroll",l),y||E===R||(y=[])):(y=y||[]).push(U,R))}d&&(y=y||[]).push("style",d);var U=y;(a.updateQueue=U)&&(a.flags|=4)}},FO=function(l,a,d,m){d!==m&&(a.flags|=4)};function Xl(l,a){if(!ot)switch(l.tailMode){case"hidden":a=l.tail;for(var d=null;a!==null;)a.alternate!==null&&(d=a),a=a.sibling;d===null?l.tail=null:d.sibling=null;break;case"collapsed":d=l.tail;for(var m=null;d!==null;)d.alternate!==null&&(m=d),d=d.sibling;m===null?a||l.tail===null?l.tail=null:l.tail.sibling=null:m.sibling=null}}function qt(l){var a=l.alternate!==null&&l.alternate.child===l.child,d=0,m=0;if(a)for(var v=l.child;v!==null;)d|=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;)d|=v.lanes|v.childLanes,m|=v.subtreeFlags,m|=v.flags,v.return=l,v=v.sibling;return l.subtreeFlags|=m,l.childLanes=d,a}function Lb(l,a,d){var m=a.pendingProps;switch(Nd(a),a.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return qt(a),null;case 1:return an(a.type)&&Sa(),qt(a),null;case 3:return m=a.stateNode,Cr(),st(on),st(Bt),Vd(),m.pendingContext&&(m.context=m.pendingContext,m.pendingContext=null),(l===null||l.child===null)&&(Pa(a)?a.flags|=4:l===null||l.memoizedState.isDehydrated&&(a.flags&256)===0||(a.flags|=1024,Vn!==null&&(kh(Vn),Vn=null))),uh(l,a),qt(a),null;case 5:zd(a);var v=Ms(Dl.current);if(d=a.type,l!==null&&a.stateNode!=null)ZO(l,a,d,m,v),l.ref!==a.ref&&(a.flags|=512,a.flags|=2097152);else{if(!m){if(a.stateNode===null)throw Error(t(166));return qt(a),null}if(l=Ms(li.current),Pa(a)){m=a.stateNode,d=a.type;var y=a.memoizedProps;switch(m[ri]=a,m[Nl]=y,l=(a.mode&1)!==0,d){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<Cl.length;v++)it(Cl[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":Yi(m,y),it("invalid",m);break;case"select":m._wrapperState={wasMultiple:!!y.multiple},it("invalid",m);break;case"textarea":ye(m,y),it("invalid",m)}cr(d,y),v=null;for(var $ in y)if(y.hasOwnProperty($)){var E=y[$];$==="children"?typeof E=="string"?m.textContent!==E&&(y.suppressHydrationWarning!==!0&&ya(m.textContent,E,l),v=["children",E]):typeof E=="number"&&m.textContent!==""+E&&(y.suppressHydrationWarning!==!0&&ya(m.textContent,E,l),v=["children",""+E]):s.hasOwnProperty($)&&E!=null&&$==="onScroll"&&it("scroll",m)}switch(d){case"input":Re(m),Bu(m,y,!0);break;case"textarea":Re(m),fe(m);break;case"select":case"option":break;default:typeof y.onClick=="function"&&(m.onclick=xa)}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=Ce(d)),l==="http://www.w3.org/1999/xhtml"?d==="script"?(l=$.createElement("div"),l.innerHTML="<script><\/script>",l=l.removeChild(l.firstChild)):typeof m.is=="string"?l=$.createElement(d,{is:m.is}):(l=$.createElement(d),d==="select"&&($=l,m.multiple?$.multiple=!0:m.size&&($.size=m.size))):l=$.createElementNS(l,d),l[ri]=a,l[Nl]=m,IO(l,a,!1,!1),a.stateNode=l;e:{switch($=dl(d,m),d){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<Cl.length;v++)it(Cl[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":Yi(l,m),v=jt(l,m),it("invalid",l);break;case"option":v=m;break;case"select":l._wrapperState={wasMultiple:!!m.multiple},v=N({},m,{value:void 0}),it("invalid",l);break;case"textarea":ye(l,m),v=te(l,m),it("invalid",l);break;default:v=m}cr(d,v),E=v;for(y in E)if(E.hasOwnProperty(y)){var R=E[y];y==="style"?ar(l,R):y==="dangerouslySetInnerHTML"?(R=R?R.__html:void 0,R!=null&&Ht(l,R)):y==="children"?typeof R=="string"?(d!=="textarea"||R!=="")&&ii(l,R):typeof R=="number"&&ii(l,""+R):y!=="suppressContentEditableWarning"&&y!=="suppressHydrationWarning"&&y!=="autoFocus"&&(s.hasOwnProperty(y)?R!=null&&y==="onScroll"&&it("scroll",l):R!=null&&Q(l,y,R,$))}switch(d){case"input":Re(l),Bu(l,m,!1);break;case"textarea":Re(l),fe(l);break;case"option":m.value!=null&&l.setAttribute("value",""+Qe(m.value));break;case"select":l.multiple=!!m.multiple,y=m.value,y!=null?Y(l,!!m.multiple,y,!1):m.defaultValue!=null&&Y(l,!!m.multiple,m.defaultValue,!0);break;default:typeof v.onClick=="function"&&(l.onclick=xa)}switch(d){case"button":case"input":case"select":case"textarea":m=!!m.autoFocus;break e;case"img":m=!0;break e;default:m=!1}}m&&(a.flags|=4)}a.ref!==null&&(a.flags|=512,a.flags|=2097152)}return qt(a),null;case 6:if(l&&a.stateNode!=null)FO(l,a,l.memoizedProps,m);else{if(typeof m!="string"&&a.stateNode===null)throw Error(t(166));if(d=Ms(Dl.current),Ms(li.current),Pa(a)){if(m=a.stateNode,d=a.memoizedProps,m[ri]=a,(y=m.nodeValue!==d)&&(l=wn,l!==null))switch(l.tag){case 3:ya(m.nodeValue,d,(l.mode&1)!==0);break;case 5:l.memoizedProps.suppressHydrationWarning!==!0&&ya(m.nodeValue,d,(l.mode&1)!==0)}y&&(a.flags|=4)}else m=(d.nodeType===9?d:d.ownerDocument).createTextNode(m),m[ri]=a,a.stateNode=m}return qt(a),null;case 13:if(st(ut),m=a.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(ot&&bn!==null&&(a.mode&1)!==0&&(a.flags&128)===0)Bg(),_r(),a.flags|=98560,y=!1;else if(y=Pa(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[ri]=a}else _r(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;qt(a),y=!1}else Vn!==null&&(kh(Vn),Vn=null),y=!0;if(!y)return a.flags&65536?a:null}return(a.flags&128)!==0?(a.lanes=d,a):(m=m!==null,m!==(l!==null&&l.memoizedState!==null)&&m&&(a.child.flags|=8192,(a.mode&1)!==0&&(l===null||(ut.current&1)!==0?$t===0&&($t=3):bh())),a.updateQueue!==null&&(a.flags|=4),qt(a),null);case 4:return Cr(),uh(l,a),l===null&&jl(a.stateNode.containerInfo),qt(a),null;case 10:return Ld(a.type._context),qt(a),null;case 17:return an(a.type)&&Sa(),qt(a),null;case 19:if(st(ut),y=a.memoizedState,y===null)return qt(a),null;if(m=(a.flags&128)!==0,$=y.rendering,$===null)if(m)Xl(y,!1);else{if($t!==0||l!==null&&(l.flags&128)!==0)for(l=a.child;l!==null;){if($=Ea(l),$!==null){for(a.flags|=128,Xl(y,!1),m=$.updateQueue,m!==null&&(a.updateQueue=m,a.flags|=4),a.subtreeFlags=0,m=d,d=a.child;d!==null;)y=d,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}),d=d.sibling;return nt(ut,ut.current&1|2),a.child}l=l.sibling}y.tail!==null&&pt()>Er&&(a.flags|=128,m=!0,Xl(y,!1),a.lanes=4194304)}else{if(!m)if(l=Ea($),l!==null){if(a.flags|=128,m=!0,d=l.updateQueue,d!==null&&(a.updateQueue=d,a.flags|=4),Xl(y,!0),y.tail===null&&y.tailMode==="hidden"&&!$.alternate&&!ot)return qt(a),null}else 2*pt()-y.renderingStartTime>Er&&d!==1073741824&&(a.flags|=128,m=!0,Xl(y,!1),a.lanes=4194304);y.isBackwards?($.sibling=a.child,a.child=$):(d=y.last,d!==null?d.sibling=$:a.child=$,y.last=$)}return y.tail!==null?(a=y.tail,y.rendering=a,y.tail=a.sibling,y.renderingStartTime=pt(),a.sibling=null,d=ut.current,nt(ut,m?d&1|2:d&1),a):(qt(a),null);case 22:case 23:return wh(),m=a.memoizedState!==null,l!==null&&l.memoizedState!==null!==m&&(a.flags|=8192),m&&(a.mode&1)!==0?(_n&1073741824)!==0&&(qt(a),a.subtreeFlags&6&&(a.flags|=8192)):qt(a),null;case 24:return null;case 25:return null}throw Error(t(156,a.tag))}function Ib(l,a){switch(Nd(a),a.tag){case 1:return an(a.type)&&Sa(),l=a.flags,l&65536?(a.flags=l&-65537|128,a):null;case 3:return Cr(),st(on),st(Bt),Vd(),l=a.flags,(l&65536)!==0&&(l&128)===0?(a.flags=l&-65537|128,a):null;case 5:return zd(a),null;case 13:if(st(ut),l=a.memoizedState,l!==null&&l.dehydrated!==null){if(a.alternate===null)throw Error(t(340));_r()}return l=a.flags,l&65536?(a.flags=l&-65537|128,a):null;case 19:return st(ut),null;case 4:return Cr(),null;case 10:return Ld(a.type._context),null;case 22:case 23:return wh(),null;case 24:return null;default:return null}}var Xa=!1,Yt=!1,Zb=typeof WeakSet=="function"?WeakSet:Set,we=null;function Tr(l,a){var d=l.ref;if(d!==null)if(typeof d=="function")try{d(null)}catch(m){ht(l,a,m)}else d.current=null}function dh(l,a,d){try{d()}catch(m){ht(l,a,m)}}var XO=!1;function Fb(l,a){if(wd=aa,l=xg(),md(l)){if("selectionStart"in l)var d={start:l.selectionStart,end:l.selectionEnd};else e:{d=(d=l.ownerDocument)&&d.defaultView||window;var m=d.getSelection&&d.getSelection();if(m&&m.rangeCount!==0){d=m.anchorNode;var v=m.anchorOffset,y=m.focusNode;m=m.focusOffset;try{d.nodeType,y.nodeType}catch{d=null;break e}var $=0,E=-1,R=-1,U=0,le=0,ae=l,re=null;t:for(;;){for(var xe;ae!==d||v!==0&&ae.nodeType!==3||(E=$+v),ae!==y||m!==0&&ae.nodeType!==3||(R=$+m),ae.nodeType===3&&($+=ae.nodeValue.length),(xe=ae.firstChild)!==null;)re=ae,ae=xe;for(;;){if(ae===l)break t;if(re===d&&++U===v&&(E=$),re===y&&++le===m&&(R=$),(xe=ae.nextSibling)!==null)break;ae=re,re=ae.parentNode}ae=xe}d=E===-1||R===-1?null:{start:E,end:R}}else d=null}d=d||{start:0,end:0}}else d=null;for(bd={focusedElem:l,selectionRange:d},aa=!1,we=a;we!==null;)if(a=we,l=a.child,(a.subtreeFlags&1028)!==0&&l!==null)l.return=a,we=l;else for(;we!==null;){a=we;try{var be=a.alternate;if((a.flags&1024)!==0)switch(a.tag){case 0:case 11:case 15:break;case 1:if(be!==null){var _e=be.memoizedProps,mt=be.memoizedState,B=a.stateNode,Z=B.getSnapshotBeforeUpdate(a.elementType===a.type?_e:qn(a.type,_e),mt);B.__reactInternalSnapshotBeforeUpdate=Z}break;case 3:var W=a.stateNode.containerInfo;W.nodeType===1?W.textContent="":W.nodeType===9&&W.documentElement&&W.removeChild(W.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(t(163))}}catch(ce){ht(a,a.return,ce)}if(l=a.sibling,l!==null){l.return=a.return,we=l;break}we=a.return}return be=XO,XO=!1,be}function zl(l,a,d){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&&dh(a,d,y)}v=v.next}while(v!==m)}}function za(l,a){if(a=a.updateQueue,a=a!==null?a.lastEffect:null,a!==null){var d=a=a.next;do{if((d.tag&l)===l){var m=d.create;d.destroy=m()}d=d.next}while(d!==a)}}function hh(l){var a=l.ref;if(a!==null){var d=l.stateNode;switch(l.tag){case 5:l=d;break;default:l=d}typeof a=="function"?a(l):a.current=l}}function zO(l){var a=l.alternate;a!==null&&(l.alternate=null,zO(a)),l.child=null,l.deletions=null,l.sibling=null,l.tag===5&&(a=l.stateNode,a!==null&&(delete a[ri],delete a[Nl],delete a[Qd],delete a[wb],delete a[bb])),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 BO(l){return l.tag===5||l.tag===3||l.tag===4}function VO(l){e:for(;;){for(;l.sibling===null;){if(l.return===null||BO(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 fh(l,a,d){var m=l.tag;if(m===5||m===6)l=l.stateNode,a?d.nodeType===8?d.parentNode.insertBefore(l,a):d.insertBefore(l,a):(d.nodeType===8?(a=d.parentNode,a.insertBefore(l,d)):(a=d,a.appendChild(l)),d=d._reactRootContainer,d!=null||a.onclick!==null||(a.onclick=xa));else if(m!==4&&(l=l.child,l!==null))for(fh(l,a,d),l=l.sibling;l!==null;)fh(l,a,d),l=l.sibling}function ph(l,a,d){var m=l.tag;if(m===5||m===6)l=l.stateNode,a?d.insertBefore(l,a):d.appendChild(l);else if(m!==4&&(l=l.child,l!==null))for(ph(l,a,d),l=l.sibling;l!==null;)ph(l,a,d),l=l.sibling}var Lt=null,Yn=!1;function ls(l,a,d){for(d=d.child;d!==null;)qO(l,a,d),d=d.sibling}function qO(l,a,d){if(si&&typeof si.onCommitFiberUnmount=="function")try{si.onCommitFiberUnmount(na,d)}catch{}switch(d.tag){case 5:Yt||Tr(d,a);case 6:var m=Lt,v=Yn;Lt=null,ls(l,a,d),Lt=m,Yn=v,Lt!==null&&(Yn?(l=Lt,d=d.stateNode,l.nodeType===8?l.parentNode.removeChild(d):l.removeChild(d)):Lt.removeChild(d.stateNode));break;case 18:Lt!==null&&(Yn?(l=Lt,d=d.stateNode,l.nodeType===8?Pd(l.parentNode,d):l.nodeType===1&&Pd(l,d),kl(l)):Pd(Lt,d.stateNode));break;case 4:m=Lt,v=Yn,Lt=d.stateNode.containerInfo,Yn=!0,ls(l,a,d),Lt=m,Yn=v;break;case 0:case 11:case 14:case 15:if(!Yt&&(m=d.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)&&dh(d,a,$),v=v.next}while(v!==m)}ls(l,a,d);break;case 1:if(!Yt&&(Tr(d,a),m=d.stateNode,typeof m.componentWillUnmount=="function"))try{m.props=d.memoizedProps,m.state=d.memoizedState,m.componentWillUnmount()}catch(E){ht(d,a,E)}ls(l,a,d);break;case 21:ls(l,a,d);break;case 22:d.mode&1?(Yt=(m=Yt)||d.memoizedState!==null,ls(l,a,d),Yt=m):ls(l,a,d);break;default:ls(l,a,d)}}function YO(l){var a=l.updateQueue;if(a!==null){l.updateQueue=null;var d=l.stateNode;d===null&&(d=l.stateNode=new Zb),a.forEach(function(m){var v=Gb.bind(null,l,m);d.has(m)||(d.add(m),m.then(v,v))})}}function Wn(l,a){var d=a.deletions;if(d!==null)for(var m=0;m<d.length;m++){var v=d[m];try{var y=l,$=a,E=$;e:for(;E!==null;){switch(E.tag){case 5:Lt=E.stateNode,Yn=!1;break e;case 3:Lt=E.stateNode.containerInfo,Yn=!0;break e;case 4:Lt=E.stateNode.containerInfo,Yn=!0;break e}E=E.return}if(Lt===null)throw Error(t(160));qO(y,$,v),Lt=null,Yn=!1;var R=v.alternate;R!==null&&(R.return=null),v.return=null}catch(U){ht(v,a,U)}}if(a.subtreeFlags&12854)for(a=a.child;a!==null;)WO(a,l),a=a.sibling}function WO(l,a){var d=l.alternate,m=l.flags;switch(l.tag){case 0:case 11:case 14:case 15:if(Wn(a,l),ai(l),m&4){try{zl(3,l,l.return),za(3,l)}catch(_e){ht(l,l.return,_e)}try{zl(5,l,l.return)}catch(_e){ht(l,l.return,_e)}}break;case 1:Wn(a,l),ai(l),m&512&&d!==null&&Tr(d,d.return);break;case 5:if(Wn(a,l),ai(l),m&512&&d!==null&&Tr(d,d.return),l.flags&32){var v=l.stateNode;try{ii(v,"")}catch(_e){ht(l,l.return,_e)}}if(m&4&&(v=l.stateNode,v!=null)){var y=l.memoizedProps,$=d!==null?d.memoizedProps:y,E=l.type,R=l.updateQueue;if(l.updateQueue=null,R!==null)try{E==="input"&&y.type==="radio"&&y.name!=null&&rr(v,y),dl(E,$);var U=dl(E,y);for($=0;$<R.length;$+=2){var le=R[$],ae=R[$+1];le==="style"?ar(v,ae):le==="dangerouslySetInnerHTML"?Ht(v,ae):le==="children"?ii(v,ae):Q(v,le,ae,U)}switch(E){case"input":ul(v,y);break;case"textarea":me(v,y);break;case"select":var re=v._wrapperState.wasMultiple;v._wrapperState.wasMultiple=!!y.multiple;var xe=y.value;xe!=null?Y(v,!!y.multiple,xe,!1):re!==!!y.multiple&&(y.defaultValue!=null?Y(v,!!y.multiple,y.defaultValue,!0):Y(v,!!y.multiple,y.multiple?[]:"",!1))}v[Nl]=y}catch(_e){ht(l,l.return,_e)}}break;case 6:if(Wn(a,l),ai(l),m&4){if(l.stateNode===null)throw Error(t(162));v=l.stateNode,y=l.memoizedProps;try{v.nodeValue=y}catch(_e){ht(l,l.return,_e)}}break;case 3:if(Wn(a,l),ai(l),m&4&&d!==null&&d.memoizedState.isDehydrated)try{kl(a.containerInfo)}catch(_e){ht(l,l.return,_e)}break;case 4:Wn(a,l),ai(l);break;case 13:Wn(a,l),ai(l),v=l.child,v.flags&8192&&(y=v.memoizedState!==null,v.stateNode.isHidden=y,!y||v.alternate!==null&&v.alternate.memoizedState!==null||(Oh=pt())),m&4&&YO(l);break;case 22:if(le=d!==null&&d.memoizedState!==null,l.mode&1?(Yt=(U=Yt)||le,Wn(a,l),Yt=U):Wn(a,l),ai(l),m&8192){if(U=l.memoizedState!==null,(l.stateNode.isHidden=U)&&!le&&(l.mode&1)!==0)for(we=l,le=l.child;le!==null;){for(ae=we=le;we!==null;){switch(re=we,xe=re.child,re.tag){case 0:case 11:case 14:case 15:zl(4,re,re.return);break;case 1:Tr(re,re.return);var be=re.stateNode;if(typeof be.componentWillUnmount=="function"){m=re,d=re.return;try{a=m,be.props=a.memoizedProps,be.state=a.memoizedState,be.componentWillUnmount()}catch(_e){ht(m,d,_e)}}break;case 5:Tr(re,re.return);break;case 22:if(re.memoizedState!==null){HO(ae);continue}}xe!==null?(xe.return=re,we=xe):HO(ae)}le=le.sibling}e:for(le=null,ae=l;;){if(ae.tag===5){if(le===null){le=ae;try{v=ae.stateNode,U?(y=v.style,typeof y.setProperty=="function"?y.setProperty("display","none","important"):y.display="none"):(E=ae.stateNode,R=ae.memoizedProps.style,$=R!=null&&R.hasOwnProperty("display")?R.display:null,E.style.display=or("display",$))}catch(_e){ht(l,l.return,_e)}}}else if(ae.tag===6){if(le===null)try{ae.stateNode.nodeValue=U?"":ae.memoizedProps}catch(_e){ht(l,l.return,_e)}}else if((ae.tag!==22&&ae.tag!==23||ae.memoizedState===null||ae===l)&&ae.child!==null){ae.child.return=ae,ae=ae.child;continue}if(ae===l)break e;for(;ae.sibling===null;){if(ae.return===null||ae.return===l)break e;le===ae&&(le=null),ae=ae.return}le===ae&&(le=null),ae.sibling.return=ae.return,ae=ae.sibling}}break;case 19:Wn(a,l),ai(l),m&4&&YO(l);break;case 21:break;default:Wn(a,l),ai(l)}}function ai(l){var a=l.flags;if(a&2){try{e:{for(var d=l.return;d!==null;){if(BO(d)){var m=d;break e}d=d.return}throw Error(t(160))}switch(m.tag){case 5:var v=m.stateNode;m.flags&32&&(ii(v,""),m.flags&=-33);var y=VO(l);ph(l,y,v);break;case 3:case 4:var $=m.stateNode.containerInfo,E=VO(l);fh(l,E,$);break;default:throw Error(t(161))}}catch(R){ht(l,l.return,R)}l.flags&=-3}a&4096&&(l.flags&=-4097)}function Xb(l,a,d){we=l,UO(l)}function UO(l,a,d){for(var m=(l.mode&1)!==0;we!==null;){var v=we,y=v.child;if(v.tag===22&&m){var $=v.memoizedState!==null||Xa;if(!$){var E=v.alternate,R=E!==null&&E.memoizedState!==null||Yt;E=Xa;var U=Yt;if(Xa=$,(Yt=R)&&!U)for(we=v;we!==null;)$=we,R=$.child,$.tag===22&&$.memoizedState!==null?KO(v):R!==null?(R.return=$,we=R):KO(v);for(;y!==null;)we=y,UO(y),y=y.sibling;we=v,Xa=E,Yt=U}GO(l)}else(v.subtreeFlags&8772)!==0&&y!==null?(y.return=v,we=y):GO(l)}}function GO(l){for(;we!==null;){var a=we;if((a.flags&8772)!==0){var d=a.alternate;try{if((a.flags&8772)!==0)switch(a.tag){case 0:case 11:case 15:Yt||za(5,a);break;case 1:var m=a.stateNode;if(a.flags&4&&!Yt)if(d===null)m.componentDidMount();else{var v=a.elementType===a.type?d.memoizedProps:qn(a.type,d.memoizedProps);m.componentDidUpdate(v,d.memoizedState,m.__reactInternalSnapshotBeforeUpdate)}var y=a.updateQueue;y!==null&&Hg(a,y,m);break;case 3:var $=a.updateQueue;if($!==null){if(d=null,a.child!==null)switch(a.child.tag){case 5:d=a.child.stateNode;break;case 1:d=a.child.stateNode}Hg(a,$,d)}break;case 5:var E=a.stateNode;if(d===null&&a.flags&4){d=E;var R=a.memoizedProps;switch(a.type){case"button":case"input":case"select":case"textarea":R.autoFocus&&d.focus();break;case"img":R.src&&(d.src=R.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(a.memoizedState===null){var U=a.alternate;if(U!==null){var le=U.memoizedState;if(le!==null){var ae=le.dehydrated;ae!==null&&kl(ae)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(t(163))}Yt||a.flags&512&&hh(a)}catch(re){ht(a,a.return,re)}}if(a===l){we=null;break}if(d=a.sibling,d!==null){d.return=a.return,we=d;break}we=a.return}}function HO(l){for(;we!==null;){var a=we;if(a===l){we=null;break}var d=a.sibling;if(d!==null){d.return=a.return,we=d;break}we=a.return}}function KO(l){for(;we!==null;){var a=we;try{switch(a.tag){case 0:case 11:case 15:var d=a.return;try{za(4,a)}catch(R){ht(a,d,R)}break;case 1:var m=a.stateNode;if(typeof m.componentDidMount=="function"){var v=a.return;try{m.componentDidMount()}catch(R){ht(a,v,R)}}var y=a.return;try{hh(a)}catch(R){ht(a,y,R)}break;case 5:var $=a.return;try{hh(a)}catch(R){ht(a,$,R)}}}catch(R){ht(a,a.return,R)}if(a===l){we=null;break}var E=a.sibling;if(E!==null){E.return=a.return,we=E;break}we=a.return}}var zb=Math.ceil,Ba=P.ReactCurrentDispatcher,mh=P.ReactCurrentOwner,Mn=P.ReactCurrentBatchConfig,Ve=0,Nt=null,yt=null,It=0,_n=0,Nr=ts(0),$t=0,Bl=null,Ds=0,Va=0,gh=0,Vl=null,un=null,Oh=0,Er=1/0,Mi=null,qa=!1,vh=null,os=null,Ya=!1,as=null,Wa=0,ql=0,yh=null,Ua=-1,Ga=0;function Jt(){return(Ve&6)!==0?pt():Ua!==-1?Ua:Ua=pt()}function cs(l){return(l.mode&1)===0?1:(Ve&2)!==0&&It!==0?It&-It:$b.transition!==null?(Ga===0&&(Ga=Vm()),Ga):(l=Ke,l!==0||(l=window.event,l=l===void 0?16:eg(l.type)),l)}function Un(l,a,d,m){if(50<ql)throw ql=0,yh=null,Error(t(185));gl(l,d,m),((Ve&2)===0||l!==Nt)&&(l===Nt&&((Ve&2)===0&&(Va|=d),$t===4&&us(l,It)),dn(l,m),d===1&&Ve===0&&(a.mode&1)===0&&(Er=pt()+500,ba&&is()))}function dn(l,a){var d=l.callbackNode;$1(l,a);var m=ra(l,l===Nt?It:0);if(m===0)d!==null&&Xm(d),l.callbackNode=null,l.callbackPriority=0;else if(a=m&-m,l.callbackPriority!==a){if(d!=null&&Xm(d),a===1)l.tag===0?_b(e0.bind(null,l)):Ig(e0.bind(null,l)),kb(function(){(Ve&6)===0&&is()}),d=null;else{switch(qm(m)){case 1:d=Ku;break;case 4:d=zm;break;case 16:d=ta;break;case 536870912:d=Bm;break;default:d=ta}d=a0(d,JO.bind(null,l))}l.callbackPriority=a,l.callbackNode=d}}function JO(l,a){if(Ua=-1,Ga=0,(Ve&6)!==0)throw Error(t(327));var d=l.callbackNode;if(Ar()&&l.callbackNode!==d)return null;var m=ra(l,l===Nt?It:0);if(m===0)return null;if((m&30)!==0||(m&l.expiredLanes)!==0||a)a=Ha(l,m);else{a=m;var v=Ve;Ve|=2;var y=n0();(Nt!==l||It!==a)&&(Mi=null,Er=pt()+500,Is(l,a));do try{qb();break}catch(E){t0(l,E)}while(!0);Dd(),Ba.current=y,Ve=v,yt!==null?a=0:(Nt=null,It=0,a=$t)}if(a!==0){if(a===2&&(v=Ju(l),v!==0&&(m=v,a=xh(l,v))),a===1)throw d=Bl,Is(l,0),us(l,m),dn(l,pt()),d;if(a===6)us(l,m);else{if(v=l.current.alternate,(m&30)===0&&!Bb(v)&&(a=Ha(l,m),a===2&&(y=Ju(l),y!==0&&(m=y,a=xh(l,y))),a===1))throw d=Bl,Is(l,0),us(l,m),dn(l,pt()),d;switch(l.finishedWork=v,l.finishedLanes=m,a){case 0:case 1:throw Error(t(345));case 2:Zs(l,un,Mi);break;case 3:if(us(l,m),(m&130023424)===m&&(a=Oh+500-pt(),10<a)){if(ra(l,0)!==0)break;if(v=l.suspendedLanes,(v&m)!==m){Jt(),l.pingedLanes|=l.suspendedLanes&v;break}l.timeoutHandle=$d(Zs.bind(null,l,un,Mi),a);break}Zs(l,un,Mi);break;case 4:if(us(l,m),(m&4194240)===m)break;for(a=l.eventTimes,v=-1;0<m;){var $=31-zn(m);y=1<<$,$=a[$],$>v&&(v=$),m&=~y}if(m=v,m=pt()-m,m=(120>m?120:480>m?480:1080>m?1080:1920>m?1920:3e3>m?3e3:4320>m?4320:1960*zb(m/1960))-m,10<m){l.timeoutHandle=$d(Zs.bind(null,l,un,Mi),m);break}Zs(l,un,Mi);break;case 5:Zs(l,un,Mi);break;default:throw Error(t(329))}}}return dn(l,pt()),l.callbackNode===d?JO.bind(null,l):null}function xh(l,a){var d=Vl;return l.current.memoizedState.isDehydrated&&(Is(l,a).flags|=256),l=Ha(l,a),l!==2&&(a=un,un=d,a!==null&&kh(a)),l}function kh(l){un===null?un=l:un.push.apply(un,l)}function Bb(l){for(var a=l;;){if(a.flags&16384){var d=a.updateQueue;if(d!==null&&(d=d.stores,d!==null))for(var m=0;m<d.length;m++){var v=d[m],y=v.getSnapshot;v=v.value;try{if(!Bn(y(),v))return!1}catch{return!1}}}if(d=a.child,a.subtreeFlags&16384&&d!==null)d.return=a,a=d;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 us(l,a){for(a&=~gh,a&=~Va,l.suspendedLanes|=a,l.pingedLanes&=~a,l=l.expirationTimes;0<a;){var d=31-zn(a),m=1<<d;l[d]=-1,a&=~m}}function e0(l){if((Ve&6)!==0)throw Error(t(327));Ar();var a=ra(l,0);if((a&1)===0)return dn(l,pt()),null;var d=Ha(l,a);if(l.tag!==0&&d===2){var m=Ju(l);m!==0&&(a=m,d=xh(l,m))}if(d===1)throw d=Bl,Is(l,0),us(l,a),dn(l,pt()),d;if(d===6)throw Error(t(345));return l.finishedWork=l.current.alternate,l.finishedLanes=a,Zs(l,un,Mi),dn(l,pt()),null}function Sh(l,a){var d=Ve;Ve|=1;try{return l(a)}finally{Ve=d,Ve===0&&(Er=pt()+500,ba&&is())}}function Ls(l){as!==null&&as.tag===0&&(Ve&6)===0&&Ar();var a=Ve;Ve|=1;var d=Mn.transition,m=Ke;try{if(Mn.transition=null,Ke=1,l)return l()}finally{Ke=m,Mn.transition=d,Ve=a,(Ve&6)===0&&is()}}function wh(){_n=Nr.current,st(Nr)}function Is(l,a){l.finishedWork=null,l.finishedLanes=0;var d=l.timeoutHandle;if(d!==-1&&(l.timeoutHandle=-1,xb(d)),yt!==null)for(d=yt.return;d!==null;){var m=d;switch(Nd(m),m.tag){case 1:m=m.type.childContextTypes,m!=null&&Sa();break;case 3:Cr(),st(on),st(Bt),Vd();break;case 5:zd(m);break;case 4:Cr();break;case 13:st(ut);break;case 19:st(ut);break;case 10:Ld(m.type._context);break;case 22:case 23:wh()}d=d.return}if(Nt=l,yt=l=ds(l.current,null),It=_n=a,$t=0,Bl=null,gh=Va=Ds=0,un=Vl=null,As!==null){for(a=0;a<As.length;a++)if(d=As[a],m=d.interleaved,m!==null){d.interleaved=null;var v=m.next,y=d.pending;if(y!==null){var $=y.next;y.next=v,m.next=$}d.pending=m}As=null}return l}function t0(l,a){do{var d=yt;try{if(Dd(),Aa.current=La,Ma){for(var m=dt.memoizedState;m!==null;){var v=m.queue;v!==null&&(v.pending=null),m=m.next}Ma=!1}if(Rs=0,Tt=_t=dt=null,Ll=!1,Il=0,mh.current=null,d===null||d.return===null){$t=1,Bl=a,yt=null;break}e:{var y=l,$=d.return,E=d,R=a;if(a=It,E.flags|=32768,R!==null&&typeof R=="object"&&typeof R.then=="function"){var U=R,le=E,ae=le.tag;if((le.mode&1)===0&&(ae===0||ae===11||ae===15)){var re=le.alternate;re?(le.updateQueue=re.updateQueue,le.memoizedState=re.memoizedState,le.lanes=re.lanes):(le.updateQueue=null,le.memoizedState=null)}var xe=$O($);if(xe!==null){xe.flags&=-257,PO(xe,$,E,y,a),xe.mode&1&&_O(y,U,a),a=xe,R=U;var be=a.updateQueue;if(be===null){var _e=new Set;_e.add(R),a.updateQueue=_e}else be.add(R);break e}else{if((a&1)===0){_O(y,U,a),bh();break e}R=Error(t(426))}}else if(ot&&E.mode&1){var mt=$O($);if(mt!==null){(mt.flags&65536)===0&&(mt.flags|=256),PO(mt,$,E,y,a),Md(jr(R,E));break e}}y=R=jr(R,E),$t!==4&&($t=2),Vl===null?Vl=[y]:Vl.push(y),y=$;do{switch(y.tag){case 3:y.flags|=65536,a&=-a,y.lanes|=a;var B=wO(y,R,a);Gg(y,B);break e;case 1:E=R;var Z=y.type,W=y.stateNode;if((y.flags&128)===0&&(typeof Z.getDerivedStateFromError=="function"||W!==null&&typeof W.componentDidCatch=="function"&&(os===null||!os.has(W)))){y.flags|=65536,a&=-a,y.lanes|=a;var ce=bO(y,E,a);Gg(y,ce);break e}}y=y.return}while(y!==null)}s0(d)}catch(Pe){a=Pe,yt===d&&d!==null&&(yt=d=d.return);continue}break}while(!0)}function n0(){var l=Ba.current;return Ba.current=La,l===null?La:l}function bh(){($t===0||$t===3||$t===2)&&($t=4),Nt===null||(Ds&268435455)===0&&(Va&268435455)===0||us(Nt,It)}function Ha(l,a){var d=Ve;Ve|=2;var m=n0();(Nt!==l||It!==a)&&(Mi=null,Is(l,a));do try{Vb();break}catch(v){t0(l,v)}while(!0);if(Dd(),Ve=d,Ba.current=m,yt!==null)throw Error(t(261));return Nt=null,It=0,$t}function Vb(){for(;yt!==null;)i0(yt)}function qb(){for(;yt!==null&&!O1();)i0(yt)}function i0(l){var a=o0(l.alternate,l,_n);l.memoizedProps=l.pendingProps,a===null?s0(l):yt=a,mh.current=null}function s0(l){var a=l;do{var d=a.alternate;if(l=a.return,(a.flags&32768)===0){if(d=Lb(d,a,_n),d!==null){yt=d;return}}else{if(d=Ib(d,a),d!==null){d.flags&=32767,yt=d;return}if(l!==null)l.flags|=32768,l.subtreeFlags=0,l.deletions=null;else{$t=6,yt=null;return}}if(a=a.sibling,a!==null){yt=a;return}yt=a=l}while(a!==null);$t===0&&($t=5)}function Zs(l,a,d){var m=Ke,v=Mn.transition;try{Mn.transition=null,Ke=1,Yb(l,a,d,m)}finally{Mn.transition=v,Ke=m}return null}function Yb(l,a,d,m){do Ar();while(as!==null);if((Ve&6)!==0)throw Error(t(327));d=l.finishedWork;var v=l.finishedLanes;if(d===null)return null;if(l.finishedWork=null,l.finishedLanes=0,d===l.current)throw Error(t(177));l.callbackNode=null,l.callbackPriority=0;var y=d.lanes|d.childLanes;if(P1(l,y),l===Nt&&(yt=Nt=null,It=0),(d.subtreeFlags&2064)===0&&(d.flags&2064)===0||Ya||(Ya=!0,a0(ta,function(){return Ar(),null})),y=(d.flags&15990)!==0,(d.subtreeFlags&15990)!==0||y){y=Mn.transition,Mn.transition=null;var $=Ke;Ke=1;var E=Ve;Ve|=4,mh.current=null,Fb(l,d),WO(d,l),fb(bd),aa=!!wd,bd=wd=null,l.current=d,Xb(d),v1(),Ve=E,Ke=$,Mn.transition=y}else l.current=d;if(Ya&&(Ya=!1,as=l,Wa=v),y=l.pendingLanes,y===0&&(os=null),k1(d.stateNode),dn(l,pt()),a!==null)for(m=l.onRecoverableError,d=0;d<a.length;d++)v=a[d],m(v.value,{componentStack:v.stack,digest:v.digest});if(qa)throw qa=!1,l=vh,vh=null,l;return(Wa&1)!==0&&l.tag!==0&&Ar(),y=l.pendingLanes,(y&1)!==0?l===yh?ql++:(ql=0,yh=l):ql=0,is(),null}function Ar(){if(as!==null){var l=qm(Wa),a=Mn.transition,d=Ke;try{if(Mn.transition=null,Ke=16>l?16:l,as===null)var m=!1;else{if(l=as,as=null,Wa=0,(Ve&6)!==0)throw Error(t(331));var v=Ve;for(Ve|=4,we=l.current;we!==null;){var y=we,$=y.child;if((we.flags&16)!==0){var E=y.deletions;if(E!==null){for(var R=0;R<E.length;R++){var U=E[R];for(we=U;we!==null;){var le=we;switch(le.tag){case 0:case 11:case 15:zl(8,le,y)}var ae=le.child;if(ae!==null)ae.return=le,we=ae;else for(;we!==null;){le=we;var re=le.sibling,xe=le.return;if(zO(le),le===U){we=null;break}if(re!==null){re.return=xe,we=re;break}we=xe}}}var be=y.alternate;if(be!==null){var _e=be.child;if(_e!==null){be.child=null;do{var mt=_e.sibling;_e.sibling=null,_e=mt}while(_e!==null)}}we=y}}if((y.subtreeFlags&2064)!==0&&$!==null)$.return=y,we=$;else e:for(;we!==null;){if(y=we,(y.flags&2048)!==0)switch(y.tag){case 0:case 11:case 15:zl(9,y,y.return)}var B=y.sibling;if(B!==null){B.return=y.return,we=B;break e}we=y.return}}var Z=l.current;for(we=Z;we!==null;){$=we;var W=$.child;if(($.subtreeFlags&2064)!==0&&W!==null)W.return=$,we=W;else e:for($=Z;we!==null;){if(E=we,(E.flags&2048)!==0)try{switch(E.tag){case 0:case 11:case 15:za(9,E)}}catch(Pe){ht(E,E.return,Pe)}if(E===$){we=null;break e}var ce=E.sibling;if(ce!==null){ce.return=E.return,we=ce;break e}we=E.return}}if(Ve=v,is(),si&&typeof si.onPostCommitFiberRoot=="function")try{si.onPostCommitFiberRoot(na,l)}catch{}m=!0}return m}finally{Ke=d,Mn.transition=a}}return!1}function r0(l,a,d){a=jr(d,a),a=wO(l,a,1),l=rs(l,a,1),a=Jt(),l!==null&&(gl(l,1,a),dn(l,a))}function ht(l,a,d){if(l.tag===3)r0(l,l,d);else for(;a!==null;){if(a.tag===3){r0(a,l,d);break}else if(a.tag===1){var m=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof m.componentDidCatch=="function"&&(os===null||!os.has(m))){l=jr(d,l),l=bO(a,l,1),a=rs(a,l,1),l=Jt(),a!==null&&(gl(a,1,l),dn(a,l));break}}a=a.return}}function Wb(l,a,d){var m=l.pingCache;m!==null&&m.delete(a),a=Jt(),l.pingedLanes|=l.suspendedLanes&d,Nt===l&&(It&d)===d&&($t===4||$t===3&&(It&130023424)===It&&500>pt()-Oh?Is(l,0):gh|=d),dn(l,a)}function l0(l,a){a===0&&((l.mode&1)===0?a=1:(a=sa,sa<<=1,(sa&130023424)===0&&(sa=4194304)));var d=Jt();l=Ni(l,a),l!==null&&(gl(l,a,d),dn(l,d))}function Ub(l){var a=l.memoizedState,d=0;a!==null&&(d=a.retryLane),l0(l,d)}function Gb(l,a){var d=0;switch(l.tag){case 13:var m=l.stateNode,v=l.memoizedState;v!==null&&(d=v.retryLane);break;case 19:m=l.stateNode;break;default:throw Error(t(314))}m!==null&&m.delete(a),l0(l,d)}var o0;o0=function(l,a,d){if(l!==null)if(l.memoizedProps!==a.pendingProps||on.current)cn=!0;else{if((l.lanes&d)===0&&(a.flags&128)===0)return cn=!1,Db(l,a,d);cn=(l.flags&131072)!==0}else cn=!1,ot&&(a.flags&1048576)!==0&&Zg(a,$a,a.index);switch(a.lanes=0,a.tag){case 2:var m=a.type;Fa(l,a),l=a.pendingProps;var v=Sr(a,Bt.current);Qr(a,d),v=Wd(null,a,m,l,v,d);var y=Ud();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,an(m)?(y=!0,wa(a)):y=!1,a.memoizedState=v.state!==null&&v.state!==void 0?v.state:null,Fd(a),v.updater=Ia,a.stateNode=v,v._reactInternals=a,th(a,m,l,d),a=rh(null,a,m,!0,y,d)):(a.tag=0,ot&&y&&Td(a),Kt(null,a,v,d),a=a.child),a;case 16:m=a.elementType;e:{switch(Fa(l,a),l=a.pendingProps,v=m._init,m=v(m._payload),a.type=m,v=a.tag=Kb(m),l=qn(m,l),v){case 0:a=sh(null,a,m,l,d);break e;case 1:a=EO(null,a,m,l,d);break e;case 11:a=QO(null,a,m,l,d);break e;case 14:a=CO(null,a,m,qn(m.type,l),d);break e}throw Error(t(306,m,""))}return a;case 0:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:qn(m,v),sh(l,a,m,v,d);case 1:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:qn(m,v),EO(l,a,m,v,d);case 3:e:{if(AO(a),l===null)throw Error(t(387));m=a.pendingProps,y=a.memoizedState,v=y.element,Ug(l,a),Na(a,m,null,d);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=jr(Error(t(423)),a),a=MO(l,a,m,d,v);break e}else if(m!==v){v=jr(Error(t(424)),a),a=MO(l,a,m,d,v);break e}else for(bn=es(a.stateNode.containerInfo.firstChild),wn=a,ot=!0,Vn=null,d=Yg(a,null,m,d),a.child=d;d;)d.flags=d.flags&-3|4096,d=d.sibling;else{if(_r(),m===v){a=Ai(l,a,d);break e}Kt(l,a,m,d)}a=a.child}return a;case 5:return Kg(a),l===null&&Ad(a),m=a.type,v=a.pendingProps,y=l!==null?l.memoizedProps:null,$=v.children,_d(m,v)?$=null:y!==null&&_d(m,y)&&(a.flags|=32),NO(l,a),Kt(l,a,$,d),a.child;case 6:return l===null&&Ad(a),null;case 13:return RO(l,a,d);case 4:return Xd(a,a.stateNode.containerInfo),m=a.pendingProps,l===null?a.child=$r(a,null,m,d):Kt(l,a,m,d),a.child;case 11:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:qn(m,v),QO(l,a,m,v,d);case 7:return Kt(l,a,a.pendingProps,d),a.child;case 8:return Kt(l,a,a.pendingProps.children,d),a.child;case 12:return Kt(l,a,a.pendingProps.children,d),a.child;case 10:e:{if(m=a.type._context,v=a.pendingProps,y=a.memoizedProps,$=v.value,nt(Ca,m._currentValue),m._currentValue=$,y!==null)if(Bn(y.value,$)){if(y.children===v.children&&!on.current){a=Ai(l,a,d);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 R=E.firstContext;R!==null;){if(R.context===m){if(y.tag===1){R=Ei(-1,d&-d),R.tag=2;var U=y.updateQueue;if(U!==null){U=U.shared;var le=U.pending;le===null?R.next=R:(R.next=le.next,le.next=R),U.pending=R}}y.lanes|=d,R=y.alternate,R!==null&&(R.lanes|=d),Id(y.return,d,a),E.lanes|=d;break}R=R.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|=d,E=$.alternate,E!==null&&(E.lanes|=d),Id($,d,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=$}Kt(l,a,v.children,d),a=a.child}return a;case 9:return v=a.type,m=a.pendingProps.children,Qr(a,d),v=En(v),m=m(v),a.flags|=1,Kt(l,a,m,d),a.child;case 14:return m=a.type,v=qn(m,a.pendingProps),v=qn(m.type,v),CO(l,a,m,v,d);case 15:return jO(l,a,a.type,a.pendingProps,d);case 17:return m=a.type,v=a.pendingProps,v=a.elementType===m?v:qn(m,v),Fa(l,a),a.tag=1,an(m)?(l=!0,wa(a)):l=!1,Qr(a,d),kO(a,m,v),th(a,m,v,d),rh(null,a,m,!0,l,d);case 19:return LO(l,a,d);case 22:return TO(l,a,d)}throw Error(t(156,a.tag))};function a0(l,a){return Fm(l,a)}function Hb(l,a,d,m){this.tag=l,this.key=d,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 Rn(l,a,d,m){return new Hb(l,a,d,m)}function _h(l){return l=l.prototype,!(!l||!l.isReactComponent)}function Kb(l){if(typeof l=="function")return _h(l)?1:0;if(l!=null){if(l=l.$$typeof,l===D)return 11;if(l===ue)return 14}return 2}function ds(l,a){var d=l.alternate;return d===null?(d=Rn(l.tag,a,l.key,l.mode),d.elementType=l.elementType,d.type=l.type,d.stateNode=l.stateNode,d.alternate=l,l.alternate=d):(d.pendingProps=a,d.type=l.type,d.flags=0,d.subtreeFlags=0,d.deletions=null),d.flags=l.flags&14680064,d.childLanes=l.childLanes,d.lanes=l.lanes,d.child=l.child,d.memoizedProps=l.memoizedProps,d.memoizedState=l.memoizedState,d.updateQueue=l.updateQueue,a=l.dependencies,d.dependencies=a===null?null:{lanes:a.lanes,firstContext:a.firstContext},d.sibling=l.sibling,d.index=l.index,d.ref=l.ref,d}function Ka(l,a,d,m,v,y){var $=2;if(m=l,typeof l=="function")_h(l)&&($=1);else if(typeof l=="string")$=5;else e:switch(l){case A:return Fs(d.children,v,y,a);case J:$=8,v|=8;break;case z:return l=Rn(12,d,a,v|2),l.elementType=z,l.lanes=y,l;case ee:return l=Rn(13,d,a,v),l.elementType=ee,l.lanes=y,l;case q:return l=Rn(19,d,a,v),l.elementType=q,l.lanes=y,l;case de:return Ja(d,v,y,a);default:if(typeof l=="object"&&l!==null)switch(l.$$typeof){case G:$=10;break e;case H:$=9;break e;case D:$=11;break e;case ue:$=14;break e;case ve:$=16,m=null;break e}throw Error(t(130,l==null?l:typeof l,""))}return a=Rn($,d,a,v),a.elementType=l,a.type=m,a.lanes=y,a}function Fs(l,a,d,m){return l=Rn(7,l,m,a),l.lanes=d,l}function Ja(l,a,d,m){return l=Rn(22,l,m,a),l.elementType=de,l.lanes=d,l.stateNode={isHidden:!1},l}function $h(l,a,d){return l=Rn(6,l,null,a),l.lanes=d,l}function Ph(l,a,d){return a=Rn(4,l.children!==null?l.children:[],l.key,a),a.lanes=d,a.stateNode={containerInfo:l.containerInfo,pendingChildren:null,implementation:l.implementation},a}function Jb(l,a,d,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=ed(0),this.expirationTimes=ed(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ed(0),this.identifierPrefix=m,this.onRecoverableError=v,this.mutableSourceEagerHydrationData=null}function Qh(l,a,d,m,v,y,$,E,R){return l=new Jb(l,a,d,E,R),a===1?(a=1,y===!0&&(a|=8)):a=0,y=Rn(3,null,null,a),l.current=y,y.stateNode=l,y.memoizedState={element:m,isDehydrated:d,cache:null,transitions:null,pendingSuspenseBoundaries:null},Fd(y),l}function e_(l,a,d){var m=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:T,key:m==null?null:""+m,children:l,containerInfo:a,implementation:d}}function c0(l){if(!l)return ns;l=l._reactInternals;e:{if(Cs(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(an(a.type)){a=a.stateNode.__reactInternalMemoizedMergedChildContext;break e}}a=a.return}while(a!==null);throw Error(t(171))}if(l.tag===1){var d=l.type;if(an(d))return Dg(l,d,a)}return a}function u0(l,a,d,m,v,y,$,E,R){return l=Qh(d,m,!0,l,v,y,$,E,R),l.context=c0(null),d=l.current,m=Jt(),v=cs(d),y=Ei(m,v),y.callback=a??null,rs(d,y,v),l.current.lanes=v,gl(l,v,m),dn(l,m),l}function ec(l,a,d,m){var v=a.current,y=Jt(),$=cs(v);return d=c0(d),a.context===null?a.context=d:a.pendingContext=d,a=Ei(y,$),a.payload={element:l},m=m===void 0?null:m,m!==null&&(a.callback=m),l=rs(v,a,$),l!==null&&(Un(l,v,$,y),Ta(l,v,$)),$}function tc(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 d0(l,a){if(l=l.memoizedState,l!==null&&l.dehydrated!==null){var d=l.retryLane;l.retryLane=d!==0&&d<a?d:a}}function Ch(l,a){d0(l,a),(l=l.alternate)&&d0(l,a)}function t_(){return null}var h0=typeof reportError=="function"?reportError:function(l){console.error(l)};function jh(l){this._internalRoot=l}nc.prototype.render=jh.prototype.render=function(l){var a=this._internalRoot;if(a===null)throw Error(t(409));ec(l,a,null,null)},nc.prototype.unmount=jh.prototype.unmount=function(){var l=this._internalRoot;if(l!==null){this._internalRoot=null;var a=l.containerInfo;Ls(function(){ec(null,l,null,null)}),a[Qi]=null}};function nc(l){this._internalRoot=l}nc.prototype.unstable_scheduleHydration=function(l){if(l){var a=Um();l={blockedOn:null,target:l,priority:a};for(var d=0;d<Hi.length&&a!==0&&a<Hi[d].priority;d++);Hi.splice(d,0,l),d===0&&Km(l)}};function Th(l){return!(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11)}function ic(l){return!(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11&&(l.nodeType!==8||l.nodeValue!==" react-mount-point-unstable "))}function f0(){}function n_(l,a,d,m,v){if(v){if(typeof m=="function"){var y=m;m=function(){var U=tc($);y.call(U)}}var $=u0(a,m,l,0,null,!1,!1,"",f0);return l._reactRootContainer=$,l[Qi]=$.current,jl(l.nodeType===8?l.parentNode:l),Ls(),$}for(;v=l.lastChild;)l.removeChild(v);if(typeof m=="function"){var E=m;m=function(){var U=tc(R);E.call(U)}}var R=Qh(l,0,!1,null,null,!1,!1,"",f0);return l._reactRootContainer=R,l[Qi]=R.current,jl(l.nodeType===8?l.parentNode:l),Ls(function(){ec(a,R,d,m)}),R}function sc(l,a,d,m,v){var y=d._reactRootContainer;if(y){var $=y;if(typeof v=="function"){var E=v;v=function(){var R=tc($);E.call(R)}}ec(a,$,l,v)}else $=n_(d,a,l,v,m);return tc($)}Ym=function(l){switch(l.tag){case 3:var a=l.stateNode;if(a.current.memoizedState.isDehydrated){var d=ml(a.pendingLanes);d!==0&&(td(a,d|1),dn(a,pt()),(Ve&6)===0&&(Er=pt()+500,is()))}break;case 13:Ls(function(){var m=Ni(l,1);if(m!==null){var v=Jt();Un(m,l,1,v)}}),Ch(l,1)}},nd=function(l){if(l.tag===13){var a=Ni(l,134217728);if(a!==null){var d=Jt();Un(a,l,134217728,d)}Ch(l,134217728)}},Wm=function(l){if(l.tag===13){var a=cs(l),d=Ni(l,a);if(d!==null){var m=Jt();Un(d,l,a,m)}Ch(l,a)}},Um=function(){return Ke},Gm=function(l,a){var d=Ke;try{return Ke=l,a()}finally{Ke=d}},Wu=function(l,a,d){switch(a){case"input":if(ul(l,d),a=d.name,d.type==="radio"&&a!=null){for(d=l;d.parentNode;)d=d.parentNode;for(d=d.querySelectorAll("input[name="+JSON.stringify(""+a)+'][type="radio"]'),a=0;a<d.length;a++){var m=d[a];if(m!==l&&m.form===l.form){var v=ka(m);if(!v)throw Error(t(90));ze(m),ul(m,v)}}}break;case"textarea":me(l,d);break;case"select":a=d.value,a!=null&&Y(l,!!d.multiple,a,!1)}},Am=Sh,Mm=Ls;var i_={usingClientEntryPoint:!1,Events:[El,xr,ka,Nm,Em,Sh]},Yl={findFiberByHostInstance:js,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},s_={bundleType:Yl.bundleType,version:Yl.version,rendererPackageName:Yl.rendererPackageName,rendererConfig:Yl.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:P.ReactCurrentDispatcher,findHostInstanceByFiber:function(l){return l=Im(l),l===null?null:l.stateNode},findFiberByHostInstance:Yl.findFiberByHostInstance||t_,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 rc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!rc.isDisabled&&rc.supportsFiber)try{na=rc.inject(s_),si=rc}catch{}}return hn.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=i_,hn.createPortal=function(l,a){var d=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Th(a))throw Error(t(200));return e_(l,a,null,d)},hn.createRoot=function(l,a){if(!Th(l))throw Error(t(299));var d=!1,m="",v=h0;return a!=null&&(a.unstable_strictMode===!0&&(d=!0),a.identifierPrefix!==void 0&&(m=a.identifierPrefix),a.onRecoverableError!==void 0&&(v=a.onRecoverableError)),a=Qh(l,1,!1,null,null,d,!1,m,v),l[Qi]=a.current,jl(l.nodeType===8?l.parentNode:l),new jh(a)},hn.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=Im(a),l=l===null?null:l.stateNode,l},hn.flushSync=function(l){return Ls(l)},hn.hydrate=function(l,a,d){if(!ic(a))throw Error(t(200));return sc(null,l,a,!0,d)},hn.hydrateRoot=function(l,a,d){if(!Th(l))throw Error(t(405));var m=d!=null&&d.hydratedSources||null,v=!1,y="",$=h0;if(d!=null&&(d.unstable_strictMode===!0&&(v=!0),d.identifierPrefix!==void 0&&(y=d.identifierPrefix),d.onRecoverableError!==void 0&&($=d.onRecoverableError)),a=u0(a,null,l,1,d??null,v,!1,y,$),l[Qi]=a.current,jl(l),m)for(l=0;l<m.length;l++)d=m[l],v=d._getVersion,v=v(d._source),a.mutableSourceEagerHydrationData==null?a.mutableSourceEagerHydrationData=[d,v]:a.mutableSourceEagerHydrationData.push(d,v);return new nc(a)},hn.render=function(l,a,d){if(!ic(a))throw Error(t(200));return sc(null,l,a,!1,d)},hn.unmountComponentAtNode=function(l){if(!ic(l))throw Error(t(40));return l._reactRootContainer?(Ls(function(){sc(null,null,l,!1,function(){l._reactRootContainer=null,l[Qi]=null})}),!0):!1},hn.unstable_batchedUpdates=Sh,hn.unstable_renderSubtreeIntoContainer=function(l,a,d,m){if(!ic(d))throw Error(t(200));if(l==null||l._reactInternals===void 0)throw Error(t(38));return sc(l,a,d,!1,m)},hn.version="18.3.1-next-f1338f8080-20240426",hn}var x0;function hx(){if(x0)return Eh.exports;x0=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(),Eh.exports=c_(),Eh.exports}var k0;function u_(){if(k0)return lc;k0=1;var n=hx();return lc.createRoot=n.createRoot,lc.hydrateRoot=n.hydrateRoot,lc}var S0=u_(),Rh={exports:{}},Wl={};/**
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 w0;function d_(){if(w0)return Wl;w0=1;var n=jp(),e=Symbol.for("react.element"),t=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,s=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)i.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:s.current}}return Wl.Fragment=t,Wl.jsx=o,Wl.jsxs=o,Wl}var b0;function h_(){return b0||(b0=1,Rh.exports=d_()),Rh.exports}var h=h_();const f_=({mode:n,nodes:e=[],sections:t=[],onNodeClick:i,onSectionClick:s,onToggleExpansion:r,searchTerm:o="",className:c=""})=>{const[u,f]=V.useState(null),p=V.useRef(null);V.useEffect(()=>{const x=b=>{!u||!p.current?.contains(document.activeElement)||(n==="tree"?k(b):w(b))},k=b=>{const C=m_(e),S=C.findIndex(Q=>Q.id===u);switch(b.key){case"ArrowDown":b.preventDefault(),S<C.length-1&&f(C[S+1].id);break;case"ArrowUp":b.preventDefault(),S>0&&f(C[S-1].id);break;case"ArrowRight":b.preventDefault();const Q=C[S];Q.type==="folder"&&!Q.isExpanded&&Q.children.length>0&&r?.(Q.id,!0);break;case"ArrowLeft":b.preventDefault();const P=C[S];P.type==="folder"&&P.isExpanded&&r?.(P.id,!1);break;case"Enter":case" ":b.preventDefault();const _=C[S];_.type==="folder"?r?.(_.id):i&&i(_);break}},w=b=>{const C=["home",...t.map(Q=>Q.id)],S=C.findIndex(Q=>Q===u);switch(b.key){case"ArrowDown":b.preventDefault(),S<C.length-1&&f(C[S+1]);break;case"ArrowUp":b.preventDefault(),S>0&&f(C[S-1]);break;case"Enter":case" ":b.preventDefault(),u&&s&&s(u==="home"?"top":u);break}};return document.addEventListener("keydown",x),()=>document.removeEventListener("keydown",x)},[u,e,t,n,r,i,s]);const g=()=>{const x=(k,w=0)=>{const b=k.children.length>0,C=k.type==="folder",S=u===k.id,Q=_=>{_.stopPropagation(),f(k.id),C?r?.(k.id):i&&i(k)},P=_=>{_.stopPropagation(),r?.(k.id)};return h.jsxs("div",{className:"nav-node-container",children:[h.jsxs("div",{className:`nav-node ${S?"nav-node--focused":""} ${C?"":"nav-node--leaf"}`,style:{paddingLeft:`${w*10+8}px`},onClick:Q,tabIndex:0,role:"treeitem","aria-expanded":C?k.isExpanded:void 0,"aria-level":w+1,onFocus:()=>f(k.id),children:[C&&b&&h.jsx("button",{className:`nav-expander ${k.isExpanded?"nav-expander--expanded":""}`,onClick:P,"aria-label":k.isExpanded?"Collapse":"Expand",children:h.jsx("span",{className:"nav-expander-icon",children:"▶"})}),(!C||!b)&&h.jsx("span",{className:"nav-expander nav-expander--placeholder"}),h.jsx("span",{className:"nav-node-icon",children:k.icon}),h.jsxs("span",{className:"nav-node-label",children:[p_(k.label,o),k.element?.tags?.includes("globals.tags.system")&&h.jsx("span",{className:"system-label",children:"SYS"})]}),k.count!==void 0&&h.jsx("span",{className:"nav-node-count",children:k.count})]}),C&&k.isExpanded&&b&&h.jsx("div",{className:"nav-children",role:"group",children:k.children.map(_=>x(_,w+1))})]},k.id)};return h.jsx("div",{className:"nav-tree-container",role:"tree","aria-label":"Documentation tree",children:e.map(k=>x(k))})},O=()=>{const x=(k,w)=>{w.preventDefault(),w.stopPropagation(),f(k),s&&s(k==="home"?"top":k)};return h.jsxs("ul",{className:"nav-list",role:"list",children:[h.jsx("li",{children:h.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:h.jsxs("div",{className:"nav-content",children:[h.jsx("span",{className:"icon",children:"🏠"}),h.jsx("span",{className:"text",children:"Home"})]})})}),t.map(k=>h.jsx("li",{children:h.jsxs("a",{href:`#${k.id}`,className:`nav-link ${u===k.id?"nav-link--focused":""}`,onClick:w=>x(k.id,w),onFocus:()=>f(k.id),tabIndex:0,role:"listitem",children:[h.jsxs("div",{className:"nav-content",children:[h.jsx("span",{className:"icon",children:k.icon}),h.jsx("span",{className:"text",children:k.label})]}),k.count!==null&&h.jsx("span",{className:"nav-badge",children:k.count})]})},k.id))]})};return h.jsx("div",{ref:p,className:`navigation-view navigation-view--${n} ${c}`,role:n==="tree"?"tree":"navigation",children:n==="tree"?g():O()})};function p_(n,e){if(!e.trim())return n;const t=e.toLowerCase(),s=n.toLowerCase().indexOf(t);return s===-1?n:h.jsxs(h.Fragment,{children:[n.substring(0,s),h.jsx("mark",{className:"nav-search-highlight",children:n.substring(s,s+t.length)}),n.substring(s+t.length)]})}function m_(n){const e=[],t=i=>{for(const s of i)e.push(s),s.isExpanded&&s.children.length>0&&t(s.children)};return t(n),e}const fx=({icon:n,title:e,description:t,status:i,actions:s,className:r=""})=>h.jsxs("div",{className:`sidebar-header ${r}`,children:[h.jsxs("div",{className:"sidebar-header__content",children:[h.jsxs("div",{className:"sidebar-header__title-section",children:[h.jsx("h2",{className:"sidebar-header__title",children:e}),i&&h.jsx("div",{className:"sidebar-header__status",children:i})]}),s&&h.jsx("div",{className:"sidebar-header__actions",children:s})]}),t&&h.jsx("p",{className:"sidebar-header__description",children:t})]}),g_=({sidebarWidth:n,sidebarRef:e,isChatOpen:t,onToggleChat:i,leftOffset:s=0,isDarkMode:r=!0,onToggleDarkMode:o,viewMode:c,treeType:u,localNamespaceSearch:f,showSystem:p,treeNodes:g,sections:O,totalComponents:x,onViewModeChange:k,onTreeTypeChange:w,onNamespaceSearchChange:b,onShowSystemChange:C,onTreeNodeClick:S,onToggleExpansion:Q,onSectionClick:P})=>h.jsxs("nav",{ref:e,className:"docs-sidebar",style:{width:`${n}px`,left:`${s}px`},children:[h.jsx(fx,{icon:"📚",title:"Runner Dev",className:"sidebar-header--docs",actions:h.jsx("div",{style:{display:"flex",gap:"8px"},children:h.jsx("button",{className:`sidebar-header__action-btn ${t?"active":""}`,title:t?"Hide Chat":"Show Chat",onClick:i,children:"AI"})})}),h.jsx("div",{className:"docs-main-filters",children:h.jsxs("div",{className:"docs-namespace-input",children:[h.jsxs("label",{htmlFor:"namespace-input",children:[h.jsx("span",{className:"docs-label-text",children:"Filter by ID"}),h.jsx("span",{className:"docs-filter-help",title:`Search Syntax:
41
- • Comma for AND: task,resource (items with both task AND resource)
42
- • Pipe for OR: task|resource (items with task OR resource)
43
- • Exclude with !: api,!test (items with api but NOT test)
44
- • Tags search: :api,debug (search tags for api AND debug)`,children:"?"})]}),h.jsx("input",{id:"namespace-input",type:"text",placeholder:"Filter by ID...",value:f,onChange:_=>b(_.target.value),onKeyDown:_=>_.stopPropagation(),autoComplete:"off",autoCorrect:"off",spellCheck:!1})]})}),h.jsx("div",{className:"docs-system-toggle-container",title:"Toggle visibility of system-tagged elements",children:h.jsxs("label",{className:"docs-switch",htmlFor:"show-system-toggle",children:[h.jsx("input",{id:"show-system-toggle",className:"docs-switch-input",type:"checkbox",checked:p,onChange:_=>C(_.target.checked)}),h.jsx("span",{className:"docs-switch-track",children:h.jsx("span",{className:"docs-switch-thumb"})}),h.jsx("span",{className:"docs-switch-text",children:h.jsx("span",{className:"system-label",children:"SYSTEM"})})]})}),h.jsxs("div",{className:"docs-view-controls",children:[h.jsxs("div",{className:"docs-view-toggle",children:[h.jsxs("button",{className:`docs-view-button ${c==="list"?"active":""}`,onClick:()=>k("list"),title:"List View",children:[h.jsx("span",{className:"icon",children:"📄"}),h.jsx("span",{className:"label",children:"List"})]}),h.jsxs("button",{className:`docs-view-button ${c==="tree"?"active":""}`,onClick:()=>k("tree"),title:"Tree View",children:[h.jsx("span",{className:"icon",children:"🌳"}),h.jsx("span",{className:"label",children:"Tree"})]})]}),c==="tree"&&h.jsxs("div",{className:"docs-view-toggle",children:[h.jsxs("button",{className:`docs-view-button ${u==="namespace"?"active":""}`,onClick:()=>w("namespace"),title:"By Namespace",children:[h.jsx("span",{className:"icon",children:"📁"}),h.jsx("span",{className:"label",children:"Namespace"})]}),h.jsxs("button",{className:`docs-view-button ${u==="type"?"active":""}`,onClick:()=>w("type"),title:"By Type",children:[h.jsx("span",{className:"icon",children:"🏷️"}),h.jsx("span",{className:"label",children:"Type"})]})]})]}),h.jsx("div",{className:"docs-nav-container",children:h.jsx(f_,{mode:c,nodes:g,sections:O,onNodeClick:S,onSectionClick:P,onToggleExpansion:Q,searchTerm:f,className:"docs-navigation"})}),h.jsxs("div",{className:"docs-nav-stats",children:[h.jsx("div",{className:"label",children:"Quick Stats"}),h.jsx("div",{className:"value",children:x}),h.jsx("div",{className:"description",children:"Total Components"})]}),h.jsxs("div",{className:"docs-support-section",children:[h.jsx("div",{className:"docs-support-title",children:"Help & Support"}),h.jsxs("a",{href:"https://github.com/bluelibs/runner/issues/new",target:"_blank",rel:"noopener noreferrer",className:"docs-support-link docs-support-link--issue",children:[h.jsx("span",{className:"docs-support-icon",children:"🐛"}),h.jsx("span",{className:"docs-support-text",children:"Submit an Issue"}),h.jsx("span",{className:"docs-support-arrow",children:"→"})]}),h.jsxs("a",{href:"mailto:theodor@bluelibs.com",className:"docs-support-link docs-support-link--contact",children:[h.jsx("span",{className:"docs-support-icon",children:"💬"}),h.jsx("span",{className:"docs-support-text",children:"Contact Creator"}),h.jsx("span",{className:"docs-support-arrow",children:"→"})]})]})]}),O_=n=>{if(!n)return"No schema defined";try{const e=JSON.parse(n);return JSON.stringify(e,null,2)}catch{return n}},v_=n=>{if(!n)return"No configuration";try{const e=JSON.parse(n);return JSON.stringify(e,null,2)}catch{return n}},Jn=n=>{if(!n)return"Unknown location";const e=["workspace","node_modules","home"],t=n.indexOf(":"),i=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=i(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 s=i(n);return s.length>3?".../"+s.slice(-3).join("/"):s.join("/")},y_=n=>{switch(n.toLowerCase()){case"error":return"❌";case"warning":return"⚠️";case"info":return"ℹ️";default:return"📝"}},Te=n=>n.replace(/\./g," › "),x_=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 Uc=hx();function wf(){return wf=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)({}).hasOwnProperty.call(t,i)&&(n[i]=t[i])}return n},wf.apply(null,arguments)}function k_(n,e){if(n==null)return{};var t={};for(var i in n)if({}.hasOwnProperty.call(n,i)){if(e.indexOf(i)!==-1)continue;t[i]=n[i]}return t}let bf=[],px=[];(()=>{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?px:bf).push(t=t+n[e])})();function S_(n){if(n<768)return!1;for(let e=0,t=bf.length;;){let i=e+t>>1;if(n<bf[i])t=i;else if(n>=px[i])e=i+1;else return!0;if(e==t)return!1}}function _0(n){return n>=127462&&n<=127487}const $0=8205;function w_(n,e,t=!0,i=!0){return(t?mx:b_)(n,e,i)}function mx(n,e,t){if(e==n.length)return e;e&&gx(n.charCodeAt(e))&&Ox(n.charCodeAt(e-1))&&e--;let i=Dh(n,e);for(e+=P0(i);e<n.length;){let s=Dh(n,e);if(i==$0||s==$0||t&&S_(s))e+=P0(s),i=s;else if(_0(s)){let r=0,o=e-2;for(;o>=0&&_0(Dh(n,o));)r++,o-=2;if(r%2==0)break;e+=2}else break}return e}function b_(n,e,t){for(;e>0;){let i=mx(n,e-2,t);if(i<e)return i;e--}return 0}function Dh(n,e){let t=n.charCodeAt(e);if(!Ox(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return gx(i)?(t-55296<<10)+(i-56320)+65536:t}function gx(n){return n>=56320&&n<57344}function Ox(n){return n>=55296&&n<56320}function P0(n){return n<65536?1:2}class Xe{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,i){[e,t]=Hr(this,e,t);let s=[];return this.decompose(0,e,s,2),i.length&&i.decompose(0,i.length,s,3),this.decompose(t,this.length,s,1),mi.from(s,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=Hr(this,e,t);let i=[];return this.decompose(e,t,i,0),mi.from(i,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),i=this.length-this.scanIdentical(e,-1),s=new fo(this),r=new fo(e);for(let o=t,c=t;;){if(s.next(o),r.next(o),o=0,s.lineBreak!=r.lineBreak||s.done!=r.done||s.value!=r.value)return!1;if(c+=s.value.length,s.done||c>=i)return!0}}iter(e=1){return new fo(this,e)}iterRange(e,t=this.length){return new vx(this,e,t)}iterLines(e,t){let i;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);let s=this.line(e).from;i=this.iterRange(s,Math.max(s,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new yx(i)}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]?Xe.empty:e.length<=32?new gt(e):mi.from(gt.split(e,[]))}}class gt extends Xe{constructor(e,t=__(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,s){for(let r=0;;r++){let o=this.text[r],c=s+o.length;if((t?i:c)>=e)return new $_(s,c,i,o);s=c+1,i++}}decompose(e,t,i,s){let r=e<=0&&t>=this.length?this:new gt(Q0(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(s&1){let o=i.pop(),c=Ec(r.text,o.text.slice(),0,r.length);if(c.length<=32)i.push(new gt(c,o.length+r.length));else{let u=c.length>>1;i.push(new gt(c.slice(0,u)),new gt(c.slice(u)))}}else i.push(r)}replace(e,t,i){if(!(i instanceof gt))return super.replace(e,t,i);[e,t]=Hr(this,e,t);let s=Ec(this.text,Ec(i.text,Q0(this.text,0,e)),t),r=this.length+i.length-(t-e);return s.length<=32?new gt(s,r):mi.from(gt.split(s,[]),r)}sliceString(e,t=this.length,i=`
45
- `){[e,t]=Hr(this,e,t);let s="";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&&(s+=i),e<u&&t>r&&(s+=c.slice(Math.max(0,e-r),t-r)),r=u+1}return s}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let i=[],s=-1;for(let r of e)i.push(r),s+=r.length+1,i.length==32&&(t.push(new gt(i,s)),i=[],s=-1);return s>-1&&t.push(new gt(i,s)),t}}class mi extends Xe{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let i of e)this.lines+=i.lines}lineInner(e,t,i,s){for(let r=0;;r++){let o=this.children[r],c=s+o.length,u=i+o.lines-1;if((t?u:c)>=e)return o.lineInner(e,t,i,s);s=c+1,i=u+1}}decompose(e,t,i,s){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=s&((o<=e?1:0)|(u>=t?2:0));o>=e&&u<=t&&!f?i.push(c):c.decompose(e-o,t-o,i,f)}o=u+1}}replace(e,t,i){if([e,t]=Hr(this,e,t),i.lines<this.lines)for(let s=0,r=0;s<this.children.length;s++){let o=this.children[s],c=r+o.length;if(e>=r&&t<=c){let u=o.replace(e-r,t-r,i),f=this.lines-o.lines+u.lines;if(u.lines<f>>4&&u.lines>f>>6){let p=this.children.slice();return p[s]=u,new mi(p,this.length-(t-e)+i.length)}return super.replace(r,c,u)}r=c+1}return super.replace(e,t,i)}sliceString(e,t=this.length,i=`
46
- `){[e,t]=Hr(this,e,t);let s="";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&&(s+=i),e<u&&t>o&&(s+=c.sliceString(e-o,t-o,i)),o=u+1}return s}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof mi))return 0;let i=0,[s,r,o,c]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;s+=t,r+=t){if(s==o||r==c)return i;let u=this.children[s],f=e.children[r];if(u!=f)return i+u.scanIdentical(f,t);i+=u.length+1}}static from(e,t=e.reduce((i,s)=>i+s.length+1,-1)){let i=0;for(let x of e)i+=x.lines;if(i<32){let x=[];for(let k of e)k.flatten(x);return new gt(x,t)}let s=Math.max(32,i>>5),r=s<<1,o=s>>1,c=[],u=0,f=-1,p=[];function g(x){let k;if(x.lines>r&&x instanceof mi)for(let w of x.children)g(w);else x.lines>o&&(u>o||!u)?(O(),c.push(x)):x instanceof gt&&u&&(k=p[p.length-1])instanceof gt&&x.lines+k.lines<=32?(u+=x.lines,f+=x.length+1,p[p.length-1]=new gt(k.text.concat(x.text),k.length+1+x.length)):(u+x.lines>s&&O(),u+=x.lines,f+=x.length+1,p.push(x))}function O(){u!=0&&(c.push(p.length==1?p[0]:mi.from(p,f)),f=-1,u=p.length=0)}for(let x of e)g(x);return O(),c.length==1?c[0]:new mi(c,t)}}Xe.empty=new gt([""],0);function __(n){let e=-1;for(let t of n)e+=t.length+1;return e}function Ec(n,e,t=0,i=1e9){for(let s=0,r=0,o=!0;r<n.length&&s<=i;r++){let c=n[r],u=s+c.length;u>=t&&(u>i&&(c=c.slice(0,i-s)),s<t&&(c=c.slice(t-s)),o?(e[e.length-1]+=c,o=!1):e.push(c)),s=u+1}return e}function Q0(n,e,t){return Ec(n,[""],e,t)}class fo{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 gt?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,s=this.nodes[i],r=this.offsets[i],o=r>>1,c=s instanceof gt?s.text.length:s.children.length;if(o==(t>0?c:0)){if(i==0)return this.done=!0,this.value="",this;t>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((r&1)==(t>0?0:1)){if(this.offsets[i]+=t,e==0)return this.lineBreak=!0,this.value=`
47
- `,this;e--}else if(s instanceof gt){let u=s.text[o+(t<0?-1:0)];if(this.offsets[i]+=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=s.children[o+(t<0?-1:0)];e>u.length?(e-=u.length,this.offsets[i]+=t):(t<0&&this.offsets[i]--,this.nodes.push(u),this.offsets.push(t>0?1:(u instanceof gt?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 vx{constructor(e,t,i){this.value="",this.done=!1,this.cursor=new fo(e,t>i?-1:1),this.pos=t>i?e.length:0,this.from=Math.min(t,i),this.to=Math.max(t,i)}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 i=t<0?this.pos-this.from:this.to-this.pos;e>i&&(e=i),i-=e;let{value:s}=this.cursor.next(e);return this.pos+=(s.length+e)*t,this.value=s.length<=i?s:t<0?s.slice(s.length-i):s.slice(0,i),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 yx{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:i,value:s}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=s,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(Xe.prototype[Symbol.iterator]=function(){return this.iter()},fo.prototype[Symbol.iterator]=vx.prototype[Symbol.iterator]=yx.prototype[Symbol.iterator]=function(){return this});class $_{constructor(e,t,i,s){this.from=e,this.to=t,this.number=i,this.text=s}get length(){return this.to-this.from}}function Hr(n,e,t){return e=Math.max(0,Math.min(n.length,e)),[e,Math.max(e,Math.min(n.length,t))]}function zt(n,e,t=!0,i=!0){return w_(n,e,t,i)}function P_(n){return n>=56320&&n<57344}function Q_(n){return n>=55296&&n<56320}function mn(n,e){let t=n.charCodeAt(e);if(!Q_(t)||e+1==n.length)return t;let i=n.charCodeAt(e+1);return P_(i)?(t-55296<<10)+(i-56320)+65536:t}function Tp(n){return n<=65535?String.fromCharCode(n):(n-=65536,String.fromCharCode((n>>10)+55296,(n&1023)+56320))}function gi(n){return n<65536?1:2}const _f=/\r\n?|\n/;var Xt=(function(n){return n[n.Simple=0]="Simple",n[n.TrackDel=1]="TrackDel",n[n.TrackBefore=2]="TrackBefore",n[n.TrackAfter=3]="TrackAfter",n})(Xt||(Xt={}));class Si{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 i=this.sections[t+1];e+=i<0?this.sections[t]:i}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,i=0,s=0;t<this.sections.length;){let r=this.sections[t++],o=this.sections[t++];o<0?(e(i,s,r),s+=r):s+=o,i+=r}}iterChangedRanges(e,t=!1){$f(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let i=this.sections[t++],s=this.sections[t++];s<0?e.push(i,s):e.push(s,i)}return new Si(e)}composeDesc(e){return this.empty?e:e.empty?this:xx(this,e)}mapDesc(e,t=!1){return e.empty?this:Pf(this,e,t)}mapPos(e,t=-1,i=Xt.Simple){let s=0,r=0;for(let o=0;o<this.sections.length;){let c=this.sections[o++],u=this.sections[o++],f=s+c;if(u<0){if(f>e)return r+(e-s);r+=c}else{if(i!=Xt.Simple&&f>=e&&(i==Xt.TrackDel&&s<e&&f>e||i==Xt.TrackBefore&&s<e||i==Xt.TrackAfter&&f>e))return null;if(f>e||f==e&&t<0&&!c)return e==s||t<0?r:r+u;r+=u}s=f}if(e>s)throw new RangeError(`Position ${e} is out of range for changeset of length ${s}`);return r}touchesRange(e,t=e){for(let i=0,s=0;i<this.sections.length&&s<=t;){let r=this.sections[i++],o=this.sections[i++],c=s+r;if(o>=0&&s<=t&&c>=e)return s<e&&c>t?"cover":!0;s=c}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let i=this.sections[t++],s=this.sections[t++];e+=(e?" ":"")+i+(s>=0?":"+s:"")}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 Si(e)}static create(e){return new Si(e)}}class Pt extends Si{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 $f(this,(t,i,s,r,o)=>e=e.replace(s,s+(i-t),o),!1),e}mapDesc(e,t=!1){return Pf(this,e,t,!0)}invert(e){let t=this.sections.slice(),i=[];for(let s=0,r=0;s<t.length;s+=2){let o=t[s],c=t[s+1];if(c>=0){t[s]=c,t[s+1]=o;let u=s>>1;for(;i.length<u;)i.push(Xe.empty);i.push(o?e.slice(r,r+o):Xe.empty)}r+=o}return new Pt(t,i)}compose(e){return this.empty?e:e.empty?this:xx(this,e,!0)}map(e,t=!1){return e.empty?this:Pf(this,e,t,!0)}iterChanges(e,t=!1){$f(this,e,t)}get desc(){return Si.create(this.sections)}filter(e){let t=[],i=[],s=[],r=new So(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);Wt(s,p,-1);let g=r.ins==-1?-1:r.off==0?r.ins:0;Wt(t,p,g),g>0&&Os(i,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);Wt(t,p,-1),Wt(s,p,r.ins==-1?-1:r.off==0?r.ins:0),r.forward(p),c+=p}}return{changes:new Pt(t,i),filtered:Si.create(s)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let i=this.sections[t],s=this.sections[t+1];s<0?e.push(i):s==0?e.push([i]):e.push([i].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,i){let s=[],r=[],o=0,c=null;function u(p=!1){if(!p&&!s.length)return;o<t&&Wt(s,t-o,-1);let g=new Pt(s,r);c=c?c.compose(g.map(c)):g,s=[],r=[],o=0}function f(p){if(Array.isArray(p))for(let g of p)f(g);else if(p instanceof Pt){if(p.length!=t)throw new RangeError(`Mismatched change set length (got ${p.length}, expected ${t})`);u(),c=c?c.compose(p.map(c)):p}else{let{from:g,to:O=g,insert: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"?Xe.of(x.split(i||_f)):x:Xe.empty,w=k.length;if(g==O&&w==0)return;g<o&&u(),g>o&&Wt(s,g-o,-1),Wt(s,O-g,w),Os(r,s,k),o=O}}return f(e),u(!c),c}static empty(e){return new Pt(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],i=[];for(let s=0;s<e.length;s++){let r=e[s];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(;i.length<s;)i.push(Xe.empty);i[s]=Xe.of(r.slice(1)),t.push(r[0],i[s].length)}}}return new Pt(t,i)}static createSet(e,t){return new Pt(e,t)}}function Wt(n,e,t,i=!1){if(e==0&&t<=0)return;let s=n.length-2;s>=0&&t<=0&&t==n[s+1]?n[s]+=e:s>=0&&e==0&&n[s]==0?n[s+1]+=t:i?(n[s]+=e,n[s+1]+=t):n.push(e,t)}function Os(n,e,t){if(t.length==0)return;let i=e.length-2>>1;if(i<n.length)n[n.length-1]=n[n.length-1].append(t);else{for(;n.length<i;)n.push(Xe.empty);n.push(t)}}function $f(n,e,t){let i=n.inserted;for(let s=0,r=0,o=0;o<n.sections.length;){let c=n.sections[o++],u=n.sections[o++];if(u<0)s+=c,r+=c;else{let f=s,p=r,g=Xe.empty;for(;f+=c,p+=u,u&&i&&(g=g.append(i[o-2>>1])),!(t||o==n.sections.length||n.sections[o+1]<0);)c=n.sections[o++],u=n.sections[o++];e(s,f,r,p,g),s=f,r=p}}}function Pf(n,e,t,i=!1){let s=[],r=i?[]:null,o=new So(n),c=new So(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);Wt(s,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(Wt(s,c.ins,-1);f;){let p=Math.min(o.len,f);o.ins>=0&&u<o.i&&o.len<=p&&(Wt(s,0,o.ins),r&&Os(r,s,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;Wt(s,f,u<o.i?o.ins:0),r&&u<o.i&&Os(r,s,o.text),u=o.i,o.forward(o.len-p)}else{if(o.done&&c.done)return r?Pt.createSet(s,r):Si.create(s);throw new Error("Mismatched change set lengths")}}}function xx(n,e,t=!1){let i=[],s=t?[]:null,r=new So(n),o=new So(e);for(let c=!1;;){if(r.done&&o.done)return s?Pt.createSet(i,s):Si.create(i);if(r.ins==0)Wt(i,r.len,0,c),r.next();else if(o.len==0&&!o.done)Wt(i,0,o.ins,c),s&&Os(s,i,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=i.length;if(r.ins==-1){let p=o.ins==-1?-1:o.off?0:o.ins;Wt(i,u,p,c),s&&p&&Os(s,i,o.text)}else o.ins==-1?(Wt(i,r.off?0:r.len,u,c),s&&Os(s,i,r.textBit(u))):(Wt(i,r.off?0:r.len,o.off?0:o.ins,c),s&&!o.off&&Os(s,i,o.text));c=(r.ins>u||o.ins>=0&&o.len>u)&&(c||i.length>f),r.forward2(u),o.forward(u)}}}}class So{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?Xe.empty:e[t]}textBit(e){let{inserted:t}=this.set,i=this.i-2>>1;return i>=t.length&&!e?Xe.empty:t[i].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 Vs{constructor(e,t,i){this.from=e,this.to=t,this.flags=i}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 i,s;return this.empty?i=s=e.mapPos(this.from,t):(i=e.mapPos(this.from,1),s=e.mapPos(this.to,-1)),i==this.from&&s==this.to?this:new Vs(i,s,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return ne.range(e,t);let i=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return ne.range(this.anchor,i)}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 ne.range(e.anchor,e.head)}static create(e,t,i){return new Vs(e,t,i)}}class ne{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:ne.create(this.ranges.map(i=>i.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let i=0;i<this.ranges.length;i++)if(!this.ranges[i].eq(e.ranges[i],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new ne([this.main],0)}addRange(e,t=!0){return ne.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let i=this.ranges.slice();return i[t]=e,ne.create(i,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 ne(e.ranges.map(t=>Vs.fromJSON(t)),e.main)}static single(e,t=e){return new ne([ne.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 i=0,s=0;s<e.length;s++){let r=e[s];if(r.empty?r.from<=i:r.from<i)return ne.normalized(e.slice(),t);i=r.to}return new ne(e,t)}static cursor(e,t=0,i,s){return Vs.create(e,e,(t==0?0:t<0?8:16)|(i==null?7:Math.min(6,i))|(s??16777215)<<6)}static range(e,t,i,s){let r=(i??16777215)<<6|(s==null?7:Math.min(6,s));return t<e?Vs.create(t,e,48|r):Vs.create(e,t,(t>e?8:0)|r)}static normalized(e,t=0){let i=e[t];e.sort((s,r)=>s.from-r.from),t=e.indexOf(i);for(let s=1;s<e.length;s++){let r=e[s],o=e[s-1];if(r.empty?r.from<=o.to:r.from<o.to){let c=o.from,u=Math.max(r.to,o.to);s<=t&&t--,e.splice(--s,2,r.anchor>r.head?ne.range(u,c):ne.range(c,u))}}return new ne(e,t)}}function kx(n,e){for(let t of n.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let Np=0;class Se{constructor(e,t,i,s,r){this.combine=e,this.compareInput=t,this.compare=i,this.isStatic=s,this.id=Np++,this.default=e([]),this.extensions=typeof r=="function"?r(this):r}get reader(){return this}static define(e={}){return new Se(e.combine||(t=>t),e.compareInput||((t,i)=>t===i),e.compare||(e.combine?(t,i)=>t===i:Ep),!!e.static,e.enables)}of(e){return new Ac([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ac(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new Ac(e,this,2,t)}from(e,t){return t||(t=i=>i),this.compute([e],i=>t(i.field(e)))}}function Ep(n,e){return n==e||n.length==e.length&&n.every((t,i)=>t===e[i])}class Ac{constructor(e,t,i,s){this.dependencies=e,this.facet=t,this.type=i,this.value=s,this.id=Np++}dynamicSlot(e){var t;let i=this.value,s=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]=i(g),1},update(g,O){if(u&&O.docChanged||f&&(O.docChanged||O.selection)||Qf(g,p)){let x=i(g);if(c?!C0(x,g.values[o],s):!s(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 w=Hc(O,k);if(this.dependencies.every(b=>b instanceof Se?O.facet(b)===g.facet(b):b instanceof Dt?O.field(b,!1)==g.field(b,!1):!0)||(c?C0(x=i(g),w,s):s(x=i(g),w)))return g.values[o]=w,0}else x=i(g);return g.values[o]=x,1}}}}function C0(n,e,t){if(n.length!=e.length)return!1;for(let i=0;i<n.length;i++)if(!t(n[i],e[i]))return!1;return!0}function Qf(n,e){let t=!1;for(let i of e)po(n,i)&1&&(t=!0);return t}function C_(n,e,t){let i=t.map(u=>n[u.id]),s=t.map(u=>u.type),r=i.filter(u=>!(u&1)),o=n[e.id]>>1;function c(u){let f=[];for(let p=0;p<i.length;p++){let g=Hc(u,i[p]);if(s[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 i)po(u,f);return u.values[o]=c(u),1},update(u,f){if(!Qf(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=Qf(u,i),g=f.config.facets[e.id],O=f.facet(e);if(g&&!p&&Ep(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 oc=Se.define({static:!0});class Dt{constructor(e,t,i,s,r){this.id=e,this.createF=t,this.updateF=i,this.compareF=s,this.spec=r,this.provides=void 0}static define(e){let t=new Dt(Np++,e.create,e.update,e.compare||((i,s)=>i===s),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(oc).find(i=>i.field==this);return(t?.create||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:i=>(i.values[t]=this.create(i),1),update:(i,s)=>{let r=i.values[t],o=this.updateF(r,s);return this.compareF(r,o)?0:(i.values[t]=o,1)},reconfigure:(i,s)=>{let r=i.facet(oc),o=s.facet(oc),c;return(c=r.find(u=>u.field==this))&&c!=o.find(u=>u.field==this)?(i.values[t]=c.create(i),1):s.config.address[this.id]!=null?(i.values[t]=s.field(this),0):(i.values[t]=this.create(i),1)}}}init(e){return[this,oc.of({field:this,create:e})]}get extension(){return this}}const zs={lowest:4,low:3,default:2,high:1,highest:0};function Ul(n){return e=>new Sx(e,n)}const Ps={highest:Ul(zs.highest),high:Ul(zs.high),default:Ul(zs.default),low:Ul(zs.low),lowest:Ul(zs.lowest)};class Sx{constructor(e,t){this.inner=e,this.prec=t}}class Cu{of(e){return new Cf(this,e)}reconfigure(e){return Cu.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Cf{constructor(e,t){this.compartment=e,this.inner=t}}class Gc{constructor(e,t,i,s,r,o){for(this.base=e,this.compartments=t,this.dynamicSlots=i,this.address=s,this.staticValues=r,this.facets=o,this.statusTemplate=[];this.statusTemplate.length<i.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,i){let s=[],r=Object.create(null),o=new Map;for(let O of j_(e,t,o))O instanceof Dt?s.push(O):(r[O.facet.id]||(r[O.facet.id]=[])).push(O);let c=Object.create(null),u=[],f=[];for(let O of s)c[O.id]=f.length<<1,f.push(x=>O.slot(x));let p=i?.config.facets;for(let O in r){let x=r[O],k=x[0].facet,w=p&&p[O]||[];if(x.every(b=>b.type==0))if(c[k.id]=u.length<<1|1,Ep(w,x))u.push(i.facet(k));else{let b=k.combine(x.map(C=>C.value));u.push(i&&k.compare(b,i.facet(k))?i.facet(k):b)}else{for(let b of x)b.type==0?(c[b.id]=u.length<<1|1,u.push(b.value)):(c[b.id]=f.length<<1,f.push(C=>b.dynamicSlot(C)));c[k.id]=f.length<<1,f.push(b=>C_(b,k,x))}}let g=f.map(O=>O(c));return new Gc(e,o,g,c,u,r)}}function j_(n,e,t){let i=[[],[],[],[],[]],s=new Map;function r(o,c){let u=s.get(o);if(u!=null){if(u<=c)return;let f=i[u].indexOf(o);f>-1&&i[u].splice(f,1),o instanceof Cf&&t.delete(o.compartment)}if(s.set(o,c),Array.isArray(o))for(let f of o)r(f,c);else if(o instanceof Cf){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 Sx)r(o.inner,o.prec);else if(o instanceof Dt)i[c].push(o),o.provides&&r(o.provides,c);else if(o instanceof Ac)i[c].push(o),o.facet.extensions&&r(o.facet.extensions,zs.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,zs.default),i.reduce((o,c)=>o.concat(c))}function po(n,e){if(e&1)return 2;let t=e>>1,i=n.status[t];if(i==4)throw new Error("Cyclic dependency between fields and/or facets");if(i&2)return i;n.status[t]=4;let s=n.computeSlot(n,n.config.dynamicSlots[t]);return n.status[t]=2|s}function Hc(n,e){return e&1?n.config.staticValues[e>>1]:n.values[e>>1]}const wx=Se.define(),jf=Se.define({combine:n=>n.some(e=>e),static:!0}),bx=Se.define({combine:n=>n.length?n[0]:void 0,static:!0}),_x=Se.define(),$x=Se.define(),Px=Se.define(),Qx=Se.define({combine:n=>n.length?n[0]:!1});class bi{constructor(e,t){this.type=e,this.value=t}static define(){return new T_}}class T_{of(e){return new bi(this,e)}}class N_{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 N_(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let i=[];for(let s of e){let r=s.map(t);r&&i.push(r)}return i}}Me.reconfigure=Me.define();Me.appendConfig=Me.define();class wt{constructor(e,t,i,s,r,o){this.startState=e,this.changes=t,this.selection=i,this.effects=s,this.annotations=r,this.scrollIntoView=o,this._doc=null,this._state=null,i&&kx(i,t.newLength),r.some(c=>c.type==wt.time)||(this.annotations=r.concat(wt.time.of(Date.now())))}static create(e,t,i,s,r,o){return new wt(e,t,i,s,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(wt.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}wt.time=bi.define();wt.userEvent=bi.define();wt.addToHistory=bi.define();wt.remote=bi.define();function E_(n,e){let t=[];for(let i=0,s=0;;){let r,o;if(i<n.length&&(s==e.length||e[s]>=n[i]))r=n[i++],o=n[i++];else if(s<e.length)r=e[s++],o=e[s++];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 Cx(n,e,t){var i;let s,r,o;return t?(s=e.changes,r=Pt.empty(e.changes.length),o=n.changes.compose(e.changes)):(s=e.changes.map(n.changes),r=n.changes.mapDesc(e.changes,!0),o=n.changes.compose(s)),{changes:o,selection:e.selection?e.selection.map(r):(i=n.selection)===null||i===void 0?void 0:i.map(s),effects:Me.mapEffects(n.effects,s).concat(Me.mapEffects(e.effects,r)),annotations:n.annotations.length?n.annotations.concat(e.annotations):e.annotations,scrollIntoView:n.scrollIntoView||e.scrollIntoView}}function Tf(n,e,t){let i=e.selection,s=Vr(e.annotations);return e.userEvent&&(s=s.concat(wt.userEvent.of(e.userEvent))),{changes:e.changes instanceof Pt?e.changes:Pt.of(e.changes||[],t,n.facet(bx)),selection:i&&(i instanceof ne?i:ne.single(i.anchor,i.head)),effects:Vr(e.effects),annotations:s,scrollIntoView:!!e.scrollIntoView}}function jx(n,e,t){let i=Tf(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;i=Cx(i,Tf(n,e[r],o?i.changes.newLength:n.doc.length),o)}let s=wt.create(n,i.changes,i.selection,i.effects,i.annotations,i.scrollIntoView);return M_(t?A_(s):s)}function A_(n){let e=n.startState,t=!0;for(let s of e.facet(_x)){let r=s(n);if(r===!1){t=!1;break}Array.isArray(r)&&(t=t===!0?r:E_(t,r))}if(t!==!0){let s,r;if(t===!1)r=n.changes.invertedDesc,s=Pt.empty(e.doc.length);else{let o=n.changes.filter(t);s=o.changes,r=o.filtered.mapDesc(o.changes).invertedDesc}n=wt.create(e,s,n.selection&&n.selection.map(r),Me.mapEffects(n.effects,r),n.annotations,n.scrollIntoView)}let i=e.facet($x);for(let s=i.length-1;s>=0;s--){let r=i[s](n);r instanceof wt?n=r:Array.isArray(r)&&r.length==1&&r[0]instanceof wt?n=r[0]:n=jx(e,Vr(r),!1)}return n}function M_(n){let e=n.startState,t=e.facet(Px),i=n;for(let s=t.length-1;s>=0;s--){let r=t[s](n);r&&Object.keys(r).length&&(i=Cx(i,Tf(e,r,n.changes.newLength),!0))}return i==n?n:wt.create(e,n.changes,n.selection,i.effects,i.annotations,i.scrollIntoView)}const R_=[];function Vr(n){return n==null?R_:Array.isArray(n)?n:[n]}var ct=(function(n){return n[n.Word=0]="Word",n[n.Space=1]="Space",n[n.Other=2]="Other",n})(ct||(ct={}));const D_=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let Nf;try{Nf=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function L_(n){if(Nf)return Nf.test(n);for(let e=0;e<n.length;e++){let t=n[e];if(/\w/.test(t)||t>"€"&&(t.toUpperCase()!=t.toLowerCase()||D_.test(t)))return!0}return!1}function I_(n){return e=>{if(!/\S/.test(e))return ct.Space;if(L_(e))return ct.Word;for(let t=0;t<n.length;t++)if(e.indexOf(n[t])>-1)return ct.Word;return ct.Other}}class Ze{constructor(e,t,i,s,r,o){this.config=e,this.doc=t,this.selection=i,this.values=s,this.status=e.statusTemplate.slice(),this.computeSlot=r,o&&(o._state=this);for(let c=0;c<this.config.dynamicSlots.length;c++)po(this,c<<1);this.computeSlot=null}field(e,t=!0){let i=this.config.address[e.id];if(i==null){if(t)throw new RangeError("Field is not present in this state");return}return po(this,i),Hc(this,i)}update(...e){return jx(this,e,!0)}applyTransaction(e){let t=this.config,{base:i,compartments:s}=t;for(let c of e.effects)c.is(Cu.reconfigure)?(t&&(s=new Map,t.compartments.forEach((u,f)=>s.set(f,u)),t=null),s.set(c.value.compartment,c.value.extension)):c.is(Me.reconfigure)?(t=null,i=c.value):c.is(Me.appendConfig)&&(t=null,i=Vr(i).concat(c.value));let r;t?r=e.startState.values.slice():(t=Gc.resolve(i,s,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(jf)?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:ne.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,i=e(t.ranges[0]),s=this.changes(i.changes),r=[i.range],o=Vr(i.effects);for(let c=1;c<t.ranges.length;c++){let u=e(t.ranges[c]),f=this.changes(u.changes),p=f.map(s);for(let O=0;O<c;O++)r[O]=r[O].map(p);let g=s.mapDesc(f,!0);r.push(u.range.map(g)),s=s.compose(p),o=Me.mapEffects(o,p).concat(Me.mapEffects(Vr(u.effects),g))}return{changes:s,selection:ne.create(r,t.mainIndex),effects:o}}changes(e=[]){return e instanceof Pt?e:Pt.of(e,this.doc.length,this.facet(Ze.lineSeparator))}toText(e){return Xe.of(e.split(this.facet(Ze.lineSeparator)||_f))}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:(po(this,t),Hc(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let i in e){let s=e[i];s instanceof Dt&&this.config.address[s.id]!=null&&(t[i]=s.spec.toJSON(this.field(e[i]),this))}return t}static fromJSON(e,t={},i){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let s=[];if(i){for(let r in i)if(Object.prototype.hasOwnProperty.call(e,r)){let o=i[r],c=e[r];s.push(o.init(u=>o.spec.fromJSON(c,u)))}}return Ze.create({doc:e.doc,selection:ne.fromJSON(e.selection),extensions:t.extensions?s.concat([t.extensions]):s})}static create(e={}){let t=Gc.resolve(e.extensions||[],new Map),i=e.doc instanceof Xe?e.doc:Xe.of((e.doc||"").split(t.staticFacet(Ze.lineSeparator)||_f)),s=e.selection?e.selection instanceof ne?e.selection:ne.single(e.selection.anchor,e.selection.head):ne.single(0);return kx(s,i.length),t.staticFacet(jf)||(s=s.asSingle()),new Ze(t,i,s,t.dynamicSlots.map(()=>null),(r,o)=>o.create(r),null)}get tabSize(){return this.facet(Ze.tabSize)}get lineBreak(){return this.facet(Ze.lineSeparator)||`
48
- `}get readOnly(){return this.facet(Qx)}phrase(e,...t){for(let i of this.facet(Ze.phrases))if(Object.prototype.hasOwnProperty.call(i,e)){e=i[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(i,s)=>{if(s=="$")return"$";let r=+(s||1);return!r||r>t.length?i:t[r-1]})),e}languageDataAt(e,t,i=-1){let s=[];for(let r of this.facet(wx))for(let o of r(this,t,i))Object.prototype.hasOwnProperty.call(o,e)&&s.push(o[e]);return s}charCategorizer(e){return I_(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:t,from:i,length:s}=this.doc.lineAt(e),r=this.charCategorizer(e),o=e-i,c=e-i;for(;o>0;){let u=zt(t,o,!1);if(r(t.slice(u,o))!=ct.Word)break;o=u}for(;c<s;){let u=zt(t,c);if(r(t.slice(c,u))!=ct.Word)break;c=u}return o==c?null:ne.range(o+i,c+i)}}Ze.allowMultipleSelections=jf;Ze.tabSize=Se.define({combine:n=>n.length?n[0]:4});Ze.lineSeparator=bx;Ze.readOnly=Qx;Ze.phrases=Se.define({compare(n,e){let t=Object.keys(n),i=Object.keys(e);return t.length==i.length&&t.every(s=>n[s]==e[s])}});Ze.languageData=wx;Ze.changeFilter=_x;Ze.transactionFilter=$x;Ze.transactionExtender=Px;Cu.reconfigure=Me.define();function _i(n,e,t={}){let i={};for(let s of n)for(let r of Object.keys(s)){let o=s[r],c=i[r];if(c===void 0)i[r]=o;else if(!(c===o||o===void 0))if(Object.hasOwnProperty.call(t,r))i[r]=t[r](c,o);else throw new Error("Config merge conflict for field "+r)}for(let s in e)i[s]===void 0&&(i[s]=e[s]);return i}class Ks{eq(e){return this==e}range(e,t=e){return Ef.create(e,t,this)}}Ks.prototype.startSide=Ks.prototype.endSide=0;Ks.prototype.point=!1;Ks.prototype.mapMode=Xt.TrackDel;let Ef=class Tx{constructor(e,t,i){this.from=e,this.to=t,this.value=i}static create(e,t,i){return new Tx(e,t,i)}};function Af(n,e){return n.from-e.from||n.value.startSide-e.value.startSide}class Ap{constructor(e,t,i,s){this.from=e,this.to=t,this.value=i,this.maxPoint=s}get length(){return this.to[this.to.length-1]}findIndex(e,t,i,s=0){let r=i?this.to:this.from;for(let o=s,c=r.length;;){if(o==c)return o;let u=o+c>>1,f=r[u]-e||(i?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,i,s){for(let r=this.findIndex(t,-1e9,!0),o=this.findIndex(i,1e9,!1,r);r<o;r++)if(s(this.from[r]+e,this.to[r]+e,this.value[r])===!1)return!1}map(e,t){let i=[],s=[],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)),i.push(f),s.push(O-o),r.push(x-o))}return{mapped:i.length?new Ap(s,r,i,c):null,pos:o}}}class qe{constructor(e,t,i,s){this.chunkPos=e,this.chunk=t,this.nextLayer=i,this.maxPoint=s}static create(e,t,i,s){return new qe(e,t,i,s)}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:i=!1,filterFrom:s=0,filterTo:r=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(i&&(t=t.slice().sort(Af)),this.isEmpty)return t.length?qe.of(t):this;let c=new Nx(this,null,-1).goto(0),u=0,f=[],p=new Bi;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||s>this.chunkEnd(c.chunkIndex)||r<this.chunkPos[c.chunkIndex])&&p.addChunk(this.chunkPos[c.chunkIndex],this.chunk[c.chunkIndex])?c.nextChunk():((!o||s>c.to||r<c.from||o(c.from,c.to,c.value))&&(p.addInner(c.from,c.to,c.value)||f.push(Ef.create(c.from,c.to,c.value))),c.next());return p.finishInner(this.nextLayer.isEmpty&&!f.length?qe.empty:this.nextLayer.update({add:f,filter:o,filterFrom:s,filterTo:r}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],i=[],s=-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)s=Math.max(s,u.maxPoint),t.push(u),i.push(e.mapPos(c));else if(f===!0){let{mapped:p,pos:g}=u.map(c,e);p&&(s=Math.max(s,p.maxPoint),t.push(p),i.push(g))}}let r=this.nextLayer.map(e);return t.length==0?r:new qe(i,t,r||qe.empty,s)}between(e,t,i){if(!this.isEmpty){for(let s=0;s<this.chunk.length;s++){let r=this.chunkPos[s],o=this.chunk[s];if(t>=r&&e<=r+o.length&&o.between(r,e-r,t-r,i)===!1)return}this.nextLayer.between(e,t,i)}}iter(e=0){return wo.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return wo.from(e).goto(t)}static compare(e,t,i,s,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=j0(o,c,i),f=new Gl(o,u,r),p=new Gl(c,u,r);i.iterGaps((g,O,x)=>T0(f,g,p,O,x,s)),i.empty&&i.length==0&&T0(f,0,p,0,0,s)}static eq(e,t,i=0,s){s==null&&(s=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=j0(r,o),u=new Gl(r,c,0).goto(i),f=new Gl(o,c,0).goto(i);for(;;){if(u.to!=f.to||!Mf(u.active,f.active)||u.point&&(!f.point||!u.point.eq(f.point)))return!1;if(u.to>s)return!0;u.next(),f.next()}}static spans(e,t,i,s,r=-1){let o=new Gl(e,null,r).goto(t),c=t,u=o.openStart;for(;;){let f=Math.min(o.to,i);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);s.point(c,f,o.point,p,g,o.pointRank),u=Math.min(o.openEnd(f),p.length)}else f>c&&(s.span(c,f,o.active,u),u=o.openEnd(f));if(o.to>i)return u+(o.point&&o.to>i?1:0);c=o.to,o.next()}}static of(e,t=!1){let i=new Bi;for(let s of e instanceof Ef?[e]:t?Z_(e):e)i.add(s.from,s.to,s.value);return i.finish()}static join(e){if(!e.length)return qe.empty;let t=e[e.length-1];for(let i=e.length-2;i>=0;i--)for(let s=e[i];s!=qe.empty;s=s.nextLayer)t=new qe(s.chunkPos,s.chunk,t,Math.max(s.maxPoint,t.maxPoint));return t}}qe.empty=new qe([],[],null,-1);function Z_(n){if(n.length>1)for(let e=n[0],t=1;t<n.length;t++){let i=n[t];if(Af(e,i)>0)return n.slice().sort(Af);e=i}return n}qe.empty.nextLayer=qe.empty;class Bi{finishChunk(e){this.chunks.push(new Ap(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,i){this.addInner(e,t,i)||(this.nextLayer||(this.nextLayer=new Bi)).add(e,t,i)}addInner(e,t,i){let s=e-this.lastTo||i.startSide-this.last.endSide;if(s<=0&&(e-this.lastFrom||i.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return s<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=i,this.lastFrom=e,this.lastTo=t,this.value.push(i),i.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 i=t.value.length-1;return this.last=t.value[i],this.lastFrom=t.from[i]+e,this.lastTo=t.to[i]+e,!0}finish(){return this.finishInner(qe.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=qe.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function j0(n,e,t){let i=new Map;for(let r of n)for(let o=0;o<r.chunk.length;o++)r.chunk[o].maxPoint<=0&&i.set(r.chunk[o],r.chunkPos[o]);let s=new Set;for(let r of e)for(let o=0;o<r.chunk.length;o++){let c=i.get(r.chunk[o]);c!=null&&(t?t.mapPos(c):c)==r.chunkPos[o]&&!t?.touchesRange(c,c+r.chunk[o].length)&&s.add(r.chunk[o])}return s}class Nx{constructor(e,t,i,s=0){this.layer=e,this.skip=t,this.minPoint=i,this.rank=s}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,i){for(;this.chunkIndex<this.layer.chunk.length;){let s=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(s)||this.layer.chunkEnd(this.chunkIndex)<e||s.maxPoint<this.minPoint))break;this.chunkIndex++,i=!1}if(this.chunkIndex<this.layer.chunk.length){let s=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],t,!0);(!i||this.rangeIndex<s)&&this.setRangeIndex(s)}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],i=e+t.from[this.rangeIndex];if(this.from=i,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 wo{constructor(e){this.heap=e}static from(e,t=null,i=-1){let s=[];for(let r=0;r<e.length;r++)for(let o=e[r];!o.isEmpty;o=o.nextLayer)o.maxPoint>=i&&s.push(new Nx(o,t,i,r));return s.length==1?s[0]:new wo(s)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let i of this.heap)i.goto(e,t);for(let i=this.heap.length>>1;i>=0;i--)Lh(this.heap,i);return this.next(),this}forward(e,t){for(let i of this.heap)i.forward(e,t);for(let i=this.heap.length>>1;i>=0;i--)Lh(this.heap,i);(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(),Lh(this.heap,0)}}}function Lh(n,e){for(let t=n[e];;){let i=(e<<1)+1;if(i>=n.length)break;let s=n[i];if(i+1<n.length&&s.compare(n[i+1])>=0&&(s=n[i+1],i++),t.compare(s)<0)break;n[i]=t,n[e]=s,e=i}}class Gl{constructor(e,t,i){this.minPoint=i,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=wo.from(e,t,i)}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){ac(this.active,e),ac(this.activeTo,e),ac(this.activeRank,e),this.minActive=N0(this.active,this.activeTo)}addActive(e){let t=0,{value:i,to:s,rank:r}=this.cursor;for(;t<this.activeRank.length&&(r-this.activeRank[t]||s-this.activeTo[t])>0;)t++;cc(this.active,t,i),cc(this.activeTo,t,s),cc(this.activeRank,t,r),e&&cc(e,t,this.cursor.from),this.minActive=N0(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let i=this.openStart<0?[]:null;for(;;){let s=this.minActive;if(s>-1&&(this.activeTo[s]-this.cursor.from||this.active[s].endSide-this.cursor.startSide)<0){if(this.activeTo[s]>e){this.to=this.activeTo[s],this.endSide=this.active[s].endSide;break}this.removeActive(s),i&&ac(i,s)}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(i),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(i){this.openStart=0;for(let s=i.length-1;s>=0&&i[s]<e;s--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let t=[];for(let i=this.active.length-1;i>=0&&!(this.activeRank[i]<this.pointRank);i--)(this.activeTo[i]>e||this.activeTo[i]==e&&this.active[i].endSide>=this.point.endSide)&&t.push(this.active[i]);return t.reverse()}openEnd(e){let t=0;for(let i=this.activeTo.length-1;i>=0&&this.activeTo[i]>e;i--)t++;return t}}function T0(n,e,t,i,s,r){n.goto(e),t.goto(i);let o=i+s,c=i,u=i-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))&&Mf(n.activeForPoint(n.to),t.activeForPoint(t.to))||r.comparePoint(c,O,n.point,t.point):O>c&&!Mf(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 Mf(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 ac(n,e){for(let t=e,i=n.length-1;t<i;t++)n[t]=n[t+1];n.pop()}function cc(n,e,t){for(let i=n.length-1;i>=e;i--)n[i+1]=n[i];n[e]=t}function N0(n,e){let t=-1,i=1e9;for(let s=0;s<e.length;s++)(e[s]-i||n[s].endSide-n[t].endSide)<0&&(t=s,i=e[s]);return t}function rl(n,e,t=n.length){let i=0;for(let s=0;s<t&&s<n.length;)n.charCodeAt(s)==9?(i+=e-i%e,s++):(i++,s=zt(n,s));return i}function Rf(n,e,t,i){for(let s=0,r=0;;){if(r>=e)return s;if(s==n.length)break;r+=n.charCodeAt(s)==9?t-r%t:1,s=zt(n,s)}return i===!0?-1:n.length}const Df="ͼ",E0=typeof Symbol>"u"?"__"+Df:Symbol.for(Df),Lf=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),A0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class Ss{constructor(e,t){this.rules=[];let{finish:i}=t||{};function s(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(w=>o.map(b=>w.replace(/&/,b))).reduce((w,b)=>w.concat(b)),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(s(x),k,p,O)}else k!=null&&p.push(x.replace(/_.*/,"").replace(/[A-Z]/g,w=>"-"+w.toLowerCase())+": "+k+";")}(p.length||O)&&u.push((i&&!g&&!f?o.map(i):o).join(", ")+" {"+p.join(" ")+"}")}for(let o in e)r(s(o),e[o],this.rules)}getRules(){return this.rules.join(`
49
- `)}static newName(){let e=A0[E0]||1;return A0[E0]=e+1,Df+e.toString(36)}static mount(e,t,i){let s=e[Lf],r=i&&i.nonce;s?r&&s.setNonce(r):s=new F_(e,r),s.mount(Array.isArray(t)?t:[t],e)}}let M0=new Map;class F_{constructor(e,t){let i=e.ownerDocument||e,s=i.defaultView;if(!e.head&&e.adoptedStyleSheets&&s.CSSStyleSheet){let r=M0.get(i);if(r)return e[Lf]=r;this.sheet=new s.CSSStyleSheet,M0.set(i,this)}else this.styleTag=i.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[Lf]=this}mount(e,t){let i=this.sheet,s=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),i)for(let f=0;f<c.rules.length;f++)i.insertRule(c.rules[f],s++)}else{for(;r<u;)s+=this.modules[r++].rules.length;s+=c.rules.length,r++}}if(i)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()+`
50
- `;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 ws={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:"'"},bo={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},X_=typeof navigator<"u"&&/Mac/.test(navigator.platform),z_=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Ft=0;Ft<10;Ft++)ws[48+Ft]=ws[96+Ft]=String(Ft);for(var Ft=1;Ft<=24;Ft++)ws[Ft+111]="F"+Ft;for(var Ft=65;Ft<=90;Ft++)ws[Ft]=String.fromCharCode(Ft+32),bo[Ft]=String.fromCharCode(Ft);for(var Ih in ws)bo.hasOwnProperty(Ih)||(bo[Ih]=ws[Ih]);function B_(n){var e=X_&&n.metaKey&&n.shiftKey&&!n.ctrlKey&&!n.altKey||z_&&n.shiftKey&&n.key&&n.key.length==1||n.key=="Unidentified",t=!e&&n.key||(n.shiftKey?bo:ws)[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 Je(){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 i in t)if(Object.prototype.hasOwnProperty.call(t,i)){var s=t[i];typeof s=="string"?n.setAttribute(i,s):s!=null&&(n[i]=s)}e++}for(;e<arguments.length;e++)Ex(n,arguments[e]);return n}function Ex(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++)Ex(n,e[t]);else throw new RangeError("Unsupported child node: "+e)}function _o(n){let e;return n.nodeType==11?e=n.getSelection?n:n.ownerDocument:e=n,e.getSelection()}function If(n,e){return e?n==e||n.contains(e.nodeType!=1?e.parentNode:e):!1}function Mc(n,e){if(!e.anchorNode)return!1;try{return If(n,e.anchorNode)}catch{return!1}}function Kr(n){return n.nodeType==3?er(n,0,n.nodeValue.length).getClientRects():n.nodeType==1?n.getClientRects():[]}function mo(n,e,t,i){return t?R0(n,e,t,i,-1)||R0(n,e,t,i,1):!1}function Js(n){for(var e=0;;e++)if(n=n.previousSibling,!n)return e}function Kc(n){return n.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(n.nodeName)}function R0(n,e,t,i,s){for(;;){if(n==t&&e==i)return!0;if(e==(s<0?0:wi(n))){if(n.nodeName=="DIV")return!1;let r=n.parentNode;if(!r||r.nodeType!=1)return!1;e=Js(n)+(s<0?0:1),n=r}else if(n.nodeType==1){if(n=n.childNodes[e+(s<0?-1:0)],n.nodeType==1&&n.contentEditable=="false")return!1;e=s<0?wi(n):0}else return!1}}function wi(n){return n.nodeType==3?n.nodeValue.length:n.childNodes.length}function Lo(n,e){let t=e?n.left:n.right;return{left:t,right:t,top:n.top,bottom:n.bottom}}function V_(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 Ax(n,e){let t=e.width/n.offsetWidth,i=e.height/n.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-n.offsetWidth)<1)&&(t=1),(i>.995&&i<1.005||!isFinite(i)||Math.abs(e.height-n.offsetHeight)<1)&&(i=1),{scaleX:t,scaleY:i}}function q_(n,e,t,i,s,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,w=1;if(x)O=V_(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 S=p.getBoundingClientRect();({scaleX:k,scaleY:w}=Ax(p,S)),O={left:S.left,right:S.left+p.clientWidth*k,top:S.top,bottom:S.top+p.clientHeight*w}}let b=0,C=0;if(s=="nearest")e.top<O.top?(C=e.top-(O.top+o),t>0&&e.bottom>O.bottom+C&&(C=e.bottom-O.bottom+o)):e.bottom>O.bottom&&(C=e.bottom-O.bottom+o,t<0&&e.top-C<O.top&&(C=e.top-(O.top+o)));else{let S=e.bottom-e.top,Q=O.bottom-O.top;C=(s=="center"&&S<=Q?e.top+S/2-Q/2:s=="start"||s=="center"&&t<0?e.top-o:e.bottom-Q+o)-O.top}if(i=="nearest"?e.left<O.left?(b=e.left-(O.left+r),t>0&&e.right>O.right+b&&(b=e.right-O.right+r)):e.right>O.right&&(b=e.right-O.right+r,t<0&&e.left<O.left+b&&(b=e.left-(O.left+r))):b=(i=="center"?e.left+(e.right-e.left)/2-(O.right-O.left)/2:i=="start"==c?e.left-r:e.right-(O.right-O.left)+r)-O.left,b||C)if(x)f.scrollBy(b,C);else{let S=0,Q=0;if(C){let P=p.scrollTop;p.scrollTop+=C/w,Q=(p.scrollTop-P)*w}if(b){let P=p.scrollLeft;p.scrollLeft+=b/k,S=(p.scrollLeft-P)*k}e={left:e.left-S,top:e.top-Q,right:e.right-S,bottom:e.bottom-Q},S&&Math.abs(S-b)<1&&(i="nearest"),Q&&Math.abs(Q-C)<1&&(s="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 Y_(n){let e=n.ownerDocument,t,i;for(let s=n.parentNode;s&&!(s==e.body||t&&i);)if(s.nodeType==1)!i&&s.scrollHeight>s.clientHeight&&(i=s),!t&&s.scrollWidth>s.clientWidth&&(t=s),s=s.assignedSlot||s.parentNode;else if(s.nodeType==11)s=s.host;else break;return{x:t,y:i}}class W_{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:i}=e;this.set(t,Math.min(e.anchorOffset,t?wi(t):0),i,Math.min(e.focusOffset,i?wi(i):0))}set(e,t,i,s){this.anchorNode=e,this.anchorOffset=t,this.focusNode=i,this.focusOffset=s}}let Mr=null;function Mx(n){if(n.setActive)return n.setActive();if(Mr)return n.focus(Mr);let e=[];for(let t=n;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(n.focus(Mr==null?{get preventScroll(){return Mr={preventScroll:!0},!0}}:void 0),!Mr){Mr=!1;for(let t=0;t<e.length;){let i=e[t++],s=e[t++],r=e[t++];i.scrollTop!=s&&(i.scrollTop=s),i.scrollLeft!=r&&(i.scrollLeft=r)}}}let D0;function er(n,e,t=e){let i=D0||(D0=document.createRange());return i.setEnd(n,t),i.setStart(n,e),i}function qr(n,e,t,i){let s={key:e,code:e,keyCode:t,which:t,cancelable:!0};i&&({altKey:s.altKey,ctrlKey:s.ctrlKey,shiftKey:s.shiftKey,metaKey:s.metaKey}=i);let r=new KeyboardEvent("keydown",s);r.synthetic=!0,n.dispatchEvent(r);let o=new KeyboardEvent("keyup",s);return o.synthetic=!0,n.dispatchEvent(o),r.defaultPrevented||o.defaultPrevented}function U_(n){for(;n;){if(n&&(n.nodeType==9||n.nodeType==11&&n.host))return n;n=n.assignedSlot||n.parentNode}return null}function Rx(n){for(;n.attributes.length;)n.removeAttributeNode(n.attributes[0])}function G_(n,e){let t=e.focusNode,i=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=i)return!1;for(i=Math.min(i,wi(t));;)if(i){if(t.nodeType!=1)return!1;let s=t.childNodes[i-1];s.contentEditable=="false"?i--:(t=s,i=wi(t))}else{if(t==n)return!0;i=Js(t),t=t.parentNode}}function Dx(n){return n.scrollTop>Math.max(1,n.scrollHeight-n.clientHeight-4)}function Lx(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i>0)return{node:t,offset:i};if(t.nodeType==1&&i>0){if(t.contentEditable=="false")return null;t=t.childNodes[i-1],i=wi(t)}else if(t.parentNode&&!Kc(t))i=Js(t),t=t.parentNode;else return null}}function Ix(n,e){for(let t=n,i=e;;){if(t.nodeType==3&&i<t.nodeValue.length)return{node:t,offset:i};if(t.nodeType==1&&i<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[i],i=0}else if(t.parentNode&&!Kc(t))i=Js(t)+1,t=t.parentNode;else return null}}class Ut{constructor(e,t,i=!0){this.node=e,this.offset=t,this.precise=i}static before(e,t){return new Ut(e.parentNode,Js(e),t)}static after(e,t){return new Ut(e.parentNode,Js(e)+1,t)}}const Mp=[];class tt{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 i of this.children){if(i==e)return t;t+=i.length+i.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}sync(e,t){if(this.flags&2){let i=this.dom,s=null,r;for(let o of this.children){if(o.flags&7){if(!o.dom&&(r=s?s.nextSibling:i.firstChild)){let c=tt.get(r);(!c||!c.parent&&c.canReuseDOM(o))&&o.reuseDOM(r)}o.sync(e,t),o.flags&=-8}if(r=s?s.nextSibling:i.firstChild,t&&!t.written&&t.node==i&&r!=o.dom&&(t.written=!0),o.dom.parentNode==i)for(;r&&r!=o.dom;)r=L0(r);else i.insertBefore(o.dom,r);s=o.dom}for(r=s?s.nextSibling:i.firstChild,r&&t&&t.node==i&&(t.written=!0);r;)r=L0(r)}else if(this.flags&1)for(let i of this.children)i.flags&7&&(i.sync(e,t),i.flags&=-8)}reuseDOM(e){}localPosFromDOM(e,t){let i;if(e==this.dom)i=this.dom.childNodes[t];else{let s=wi(e)==0?0:t==0?-1:1;for(;;){let r=e.parentNode;if(r==this.dom)break;s==0&&r.firstChild!=r.lastChild&&(e==r.firstChild?s=-1:s=1),e=r}s<0?i=e:i=e.nextSibling}if(i==this.dom.firstChild)return 0;for(;i&&!tt.get(i);)i=i.nextSibling;if(!i)return this.length;for(let s=0,r=0;;s++){let o=this.children[s];if(o.dom==i)return r;r+=o.length+o.breakAfter}}domBoundsAround(e,t,i=0){let s=-1,r=-1,o=-1,c=-1;for(let u=0,f=i,p=i;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&&s==-1&&(s=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?i+this.length:c,startDOM:(s?this.children[s-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,i=Mp){this.markDirty();for(let s=e;s<t;s++){let r=this.children[s];r.parent==this&&i.indexOf(r)<0&&r.destroy()}i.length<250?this.children.splice(e,t-e,...i):this.children=[].concat(this.children.slice(0,e),i,this.children.slice(t));for(let s=0;s<i.length;s++)i[s].setParent(this)}ignoreMutation(e){return!1}ignoreEvent(e){return!1}childCursor(e=this.length){return new Zx(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,i,s,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}}tt.prototype.breakAfter=0;function L0(n){let e=n.nextSibling;return n.parentNode.removeChild(n),e}class Zx{constructor(e,t,i){this.children=e,this.pos=t,this.i=i,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 i=this.children[--this.i];this.pos-=i.length+i.breakAfter}}}function Fx(n,e,t,i,s,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==i&&p&&!o&&!O&&r.length<2&&p.merge(t,s,r.length?g:null,t==0,c,u))){if(i<f.length){let x=f[i];x&&(s<x.length||x.breakAfter&&g?.breakAfter)?(e==i&&(x=x.split(s),s=0),!O&&g&&x.merge(0,s,g,!0,0,u)?r[r.length-1]=x:((s||x.children.length&&!x.children[0].length)&&x.merge(0,s,null,!1,0,u),r.push(x))):x?.breakAfter&&(g?g.breakAfter=1:o=1),i++}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<i&&r.length;)if(f[i-1].become(r[r.length-1]))i--,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&&i<f.length&&!f[e-1].breakAfter&&f[i].merge(0,0,f[e-1],!1,c,u)&&e--,(e<i||r.length)&&n.replaceChildren(e,i,r)}}function Xx(n,e,t,i,s,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 i)g+=O.length;n.length+=g,Fx(n,f,p,c,u,i,0,s,r)}let gn=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},Zf=typeof document<"u"?document:{documentElement:{style:{}}};const Ff=/Edge\/(\d+)/.exec(gn.userAgent),zx=/MSIE \d/.test(gn.userAgent),Xf=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(gn.userAgent),ju=!!(zx||Xf||Ff),I0=!ju&&/gecko\/(\d+)/i.test(gn.userAgent),Zh=!ju&&/Chrome\/(\d+)/.exec(gn.userAgent),H_="webkitFontSmoothing"in Zf.documentElement.style,Bx=!ju&&/Apple Computer/.test(gn.vendor),Z0=Bx&&(/Mobile\/\w+/.test(gn.userAgent)||gn.maxTouchPoints>2);var ke={mac:Z0||/Mac/.test(gn.platform),windows:/Win/.test(gn.platform),linux:/Linux|X11/.test(gn.platform),ie:ju,ie_version:zx?Zf.documentMode||6:Xf?+Xf[1]:Ff?+Ff[1]:0,gecko:I0,gecko_version:I0?+(/Firefox\/(\d+)/.exec(gn.userAgent)||[0,0])[1]:0,chrome:!!Zh,chrome_version:Zh?+Zh[1]:0,ios:Z0,android:/Android\b/.test(gn.userAgent),safari:Bx,webkit_version:H_?+(/\bAppleWebKit\/(\d+)/.exec(gn.userAgent)||[0,0])[1]:0,tabSize:Zf.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};const K_=256;class ei extends tt{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,i){return this.flags&8||i&&(!(i instanceof ei)||this.length-(t-e)+i.length>K_||i.flags&8)?!1:(this.text=this.text.slice(0,e)+(i?i.text:"")+this.text.slice(t),this.markDirty(),!0)}split(e){let t=new ei(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 Ut(this.dom,e)}domBoundsAround(e,t,i){return{from:i,to:i+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,t){return J_(this.dom,e,t)}}class Vi extends tt{constructor(e,t=[],i=0){super(),this.mark=e,this.children=t,this.length=i;for(let s of t)s.setParent(this)}setAttrs(e){if(Rx(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,i,s,r,o){return i&&(!(i instanceof Vi&&i.mark.eq(this.mark))||e&&r<=0||t<this.length&&o<=0)?!1:(Xx(this,e,t,i?i.children.slice():[],r-1,o-1),this.markDirty(),!0)}split(e){let t=[],i=0,s=-1,r=0;for(let c of this.children){let u=i+c.length;u>e&&t.push(i<e?c.split(e-i):c),s<0&&i>=e&&(s=r),i=u,r++}let o=this.length-e;return this.length=e,s>-1&&(this.children.length=s,this.markDirty()),new Vi(this.mark,t,o)}domAtPos(e){return Vx(this,e)}coordsAt(e,t){return Yx(this,e,t)}}function J_(n,e,t){let i=n.nodeValue.length;e>i&&(e=i);let s=e,r=e,o=0;e==0&&t<0||e==i&&t>=0?ke.chrome||ke.gecko||(e?(s--,o=1):r<i&&(r++,o=-1)):t<0?s--:r<i&&r++;let c=er(n,s,r).getClientRects();if(!c.length)return null;let u=c[(o?o<0:t>=0)?0:c.length-1];return ke.safari&&!o&&u.width==0&&(u=Array.prototype.find.call(c,f=>f.width)||u),o?Lo(u,o<0):u||null}class vs extends tt{static create(e,t,i){return new vs(e,t,i)}constructor(e,t,i){super(),this.widget=e,this.length=t,this.side=i,this.prevWidget=null}split(e){let t=vs.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,i,s,r,o){return i&&(!(i instanceof vs)||!this.widget.compare(i.widget)||e>0&&r<=0||t<this.length&&o<=0)?!1:(this.length=e+(i?i.length:0)+(this.length-t),!0)}become(e){return e instanceof vs&&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 Xe.empty;let e=this;for(;e.parent;)e=e.parent;let{view:t}=e,i=t&&t.state.doc,s=this.posAtStart;return i?i.slice(s,s+this.length):Xe.empty}domAtPos(e){return(this.length?e==0:this.side>0)?Ut.before(this.dom):Ut.after(this.dom,e==this.length)}domBoundsAround(){return null}coordsAt(e,t){let i=this.widget.coordsAt(this.dom,e,t);if(i)return i;let s=this.dom.getClientRects(),r=null;if(!s.length)return null;let o=this.side?this.side<0:e>0;for(let c=o?s.length-1:0;r=s[c],!(e>0?c==0:c==s.length-1||r.top<r.bottom);c+=o?-1:1);return Lo(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 Jr extends tt{constructor(e){super(),this.side=e}get length(){return 0}merge(){return!1}become(e){return e instanceof Jr&&e.side==this.side}split(){return new Jr(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?Ut.before(this.dom):Ut.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(e){return this.dom.getBoundingClientRect()}get overrideDOMText(){return Xe.empty}get isHidden(){return!0}}ei.prototype.children=vs.prototype.children=Jr.prototype.children=Mp;function Vx(n,e){let t=n.dom,{children:i}=n,s=0;for(let r=0;s<i.length;s++){let o=i[s],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=s;r>0;r--){let o=i[r-1];if(o.dom.parentNode==t)return o.domAtPos(o.length)}for(let r=s;r<i.length;r++){let o=i[r];if(o.dom.parentNode==t)return o.domAtPos(0)}return new Ut(t,0)}function qx(n,e,t){let i,{children:s}=n;t>0&&e instanceof Vi&&s.length&&(i=s[s.length-1])instanceof Vi&&i.mark.eq(e.mark)?qx(i,e.children[0],t-1):(s.push(e),e.setParent(n)),n.length+=e.length}function Yx(n,e,t){let i=null,s=-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||t$(r,x)))&&(k>p||O==k&&x.getSide()>0)?(r=x,o=p-O):(O<p||O==k&&x.getSide()<0&&!x.isHidden)&&(i=x,s=p-O)),O=k}}c(n,e);let u=(t<0?i:r)||i||r;return u?u.coordsAt(Math.max(0,u==i?s:o),t):e$(n)}function e$(n){let e=n.dom.lastChild;if(!e)return n.dom.getBoundingClientRect();let t=Kr(e);return t[t.length-1]||null}function t$(n,e){let t=n.coordsAt(0,1),i=e.coordsAt(0,1);return t&&i&&i.top<t.bottom}function zf(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 F0=Object.create(null);function Jc(n,e,t){if(n==e)return!0;n||(n=F0),e||(e=F0);let i=Object.keys(n),s=Object.keys(e);if(i.length-(t&&i.indexOf(t)>-1?1:0)!=s.length-(t&&s.indexOf(t)>-1?1:0))return!1;for(let r of i)if(r!=t&&(s.indexOf(r)==-1||n[r]!==e[r]))return!1;return!0}function Bf(n,e,t){let i=!1;if(e)for(let s in e)t&&s in t||(i=!0,s=="style"?n.style.cssText="":n.removeAttribute(s));if(t)for(let s in t)e&&e[s]==t[s]||(i=!0,s=="style"?n.style.cssText=t[s]:n.setAttribute(s,t[s]));return i}function n$(n){let e=Object.create(null);for(let t=0;t<n.attributes.length;t++){let i=n.attributes[t];e[i.name]=i.value}return e}class $i{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,i){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}}var nn=(function(n){return n[n.Text=0]="Text",n[n.WidgetBefore=1]="WidgetBefore",n[n.WidgetAfter=2]="WidgetAfter",n[n.WidgetRange=3]="WidgetRange",n})(nn||(nn={}));class je extends Ks{constructor(e,t,i,s){super(),this.startSide=e,this.endSide=t,this.widget=i,this.spec=s}get heightRelevant(){return!1}static mark(e){return new Io(e)}static widget(e){let t=Math.max(-1e4,Math.min(1e4,e.side||0)),i=!!e.block;return t+=i&&!e.inlineOrder?t>0?3e8:-4e8:t>0?1e8:-1e8,new bs(e,t,t,i,e.widget||null,!1)}static replace(e){let t=!!e.block,i,s;if(e.isBlockGap)i=-5e8,s=4e8;else{let{start:r,end:o}=Wx(e,t);i=(r?t?-3e8:-1:5e8)-1,s=(o?t?2e8:1:-6e8)+1}return new bs(e,i,s,t,e.widget||null,!0)}static line(e){return new Zo(e)}static set(e,t=!1){return qe.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}je.none=qe.empty;class Io extends je{constructor(e){let{start:t,end:i}=Wx(e);super(t?-1:5e8,i?1:-6e8,null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){var t,i;return this==e||e instanceof Io&&this.tagName==e.tagName&&(this.class||((t=this.attrs)===null||t===void 0?void 0:t.class))==(e.class||((i=e.attrs)===null||i===void 0?void 0:i.class))&&Jc(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)}}Io.prototype.point=!1;class Zo extends je{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof Zo&&this.spec.class==e.spec.class&&Jc(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)}}Zo.prototype.mapMode=Xt.TrackBefore;Zo.prototype.point=!0;class bs extends je{constructor(e,t,i,s,r,o){super(t,i,r,e),this.block=s,this.isReplace=o,this.mapMode=s?t<=0?Xt.TrackBefore:Xt.TrackAfter:Xt.TrackDel}get type(){return this.startSide!=this.endSide?nn.WidgetRange:this.startSide<=0?nn.WidgetBefore:nn.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof bs&&i$(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)}}bs.prototype.point=!0;function Wx(n,e=!1){let{inclusiveStart:t,inclusiveEnd:i}=n;return t==null&&(t=n.inclusive),i==null&&(i=n.inclusive),{start:t??e,end:i??e}}function i$(n,e){return n==e||!!(n&&e&&n.compare(e))}function Rc(n,e,t,i=0){let s=t.length-1;s>=0&&t[s]+i>=n?t[s]=Math.max(t[s],e):t.push(n,e)}class kt extends tt{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(e,t,i,s,r,o){if(i){if(!(i instanceof kt))return!1;this.dom||i.transferDOM(this)}return s&&this.setDeco(i?i.attrs:null),Xx(this,e,t,i?i.children.slice():[],r,o),!0}split(e){let t=new kt;if(t.breakAfter=this.breakAfter,this.length==0)return t;let{i,off:s}=this.childPos(e);s&&(t.append(this.children[i].split(s),0),this.children[i].merge(s,this.children[i].length,null,!1,0,0),i++);for(let r=i;r<this.children.length;r++)t.append(this.children[r],0);for(;i>0&&this.children[i-1].length==0;)this.children[--i].destroy();return this.children.length=i,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){Jc(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,t){qx(this,e,t)}addLineDeco(e){let t=e.spec.attributes,i=e.spec.class;t&&(this.attrs=zf(t,this.attrs||{})),i&&(this.attrs=zf({class:i},this.attrs||{}))}domAtPos(e){return Vx(this,e)}reuseDOM(e){e.nodeName=="DIV"&&(this.setDOM(e),this.flags|=6)}sync(e,t){var i;this.dom?this.flags&4&&(Rx(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&&(Bf(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e,t);let s=this.dom.lastChild;for(;s&&tt.get(s)instanceof Vi;)s=s.lastChild;if(!s||!this.length||s.nodeName!="BR"&&((i=tt.get(s))===null||i===void 0?void 0:i.isEditable)==!1&&(!ke.ios||!this.children.some(r=>r instanceof ei))){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 i of this.children){if(!(i instanceof ei)||/[^ -~]/.test(i.text))return null;let s=Kr(i.dom);if(s.length!=1)return null;e+=s[0].width,t=s[0].height}return e?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length,textHeight:t}:null}coordsAt(e,t){let i=Yx(this,e,t);if(!this.children.length&&i&&this.parent){let{heightOracle:s}=this.parent.view.viewState,r=i.bottom-i.top;if(Math.abs(r-s.lineHeight)<2&&s.textHeight<r){let o=(r-s.textHeight)/2;return{top:i.top+o,bottom:i.bottom-o,left:i.left,right:i.left}}}return i}become(e){return e instanceof kt&&this.children.length==0&&e.children.length==0&&Jc(this.attrs,e.attrs)&&this.breakAfter==e.breakAfter}covers(){return!0}static find(e,t){for(let i=0,s=0;i<e.children.length;i++){let r=e.children[i],o=s+r.length;if(o>=t){if(r instanceof kt)return r;if(o>t)break}s=o+r.breakAfter}return null}}class zi extends tt{constructor(e,t,i){super(),this.widget=e,this.length=t,this.deco=i,this.breakAfter=0,this.prevWidget=null}merge(e,t,i,s,r,o){return i&&(!(i instanceof zi)||!this.widget.compare(i.widget)||e>0&&r<=0||t<this.length&&o<=0)?!1:(this.length=e+(i?i.length:0)+(this.length-t),!0)}domAtPos(e){return e==0?Ut.before(this.dom):Ut.after(this.dom,e==this.length)}split(e){let t=this.length-e;this.length=e;let i=new zi(this.widget,t,this.deco);return i.breakAfter=this.breakAfter,i}get children(){return Mp}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):Xe.empty}domBoundsAround(){return null}become(e){return e instanceof zi&&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 i=this.widget.coordsAt(this.dom,e,t);return i||(this.widget instanceof Vf?null:Lo(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:i}=this.deco;return t==i?!1:e<0?t<0:i>0}}class Vf extends $i{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 go{constructor(e,t,i,s){this.doc=e,this.pos=t,this.end=i,this.disallowBlockEffectsFor=s,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 zi&&e.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new kt),this.atCursorPos=!0),this.curLine}flushBuffer(e=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(uc(new Jr(-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 zi)&&this.getLine()}buildText(e,t,i){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 s=Math.min(this.text.length-this.textOff,e,512);this.flushBuffer(t.slice(t.length-i)),this.getLine().append(uc(new ei(this.text.slice(this.textOff,this.textOff+s)),t),i),this.atCursorPos=!0,this.textOff+=s,e-=s,i=0}}span(e,t,i,s){this.buildText(t-e,i,s),this.pos=t,this.openStart<0&&(this.openStart=s)}point(e,t,i,s,r,o){if(this.disallowBlockEffectsFor[o]&&i instanceof bs){if(i.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(i instanceof bs)if(i.block)i.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new zi(i.widget||el.block,c,i));else{let u=vs.create(i.widget||el.inline,c,c?0:i.startSide),f=this.atCursorPos&&!u.isEditable&&r<=s.length&&(e<t||i.startSide>0),p=!u.isEditable&&(e<t||r>s.length||i.startSide<=0),g=this.getLine();this.pendingBuffer==2&&!f&&!u.isEditable&&(this.pendingBuffer=0),this.flushBuffer(s),f&&(g.append(uc(new Jr(1),s),r),r=s.length+Math.max(0,r-s.length)),g.append(uc(u,s),r),this.atCursorPos=p,this.pendingBuffer=p?e<t||r>s.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=s.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(i);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,i,s,r){let o=new go(e,t,i,r);return o.openEnd=qe.spans(s,t,i,o),o.openStart<0&&(o.openStart=o.openEnd),o.finish(o.openEnd),o}}function uc(n,e){for(let t of e)n=new Vi(t,[n],n.length);return n}class el extends $i{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}}el.inline=new el("span");el.block=new el("div");var lt=(function(n){return n[n.LTR=0]="LTR",n[n.RTL=1]="RTL",n})(lt||(lt={}));const tr=lt.LTR,Rp=lt.RTL;function Ux(n){let e=[];for(let t=0;t<n.length;t++)e.push(1<<+n[t]);return e}const s$=Ux("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),r$=Ux("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),qf=Object.create(null),ci=[];for(let n of["()","[]","{}"]){let e=n.charCodeAt(0),t=n.charCodeAt(1);qf[e]=t,qf[t]=-e}function Gx(n){return n<=247?s$[n]:1424<=n&&n<=1524?2:1536<=n&&n<=1785?r$[n-1536]:1774<=n&&n<=2220?4:8192<=n&&n<=8204?256:64336<=n&&n<=65023?4:1}const l$=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class ys{get dir(){return this.level%2?Rp:tr}constructor(e,t,i){this.from=e,this.to=t,this.level=i}side(e,t){return this.dir==t==e?this.to:this.from}forward(e,t){return e==(this.dir==t)}static find(e,t,i,s){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==i)return o;(r<0||(s!=0?s<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 Hx(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++){let i=n[t],s=e[t];if(i.from!=s.from||i.to!=s.to||i.direction!=s.direction||!Hx(i.inner,s.inner))return!1}return!0}const et=[];function o$(n,e,t,i,s){for(let r=0;r<=i.length;r++){let o=r?i[r-1].to:e,c=r<i.length?i[r].from:t,u=r?256:s;for(let f=o,p=u,g=u;f<c;f++){let O=Gx(n.charCodeAt(f));O==512?O=p:O==8&&g==4&&(O=16),et[f]=O==4?2:O,O&7&&(g=O),p=O}for(let f=o,p=u,g=u;f<c;f++){let O=et[f];if(O==128)f<c-1&&p==et[f+1]&&p&24?O=et[f]=p:et[f]=256;else if(O==64){let x=f+1;for(;x<c&&et[x]==64;)x++;let k=f&&p==8||x<t&&et[x]==8?g==1?1:8:256;for(let w=f;w<x;w++)et[w]=k;f=x-1}else O==8&&g==1&&(et[f]=1);p=O,O&7&&(g=O)}}}function a$(n,e,t,i,s){let r=s==1?2:1;for(let o=0,c=0,u=0;o<=i.length;o++){let f=o?i[o-1].to:e,p=o<i.length?i[o].from:t;for(let g=f,O,x,k;g<p;g++)if(x=qf[O=n.charCodeAt(g)])if(x<0){for(let w=c-3;w>=0;w-=3)if(ci[w+1]==-x){let b=ci[w+2],C=b&2?s:b&4?b&1?r:s:0;C&&(et[g]=et[ci[w]]=C),c=w;break}}else{if(ci.length==189)break;ci[c++]=g,ci[c++]=O,ci[c++]=u}else if((k=et[g])==2||k==1){let w=k==s;u=w?0:1;for(let b=c-3;b>=0;b-=3){let C=ci[b+2];if(C&2)break;if(w)ci[b+2]|=2;else{if(C&4)break;ci[b+2]|=4}}}}}function c$(n,e,t,i){for(let s=0,r=i;s<=t.length;s++){let o=s?t[s-1].to:n,c=s<t.length?t[s].from:e;for(let u=o;u<c;){let f=et[u];if(f==256){let p=u+1;for(;;)if(p==c){if(s==t.length)break;p=t[s++].to,c=s<t.length?t[s].from:e}else if(et[p]==256)p++;else break;let g=r==1,O=(p<e?et[p]:i)==1,x=g==O?g?1:2:i;for(let k=p,w=s,b=w?t[w-1].to:n;k>u;)k==b&&(k=t[--w].from,b=w?t[w-1].to:n),et[--k]=x;u=p}else r=f,u++}}}function Yf(n,e,t,i,s,r,o){let c=i%2?2:1;if(i%2==s%2)for(let u=e,f=0;u<t;){let p=!0,g=!1;if(f==r.length||u<r[f].from){let w=et[u];w!=c&&(p=!1,g=w==16)}let O=!p&&c==1?[]:null,x=p?i:i+1,k=u;e:for(;;)if(f<r.length&&k==r[f].from){if(g)break e;let w=r[f];if(!p)for(let b=w.to,C=f+1;;){if(b==t)break e;if(C<r.length&&r[C].from==b)b=r[C++].to;else{if(et[b]==c)break e;break}}if(f++,O)O.push(w);else{w.from>u&&o.push(new ys(u,w.from,x));let b=w.direction==tr!=!(x%2);Wf(n,b?i+1:i,s,w.inner,w.from,w.to,o),u=w.to}k=w.to}else{if(k==t||(p?et[k]!=c:et[k]==c))break;k++}O?Yf(n,u,k,i+1,s,O,o):u<k&&o.push(new ys(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 w=et[u-1];w!=c&&(p=!1,g=w==16)}let O=!p&&c==1?[]:null,x=p?i:i+1,k=u;e:for(;;)if(f&&k==r[f-1].to){if(g)break e;let w=r[--f];if(!p)for(let b=w.from,C=f;;){if(b==e)break e;if(C&&r[C-1].to==b)b=r[--C].from;else{if(et[b-1]==c)break e;break}}if(O)O.push(w);else{w.to<u&&o.push(new ys(w.to,u,x));let b=w.direction==tr!=!(x%2);Wf(n,b?i+1:i,s,w.inner,w.from,w.to,o),u=w.from}k=w.from}else{if(k==e||(p?et[k-1]!=c:et[k-1]==c))break;k--}O?Yf(n,k,u,i+1,s,O,o):k<u&&o.push(new ys(k,u,x)),u=k}}function Wf(n,e,t,i,s,r,o){let c=e%2?2:1;o$(n,s,r,i,c),a$(n,s,r,i,c),c$(s,r,i,c),Yf(n,s,r,e,t,i,o)}function u$(n,e,t){if(!n)return[new ys(0,0,e==Rp?1:0)];if(e==tr&&!t.length&&!l$.test(n))return Kx(n.length);if(t.length)for(;n.length>et.length;)et[et.length]=256;let i=[],s=e==tr?0:1;return Wf(n,s,s,t,0,n.length,i),i}function Kx(n){return[new ys(0,n,0)]}let Jx="";function d$(n,e,t,i,s){var r;let o=i.head-n.from,c=ys.find(e,o,(r=i.bidiLevel)!==null&&r!==void 0?r:-1,i.assoc),u=e[c],f=u.side(s,t);if(o==f){let O=c+=s?1:-1;if(O<0||O>=e.length)return null;u=e[c=O],o=u.side(!s,t),f=u.side(s,t)}let p=zt(n.text,o,u.forward(s,t));(p<u.from||p>u.to)&&(p=f),Jx=n.text.slice(Math.min(o,p),Math.max(o,p));let g=c==(s?e.length-1:0)?null:e[c+(s?1:-1)];return g&&p==f&&g.level+(s?0:1)<u.level?ne.cursor(g.side(!s,t)+n.from,g.forward(s,t)?1:-1,g.level):ne.cursor(p+n.from,u.forward(s,t)?-1:1,u.level)}function h$(n,e,t){for(let i=e;i<t;i++){let s=Gx(n.charCodeAt(i));if(s==1)return tr;if(s==2||s==4)return Rp}return tr}const ek=Se.define(),tk=Se.define(),nk=Se.define(),ik=Se.define(),Uf=Se.define(),sk=Se.define(),rk=Se.define(),Dp=Se.define(),Lp=Se.define(),lk=Se.define({combine:n=>n.some(e=>e)}),ok=Se.define({combine:n=>n.some(e=>e)}),ak=Se.define();class Yr{constructor(e,t="nearest",i="nearest",s=5,r=5,o=!1){this.range=e,this.y=t,this.x=i,this.yMargin=s,this.xMargin=r,this.isSnapshot=o}map(e){return e.empty?this:new Yr(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 Yr(ne.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const dc=Me.define({map:(n,e)=>n.map(e)}),ck=Me.define();function vn(n,e,t){let i=n.facet(ik);i.length?i[0](e):window.onerror&&window.onerror(String(e),t,void 0,void 0,e)||(t?console.error(t+":",e):console.error(e))}const Zi=Se.define({combine:n=>n.length?n[0]:!0});let f$=0;const Fr=Se.define({combine(n){return n.filter((e,t)=>{for(let i=0;i<t;i++)if(n[i].plugin==e.plugin)return!1;return!0})}});class vt{constructor(e,t,i,s,r){this.id=e,this.create=t,this.domEventHandlers=i,this.domEventObservers=s,this.baseExtensions=r(this),this.extension=this.baseExtensions.concat(Fr.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(Fr.of({plugin:this,arg:e}))}static define(e,t){const{eventHandlers:i,eventObservers:s,provide:r,decorations:o}=t||{};return new vt(f$++,e,i,s,c=>{let u=[];return o&&u.push($o.of(f=>{let p=f.plugin(c);return p?o(p):je.none})),r&&u.push(r(c)),u})}static fromClass(e,t){return vt.define((i,s)=>new e(i,s),t)}}class Fh{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(i){if(vn(t.state,i,"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){vn(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(i){vn(e.state,i,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const uk=Se.define(),Ip=Se.define(),$o=Se.define(),dk=Se.define(),Tu=Se.define(),hk=Se.define();function X0(n,e){let t=n.state.facet(hk);if(!t.length)return t;let i=t.map(r=>r instanceof Function?r(n):r),s=[];return qe.spans(i,e.from,e.to,{point(){},span(r,o,c,u){let f=r-e.from,p=o-e.from,g=s;for(let O=c.length-1;O>=0;O--,u--){let x=c[O].spec.bidiIsolate,k;if(x==null&&(x=h$(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 w={from:f,to:p,direction:x,inner:[]};g.push(w),g=w.inner}}}}),s}const fk=Se.define();function Zp(n){let e=0,t=0,i=0,s=0;for(let r of n.state.facet(fk)){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&&(i=Math.max(i,o.top)),o.bottom!=null&&(s=Math.max(s,o.bottom)))}return{left:e,right:t,top:i,bottom:s}}const oo=Se.define();class Zn{constructor(e,t,i,s){this.fromA=e,this.toA=t,this.fromB=i,this.toB=s}join(e){return new Zn(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,i=this;for(;t>0;t--){let s=e[t-1];if(!(s.fromA>i.toA)){if(s.toA<i.fromA)break;i=i.join(s),e.splice(t-1,1)}}return e.splice(t,0,i),e}static extendWithRanges(e,t){if(t.length==0)return e;let i=[];for(let s=0,r=0,o=0,c=0;;s++){let u=s==e.length?null:e[s],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 Zn(x+f,k+f,x,k).addToSet(i),O>p)break;r+=2}if(!u)return i;new Zn(u.fromA,u.toA,u.fromB,u.toB).addToSet(i),o=u.toA,c=u.toB}}}class eu{constructor(e,t,i){this.view=e,this.state=t,this.transactions=i,this.flags=0,this.startState=e.state,this.changes=Pt.empty(this.startState.doc.length);for(let r of i)this.changes=this.changes.compose(r.changes);let s=[];this.changes.iterChangedRanges((r,o,c,u)=>s.push(new Zn(r,o,c,u))),this.changedRanges=s}static create(e,t,i){return new eu(e,t,i)}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 z0 extends tt{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=je.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.setDOM(e.contentDOM),this.children=[new kt],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new Zn(0,0,0,e.state.doc.length)],0,null)}update(e){var t;let i=e.changedRanges;this.minWidth>0&&i.length&&(i.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 s=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?s=this.domChanged.newSel.head:!x$(e.changes,this.hasComposition)&&!e.selectionSet&&(s=e.state.selection.main.head));let r=s>-1?m$(this.view,e.changes,s):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:f,to:p}=this.hasComposition;i=new Zn(f,p,e.changes.mapPos(f,-1),e.changes.mapPos(p,1)).addToSet(i.slice())}this.hasComposition=r?{from:r.range.fromB,to:r.range.toB}:null,(ke.ie||ke.chrome)&&!r&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,c=this.updateDeco(),u=v$(o,c,e.changes);return i=Zn.extendWithRanges(i,u),!(this.flags&7)&&i.length==0?!1:(this.updateInner(i,e.startState.doc.length,r),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t,i){this.view.viewState.mustMeasureContent=!0,this.updateChildren(e,t,i);let{observer:s}=this.view;s.ignore(()=>{this.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let o=ke.chrome||ke.ios?{node:s.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,o),this.flags&=-8,o&&(o.written||s.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 zi&&o.widget instanceof Vf&&r.push(o.dom);s.updateGaps(r)}updateChildren(e,t,i){let s=i?i.range.addToSet(e.slice()):e,r=this.childCursor(t);for(let o=s.length-1;;o--){let c=o>=0?s[o]:null;if(!c)break;let{fromA:u,toA:f,fromB:p,toB:g}=c,O,x,k,w;if(i&&i.range.fromB<g&&i.range.toB>p){let P=go.build(this.view.state.doc,p,i.range.fromB,this.decorations,this.dynamicDecorationMap),_=go.build(this.view.state.doc,i.range.toB,g,this.decorations,this.dynamicDecorationMap);x=P.breakAtStart,k=P.openStart,w=_.openEnd;let T=this.compositionView(i);_.breakAtStart?T.breakAfter=1:_.content.length&&T.merge(T.length,T.length,_.content[0],!1,_.openStart,0)&&(T.breakAfter=_.content[0].breakAfter,_.content.shift()),P.content.length&&T.merge(0,0,P.content[P.content.length-1],!0,0,P.openEnd)&&P.content.pop(),O=P.content.concat(T).concat(_.content)}else({content:O,breakAtStart:x,openStart:k,openEnd:w}=go.build(this.view.state.doc,p,g,this.decorations,this.dynamicDecorationMap));let{i:b,off:C}=r.findPos(f,1),{i:S,off:Q}=r.findPos(u,-1);Fx(this,S,Q,b,C,O,x,k,w)}i&&this.fixCompositionDOM(i)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let t of e.transactions)for(let i of t.effects)i.is(ck)&&(this.editContextFormatting=i.value)}compositionView(e){let t=new ei(e.text.nodeValue);t.flags|=8;for(let{deco:s}of e.marks)t=new Vi(s,[t],t.length);let i=new kt;return i.append(t,0),i}fixCompositionDOM(e){let t=(r,o)=>{o.flags|=8|(o.children.some(u=>u.flags&7)?1:0),this.markedForComposition.add(o);let c=tt.get(r);c&&c!=o&&(c.dom=null),o.setDOM(r)},i=this.childPos(e.range.fromB,1),s=this.children[i.i];t(e.line,s);for(let r=e.marks.length-1;r>=-1;r--)i=s.childPos(i.off,1),s=s.children[i.i],t(r>=0?e.marks[r].node:e.text,s)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let i=this.view.root.activeElement,s=i==this.dom,r=!s&&!(this.view.state.facet(Zi)||this.dom.tabIndex>-1)&&Mc(this.dom,this.view.observer.selectionRange)&&!(i&&this.dom.contains(i));if(!(s||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(ke.gecko&&c.empty&&!this.hasComposition&&p$(u)){let g=document.createTextNode("");this.view.observer.ignore(()=>u.node.insertBefore(g,u.node.childNodes[u.offset]||null)),u=f=new Ut(g,0),o=!0}let p=this.view.observer.selectionRange;(o||!p.focusNode||(!mo(u.node,u.offset,p.anchorNode,p.anchorOffset)||!mo(f.node,f.offset,p.focusNode,p.focusOffset))&&!this.suppressWidgetCursorChange(p,c))&&(this.view.observer.ignore(()=>{ke.android&&ke.chrome&&this.dom.contains(p.focusNode)&&y$(p.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let g=_o(this.view.root);if(g)if(c.empty){if(ke.gecko){let O=g$(u.node,u.offset);if(O&&O!=3){let x=(O==1?Lx:Ix)(u.node,u.offset);x&&(u=new Ut(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(),i&&i.focus())}),this.view.observer.setSelectionRange(u,f)),this.impreciseAnchor=u.precise?null:new Ut(p.anchorNode,p.anchorOffset),this.impreciseHead=f.precise?null:new Ut(p.focusNode,p.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&mo(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,i=_o(e.root),{anchorNode:s,anchorOffset:r}=e.observer.selectionRange;if(!i||!t.empty||!t.assoc||!i.modify)return;let o=kt.find(this,t.head);if(!o)return;let c=o.posAtStart;if(t.head==c||t.head==c+o.length)return;let u=this.coordsAt(t.head,-1),f=this.coordsAt(t.head,1);if(!u||!f||u.bottom>f.top)return;let p=this.domAtPos(t.head+t.assoc);i.collapse(p.node,p.offset),i.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&&i.collapse(s,r)}moveToLine(e){let t=this.dom,i;if(e.node!=t)return e;for(let s=e.offset;!i&&s<t.childNodes.length;s++){let r=tt.get(t.childNodes[s]);r instanceof kt&&(i=r.domAtPos(0))}for(let s=e.offset-1;!i&&s>=0;s--){let r=tt.get(t.childNodes[s]);r instanceof kt&&(i=r.domAtPos(r.length))}return i?new Ut(i.node,i.offset,!0):e}nearest(e){for(let t=e;t;){let i=tt.get(t);if(i&&i.rootView==this)return i;t=t.parentNode}return null}posFromDOM(e,t){let i=this.nearest(e);if(!i)throw new RangeError("Trying to find position for a DOM position outside of the document");return i.localPosFromDOM(e,t)+i.posAtStart}domAtPos(e){let{i:t,off:i}=this.childCursor().findPos(e,-1);for(;t<this.children.length-1;){let s=this.children[t];if(i<s.length||s instanceof kt)break;t++,i=0}return this.children[t].domAtPos(i)}coordsAt(e,t){let i=null,s=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))&&(!i||c instanceof kt&&!(i instanceof kt&&t>=0)))i=c,s=f;else if(i&&f==e&&u==e&&c instanceof zi&&Math.abs(t)<2){if(c.deco.startSide<0)break;o&&(i=null)}r=f}return i?i.coordsAt(e-s,t):null}coordsForChar(e){let{i:t,off:i}=this.childPos(e,1),s=this.children[t];if(!(s instanceof kt))return null;for(;s.children.length;){let{i:c,off:u}=s.childPos(i,1);for(;;c++){if(c==s.children.length)return null;if((s=s.children[c]).length)break}i=u}if(!(s instanceof ei))return null;let r=zt(s.text,i);if(r==i)return null;let o=er(s.dom,i,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:i,to:s}=e,r=this.view.contentDOM.clientWidth,o=r>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,c=-1,u=this.view.textDirection==lt.LTR;for(let f=0,p=0;p<this.children.length;p++){let g=this.children[p],O=f+g.length;if(O>s)break;if(f>=i){let x=g.dom.getBoundingClientRect();if(t.push(x.height),o){let k=g.dom.lastChild,w=k?Kr(k):[];if(w.length){let b=w[w.length-1],C=u?b.right-x.left:x.right-b.left;C>c&&(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"?lt.RTL:lt.LTR}measureTextSize(){for(let r of this.children)if(r instanceof kt){let o=r.measureTextSize();if(o)return o}let e=document.createElement("div"),t,i,s;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=Kr(e.firstChild)[0];t=e.getBoundingClientRect().height,i=r?r.width/27:7,s=r?r.height:t,e.remove()}),{lineHeight:t,charWidth:i,textHeight:s}}childCursor(e=this.length){let t=this.children.length;return t&&(e-=this.children[--t].length),new Zx(this.children,e,t)}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let i=0,s=0;;s++){let r=s==t.viewports.length?null:t.viewports[s],o=r?r.from-1:this.length;if(o>i){let c=(t.lineBlockAt(o).bottom-t.lineBlockAt(i).top)/this.view.scaleY;e.push(je.replace({widget:new Vf(c),block:!0,inclusive:!0,isBlockGap:!0}).range(i,o))}if(!r)break;i=r.to+1}return je.set(e)}updateDeco(){let e=1,t=this.view.state.facet($o).map(r=>(this.dynamicDecorationMap[e++]=typeof r=="function")?r(this.view):r),i=!1,s=this.view.state.facet(dk).map((r,o)=>{let c=typeof r=="function";return c&&(i=!0),c?r(this.view):r});for(s.length&&(this.dynamicDecorationMap[e++]=i,t.push(qe.join(s))),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(ak))try{if(f(this.view,e.range,e))return!0}catch(p){vn(this.view.state,p,"scroll handler")}let{range:t}=e,i=this.coordsAt(t.head,t.empty?t.assoc:t.head>t.anchor?-1:1),s;if(!i)return;!t.empty&&(s=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(i={left:Math.min(i.left,s.left),top:Math.min(i.top,s.top),right:Math.max(i.right,s.right),bottom:Math.max(i.bottom,s.bottom)});let r=Zp(this.view),o={left:i.left-r.left,top:i.top-r.top,right:i.right+r.right,bottom:i.bottom+r.bottom},{offsetWidth:c,offsetHeight:u}=this.view.scrollDOM;q_(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==lt.LTR)}}function p$(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 i=Lx(t.focusNode,t.focusOffset),s=Ix(t.focusNode,t.focusOffset),r=i||s;if(s&&i&&s.node!=i.node){let c=tt.get(s.node);if(!c||c instanceof ei&&c.text!=s.node.nodeValue)r=s;else if(n.docView.lastCompositionAfterCursor){let u=tt.get(i.node);!u||u instanceof ei&&u.text!=i.node.nodeValue||(r=s)}}if(n.docView.lastCompositionAfterCursor=r!=i,!r)return null;let o=e-r.offset;return{from:o,to:o+r.node.nodeValue.length,node:r.node}}function m$(n,e,t){let i=pk(n,t);if(!i)return null;let{node:s,from:r,to:o}=i,c=s.nodeValue;if(/[\n\r]/.test(c)||n.state.doc.sliceString(i.from,i.to)!=c)return null;let u=e.invertedDesc,f=new Zn(u.mapPos(r),u.mapPos(o),r,o),p=[];for(let g=s.parentNode;;g=g.parentNode){let O=tt.get(g);if(O instanceof Vi)p.push({node:g,deco:O.mark});else{if(O instanceof kt||g.nodeName=="DIV"&&g.parentNode==n.contentDOM)return{range:f,text:s,marks:p,line:g};if(g!=n.contentDOM)p.push({node:g,deco:new Io({inclusive:!0,attributes:n$(g),tagName:g.tagName.toLowerCase()})});else return null}}}function g$(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 O$=class{constructor(){this.changes=[]}compareRange(e,t){Rc(e,t,this.changes)}comparePoint(e,t){Rc(e,t,this.changes)}boundChange(e){Rc(e,e,this.changes)}};function v$(n,e,t){let i=new O$;return qe.compare(n,e,t,i),i.changes}function y$(n,e){for(let t=n;t&&t!=e;t=t.assignedSlot||t.parentNode)if(t.nodeType==1&&t.contentEditable=="false")return!0;return!1}function x$(n,e){let t=!1;return e&&n.iterChangedRanges((i,s)=>{i<e.to&&s>e.from&&(t=!0)}),t}function k$(n,e,t=1){let i=n.charCategorizer(e),s=n.doc.lineAt(e),r=e-s.from;if(s.length==0)return ne.cursor(e);r==0?t=1:r==s.length&&(t=-1);let o=r,c=r;t<0?o=zt(s.text,r,!1):c=zt(s.text,r);let u=i(s.text.slice(o,c));for(;o>0;){let f=zt(s.text,o,!1);if(i(s.text.slice(f,o))!=u)break;o=f}for(;c<s.length;){let f=zt(s.text,c);if(i(s.text.slice(c,f))!=u)break;c=f}return ne.range(o+s.from,c+s.from)}function S$(n,e){return e.left>n?e.left-n:Math.max(0,n-e.right)}function w$(n,e){return e.top>n?e.top-n:Math.max(0,n-e.bottom)}function Xh(n,e){return n.top<e.bottom-1&&n.bottom>e.top+1}function B0(n,e){return e<n.top?{top:e,left:n.left,right:n.right,bottom:n.bottom}:n}function V0(n,e){return e>n.bottom?{top:n.top,left:n.left,right:n.right,bottom:e}:n}function Gf(n,e,t){let i,s,r,o,c=!1,u,f,p,g;for(let k=n.firstChild;k;k=k.nextSibling){let w=Kr(k);for(let b=0;b<w.length;b++){let C=w[b];s&&Xh(s,C)&&(C=B0(V0(C,s.bottom),s.top));let S=S$(e,C),Q=w$(t,C);if(S==0&&Q==0)return k.nodeType==3?q0(k,e,t):Gf(k,e,t);(!i||o>Q||o==Q&&r>S)&&(i=k,s=C,r=S,o=Q,c=S?e<C.left?b>0:b<w.length-1:!0),S==0?t>C.bottom&&(!p||p.bottom<C.bottom)?(u=k,p=C):t<C.top&&(!g||g.top>C.top)&&(f=k,g=C):p&&Xh(p,C)?p=V0(p,C.bottom):g&&Xh(g,C)&&(g=B0(g,C.top))}}if(p&&p.bottom>=t?(i=u,s=p):g&&g.top<=t&&(i=f,s=g),!i)return{node:n,offset:0};let O=Math.max(s.left,Math.min(s.right,e));if(i.nodeType==3)return q0(i,O,t);if(c&&i.contentEditable!="false")return Gf(i,O,t);let x=Array.prototype.indexOf.call(n.childNodes,i)+(e>=(s.left+s.right)/2?1:0);return{node:n,offset:x}}function q0(n,e,t){let i=n.nodeValue.length,s=-1,r=1e9,o=0;for(let c=0;c<i;c++){let u=er(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((ke.chrome||ke.gecko)&&er(n,c).getBoundingClientRect().left==p.right&&(x=!O),g<=0)return{node:n,offset:c+(x?1:0)};s=c+(x?1:0),r=g}}}return{node:n,offset:s>-1?s:o>0?n.nodeValue.length:0}}function mk(n,e,t,i=-1){var s,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 P=n.viewState.heightOracle.textHeight/2,_=!1;u=n.elementAtHeight(O),u.type!=nn.Text;)for(;O=i>0?u.bottom+P:u.top-P,!(O>=0&&O<=f);){if(_)return t?null:0;_=!0,i=-i}g=c+O;let x=u.from;if(x<n.viewport.from)return n.viewport.from==0?0:t?null:Y0(n,o,u,p,g);if(x>n.viewport.to)return n.viewport.to==n.state.doc.length?n.state.doc.length:t?null:Y0(n,o,u,p,g);let k=n.dom.ownerDocument,w=n.root.elementFromPoint?n.root:k,b=w.elementFromPoint(p,g);b&&!n.contentDOM.contains(b)&&(b=null),b||(p=Math.max(o.left+1,Math.min(o.right-1,p)),b=w.elementFromPoint(p,g),b&&!n.contentDOM.contains(b)&&(b=null));let C,S=-1;if(b&&((s=n.docView.nearest(b))===null||s===void 0?void 0:s.isEditable)!=!1){if(k.caretPositionFromPoint){let P=k.caretPositionFromPoint(p,g);P&&({offsetNode:C,offset:S}=P)}else if(k.caretRangeFromPoint){let P=k.caretRangeFromPoint(p,g);P&&({startContainer:C,startOffset:S}=P,(!n.contentDOM.contains(C)||ke.safari&&b$(C,S,p)||ke.chrome&&_$(C,S,p))&&(C=void 0))}C&&(S=Math.min(wi(C),S))}if(!C||!n.docView.dom.contains(C)){let P=kt.find(n.docView,x);if(!P)return O>u.top+u.height/2?u.to:u.from;({node:C,offset:S}=Gf(P.dom,p,g))}let Q=n.docView.nearest(C);if(!Q)return null;if(Q.isWidget&&((r=Q.dom)===null||r===void 0?void 0:r.nodeType)==1){let P=Q.dom.getBoundingClientRect();return e.y<P.top||e.y<=P.bottom&&e.x<=(P.left+P.right)/2?Q.posAtStart:Q.posAtEnd}else return Q.localPosFromDOM(C,S)+Q.posAtStart}function Y0(n,e,t,i,s){let r=Math.round((i-e.left)*n.defaultCharacterWidth);if(n.lineWrapping&&t.height>n.defaultLineHeight*1.5){let c=n.viewState.heightOracle.textHeight,u=Math.floor((s-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+Rf(o,r,n.state.tabSize)}function b$(n,e,t){let i,s=n;if(n.nodeType!=3||e!=(i=n.nodeValue.length))return!1;for(;;){let r=s.nextSibling;if(r){if(r.nodeName=="BR")break;return!1}else{let o=s.parentNode;if(!o||o.nodeName=="DIV")break;s=o}}return er(n,i-1,i).getBoundingClientRect().right>t}function _$(n,e,t){if(e!=0)return!1;for(let s=n;;){let r=s.parentNode;if(!r||r.nodeType!=1||r.firstChild!=s)return!1;if(r.classList.contains("cm-line"))break;s=r}let i=n.nodeType==1?n.getBoundingClientRect():er(n,0,Math.max(n.nodeValue.length,1)).getBoundingClientRect();return t-i.left>5}function Hf(n,e,t){let i=n.lineBlockAt(e);if(Array.isArray(i.type)){let s;for(let r of i.type){if(r.from>e)break;if(!(r.to<e)){if(r.from<e&&r.to>e)return r;(!s||r.type==nn.Text&&(s.type!=r.type||(t<0?r.from<e:r.to>e)))&&(s=r)}}return s||i}return i}function $$(n,e,t,i){let s=Hf(n,e.head,e.assoc||-1),r=!i||s.type!=nn.Text||!(n.lineWrapping||s.widgetLineBreaks)?null:n.coordsAtPos(e.assoc<0&&e.head>s.from?e.head-1:e.head);if(r){let o=n.dom.getBoundingClientRect(),c=n.textDirectionAt(s.from),u=n.posAtCoords({x:t==(c==lt.LTR)?o.right-1:o.left+1,y:(r.top+r.bottom)/2});if(u!=null)return ne.cursor(u,t?-1:1)}return ne.cursor(t?s.to:s.from,t?-1:1)}function W0(n,e,t,i){let s=n.state.doc.lineAt(e.head),r=n.bidiSpans(s),o=n.textDirectionAt(s.from);for(let c=e,u=null;;){let f=d$(s,r,o,c,t),p=Jx;if(!f){if(s.number==(t?n.state.doc.lines:1))return c;p=`
51
- `,s=n.state.doc.line(s.number+(t?1:-1)),r=n.bidiSpans(s),f=n.visualLineSide(s,!t)}if(u){if(!u(p))return c}else{if(!i)return f;u=i(p)}c=f}}function P$(n,e,t){let i=n.state.charCategorizer(e),s=i(t);return r=>{let o=i(r);return s==ct.Space&&(s=o),s==o}}function Q$(n,e,t,i){let s=e.head,r=t?1:-1;if(s==(t?n.state.doc.length:0))return ne.cursor(s,e.assoc);let o=e.goalColumn,c,u=n.contentDOM.getBoundingClientRect(),f=n.coordsAtPos(s,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(s);o==null&&(o=Math.min(u.right-u.left,n.defaultCharacterWidth*(s-x.from))),c=(r<0?x.top:x.bottom)+p}let g=u.left+o,O=i??n.viewState.heightOracle.textHeight>>1;for(let x=0;;x+=10){let k=c+(O+x)*r,w=mk(n,{x:g,y:k},!1,r);if(k<u.top||k>u.bottom||(r<0?w<s:w>s)){let b=n.docView.coordsForChar(w),C=!b||k<b.top?-1:1;return ne.cursor(w,C,void 0,o)}}}function Dc(n,e,t){for(;;){let i=0;for(let s of n)s.between(e-1,e+1,(r,o,c)=>{if(e>r&&e<o){let u=i||t||(e-r<o-e?-1:1);e=u<0?r:o,i=u}});if(!i)return e}}function gk(n,e){let t=null;for(let i=0;i<e.ranges.length;i++){let s=e.ranges[i],r=null;if(s.empty){let o=Dc(n,s.from,0);o!=s.from&&(r=ne.cursor(o,-1))}else{let o=Dc(n,s.from,-1),c=Dc(n,s.to,1);(o!=s.from||c!=s.to)&&(r=ne.range(s.from==s.anchor?o:c,s.from==s.head?o:c))}r&&(t||(t=e.ranges.slice()),t[i]=r)}return t?ne.create(t,e.mainIndex):e}function zh(n,e,t){let i=Dc(n.state.facet(Tu).map(s=>s(n)),t.from,e.head>t.from?-1:1);return i==t.from?t:ne.cursor(i,i<t.from?1:-1)}const ao="￿";class C${constructor(e,t){this.points=e,this.text="",this.lineSeparator=t.facet(Ze.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=ao}readRange(e,t){if(!e)return this;let i=e.parentNode;for(let s=e;;){this.findPointBefore(i,s);let r=this.text.length;this.readNode(s);let o=s.nextSibling;if(o==t)break;let c=tt.get(s),u=tt.get(o);(c&&u?c.breakAfter:(c?c.breakAfter:Kc(s))||Kc(o)&&(s.nodeName!="BR"||s.cmIgnore)&&this.text.length>r)&&this.lineBreak(),s=o}return this.findPointBefore(i,t),this}readTextNode(e){let t=e.nodeValue;for(let i of this.points)i.node==e&&(i.pos=this.text.length+Math.min(i.offset,t.length));for(let i=0,s=this.lineSeparator?null:/\r\n?|\n/g;;){let r=-1,o=1,c;if(this.lineSeparator?(r=t.indexOf(this.lineSeparator,i),o=this.lineSeparator.length):(c=s.exec(t))&&(r=c.index,o=c[0].length),this.append(t.slice(i,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);i=r+o}}readNode(e){if(e.cmIgnore)return;let t=tt.get(e),i=t&&t.overrideDOMText;if(i!=null){this.findPointInside(e,i.length);for(let s=i.iter();!s.next().done;)s.lineBreak?this.lineBreak():this.append(s.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 i of this.points)i.node==e&&e.childNodes[i.offset]==t&&(i.pos=this.text.length)}findPointInside(e,t){for(let i of this.points)(e.nodeType==3?i.node==e:e.contains(i.node))&&(i.pos=this.text.length+(j$(e,i.node,i.offset)?t:0))}}function j$(n,e,t){for(;;){if(!e||t<wi(e))return!1;if(e==n)return!0;t=Js(e)+1,e=e.parentNode}}class U0{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class T${constructor(e,t,i,s){this.typeOver=s,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,i,0))){let c=r||o?[]:A$(e),u=new C$(c,e.state);u.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=u.text,this.newSel=M$(c,this.bounds.from)}else{let c=e.observer.selectionRange,u=r&&r.node==c.focusNode&&r.offset==c.focusOffset||!If(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||!If(e.contentDOM,c.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(c.anchorNode,c.anchorOffset),p=e.viewport;if((ke.ios||ke.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=ne.single(f,u)}}}function Ok(n,e){let t,{newSel:i}=e,s=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=s.from,f=null;(r===8||ke.android&&e.text.length<c-o)&&(u=s.to,f="end");let p=E$(n.state.doc.sliceString(o,c,ao),e.text,u-o,f);p&&(ke.chrome&&r==13&&p.toB==p.from+2&&e.text.slice(p.from,p.toB)==ao+ao&&p.toB--,t={from:o+p.from,to:o+p.toA,insert:Xe.of(e.text.slice(p.from,p.toB).split(ao))})}else i&&(!n.hasFocus&&n.state.facet(Zi)||i.main.eq(s))&&(i=null);if(!t&&!i)return!1;if(!t&&e.typeOver&&!s.empty&&i&&i.main.empty?t={from:s.from,to:s.to,insert:n.state.doc.slice(s.from,s.to)}:(ke.mac||ke.android)&&t&&t.from==t.to&&t.from==s.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(i&&t.insert.length==2&&(i=ne.single(i.main.anchor-1,i.main.head-1)),t={from:t.from,to:t.to,insert:Xe.of([t.insert.toString().replace("."," ")])}):t&&t.from>=s.from&&t.to<=s.to&&(t.from!=s.from||t.to!=s.to)&&s.to-s.from-(t.to-t.from)<=4?t={from:s.from,to:s.to,insert:n.state.doc.slice(s.from,t.from).append(t.insert).append(n.state.doc.slice(t.to,s.to))}:ke.chrome&&t&&t.from==t.to&&t.from==s.head&&t.insert.toString()==`
52
- `&&n.lineWrapping&&(i&&(i=ne.single(i.main.anchor-1,i.main.head-1)),t={from:s.from,to:s.to,insert:Xe.of([" "])}),t)return Fp(n,t,i,r);if(i&&!i.main.eq(s)){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"&&(i=gk(n.state.facet(Tu).map(u=>u(n)),i))),n.dispatch({selection:i,scrollIntoView:o,userEvent:c}),!0}else return!1}function Fp(n,e,t,i=-1){if(ke.ios&&n.inputState.flushIOSKey(e))return!0;let s=n.state.selection.main;if(ke.android&&(e.to==s.to&&(e.from==s.from||e.from==s.from-1&&n.state.sliceDoc(e.from,s.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&qr(n.contentDOM,"Enter",13)||(e.from==s.from-1&&e.to==s.to&&e.insert.length==0||i==8&&e.insert.length<e.to-e.from&&e.to>s.head)&&qr(n.contentDOM,"Backspace",8)||e.from==s.from&&e.to==s.to+1&&e.insert.length==0&&qr(n.contentDOM,"Delete",46)))return!0;let r=e.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let o,c=()=>o||(o=N$(n,e,t));return n.state.facet(sk).some(u=>u(n,e.from,e.to,r,c))||n.dispatch(c()),!0}function N$(n,e,t){let i,s=n.state,r=s.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?s.sliceDoc(r.from,e.from):"",u=r.to>e.to?s.sliceDoc(e.to,r.to):"";i=s.replaceSelection(n.state.toText(c+e.insert.sliceString(0,void 0,n.state.lineBreak)+u))}else{let c=s.changes(e),u=t&&t.main.to<=c.newLength?t.main:void 0;if(s.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;i=s.changeByRange(k=>{if(k.from==r.from&&k.to==r.to)return{changes:c,range:u||k.map(c)};let w=k.to-O,b=w-f.length;if(k.to-k.from!=x||n.state.sliceDoc(b,w)!=f||k.to>=p.from&&k.from<=p.to)return{range:k};let C=s.changes({from:b,to:w,insert:e.insert}),S=k.to-r.to;return{changes:C,range:u?ne.range(Math.max(0,u.anchor+S),Math.max(0,u.head+S)):k.map(C)}})}else i={changes:c,selection:u&&s.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)),s.update(i,{userEvent:o,scrollIntoView:!0})}function E$(n,e,t,i){let s=Math.min(n.length,e.length),r=0;for(;r<s&&n.charCodeAt(r)==e.charCodeAt(r);)r++;if(r==s&&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(i=="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 A$(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:i,focusNode:s,focusOffset:r}=n.observer.selectionRange;return t&&(e.push(new U0(t,i)),(s!=t||r!=i)&&e.push(new U0(s,r))),e}function M$(n,e){if(n.length==0)return null;let t=n[0].pos,i=n.length==2?n[1].pos:t;return t>-1&&i>-1?ne.single(t+e,i+e):null}class R${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,ke.safari&&e.contentDOM.addEventListener("input",()=>null),ke.gecko&&K$(e.contentDOM.ownerDocument)}handleEvent(e){!B$(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 i=this.handlers[e];if(i){for(let s of i.observers)s(this.view,t);for(let s of i.handlers){if(t.defaultPrevented)break;if(s(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=D$(e),i=this.handlers,s=this.view.contentDOM;for(let r in t)if(r!="scroll"){let o=!t[r].handlers.length,c=i[r];c&&o!=!c.handlers.length&&(s.removeEventListener(r,this.handleEvent),c=null),c||s.addEventListener(r,this.handleEvent,{passive:o})}for(let r in i)r!="scroll"&&!t[r]&&s.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&&yk.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),ke.android&&ke.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let t;return ke.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&((t=vk.find(i=>i.keyCode==e.keyCode))&&!e.ctrlKey||L$.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,qr(this.view.contentDOM,t.key,t.keyCode,t instanceof KeyboardEvent?t:void 0))}ignoreDuringComposition(e){return/^key/.test(e.type)?this.composing>0?!0:ke.safari&&!ke.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 G0(n,e){return(t,i)=>{try{return e.call(n,i,t)}catch(s){vn(t.state,s)}}}function D$(n){let e=Object.create(null);function t(i){return e[i]||(e[i]={observers:[],handlers:[]})}for(let i of n){let s=i.spec,r=s&&s.plugin.domEventHandlers,o=s&&s.plugin.domEventObservers;if(r)for(let c in r){let u=r[c];u&&t(c).handlers.push(G0(i.value,u))}if(o)for(let c in o){let u=o[c];u&&t(c).observers.push(G0(i.value,u))}}for(let i in ti)t(i).handlers.push(ti[i]);for(let i in Fn)t(i).observers.push(Fn[i]);return e}const vk=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],L$="dthko",yk=[16,17,18,20,91,92,224,225],hc=6;function fc(n){return Math.max(0,n)*.7+8}function I$(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}class Z${constructor(e,t,i,s){this.view=e,this.startEvent=t,this.style=i,this.mustSelect=s,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=Y_(e.contentDOM),this.atoms=e.state.facet(Tu).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)&&F$(e,t),this.dragging=z$(e,t)&&Sk(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&&I$(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let t=0,i=0,s=0,r=0,o=this.view.win.innerWidth,c=this.view.win.innerHeight;this.scrollParents.x&&({left:s,right:o}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:r,bottom:c}=this.scrollParents.y.getBoundingClientRect());let u=Zp(this.view);e.clientX-u.left<=s+hc?t=-fc(s-e.clientX):e.clientX+u.right>=o-hc&&(t=fc(e.clientX-o)),e.clientY-u.top<=r+hc?i=-fc(r-e.clientY):e.clientY+u.bottom>=c-hc&&(i=fc(e.clientY-c)),this.setScrollSpeed(t,i)}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,i=gk(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!i.eq(t.state.selection,this.dragging===!1))&&this.view.dispatch({selection:i,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 F$(n,e){let t=n.state.facet(ek);return t.length?t[0](e):ke.mac?e.metaKey:e.ctrlKey}function X$(n,e){let t=n.state.facet(tk);return t.length?t[0](e):ke.mac?!e.altKey:!e.ctrlKey}function z$(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let i=_o(n.root);if(!i||i.rangeCount==0)return!0;let s=i.getRangeAt(0).getClientRects();for(let r=0;r<s.length;r++){let o=s[r];if(o.left<=e.clientX&&o.right>=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function B$(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,i;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(i=tt.get(t))&&i.ignoreEvent(e))return!1;return!0}const ti=Object.create(null),Fn=Object.create(null),xk=ke.ie&&ke.ie_version<15||ke.ios&&ke.webkit_version<604;function V$(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(),kk(n,t.value)},50)}function Nu(n,e,t){for(let i of n.facet(e))t=i(t,n);return t}function kk(n,e){e=Nu(n.state,Dp,e);let{state:t}=n,i,s=1,r=t.toText(e),o=r.lines==t.selection.ranges.length;if(Kf!=null&&t.selection.ranges.every(u=>u.empty)&&Kf==r.toString()){let u=-1;i=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(s++).text:e)+t.lineBreak);return{changes:{from:p.from,insert:g},range:ne.cursor(f.from+g.length)}})}else o?i=t.changeByRange(u=>{let f=r.line(s++);return{changes:{from:u.from,to:u.to,insert:f.text},range:ne.cursor(u.from+f.length)}}):i=t.replaceSelection(r);n.dispatch(i,{userEvent:"input.paste",scrollIntoView:!0})}Fn.scroll=n=>{n.inputState.lastScrollTop=n.scrollDOM.scrollTop,n.inputState.lastScrollLeft=n.scrollDOM.scrollLeft};ti.keydown=(n,e)=>(n.inputState.setSelectionOrigin("select"),e.keyCode==27&&n.inputState.tabFocusMode!=0&&(n.inputState.tabFocusMode=Date.now()+2e3),!1);Fn.touchstart=(n,e)=>{n.inputState.lastTouchTime=Date.now(),n.inputState.setSelectionOrigin("select.pointer")};Fn.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};ti.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let i of n.state.facet(nk))if(t=i(n,e),t)break;if(!t&&e.button==0&&(t=W$(n,e)),t){let i=!n.hasFocus;n.inputState.startMouseSelection(new Z$(n,e,t,i)),i&&n.observer.ignore(()=>{Mx(n.contentDOM);let r=n.root.activeElement;r&&!r.contains(n.contentDOM)&&r.blur()});let s=n.inputState.mouseSelection;if(s)return s.start(e),s.dragging===!1}else n.inputState.setSelectionOrigin("select.pointer");return!1};function H0(n,e,t,i){if(i==1)return ne.cursor(e,t);if(i==2)return k$(n.state,e,t);{let s=kt.find(n.docView,e),r=n.state.doc.lineAt(s?s.posAtEnd:e),o=s?s.posAtStart:r.from,c=s?s.posAtEnd:r.to;return c<n.state.doc.length&&c==r.to&&c++,ne.range(o,c)}}let K0=(n,e,t)=>e>=t.top&&e<=t.bottom&&n>=t.left&&n<=t.right;function q$(n,e,t,i){let s=kt.find(n.docView,e);if(!s)return 1;let r=e-s.posAtStart;if(r==0)return 1;if(r==s.length)return-1;let o=s.coordsAt(r,-1);if(o&&K0(t,i,o))return-1;let c=s.coordsAt(r,1);return c&&K0(t,i,c)?1:o&&o.bottom>=i?-1:1}function J0(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:q$(n,t,e.clientX,e.clientY)}}const Y$=ke.ie&&ke.ie_version<=11;let ev=null,tv=0,nv=0;function Sk(n){if(!Y$)return n.detail;let e=ev,t=nv;return ev=n,nv=Date.now(),tv=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(tv+1)%3:1}function W$(n,e){let t=J0(n,e),i=Sk(e),s=n.state.selection;return{update(r){r.docChanged&&(t.pos=r.changes.mapPos(t.pos),s=s.map(r.changes))},get(r,o,c){let u=J0(n,r),f,p=H0(n,u.pos,u.bias,i);if(t.pos!=u.pos&&!o){let g=H0(n,t.pos,t.bias,i),O=Math.min(g.from,p.from),x=Math.max(g.to,p.to);p=O<p.from?ne.range(O,x):ne.range(x,O)}return o?s.replaceRange(s.main.extend(p.from,p.to)):c&&i==1&&s.ranges.length>1&&(f=U$(s,u.pos))?f:c?s.addRange(p):ne.create([p])}}}function U$(n,e){for(let t=0;t<n.ranges.length;t++){let{from:i,to:s}=n.ranges[t];if(i<=e&&s>=e)return ne.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}ti.dragstart=(n,e)=>{let{selection:{main:t}}=n.state;if(e.target.draggable){let s=n.docView.nearest(e.target);if(s&&s.isWidget){let r=s.posAtStart,o=r+s.length;(r>=t.to||o<=t.from)&&(t=ne.range(r,o))}}let{inputState:i}=n;return i.mouseSelection&&(i.mouseSelection.dragging=!0),i.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",Nu(n.state,Lp,n.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};ti.dragend=n=>(n.inputState.draggedContent=null,!1);function iv(n,e,t,i){if(t=Nu(n.state,Dp,t),!t)return;let s=n.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:r}=n.inputState,o=i&&r&&X$(n,e)?{from:r.from,to:r.to}:null,c={from:s,insert:t},u=n.state.changes(o?[o,c]:c);n.focus(),n.dispatch({changes:u,selection:{anchor:u.mapPos(s,-1),head:u.mapPos(s,1)},userEvent:o?"move.drop":"input.drop"}),n.inputState.draggedContent=null}ti.drop=(n,e)=>{if(!e.dataTransfer)return!1;if(n.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let i=Array(t.length),s=0,r=()=>{++s==t.length&&iv(n,e,i.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)||(i[o]=c.result),r()},c.readAsText(t[o])}return!0}else{let i=e.dataTransfer.getData("Text");if(i)return iv(n,e,i,!0),!0}return!1};ti.paste=(n,e)=>{if(n.state.readOnly)return!0;n.observer.flush();let t=xk?null:e.clipboardData;return t?(kk(n,t.getData("text/plain")||t.getData("text/uri-list")),!0):(V$(n),!1)};function G$(n,e){let t=n.dom.parentNode;if(!t)return;let i=t.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.value=e,i.focus(),i.selectionEnd=e.length,i.selectionStart=0,setTimeout(()=>{i.remove(),n.focus()},50)}function H$(n){let e=[],t=[],i=!1;for(let s of n.selection.ranges)s.empty||(e.push(n.sliceDoc(s.from,s.to)),t.push(s));if(!e.length){let s=-1;for(let{from:r}of n.selection.ranges){let o=n.doc.lineAt(r);o.number>s&&(e.push(o.text),t.push({from:o.from,to:Math.min(n.doc.length,o.to+1)})),s=o.number}i=!0}return{text:Nu(n,Lp,e.join(n.lineBreak)),ranges:t,linewise:i}}let Kf=null;ti.copy=ti.cut=(n,e)=>{let{text:t,ranges:i,linewise:s}=H$(n.state);if(!t&&!s)return!1;Kf=s?t:null,e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:i,scrollIntoView:!0,userEvent:"delete.cut"});let r=xk?null:e.clipboardData;return r?(r.clearData(),r.setData("text/plain",t),!0):(G$(n,t),!1)};const wk=bi.define();function bk(n,e){let t=[];for(let i of n.facet(rk)){let s=i(n,e);s&&t.push(s)}return t.length?n.update({effects:t,annotations:wk.of(!0)}):null}function _k(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=bk(n.state,e);t?n.dispatch(t):n.update([])}},10)}Fn.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),_k(n)};Fn.blur=n=>{n.observer.clearSelectionRange(),_k(n)};Fn.compositionstart=Fn.compositionupdate=n=>{n.observer.editContext||(n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0&&(n.inputState.composing=0))};Fn.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,ke.chrome&&ke.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50))};Fn.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};ti.beforeinput=(n,e)=>{var t,i;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 Fp(n,{from:u,to:f,insert:n.state.toText(r)},null),!0}}let s;if(ke.chrome&&ke.android&&(s=vk.find(r=>r.inputType==e.inputType))&&(n.observer.delayAndroidKey(s.key,s.keyCode),s.key=="Backspace"||s.key=="Delete")){let r=((i=window.visualViewport)===null||i===void 0?void 0:i.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 ke.ios&&e.inputType=="deleteContentForward"&&n.observer.flushSoon(),ke.safari&&e.inputType=="insertText"&&n.inputState.composing>=0&&setTimeout(()=>Fn.compositionend(n,e),20),!1};const sv=new Set;function K$(n){sv.has(n)||(sv.add(n),n.addEventListener("copy",()=>{}),n.addEventListener("cut",()=>{}))}const rv=["pre-wrap","normal","pre-line","break-spaces"];let tl=!1;function lv(){tl=!1}class J${constructor(e){this.lineWrapping=e,this.doc=Xe.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let i=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(i+=Math.max(0,Math.ceil((t-e-i*this.lineLength*.5)/this.lineLength))),this.lineHeight*i}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 rv.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let i=0;i<e.length;i++){let s=e[i];s<0?i++:this.heightSamples[Math.floor(s*10)]||(t=!0,this.heightSamples[Math.floor(s*10)]=!0)}return t}refresh(e,t,i,s,r,o){let c=rv.indexOf(e)>-1,u=Math.round(t)!=Math.round(this.lineHeight)||this.lineWrapping!=c;if(this.lineWrapping=c,this.lineHeight=t,this.charWidth=i,this.textHeight=s,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 eP{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class Oi{constructor(e,t,i,s,r){this.from=e,this.length=t,this.top=i,this.height=s,this._content=r}get type(){return typeof this._content=="number"?nn.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 bs?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 Oi(this.from,this.length+e.length,this.top,this.height+e.height,t)}}var rt=(function(n){return n[n.ByPos=0]="ByPos",n[n.ByHeight=1]="ByHeight",n[n.ByPosNoHeight=2]="ByPosNoHeight",n})(rt||(rt={}));const Lc=.001;class sn{constructor(e,t,i=2){this.length=e,this.height=t,this.flags=i}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)>Lc&&(tl=!0),this.height=e)}replace(e,t,i){return sn.of(i)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,i,s){let r=this,o=i.doc;for(let c=s.length-1;c>=0;c--){let{fromA:u,toA:f,fromB:p,toB:g}=s[c],O=r.lineAt(u,rt.ByPosNoHeight,i.setDoc(t),0,0),x=O.to>=f?O:r.lineAt(f,rt.ByPosNoHeight,i,0,0);for(g+=x.to-f,f=x.to;c>0&&O.from<=s[c-1].toA;)u=s[c-1].fromA,p=s[c-1].fromB,c--,u<O.from&&(O=r.lineAt(u,rt.ByPosNoHeight,i,0,0));p+=O.from-u,u=O.from;let k=Xp.build(i.setDoc(o),e,p,g);r=tu(r,r.replace(u,f,k))}return r.updateHeight(i,0)}static empty(){return new Qn(0,0)}static of(e){if(e.length==1)return e[0];let t=0,i=e.length,s=0,r=0;for(;;)if(t==i)if(s>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),i+=1+c.break,s-=c.size}else if(r>s*2){let c=e[i];c.break?e.splice(i,1,c.left,null,c.right):e.splice(i,1,c.left,c.right),i+=2+c.break,r-=c.size}else break;else if(s<r){let c=e[t++];c&&(s+=c.size)}else{let c=e[--i];c&&(r+=c.size)}let o=0;return e[t-1]==null?(o=1,t--):e[t]==null&&(o=1,i++),new tP(sn.of(e.slice(0,t)),o,sn.of(e.slice(i)))}}function tu(n,e){return n==e?n:(n.constructor!=e.constructor&&(tl=!0),e)}sn.prototype.size=1;class $k extends sn{constructor(e,t,i){super(e,t),this.deco=i}blockAt(e,t,i,s){return new Oi(s,this.length,i,this.height,this.deco||0)}lineAt(e,t,i,s,r){return this.blockAt(0,i,s,r)}forEachLine(e,t,i,s,r,o){e<=r+this.length&&t>=r&&o(this.blockAt(0,i,s,r))}updateHeight(e,t=0,i=!1,s){return s&&s.from<=t&&s.more&&this.setHeight(s.heights[s.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class Qn extends $k{constructor(e,t){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,t,i,s){return new Oi(s,this.length,i,this.height,this.breaks)}replace(e,t,i){let s=i[0];return i.length==1&&(s instanceof Qn||s instanceof Zt&&s.flags&4)&&Math.abs(this.length-s.length)<10?(s instanceof Zt?s=new Qn(s.length,this.height):s.height=this.height,this.outdated||(s.outdated=!1),s):sn.of(i)}updateHeight(e,t=0,i=!1,s){return s&&s.from<=t&&s.more?this.setHeight(s.heights[s.index++]):(i||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 Zt extends sn{constructor(e){super(e,0)}heightMetrics(e,t){let i=e.doc.lineAt(t).number,s=e.doc.lineAt(t+this.length).number,r=s-i+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:i,lastLine:s,perLine:o,perChar:c}}blockAt(e,t,i,s){let{firstLine:r,lastLine:o,perLine:c,perChar:u}=this.heightMetrics(t,s);if(t.lineWrapping){let f=s+(e<t.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-i)/this.height))*this.length)),p=t.doc.lineAt(f),g=c+p.length*u,O=Math.max(i,e-g/2);return new Oi(p.from,p.length,O,g,0)}else{let f=Math.max(0,Math.min(o-r,Math.floor((e-i)/c))),{from:p,length:g}=t.doc.line(r+f);return new Oi(p,g,i+c*f,c,0)}}lineAt(e,t,i,s,r){if(t==rt.ByHeight)return this.blockAt(e,i,s,r);if(t==rt.ByPosNoHeight){let{from:x,to:k}=i.doc.lineAt(e);return new Oi(x,k-x,0,0,0)}let{firstLine:o,perLine:c,perChar:u}=this.heightMetrics(i,r),f=i.doc.lineAt(e),p=c+f.length*u,g=f.number-o,O=s+c*g+u*(f.from-r-g);return new Oi(f.from,f.length,Math.max(s,Math.min(O,s+this.height-p)),p,0)}forEachLine(e,t,i,s,r,o){e=Math.max(e,r),t=Math.min(t,r+this.length);let{firstLine:c,perLine:u,perChar:f}=this.heightMetrics(i,r);for(let p=e,g=s;p<=t;){let O=i.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 Oi(O.from,O.length,g,x,0)),g+=x,p=O.to+1}}replace(e,t,i){let s=this.length-t;if(s>0){let r=i[i.length-1];r instanceof Zt?i[i.length-1]=new Zt(r.length+s):i.push(null,new Zt(s-1))}if(e>0){let r=i[0];r instanceof Zt?i[0]=new Zt(e+r.length):i.unshift(new Zt(e-1),null)}return sn.of(i)}decomposeLeft(e,t){t.push(new Zt(e-1),null)}decomposeRight(e,t){t.push(null,new Zt(this.length-e-1))}updateHeight(e,t=0,i=!1,s){let r=t+this.length;if(s&&s.from<=t+this.length&&s.more){let o=[],c=Math.max(t,s.from),u=-1;for(s.from>t&&o.push(new Zt(s.from-t-1).updateHeight(e,t));c<=r&&s.more;){let p=e.doc.lineAt(c).length;o.length&&o.push(null);let g=s.heights[s.index++];u==-1?u=g:Math.abs(g-u)>=Lc&&(u=-2);let O=new Qn(p,g);O.outdated=!1,o.push(O),c+=p+1}c<=r&&o.push(null,new Zt(r-c).updateHeight(e,c));let f=sn.of(o);return(u<0||Math.abs(f.height-this.height)>=Lc||Math.abs(u-this.heightMetrics(e,t).perLine)>=Lc)&&(tl=!0),tu(this,f)}else(i||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class tP extends sn{constructor(e,t,i){super(e.length+t+i.length,e.height+i.height,t|(e.outdated||i.outdated?2:0)),this.left=e,this.right=i,this.size=e.size+i.size}get break(){return this.flags&1}blockAt(e,t,i,s){let r=i+this.left.height;return e<r?this.left.blockAt(e,t,i,s):this.right.blockAt(e,t,r,s+this.left.length+this.break)}lineAt(e,t,i,s,r){let o=s+this.left.height,c=r+this.left.length+this.break,u=t==rt.ByHeight?e<o:e<c,f=u?this.left.lineAt(e,t,i,s,r):this.right.lineAt(e,t,i,o,c);if(this.break||(u?f.to<c:f.from>c))return f;let p=t==rt.ByPosNoHeight?rt.ByPosNoHeight:rt.ByPos;return u?f.join(this.right.lineAt(c,p,i,o,c)):this.left.lineAt(c,p,i,s,r).join(f)}forEachLine(e,t,i,s,r,o){let c=s+this.left.height,u=r+this.left.length+this.break;if(this.break)e<u&&this.left.forEachLine(e,t,i,s,r,o),t>=u&&this.right.forEachLine(e,t,i,c,u,o);else{let f=this.lineAt(u,rt.ByPos,i,s,r);e<f.from&&this.left.forEachLine(e,f.from-1,i,s,r,o),f.to>=e&&f.from<=t&&o(f),t>f.to&&this.right.forEachLine(f.to+1,t,i,c,u,o)}}replace(e,t,i){let s=this.left.length+this.break;if(t<s)return this.balanced(this.left.replace(e,t,i),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-s,t-s,i));let r=[];e>0&&this.decomposeLeft(e,r);let o=r.length;for(let c of i)r.push(c);if(e>0&&ov(r,o-1),t<this.length){let c=r.length;this.decomposeRight(t,r),ov(r,c)}return sn.of(r)}decomposeLeft(e,t){let i=this.left.length;if(e<=i)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(i++,e>=i&&t.push(null)),e>i&&this.right.decomposeLeft(e-i,t)}decomposeRight(e,t){let i=this.left.length,s=i+this.break;if(e>=s)return this.right.decomposeRight(e-s,t);e<i&&this.left.decomposeRight(e,t),this.break&&e<s&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?sn.of(this.break?[e,null,t]:[e,t]):(this.left=tu(this.left,e),this.right=tu(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,i=!1,s){let{left:r,right:o}=this,c=t+r.length+this.break,u=null;return s&&s.from<=t+r.length&&s.more?u=r=r.updateHeight(e,t,i,s):r.updateHeight(e,t,i),s&&s.from<=c+o.length&&s.more?u=o=o.updateHeight(e,c,i,s):o.updateHeight(e,c,i),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 ov(n,e){let t,i;n[e]==null&&(t=n[e-1])instanceof Zt&&(i=n[e+1])instanceof Zt&&n.splice(e-1,3,new Zt(t.length+1+i.length))}const nP=5;class Xp{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 i=Math.min(t,this.lineEnd),s=this.nodes[this.nodes.length-1];s instanceof Qn?s.length+=i-this.pos:(i>this.pos||!this.isCovered)&&this.nodes.push(new Qn(i-this.pos,-1)),this.writtenTo=i,t>i&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,i){if(e<t||i.heightRelevant){let s=i.widget?i.widget.estimatedHeight:0,r=i.widget?i.widget.lineBreaks:0;s<0&&(s=this.oracle.lineHeight);let o=t-e;i.block?this.addBlock(new $k(o,s,i)):(o||r||s>=nP)&&this.addLineDeco(s,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 Qn(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let i=new Zt(t-e);return this.oracle.doc.lineAt(e).to==t&&(i.flags|=4),i}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof Qn)return e;let t=new Qn(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,i){let s=this.ensureLine();s.length+=i,s.collapsed+=i,s.widgetHeight=Math.max(s.widgetHeight,e),s.breaks+=t,this.writtenTo=this.pos=this.pos+i}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof Qn)&&!this.isCovered?this.nodes.push(new Qn(0,-1)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let i=e;for(let s of this.nodes)s instanceof Qn&&s.updateHeight(this.oracle,i),i+=s?s.length:1;return this.nodes}static build(e,t,i,s){let r=new Xp(i,e);return qe.spans(t,i,s,r,0),r.finish(i)}}function iP(n,e,t){let i=new sP;return qe.compare(n,e,t,i,0),i.changes}class sP{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,i,s){(e<t||i&&i.heightRelevant||s&&s.heightRelevant)&&Rc(e,t,this.changes,5)}}function rP(n,e){let t=n.getBoundingClientRect(),i=n.ownerDocument,s=i.defaultView||window,r=Math.max(0,t.left),o=Math.min(s.innerWidth,t.right),c=Math.max(0,t.top),u=Math.min(s.innerHeight,t.bottom);for(let f=n.parentNode;f&&f!=i.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?s.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 lP(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 oP(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class Bh{constructor(e,t,i,s){this.from=e,this.to=t,this.size=i,this.displaySize=s}static same(e,t){if(e.length!=t.length)return!1;for(let i=0;i<e.length;i++){let s=e[i],r=t[i];if(s.from!=r.from||s.to!=r.to||s.size!=r.size)return!1}return!0}draw(e,t){return je.replace({widget:new aP(this.displaySize*(t?e.scaleY:e.scaleX),t)}).range(this.from,this.to)}}class aP extends $i{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 av{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=cv,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=lt.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let t=e.facet(Ip).some(i=>typeof i!="function"&&i.class=="cm-lineWrapping");this.heightOracle=new J$(t),this.stateDeco=e.facet($o).filter(i=>typeof i!="function"),this.heightMap=sn.empty().applyChanges(this.stateDeco,Xe.empty,this.heightOracle.setDoc(e.doc),[new Zn(0,0,0,e.doc.length)]);for(let i=0;i<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());i++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=je.set(this.lineGaps.map(i=>i.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let i=0;i<=1;i++){let s=i?t.head:t.anchor;if(!e.some(({from:r,to:o})=>s>=r&&s<=o)){let{from:r,to:o}=this.lineBlockAt(s);e.push(new pc(r,o))}}return this.viewports=e.sort((i,s)=>i.from-s.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?cv:new zp(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(co(e,this.scaler))})}update(e,t=null){this.state=e.state;let i=this.stateDeco;this.stateDeco=this.state.facet($o).filter(p=>typeof p!="function");let s=e.changedRanges,r=Zn.extendWithRanges(s,iP(i,this.stateDeco,e?e.changes:Pt.empty(this.state.doc.length))),o=this.heightMap.height,c=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);lv(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),r),(this.heightMap.height!=o||tl)&&(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(ok)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,i=window.getComputedStyle(t),s=this.heightOracle,r=i.whiteSpace;this.defaultTextDirection=i.direction=="rtl"?lt.RTL:lt.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:P,scaleY:_}=Ax(t,c);(P>.005&&Math.abs(this.scaleX-P)>.005||_>.005&&Math.abs(this.scaleY-_)>.005)&&(this.scaleX=P,this.scaleY=_,f|=16,o=u=!0)}let g=(parseInt(i.paddingTop)||0)*this.scaleY,O=(parseInt(i.paddingBottom)||0)*this.scaleY;(this.paddingTop!=g||this.paddingBottom!=O)&&(this.paddingTop=g,this.paddingBottom=O,f|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(s.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=Dx(e.scrollDOM);let k=(this.printing?oP:rP)(t,this.paddingTop),w=k.top-this.pixelViewport.top,b=k.bottom-this.pixelViewport.bottom;this.pixelViewport=k;let C=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(C!=this.inView&&(this.inView=C,C&&(u=!0)),!this.inView&&!this.scrollTarget&&!lP(e.dom))return 0;let S=c.width;if((this.contentDOMWidth!=S||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=c.width,this.editorHeight=e.scrollDOM.clientHeight,f|=16),u){let P=e.docView.measureVisibleLineHeights(this.viewport);if(s.mustRefreshForHeights(P)&&(o=!0),o||s.lineWrapping&&Math.abs(S-this.contentDOMWidth)>s.charWidth){let{lineHeight:_,charWidth:T,textHeight:A}=e.docView.measureTextSize();o=_>0&&s.refresh(r,_,T,A,Math.max(5,S/T),P),o&&(e.docView.minWidth=0,f|=16)}w>0&&b>0?p=Math.max(w,b):w<0&&b<0&&(p=Math.min(w,b)),lv();for(let _ of this.viewports){let T=_.from==this.viewport.from?P:e.docView.measureVisibleLineHeights(_);this.heightMap=(o?sn.empty().applyChanges(this.stateDeco,Xe.empty,this.heightOracle,[new Zn(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(s,0,o,new eP(_.from,T))}tl&&(f|=2)}let Q=!this.viewportIsAppropriate(this.viewport,p)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return Q&&(f&2&&(f|=this.updateScaler()),this.viewport=this.getViewport(p,this.scrollTarget),f|=this.updateForViewport()),(f&2||Q)&&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 i=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),s=this.heightMap,r=this.heightOracle,{visibleTop:o,visibleBottom:c}=this,u=new pc(s.lineAt(o-i*1e3,rt.ByHeight,r,0,0).from,s.lineAt(c+(1-i)*1e3,rt.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=s.lineAt(f,rt.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 pc(s.lineAt(O-1e3/2,rt.ByHeight,r,0,0).from,s.lineAt(O+p+1e3/2,rt.ByHeight,r,0,0).to)}}return u}mapViewport(e,t){let i=t.mapPos(e.from,-1),s=t.mapPos(e.to,1);return new pc(this.heightMap.lineAt(i,rt.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(s,rt.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},i=0){if(!this.inView)return!0;let{top:s}=this.heightMap.lineAt(e,rt.ByPos,this.heightOracle,0,0),{bottom:r}=this.heightMap.lineAt(t,rt.ByPos,this.heightOracle,0,0),{visibleTop:o,visibleBottom:c}=this;return(e==0||s<=o-Math.max(10,Math.min(-i,250)))&&(t==this.state.doc.length||r>=c+Math.max(10,Math.min(i,250)))&&s>o-2*1e3&&r<c+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let i=[];for(let s of e)t.touchesRange(s.from,s.to)||i.push(new Bh(t.mapPos(s.from),t.mapPos(s.to),s.size,s.displaySize));return i}ensureLineGaps(e,t){let i=this.heightOracle.lineWrapping,s=i?1e4:2e3,r=s>>1,o=s<<1;if(this.defaultTextDirection!=lt.LTR&&!i)return[];let c=[],u=(p,g,O,x)=>{if(g-p<r)return;let k=this.state.selection.main,w=[k.from];k.empty||w.push(k.to);for(let C of w)if(C>p&&C<g){u(p,C-10,O,x),u(C+10,g,O,x);return}let b=uP(e,C=>C.from>=O.from&&C.to<=O.to&&Math.abs(C.from-p)<r&&Math.abs(C.to-g)<r&&!w.some(S=>C.from<S&&C.to>S));if(!b){if(g<O.to&&t&&i&&t.visibleRanges.some(Q=>Q.from<=g&&Q.to>=g)){let Q=t.moveToLineBoundary(ne.cursor(g),!1,!0).head;Q>p&&(g=Q)}let C=this.gapSize(O,p,g,x),S=i||C<2e6?C:2e6;b=new Bh(p,g,C,S)}c.push(b)},f=p=>{if(p.length<o||p.type!=nn.Text)return;let g=cP(p.from,p.to,this.stateDeco);if(g.total<o)return;let O=this.scrollTarget?this.scrollTarget.range.head:null,x,k;if(i){let w=s/this.heightOracle.lineLength*this.heightOracle.lineHeight,b,C;if(O!=null){let S=gc(g,O),Q=((this.visibleBottom-this.visibleTop)/2+w)/p.height;b=S-Q,C=S+Q}else b=(this.visibleTop-p.top-w)/p.height,C=(this.visibleBottom-p.top+w)/p.height;x=mc(g,b),k=mc(g,C)}else{let w=g.total*this.heightOracle.charWidth,b=s*this.heightOracle.charWidth,C=0;if(w>2e6)for(let T of e)T.from>=p.from&&T.from<p.to&&T.size!=T.displaySize&&T.from*this.heightOracle.charWidth+C<this.pixelViewport.left&&(C=T.size-T.displaySize);let S=this.pixelViewport.left+C,Q=this.pixelViewport.right+C,P,_;if(O!=null){let T=gc(g,O),A=((Q-S)/2+b)/w;P=T-A,_=T+A}else P=(S-b)/w,_=(Q+b)/w;x=mc(g,P),k=mc(g,_)}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,i,s){let r=gc(s,i)-gc(s,t);return this.heightOracle.lineWrapping?e.height*r:s.total*this.heightOracle.charWidth*r}updateLineGaps(e){Bh.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=je.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 i=[];qe.spans(t,this.viewport.from,this.viewport.to,{span(r,o){i.push({from:r,to:o})},point(){}},20);let s=0;if(i.length!=this.visibleRanges.length)s=12;else for(let r=0;r<i.length&&!(s&8);r++){let o=this.visibleRanges[r],c=i[r];(o.from!=c.from||o.to!=c.to)&&(s|=4,e&&e.mapPos(o.from,-1)==c.from&&e.mapPos(o.to,1)==c.to||(s|=8))}return this.visibleRanges=i,s}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||co(this.heightMap.lineAt(e,rt.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)||co(this.heightMap.lineAt(this.scaler.fromDOM(e),rt.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 co(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 pc{constructor(e,t){this.from=e,this.to=t}}function cP(n,e,t){let i=[],s=n,r=0;return qe.spans(t,n,e,{span(){},point(o,c){o>s&&(i.push({from:s,to:o}),r+=o-s),s=c}},20),s<e&&(i.push({from:s,to:e}),r+=e-s),{total:r,ranges:i}}function mc({total:n,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let i=Math.floor(n*t);for(let s=0;;s++){let{from:r,to:o}=e[s],c=o-r;if(i<=c)return r+i;i-=c}}function gc(n,e){let t=0;for(let{from:i,to:s}of n.ranges){if(e<=s){t+=e-i;break}t+=s-i}return t/n.total}function uP(n,e){for(let t of n)if(e(t))return t}const cv={toDOM(n){return n},fromDOM(n){return n},scale:1,eq(n){return n==this}};class zp{constructor(e,t,i){let s=0,r=0,o=0;this.viewports=i.map(({from:c,to:u})=>{let f=t.lineAt(c,rt.ByPos,e,0,0).top,p=t.lineAt(u,rt.ByPos,e,0,0).bottom;return s+=p-f,{from:c,to:u,top:f,bottom:p,domTop:0,domBottom:0}}),this.scale=(7e6-s)/(t.height-s);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,i=0,s=0;;t++){let r=t<this.viewports.length?this.viewports[t]:null;if(!r||e<r.top)return s+(e-i)*this.scale;if(e<=r.bottom)return r.domTop+(e-r.top);i=r.bottom,s=r.domBottom}}fromDOM(e){for(let t=0,i=0,s=0;;t++){let r=t<this.viewports.length?this.viewports[t]:null;if(!r||e<r.domTop)return i+(e-s)/this.scale;if(e<=r.domBottom)return r.top+(e-r.domTop);i=r.bottom,s=r.domBottom}}eq(e){return e instanceof zp?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((t,i)=>t.from==e.viewports[i].from&&t.to==e.viewports[i].to):!1}}function co(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),i=e.toDOM(n.bottom);return new Oi(n.from,n.length,t,i-t,Array.isArray(n._content)?n._content.map(s=>co(s,e)):n._content)}const Oc=Se.define({combine:n=>n.join(" ")}),Jf=Se.define({combine:n=>n.indexOf(!0)>-1}),ep=Ss.newName(),Pk=Ss.newName(),Qk=Ss.newName(),Ck={"&light":"."+Pk,"&dark":"."+Qk};function tp(n,e,t){return new Ss(e,{finish(i){return/&/.test(i)?i.replace(/&\w*/,s=>{if(s=="&")return n;if(!t||!t[s])throw new RangeError(`Unsupported selector: ${s}`);return t[s]}):n+" "+i}})}const dP=tp("."+ep,{"&":{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"}},Ck),hP={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Vh=ke.ie&&ke.ie_version<=11;class fP{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new W_,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 i of t)this.queue.push(i);(ke.ie&&ke.ie_version<=11||ke.ios&&e.composing)&&t.some(i=>i.type=="childList"&&i.removedNodes.length||i.type=="characterData"&&i.oldValue.length>i.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&ke.android&&e.constructor.EDIT_CONTEXT!==!1&&!(ke.chrome&&ke.chrome_version<126)&&(this.editContext=new mP(e),e.state.facet(Zi)&&(e.contentDOM.editContext=this.editContext.editContext)),Vh&&(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,i)=>t!=e[i]))){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:i}=this,s=this.selectionRange;if(i.state.facet(Zi)?i.root.activeElement!=this.dom:!Mc(this.dom,s))return;let r=s.anchorNode&&i.docView.nearest(s.anchorNode);if(r&&r.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(ke.ie&&ke.ie_version<=11||ke.android&&ke.chrome)&&!i.state.selection.main.empty&&s.focusNode&&mo(s.focusNode,s.focusOffset,s.anchorNode,s.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=_o(e.root);if(!t)return!1;let i=ke.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&pP(this.view,t)||t;if(!i||this.selectionRange.eq(i))return!1;let s=Mc(this.dom,i);return s&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&G_(this.dom,i)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(i),s&&(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 i=this.dom;i;)if(i.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==i?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(i),i=i.assignedSlot||i.parentNode;else if(i.nodeType==11)i=i.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let i of this.scrollTargets)i.removeEventListener("scroll",this.onScroll);for(let i of this.scrollTargets=t)i.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,hP),Vh&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),Vh&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var i;if(!this.delayedAndroidKey){let s=()=>{let r=this.delayedAndroidKey;r&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=r.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&r.force&&qr(this.dom,r.key,r.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(s)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((i=this.delayedAndroidKey)===null||i===void 0)&&i.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,i=-1,s=!1;for(let r of e){let o=this.readMutation(r);o&&(o.typeOver&&(s=!0),t==-1?{from:t,to:i}=o:(t=Math.min(o.from,t),i=Math.max(o.to,i)))}return{from:t,to:i,typeOver:s}}readChange(){let{from:e,to:t,typeOver:i}=this.processRecords(),s=this.selectionChanged&&Mc(this.dom,this.selectionRange);if(e<0&&!s)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let r=new T$(this.view,e,t,i);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 i=this.view.state,s=Ok(this.view,t);return this.view.state==i&&(t.domChanged||t.newSel&&!t.newSel.main.eq(this.view.state.selection.main))&&this.view.update([]),s}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 i=uv(t,e.previousSibling||e.target.previousSibling,-1),s=uv(t,e.nextSibling||e.target.nextSibling,1);return{from:i?t.posAfter(i):t.posAtStart,to:s?t.posBefore(s):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(Zi)!=e.state.facet(Zi)&&(e.view.contentDOM.editContext=e.state.facet(Zi)?this.editContext.editContext:null))}destroy(){var e,t,i;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(i=this.resizeScroll)===null||i===void 0||i.disconnect();for(let s of this.scrollTargets)s.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 uv(n,e,t){for(;e;){let i=tt.get(e);if(i&&i.parent==n)return i;let s=e.parentNode;e=s!=n.dom?s:t>0?e.nextSibling:e.previousSibling}return null}function dv(n,e){let t=e.startContainer,i=e.startOffset,s=e.endContainer,r=e.endOffset,o=n.docView.domAtPos(n.state.selection.main.anchor);return mo(o.node,o.offset,s,r)&&([t,i,s,r]=[s,r,t,i]),{anchorNode:t,anchorOffset:i,focusNode:s,focusOffset:r}}function pP(n,e){if(e.getComposedRanges){let s=e.getComposedRanges(n.root)[0];if(s)return dv(n,s)}let t=null;function i(s){s.preventDefault(),s.stopImmediatePropagation(),t=s.getTargetRanges()[0]}return n.contentDOM.addEventListener("beforeinput",i,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",i,!0),t?dv(n,t):null}class mP{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=i=>{let s=e.state.selection.main,{anchor:r,head:o}=s,c=this.toEditorPos(i.updateRangeStart),u=this.toEditorPos(i.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:i.updateRangeStart,editorBase:c,drifted:!1});let f={from:c,to:u,insert:Xe.of(i.text.split(`
53
- `))};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=ne.single(this.toEditorPos(i.selectionStart),this.toEditorPos(i.selectionEnd));p.main.eq(s)||e.dispatch({selection:p,userEvent:"select"});return}if((ke.mac||ke.android)&&f.from==o-1&&/^\. ?$/.test(i.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(f={from:c,to:u,insert:Xe.of([i.text.replace("."," ")])}),this.pendingContextChange=f,!e.state.readOnly){let p=this.to-this.from+(f.to-f.from+f.insert.length);Fp(e,f,ne.single(this.toEditorPos(i.selectionStart,p),this.toEditorPos(i.selectionEnd,p)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state))},this.handlers.characterboundsupdate=i=>{let s=[],r=null;for(let o=this.toEditorPos(i.rangeStart),c=this.toEditorPos(i.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,s.push(r)}t.updateCharacterBounds(i.rangeStart,s)},this.handlers.textformatupdate=i=>{let s=[];for(let r of i.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`;s.push(je.mark({attributes:{style:p}}).range(u,f))}}}e.dispatch({effects:ck.of(je.set(s))})},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:i}=this.composing;this.composing=null,i&&this.reset(e.state)}};for(let i in this.handlers)t.addEventListener(i,this.handlers[i]);this.measureReq={read:i=>{this.editContext.updateControlBounds(i.contentDOM.getBoundingClientRect());let s=_o(i.root);s&&s.rangeCount&&this.editContext.updateSelectionBounds(s.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,i=!1,s=this.pendingContextChange;return e.changes.iterChanges((r,o,c,u,f)=>{if(i)return;let p=f.length-(o-r);if(s&&o>=s.to)if(s.from==r&&s.to==o&&s.insert.eq(f)){s=this.pendingContextChange=null,t+=p,this.to+=p;return}else s=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){i=!0;return}this.editContext.updateText(this.toContextPos(r),this.toContextPos(o),f.toString()),this.to+=p}t+=p}),s&&!i&&this.revertPending(e.state),!i}update(e){let t=this.pendingContextChange,i=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(i.from,i.to)&&e.transactions.some(s=>!s.isUserEvent("input.type")&&s.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,i=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),s=this.toContextPos(t.head);(this.editContext.selectionStart!=i||this.editContext.selectionEnd!=s)&&this.editContext.updateSelection(i,s)}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 i=this.composing;return i&&i.drifted?i.editorBase+(e-i.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 Oe{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:i}=e;this.dispatchTransactions=e.dispatchTransactions||i&&(s=>s.forEach(r=>i(r,this)))||(s=>this.update(s)),this.dispatch=this.dispatch.bind(this),this._root=e.root||U_(e.parent)||document,this.viewState=new av(e.state||Ze.create(e)),e.scrollTo&&e.scrollTo.is(dc)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Fr).map(s=>new Fh(s));for(let s of this.plugins)s.update(this);this.observer=new fP(this),this.inputState=new R$(this),this.inputState.ensureHandlers(this.plugins),this.docView=new z0(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 wt?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,i=!1,s,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(wk))?(this.inputState.notifiedFocused=o,c=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,u=bk(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);s=eu.create(this,r,e),s.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 Yr(x.empty?x:ne.cursor(x.head,x.head>x.anchor?-1:1))}for(let x of O.effects)x.is(dc)&&(g=x.value.clip(this.state))}this.viewState.update(s,g),this.bidiCache=nu.update(this.bidiCache,s.changes),s.empty||(this.updatePlugins(s),this.inputState.update(s)),t=this.docView.update(s),this.state.facet(oo)!=this.styleModules&&this.mountStyles(),i=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(O=>O.isUserEvent("select.pointer")))}finally{this.updateState=0}if(s.startState.facet(Oc)!=s.state.facet(Oc)&&(this.viewState.mustMeasureContent=!0),(t||i||g||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!s.empty)for(let O of this.state.facet(Uf))try{O(s)}catch(x){vn(this.state,x,"update listener")}(u||p)&&Promise.resolve().then(()=>{u&&this.state==u.startState&&this.dispatch(u),p&&!Ok(this,p)&&f.force&&qr(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 i of this.plugins)i.destroy(this);this.viewState=new av(e),this.plugins=e.facet(Fr).map(i=>new Fh(i)),this.pluginMap.clear();for(let i of this.plugins)i.update(this);this.docView.destroy(),this.docView=new z0(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(Fr),i=e.state.facet(Fr);if(t!=i){let s=[];for(let r of i){let o=t.indexOf(r);if(o<0)s.push(new Fh(r));else{let c=this.plugins[o];c.mustUpdate=e,s.push(c)}}for(let r of this.plugins)r.mustUpdate!=e&&r.destroy(this);this.plugins=s,this.pluginMap.clear()}else for(let s of this.plugins)s.mustUpdate=e;for(let s=0;s<this.plugins.length;s++)this.plugins[s].update(this);t!=i&&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(i){vn(this.state,i,"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,i=this.scrollDOM,s=i.scrollTop*this.scaleY,{scrollAnchorPos:r,scrollAnchorHeight:o}=this.viewState;Math.abs(s-this.viewState.scrollTop)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let c=0;;c++){if(o<0)if(Dx(i))r=-1,o=this.viewState.heightMap.height;else{let x=this.viewState.scrollAnchorAt(s);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 vn(this.state,k),hv}}),g=eu.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]!=hv)try{let k=f[x];k.write&&k.write(p[x],this)}catch(k){vn(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){s=s+k,i.scrollTop=s/this.scaleY,o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let c of this.state.facet(Uf))c(t)}get themeClasses(){return ep+" "+(this.state.facet(Jf)?Qk:Pk)+" "+this.state.facet(Oc)}updateAttrs(){let e=fv(this,uk,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Zi)?"true":"false",class:"cm-content",style:`${ke.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),fv(this,Ip,t);let i=this.observer.ignore(()=>{let s=Bf(this.contentDOM,this.contentAttrs,t),r=Bf(this.dom,this.editorAttrs,e);return s||r});return this.editorAttrs=e,this.contentAttrs=t,i}showAnnouncements(e){let t=!0;for(let i of e)for(let s of i.effects)if(s.is(Oe.announce)){t&&(this.announceDOM.textContent=""),t=!1;let r=this.announceDOM.appendChild(document.createElement("div"));r.textContent=s.value}}mountStyles(){this.styleModules=this.state.facet(oo);let e=this.state.facet(Oe.cspNonce);Ss.mount(this.root,this.styleModules.concat(dP).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(i=>i.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,i){return zh(this,e,W0(this,e,t,i))}moveByGroup(e,t){return zh(this,e,W0(this,e,t,i=>P$(this,e.head,i)))}visualLineSide(e,t){let i=this.bidiSpans(e),s=this.textDirectionAt(e.from),r=i[t?i.length-1:0];return ne.cursor(r.side(t,s)+e.from,r.forward(!t,s)?1:-1)}moveToLineBoundary(e,t,i=!0){return $$(this,e,t,i)}moveVertically(e,t,i){return zh(this,e,Q$(this,e,t,i))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),mk(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let i=this.docView.coordsAt(e,t);if(!i||i.left==i.right)return i;let s=this.state.doc.lineAt(e),r=this.bidiSpans(s),o=r[ys.find(r,e-s.from,-1,t)];return Lo(i,o.dir==lt.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(lk)||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>gP)return Kx(e.length);let t=this.textDirectionAt(e.from),i;for(let r of this.bidiCache)if(r.from==e.from&&r.dir==t&&(r.fresh||Hx(r.isolates,i=X0(this,e))))return r.order;i||(i=X0(this,e));let s=u$(e.text,t,i);return this.bidiCache.push(new nu(e.from,e.to,t,i,!0,s)),s}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||ke.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{Mx(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 dc.of(new Yr(typeof e=="number"?ne.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,i=this.viewState.scrollAnchorAt(e);return dc.of(new Yr(ne.cursor(i.from),"start","start",i.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 vt.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return vt.define(()=>({}),{eventObservers:e})}static theme(e,t){let i=Ss.newName(),s=[Oc.of(i),oo.of(tp(`.${i}`,e))];return t&&t.dark&&s.push(Jf.of(!0)),s}static baseTheme(e){return Ps.lowest(oo.of(tp("."+ep,e,Ck)))}static findFromDOM(e){var t;let i=e.querySelector(".cm-content"),s=i&&tt.get(i)||tt.get(e);return((t=s?.rootView)===null||t===void 0?void 0:t.view)||null}}Oe.styleModule=oo;Oe.inputHandler=sk;Oe.clipboardInputFilter=Dp;Oe.clipboardOutputFilter=Lp;Oe.scrollHandler=ak;Oe.focusChangeEffect=rk;Oe.perLineTextDirection=lk;Oe.exceptionSink=ik;Oe.updateListener=Uf;Oe.editable=Zi;Oe.mouseSelectionStyle=nk;Oe.dragMovesSelection=tk;Oe.clickAddsSelectionRange=ek;Oe.decorations=$o;Oe.outerDecorations=dk;Oe.atomicRanges=Tu;Oe.bidiIsolatedRanges=hk;Oe.scrollMargins=fk;Oe.darkTheme=Jf;Oe.cspNonce=Se.define({combine:n=>n.length?n[0]:""});Oe.contentAttributes=Ip;Oe.editorAttributes=uk;Oe.lineWrapping=Oe.contentAttributes.of({class:"cm-lineWrapping"});Oe.announce=Me.define();const gP=4096,hv={};class nu{constructor(e,t,i,s,r,o){this.from=e,this.to=t,this.dir=i,this.isolates=s,this.fresh=r,this.order=o}static update(e,t){if(t.empty&&!e.some(r=>r.fresh))return e;let i=[],s=e.length?e[e.length-1].dir:lt.LTR;for(let r=Math.max(0,e.length-10);r<e.length;r++){let o=e[r];o.dir==s&&!t.touchesRange(o.from,o.to)&&i.push(new nu(t.mapPos(o.from,1),t.mapPos(o.to,-1),o.dir,o.isolates,!1,o.order))}return i}}function fv(n,e,t){for(let i=n.state.facet(e),s=i.length-1;s>=0;s--){let r=i[s],o=typeof r=="function"?r(n):r;o&&zf(o,t)}return t}const OP=ke.mac?"mac":ke.windows?"win":ke.linux?"linux":"key";function vP(n,e){const t=n.split(/-(?!$)/);let i=t[t.length-1];i=="Space"&&(i=" ");let s,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))s=!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 s&&(i="Alt-"+i),r&&(i="Ctrl-"+i),c&&(i="Meta-"+i),o&&(i="Shift-"+i),i}function vc(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 yP=Ps.default(Oe.domEventHandlers({keydown(n,e){return Tk(jk(e.state),n,e,"editor")}})),Fo=Se.define({enables:yP}),pv=new WeakMap;function jk(n){let e=n.facet(Fo),t=pv.get(e);return t||pv.set(e,t=SP(e.reduce((i,s)=>i.concat(s),[]))),t}function xP(n,e,t){return Tk(jk(n.state),e,n,t)}let ms=null;const kP=4e3;function SP(n,e=OP){let t=Object.create(null),i=Object.create(null),s=(o,c)=>{let u=i[o];if(u==null)i[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(C=>vP(C,e));for(let C=1;C<k.length;C++){let S=k.slice(0,C).join(" ");s(S,!0),x[S]||(x[S]={preventDefault:!0,stopPropagation:!1,run:[Q=>{let P=ms={view:Q,prefix:S,scope:o};return setTimeout(()=>{ms==P&&(ms=null)},kP),!0}]})}let w=k.join(" ");s(w,!1);let b=x[w]||(x[w]={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&&b.run.push(u),f&&(b.preventDefault=!0),p&&(b.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,np))}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 np=null;function Tk(n,e,t,i){np=e;let s=B_(e),r=mn(s,0),o=gi(r)==s.length&&s!=" ",c="",u=!1,f=!1,p=!1;ms&&ms.view==t&&ms.scope==i&&(c=ms.prefix+" ",yk.indexOf(e.keyCode)<0&&(f=!0,ms=null));let g=new Set,O=b=>{if(b){for(let C of b.run)if(!g.has(C)&&(g.add(C),C(t)))return b.stopPropagation&&(p=!0),!0;b.preventDefault&&(b.stopPropagation&&(p=!0),f=!0)}return!1},x=n[i],k,w;return x&&(O(x[c+vc(s,e,!o)])?u=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(ke.windows&&e.ctrlKey&&e.altKey)&&!(ke.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(k=ws[e.keyCode])&&k!=s?(O(x[c+vc(k,e,!0)])||e.shiftKey&&(w=bo[e.keyCode])!=s&&w!=k&&O(x[c+vc(w,e,!1)]))&&(u=!0):o&&e.shiftKey&&O(x[c+vc(s,e,!0)])&&(u=!0),!u&&O(x._any)&&(u=!0)),f&&(u=!0),u&&p&&e.stopPropagation(),np=null,u}class Xo{constructor(e,t,i,s,r){this.className=e,this.left=t,this.top=i,this.width=s,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,i){if(i.empty){let s=e.coordsAtPos(i.head,i.assoc||1);if(!s)return[];let r=Nk(e);return[new Xo(t,s.left-r.left,s.top-r.top,null,s.bottom-s.top)]}else return wP(e,t,i)}}function Nk(n){let e=n.scrollDOM.getBoundingClientRect();return{left:(n.textDirection==lt.LTR?e.left:e.right-n.scrollDOM.clientWidth*n.scaleX)-n.scrollDOM.scrollLeft*n.scaleX,top:e.top-n.scrollDOM.scrollTop*n.scaleY}}function mv(n,e,t,i){let s=n.coordsAtPos(e,t*2);if(!s)return i;let r=n.dom.getBoundingClientRect(),o=(s.top+s.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?i:{from:Math.max(i.from,Math.min(c,u)),to:Math.min(i.to,Math.max(c,u))}}function wP(n,e,t){if(t.to<=n.viewport.from||t.from>=n.viewport.to)return[];let i=Math.max(t.from,n.viewport.from),s=Math.min(t.to,n.viewport.to),r=n.textDirection==lt.LTR,o=n.contentDOM,c=o.getBoundingClientRect(),u=Nk(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=Hf(n,i,1),k=Hf(n,s,-1),w=x.type==nn.Text?x:null,b=k.type==nn.Text?k:null;if(w&&(n.lineWrapping||x.widgetLineBreaks)&&(w=mv(n,i,1,w)),b&&(n.lineWrapping||k.widgetLineBreaks)&&(b=mv(n,s,-1,b)),w&&b&&w.from==b.from&&w.to==b.to)return S(Q(t.from,t.to,w));{let _=w?Q(t.from,null,w):P(x,!1),T=b?Q(null,t.to,b):P(k,!0),A=[];return(w||x).to<(b||k).from-(w&&b?1:0)||x.widgetLineBreaks>1&&_.bottom+n.defaultLineHeight/2<T.top?A.push(C(g,_.bottom,O,T.top)):_.bottom<T.top&&n.elementAtHeight((_.bottom+T.top)/2).type==nn.Text&&(_.bottom=T.top=(_.bottom+T.top)/2),S(_).concat(A).concat(S(T))}function C(_,T,A,J){return new Xo(e,_-u.left,T-u.top,A-_,J-T)}function S({top:_,bottom:T,horizontal:A}){let J=[];for(let z=0;z<A.length;z+=2)J.push(C(A[z],_,A[z+1],T));return J}function Q(_,T,A){let J=1e9,z=-1e9,G=[];function H(q,ue,ve,de,X){let L=n.coordsAtPos(q,q==A.to?-2:2),N=n.coordsAtPos(ve,ve==A.from?2:-2);!L||!N||(J=Math.min(L.top,N.top,J),z=Math.max(L.bottom,N.bottom,z),X==lt.LTR?G.push(r&&ue?g:L.left,r&&de?O:N.right):G.push(!r&&de?g:N.left,!r&&ue?O:L.right))}let D=_??A.from,ee=T??A.to;for(let q of n.visibleRanges)if(q.to>D&&q.from<ee)for(let ue=Math.max(q.from,D),ve=Math.min(q.to,ee);;){let de=n.state.doc.lineAt(ue);for(let X of n.bidiSpans(de)){let L=X.from+de.from,N=X.to+de.from;if(L>=ve)break;N>ue&&H(Math.max(L,ue),_==null&&L<=D,Math.min(N,ve),T==null&&N>=ee,X.dir)}if(ue=de.to+1,ue>=ve)break}return G.length==0&&H(D,_==null,ee,T==null,n.textDirection),{top:J,bottom:z,horizontal:G}}function P(_,T){let A=c.top+(T?_.top:_.bottom);return{top:A,bottom:A,horizontal:[]}}}function bP(n,e){return n.constructor==e.constructor&&n.eq(e)}class _P{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(Ic)!=e.state.facet(Ic)&&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,i=e.facet(Ic);for(;t<i.length&&i[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,i)=>!bP(t,this.drawn[i]))){let t=this.dom.firstChild,i=0;for(let s of e)s.update&&t&&s.constructor&&this.drawn[i].constructor&&s.update(t,this.drawn[i])?(t=t.nextSibling,i++):this.dom.insertBefore(s.draw(),t);for(;t;){let s=t.nextSibling;t.remove(),t=s}this.drawn=e}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const Ic=Se.define();function Ek(n){return[vt.define(e=>new _P(e,n)),Ic.of(n)]}const Po=Se.define({combine(n){return _i(n,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function $P(n={}){return[Po.of(n),PP,QP,CP,ok.of(!0)]}function Ak(n){return n.startState.facet(Po)!=n.state.facet(Po)}const PP=Ek({above:!0,markers(n){let{state:e}=n,t=e.facet(Po),i=[];for(let s of e.selection.ranges){let r=s==e.selection.main;if(s.empty||t.drawRangeCursor){let o=r?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",c=s.empty?s:ne.cursor(s.head,s.head>s.anchor?-1:1);for(let u of Xo.forRange(n,o,c))i.push(u)}}return i},update(n,e){n.transactions.some(i=>i.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=Ak(n);return t&&gv(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){gv(e.state,n)},class:"cm-cursorLayer"});function gv(n,e){e.style.animationDuration=n.facet(Po).cursorBlinkRate+"ms"}const QP=Ek({above:!1,markers(n){return n.state.selection.ranges.map(e=>e.empty?[]:Xo.forRange(n,"cm-selectionBackground",e)).reduce((e,t)=>e.concat(t))},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||Ak(n)},class:"cm-selectionLayer"}),CP=Ps.highest(Oe.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"}}}})),Mk=Me.define({map(n,e){return n==null?null:e.mapPos(n)}}),uo=Dt.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,i)=>i.is(Mk)?i.value:t,n)}}),jP=vt.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(uo);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(uo)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:n}=this,e=n.state.field(uo),t=e!=null&&n.coordsAtPos(e);if(!t)return null;let i=n.scrollDOM.getBoundingClientRect();return{left:t.left-i.left+n.scrollDOM.scrollLeft*n.scaleX,top:t.top-i.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(uo)!=n&&this.view.dispatch({effects:Mk.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 TP(){return[uo,jP]}function Ov(n,e,t,i,s){e.lastIndex=0;for(let r=n.iterRange(t,i),o=t,c;!r.next().done;o+=r.value.length)if(!r.lineBreak)for(;c=e.exec(r.value);)s(o+c.index,c)}function NP(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 i=[];for(let{from:s,to:r}of t)s=Math.max(n.state.doc.lineAt(s).from,s-e),r=Math.min(n.state.doc.lineAt(r).to,r+e),i.length&&i[i.length-1].to>=s?i[i.length-1].to=r:i.push({from:s,to:r});return i}class EP{constructor(e){const{regexp:t,decoration:i,decorate:s,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,s)this.addMatch=(c,u,f,p)=>s(p,f,f+c[0].length,c,u);else if(typeof i=="function")this.addMatch=(c,u,f,p)=>{let g=i(c,u,f);g&&p(f,f+c[0].length,g)};else if(i)this.addMatch=(c,u,f,p)=>p(f,f+c[0].length,i);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=r,this.maxLength=o}createDeco(e){let t=new Bi,i=t.add.bind(t);for(let{from:s,to:r}of NP(e,this.maxLength))Ov(e.state.doc,this.regexp,s,r,(o,c)=>this.addMatch(c,e,o,i));return t.finish()}updateDeco(e,t){let i=1e9,s=-1;return e.docChanged&&e.changes.iterChanges((r,o,c,u)=>{u>=e.view.viewport.from&&c<=e.view.viewport.to&&(i=Math.min(c,i),s=Math.max(u,s))}),e.viewportMoved||s-i>1e3?this.createDeco(e.view):s>-1?this.updateRange(e.view,t.map(e.changes),i,s):t}updateRange(e,t,i,s){for(let r of e.visibleRanges){let o=Math.max(r.from,i),c=Math.min(r.to,s);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=(w,b,C)=>O.push(C.range(w,b));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 Ov(e.state.doc,this.regexp,p,g,(w,b)=>this.addMatch(b,e,w,k));t=t.update({filterFrom:p,filterTo:g,filter:(w,b)=>w<p||b>g,add:O})}}return t}}const ip=/x/.unicode!=null?"gu":"g",AP=new RegExp(`[\0-\b
54
- --Ÿ­؜​‎‏\u2028\u2029‭‮⁦⁧⁩\uFEFF-]`,ip),MP={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 qh=null;function RP(){var n;if(qh==null&&typeof document<"u"&&document.body){let e=document.body.style;qh=((n=e.tabSize)!==null&&n!==void 0?n:e.MozTabSize)!=null}return qh||!1}const Zc=Se.define({combine(n){let e=_i(n,{render:null,specialChars:AP,addSpecialChars:null});return(e.replaceTabs=!RP())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,ip)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,ip)),e}});function DP(n={}){return[Zc.of(n),LP()]}let vv=null;function LP(){return vv||(vv=vt.fromClass(class{constructor(n){this.view=n,this.decorations=je.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(n.state.facet(Zc)),this.decorations=this.decorator.createDeco(n)}makeDecorator(n){return new EP({regexp:n.specialChars,decoration:(e,t,i)=>{let{doc:s}=t.state,r=mn(e[0],0);if(r==9){let o=s.lineAt(i),c=t.state.tabSize,u=rl(o.text,c,i-o.from);return je.replace({widget:new XP((c-u%c)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[r]||(this.decorationCache[r]=je.replace({widget:new FP(n,r)}))},boundary:n.replaceTabs?void 0:/[^]/})}update(n){let e=n.state.facet(Zc);n.startState.facet(Zc)!=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 IP="•";function ZP(n){return n>=32?IP:n==10?"␤":String.fromCharCode(9216+n)}class FP extends $i{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=ZP(this.code),i=e.state.phrase("Control character")+" "+(MP[this.code]||"0x"+this.code.toString(16)),s=this.options.render&&this.options.render(this.code,i,t);if(s)return s;let r=document.createElement("span");return r.textContent=t,r.title=i,r.setAttribute("aria-label",i),r.className="cm-specialChar",r}ignoreEvent(){return!1}}class XP extends $i{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 zP(){return VP}const BP=je.line({class:"cm-activeLine"}),VP=vt.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 i of n.state.selection.ranges){let s=n.lineBlockAt(i.head);s.from>e&&(t.push(BP.range(s.from)),e=s.from)}return je.set(t)}},{decorations:n=>n.decorations});class qP extends $i{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?Kr(e.firstChild):[];if(!t.length)return null;let i=window.getComputedStyle(e.parentNode),s=Lo(t[0],i.direction!="rtl"),r=parseInt(i.lineHeight);return s.bottom-s.top>r*1.5?{left:s.left,right:s.right,top:s.top,bottom:s.top+r}:s}ignoreEvent(){return!1}}function YP(n){let e=vt.fromClass(class{constructor(t){this.view=t,this.placeholder=n?je.set([je.widget({widget:new qP(n),side:1}).range(0)]):je.none}get decorations(){return this.view.state.doc.length?je.none:this.placeholder}},{decorations:t=>t.decorations});return typeof n=="string"?[e,Oe.contentAttributes.of({"aria-placeholder":n})]:e}const sp=2e3;function WP(n,e,t){let i=Math.min(e.line,t.line),s=Math.max(e.line,t.line),r=[];if(e.off>sp||t.off>sp||e.col<0||t.col<0){let o=Math.min(e.off,t.off),c=Math.max(e.off,t.off);for(let u=i;u<=s;u++){let f=n.doc.line(u);f.length<=c&&r.push(ne.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=i;u<=s;u++){let f=n.doc.line(u),p=Rf(f.text,o,n.tabSize,!0);if(p<0)r.push(ne.cursor(f.to));else{let g=Rf(f.text,c,n.tabSize);r.push(ne.range(f.from+p,f.from+g))}}}return r}function UP(n,e){let t=n.coordsAtPos(n.viewport.from);return t?Math.round(Math.abs((t.left-e)/n.defaultCharacterWidth)):-1}function yv(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1),i=n.state.doc.lineAt(t),s=t-i.from,r=s>sp?-1:s==i.length?UP(n,e.clientX):rl(i.text,n.state.tabSize,t-i.from);return{line:i.number,col:r,off:s}}function GP(n,e){let t=yv(n,e),i=n.state.selection;return t?{update(s){if(s.docChanged){let r=s.changes.mapPos(s.startState.doc.line(t.line).from),o=s.state.doc.lineAt(r);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},i=i.map(s.changes)}},get(s,r,o){let c=yv(n,s);if(!c)return i;let u=WP(n.state,t,c);return u.length?o?ne.create(u.concat(i.ranges)):ne.create(u):i}}:null}function HP(n){let e=(t=>t.altKey&&t.button==0);return Oe.mouseSelectionStyle.of((t,i)=>e(i)?GP(t,i):null)}const KP={Alt:[18,n=>!!n.altKey],Control:[17,n=>!!n.ctrlKey],Shift:[16,n=>!!n.shiftKey],Meta:[91,n=>!!n.metaKey]},JP={style:"cursor: crosshair"};function eQ(n={}){let[e,t]=KP[n.key||"Alt"],i=vt.fromClass(class{constructor(s){this.view=s,this.isDown=!1}set(s){this.isDown!=s&&(this.isDown=s,this.view.update([]))}},{eventObservers:{keydown(s){this.set(s.keyCode==e||t(s))},keyup(s){(s.keyCode==e||!t(s))&&this.set(!1)},mousemove(s){this.set(t(s))}}});return[i,Oe.contentAttributes.of(s=>{var r;return!((r=s.plugin(i))===null||r===void 0)&&r.isDown?JP:null})]}const Hl="-10000px";class Rk{constructor(e,t,i,s){this.facet=t,this.createTooltipView=i,this.removeTooltipView=s,this.input=e.state.facet(t),this.tooltips=this.input.filter(o=>o);let r=null;this.tooltipViews=this.tooltips.map(o=>r=i(o,r))}update(e,t){var i;let s=e.state.facet(this.facet),r=s.filter(u=>u);if(s===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),(i=u.destroy)===null||i===void 0||i.call(u));return t&&(c.forEach((u,f)=>t[f]=u),t.length=c.length),this.input=s,this.tooltips=r,this.tooltipViews=o,!0}}function tQ(n){let e=n.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}const Yh=Se.define({combine:n=>{var e,t,i;return{position:ke.ios?"absolute":((e=n.find(s=>s.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((t=n.find(s=>s.parent))===null||t===void 0?void 0:t.parent)||null,tooltipSpace:((i=n.find(s=>s.tooltipSpace))===null||i===void 0?void 0:i.tooltipSpace)||tQ}}}),xv=new WeakMap,Bp=vt.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(Yh);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 Rk(n,Vp,(t,i)=>this.createTooltip(t,i),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,i=n.state.facet(Yh);if(i.position!=this.position&&!this.madeAbsolute){this.position=i.position;for(let s of this.manager.tooltipViews)s.dom.style.position=this.position;t=!0}if(i.parent!=this.parent){this.parent&&this.container.remove(),this.parent=i.parent,this.createContainer();for(let s of this.manager.tooltipViews)this.container.appendChild(s.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),i=e?e.dom:null;if(t.dom.classList.add("cm-tooltip"),n.arrow&&!t.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let s=document.createElement("div");s.className="cm-tooltip-arrow",t.dom.appendChild(s)}return t.dom.style.position=this.position,t.dom.style.top=Hl,t.dom.style.left="0px",this.container.insertBefore(t.dom,i),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 i of this.manager.tooltipViews)i.dom.remove(),(n=i.destroy)===null||n===void 0||n.call(i);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(ke.gecko)t=r.offsetParent!=this.container.ownerDocument.body;else if(r.style.top==Hl&&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 i=this.view.scrollDOM.getBoundingClientRect(),s=Zp(this.view);return{visible:{left:i.left+s.left,top:i.top+s.top,right:i.right-s.right,bottom:i.bottom-s.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(Yh).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:i,scaleX:s,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,i.top)||g.top>=Math.min(t.bottom,i.bottom)||g.right<Math.max(t.left,i.left)-.1||g.left>Math.min(t.right,i.right)+.1)){p.style.top=Hl;continue}let x=u.arrow?f.dom.querySelector(".cm-tooltip-arrow"):null,k=x?7:0,w=O.right-O.left,b=(e=xv.get(f))!==null&&e!==void 0?e:O.bottom-O.top,C=f.offset||iQ,S=this.view.textDirection==lt.LTR,Q=O.width>i.right-i.left?S?i.left:i.right-O.width:S?Math.max(i.left,Math.min(g.left-(x?14:0)+C.x,i.right-w)):Math.min(Math.max(i.left,g.left-w+(x?14:0)-C.x),i.right-w),P=this.above[c];!u.strictSide&&(P?g.top-b-k-C.y<i.top:g.bottom+b+k+C.y>i.bottom)&&P==i.bottom-g.bottom>g.top-i.top&&(P=this.above[c]=!P);let _=(P?g.top-i.top:i.bottom-g.bottom)-k;if(_<b&&f.resize!==!1){if(_<this.view.defaultLineHeight){p.style.top=Hl;continue}xv.set(f,b),p.style.height=(b=_)/r+"px"}else p.style.height&&(p.style.height="");let T=P?g.top-b-k-C.y:g.bottom+k+C.y,A=Q+w;if(f.overlap!==!0)for(let J of o)J.left<A&&J.right>Q&&J.top<T+b&&J.bottom>T&&(T=P?J.top-b-2-k:J.bottom+k+2);if(this.position=="absolute"?(p.style.top=(T-n.parent.top)/r+"px",kv(p,(Q-n.parent.left)/s)):(p.style.top=T/r+"px",kv(p,Q/s)),x){let J=g.left+(S?C.x:-C.x)-(Q+14-7);x.style.left=J/s+"px"}f.overlap!==!0&&o.push({left:Q,top:T,right:A,bottom:T+b}),p.classList.toggle("cm-tooltip-above",P),p.classList.toggle("cm-tooltip-below",!P),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=Hl}},{eventObservers:{scroll(){this.maybeMeasure()}}});function kv(n,e){let t=parseInt(n.style.left,10);(isNaN(t)||Math.abs(e-t)>1)&&(n.style.left=e+"px")}const nQ=Oe.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"}}}),iQ={x:0,y:0},Vp=Se.define({enables:[Bp,nQ]}),iu=Se.define({combine:n=>n.reduce((e,t)=>e.concat(t),[])});class Eu{static create(e){return new Eu(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new Rk(e,iu,(t,i)=>this.createHostedView(t,i),t=>t.dom.remove())}createHostedView(e,t){let i=e.create(this.view);return i.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(i.dom,t?t.dom.nextSibling:this.dom.firstChild),this.mounted&&i.mount&&i.mount(this.view),i}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 i of this.manager.tooltipViews){let s=i[e];if(s!==void 0){if(t===void 0)t=s;else if(t!==s)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 sQ=Vp.compute([iu],n=>{let e=n.facet(iu);return e.length===0?null:{pos:Math.min(...e.map(t=>t.pos)),end:Math.max(...e.map(t=>{var i;return(i=t.end)!==null&&i!==void 0?i:t.pos})),create:Eu.create,above:e[0].above,arrow:e.some(t=>t.arrow)}});class rQ{constructor(e,t,i,s,r){this.view=e,this.source=t,this.field=i,this.setHover=s,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,i=e.docView.nearest(t.target);if(!i)return;let s,r=1;if(i instanceof vs)s=i.posAtStart;else{if(s=e.posAtCoords(t),s==null)return;let c=e.coordsAtPos(s);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(s)).find(p=>p.from<=s&&p.to>=s),f=u&&u.dir==lt.RTL?-1:1;r=t.x<c.left?-f:f}let o=this.source(e,s,r);if(o?.then){let c=this.pending={pos:s};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=>vn(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(Bp),t=e?e.manager.tooltips.findIndex(i=>i.create==Eu.create):-1;return t>-1?e.manager.tooltipViews[t]:null}mousemove(e){var t,i;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:s,tooltip:r}=this;if(s.length&&r&&!lQ(r.dom,e)||this.pending){let{pos:o}=s[0]||this.pending,c=(i=(t=s[0])===null||t===void 0?void 0:t.end)!==null&&i!==void 0?i:o;(o==c?this.view.posAtCoords(this.lastMove)!=o:!oQ(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:i}=this;i&&i.dom.contains(e.relatedTarget)?this.watchTooltipLeave(i.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(e){let t=i=>{e.removeEventListener("mouseleave",t),this.active.length&&!this.view.dom.contains(i.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 yc=4;function lQ(n,e){let{left:t,right:i,top:s,bottom:r}=n.getBoundingClientRect(),o;if(o=n.querySelector(".cm-tooltip-arrow")){let c=o.getBoundingClientRect();s=Math.min(c.top,s),r=Math.max(c.bottom,r)}return e.clientX>=t-yc&&e.clientX<=i+yc&&e.clientY>=s-yc&&e.clientY<=r+yc}function oQ(n,e,t,i,s,r){let o=n.scrollDOM.getBoundingClientRect(),c=n.documentTop+n.documentPadding.top+n.contentHeight;if(o.left>i||o.right<i||o.top>s||Math.min(o.bottom,c)<s)return!1;let u=n.posAtCoords({x:i,y:s},!1);return u>=e&&u<=t}function aQ(n,e={}){let t=Me.define(),i=Dt.define({create(){return[]},update(s,r){if(s.length&&(e.hideOnChange&&(r.docChanged||r.selection)?s=[]:e.hideOn&&(s=s.filter(o=>!e.hideOn(r,o))),r.docChanged)){let o=[];for(let c of s){let u=r.changes.mapPos(c.pos,-1,Xt.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)}}s=o}for(let o of r.effects)o.is(t)&&(s=o.value),o.is(cQ)&&(s=[]);return s},provide:s=>iu.from(s)});return{active:i,extension:[i,vt.define(s=>new rQ(s,n,i,t,e.hoverTime||300)),sQ]}}function Dk(n,e){let t=n.plugin(Bp);if(!t)return null;let i=t.manager.tooltips.indexOf(e);return i<0?null:t.manager.tooltipViews[i]}const cQ=Me.define(),Sv=Se.define({combine(n){let e,t;for(let i of n)e=e||i.topContainer,t=t||i.bottomContainer;return{topContainer:e,bottomContainer:t}}});function Qo(n,e){let t=n.plugin(Lk),i=t?t.specs.indexOf(e):-1;return i>-1?t.panels[i]:null}const Lk=vt.fromClass(class{constructor(n){this.input=n.state.facet(Co),this.specs=this.input.filter(t=>t),this.panels=this.specs.map(t=>t(n));let e=n.state.facet(Sv);this.top=new xc(n,!0,e.topContainer),this.bottom=new xc(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(Sv);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new xc(n.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new xc(n.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let t=n.state.facet(Co);if(t!=this.input){let i=t.filter(u=>u),s=[],r=[],o=[],c=[];for(let u of i){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)),s.push(p),(p.top?r:o).push(p)}this.specs=i,this.panels=s,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 i of this.panels)i.update&&i.update(n)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:n=>Oe.scrollMargins.of(e=>{let t=e.plugin(n);return t&&{top:t.top.scrollMargin(),bottom:t.bottom.scrollMargin()}})});class xc{constructor(e,t,i){this.view=e,this.top=t,this.container=i,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=wv(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=wv(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 wv(n){let e=n.nextSibling;return n.remove(),e}const Co=Se.define({enables:Lk});class qi extends Ks{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}qi.prototype.elementClass="";qi.prototype.toDOM=void 0;qi.prototype.mapMode=Xt.TrackBefore;qi.prototype.startSide=qi.prototype.endSide=-1;qi.prototype.point=!0;const Fc=Se.define(),uQ=Se.define(),dQ={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>qe.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},Oo=Se.define();function hQ(n){return[Ik(),Oo.of({...dQ,...n})]}const bv=Se.define({combine:n=>n.some(e=>e)});function Ik(n){return[fQ]}const fQ=vt.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(Oo).map(e=>new $v(n,e)),this.fixed=!n.state.facet(bv);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,i=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(i<(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(bv)!=!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=qe.iter(this.view.state.facet(Fc),this.view.viewport.from),i=[],s=this.gutters.map(r=>new pQ(r,this.view.viewport,-this.view.documentPadding.top));for(let r of this.view.viewportLineBlocks)if(i.length&&(i=[]),Array.isArray(r.type)){let o=!0;for(let c of r.type)if(c.type==nn.Text&&o){rp(t,i,c.from);for(let u of s)u.line(this.view,c,i);o=!1}else if(c.widget)for(let u of s)u.widget(this.view,c)}else if(r.type==nn.Text){rp(t,i,r.from);for(let o of s)o.line(this.view,r,i)}else if(r.widget)for(let o of s)o.widget(this.view,r);for(let r of s)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(Oo),t=n.state.facet(Oo),i=n.docChanged||n.heightChanged||n.viewportChanged||!qe.eq(n.startState.facet(Fc),n.state.facet(Fc),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let s of this.gutters)s.update(n)&&(i=!0);else{i=!0;let s=[];for(let r of t){let o=e.indexOf(r);o<0?s.push(new $v(this.view,r)):(this.gutters[o].update(n),s.push(this.gutters[o]))}for(let r of this.gutters)r.dom.remove(),s.indexOf(r)<0&&r.destroy();for(let r of s)r.config.side=="after"?this.getDOMAfter().appendChild(r.dom):this.dom.appendChild(r.dom);this.gutters=s}return i}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:n=>Oe.scrollMargins.of(e=>{let t=e.plugin(n);if(!t||t.gutters.length==0||!t.fixed)return null;let i=t.dom.offsetWidth*e.scaleX,s=t.domAfter?t.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==lt.LTR?{left:i,right:s}:{right:i,left:s}})});function _v(n){return Array.isArray(n)?n:[n]}function rp(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}class pQ{constructor(e,t,i){this.gutter=e,this.height=i,this.i=0,this.cursor=qe.iter(e.markers,t.from)}addElement(e,t,i){let{gutter:s}=this,r=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==s.elements.length){let c=new Zk(e,o,r,i);s.elements.push(c),s.dom.appendChild(c.dom)}else s.elements[this.i].update(e,o,r,i);this.height=t.bottom,this.i++}line(e,t,i){let s=[];rp(this.cursor,s,t.from),i.length&&(s=s.concat(i));let r=this.gutter.config.lineMarker(e,t,s);r&&s.unshift(r);let o=this.gutter;s.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,s)}widget(e,t){let i=this.gutter.config.widgetMarker(e,t.widget,t),s=i?[i]:null;for(let r of e.state.facet(uQ)){let o=r(e,t.widget,t);o&&(s||(s=[])).push(o)}s&&this.addElement(e,t,s)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class $v{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 i in t.domEventHandlers)this.dom.addEventListener(i,s=>{let r=s.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=s.clientY;let c=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[i](e,c,s)&&s.preventDefault()});this.markers=_v(t.markers(e)),t.initialSpacer&&(this.spacer=new Zk(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=_v(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let s=this.config.updateSpacer(this.spacer.markers[0],e);s!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[s])}let i=e.view.viewport;return!qe.eq(this.markers,t,i.from,i.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class Zk{constructor(e,t,i,s){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,i,s)}update(e,t,i,s){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=i&&(this.dom.style.marginTop=(this.above=i)?i+"px":""),mQ(this.markers,s)||this.setMarkers(e,s)}setMarkers(e,t){let i="cm-gutterElement",s=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&&(i+=" "+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(s);let g=s.nextSibling;s.remove(),s=g}}if(!u)break;u.toDOM&&(f?s=s.nextSibling:this.dom.insertBefore(u.toDOM(e),s)),f&&o++}this.dom.className=i,this.markers=t}destroy(){this.setMarkers(null,[])}}function mQ(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 gQ=Se.define(),OQ=Se.define(),Xr=Se.define({combine(n){return _i(n,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let i=Object.assign({},e);for(let s in t){let r=i[s],o=t[s];i[s]=r?(c,u,f)=>r(c,u,f)||o(c,u,f):o}return i}})}});class Wh extends qi{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function Uh(n,e){return n.state.facet(Xr).formatNumber(e,n.state)}const vQ=Oo.compute([Xr],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(gQ)},lineMarker(e,t,i){return i.some(s=>s.toDOM)?null:new Wh(Uh(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,i)=>{for(let s of e.state.facet(OQ)){let r=s(e,t,i);if(r)return r}return null},lineMarkerChange:e=>e.startState.facet(Xr)!=e.state.facet(Xr),initialSpacer(e){return new Wh(Uh(e,Pv(e.state.doc.lines)))},updateSpacer(e,t){let i=Uh(t.view,Pv(t.view.state.doc.lines));return i==e.number?e:new Wh(i)},domEventHandlers:n.facet(Xr).domEventHandlers,side:"before"}));function yQ(n={}){return[Xr.of(n),Ik(),vQ]}function Pv(n){let e=9;for(;e<n;)e=e*10+9;return e}const xQ=new class extends qi{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},kQ=Fc.compute(["selection"],n=>{let e=[],t=-1;for(let i of n.selection.ranges){let s=n.doc.lineAt(i.head).from;s>t&&(t=s,e.push(xQ.range(s)))}return qe.of(e)});function SQ(){return kQ}const Fk=1024;let wQ=0;class Gh{constructor(e,t){this.from=e,this.to=t}}class Ie{constructor(e={}){this.id=wQ++,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=kn.match(e)),t=>{let i=e(t);return i===void 0?null:[this,i]}}}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 su{constructor(e,t,i){this.tree=e,this.overlay=t,this.parser=i}static get(e){return e&&e.props&&e.props[Ie.mounted.id]}}const bQ=Object.create(null);class kn{constructor(e,t,i,s=0){this.name=e,this.props=t,this.id=i,this.flags=s}static define(e){let t=e.props&&e.props.length?Object.create(null):bQ,i=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),s=new kn(e.name||"",t,e.id,i);if(e.props){for(let r of e.props)if(Array.isArray(r)||(r=r(s)),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 s}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 i in e)for(let s of i.split(" "))t[s]=e[i];return i=>{for(let s=i.prop(Ie.group),r=-1;r<(s?s.length:0);r++){let o=t[r<0?i.name:s[r]];if(o)return o}}}}kn.none=new kn("",Object.create(null),0,8);class qp{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 i of this.types){let s=null;for(let r of e){let o=r(i);o&&(s||(s=Object.assign({},i.props)),s[o[0].id]=o[1])}t.push(s?new kn(i.name,s,i.id,i.flags):i)}return new qp(t)}}const kc=new WeakMap,Qv=new WeakMap;var Qt;(function(n){n[n.ExcludeBuffers=1]="ExcludeBuffers",n[n.IncludeAnonymous=2]="IncludeAnonymous",n[n.IgnoreMounts=4]="IgnoreMounts",n[n.IgnoreOverlays=8]="IgnoreOverlays"})(Qt||(Qt={}));class bt{constructor(e,t,i,s,r){if(this.type=e,this.children=t,this.positions=i,this.length=s,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=su.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let i of this.children){let s=i.toString();s&&(t&&(t+=","),t+=s)}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 op(this.topNode,e)}cursorAt(e,t=0,i=0){let s=kc.get(this)||this.topNode,r=new op(s);return r.moveTo(e,t),kc.set(this,r._tree),r}get topNode(){return new xn(this,0,0,null)}resolve(e,t=0){let i=jo(kc.get(this)||this.topNode,e,t,!1);return kc.set(this,i),i}resolveInner(e,t=0){let i=jo(Qv.get(this)||this.topNode,e,t,!0);return Qv.set(this,i),i}resolveStack(e,t=0){return PQ(this,e,t)}iterate(e){let{enter:t,leave:i,from:s=0,to:r=this.length}=e,o=e.mode||0,c=(o&Qt.IncludeAnonymous)>0;for(let u=this.cursor(o|Qt.IncludeAnonymous);;){let f=!1;if(u.from<=r&&u.to>=s&&(!c&&u.type.isAnonymous||t(u)!==!1)){if(u.firstChild())continue;f=!0}for(;f&&i&&(c||!u.type.isAnonymous)&&i(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:Up(kn.none,this.children,this.positions,0,this.children.length,0,this.length,(t,i,s)=>new bt(this.type,t,i,s,this.propValues),e.makeTree||((t,i,s)=>new bt(kn.none,t,i,s)))}static build(e){return QQ(e)}}bt.empty=new bt(kn.none,[],[],0);class Yp{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 Yp(this.buffer,this.index)}}class _s{constructor(e,t,i){this.buffer=e,this.length=t,this.set=i}get type(){return kn.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],i=this.buffer[e+3],s=this.set.types[t],r=s.name;if(/\W/.test(r)&&!s.isError&&(r=JSON.stringify(r)),e+=4,i==e)return r;let o=[];for(;e<i;)o.push(this.childString(e)),e=this.buffer[e+3];return r+"("+o.join(",")+")"}findChild(e,t,i,s,r){let{buffer:o}=this,c=-1;for(let u=e;u!=t&&!(Xk(r,s,o[u+1],o[u+2])&&(c=u,i>0));u=o[u+3]);return c}slice(e,t,i){let s=this.buffer,r=new Uint16Array(t-e),o=0;for(let c=e,u=0;c<t;){r[u++]=s[c++],r[u++]=s[c++]-i;let f=r[u++]=s[c++]-i;r[u++]=s[c++]-e,o=Math.max(o,f)}return new _s(r,o,this.set)}}function Xk(n,e,t,i){switch(n){case-2:return t<e;case-1:return i>=e&&t<e;case 0:return t<e&&i>e;case 1:return t<=e&&i>e;case 2:return i>e;case 4:return!0}}function jo(n,e,t,i){for(var s;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to<e);){let o=!i&&n instanceof xn&&n.index<0?null:n.parent;if(!o)return n;n=o}let r=i?0:Qt.IgnoreOverlays;if(i)for(let o=n,c=o.parent;c;o=c,c=o.parent)o instanceof xn&&o.index<0&&((s=c.enter(e,t,r))===null||s===void 0?void 0:s.from)!=o.from&&(n=c);for(;;){let o=n.enter(e,t,r);if(!o)return n;n=o}}class zk{cursor(e=0){return new op(this,e)}getChild(e,t=null,i=null){let s=Cv(this,e,t,i);return s.length?s[0]:null}getChildren(e,t=null,i=null){return Cv(this,e,t,i)}resolve(e,t=0){return jo(this,e,t,!1)}resolveInner(e,t=0){return jo(this,e,t,!0)}matchContext(e){return lp(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),i=this;for(;t;){let s=t.lastChild;if(!s||s.to!=t.to)break;s.type.isError&&s.from==s.to?(i=t,t=s.prevSibling):t=s}return i}get node(){return this}get next(){return this.parent}}class xn extends zk{constructor(e,t,i,s){super(),this._tree=e,this.from=t,this.index=i,this._parent=s}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,i,s,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(Xk(s,i,g,g+p.length)){if(p instanceof _s){if(r&Qt.ExcludeBuffers)continue;let O=p.findChild(0,p.buffer.length,t,i-g,s);if(O>-1)return new vi(new _Q(o,p,e,g),null,O)}else if(r&Qt.IncludeAnonymous||!p.type.isAnonymous||Wp(p)){let O;if(!(r&Qt.IgnoreMounts)&&(O=su.get(p))&&!O.overlay)return new xn(O.tree,g,e,o);let x=new xn(p,g,e,o);return r&Qt.IncludeAnonymous||!x.type.isAnonymous?x:x.nextChild(t<0?p.children.length-1:0,t,i,s)}}}if(r&Qt.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,i=0){let s;if(!(i&Qt.IgnoreOverlays)&&(s=su.get(this._tree))&&s.overlay){let r=e-this.from;for(let{from:o,to:c}of s.overlay)if((t>0?o<=r:o<r)&&(t<0?c>=r:c>r))return new xn(s.tree,s.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,i)}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 Cv(n,e,t,i){let s=n.cursor(),r=[];if(!s.firstChild())return r;if(t!=null){for(let o=!1;!o;)if(o=s.type.is(t),!s.nextSibling())return r}for(;;){if(i!=null&&s.type.is(i))return r;if(s.type.is(e)&&r.push(s.node),!s.nextSibling())return i==null?r:[]}}function lp(n,e,t=e.length-1){for(let i=n;t>=0;i=i.parent){if(!i)return!1;if(!i.type.isAnonymous){if(e[t]&&e[t]!=i.name)return!1;t--}}return!0}class _Q{constructor(e,t,i,s){this.parent=e,this.buffer=t,this.index=i,this.start=s}}class vi extends zk{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,i){super(),this.context=e,this._parent=t,this.index=i,this.type=e.buffer.set.types[e.buffer.buffer[i]]}child(e,t,i){let{buffer:s}=this.context,r=s.findChild(this.index+4,s.buffer[this.index+3],e,t-this.context.start,i);return r<0?null:new vi(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,i=0){if(i&Qt.ExcludeBuffers)return null;let{buffer:s}=this.context,r=s.findChild(this.index+4,s.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return r<0?null:new vi(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 vi(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 vi(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:i}=this.context,s=this.index+4,r=i.buffer[this.index+3];if(r>s){let o=i.buffer[this.index+1];e.push(i.slice(s,r,o)),t.push(0)}return new bt(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function Bk(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 i=t instanceof xn&&t.index<0?null:t.parent,s=n.slice();return i?s[e]=i:s.splice(e,1),new $Q(s,t)}class $Q{constructor(e,t){this.heads=e,this.node=t}get next(){return Bk(this.heads)}}function PQ(n,e,t){let i=n.resolveInner(e,t),s=null;for(let r=i instanceof xn?i:i.context.parent;r;r=r.parent)if(r.index<0){let o=r.parent;(s||(s=[i])).push(o.resolve(e,t)),r=o}else{let o=su.get(r.tree);if(o&&o.overlay&&o.overlay[0].from<=e&&o.overlay[o.overlay.length-1].to>=e){let c=new xn(o.tree,o.overlay[0].from+r.from,-1,r);(s||(s=[i])).push(jo(c,e,t,!1))}}return s?Bk(s):i}class op{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 xn)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let i=e._parent;i;i=i._parent)this.stack.unshift(i.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:i,buffer:s}=this.buffer;return this.type=t||s.set.types[s.buffer[e]],this.from=i+s.buffer[e+1],this.to=i+s.buffer[e+2],!0}yield(e){return e?e instanceof xn?(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,i){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,i,this.mode));let{buffer:s}=this.buffer,r=s.findChild(this.index+4,s.buffer[this.index+3],e,t-this.buffer.start,i);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,i=this.mode){return this.buffer?i&Qt.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,i))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Qt.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&Qt.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,i=this.stack.length-1;if(e<0){let s=i<0?0:this.stack[i]+4;if(this.index!=s)return this.yieldBuf(t.findChild(s,this.index,-1,0,4))}else{let s=t.buffer[this.index+3];if(s<(i<0?t.buffer.length:t.buffer[this.stack[i]+3]))return this.yieldBuf(s)}return i<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,i,{buffer:s}=this;if(s){if(e>0){if(this.index<s.buffer.buffer.length)return!1}else for(let r=0;r<this.index;r++)if(s.buffer.buffer[r+3]<this.index)return!1;({index:t,parent:i}=s)}else({index:t,_parent:i}=this._tree);for(;i;{index:t,_parent:i}=i)if(t>-1)for(let r=t+e,o=e<0?-1:i._tree.children.length;r!=o;r+=e){let c=i._tree.children[r];if(this.mode&Qt.IncludeAnonymous||c instanceof _s||!c.type.isAnonymous||Wp(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,i=0;if(e&&e.context==this.buffer)e:for(let s=this.index,r=this.stack.length;r>=0;){for(let o=e;o;o=o._parent)if(o.index==s){if(s==this.index)return o;t=o,i=r+1;break e}s=this.stack[--r]}for(let s=i;s<this.stack.length;s++)t=new vi(this.buffer,t,this.stack[s]);return this.bufferNode=new vi(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let i=0;;){let s=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){i++;continue}this.type.isAnonymous||(s=!0)}for(;;){if(s&&t&&t(this),s=this.type.isAnonymous,!i)return;if(this.nextSibling())break;this.parent(),i--,s=!0}}}matchContext(e){if(!this.buffer)return lp(this.node.parent,e);let{buffer:t}=this.buffer,{types:i}=t.set;for(let s=e.length-1,r=this.stack.length-1;s>=0;r--){if(r<0)return lp(this._tree,e,s);let o=i[t.buffer[this.stack[r]]];if(!o.isAnonymous){if(e[s]&&e[s]!=o.name)return!1;s--}}return!0}}function Wp(n){return n.children.some(e=>e instanceof _s||!e.type.isAnonymous||Wp(e))}function QQ(n){var e;let{buffer:t,nodeSet:i,maxBufferLength:s=Fk,reused:r=[],minRepeatType:o=i.types.length}=n,c=Array.isArray(t)?new Yp(t,t.length):t,u=i.types,f=0,p=0;function g(_,T,A,J,z,G){let{id:H,start:D,end:ee,size:q}=c,ue=p,ve=f;for(;q<0;)if(c.next(),q==-1){let j=r[H];A.push(j),J.push(D-_);return}else if(q==-3){f=H;return}else if(q==-4){p=H;return}else throw new RangeError(`Unrecognized record size: ${q}`);let de=u[H],X,L,N=D-_;if(ee-D<=s&&(L=b(c.pos-T,z))){let j=new Uint16Array(L.size-L.skip),I=c.pos-L.size,se=j.length;for(;c.pos>I;)se=C(L.start,j,se);X=new _s(j,ee-L.start,i),N=L.start-_}else{let j=c.pos-q;c.next();let I=[],se=[],K=H>=o?H:-1,ie=0,he=ee;for(;c.pos>j;)K>=0&&c.id==K&&c.size>=0?(c.end<=he-s&&(k(I,se,D,ie,c.end,he,K,ue,ve),ie=I.length,he=c.end),c.next()):G>2500?O(D,j,I,se):g(D,j,I,se,K,G+1);if(K>=0&&ie>0&&ie<I.length&&k(I,se,D,ie,D,he,K,ue,ve),I.reverse(),se.reverse(),K>-1&&ie>0){let pe=x(de,ve);X=Up(de,I,se,0,I.length,0,ee-D,pe,pe)}else X=w(de,I,se,ee-D,ue-ee,ve)}A.push(X),J.push(N)}function O(_,T,A,J){let z=[],G=0,H=-1;for(;c.pos>T;){let{id:D,start:ee,end:q,size:ue}=c;if(ue>4)c.next();else{if(H>-1&&ee<H)break;H<0&&(H=q-s),z.push(D,ee,q),G++,c.next()}}if(G){let D=new Uint16Array(G*4),ee=z[z.length-2];for(let q=z.length-3,ue=0;q>=0;q-=3)D[ue++]=z[q],D[ue++]=z[q+1]-ee,D[ue++]=z[q+2]-ee,D[ue++]=ue;A.push(new _s(D,z[2]-ee,i)),J.push(ee-_)}}function x(_,T){return(A,J,z)=>{let G=0,H=A.length-1,D,ee;if(H>=0&&(D=A[H])instanceof bt){if(!H&&D.type==_&&D.length==z)return D;(ee=D.prop(Ie.lookAhead))&&(G=J[H]+D.length+ee)}return w(_,A,J,z,G,T)}}function k(_,T,A,J,z,G,H,D,ee){let q=[],ue=[];for(;_.length>J;)q.push(_.pop()),ue.push(T.pop()+A-z);_.push(w(i.types[H],q,ue,G-z,D-G,ee)),T.push(z-A)}function w(_,T,A,J,z,G,H){if(G){let D=[Ie.contextHash,G];H=H?[D].concat(H):[D]}if(z>25){let D=[Ie.lookAhead,z];H=H?[D].concat(H):[D]}return new bt(_,T,A,J,H)}function b(_,T){let A=c.fork(),J=0,z=0,G=0,H=A.end-s,D={size:0,start:0,skip:0};e:for(let ee=A.pos-_;A.pos>ee;){let q=A.size;if(A.id==T&&q>=0){D.size=J,D.start=z,D.skip=G,G+=4,J+=4,A.next();continue}let ue=A.pos-q;if(q<0||ue<ee||A.start<H)break;let ve=A.id>=o?4:0,de=A.start;for(A.next();A.pos>ue;){if(A.size<0)if(A.size==-3)ve+=4;else break e;else A.id>=o&&(ve+=4);A.next()}z=de,J+=q,G+=ve}return(T<0||J==_)&&(D.size=J,D.start=z,D.skip=G),D.size>4?D:void 0}function C(_,T,A){let{id:J,start:z,end:G,size:H}=c;if(c.next(),H>=0&&J<o){let D=A;if(H>4){let ee=c.pos-(H-4);for(;c.pos>ee;)A=C(_,T,A)}T[--A]=D,T[--A]=G-_,T[--A]=z-_,T[--A]=J}else H==-3?f=J:H==-4&&(p=J);return A}let S=[],Q=[];for(;c.pos>0;)g(n.start||0,n.bufferStart||0,S,Q,-1,0);let P=(e=n.length)!==null&&e!==void 0?e:S.length?Q[0]+S[0].length:0;return new bt(u[n.topID],S.reverse(),Q.reverse(),P)}const jv=new WeakMap;function Xc(n,e){if(!n.isAnonymous||e instanceof _s||e.type!=n)return 1;let t=jv.get(e);if(t==null){t=1;for(let i of e.children){if(i.type!=n||!(i instanceof bt)){t=1;break}t+=Xc(n,i)}jv.set(e,t)}return t}function Up(n,e,t,i,s,r,o,c,u){let f=0;for(let k=i;k<s;k++)f+=Xc(n,e[k]);let p=Math.ceil(f*1.5/8),g=[],O=[];function x(k,w,b,C,S){for(let Q=b;Q<C;){let P=Q,_=w[Q],T=Xc(n,k[Q]);for(Q++;Q<C;Q++){let A=Xc(n,k[Q]);if(T+A>=p)break;T+=A}if(Q==P+1){if(T>p){let A=k[P];x(A.children,A.positions,0,A.children.length,w[P]+S);continue}g.push(k[P])}else{let A=w[Q-1]+k[Q-1].length-_;g.push(Up(n,k,w,P,Q,_,A,null,u))}O.push(_+S-r)}}return x(e,t,i,s,0),(c||u)(g,O,o)}class CQ{constructor(){this.map=new WeakMap}setBuffer(e,t,i){let s=this.map.get(e);s||this.map.set(e,s=new Map),s.set(t,i)}getBuffer(e,t){let i=this.map.get(e);return i&&i.get(t)}set(e,t){e instanceof vi?this.setBuffer(e.context.buffer,e.index,t):e instanceof xn&&this.map.set(e.tree,t)}get(e){return e instanceof vi?this.getBuffer(e.context.buffer,e.index):e instanceof xn?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 Us{constructor(e,t,i,s,r=!1,o=!1){this.from=e,this.to=t,this.tree=i,this.offset=s,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=[],i=!1){let s=[new Us(0,e.length,e,0,!1,i)];for(let r of t)r.to>e.length&&s.push(r);return s}static applyChanges(e,t,i=128){if(!t.length)return e;let s=[],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>=i)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 Us(x,k,O.tree,O.offset+f,c>0,!!p)}if(O&&s.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 s}}class Vk{startParse(e,t,i){return typeof e=="string"&&(e=new jQ(e)),i=i?i.length?i.map(s=>new Gh(s.from,s.to)):[new Gh(0,0)]:[new Gh(0,e.length)],this.createParse(e,t||[],i)}parse(e,t,i){let s=this.startParse(e,t,i);for(;;){let r=s.advance();if(r)return r}}}class jQ{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 TQ=0;class Dn{constructor(e,t,i,s){this.name=e,this.set=t,this.base=i,this.modified=s,this.id=TQ++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let i=typeof e=="string"?e:"?";if(e instanceof Dn&&(t=e),t?.base)throw new Error("Can not derive from a modified tag");let s=new Dn(i,[],null,[]);if(s.set.push(s),t)for(let r of t.set)s.set.push(r);return s}static defineModifier(e){let t=new ru(e);return i=>i.modified.indexOf(t)>-1?i:ru.get(i.base||i,i.modified.concat(t).sort((s,r)=>s.id-r.id))}}let NQ=0;class ru{constructor(e){this.name=e,this.instances=[],this.id=NQ++}static get(e,t){if(!t.length)return e;let i=t[0].instances.find(c=>c.base==e&&EQ(t,c.modified));if(i)return i;let s=[],r=new Dn(e.name,s,e,t);for(let c of t)c.instances.push(r);let o=AQ(t);for(let c of e.set)if(!c.modified.length)for(let u of o)s.push(ru.get(c,u));return r}}function EQ(n,e){return n.length==e.length&&n.every((t,i)=>t==e[i])}function AQ(n){let e=[[]];for(let t=0;t<n.length;t++)for(let i=0,s=e.length;i<s;i++)e.push(e[i].concat(n[t]));return e.sort((t,i)=>i.length-t.length)}function qk(n){let e=Object.create(null);for(let t in n){let i=n[t];Array.isArray(i)||(i=[i]);for(let s of t.split(" "))if(s){let r=[],o=2,c=s;for(let g=0;;){if(c=="..."&&g>0&&g+3==s.length){o=1;break}let O=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(c);if(!O)throw new RangeError("Invalid path: "+s);if(r.push(O[0]=="*"?"":O[0][0]=='"'?JSON.parse(O[0]):O[0]),g+=O[0].length,g==s.length)break;let x=s[g++];if(g==s.length&&x=="!"){o=0;break}if(x!="/")throw new RangeError("Invalid path: "+s);c=s.slice(g)}let u=r.length-1,f=r[u];if(!f)throw new RangeError("Invalid path: "+s);let p=new lu(i,o,u>0?r.slice(0,u):null);e[f]=p.sort(e[f])}}return Yk.add(e)}const Yk=new Ie;class lu{constructor(e,t,i,s){this.tags=e,this.mode=t,this.context=i,this.next=s}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}}lu.empty=new lu([],2,null);function Wk(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:i,all:s=null}=e||{};return{style:r=>{let o=s;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:i}}function MQ(n,e){let t=null;for(let i of n){let s=i.style(e);s&&(t=t?t+" "+s:s)}return t}function RQ(n,e,t,i=0,s=n.length){let r=new DQ(i,Array.isArray(e)?e:[e],t);r.highlightRange(n.cursor(),i,s,"",r.highlighters),r.flush(s)}class DQ{constructor(e,t,i){this.at=e,this.highlighters=t,this.span=i,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,i,s,r){let{type:o,from:c,to:u}=e;if(c>=i||u<=t)return;o.isTop&&(r=this.highlighters.filter(x=>!x.scope||x.scope(o)));let f=s,p=LQ(e)||lu.empty,g=MQ(r,p.tags);if(g&&(f&&(f+=" "),f+=g,p.mode==1&&(s+=(s?" ":"")+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(b=>!b.scope||b.scope(O.tree.type)),w=e.firstChild();for(let b=0,C=c;;b++){let S=b<O.overlay.length?O.overlay[b]:null,Q=S?S.from+c:u,P=Math.max(t,C),_=Math.min(i,Q);if(P<_&&w)for(;e.from<_&&(this.highlightRange(e,P,_,s,r),this.startSpan(Math.min(_,e.to),f),!(e.to>=Q||!e.nextSibling())););if(!S||Q>i)break;C=S.to+c,C>t&&(this.highlightRange(x.cursor(),Math.max(t,S.from+c),Math.min(i,C),"",k),this.startSpan(Math.min(i,C),f))}w&&e.parent()}else if(e.firstChild()){O&&(s="");do if(!(e.to<=t)){if(e.from>=i)break;this.highlightRange(e,t,i,s,r),this.startSpan(Math.min(i,e.to),f)}while(e.nextSibling());e.parent()}}}function LQ(n){let e=n.type.prop(Yk);for(;e&&e.context&&!n.matchContext(e.context);)e=e.next;return e||null}const ge=Dn.define,Sc=ge(),fs=ge(),Tv=ge(fs),Nv=ge(fs),ps=ge(),wc=ge(ps),Hh=ge(ps),hi=ge(),Xs=ge(hi),ui=ge(),di=ge(),ap=ge(),Kl=ge(ap),bc=ge(),F={comment:Sc,lineComment:ge(Sc),blockComment:ge(Sc),docComment:ge(Sc),name:fs,variableName:ge(fs),typeName:Tv,tagName:ge(Tv),propertyName:Nv,attributeName:ge(Nv),className:ge(fs),labelName:ge(fs),namespace:ge(fs),macroName:ge(fs),literal:ps,string:wc,docString:ge(wc),character:ge(wc),attributeValue:ge(wc),number:Hh,integer:ge(Hh),float:ge(Hh),bool:ge(ps),regexp:ge(ps),escape:ge(ps),color:ge(ps),url:ge(ps),keyword:ui,self:ge(ui),null:ge(ui),atom:ge(ui),unit:ge(ui),modifier:ge(ui),operatorKeyword:ge(ui),controlKeyword:ge(ui),definitionKeyword:ge(ui),moduleKeyword:ge(ui),operator:di,derefOperator:ge(di),arithmeticOperator:ge(di),logicOperator:ge(di),bitwiseOperator:ge(di),compareOperator:ge(di),updateOperator:ge(di),definitionOperator:ge(di),typeOperator:ge(di),controlOperator:ge(di),punctuation:ap,separator:ge(ap),bracket:Kl,angleBracket:ge(Kl),squareBracket:ge(Kl),paren:ge(Kl),brace:ge(Kl),content:hi,heading:Xs,heading1:ge(Xs),heading2:ge(Xs),heading3:ge(Xs),heading4:ge(Xs),heading5:ge(Xs),heading6:ge(Xs),contentSeparator:ge(hi),list:ge(hi),quote:ge(hi),emphasis:ge(hi),strong:ge(hi),link:ge(hi),monospace:ge(hi),strikethrough:ge(hi),inserted:ge(),deleted:ge(),changed:ge(),invalid:ge(),meta:bc,documentMeta:ge(bc),annotation:ge(bc),processingInstruction:ge(bc),definition:Dn.defineModifier("definition"),constant:Dn.defineModifier("constant"),function:Dn.defineModifier("function"),standard:Dn.defineModifier("standard"),local:Dn.defineModifier("local"),special:Dn.defineModifier("special")};for(let n in F){let e=F[n];e instanceof Dn&&(e.name=n)}Wk([{tag:F.link,class:"tok-link"},{tag:F.heading,class:"tok-heading"},{tag:F.emphasis,class:"tok-emphasis"},{tag:F.strong,class:"tok-strong"},{tag:F.keyword,class:"tok-keyword"},{tag:F.atom,class:"tok-atom"},{tag:F.bool,class:"tok-bool"},{tag:F.url,class:"tok-url"},{tag:F.labelName,class:"tok-labelName"},{tag:F.inserted,class:"tok-inserted"},{tag:F.deleted,class:"tok-deleted"},{tag:F.literal,class:"tok-literal"},{tag:F.string,class:"tok-string"},{tag:F.number,class:"tok-number"},{tag:[F.regexp,F.escape,F.special(F.string)],class:"tok-string2"},{tag:F.variableName,class:"tok-variableName"},{tag:F.local(F.variableName),class:"tok-variableName tok-local"},{tag:F.definition(F.variableName),class:"tok-variableName tok-definition"},{tag:F.special(F.variableName),class:"tok-variableName2"},{tag:F.definition(F.propertyName),class:"tok-propertyName tok-definition"},{tag:F.typeName,class:"tok-typeName"},{tag:F.namespace,class:"tok-namespace"},{tag:F.className,class:"tok-className"},{tag:F.macroName,class:"tok-macroName"},{tag:F.propertyName,class:"tok-propertyName"},{tag:F.operator,class:"tok-operator"},{tag:F.comment,class:"tok-comment"},{tag:F.meta,class:"tok-meta"},{tag:F.invalid,class:"tok-invalid"},{tag:F.punctuation,class:"tok-punctuation"}]);var Kh;const zr=new Ie;function Uk(n){return Se.define({combine:n?e=>e.concat(n):void 0})}const Gp=new Ie;class Kn{constructor(e,t,i=[],s=""){this.data=e,this.name=s,Ze.prototype.hasOwnProperty("tree")||Object.defineProperty(Ze.prototype,"tree",{get(){return Ct(this)}}),this.parser=t,this.extension=[$s.of(this),Ze.languageData.of((r,o,c)=>{let u=Ev(r,o,c),f=u.type.prop(zr);if(!f)return[];let p=r.facet(f),g=u.type.prop(Gp);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(i)}isActiveAt(e,t,i=-1){return Ev(e,t,i).type.prop(zr)==this.data}findRegions(e){let t=e.facet($s);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let i=[],s=(r,o)=>{if(r.prop(zr)==this.data){i.push({from:o,to:o+r.length});return}let c=r.prop(Ie.mounted);if(c){if(c.tree.prop(zr)==this.data){if(c.overlay)for(let u of c.overlay)i.push({from:u.from+o,to:u.to+o});else i.push({from:o,to:o+r.length});return}else if(c.overlay){let u=i.length;if(s(c.tree,c.overlay[0].from+o),i.length>u)return}}for(let u=0;u<r.children.length;u++){let f=r.children[u];f instanceof bt&&s(f,r.positions[u]+o)}};return s(Ct(e),0),i}get allowsNesting(){return!0}}Kn.setState=Me.define();function Ev(n,e,t){let i=n.facet($s),s=Ct(n).topNode;if(!i||i.allowsNesting)for(let r=s;r;r=r.enter(e,t,Qt.ExcludeBuffers))r.type.isTop&&(s=r);return s}class ou extends Kn{constructor(e,t,i){super(e,t,[],i),this.parser=t}static define(e){let t=Uk(e.languageData);return new ou(t,e.parser.configure({props:[zr.add(i=>i.isTop?t:void 0)]}),e.name)}configure(e,t){return new ou(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function Ct(n){let e=n.field(Kn.state,!1);return e?e.tree:bt.empty}class IQ{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 i=this.cursorPos-this.string.length;return e<i||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-i,t-i)}}let Jl=null;class au{constructor(e,t,i=[],s,r,o,c,u){this.parser=e,this.state=t,this.fragments=i,this.tree=s,this.treeLen=r,this.viewport=o,this.skipped=c,this.scheduleOn=u,this.parse=null,this.tempSkipped=[]}static create(e,t,i){return new au(e,t,[],bt.empty,0,i,[],null)}startParse(){return this.parser.startParse(new IQ(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=bt.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var i;if(typeof e=="number"){let s=Date.now()+e;e=()=>Date.now()>s}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 s=this.parse.advance();if(s)if(this.fragments=this.withoutTempSkipped(Us.addTree(s,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(i=this.parse.stoppedAt)!==null&&i!==void 0?i:this.state.doc.length,this.tree=s,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(Us.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Jl;Jl=this;try{return e()}finally{Jl=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Av(e,t.from,t.to);return e}changes(e,t){let{fragments:i,tree:s,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})),i=Us.applyChanges(i,u),s=bt.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 au(this.parser,t,i,s,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 i=0;i<this.skipped.length;i++){let{from:s,to:r}=this.skipped[i];s<e.to&&r>e.from&&(this.fragments=Av(this.fragments,s,r),this.skipped.splice(i--,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 Vk{createParse(t,i,s){let r=s[0].from,o=s[s.length-1].to;return{parsedPos:r,advance(){let u=Jl;if(u){for(let f of s)u.tempSkipped.push(f);e&&(u.scheduleOn=u.scheduleOn?Promise.all([u.scheduleOn,e]):e)}return this.parsedPos=o,new bt(kn.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 Jl}}function Av(n,e,t){return Us.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}class nl{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),i=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,i)||t.takeTree(),new nl(t)}static init(e){let t=Math.min(3e3,e.doc.length),i=au.create(e.facet($s).parser,e,{from:0,to:t});return i.work(20,t)||i.takeTree(),new nl(i)}}Kn.state=Dt.define({create:nl.init,update(n,e){for(let t of e.effects)if(t.is(Kn.setState))return t.value;return e.startState.facet($s)!=e.state.facet($s)?nl.init(e.state):n.apply(e)}});let Gk=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(Gk=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const Jh=typeof navigator<"u"&&(!((Kh=navigator.scheduling)===null||Kh===void 0)&&Kh.isInputPending)?()=>navigator.scheduling.isInputPending():null,ZQ=vt.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(Kn.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(Kn.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=Gk(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:i,viewport:{to:s}}=this.view,r=i.field(Kn.state);if(r.tree==r.context.tree&&r.context.isDone(s+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!Jh?Math.max(25,e.timeRemaining()-5):1e9),c=r.context.treeLen<s&&i.doc.length>s+1e3,u=r.context.work(()=>Jh&&Jh()||Date.now()>o,s+(c?0:1e5));this.chunkBudget-=Date.now()-t,(u||this.chunkBudget<=0)&&(r.context.takeTree(),this.view.dispatch({effects:Kn.setState.of(new nl(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=>vn(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()}}}),$s=Se.define({combine(n){return n.length?n[0]:null},enables:n=>[Kn.state,ZQ,Oe.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});class FQ{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}const XQ=Se.define(),zo=Se.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function cu(n){let e=n.facet(zo);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function To(n,e){let t="",i=n.tabSize,s=n.facet(zo)[0];if(s==" "){for(;e>=i;)t+=" ",e-=i;s=" "}for(let r=0;r<e;r++)t+=s;return t}function Hp(n,e){n instanceof Ze&&(n=new Au(n));for(let i of n.state.facet(XQ)){let s=i(n,e);if(s!==void 0)return s}let t=Ct(n.state);return t.length>=e?zQ(n,t,e):null}class Au{constructor(e,t={}){this.state=e,this.options=t,this.unit=cu(e)}lineAt(e,t=1){let i=this.state.doc.lineAt(e),{simulateBreak:s,simulateDoubleBreak:r}=this.options;return s!=null&&s>=i.from&&s<=i.to?r&&s==e?{text:"",from:e}:(t<0?s<e:s<=e)?{text:i.text.slice(s-i.from),from:s}:{text:i.text.slice(0,s-i.from),from:i.from}:i}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:i,from:s}=this.lineAt(e,t);return i.slice(e-s,Math.min(i.length,e+100-s))}column(e,t=1){let{text:i,from:s}=this.lineAt(e,t),r=this.countColumn(i,e-s),o=this.options.overrideIndentation?this.options.overrideIndentation(s):-1;return o>-1&&(r+=o-this.countColumn(i,i.search(/\S|$/))),r}countColumn(e,t=e.length){return rl(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:i,from:s}=this.lineAt(e,t),r=this.options.overrideIndentation;if(r){let o=r(s);if(o>-1)return o}return this.countColumn(i,i.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const Hk=new Ie;function zQ(n,e,t){let i=e.resolveStack(t),s=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(s!=i.node){let r=[];for(let o=s;o&&!(o.from<i.node.from||o.to>i.node.to||o.from==i.node.from&&o.type==i.node.type);o=o.parent)r.push(o);for(let o=r.length-1;o>=0;o--)i={node:r[o],next:i}}return Kk(i,n,t)}function Kk(n,e,t){for(let i=n;i;i=i.next){let s=VQ(i.node);if(s)return s(Kp.create(e,t,i))}return 0}function BQ(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function VQ(n){let e=n.type.prop(Hk);if(e)return e;let t=n.firstChild,i;if(t&&(i=t.type.prop(Ie.closedBy))){let s=n.lastChild,r=s&&i.indexOf(s.name)>-1;return o=>Jk(o,!0,1,void 0,r&&!BQ(o)?s.from:void 0)}return n.parent==null?qQ:null}function qQ(){return 0}class Kp extends Au{constructor(e,t,i){super(e.state,e.options),this.base=e,this.pos=t,this.context=i}get node(){return this.context.node}static create(e,t,i){return new Kp(e,t,i)}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 i=e.resolve(t.from);for(;i.parent&&i.parent.from==i.from;)i=i.parent;if(YQ(i,e))break;t=this.state.doc.lineAt(i.from)}return this.lineIndent(t.from)}continue(){return Kk(this.context.next,this.base,this.pos)}}function YQ(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function WQ(n){let e=n.node,t=e.childAfter(e.from),i=e.lastChild;if(!t)return null;let s=n.options.simulateBreak,r=n.state.doc.lineAt(t.from),o=s==null||s<=r.from?r.to:Math.min(r.to,s);for(let c=t.to;;){let u=e.childAfter(c);if(!u||u==i)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 UQ({closing:n,align:e=!0,units:t=1}){return i=>Jk(i,e,t,n)}function Jk(n,e,t,i,s){let r=n.textAfter,o=r.match(/^\s*/)[0].length,c=i&&r.slice(o,o+i.length)==i||s==n.pos+o,u=e?WQ(n):null;return u?c?n.column(u.from):n.column(u.to):n.baseIndent+(c?0:n.unit*t)}const GQ=n=>n.baseIndent;function ef({except:n,units:e=1}={}){return t=>{let i=n&&n.test(t.textAfter);return t.baseIndent+(i?0:e*t.unit)}}const HQ=200;function KQ(){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:i}=n.newSelection.main,s=t.lineAt(i);if(i>s.from+HQ)return n;let r=t.sliceString(s.from,i);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=Hp(o,p.from);if(g==null)continue;let O=/^\s*/.exec(p.text)[0],x=To(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 JQ=Se.define(),eS=new Ie;function eC(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 tC(n,e,t){let i=Ct(n);if(i.length<t)return null;let s=i.resolveStack(t,1),r=null;for(let o=s;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(eS);if(u&&(c.to<i.length-50||i.length==n.doc.length||!nC(c))){let f=u(c,n);f&&f.from<=t&&f.from>=e&&f.to>t&&(r=f)}}return r}function nC(n){let e=n.lastChild;return e&&e.to==n.to&&e.type.isError}function uu(n,e,t){for(let i of n.facet(JQ)){let s=i(n,e,t);if(s)return s}return tC(n,e,t)}function tS(n,e){let t=e.mapPos(n.from,1),i=e.mapPos(n.to,-1);return t>=i?void 0:{from:t,to:i}}const Mu=Me.define({map:tS}),Bo=Me.define({map:tS});function nS(n){let e=[];for(let{head:t}of n.state.selection.ranges)e.some(i=>i.from<=t&&i.to>=t)||e.push(n.lineBlockAt(t));return e}const nr=Dt.define({create(){return je.none},update(n,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((t,i)=>n=Mv(n,t,i)),n=n.map(e.changes);for(let t of e.effects)if(t.is(Mu)&&!iC(n,t.value.from,t.value.to)){let{preparePlaceholder:i}=e.state.facet(rS),s=i?je.replace({widget:new uC(i(e.state,t.value))}):Rv;n=n.update({add:[s.range(t.value.from,t.value.to)]})}else t.is(Bo)&&(n=n.update({filter:(i,s)=>t.value.from!=i||t.value.to!=s,filterFrom:t.value.from,filterTo:t.value.to}));return e.selection&&(n=Mv(n,e.selection.main.head)),n},provide:n=>Oe.decorations.from(n),toJSON(n,e){let t=[];return n.between(0,e.doc.length,(i,s)=>{t.push(i,s)}),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 i=n[t++],s=n[t++];if(typeof i!="number"||typeof s!="number")throw new RangeError("Invalid JSON for fold state");e.push(Rv.range(i,s))}return je.set(e,!0)}});function Mv(n,e,t=e){let i=!1;return n.between(e,t,(s,r)=>{s<t&&r>e&&(i=!0)}),i?n.update({filterFrom:e,filterTo:t,filter:(s,r)=>s>=t||r<=e}):n}function du(n,e,t){var i;let s=null;return(i=n.field(nr,!1))===null||i===void 0||i.between(e,t,(r,o)=>{(!s||s.from>r)&&(s={from:r,to:o})}),s}function iC(n,e,t){let i=!1;return n.between(e,e,(s,r)=>{s==e&&r==t&&(i=!0)}),i}function iS(n,e){return n.field(nr,!1)?e:e.concat(Me.appendConfig.of(lS()))}const sC=n=>{for(let e of nS(n)){let t=uu(n.state,e.from,e.to);if(t)return n.dispatch({effects:iS(n.state,[Mu.of(t),sS(n,t)])}),!0}return!1},rC=n=>{if(!n.state.field(nr,!1))return!1;let e=[];for(let t of nS(n)){let i=du(n.state,t.from,t.to);i&&e.push(Bo.of(i),sS(n,i,!1))}return e.length&&n.dispatch({effects:e}),e.length>0};function sS(n,e,t=!0){let i=n.state.doc.lineAt(e.from).number,s=n.state.doc.lineAt(e.to).number;return Oe.announce.of(`${n.state.phrase(t?"Folded lines":"Unfolded lines")} ${i} ${n.state.phrase("to")} ${s}.`)}const lC=n=>{let{state:e}=n,t=[];for(let i=0;i<e.doc.length;){let s=n.lineBlockAt(i),r=uu(e,s.from,s.to);r&&t.push(Mu.of(r)),i=(r?n.lineBlockAt(r.to):s).to+1}return t.length&&n.dispatch({effects:iS(n.state,t)}),!!t.length},oC=n=>{let e=n.state.field(nr,!1);if(!e||!e.size)return!1;let t=[];return e.between(0,n.state.doc.length,(i,s)=>{t.push(Bo.of({from:i,to:s}))}),n.dispatch({effects:t}),!0},aC=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:sC},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:rC},{key:"Ctrl-Alt-[",run:lC},{key:"Ctrl-Alt-]",run:oC}],cC={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},rS=Se.define({combine(n){return _i(n,cC)}});function lS(n){return[nr,fC]}function oS(n,e){let{state:t}=n,i=t.facet(rS),s=o=>{let c=n.lineBlockAt(n.posAtDOM(o.target)),u=du(n.state,c.from,c.to);u&&n.dispatch({effects:Bo.of(u)}),o.preventDefault()};if(i.placeholderDOM)return i.placeholderDOM(n,s,e);let r=document.createElement("span");return r.textContent=i.placeholderText,r.setAttribute("aria-label",t.phrase("folded code")),r.title=t.phrase("unfold"),r.className="cm-foldPlaceholder",r.onclick=s,r}const Rv=je.replace({widget:new class extends $i{toDOM(n){return oS(n,null)}}});class uC extends $i{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return oS(e,this.value)}}const dC={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class tf extends qi{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 hC(n={}){let e={...dC,...n},t=new tf(e,!0),i=new tf(e,!1),s=vt.fromClass(class{constructor(o){this.from=o.viewport.from,this.markers=this.buildMarkers(o)}update(o){(o.docChanged||o.viewportChanged||o.startState.facet($s)!=o.state.facet($s)||o.startState.field(nr,!1)!=o.state.field(nr,!1)||Ct(o.startState)!=Ct(o.state)||e.foldingChanged(o))&&(this.markers=this.buildMarkers(o.view))}buildMarkers(o){let c=new Bi;for(let u of o.viewportLineBlocks){let f=du(o.state,u.from,u.to)?i:uu(o.state,u.from,u.to)?t:null;f&&c.add(u.from,u.from,f)}return c.finish()}}),{domEventHandlers:r}=e;return[s,hQ({class:"cm-foldGutter",markers(o){var c;return((c=o.plugin(s))===null||c===void 0?void 0:c.markers)||qe.empty},initialSpacer(){return new tf(e,!1)},domEventHandlers:{...r,click:(o,c,u)=>{if(r.click&&r.click(o,c,u))return!0;let f=du(o.state,c.from,c.to);if(f)return o.dispatch({effects:Bo.of(f)}),!0;let p=uu(o.state,c.from,c.to);return p?(o.dispatch({effects:Mu.of(p)}),!0):!1}}}),lS()]}const fC=Oe.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 Vo{constructor(e,t){this.specs=e;let i;function s(c){let u=Ss.newName();return(i||(i=Object.create(null)))["."+u]=c,u}const r=typeof t.all=="string"?t.all:t.all?s(t.all):void 0,o=t.scope;this.scope=o instanceof Kn?c=>c.prop(zr)==o.data:o?c=>c==o:void 0,this.style=Wk(e.map(c=>({tag:c.tag,class:c.class||s(Object.assign({},c,{tag:null}))})),{all:r}).style,this.module=i?new Ss(i):null,this.themeType=t.themeType}static define(e,t){return new Vo(e,t||{})}}const cp=Se.define(),aS=Se.define({combine(n){return n.length?[n[0]]:null}});function nf(n){let e=n.facet(cp);return e.length?e:n.facet(aS)}function cS(n,e){let t=[mC],i;return n instanceof Vo&&(n.module&&t.push(Oe.styleModule.of(n.module)),i=n.themeType),e?.fallback?t.push(aS.of(n)):i?t.push(cp.computeN([Oe.darkTheme],s=>s.facet(Oe.darkTheme)==(i=="dark")?[n]:[])):t.push(cp.of(n)),t}class pC{constructor(e){this.markCache=Object.create(null),this.tree=Ct(e.state),this.decorations=this.buildDeco(e,nf(e.state)),this.decoratedTo=e.viewport.to}update(e){let t=Ct(e.state),i=nf(e.state),s=i!=nf(e.startState),{viewport:r}=e.view,o=e.changes.mapPos(this.decoratedTo,1);t.length<r.to&&!s&&t.type==this.tree.type&&o>=r.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=o):(t!=this.tree||e.viewportChanged||s)&&(this.tree=t,this.decorations=this.buildDeco(e.view,i),this.decoratedTo=r.to)}buildDeco(e,t){if(!t||!this.tree.length)return je.none;let i=new Bi;for(let{from:s,to:r}of e.visibleRanges)RQ(this.tree,t,(o,c,u)=>{i.add(o,c,this.markCache[u]||(this.markCache[u]=je.mark({class:u})))},s,r);return i.finish()}}const mC=Ps.high(vt.fromClass(pC,{decorations:n=>n.decorations})),gC=Vo.define([{tag:F.meta,color:"#404740"},{tag:F.link,textDecoration:"underline"},{tag:F.heading,textDecoration:"underline",fontWeight:"bold"},{tag:F.emphasis,fontStyle:"italic"},{tag:F.strong,fontWeight:"bold"},{tag:F.strikethrough,textDecoration:"line-through"},{tag:F.keyword,color:"#708"},{tag:[F.atom,F.bool,F.url,F.contentSeparator,F.labelName],color:"#219"},{tag:[F.literal,F.inserted],color:"#164"},{tag:[F.string,F.deleted],color:"#a11"},{tag:[F.regexp,F.escape,F.special(F.string)],color:"#e40"},{tag:F.definition(F.variableName),color:"#00f"},{tag:F.local(F.variableName),color:"#30a"},{tag:[F.typeName,F.namespace],color:"#085"},{tag:F.className,color:"#167"},{tag:[F.special(F.variableName),F.macroName],color:"#256"},{tag:F.definition(F.propertyName),color:"#00c"},{tag:F.comment,color:"#940"},{tag:F.invalid,color:"#f00"}]),OC=Oe.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),uS=1e4,dS="()[]{}",hS=Se.define({combine(n){return _i(n,{afterCursor:!0,brackets:dS,maxScanDistance:uS,renderMatch:xC})}}),vC=je.mark({class:"cm-matchingBracket"}),yC=je.mark({class:"cm-nonmatchingBracket"});function xC(n){let e=[],t=n.matched?vC:yC;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 kC=Dt.define({create(){return je.none},update(n,e){if(!e.docChanged&&!e.selection)return n;let t=[],i=e.state.facet(hS);for(let s of e.state.selection.ranges){if(!s.empty)continue;let r=yi(e.state,s.head,-1,i)||s.head>0&&yi(e.state,s.head-1,1,i)||i.afterCursor&&(yi(e.state,s.head,1,i)||s.head<e.state.doc.length&&yi(e.state,s.head+1,-1,i));r&&(t=t.concat(i.renderMatch(r,e.state)))}return je.set(t,!0)},provide:n=>Oe.decorations.from(n)}),SC=[kC,OC];function wC(n={}){return[hS.of(n),SC]}const bC=new Ie;function up(n,e,t){let i=n.prop(e<0?Ie.openedBy:Ie.closedBy);if(i)return i;if(n.name.length==1){let s=t.indexOf(n.name);if(s>-1&&s%2==(e<0?1:0))return[t[s+e]]}return null}function dp(n){let e=n.type.prop(bC);return e?e(n.node):n}function yi(n,e,t,i={}){let s=i.maxScanDistance||uS,r=i.brackets||dS,o=Ct(n),c=o.resolveInner(e,t);for(let u=c;u;u=u.parent){let f=up(u.type,t,r);if(f&&u.from<u.to){let p=dp(u);if(p&&(t>0?e>=p.from&&e<p.to:e>p.from&&e<=p.to))return _C(n,e,t,u,p,f,r)}}return $C(n,e,t,o,c.type,s,r)}function _C(n,e,t,i,s,r,o){let c=i.parent,u={from:s.from,to:s.to},f=0,p=c?.cursor();if(p&&(t<0?p.childBefore(i.from):p.childAfter(i.to)))do if(t<0?p.to<=i.from:p.from>=i.to){if(f==0&&r.indexOf(p.type.name)>-1&&p.from<p.to){let g=dp(p);return{start:u,end:g?{from:g.from,to:g.to}:void 0,matched:!0}}else if(up(p.type,t,o))f++;else if(up(p.type,-t,o)){if(f==0){let g=dp(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 $C(n,e,t,i,s,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 w=t>0?0:x.length-1,b=t>0?x.length:-1;w!=b;w+=t){let C=o.indexOf(x[w]);if(!(C<0||i.resolveInner(k+w,1).type!=s))if(C%2==0==t>0)g++;else{if(g==1)return{start:f,end:{from:k+w,to:k+w+1},matched:C>>1==u>>1};g--}}t>0&&(O+=x.length)}return p.done?{start:f,matched:!1}:null}const PC=Object.create(null),Dv=[kn.none],Lv=[],Iv=Object.create(null),QC=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"]])QC[n]=CC(PC,e);function sf(n,e){Lv.indexOf(n)>-1||(Lv.push(n),console.warn(e))}function CC(n,e){let t=[];for(let c of e.split(" ")){let u=[];for(let f of c.split(".")){let p=n[f]||F[f];p?typeof p=="function"?u.length?u=u.map(p):sf(f,`Modifier ${f} used at start of tag`):u.length?sf(f,`Tag ${f} used as modifier`):u=Array.isArray(p)?p:[p]:sf(f,`Unknown highlighting tag ${f}`)}for(let f of u)t.push(f)}if(!t.length)return 0;let i=e.replace(/ /g,"_"),s=i+" "+t.map(c=>c.id),r=Iv[s];if(r)return r.id;let o=Iv[s]=kn.define({id:Dv.length,name:i,props:[qk({[i]:t})]});return Dv.push(o),o.id}lt.RTL,lt.LTR;const jC=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),i=em(n.state,t.from);return i.line?TC(n):i.block?EC(n):!1};function Jp(n,e){return({state:t,dispatch:i})=>{if(t.readOnly)return!1;let s=n(e,t);return s?(i(t.update(s)),!0):!1}}const TC=Jp(RC,0),NC=Jp(fS,0),EC=Jp((n,e)=>fS(n,e,MC(e)),0);function em(n,e){let t=n.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}const eo=50;function AC(n,{open:e,close:t},i,s){let r=n.sliceDoc(i-eo,i),o=n.sliceDoc(s,s+eo),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:i-c,margin:c&&1},close:{pos:s+u,margin:u&&1}};let p,g;s-i<=2*eo?p=g=n.sliceDoc(i,s):(p=n.sliceDoc(i,i+eo),g=n.sliceDoc(s-eo,s));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:i+O+e.length,margin:/\s/.test(p.charAt(O+e.length))?1:0},close:{pos:s-x-t.length,margin:/\s/.test(g.charAt(k-1))?1:0}}:null}function MC(n){let e=[];for(let t of n.selection.ranges){let i=n.doc.lineAt(t.from),s=t.to<=i.to?i:n.doc.lineAt(t.to);s.from>i.from&&s.from==t.to&&(s=t.to==i.to+1?i:n.doc.lineAt(t.to-1));let r=e.length-1;r>=0&&e[r].to>i.from?e[r].to=s.to:e.push({from:i.from+/^\s*/.exec(i.text)[0].length,to:s.to})}return e}function fS(n,e,t=e.selection.ranges){let i=t.map(r=>em(e,r.from).block);if(!i.every(r=>r))return null;let s=t.map((r,o)=>AC(e,i[o],r.from,r.to));if(n!=2&&!s.every(r=>r))return{changes:e.changes(t.map((r,o)=>s[o]?[]:[{from:r.from,insert:i[o].open+" "},{from:r.to,insert:" "+i[o].close}]))};if(n!=1&&s.some(r=>r)){let r=[];for(let o=0,c;o<s.length;o++)if(c=s[o]){let u=i[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 RC(n,e,t=e.selection.ranges){let i=[],s=-1;for(let{from:r,to:o}of t){let c=i.length,u=1e9,f=em(e,r).line;if(f){for(let p=r;p<=o;){let g=e.doc.lineAt(p);if(g.from>s&&(r==o||o>g.from)){s=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),i.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<i.length;p++)i[p].indent<i[p].line.text.length&&(i[p].indent=u);i.length==c+1&&(i[c].single=!0)}}if(n!=2&&i.some(r=>r.comment<0&&(!r.empty||r.single))){let r=[];for(let{line:c,token:u,indent:f,empty:p,single:g}of i)(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&&i.some(r=>r.comment>=0)){let r=[];for(let{line:o,comment:c,token:u}of i)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 hp=bi.define(),DC=bi.define(),LC=Se.define(),pS=Se.define({combine(n){return _i(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(i,s)=>e(i,s)||t(i,s)})}}),mS=Dt.define({create(){return xi.empty},update(n,e){let t=e.state.facet(pS),i=e.annotation(hp);if(i){let u=yn.fromTransaction(e,i.selection),f=i.side,p=f==0?n.undone:n.done;return u?p=hu(p,p.length,t.minDepth,u):p=vS(p,e.startState.selection),new xi(f==0?i.rest:p,f==0?p:i.rest)}let s=e.annotation(DC);if((s=="full"||s=="before")&&(n=n.isolate()),e.annotation(wt.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let r=yn.fromTransaction(e),o=e.annotation(wt.time),c=e.annotation(wt.userEvent);return r?n=n.addChanges(r,o,c,t,e):e.selection&&(n=n.addSelection(e.startState.selection,o,c,t.newGroupDelay)),(s=="full"||s=="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 xi(n.done.map(yn.fromJSON),n.undone.map(yn.fromJSON))}});function IC(n={}){return[mS,pS.of(n),Oe.domEventHandlers({beforeinput(e,t){let i=e.inputType=="historyUndo"?gS:e.inputType=="historyRedo"?fp:null;return i?(e.preventDefault(),i(t)):!1}})]}function Ru(n,e){return function({state:t,dispatch:i}){if(!e&&t.readOnly)return!1;let s=t.field(mS,!1);if(!s)return!1;let r=s.pop(n,t,e);return r?(i(r),!0):!1}}const gS=Ru(0,!1),fp=Ru(1,!1),ZC=Ru(0,!0),FC=Ru(1,!0);class yn{constructor(e,t,i,s,r){this.changes=e,this.effects=t,this.mapped=i,this.startSelection=s,this.selectionsAfter=r}setSelAfter(e){return new yn(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,i;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:(i=this.startSelection)===null||i===void 0?void 0:i.toJSON(),selectionsAfter:this.selectionsAfter.map(s=>s.toJSON())}}static fromJSON(e){return new yn(e.changes&&Pt.fromJSON(e.changes),[],e.mapped&&Si.fromJSON(e.mapped),e.startSelection&&ne.fromJSON(e.startSelection),e.selectionsAfter.map(ne.fromJSON))}static fromTransaction(e,t){let i=Ln;for(let s of e.startState.facet(LC)){let r=s(e);r.length&&(i=i.concat(r))}return!i.length&&e.changes.empty?null:new yn(e.changes.invert(e.startState.doc),i,void 0,t||e.startState.selection,Ln)}static selection(e){return new yn(void 0,Ln,void 0,void 0,e)}}function hu(n,e,t,i){let s=e+1>t+20?e-t-1:0,r=n.slice(s,e);return r.push(i),r}function XC(n,e){let t=[],i=!1;return n.iterChangedRanges((s,r)=>t.push(s,r)),e.iterChangedRanges((s,r,o,c)=>{for(let u=0;u<t.length;){let f=t[u++],p=t[u++];c>=f&&o<=p&&(i=!0)}}),i}function zC(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,i)=>t.empty!=e.ranges[i].empty).length===0}function OS(n,e){return n.length?e.length?n.concat(e):n:e}const Ln=[],BC=200;function vS(n,e){if(n.length){let t=n[n.length-1],i=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-BC));return i.length&&i[i.length-1].eq(e)?n:(i.push(e),hu(n,n.length-1,1e9,t.setSelAfter(i)))}else return[yn.selection([e])]}function VC(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 rf(n,e){if(!n.length)return n;let t=n.length,i=Ln;for(;t;){let s=qC(n[t-1],e,i);if(s.changes&&!s.changes.empty||s.effects.length){let r=n.slice(0,t);return r[t-1]=s,r}else e=s.mapped,t--,i=s.selectionsAfter}return i.length?[yn.selection(i)]:Ln}function qC(n,e,t){let i=OS(n.selectionsAfter.length?n.selectionsAfter.map(c=>c.map(e)):Ln,t);if(!n.changes)return yn.selection(i);let s=n.changes.map(e),r=e.mapDesc(n.changes,!0),o=n.mapped?n.mapped.composeDesc(r):r;return new yn(s,Me.mapEffects(n.effects,e),o,n.startSelection.map(r),i)}const YC=/^(input\.type|delete)($|\.)/;class xi{constructor(e,t,i=0,s=void 0){this.done=e,this.undone=t,this.prevTime=i,this.prevUserEvent=s}isolate(){return this.prevTime?new xi(this.done,this.undone):this}addChanges(e,t,i,s,r){let o=this.done,c=o[o.length-1];return c&&c.changes&&!c.changes.empty&&e.changes&&(!i||YC.test(i))&&(!c.selectionsAfter.length&&t-this.prevTime<s.newGroupDelay&&s.joinToEvent(r,XC(c.changes,e.changes))||i=="input.type.compose")?o=hu(o,o.length-1,s.minDepth,new yn(e.changes.compose(c.changes),OS(Me.mapEffects(e.effects,c.changes),c.effects),c.mapped,c.startSelection,Ln)):o=hu(o,o.length,s.minDepth,e),new xi(o,Ln,t,i)}addSelection(e,t,i,s){let r=this.done.length?this.done[this.done.length-1].selectionsAfter:Ln;return r.length>0&&t-this.prevTime<s&&i==this.prevUserEvent&&i&&/^select($|\.)/.test(i)&&zC(r[r.length-1],e)?this:new xi(vS(this.done,e),this.undone,t,i)}addMapping(e){return new xi(rf(this.done,e),rf(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,i){let s=e==0?this.done:this.undone;if(s.length==0)return null;let r=s[s.length-1],o=r.selectionsAfter[0]||t.selection;if(i&&r.selectionsAfter.length)return t.update({selection:r.selectionsAfter[r.selectionsAfter.length-1],annotations:hp.of({side:e,rest:VC(s),selection:o}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(r.changes){let c=s.length==1?Ln:s.slice(0,s.length-1);return r.mapped&&(c=rf(c,r.mapped)),t.update({changes:r.changes,selection:r.startSelection,effects:r.effects,annotations:hp.of({side:e,rest:c,selection:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}xi.empty=new xi(Ln,Ln);const WC=[{key:"Mod-z",run:gS,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:fp,preventDefault:!0},{linux:"Ctrl-Shift-z",run:fp,preventDefault:!0},{key:"Mod-u",run:ZC,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:FC,preventDefault:!0}];function ll(n,e){return ne.create(n.ranges.map(e),n.mainIndex)}function Pi(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function ni({state:n,dispatch:e},t){let i=ll(n.selection,t);return i.eq(n.selection,!0)?!1:(e(Pi(n,i)),!0)}function Du(n,e){return ne.cursor(e?n.to:n.from)}function yS(n,e){return ni(n,t=>t.empty?n.moveByChar(t,e):Du(t,e))}function Gt(n){return n.textDirectionAt(n.state.selection.main.head)==lt.LTR}const xS=n=>yS(n,!Gt(n)),kS=n=>yS(n,Gt(n));function SS(n,e){return ni(n,t=>t.empty?n.moveByGroup(t,e):Du(t,e))}const UC=n=>SS(n,!Gt(n)),GC=n=>SS(n,Gt(n));function HC(n,e,t){if(e.type.prop(t))return!0;let i=e.to-e.from;return i&&(i>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function Lu(n,e,t){let i=Ct(n).resolveInner(e.head),s=t?Ie.closedBy:Ie.openedBy;for(let u=e.head;;){let f=t?i.childAfter(u):i.childBefore(u);if(!f)break;HC(n,f,s)?i=f:u=t?f.to:f.from}let r=i.type.prop(s),o,c;return r&&(o=t?yi(n,i.from,1):yi(n,i.to,-1))&&o.matched?c=t?o.end.to:o.end.from:c=t?i.to:i.from,ne.cursor(c,t?-1:1)}const KC=n=>ni(n,e=>Lu(n.state,e,!Gt(n))),JC=n=>ni(n,e=>Lu(n.state,e,Gt(n)));function wS(n,e){return ni(n,t=>{if(!t.empty)return Du(t,e);let i=n.moveVertically(t,e);return i.head!=t.head?i:n.moveToLineBoundary(t,e)})}const bS=n=>wS(n,!1),_S=n=>wS(n,!0);function $S(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,i=0,s;if(e){for(let r of n.state.facet(Oe.scrollMargins)){let o=r(n);o?.top&&(t=Math.max(o?.top,t)),o?.bottom&&(i=Math.max(o?.bottom,i))}s=n.scrollDOM.clientHeight-t-i}else s=(n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:i,selfScroll:e,height:Math.max(n.defaultLineHeight,s-5)}}function PS(n,e){let t=$S(n),{state:i}=n,s=ll(i.selection,o=>o.empty?n.moveVertically(o,e,t.height):Du(o,e));if(s.eq(i.selection))return!1;let r;if(t.selfScroll){let o=n.coordsAtPos(i.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=Oe.scrollIntoView(s.main.head,{y:"start",yMargin:o.top-u}))}return n.dispatch(Pi(i,s),{effects:r}),!0}const Zv=n=>PS(n,!1),pp=n=>PS(n,!0);function Qs(n,e,t){let i=n.lineBlockAt(e.head),s=n.moveToLineBoundary(e,t);if(s.head==e.head&&s.head!=(t?i.to:i.from)&&(s=n.moveToLineBoundary(e,t,!1)),!t&&s.head==i.from&&i.length){let r=/^\s*/.exec(n.state.sliceDoc(i.from,Math.min(i.from+100,i.to)))[0].length;r&&e.head!=i.from+r&&(s=ne.cursor(i.from+r))}return s}const ej=n=>ni(n,e=>Qs(n,e,!0)),tj=n=>ni(n,e=>Qs(n,e,!1)),nj=n=>ni(n,e=>Qs(n,e,!Gt(n))),ij=n=>ni(n,e=>Qs(n,e,Gt(n))),sj=n=>ni(n,e=>ne.cursor(n.lineBlockAt(e.head).from,1)),rj=n=>ni(n,e=>ne.cursor(n.lineBlockAt(e.head).to,-1));function lj(n,e,t){let i=!1,s=ll(n.selection,r=>{let o=yi(n,r.head,-1)||yi(n,r.head,1)||r.head>0&&yi(n,r.head-1,1)||r.head<n.doc.length&&yi(n,r.head+1,-1);if(!o||!o.end)return r;i=!0;let c=o.start.from==r.head?o.end.to:o.end.from;return ne.cursor(c)});return i?(e(Pi(n,s)),!0):!1}const oj=({state:n,dispatch:e})=>lj(n,e);function Xn(n,e){let t=ll(n.state.selection,i=>{let s=e(i);return ne.range(i.anchor,s.head,s.goalColumn,s.bidiLevel||void 0)});return t.eq(n.state.selection)?!1:(n.dispatch(Pi(n.state,t)),!0)}function QS(n,e){return Xn(n,t=>n.moveByChar(t,e))}const CS=n=>QS(n,!Gt(n)),jS=n=>QS(n,Gt(n));function TS(n,e){return Xn(n,t=>n.moveByGroup(t,e))}const aj=n=>TS(n,!Gt(n)),cj=n=>TS(n,Gt(n)),uj=n=>Xn(n,e=>Lu(n.state,e,!Gt(n))),dj=n=>Xn(n,e=>Lu(n.state,e,Gt(n)));function NS(n,e){return Xn(n,t=>n.moveVertically(t,e))}const ES=n=>NS(n,!1),AS=n=>NS(n,!0);function MS(n,e){return Xn(n,t=>n.moveVertically(t,e,$S(n).height))}const Fv=n=>MS(n,!1),Xv=n=>MS(n,!0),hj=n=>Xn(n,e=>Qs(n,e,!0)),fj=n=>Xn(n,e=>Qs(n,e,!1)),pj=n=>Xn(n,e=>Qs(n,e,!Gt(n))),mj=n=>Xn(n,e=>Qs(n,e,Gt(n))),gj=n=>Xn(n,e=>ne.cursor(n.lineBlockAt(e.head).from)),Oj=n=>Xn(n,e=>ne.cursor(n.lineBlockAt(e.head).to)),zv=({state:n,dispatch:e})=>(e(Pi(n,{anchor:0})),!0),Bv=({state:n,dispatch:e})=>(e(Pi(n,{anchor:n.doc.length})),!0),Vv=({state:n,dispatch:e})=>(e(Pi(n,{anchor:n.selection.main.anchor,head:0})),!0),qv=({state:n,dispatch:e})=>(e(Pi(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),vj=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),yj=({state:n,dispatch:e})=>{let t=Iu(n).map(({from:i,to:s})=>ne.range(i,Math.min(s+1,n.doc.length)));return e(n.update({selection:ne.create(t),userEvent:"select"})),!0},xj=({state:n,dispatch:e})=>{let t=ll(n.selection,i=>{let s=Ct(n),r=s.resolveStack(i.from,1);if(i.empty){let o=s.resolveStack(i.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<i.from&&c.to>=i.to||c.to>i.to&&c.from<=i.from)&&o.next)return ne.range(c.to,c.from)}return i});return t.eq(n.selection)?!1:(e(Pi(n,t)),!0)},kj=({state:n,dispatch:e})=>{let t=n.selection,i=null;return t.ranges.length>1?i=ne.create([t.main]):t.main.empty||(i=ne.create([ne.cursor(t.main.head)])),i?(e(Pi(n,i)),!0):!1};function qo(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:i}=n,s=i.changeByRange(r=>{let{from:o,to:c}=r;if(o==c){let u=e(r);u<o?(t="delete.backward",u=_c(n,u,!1)):u>o&&(t="delete.forward",u=_c(n,u,!0)),o=Math.min(o,u),c=Math.max(c,u)}else o=_c(n,o,!1),c=_c(n,c,!0);return o==c?{range:r}:{changes:{from:o,to:c},range:ne.cursor(o,o<r.head?-1:1)}});return s.changes.empty?!1:(n.dispatch(i.update(s,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?Oe.announce.of(i.phrase("Selection deleted")):void 0})),!0)}function _c(n,e,t){if(n instanceof Oe)for(let i of n.state.facet(Oe.atomicRanges).map(s=>s(n)))i.between(e,e,(s,r)=>{s<e&&r>e&&(e=t?r:s)});return e}const RS=(n,e,t)=>qo(n,i=>{let s=i.from,{state:r}=n,o=r.doc.lineAt(s),c,u;if(t&&!e&&s>o.from&&s<o.from+200&&!/[^ \t]/.test(c=o.text.slice(0,s-o.from))){if(c[c.length-1]==" ")return s-1;let f=rl(c,r.tabSize),p=f%cu(r)||cu(r);for(let g=0;g<p&&c[c.length-1-g]==" ";g++)s--;u=s}else u=zt(o.text,s-o.from,e,e)+o.from,u==s&&o.number!=(e?r.doc.lines:1)?u+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(o.text.slice(u-o.from,s-o.from))&&(u=zt(o.text,u-o.from,!1,!1)+o.from);return u}),mp=n=>RS(n,!1,!0),DS=n=>RS(n,!0,!1),LS=(n,e)=>qo(n,t=>{let i=t.head,{state:s}=n,r=s.doc.lineAt(i),o=s.charCategorizer(i);for(let c=null;;){if(i==(e?r.to:r.from)){i==t.head&&r.number!=(e?s.doc.lines:1)&&(i+=e?1:-1);break}let u=zt(r.text,i-r.from,e)+r.from,f=r.text.slice(Math.min(i,u)-r.from,Math.max(i,u)-r.from),p=o(f);if(c!=null&&p!=c)break;(f!=" "||i!=t.head)&&(c=p),i=u}return i}),IS=n=>LS(n,!1),Sj=n=>LS(n,!0),wj=n=>qo(n,e=>{let t=n.lineBlockAt(e.head).to;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),bj=n=>qo(n,e=>{let t=n.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),_j=n=>qo(n,e=>{let t=n.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(n.state.doc.length,e.head+1)}),$j=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:Xe.of(["",""])},range:ne.cursor(i.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},Pj=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(i=>{if(!i.empty||i.from==0||i.from==n.doc.length)return{range:i};let s=i.from,r=n.doc.lineAt(s),o=s==r.from?s-1:zt(r.text,s-r.from,!1)+r.from,c=s==r.to?s+1:zt(r.text,s-r.from,!0)+r.from;return{changes:{from:o,to:c,insert:n.doc.slice(s,c).append(n.doc.slice(o,s))},range:ne.cursor(c)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Iu(n){let e=[],t=-1;for(let i of n.selection.ranges){let s=n.doc.lineAt(i.from),r=n.doc.lineAt(i.to);if(!i.empty&&i.to==r.from&&(r=n.doc.lineAt(i.to-1)),t>=s.number){let o=e[e.length-1];o.to=r.to,o.ranges.push(i)}else e.push({from:s.from,to:r.to,ranges:[i]});t=r.number+1}return e}function ZS(n,e,t){if(n.readOnly)return!1;let i=[],s=[];for(let r of Iu(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){i.push({from:r.to,to:o.to},{from:r.from,insert:o.text+n.lineBreak});for(let u of r.ranges)s.push(ne.range(Math.min(n.doc.length,u.anchor+c),Math.min(n.doc.length,u.head+c)))}else{i.push({from:o.from,to:r.from},{from:r.to,insert:n.lineBreak+o.text});for(let u of r.ranges)s.push(ne.range(u.anchor-c,u.head-c))}}return i.length?(e(n.update({changes:i,scrollIntoView:!0,selection:ne.create(s,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const Qj=({state:n,dispatch:e})=>ZS(n,e,!1),Cj=({state:n,dispatch:e})=>ZS(n,e,!0);function FS(n,e,t){if(n.readOnly)return!1;let i=[];for(let s of Iu(n))t?i.push({from:s.from,insert:n.doc.slice(s.from,s.to)+n.lineBreak}):i.push({from:s.to,insert:n.lineBreak+n.doc.slice(s.from,s.to)});return e(n.update({changes:i,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const jj=({state:n,dispatch:e})=>FS(n,e,!1),Tj=({state:n,dispatch:e})=>FS(n,e,!0),Nj=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(Iu(e).map(({from:s,to:r})=>(s>0?s--:r<e.doc.length&&r++,{from:s,to:r}))),i=ll(e.selection,s=>{let r;if(n.lineWrapping){let o=n.lineBlockAt(s.head),c=n.coordsAtPos(s.head,s.assoc||1);c&&(r=o.bottom+n.documentTop-c.bottom+n.defaultLineHeight/2)}return n.moveVertically(s,!0,r)}).map(t);return n.dispatch({changes:t,selection:i,scrollIntoView:!0,userEvent:"delete.line"}),!0};function Ej(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=Ct(n).resolveInner(e),i=t.childBefore(e),s=t.childAfter(e),r;return i&&s&&i.to<=e&&s.from>=e&&(r=i.type.prop(Ie.closedBy))&&r.indexOf(s.name)>-1&&n.doc.lineAt(i.to).from==n.doc.lineAt(s.from).from&&!/\S/.test(n.sliceDoc(i.to,s.from))?{from:i.to,to:s.from}:null}const Yv=XS(!1),Aj=XS(!0);function XS(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let i=e.changeByRange(s=>{let{from:r,to:o}=s,c=e.doc.lineAt(r),u=!n&&r==o&&Ej(e,r);n&&(r=o=(o<=c.to?c:e.doc.lineAt(o)).to);let f=new Au(e,{simulateBreak:r,simulateDoubleBreak:!!u}),p=Hp(f,r);for(p==null&&(p=rl(/^\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=["",To(e,p)];return u&&g.push(To(e,f.lineIndent(c.from,-1))),{changes:{from:r,to:o,insert:Xe.of(g)},range:ne.cursor(r+1+g[1].length)}});return t(e.update(i,{scrollIntoView:!0,userEvent:"input"})),!0}}function tm(n,e){let t=-1;return n.changeByRange(i=>{let s=[];for(let o=i.from;o<=i.to;){let c=n.doc.lineAt(o);c.number>t&&(i.empty||i.to>c.from)&&(e(c,s,i),t=c.number),o=c.to+1}let r=n.changes(s);return{changes:s,range:ne.range(r.mapPos(i.anchor,1),r.mapPos(i.head,1))}})}const Mj=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),i=new Au(n,{overrideIndentation:r=>{let o=t[r];return o??-1}}),s=tm(n,(r,o,c)=>{let u=Hp(i,r.from);if(u==null)return;/\S/.test(r.text)||(u=0);let f=/^\s*/.exec(r.text)[0],p=To(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 s.changes.empty||e(n.update(s,{userEvent:"indent"})),!0},zS=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(tm(n,(t,i)=>{i.push({from:t.from,insert:n.facet(zo)})}),{userEvent:"input.indent"})),!0),BS=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(tm(n,(t,i)=>{let s=/^\s*/.exec(t.text)[0];if(!s)return;let r=rl(s,n.tabSize),o=0,c=To(n,Math.max(0,r-cu(n)));for(;o<s.length&&o<c.length&&s.charCodeAt(o)==c.charCodeAt(o);)o++;i.push({from:t.from+o,to:t.from+s.length,insert:c.slice(o)})}),{userEvent:"delete.dedent"})),!0),Rj=n=>(n.setTabFocusMode(),!0),Dj=[{key:"Ctrl-b",run:xS,shift:CS,preventDefault:!0},{key:"Ctrl-f",run:kS,shift:jS},{key:"Ctrl-p",run:bS,shift:ES},{key:"Ctrl-n",run:_S,shift:AS},{key:"Ctrl-a",run:sj,shift:gj},{key:"Ctrl-e",run:rj,shift:Oj},{key:"Ctrl-d",run:DS},{key:"Ctrl-h",run:mp},{key:"Ctrl-k",run:wj},{key:"Ctrl-Alt-h",run:IS},{key:"Ctrl-o",run:$j},{key:"Ctrl-t",run:Pj},{key:"Ctrl-v",run:pp}],Lj=[{key:"ArrowLeft",run:xS,shift:CS,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:UC,shift:aj,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:nj,shift:pj,preventDefault:!0},{key:"ArrowRight",run:kS,shift:jS,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:GC,shift:cj,preventDefault:!0},{mac:"Cmd-ArrowRight",run:ij,shift:mj,preventDefault:!0},{key:"ArrowUp",run:bS,shift:ES,preventDefault:!0},{mac:"Cmd-ArrowUp",run:zv,shift:Vv},{mac:"Ctrl-ArrowUp",run:Zv,shift:Fv},{key:"ArrowDown",run:_S,shift:AS,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Bv,shift:qv},{mac:"Ctrl-ArrowDown",run:pp,shift:Xv},{key:"PageUp",run:Zv,shift:Fv},{key:"PageDown",run:pp,shift:Xv},{key:"Home",run:tj,shift:fj,preventDefault:!0},{key:"Mod-Home",run:zv,shift:Vv},{key:"End",run:ej,shift:hj,preventDefault:!0},{key:"Mod-End",run:Bv,shift:qv},{key:"Enter",run:Yv,shift:Yv},{key:"Mod-a",run:vj},{key:"Backspace",run:mp,shift:mp},{key:"Delete",run:DS},{key:"Mod-Backspace",mac:"Alt-Backspace",run:IS},{key:"Mod-Delete",mac:"Alt-Delete",run:Sj},{mac:"Mod-Backspace",run:bj},{mac:"Mod-Delete",run:_j}].concat(Dj.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),Ij=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:KC,shift:uj},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:JC,shift:dj},{key:"Alt-ArrowUp",run:Qj},{key:"Shift-Alt-ArrowUp",run:jj},{key:"Alt-ArrowDown",run:Cj},{key:"Shift-Alt-ArrowDown",run:Tj},{key:"Escape",run:kj},{key:"Mod-Enter",run:Aj},{key:"Alt-l",mac:"Ctrl-l",run:yj},{key:"Mod-i",run:xj,preventDefault:!0},{key:"Mod-[",run:BS},{key:"Mod-]",run:zS},{key:"Mod-Alt-\\",run:Mj},{key:"Shift-Mod-k",run:Nj},{key:"Shift-Mod-\\",run:oj},{key:"Mod-/",run:jC},{key:"Alt-A",run:NC},{key:"Ctrl-m",mac:"Shift-Alt-m",run:Rj}].concat(Lj),Zj={key:"Tab",run:zS,shift:BS},Wv=typeof String.prototype.normalize=="function"?n=>n.normalize("NFKD"):n=>n;class il{constructor(e,t,i=0,s=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(i,s),this.bufferStart=i,this.normalize=r?c=>r(Wv(c)):Wv,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 mn(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=Tp(e),i=this.bufferStart+this.bufferPos;this.bufferPos+=gi(e);let s=this.normalize(t);if(s.length)for(let r=0,o=i;;r++){let c=s.charCodeAt(r),u=this.match(c,o,this.bufferPos+this.bufferStart);if(r==s.length-1){if(u)return this.value=u,this;break}o==i&&r<t.length&&t.charCodeAt(r)==c&&o++}}}match(e,t,i){let s=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?s={from:this.matches[r+1],to:i}:(this.matches[r]++,c=!0)),c||(this.matches.splice(r,2),r-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?s={from:t,to:i}:this.matches.push(1,t)),s&&this.test&&!this.test(s.from,s.to,this.buffer,this.bufferStart)&&(s=null),s}}typeof Symbol<"u"&&(il.prototype[Symbol.iterator]=function(){return this});const VS={from:-1,to:-1,match:/.*/.exec("")},nm="gm"+(/x/.unicode==null?"":"u");class qS{constructor(e,t,i,s=0,r=e.length){if(this.text=e,this.to=r,this.curLine="",this.done=!1,this.value=VS,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new YS(e,t,i,s,r);this.re=new RegExp(t,nm+(i?.ignoreCase?"i":"")),this.test=i?.test,this.iter=e.iter();let o=e.lineAt(s);this.curLineStart=o.from,this.matchPos=fu(e,s),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 i=this.curLineStart+t.index,s=i+t[0].length;if(this.matchPos=fu(this.text,s+(i==s?1:0)),i==this.curLineStart+this.curLine.length&&this.nextLine(),(i<s||i>this.value.to)&&(!this.test||this.test(i,s,t)))return this.value={from:i,to:s,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 lf=new WeakMap;class Wr{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,i){let s=lf.get(e);if(!s||s.from>=i||s.to<=t){let c=new Wr(t,e.sliceString(t,i));return lf.set(e,c),c}if(s.from==t&&s.to==i)return s;let{text:r,from:o}=s;return o>t&&(r=e.sliceString(t,o)+r,o=t),s.to<i&&(r+=e.sliceString(s.to,i)),lf.set(e,new Wr(o,r)),new Wr(t,r.slice(t-o,i-o))}}class YS{constructor(e,t,i,s,r){this.text=e,this.to=r,this.done=!1,this.value=VS,this.matchPos=fu(e,s),this.re=new RegExp(t,nm+(i?.ignoreCase?"i":"")),this.test=i?.test,this.flat=Wr.get(e,s,this.chunkEnd(s+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 i=this.flat.from+t.index,s=i+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(i,s,t)))return this.value={from:i,to:s,match:t},this.matchPos=fu(this.text,s+(i==s?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=Wr.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(qS.prototype[Symbol.iterator]=YS.prototype[Symbol.iterator]=function(){return this});function Fj(n){try{return new RegExp(n,nm),!0}catch{return!1}}function fu(n,e){if(e>=n.length)return e;let t=n.lineAt(e),i;for(;e<t.to&&(i=t.text.charCodeAt(e-t.from))>=56320&&i<57344;)e++;return e}function gp(n){let e=String(n.state.doc.lineAt(n.state.selection.main.head).number),t=Je("input",{class:"cm-textfield",name:"line",value:e}),i=Je("form",{class:"cm-gotoLine",onkeydown:r=>{r.keyCode==27?(r.preventDefault(),n.dispatch({effects:vo.of(!1)}),n.focus()):r.keyCode==13&&(r.preventDefault(),s())},onsubmit:r=>{r.preventDefault(),s()}},Je("label",n.state.phrase("Go to line"),": ",t)," ",Je("button",{class:"cm-button",type:"submit"},n.state.phrase("go")),Je("button",{name:"close",onclick:()=>{n.dispatch({effects:vo.of(!1)}),n.focus()},"aria-label":n.state.phrase("close"),type:"button"},["×"]));function s(){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 b=x/100;u&&(b=b*(u=="-"?-1:1)+c.number/o.doc.lines),x=Math.round(o.doc.lines*b)}else f&&u&&(x=x*(u=="-"?-1:1)+c.number);let k=o.doc.line(Math.max(1,Math.min(o.doc.lines,x))),w=ne.cursor(k.from+Math.max(0,Math.min(O,k.length)));n.dispatch({effects:[vo.of(!1),Oe.scrollIntoView(w.from,{y:"center"})],selection:w}),n.focus()}return{dom:i}}const vo=Me.define(),Uv=Dt.define({create(){return!0},update(n,e){for(let t of e.effects)t.is(vo)&&(n=t.value);return n},provide:n=>Co.from(n,e=>e?gp:null)}),Xj=n=>{let e=Qo(n,gp);if(!e){let t=[vo.of(!0)];n.state.field(Uv,!1)==null&&t.push(Me.appendConfig.of([Uv,zj])),n.dispatch({effects:t}),e=Qo(n,gp)}return e&&e.dom.querySelector("input").select(),!0},zj=Oe.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"}}}),Bj={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},Vj=Se.define({combine(n){return _i(n,Bj,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function qj(n){return[Hj,Gj]}const Yj=je.mark({class:"cm-selectionMatch"}),Wj=je.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function Gv(n,e,t,i){return(t==0||n(e.sliceDoc(t-1,t))!=ct.Word)&&(i==e.doc.length||n(e.sliceDoc(i,i+1))!=ct.Word)}function Uj(n,e,t,i){return n(e.sliceDoc(t,t+1))==ct.Word&&n(e.sliceDoc(i-1,i))==ct.Word}const Gj=vt.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(Vj),{state:t}=n,i=t.selection;if(i.ranges.length>1)return je.none;let s=i.main,r,o=null;if(s.empty){if(!e.highlightWordAroundCursor)return je.none;let u=t.wordAt(s.head);if(!u)return je.none;o=t.charCategorizer(s.head),r=t.sliceDoc(u.from,u.to)}else{let u=s.to-s.from;if(u<e.minSelectionLength||u>200)return je.none;if(e.wholeWords){if(r=t.sliceDoc(s.from,s.to),o=t.charCategorizer(s.head),!(Gv(o,t,s.from,s.to)&&Uj(o,t,s.from,s.to)))return je.none}else if(r=t.sliceDoc(s.from,s.to),!r)return je.none}let c=[];for(let u of n.visibleRanges){let f=new il(t.doc,r,u.from,u.to);for(;!f.next().done;){let{from:p,to:g}=f.value;if((!o||Gv(o,t,p,g))&&(s.empty&&p<=s.from&&g>=s.to?c.push(Wj.range(p,g)):(p>=s.to||g<=s.from)&&c.push(Yj.range(p,g)),c.length>e.maxMatches))return je.none}}return je.set(c)}},{decorations:n=>n.decorations}),Hj=Oe.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),Kj=({state:n,dispatch:e})=>{let{selection:t}=n,i=ne.create(t.ranges.map(s=>n.wordAt(s.head)||ne.cursor(s.head)),t.mainIndex);return i.eq(t)?!1:(e(n.update({selection:i})),!0)};function Jj(n,e){let{main:t,ranges:i}=n.selection,s=n.wordAt(t.head),r=s&&s.from==t.from&&s.to==t.to;for(let o=!1,c=new il(n.doc,e,i[i.length-1].to);;)if(c.next(),c.done){if(o)return null;c=new il(n.doc,e,0,Math.max(0,i[i.length-1].from-1)),o=!0}else{if(o&&i.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 eT=({state:n,dispatch:e})=>{let{ranges:t}=n.selection;if(t.some(r=>r.from===r.to))return Kj({state:n,dispatch:e});let i=n.sliceDoc(t[0].from,t[0].to);if(n.selection.ranges.some(r=>n.sliceDoc(r.from,r.to)!=i))return!1;let s=Jj(n,i);return s?(e(n.update({selection:n.selection.addRange(ne.range(s.from,s.to),!1),effects:Oe.scrollIntoView(s.to)})),!0):!1},ol=Se.define({combine(n){return _i(n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new hT(e),scrollToMatch:e=>Oe.scrollIntoView(e)})}});class WS{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||Fj(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(t,i)=>i=="n"?`
55
- `:i=="r"?"\r":i=="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 sT(this):new nT(this)}getCursor(e,t=0,i){let s=e.doc?e:Ze.create({doc:e});return i==null&&(i=s.doc.length),this.regexp?Zr(this,s,t,i):Ir(this,s,t,i)}}class US{constructor(e){this.spec=e}}function Ir(n,e,t,i){return new il(e.doc,n.unquoted,t,i,n.caseSensitive?void 0:s=>s.toLowerCase(),n.wholeWord?tT(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function tT(n,e){return(t,i,s,r)=>((r>t||r+s.length<i)&&(r=Math.max(0,t-2),s=n.sliceString(r,Math.min(n.length,i+2))),(e(pu(s,t-r))!=ct.Word||e(mu(s,t-r))!=ct.Word)&&(e(mu(s,i-r))!=ct.Word||e(pu(s,i-r))!=ct.Word))}class nT extends US{constructor(e){super(e)}nextMatch(e,t,i){let s=Ir(this.spec,e,i,e.doc.length).nextOverlapping();if(s.done){let r=Math.min(e.doc.length,t+this.spec.unquoted.length);s=Ir(this.spec,e,0,r).nextOverlapping()}return s.done||s.value.from==t&&s.value.to==i?null:s.value}prevMatchInRange(e,t,i){for(let s=i;;){let r=Math.max(t,s-1e4-this.spec.unquoted.length),o=Ir(this.spec,e,r,s),c=null;for(;!o.nextOverlapping().done;)c=o.value;if(c)return c;if(r==t)return null;s-=1e4}}prevMatch(e,t,i){let s=this.prevMatchInRange(e,0,t);return s||(s=this.prevMatchInRange(e,Math.max(0,i-this.spec.unquoted.length),e.doc.length)),s&&(s.from!=t||s.to!=i)?s:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let i=Ir(this.spec,e,0,e.doc.length),s=[];for(;!i.next().done;){if(s.length>=t)return null;s.push(i.value)}return s}highlight(e,t,i,s){let r=Ir(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(i+this.spec.unquoted.length,e.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}function Zr(n,e,t,i){return new qS(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:n.wholeWord?iT(e.charCategorizer(e.selection.main.head)):void 0},t,i)}function pu(n,e){return n.slice(zt(n,e,!1),e)}function mu(n,e){return n.slice(e,zt(n,e))}function iT(n){return(e,t,i)=>!i[0].length||(n(pu(i.input,i.index))!=ct.Word||n(mu(i.input,i.index))!=ct.Word)&&(n(mu(i.input,i.index+i[0].length))!=ct.Word||n(pu(i.input,i.index+i[0].length))!=ct.Word)}class sT extends US{nextMatch(e,t,i){let s=Zr(this.spec,e,i,e.doc.length).next();return s.done&&(s=Zr(this.spec,e,0,t).next()),s.done?null:s.value}prevMatchInRange(e,t,i){for(let s=1;;s++){let r=Math.max(t,i-s*1e4),o=Zr(this.spec,e,r,i),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,i){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,i,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,i)=>{if(i=="&")return e.match[0];if(i=="$")return"$";for(let s=i.length;s>0;s--){let r=+i.slice(0,s);if(r>0&&r<e.match.length)return e.match[r]+i.slice(s)}return t})}matchAll(e,t){let i=Zr(this.spec,e,0,e.doc.length),s=[];for(;!i.next().done;){if(s.length>=t)return null;s.push(i.value)}return s}highlight(e,t,i,s){let r=Zr(this.spec,e,Math.max(0,t-250),Math.min(i+250,e.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}const No=Me.define(),im=Me.define(),ks=Dt.define({create(n){return new of(Op(n).create(),null)},update(n,e){for(let t of e.effects)t.is(No)?n=new of(t.value.create(),n.panel):t.is(im)&&(n=new of(n.query,t.value?sm:null));return n},provide:n=>Co.from(n,e=>e.panel)});class of{constructor(e,t){this.query=e,this.panel=t}}const rT=je.mark({class:"cm-searchMatch"}),lT=je.mark({class:"cm-searchMatch cm-searchMatch-selected"}),oT=vt.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field(ks))}update(n){let e=n.state.field(ks);(e!=n.startState.field(ks)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return je.none;let{view:t}=this,i=new Bi;for(let s=0,r=t.visibleRanges,o=r.length;s<o;s++){let{from:c,to:u}=r[s];for(;s<o-1&&u>r[s+1].from-500;)u=r[++s].to;n.highlight(t.state,c,u,(f,p)=>{let g=t.state.selection.ranges.some(O=>O.from==f&&O.to==p);i.add(f,p,g?lT:rT)})}return i.finish()}},{decorations:n=>n.decorations});function Yo(n){return e=>{let t=e.state.field(ks,!1);return t&&t.query.spec.valid?n(e,t):KS(e)}}const gu=Yo((n,{query:e})=>{let{to:t}=n.state.selection.main,i=e.nextMatch(n.state,t,t);if(!i)return!1;let s=ne.single(i.from,i.to),r=n.state.facet(ol);return n.dispatch({selection:s,effects:[rm(n,i),r.scrollToMatch(s.main,n)],userEvent:"select.search"}),HS(n),!0}),Ou=Yo((n,{query:e})=>{let{state:t}=n,{from:i}=t.selection.main,s=e.prevMatch(t,i,i);if(!s)return!1;let r=ne.single(s.from,s.to),o=n.state.facet(ol);return n.dispatch({selection:r,effects:[rm(n,s),o.scrollToMatch(r.main,n)],userEvent:"select.search"}),HS(n),!0}),aT=Yo((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:ne.create(t.map(i=>ne.range(i.from,i.to))),userEvent:"select.search.matches"}),!0)}),cT=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:i,to:s}=t.main,r=[],o=0;for(let c=new il(n.doc,n.sliceDoc(i,s));!c.next().done;){if(r.length>1e3)return!1;c.value.from==i&&(o=r.length),r.push(ne.range(c.value.from,c.value.to))}return e(n.update({selection:ne.create(r,o),userEvent:"select.search.matches"})),!0},Hv=Yo((n,{query:e})=>{let{state:t}=n,{from:i,to:s}=t.selection.main;if(t.readOnly)return!1;let r=e.nextMatch(t,i,i);if(!r)return!1;let o=r,c=[],u,f,p=[];o.from==i&&o.to==s&&(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(Oe.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(i).number)+".")));let g=n.state.changes(c);return o&&(u=ne.single(o.from,o.to).map(g),p.push(rm(n,o)),p.push(t.facet(ol).scrollToMatch(u.main,n))),n.dispatch({changes:g,selection:u,effects:p,userEvent:"input.replace"}),!0}),uT=Yo((n,{query:e})=>{if(n.state.readOnly)return!1;let t=e.matchAll(n.state,1e9).map(s=>{let{from:r,to:o}=s;return{from:r,to:o,insert:e.getReplacement(s)}});if(!t.length)return!1;let i=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:Oe.announce.of(i),userEvent:"input.replace.all"}),!0});function sm(n){return n.state.facet(ol).createPanel(n)}function Op(n,e){var t,i,s,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(ol);return new WS({search:((t=e?.literal)!==null&&t!==void 0?t:f.literal)?u:u.replace(/\n/g,"\\n"),caseSensitive:(i=e?.caseSensitive)!==null&&i!==void 0?i:f.caseSensitive,literal:(s=e?.literal)!==null&&s!==void 0?s: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 GS(n){let e=Qo(n,sm);return e&&e.dom.querySelector("[main-field]")}function HS(n){let e=GS(n);e&&e==n.root.activeElement&&e.select()}const KS=n=>{let e=n.state.field(ks,!1);if(e&&e.panel){let t=GS(n);if(t&&t!=n.root.activeElement){let i=Op(n.state,e.query.spec);i.valid&&n.dispatch({effects:No.of(i)}),t.focus(),t.select()}}else n.dispatch({effects:[im.of(!0),e?No.of(Op(n.state,e.query.spec)):Me.appendConfig.of(pT)]});return!0},JS=n=>{let e=n.state.field(ks,!1);if(!e||!e.panel)return!1;let t=Qo(n,sm);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:im.of(!1)}),!0},dT=[{key:"Mod-f",run:KS,scope:"editor search-panel"},{key:"F3",run:gu,shift:Ou,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:gu,shift:Ou,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:JS,scope:"editor search-panel"},{key:"Mod-Shift-l",run:cT},{key:"Mod-Alt-g",run:Xj},{key:"Mod-d",run:eT,preventDefault:!0}];class hT{constructor(e){this.view=e;let t=this.query=e.state.field(ks).query.spec;this.commit=this.commit.bind(this),this.searchField=Je("input",{value:t.search,placeholder:$n(e,"Find"),"aria-label":$n(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=Je("input",{value:t.replace,placeholder:$n(e,"Replace"),"aria-label":$n(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=Je("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=Je("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=Je("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function i(s,r,o){return Je("button",{class:"cm-button",name:s,onclick:r,type:"button"},o)}this.dom=Je("div",{onkeydown:s=>this.keydown(s),class:"cm-search"},[this.searchField,i("next",()=>gu(e),[$n(e,"next")]),i("prev",()=>Ou(e),[$n(e,"previous")]),i("select",()=>aT(e),[$n(e,"all")]),Je("label",null,[this.caseField,$n(e,"match case")]),Je("label",null,[this.reField,$n(e,"regexp")]),Je("label",null,[this.wordField,$n(e,"by word")]),...e.state.readOnly?[]:[Je("br"),this.replaceField,i("replace",()=>Hv(e),[$n(e,"replace")]),i("replaceAll",()=>uT(e),[$n(e,"replace all")])],Je("button",{name:"close",onclick:()=>JS(e),"aria-label":$n(e,"close"),type:"button"},["×"])])}commit(){let e=new WS({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:No.of(e)}))}keydown(e){xP(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?Ou:gu)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),Hv(this.view))}update(e){for(let t of e.transactions)for(let i of t.effects)i.is(No)&&!i.value.eq(this.query)&&this.setQuery(i.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(ol).top}}function $n(n,e){return n.state.phrase(e)}const $c=30,Pc=/[\s\.,:;?!]/;function rm(n,{from:e,to:t}){let i=n.state.doc.lineAt(e),s=n.state.doc.lineAt(t).to,r=Math.max(i.from,e-$c),o=Math.min(s,t+$c),c=n.state.sliceDoc(r,o);if(r!=i.from){for(let u=0;u<$c;u++)if(!Pc.test(c[u+1])&&Pc.test(c[u])){c=c.slice(u);break}}if(o!=s){for(let u=c.length-1;u>c.length-$c;u--)if(!Pc.test(c[u-1])&&Pc.test(c[u])){c=c.slice(0,u);break}}return Oe.announce.of(`${n.state.phrase("current match")}. ${c} ${n.state.phrase("on line")} ${i.number}.`)}const fT=Oe.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"}}),pT=[ks,Ps.low(oT),fT];class ew{constructor(e,t,i,s){this.state=e,this.pos=t,this.explicit=i,this.view=s,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let t=Ct(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),i=Math.max(t.from,this.pos-250),s=t.text.slice(i-t.from,this.pos-t.from),r=s.search(nw(e,!1));return r<0?null:{from:i+r,to:this.pos,text:s.slice(r)}}get aborted(){return this.abortListeners==null}addEventListener(e,t,i){e=="abort"&&this.abortListeners&&(this.abortListeners.push(t),i&&i.onDocChange&&(this.abortOnDocChange=!0))}}function Kv(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 mT(n){let e=Object.create(null),t=Object.create(null);for(let{label:s}of n){e[s[0]]=!0;for(let r=1;r<s.length;r++)t[s[r]]=!0}let i=Kv(e)+Kv(t)+"*$";return[new RegExp("^"+i),new RegExp(i)]}function tw(n){let e=n.map(s=>typeof s=="string"?{label:s}:s),[t,i]=e.every(s=>/^\w+$/.test(s.label))?[/\w*$/,/\w+$/]:mT(e);return s=>{let r=s.matchBefore(i);return r||s.explicit?{from:r?r.from:s.pos,options:e,validFor:t}:null}}function gT(n,e){return t=>{for(let i=Ct(t.state).resolveInner(t.pos,-1);i;i=i.parent){if(n.indexOf(i.name)>-1)return null;if(i.type.isTop)break}return e(t)}}class Jv{constructor(e,t,i,s){this.completion=e,this.source=t,this.match=i,this.score=s}}function Gs(n){return n.selection.main.from}function nw(n,e){var t;let{source:i}=n,s=e&&i[0]!="^",r=i[i.length-1]!="$";return!s&&!r?n:new RegExp(`${s?"^":""}(?:${i})${r?"$":""}`,(t=n.flags)!==null&&t!==void 0?t:n.ignoreCase?"i":"")}const lm=bi.define();function OT(n,e,t,i){let{main:s}=n.selection,r=t-s.from,o=i-s.from;return{...n.changeByRange(c=>{if(c!=s&&t!=i&&n.sliceDoc(c.from+r,c.from+o)!=n.sliceDoc(t,i))return{range:c};let u=n.toText(e);return{changes:{from:c.from+r,to:i==s.from?c.to:c.from+o,insert:u},range:ne.cursor(c.from+r+u.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const ey=new WeakMap;function vT(n){if(!Array.isArray(n))return n;let e=ey.get(n);return e||ey.set(n,e=tw(n)),e}const vu=Me.define(),Eo=Me.define();class yT{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 i=mn(e,t),s=gi(i);this.chars.push(i);let r=e.slice(t,t+s),o=r.toUpperCase();this.folded.push(mn(o==r?r.toLowerCase():o,0)),t+=s}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:i,any:s,precise:r,byWord:o}=this;if(t.length==1){let S=mn(e,0),Q=gi(S),P=Q==e.length?0:-100;if(S!=t[0])if(S==i[0])P+=-200;else return null;return this.ret(P,[0,Q])}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 S=0,Q=Math.min(e.length,200);S<Q&&f<u;){let P=mn(e,S);(P==t[f]||P==i[f])&&(s[f++]=S),S+=gi(P)}if(f<u)return null}let p=0,g=0,O=!1,x=0,k=-1,w=-1,b=/[a-z]/.test(e),C=!0;for(let S=0,Q=Math.min(e.length,200),P=0;S<Q&&g<u;){let _=mn(e,S);c<0&&(p<u&&_==t[p]&&(r[p++]=S),x<u&&(_==t[x]||_==i[x]?(x==0&&(k=S),w=S+1,x++):x=0));let T,A=_<255?_>=48&&_<=57||_>=97&&_<=122?2:_>=65&&_<=90?1:0:(T=Tp(_))!=T.toLowerCase()?1:T!=T.toUpperCase()?2:0;(!S||A==1&&b||P==0&&A!=0)&&(t[g]==_||i[g]==_&&(O=!0)?o[g++]=S:o.length&&(C=!1)),P=A,S+=gi(_)}return g==u&&o[0]==0&&C?this.result(-100+(O?-200:0),o,e):x==u&&k==0?this.ret(-200-e.length+(w==e.length?0:-100),[0,w]):c>-1?this.ret(-700-e.length,[c,c+this.pattern.length]):x==u?this.ret(-900-e.length,[k,w]):g==u?this.result(-100+(O?-200:0)+-700+(C?0:-1100),o,e):t.length==2?null:this.result((s[0]?-700:0)+-200+-1100,s,e)}result(e,t,i){let s=[],r=0;for(let o of t){let c=o+(this.astral?gi(mn(i,o)):1);r&&s[r-1]==o?s[r-1]=c:(s[r++]=o,s[r++]=c)}return this.ret(e-i.length,s)}}class xT{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),i=t==this.pattern?0:t.toLowerCase()==this.folded?-200:null;return i==null?null:(this.matched=[0,t.length],this.score=i+(e.length==this.pattern.length?0:-100),this)}}const Rt=Se.define({combine(n){return _i(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:kT,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)=>i=>ty(e(i),t(i)),optionClass:(e,t)=>i=>ty(e(i),t(i)),addToOptions:(e,t)=>e.concat(t),filterStrict:(e,t)=>e||t})}});function ty(n,e){return n?e?n+" "+e:n:e}function kT(n,e,t,i,s,r){let o=n.textDirection==lt.RTL,c=o,u=!1,f="top",p,g,O=e.left-s.left,x=s.right-e.right,k=i.right-i.left,w=i.bottom-i.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(s.top,Math.min(t.top,s.bottom-w))-e.top,g=Math.min(400,c?O:x);else{u=!0,g=Math.min(400,(o?e.right:s.right-e.left)-30);let S=s.bottom-e.bottom;S>=w||S>e.top?p=t.bottom-e.top:(f="bottom",p=e.bottom-t.top)}let b=(e.bottom-e.top)/r.offsetHeight,C=(e.right-e.left)/r.offsetWidth;return{style:`${f}: ${p/b}px; max-width: ${g/C}px`,class:"cm-completionInfo-"+(u?o?"left-narrow":"right-narrow":c?"left":"right")}}function ST(n){let e=n.addToOptions.slice();return n.icons&&e.push({render(t){let i=document.createElement("div");return i.classList.add("cm-completionIcon"),t.type&&i.classList.add(...t.type.split(/\s+/g).map(s=>"cm-completionIcon-"+s)),i.setAttribute("aria-hidden","true"),i},position:20}),e.push({render(t,i,s,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 i=document.createElement("span");return i.className="cm-completionDetail",i.textContent=t.detail,i},position:80}),e.sort((t,i)=>t.position-i.position).map(t=>t.render)}function af(n,e,t){if(n<=t)return{from:0,to:n};if(e<0&&(e=0),e<=n>>1){let s=Math.floor(e/t);return{from:s*t,to:(s+1)*t}}let i=Math.floor((n-e)/t);return{from:n-(i+1)*t,to:n-i*t}}class wT{constructor(e,t,i){this.view=e,this.stateField=t,this.applyCompletion=i,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:u=>this.placeInfo(u),key:this},this.space=null,this.currentClass="";let s=e.state.field(t),{options:r,selected:o}=s.open,c=e.state.facet(Rt);this.optionContent=ST(c),this.optionClass=c.optionClass,this.tooltipClass=c.tooltipClass,this.range=af(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(Rt).closeOnBlur&&u.relatedTarget!=e.contentDOM&&e.dispatch({effects:Eo.of(null)})}),this.showOptions(r,s.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 i=e.state.field(this.stateField),s=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),i!=s){let{options:r,selected:o,disabled:c}=i.open;(!s.open||s.open.options!=r)&&(this.range=af(r.length,o,e.state.facet(Rt).maxRenderedOptions),this.showOptions(r,i.id)),this.updateSel(),c!=((t=s.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 i of this.currentClass.split(" "))i&&this.dom.classList.remove(i);for(let i of t.split(" "))i&&this.dom.classList.add(i);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=af(t.options.length,t.selected,this.view.state.facet(Rt).maxRenderedOptions),this.showOptions(t.options,e.id)),this.updateSelectedOption(t.selected)){this.destroyInfo();let{completion:i}=t.options[t.selected],{info:s}=i;if(!s)return;let r=typeof s=="string"?document.createTextNode(s):s(i);if(!r)return;"then"in r?r.then(o=>{o&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(o,i)}).catch(o=>vn(this.view.state,o,"completion info")):this.addInfoPane(r,i)}}addInfoPane(e,t){this.destroyInfo();let i=this.info=document.createElement("div");if(i.className="cm-tooltip cm-completionInfo",e.nodeType!=null)i.appendChild(e),this.infoDestroy=null;else{let{dom:s,destroy:r}=e;i.appendChild(s),this.infoDestroy=r||null}this.dom.appendChild(i),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let i=this.list.firstChild,s=this.range.from;i;i=i.nextSibling,s++)i.nodeName!="LI"||!i.id?s--:s==e?i.hasAttribute("aria-selected")||(i.setAttribute("aria-selected","true"),t=i):i.hasAttribute("aria-selected")&&i.removeAttribute("aria-selected");return t&&_T(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),i=this.info.getBoundingClientRect(),s=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 s.top>Math.min(r.bottom,t.bottom)-10||s.bottom<Math.max(r.top,t.top)+10?null:this.view.state.facet(Rt).positionInfo(this.view,t,s,i,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,i){const s=document.createElement("ul");s.id=t,s.setAttribute("role","listbox"),s.setAttribute("aria-expanded","true"),s.setAttribute("aria-label",this.view.state.phrase("Completions")),s.addEventListener("mousedown",o=>{o.target==s&&o.preventDefault()});let r=null;for(let o=i.from;o<i.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>i.from||i.from==0))if(r=O,typeof f!="string"&&f.header)s.appendChild(f.header(f));else{let x=s.appendChild(document.createElement("completion-section"));x.textContent=O}}const p=s.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 i.from&&s.classList.add("cm-completionListIncompleteTop"),i.to<e.length&&s.classList.add("cm-completionListIncompleteBottom"),s}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function bT(n,e){return t=>new wT(t,n,e)}function _T(n,e){let t=n.getBoundingClientRect(),i=e.getBoundingClientRect(),s=t.height/n.offsetHeight;i.top<t.top?n.scrollTop-=(t.top-i.top)/s:i.bottom>t.bottom&&(n.scrollTop+=(i.bottom-t.bottom)/s)}function ny(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function $T(n,e){let t=[],i=null,s=f=>{t.push(f);let{section:p}=f.completion;if(p){i||(i=[]);let g=typeof p=="string"?p:p.name;i.some(O=>O.name==g)||i.push(typeof p=="string"?{name:g}:p)}},r=e.facet(Rt);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)s(new Jv(g,f.source,p?p(g):[],1e9-t.length));else{let g=e.sliceDoc(f.from,f.to),O,x=r.filterStrict?new xT(g):new yT(g);for(let k of f.result.options)if(O=x.match(k.label)){let w=k.displayLabel?p?p(k,O.matched):[]:O.matched;s(new Jv(k,f.source,w,O.score+(k.boost||0)))}}}if(i){let f=Object.create(null),p=0,g=(O,x)=>{var k,w;return((k=O.rank)!==null&&k!==void 0?k:1e9)-((w=x.rank)!==null&&w!==void 0?w:1e9)||(O.name<x.name?-1:1)};for(let O of i.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):ny(f.completion)>ny(c)&&(o[o.length-1]=f),c=f.completion}return o}class Br{constructor(e,t,i,s,r,o){this.options=e,this.attrs=t,this.tooltip=i,this.timestamp=s,this.selected=r,this.disabled=o}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Br(this.options,iy(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,i,s,r,o){if(s&&!o&&e.some(f=>f.isPending))return s.setDisabled();let c=$T(e,t);if(!c.length)return s&&e.some(f=>f.isPending)?s.setDisabled():null;let u=t.facet(Rt).selectOnOpen?0:-1;if(s&&s.selected!=u&&s.selected!=-1){let f=s.options[s.selected].completion;for(let p=0;p<c.length;p++)if(c[p].completion==f){u=p;break}}return new Br(c,iy(i,u),{pos:e.reduce((f,p)=>p.hasResult()?Math.min(f,p.from):f,1e8),create:NT,above:r.aboveCursor},s?s.timestamp:Date.now(),u,!1)}map(e){return new Br(this.options,this.attrs,{...this.tooltip,pos:e.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new Br(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class yu{constructor(e,t,i){this.active=e,this.id=t,this.open=i}static start(){return new yu(jT,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,i=t.facet(Rt),r=(i.override||t.languageDataAt("autocomplete",Gs(t)).map(vT)).map(u=>(this.active.find(p=>p.source==u)||new In(u,this.active.some(p=>p.state!=0)?1:0)).update(e,i));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(om));o&&e.docChanged&&(o=o.map(e.changes)),e.selection||r.some(u=>u.hasResult()&&e.changes.touchesRange(u.from,u.to))||!PT(r,this.active)||c?o=Br.build(r,t,this.id,o,i,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 In(u.source,0):u));for(let u of e.effects)u.is(sw)&&(o=o&&o.setSelected(u.value,this.id));return r==this.active&&o==this.open?this:new yu(r,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?QT:CT}}function PT(n,e){if(n==e)return!0;for(let t=0,i=0;;){for(;t<n.length&&!n[t].hasResult();)t++;for(;i<e.length&&!e[i].hasResult();)i++;let s=t==n.length,r=i==e.length;if(s||r)return s==r;if(n[t++].result!=e[i++].result)return!1}}const QT={"aria-autocomplete":"list"},CT={};function iy(n,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":n};return e>-1&&(t["aria-activedescendant"]=n+"-"+e),t}const jT=[];function iw(n,e){if(n.isUserEvent("input.complete")){let i=n.annotation(lm);if(i&&e.activateOnCompletion(i))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 In{constructor(e,t,i=!1){this.source=e,this.state=t,this.explicit=i}hasResult(){return!1}get isPending(){return this.state==1}update(e,t){let i=iw(e,t),s=this;(i&8||i&16&&this.touches(e))&&(s=new In(s.source,0)),i&4&&s.state==0&&(s=new In(this.source,1)),s=s.updateFor(e,i);for(let r of e.effects)if(r.is(vu))s=new In(s.source,1,r.value);else if(r.is(Eo))s=new In(s.source,0);else if(r.is(om))for(let o of r.value)o.source==s.source&&(s=o);return s}updateFor(e,t){return this.map(e.changes)}map(e){return this}touches(e){return e.changes.touchesRange(Gs(e.state))}}class Ur extends In{constructor(e,t,i,s,r,o){super(e,3,t),this.limit=i,this.result=s,this.from=r,this.to=o}hasResult(){return!0}updateFor(e,t){var i;if(!(t&3))return this.map(e.changes);let s=this.result;s.map&&!e.changes.empty&&(s=s.map(s,e.changes));let r=e.changes.mapPos(this.from),o=e.changes.mapPos(this.to,1),c=Gs(e.state);if(c>o||!s||t&2&&(Gs(e.startState)==this.from||c<this.limit))return new In(this.source,t&4?1:0);let u=e.changes.mapPos(this.limit);return TT(s.validFor,e.state,r,o)?new Ur(this.source,this.explicit,u,s,r,o):s.update&&(s=s.update(s,r,o,new ew(e.state,c,!1)))?new Ur(this.source,this.explicit,u,s,s.from,(i=s.to)!==null&&i!==void 0?i:Gs(e.state)):new In(this.source,1,this.explicit)}map(e){return e.empty?this:(this.result.map?this.result.map(this.result,e):this.result)?new Ur(this.source,this.explicit,e.mapPos(this.limit),this.result,e.mapPos(this.from),e.mapPos(this.to,1)):new In(this.source,0)}touches(e){return e.changes.touchesRange(this.from,this.to)}}function TT(n,e,t,i){if(!n)return!1;let s=e.sliceDoc(t,i);return typeof n=="function"?n(s,t,i,e):nw(n,!0).test(s)}const om=Me.define({map(n,e){return n.map(t=>t.map(e))}}),sw=Me.define(),On=Dt.define({create(){return yu.start()},update(n,e){return n.update(e)},provide:n=>[Vp.from(n,e=>e.tooltip),Oe.contentAttributes.from(n,e=>e.attrs)]});function am(n,e){const t=e.completion.apply||e.completion.label;let i=n.state.field(On).active.find(s=>s.source==e.source);return i instanceof Ur?(typeof t=="string"?n.dispatch({...OT(n.state,t,i.from,i.to),annotations:lm.of(e.completion)}):t(n,e.completion,i.from,i.to),!0):!1}const NT=bT(On,am);function Qc(n,e="option"){return t=>{let i=t.state.field(On,!1);if(!i||!i.open||i.open.disabled||Date.now()-i.open.timestamp<t.state.facet(Rt).interactionDelay)return!1;let s=1,r;e=="page"&&(r=Dk(t,i.open.tooltip))&&(s=Math.max(2,Math.floor(r.dom.offsetHeight/r.dom.querySelector("li").offsetHeight)-1));let{length:o}=i.open.options,c=i.open.selected>-1?i.open.selected+s*(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:sw.of(c)}),!0}}const ET=n=>{let e=n.state.field(On,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<n.state.facet(Rt).interactionDelay?!1:am(n,e.open.options[e.open.selected])},cf=n=>n.state.field(On,!1)?(n.dispatch({effects:vu.of(!0)}),!0):!1,AT=n=>{let e=n.state.field(On,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Eo.of(null)}),!0)};class MT{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const RT=50,DT=1e3,LT=vt.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(On).active)e.isPending&&this.startQuery(e)}update(n){let e=n.state.field(On),t=n.state.facet(Rt);if(!n.selectionSet&&!n.docChanged&&n.startState.field(On)==e)return;let i=n.transactions.some(r=>{let o=iw(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(i||o.context.abortOnDocChange&&n.docChanged||o.updates.length+n.transactions.length>RT&&Date.now()-o.time>DT){for(let c of o.context.abortListeners)try{c()}catch(u){vn(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(vu)))&&(this.pendingStart=!0);let s=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(),s):-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(On);for(let t of e.active)t.isPending&&!this.running.some(i=>i.active.source==t.source)&&this.startQuery(t);this.running.length&&e.open&&e.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Rt).updateSyncTime))}startQuery(n){let{state:e}=this.view,t=Gs(e),i=new ew(e,t,n.explicit,this.view),s=new MT(n,i);this.running.push(s),Promise.resolve(n.source(i)).then(r=>{s.context.aborted||(s.done=r||null,this.scheduleAccept())},r=>{this.view.dispatch({effects:Eo.of(null)}),vn(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(Rt).updateSyncTime))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(Rt),i=this.view.state.field(On);for(let s=0;s<this.running.length;s++){let r=this.running[s];if(r.done===void 0)continue;if(this.running.splice(s--,1),r.done){let c=Gs(r.updates.length?r.updates[0].startState:this.view.state),u=Math.min(c,r.done.from+(r.active.explicit?0:1)),f=new Ur(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=i.active.find(c=>c.source==r.active.source);if(o&&o.isPending)if(r.done==null){let c=new In(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||i.open&&i.open.disabled)&&this.view.dispatch({effects:om.of(e)})}},{eventHandlers:{blur(n){let e=this.view.state.field(On,!1);if(e&&e.tooltip&&this.view.state.facet(Rt).closeOnBlur){let t=e.open&&Dk(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:Eo.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:vu.of(!1)}),20),this.composing=0}}}),IT=typeof navigator=="object"&&/Win/.test(navigator.platform),ZT=Ps.highest(Oe.domEventHandlers({keydown(n,e){let t=e.state.field(On,!1);if(!t||!t.open||t.open.disabled||t.open.selected<0||n.key.length>1||n.ctrlKey&&!(IT&&n.altKey)||n.metaKey)return!1;let i=t.open.options[t.open.selected],s=t.active.find(o=>o.source==i.source),r=i.completion.commitCharacters||s.result.commitCharacters;return r&&r.indexOf(n.key)>-1&&am(e,i),!1}})),rw=Oe.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 FT{constructor(e,t,i,s){this.field=e,this.line=t,this.from=i,this.to=s}}class cm{constructor(e,t,i){this.field=e,this.from=t,this.to=i}map(e){let t=e.mapPos(this.from,-1,Xt.TrackDel),i=e.mapPos(this.to,1,Xt.TrackDel);return t==null||i==null?null:new cm(this.field,t,i)}}class um{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let i=[],s=[t],r=e.doc.lineAt(t),o=/^\s*/.exec(r.text)[0];for(let u of this.lines){if(i.length){let f=o,p=/^\t*/.exec(u)[0].length;for(let g=0;g<p;g++)f+=e.facet(zo);s.push(t+f.length-p),u=f+u.slice(p)}i.push(u),t+=u.length+1}let c=this.fieldPositions.map(u=>new cm(u.field,s[u.line]+u.from,s[u.line]+u.to));return{text:i,ranges:c}}static parse(e){let t=[],i=[],s=[],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 s)O.field>=f&&O.field++}for(let g of s)if(g.line==i.length&&g.from>r.index){let O=r[2]?3+(r[1]||"").length:2;g.from-=O,g.to-=O}s.push(new FT(f,i.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 s)p.line==i.length&&p.from>f&&(p.from--,p.to--);return u}),i.push(o)}return new um(i,s)}}let XT=je.widget({widget:new class extends $i{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),zT=je.mark({class:"cm-snippetField"});class al{constructor(e,t){this.ranges=e,this.active=t,this.deco=je.set(e.map(i=>(i.from==i.to?XT:zT).range(i.from,i.to)),!0)}map(e){let t=[];for(let i of this.ranges){let s=i.map(e);if(!s)return null;t.push(s)}return new al(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(i=>i.field==this.active&&i.from<=t.from&&i.to>=t.to))}}const Wo=Me.define({map(n,e){return n&&n.map(e)}}),BT=Me.define(),Ao=Dt.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(Wo))return t.value;if(t.is(BT)&&n)return new al(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=>Oe.decorations.from(n,e=>e?e.deco:je.none)});function dm(n,e){return ne.create(n.filter(t=>t.field==e).map(t=>ne.range(t.from,t.to)))}function VT(n){let e=um.parse(n);return(t,i,s,r)=>{let{text:o,ranges:c}=e.instantiate(t.state,s),{main:u}=t.state.selection,f={changes:{from:s,to:r==u.from?u.to:r,insert:Xe.of(o)},scrollIntoView:!0,annotations:i?[lm.of(i),wt.userEvent.of("input.complete")]:void 0};if(c.length&&(f.selection=dm(c,0)),c.some(p=>p.field>0)){let p=new al(c,0),g=f.effects=[Wo.of(p)];t.state.field(Ao,!1)===void 0&&g.push(Me.appendConfig.of([Ao,GT,HT,rw]))}t.dispatch(t.state.update(f))}}function lw(n){return({state:e,dispatch:t})=>{let i=e.field(Ao,!1);if(!i||n<0&&i.active==0)return!1;let s=i.active+n,r=n>0&&!i.ranges.some(o=>o.field==s+n);return t(e.update({selection:dm(i.ranges,s),effects:Wo.of(r?null:new al(i.ranges,s)),scrollIntoView:!0})),!0}}const qT=({state:n,dispatch:e})=>n.field(Ao,!1)?(e(n.update({effects:Wo.of(null)})),!0):!1,YT=lw(1),WT=lw(-1),UT=[{key:"Tab",run:YT,shift:WT},{key:"Escape",run:qT}],sy=Se.define({combine(n){return n.length?n[0]:UT}}),GT=Ps.highest(Fo.compute([sy],n=>n.facet(sy)));function fn(n,e){return{...e,apply:VT(n)}}const HT=Oe.domEventHandlers({mousedown(n,e){let t=e.state.field(Ao,!1),i;if(!t||(i=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let s=t.ranges.find(r=>r.from<=i&&r.to>=i);return!s||s.field==t.active?!1:(e.dispatch({selection:dm(t.ranges,s.field),effects:Wo.of(t.ranges.some(r=>r.field>s.field)?new al(t.ranges,s.field):null),scrollIntoView:!0}),!0)}}),Mo={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},qs=Me.define({map(n,e){let t=e.mapPos(n,-1,Xt.TrackAfter);return t??void 0}}),hm=new class extends Ks{};hm.startSide=1;hm.endSide=-1;const ow=Dt.define({create(){return qe.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:i=>i>=t.from&&i<=t.to})}for(let t of e.effects)t.is(qs)&&(n=n.update({add:[hm.range(t.value,t.value+1)]}));return n}});function KT(){return[eN,ow]}const uf="()[]{}<>«»»«[]{}";function aw(n){for(let e=0;e<uf.length;e+=2)if(uf.charCodeAt(e)==n)return uf.charAt(e+1);return Tp(n<128?n:n+1)}function cw(n,e){return n.languageDataAt("closeBrackets",e)[0]||Mo}const JT=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),eN=Oe.inputHandler.of((n,e,t,i)=>{if((JT?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let s=n.state.selection.main;if(i.length>2||i.length==2&&gi(mn(i,0))==1||e!=s.from||t!=s.to)return!1;let r=iN(n.state,i);return r?(n.dispatch(r),!0):!1}),tN=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let i=cw(n,n.selection.main.head).brackets||Mo.brackets,s=null,r=n.changeByRange(o=>{if(o.empty){let c=sN(n.doc,o.head);for(let u of i)if(u==c&&Zu(n.doc,o.head)==aw(mn(u,0)))return{changes:{from:o.head-u.length,to:o.head+u.length},range:ne.cursor(o.head-u.length)}}return{range:s=o}});return s||e(n.update(r,{scrollIntoView:!0,userEvent:"delete.backward"})),!s},nN=[{key:"Backspace",run:tN}];function iN(n,e){let t=cw(n,n.selection.main.head),i=t.brackets||Mo.brackets;for(let s of i){let r=aw(mn(s,0));if(e==s)return r==s?oN(n,s,i.indexOf(s+s+s)>-1,t):rN(n,s,r,t.before||Mo.before);if(e==r&&uw(n,n.selection.main.from))return lN(n,s,r)}return null}function uw(n,e){let t=!1;return n.field(ow).between(0,n.doc.length,i=>{i==e&&(t=!0)}),t}function Zu(n,e){let t=n.sliceString(e,e+2);return t.slice(0,gi(mn(t,0)))}function sN(n,e){let t=n.sliceString(e-2,e);return gi(mn(t,0))==t.length?t:t.slice(1)}function rN(n,e,t,i){let s=null,r=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:t,from:o.to}],effects:qs.of(o.to+e.length),range:ne.range(o.anchor+e.length,o.head+e.length)};let c=Zu(n.doc,o.head);return!c||/\s/.test(c)||i.indexOf(c)>-1?{changes:{insert:e+t,from:o.head},effects:qs.of(o.head+e.length),range:ne.cursor(o.head+e.length)}:{range:s=o}});return s?null:n.update(r,{scrollIntoView:!0,userEvent:"input.type"})}function lN(n,e,t){let i=null,s=n.changeByRange(r=>r.empty&&Zu(n.doc,r.head)==t?{changes:{from:r.head,to:r.head+t.length,insert:t},range:ne.cursor(r.head+t.length)}:i={range:r});return i?null:n.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function oN(n,e,t,i){let s=i.stringPrefixes||Mo.stringPrefixes,r=null,o=n.changeByRange(c=>{if(!c.empty)return{changes:[{insert:e,from:c.from},{insert:e,from:c.to}],effects:qs.of(c.to+e.length),range:ne.range(c.anchor+e.length,c.head+e.length)};let u=c.head,f=Zu(n.doc,u),p;if(f==e){if(ry(n,u))return{changes:{insert:e+e,from:u},effects:qs.of(u+e.length),range:ne.cursor(u+e.length)};if(uw(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:ne.cursor(u+O.length)}}}else{if(t&&n.sliceDoc(u-2*e.length,u)==e+e&&(p=ly(n,u-2*e.length,s))>-1&&ry(n,p))return{changes:{insert:e+e+e+e,from:u},effects:qs.of(u+e.length),range:ne.cursor(u+e.length)};if(n.charCategorizer(u)(f)!=ct.Word&&ly(n,u,s)>-1&&!aN(n,u,e,s))return{changes:{insert:e+e,from:u},effects:qs.of(u+e.length),range:ne.cursor(u+e.length)}}return{range:r=c}});return r?null:n.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function ry(n,e){let t=Ct(n).resolveInner(e+1);return t.parent&&t.from==e}function aN(n,e,t,i){let s=Ct(n).resolveInner(e,-1),r=i.reduce((o,c)=>Math.max(o,c.length),0);for(let o=0;o<5;o++){let c=n.sliceDoc(s.from,Math.min(s.to,s.from+t.length+r)),u=c.indexOf(t);if(!u||u>-1&&i.indexOf(c.slice(0,u))>-1){let p=s.firstChild;for(;p&&p.from==s.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=s.to==e&&s.parent;if(!f)break;s=f}return!1}function ly(n,e,t){let i=n.charCategorizer(e);if(i(n.sliceDoc(e-1,e))!=ct.Word)return e;for(let s of t){let r=e-s.length;if(n.sliceDoc(r,e)==s&&i(n.sliceDoc(r-1,r))!=ct.Word)return r}return-1}function cN(n={}){return[ZT,On,Rt.of(n),LT,uN,rw]}const dw=[{key:"Ctrl-Space",run:cf},{mac:"Alt-`",run:cf},{mac:"Alt-i",run:cf},{key:"Escape",run:AT},{key:"ArrowDown",run:Qc(!0)},{key:"ArrowUp",run:Qc(!1)},{key:"PageDown",run:Qc(!0,"page")},{key:"PageUp",run:Qc(!1,"page")},{key:"Enter",run:ET}],uN=Ps.highest(Fo.computeN([Rt],n=>n.facet(Rt).defaultKeymap?[dw]:[]));class oy{constructor(e,t,i){this.from=e,this.to=t,this.diagnostic=i}}class Bs{constructor(e,t,i){this.diagnostics=e,this.panel=t,this.selected=i}static init(e,t,i){let s=i.facet(Ro).markerFilter;s&&(e=s(e,i));let r=e.slice().sort((p,g)=>p.from-g.from||p.to-g.to),o=new Bi,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((w,b)=>Math.min(w,b.to),g&&g.from>O?g.from:1e8)):(O=g.from,x=g.to,c.push(g),p++);p<r.length;){let w=r[p];if(w.from==O&&(w.to>w.from||w.to==O))c.push(w),p++,x=Math.min(w.to,x);else{x=Math.min(w.from,x);break}}let k=wN(c);if(c.some(w=>w.from==w.to||w.from==w.to-1&&i.doc.lineAt(w.from).to==w.from))o.add(O,O,je.widget({widget:new yN(k),diagnostics:c.slice()}));else{let w=c.reduce((b,C)=>C.markClass?b+" "+C.markClass:b,"");o.add(O,x,je.mark({class:"cm-lintRange cm-lintRange-"+k+w,diagnostics:c.slice(),inclusiveEnd:c.some(b=>b.to>x)}))}u=x;for(let w=0;w<c.length;w++)c[w].to<=u&&c.splice(w--,1)}let f=o.finish();return new Bs(f,t,sl(f))}}function sl(n,e=null,t=0){let i=null;return n.between(t,1e9,(s,r,{spec:o})=>{if(!(e&&o.diagnostics.indexOf(e)<0))if(!i)i=new oy(s,r,e||o.diagnostics[0]);else{if(o.diagnostics.indexOf(i.diagnostic)<0)return!1;i=new oy(i.from,r,i.diagnostic)}}),i}function dN(n,e){let t=e.pos,i=e.end||t,s=n.state.facet(Ro).hideOn(n,t,i);if(s!=null)return s;let r=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(o=>o.is(hw))||n.changes.touchesRange(r.from,Math.max(r.to,i)))}function hN(n,e){return n.field(Cn,!1)?e:e.concat(Me.appendConfig.of(bN))}const hw=Me.define(),fm=Me.define(),fw=Me.define(),Cn=Dt.define({create(){return new Bs(je.none,null,null)},update(n,e){if(e.docChanged&&n.diagnostics.size){let t=n.diagnostics.map(e.changes),i=null,s=n.panel;if(n.selected){let r=e.changes.mapPos(n.selected.from,1);i=sl(t,n.selected.diagnostic,r)||sl(t,null,r)}!t.size&&s&&e.state.facet(Ro).autoPanel&&(s=null),n=new Bs(t,s,i)}for(let t of e.effects)if(t.is(hw)){let i=e.state.facet(Ro).autoPanel?t.value.length?Do.open:null:n.panel;n=Bs.init(t.value,i,e.state)}else t.is(fm)?n=new Bs(n.diagnostics,t.value?Do.open:null,n.selected):t.is(fw)&&(n=new Bs(n.diagnostics,n.panel,t.value));return n},provide:n=>[Co.from(n,e=>e.panel),Oe.decorations.from(n,e=>e.diagnostics)]}),fN=je.mark({class:"cm-lintRange cm-lintRange-active"});function pN(n,e,t){let{diagnostics:i}=n.state.field(Cn),s,r=-1,o=-1;i.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 s=p.diagnostics,r=u,o=f,!1});let c=n.state.facet(Ro).tooltipFilter;return s&&c&&(s=c(s,n.state)),s?{pos:r,end:o,above:n.state.doc.lineAt(r).to<o,create(){return{dom:mN(n,s)}}}:null}function mN(n,e){return Je("ul",{class:"cm-tooltip-lint"},e.map(t=>mw(n,t,!1)))}const gN=n=>{let e=n.state.field(Cn,!1);(!e||!e.panel)&&n.dispatch({effects:hN(n.state,[fm.of(!0)])});let t=Qo(n,Do.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},ay=n=>{let e=n.state.field(Cn,!1);return!e||!e.panel?!1:(n.dispatch({effects:fm.of(!1)}),!0)},ON=n=>{let e=n.state.field(Cn,!1);if(!e)return!1;let t=n.state.selection.main,i=e.diagnostics.iter(t.to+1);return!i.value&&(i=e.diagnostics.iter(0),!i.value||i.from==t.from&&i.to==t.to)?!1:(n.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0}),!0)},vN=[{key:"Mod-Shift-m",run:gN,preventDefault:!0},{key:"F8",run:ON}],Ro=Se.define({combine(n){return Object.assign({sources:n.map(e=>e.source).filter(e=>e!=null)},_i(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{needsRefresh:(e,t)=>e?t?i=>e(i)||t(i):e:t}))}});function pw(n){let e=[];if(n)e:for(let{name:t}of n){for(let i=0;i<t.length;i++){let s=t[i];if(/[a-zA-Z]/.test(s)&&!e.some(r=>r.toLowerCase()==s.toLowerCase())){e.push(s);continue e}}e.push("")}return e}function mw(n,e,t){var i;let s=t?pw(e.actions):[];return Je("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},Je("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(n):e.message),(i=e.actions)===null||i===void 0?void 0:i.map((r,o)=>{let c=!1,u=O=>{if(O.preventDefault(),c)return;c=!0;let x=sl(n.state.field(Cn).diagnostics,e);x&&r.apply(n,x.from,x.to)},{name:f}=r,p=s[o]?f.indexOf(s[o]):-1,g=p<0?f:[f.slice(0,p),Je("u",f.slice(p,p+1)),f.slice(p+1)];return Je("button",{type:"button",class:"cm-diagnosticAction",onclick:u,onmousedown:u,"aria-label":` Action: ${f}${p<0?"":` (access key "${s[o]})"`}.`},g)}),e.source&&Je("div",{class:"cm-diagnosticSource"},e.source))}class yN extends $i{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return Je("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class cy{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=mw(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class Do{constructor(e){this.view=e,this.items=[];let t=s=>{if(s.keyCode==27)ay(this.view),this.view.focus();else if(s.keyCode==38||s.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(s.keyCode==40||s.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(s.keyCode==36)this.moveSelection(0);else if(s.keyCode==35)this.moveSelection(this.items.length-1);else if(s.keyCode==13)this.view.focus();else if(s.keyCode>=65&&s.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)==s.keyCode){let u=sl(this.view.state.field(Cn).diagnostics,r);u&&r.actions[c].apply(e,u.from,u.to)}}else return;s.preventDefault()},i=s=>{for(let r=0;r<this.items.length;r++)this.items[r].dom.contains(s.target)&&this.moveSelection(r)};this.list=Je("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:i}),this.dom=Je("div",{class:"cm-panel-lint"},this.list,Je("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>ay(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(Cn).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(Cn),i=0,s=!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=i;x<this.items.length;x++)if(this.items[x].diagnostic==p){g=x;break}g<0?(O=new cy(this.view,p),this.items.splice(i,0,O),s=!0):(O=this.items[g],g>i&&(this.items.splice(i,g-i),s=!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"),i++}});i<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)s=!0,this.items.pop();this.items.length==0&&(this.items.push(new cy(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),s=!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"),s&&this.sync()}sync(){let e=this.list.firstChild;function t(){let i=e;e=i.nextSibling,i.remove()}for(let i of this.items)if(i.dom.parentNode==this.list){for(;e!=i.dom;)t();e=i.dom.nextSibling}else this.list.insertBefore(i.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(Cn),i=sl(t.diagnostics,this.items[e].diagnostic);i&&this.view.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0,effects:fw.of(i)})}static open(e){return new Do(e)}}function xN(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 Cc(n){return xN(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${n}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const kN=Oe.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:Cc("#d11")},".cm-lintRange-warning":{backgroundImage:Cc("orange")},".cm-lintRange-info":{backgroundImage:Cc("#999")},".cm-lintRange-hint":{backgroundImage:Cc("#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 SN(n){return n=="error"?4:n=="warning"?3:n=="info"?2:1}function wN(n){let e="hint",t=1;for(let i of n){let s=SN(i.severity);s>t&&(t=s,e=i.severity)}return e}const bN=[Cn,Oe.decorations.compute([Cn],n=>{let{selected:e,panel:t}=n.field(Cn);return!e||!t||e.from==e.to?je.none:je.set([fN.range(e.from,e.to)])}),aQ(pN,{hideOn:dN}),kN];var uy=function(e){e===void 0&&(e={});var{crosshairCursor:t=!1}=e,i=[];e.closeBracketsKeymap!==!1&&(i=i.concat(nN)),e.defaultKeymap!==!1&&(i=i.concat(Ij)),e.searchKeymap!==!1&&(i=i.concat(dT)),e.historyKeymap!==!1&&(i=i.concat(WC)),e.foldKeymap!==!1&&(i=i.concat(aC)),e.completionKeymap!==!1&&(i=i.concat(dw)),e.lintKeymap!==!1&&(i=i.concat(vN));var s=[];return e.lineNumbers!==!1&&s.push(yQ()),e.highlightActiveLineGutter!==!1&&s.push(SQ()),e.highlightSpecialChars!==!1&&s.push(DP()),e.history!==!1&&s.push(IC()),e.foldGutter!==!1&&s.push(hC()),e.drawSelection!==!1&&s.push($P()),e.dropCursor!==!1&&s.push(TP()),e.allowMultipleSelections!==!1&&s.push(Ze.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&s.push(KQ()),e.syntaxHighlighting!==!1&&s.push(cS(gC,{fallback:!0})),e.bracketMatching!==!1&&s.push(wC()),e.closeBrackets!==!1&&s.push(KT()),e.autocompletion!==!1&&s.push(cN()),e.rectangularSelection!==!1&&s.push(HP()),t!==!1&&s.push(eQ()),e.highlightActiveLine!==!1&&s.push(zP()),e.highlightSelectionMatches!==!1&&s.push(qj()),e.tabSize&&typeof e.tabSize=="number"&&s.push(zo.of(" ".repeat(e.tabSize))),s.concat([Fo.of(i.flat())]).filter(Boolean)};const _N="#e5c07b",dy="#e06c75",$N="#56b6c2",PN="#ffffff",zc="#abb2bf",vp="#7d8799",QN="#61afef",CN="#98c379",hy="#d19a66",jN="#c678dd",TN="#21252b",fy="#2c313a",py="#282c34",df="#353a42",NN="#3E4451",my="#528bff",EN=Oe.theme({"&":{color:zc,backgroundColor:py},".cm-content":{caretColor:my},".cm-cursor, .cm-dropCursor":{borderLeftColor:my},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:NN},".cm-panels":{backgroundColor:TN,color:zc},".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:py,color:vp,border:"none"},".cm-activeLineGutter":{backgroundColor:fy},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:df},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:df,borderBottomColor:df},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:fy,color:zc}}},{dark:!0}),AN=Vo.define([{tag:F.keyword,color:jN},{tag:[F.name,F.deleted,F.character,F.propertyName,F.macroName],color:dy},{tag:[F.function(F.variableName),F.labelName],color:QN},{tag:[F.color,F.constant(F.name),F.standard(F.name)],color:hy},{tag:[F.definition(F.name),F.separator],color:zc},{tag:[F.typeName,F.className,F.number,F.changed,F.annotation,F.modifier,F.self,F.namespace],color:_N},{tag:[F.operator,F.operatorKeyword,F.url,F.escape,F.regexp,F.link,F.special(F.string)],color:$N},{tag:[F.meta,F.comment],color:vp},{tag:F.strong,fontWeight:"bold"},{tag:F.emphasis,fontStyle:"italic"},{tag:F.strikethrough,textDecoration:"line-through"},{tag:F.link,color:vp,textDecoration:"underline"},{tag:F.heading,fontWeight:"bold",color:dy},{tag:[F.atom,F.bool,F.special(F.variableName)],color:hy},{tag:[F.processingInstruction,F.string,F.inserted],color:CN},{tag:F.invalid,color:PN}]),gw=[EN,cS(AN)];var MN=Oe.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),RN=function(e){e===void 0&&(e={});var{indentWithTab:t=!0,editable:i=!0,readOnly:s=!1,theme:r="light",placeholder:o="",basicSetup:c=!0}=e,u=[];switch(t&&u.unshift(Fo.of([Zj])),c&&(typeof c=="boolean"?u.unshift(uy()):u.unshift(uy(c))),o&&u.unshift(YP(o)),r){case"light":u.push(MN);break;case"dark":u.push(gw);break;case"none":break;default:u.push(r);break}return i===!1&&u.push(Oe.editable.of(!1)),s&&u.push(Ze.readOnly.of(!0)),[...u]},DN=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 LN{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(i){console.error("TimeoutLatch callback error:",i)}})}}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 gy{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 hf=null,IN=()=>typeof window>"u"?new gy:(hf||(hf=new gy),hf),Oy=bi.define(),ZN=200,FN=[];function XN(n){var{value:e,selection:t,onChange:i,onStatistics:s,onCreateEditor:r,onUpdate:o,extensions:c=FN,autoFocus:u,theme:f="light",height:p=null,minHeight:g=null,maxHeight:O=null,width:x=null,minWidth:k=null,maxWidth:w=null,placeholder:b="",editable:C=!0,readOnly:S=!1,indentWithTab:Q=!0,basicSetup:P=!0,root:_,initialState:T}=n,[A,J]=V.useState(),[z,G]=V.useState(),[H,D]=V.useState(),ee=V.useState(()=>({current:null}))[0],q=V.useState(()=>({current:null}))[0],ue=Oe.theme({"&":{height:p,minHeight:g,maxHeight:O,width:x,minWidth:k,maxWidth:w},"& .cm-scroller":{height:"100% !important"}}),ve=Oe.updateListener.of(L=>{if(L.docChanged&&typeof i=="function"&&!L.transactions.some(I=>I.annotation(Oy))){ee.current?ee.current.reset():(ee.current=new LN(()=>{if(q.current){var I=q.current;q.current=null,I()}ee.current=null},ZN),IN().add(ee.current));var N=L.state.doc,j=N.toString();i(j,L)}s&&s(DN(L))}),de=RN({theme:f,editable:C,readOnly:S,placeholder:b,indentWithTab:Q,basicSetup:P}),X=[ve,ue,...de];return o&&typeof o=="function"&&X.push(Oe.updateListener.of(o)),X=X.concat(c),V.useLayoutEffect(()=>{if(A&&!H){var L={doc:e,selection:t,extensions:X},N=T?Ze.fromJSON(T.json,L,T.fields):Ze.create(L);if(D(N),!z){var j=new Oe({state:N,parent:A,root:_});G(j),r&&r(j,N)}}return()=>{z&&(D(void 0),G(void 0))}},[A,H]),V.useEffect(()=>{n.container&&J(n.container)},[n.container]),V.useEffect(()=>()=>{z&&(z.destroy(),G(void 0)),ee.current&&(ee.current.cancel(),ee.current=null)},[z]),V.useEffect(()=>{u&&z&&z.focus()},[u,z]),V.useEffect(()=>{z&&z.dispatch({effects:Me.reconfigure.of(X)})},[f,c,p,g,O,x,k,w,b,C,S,Q,P,i,o]),V.useEffect(()=>{if(e!==void 0){var L=z?z.state.doc.toString():"";if(z&&e!==L){var N=ee.current&&!ee.current.isDone,j=()=>{z&&e!==z.state.doc.toString()&&z.dispatch({changes:{from:0,to:z.state.doc.toString().length,insert:e||""},annotations:[Oy.of(!0)]})};N?q.current=j:j()}}},[e,z]),{state:H,setState:D,view:z,setView:G,container:A,setContainer:J}}var zN=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],Ow=V.forwardRef((n,e)=>{var{className:t,value:i="",selection:s,extensions:r=[],onChange:o,onStatistics:c,onCreateEditor:u,onUpdate:f,autoFocus:p,theme:g="light",height:O,minHeight:x,maxHeight:k,width:w,minWidth:b,maxWidth:C,basicSetup:S,placeholder:Q,indentWithTab:P,editable:_,readOnly:T,root:A,initialState:J}=n,z=k_(n,zN),G=V.useRef(null),{state:H,view:D,container:ee,setContainer:q}=XN({root:A,value:i,autoFocus:p,theme:g,height:O,minHeight:x,maxHeight:k,width:w,minWidth:b,maxWidth:C,basicSetup:S,placeholder:Q,indentWithTab:P,editable:_,readOnly:T,selection:s,onChange:o,onStatistics:c,onCreateEditor:u,onUpdate:f,extensions:r,initialState:J});V.useImperativeHandle(e,()=>({editor:G.current,state:H,view:D}),[G,ee,H,D]);var ue=V.useCallback(de=>{G.current=de,q(de)},[q]);if(typeof i!="string")throw new Error("value must be typeof string but got "+typeof i);var ve=typeof g=="string"?"cm-theme-"+g:"cm-theme";return h.jsx("div",wf({ref:ue,className:""+ve+(t?" "+t:"")},z))});Ow.displayName="CodeMirror";var vy={};class xu{constructor(e,t,i,s,r,o,c,u,f,p=0,g){this.p=e,this.stack=t,this.state=i,this.reducePos=s,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,i=0){let s=e.parser.context;return new xu(e,[],t,i,i,0,[],0,s?new yy(s,s.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 i=e>>19,s=e&65535,{parser:r}=this.p,o=this.reducePos<this.pos-25;o&&this.setLookAhead(this.pos);let c=r.dynamicPrecedence(s);if(c&&(this.score+=c),i==0){this.pushState(r.getGoto(this.state,s,!0),this.reducePos),s<r.minRepeatTerm&&this.storeNode(s,this.reducePos,this.reducePos,o?8:4,!0),this.reduceContext(s,this.reducePos);return}let u=this.stack.length-(i-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[s])===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(s<r.minRepeatTerm||e&131072){let x=r.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(s,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,s,!0)}for(;this.stack.length>u;)this.stack.pop();this.reduceContext(s,f)}storeNode(e,t,i,s=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==i)return;if(o.buffer[c-2]>=t){o.buffer[c-2]=i;return}}}if(!r||this.pos==i)this.buffer.push(e,t,i,s);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]>i;u-=4)if(this.buffer[u-1]>=0){c=!0;break}if(c)for(;o>0&&this.buffer[o-2]>i;)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,s>4&&(s-=4)}this.buffer[o]=e,this.buffer[o+1]=t,this.buffer[o+2]=i,this.buffer[o+3]=s}}shift(e,t,i,s){if(e&131072)this.pushState(e&65535,this.pos);else if((e&262144)==0){let r=e,{parser:o}=this.p;(s>this.pos||t<=o.maxNode)&&(this.pos=s,o.stateFlag(r,1)||(this.reducePos=s)),this.pushState(r,i),this.shiftContext(t,i),t<=o.maxNode&&this.buffer.push(t,i,s,4)}else this.pos=s,this.shiftContext(t,i),t<=this.p.parser.maxNode&&this.buffer.push(t,i,s,4)}apply(e,t,i,s){e&65536?this.reduce(e):this.shift(e,t,i,s)}useNode(e,t){let i=this.p.reused.length-1;(i<0||this.p.reused[i]!=e)&&(this.p.reused.push(e),i++);let s=this.pos;this.reducePos=this.pos=s+e.length,this.pushState(t,s),this.buffer.push(i,s,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 i=e.buffer.slice(t),s=e.bufferBase+t;for(;e&&s==e.bufferBase;)e=e.parent;return new xu(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,i,s,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let i=e<=this.p.parser.maxNode;i&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,i?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new BN(this);;){let i=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(i==0)return!1;if((i&65536)==0)return!0;t.reduce(i)}}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 s=[];for(let r=0,o;r<t.length;r+=2)(o=t[r+1])!=this.state&&this.p.parser.hasAction(o,e)&&s.push(t[r],o);if(this.stack.length<120)for(let r=0;s.length<8&&r<t.length;r+=2){let o=t[r+1];s.some((c,u)=>u&1&&c==o)||s.push(t[r],o)}t=s}let i=[];for(let s=0;s<t.length&&i.length<4;s+=2){let r=t[s+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[s],this.pos),o.reducePos=this.pos,o.score-=200,i.push(o)}return i}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 i=t>>19,s=t&65535,r=this.stack.length-i*3;if(r<0||e.getGoto(this.stack[r],s,!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=[],i=(s,r)=>{if(!t.includes(s))return t.push(s),e.allActions(s,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=i(o,r+1);if(c!=null)return c}})};return i(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 yy(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 yy{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class BN{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,i=e>>19;i==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(i-1)*3;let s=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=s}}class ku{constructor(e,t,i){this.stack=e,this.pos=t,this.index=i,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new ku(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 ku(this.stack,this.pos,this.index)}}function ho(n,e=Uint16Array){if(typeof n!="string")return n;let t=null;for(let i=0,s=0;i<n.length;){let r=0;for(;;){let o=n.charCodeAt(i++),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[s++]=r:t=new e(r)}return t}class Bc{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const xy=new Bc;class VN{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=xy,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 i=this.range,s=this.rangeIndex,r=this.pos+e;for(;r<i.from;){if(!s)return null;let o=this.ranges[--s];r-=i.from-o.to,i=o}for(;t<0?r>i.to:r>=i.to;){if(s==this.ranges.length-1)return null;let o=this.ranges[++s];r+=o.from-i.to,i=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,i,s;if(t>=0&&t<this.chunk.length)i=this.pos+e,s=this.chunk.charCodeAt(t);else{let r=this.resolveOffset(e,1);if(r==null)return-1;if(i=r,i>=this.chunk2Pos&&i<this.chunk2Pos+this.chunk2.length)s=this.chunk2.charCodeAt(i-this.chunk2Pos);else{let o=this.rangeIndex,c=this.range;for(;c.to<=i;)c=this.ranges[++o];this.chunk2=this.input.chunk(this.chunk2Pos=i),i+this.chunk2.length>c.to&&(this.chunk2=this.chunk2.slice(0,c.to-i)),s=this.chunk2.charCodeAt(0)}}return i>=this.token.lookAhead&&(this.token.lookAhead=i+1),s}acceptToken(e,t=0){let i=t?this.resolveOffset(t,-1):this.pos;if(i==null||i<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=e,this.token.end=i}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=xy,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 i="";for(let s of this.ranges){if(s.from>=t)break;s.to>e&&(i+=this.input.read(Math.max(s.from,e),Math.min(s.to,t)))}return i}}class Gr{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:i}=t.p;vw(this.data,e,t,this.id,i.data,i.tokenPrecTable)}}Gr.prototype.contextual=Gr.prototype.fallback=Gr.prototype.extend=!1;class yp{constructor(e,t,i){this.precTable=t,this.elseToken=i,this.data=typeof e=="string"?ho(e):e}token(e,t){let i=e.pos,s=0;for(;;){let r=e.next<0,o=e.resolveOffset(1,1);if(vw(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(r||s++,o==null)break;e.reset(o,e.token)}s&&(e.reset(i,e.token),e.acceptToken(this.elseToken,s))}}yp.prototype.contextual=Gr.prototype.fallback=Gr.prototype.extend=!1;class Uo{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function vw(n,e,t,i,s,r){let o=0,c=1<<i,{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||qN(k,e.token.value,s,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),w=n[k],b=n[k+1]||65536;if(p<w)O=x;else if(p>=b)g=x+1;else{o=n[k+2],e.advance();continue e}}break}}function ky(n,e,t){for(let i=e,s;(s=n[i])!=65535;i++)if(s==t)return i-e;return-1}function qN(n,e,t,i){let s=ky(t,i,e);return s<0||ky(t,i,n)<s}const Pn=typeof process<"u"&&vy&&/\bparse\b/.test(vy.LOG);let ff=null;function Sy(n,e,t){let i=n.cursor(Qt.IncludeAnonymous);for(i.moveTo(e);;)if(!(t<0?i.childBefore(e):i.childAfter(e)))for(;;){if((t<0?i.to<e:i.from>e)&&!i.type.isError)return t<0?Math.max(0,Math.min(i.to-1,e-25)):Math.min(n.length,Math.max(i.from+1,e+25));if(t<0?i.prevSibling():i.nextSibling())break;if(!i.parent())return t<0?0:n.length}}class YN{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?Sy(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?Sy(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 i=this.trees[t],s=this.index[t];if(s==i.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let r=i.children[s],o=this.start[t]+i.positions[s];if(o>e)return this.nextStart=o,null;if(r instanceof bt){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 WN{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(i=>new Bc)}getActions(e){let t=0,i=null,{parser:s}=e.p,{tokenizers:r}=s,o=s.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(!(i&&!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&&(i=g,t>O))break}}for(;this.actions.length>t;)this.actions.pop();return u&&e.setLookAhead(u),!i&&e.pos==this.stream.end&&(i=new Bc,i.value=e.p.parser.eofTerm,i.start=i.end=e.pos,t=this.addActions(e,i.value,i.end,t)),this.mainToken=i,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Bc,{pos:i,p:s}=e;return t.start=i,t.end=Math.min(i+1,s.stream.end),t.value=i==s.stream.end?s.parser.eofTerm:0,t}updateCachedToken(e,t,i){let s=this.stream.clipPos(i.pos);if(t.token(this.stream.reset(s,e),i),e.value>-1){let{parser:r}=i.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),i);if(c>=0&&i.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(s+1)}putAction(e,t,i,s){for(let r=0;r<s;r+=3)if(this.actions[r]==e)return s;return this.actions[s++]=e,this.actions[s++]=t,this.actions[s++]=i,s}addActions(e,t,i,s){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=Li(c,f+2);else{s==0&&c[f+1]==2&&(s=this.putAction(Li(c,f+2),t,i,s));break}c[f]==t&&(s=this.putAction(Li(c,f+1),t,i,s))}return s}}class UN{constructor(e,t,i,s){this.parser=e,this.input=t,this.ranges=s,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 VN(t,s),this.tokens=new WN(e,this.stream),this.topTerm=e.top[1];let{from:r}=s[0];this.stacks=[xu.start(this,e.top[0],r)],this.fragments=i.length&&this.stream.end-r>e.bufferLength*4?new YN(i,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,i=this.stacks=[],s,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)i.push(c);else{if(this.advanceStack(c,i,e))continue;{s||(s=[],r=[]),s.push(c);let u=this.tokens.getMainToken(c);r.push(u.value,u.end)}}break}}if(!i.length){let o=s&&KN(s);if(o)return Pn&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw Pn&&s&&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&&s){let o=this.stoppedAt!=null&&s[0].pos>this.stoppedAt?s[0]:this.runRecovery(s,r,i);if(o)return Pn&&console.log("Force-finish "+this.stackID(o)),this.stackToTree(o.forceAll())}if(this.recovering){let o=this.recovering==1?1:this.recovering*3;if(i.length>o)for(i.sort((c,u)=>u.score-c.score);i.length>o;)i.pop();i.some(c=>c.reducePos>t)&&this.recovering--}else if(i.length>1){e:for(let o=0;o<i.length-1;o++){let c=i[o];for(let u=o+1;u<i.length;u++){let f=i[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)i.splice(u--,1);else{i.splice(o--,1);continue e}}}i.length>12&&i.splice(12,i.length-12)}this.minStackPos=i[0].pos;for(let o=1;o<i.length;o++)i[o].pos<this.minStackPos&&(this.minStackPos=i[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,i){let s=e.pos,{parser:r}=this,o=Pn?this.stackID(e)+" -> ":"";if(this.stoppedAt!=null&&s>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(s);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),Pn&&console.log(o+this.stackID(e)+` (via reuse of ${r.getName(g.type.id)})`),!0;if(!(g instanceof bt)||g.children.length==0||g.positions[0]>0)break;let x=g.children[0];if(x instanceof bt&&g.positions[0]==0)g=x;else break}}let c=r.stateSlot(e.state,4);if(c>0)return e.reduce(c),Pn&&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||!i,k=x?e:e.split(),w=this.tokens.mainToken;if(k.apply(p,g,w?w.start:k.pos,O),Pn&&console.log(o+this.stackID(k)+` (via ${(p&65536)==0?"shift":`reduce of ${r.getName(p&65535)}`} for ${r.getName(g)} @ ${s}${k==e?"":", split"})`),x)return!0;k.pos>s?t.push(k):i.push(k)}return!1}advanceFully(e,t){let i=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>i)return wy(e,t),!0}}runRecovery(e,t,i){let s=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=Pn?this.stackID(c)+" -> ":"";if(c.deadEnd&&(r||(r=!0,c.restart(),Pn&&console.log(p+this.stackID(c)+" (restarted)"),this.advanceFully(c,i))))continue;let g=c.split(),O=p;for(let x=0;g.forceReduce()&&x<10&&(Pn&&console.log(O+this.stackID(g)+" (via force-reduce)"),!this.advanceFully(g,i));x++)Pn&&(O=this.stackID(g)+" -> ");for(let x of c.recoverByInsert(u))Pn&&console.log(p+this.stackID(x)+" (via recover-insert)"),this.advanceFully(x,i);this.stream.end>c.pos?(f==c.pos&&(f++,u=0),c.recoverByDelete(u,f),Pn&&console.log(p+this.stackID(c)+` (via recover-delete ${this.parser.getName(u)})`),wy(c,i)):(!s||s.score<c.score)&&(s=c)}return s}stackToTree(e){return e.close(),bt.build({buffer:ku.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=(ff||(ff=new WeakMap)).get(e);return t||ff.set(e,t=String.fromCodePoint(this.nextStackID++)),t+e}}function wy(n,e){for(let t=0;t<e.length;t++){let i=e[t];if(i.pos==n.pos&&i.sameState(n)){e[t].score<n.score&&(e[t]=n);return}}e.push(n)}class GN{constructor(e,t,i){this.source=e,this.flags=t,this.disabled=i}allows(e){return!this.disabled||this.disabled[e]==0}}const pf=n=>n;class HN{constructor(e){this.start=e.start,this.shift=e.shift||pf,this.reduce=e.reduce||pf,this.reuse=e.reuse||pf,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class Su extends Vk{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 i=Object.keys(e.topRules).map(c=>e.topRules[c][1]),s=[];for(let c=0;c<t.length;c++)s.push([]);function r(c,u,f){s[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 qp(t.map((c,u)=>kn.define({name:u>=this.minRepeatTerm?void 0:c,id:u,props:s[u],top:i.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=Fk;let o=ho(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(by),this.states=ho(e.states,Uint32Array),this.data=ho(e.stateData),this.goto=ho(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(c=>typeof c=="number"?new Gr(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,i){let s=new UN(this,e,t,i);for(let r of this.wrappers)s=r(s,e,t,i);return s}getGoto(e,t,i=!1){let s=this.goto;if(t>=s[0])return-1;for(let r=s[t+1];;){let o=s[r++],c=o&1,u=s[r++];if(c&&i)return u;for(let f=r+(o>>1);r<f;r++)if(s[r]==e)return u;if(c)return-1}}hasAction(e,t){let i=this.data;for(let s=0;s<2;s++)for(let r=this.stateSlot(e,s?2:1),o;;r+=3){if((o=i[r])==65535)if(i[r+1]==1)o=i[r=Li(i,r+2)];else{if(i[r+1]==2)return Li(i,r+2);break}if(o==t||o==0)return Li(i,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,i=>i==t?!0:null)}allActions(e,t){let i=this.stateSlot(e,4),s=i?t(i):void 0;for(let r=this.stateSlot(e,1);s==null;r+=3){if(this.data[r]==65535)if(this.data[r+1]==1)r=Li(this.data,r+2);else break;s=t(Li(this.data,r+1))}return s}nextStates(e){let t=[];for(let i=this.stateSlot(e,1);;i+=3){if(this.data[i]==65535)if(this.data[i+1]==1)i=Li(this.data,i+2);else break;if((this.data[i+2]&1)==0){let s=this.data[i+1];t.some((r,o)=>o&1&&r==s)||t.push(this.data[i],s)}}return t}configure(e){let t=Object.assign(Object.create(Su.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let i=this.topRules[e.top];if(!i)throw new RangeError(`Invalid top rule name ${e.top}`);t.top=i}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(i=>{let s=e.tokenizers.find(r=>r.from==i);return s?s.to:i})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((i,s)=>{let r=e.specializers.find(c=>c.from==i.external);if(!r)return i;let o=Object.assign(Object.assign({},i),{external:r.to});return t.specializers[s]=by(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),i=t.map(()=>!1);if(e)for(let r of e.split(" ")){let o=t.indexOf(r);o>=0&&(i[o]=!0)}let s=null;for(let r=0;r<t.length;r++)if(!i[r])for(let o=this.dialects[t[r]],c;(c=this.data[o++])!=65535;)(s||(s=new Uint8Array(this.maxTerm+1)))[c]=1;return new GN(e,i,s)}static deserialize(e){return new Su(e)}}function Li(n,e){return n[e]|n[e+1]<<16}function KN(n){let e=null;for(let t of n){let i=t.p.stoppedAt;(t.pos==t.p.stream.end||i!=null&&t.pos>i)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.score<t.score)&&(e=t)}return e}function by(n){if(n.external){let e=n.extend?1:0;return(t,i)=>n.external(t,i)<<1|e}return n.get}const JN=315,eE=316,_y=1,tE=2,nE=3,iE=4,sE=317,rE=319,lE=320,oE=5,aE=6,cE=0,xp=[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],yw=125,uE=59,kp=47,dE=42,hE=43,fE=45,pE=60,mE=44,gE=63,OE=46,vE=91,yE=new HN({start:!1,shift(n,e){return e==oE||e==aE||e==rE?n:e==lE},strict:!1}),xE=new Uo((n,e)=>{let{next:t}=n;(t==yw||t==-1||e.context)&&n.acceptToken(sE)},{contextual:!0,fallback:!0}),kE=new Uo((n,e)=>{let{next:t}=n,i;xp.indexOf(t)>-1||t==kp&&((i=n.peek(1))==kp||i==dE)||t!=yw&&t!=uE&&t!=-1&&!e.context&&n.acceptToken(JN)},{contextual:!0}),SE=new Uo((n,e)=>{n.next==vE&&!e.context&&n.acceptToken(eE)},{contextual:!0}),wE=new Uo((n,e)=>{let{next:t}=n;if(t==hE||t==fE){if(n.advance(),t==n.next){n.advance();let i=!e.context&&e.canShift(_y);n.acceptToken(i?_y:tE)}}else t==gE&&n.peek(1)==OE&&(n.advance(),n.advance(),(n.next<48||n.next>57)&&n.acceptToken(nE))},{contextual:!0});function mf(n,e){return n>=65&&n<=90||n>=97&&n<=122||n==95||n>=192||!e&&n>=48&&n<=57}const bE=new Uo((n,e)=>{if(n.next!=pE||!e.dialectEnabled(cE)||(n.advance(),n.next==kp))return;let t=0;for(;xp.indexOf(n.next)>-1;)n.advance(),t++;if(mf(n.next,!0)){for(n.advance(),t++;mf(n.next,!1);)n.advance(),t++;for(;xp.indexOf(n.next)>-1;)n.advance(),t++;if(n.next==mE)return;for(let i=0;;i++){if(i==7){if(!mf(n.next,!0))return;break}if(n.next!="extends".charCodeAt(i))break;n.advance(),t++}}n.acceptToken(iE,-t)}),_E=qk({"get set async static":F.modifier,"for while do if else switch try catch finally return throw break continue default case":F.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":F.operatorKeyword,"let var const using function class extends":F.definitionKeyword,"import export from":F.moduleKeyword,"with debugger new":F.keyword,TemplateString:F.special(F.string),super:F.atom,BooleanLiteral:F.bool,this:F.self,null:F.null,Star:F.modifier,VariableName:F.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":F.function(F.variableName),VariableDefinition:F.definition(F.variableName),Label:F.labelName,PropertyName:F.propertyName,PrivatePropertyName:F.special(F.propertyName),"CallExpression/MemberExpression/PropertyName":F.function(F.propertyName),"FunctionDeclaration/VariableDefinition":F.function(F.definition(F.variableName)),"ClassDeclaration/VariableDefinition":F.definition(F.className),"NewExpression/VariableName":F.className,PropertyDefinition:F.definition(F.propertyName),PrivatePropertyDefinition:F.definition(F.special(F.propertyName)),UpdateOp:F.updateOperator,"LineComment Hashbang":F.lineComment,BlockComment:F.blockComment,Number:F.number,String:F.string,Escape:F.escape,ArithOp:F.arithmeticOperator,LogicOp:F.logicOperator,BitOp:F.bitwiseOperator,CompareOp:F.compareOperator,RegExp:F.regexp,Equals:F.definitionOperator,Arrow:F.function(F.punctuation),": Spread":F.punctuation,"( )":F.paren,"[ ]":F.squareBracket,"{ }":F.brace,"InterpolationStart InterpolationEnd":F.special(F.brace),".":F.derefOperator,", ;":F.separator,"@":F.meta,TypeName:F.typeName,TypeDefinition:F.definition(F.typeName),"type enum interface implements namespace module declare":F.definitionKeyword,"abstract global Privacy readonly override":F.modifier,"is keyof unique infer asserts":F.operatorKeyword,JSXAttributeValue:F.attributeValue,JSXText:F.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":F.angleBracket,"JSXIdentifier JSXNameSpacedName":F.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":F.attributeName,"JSXBuiltin/JSXIdentifier":F.standard(F.tagName)}),$E={__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},PE={__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},QE={__proto__:null,"<":193},CE=Su.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:yE,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:[_E],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:[kE,SE,wE,bE,2,3,4,5,6,7,8,9,10,11,12,13,14,xE,new yp("$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 yp("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=>$E[n]||-1},{term:342,get:n=>PE[n]||-1},{term:95,get:n=>QE[n]||-1}],tokenPrec:15124}),xw=[fn("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),fn("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),fn("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),fn("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),fn("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),fn(`try {
56
- \${}
57
- } catch (\${error}) {
58
- \${}
59
- }`,{label:"try",detail:"/ catch block",type:"keyword"}),fn("if (${}) {\n ${}\n}",{label:"if",detail:"block",type:"keyword"}),fn(`if (\${}) {
60
- \${}
61
- } else {
62
- \${}
63
- }`,{label:"if",detail:"/ else block",type:"keyword"}),fn(`class \${name} {
64
- constructor(\${params}) {
65
- \${}
66
- }
67
- }`,{label:"class",detail:"definition",type:"keyword"}),fn('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),fn('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],jE=xw.concat([fn("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),fn("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),fn("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),$y=new CQ,kw=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function to(n){return(e,t)=>{let i=e.node.getChild("VariableDefinition");return i&&t(i,n),!0}}const TE=["FunctionDeclaration"],NE={FunctionDeclaration:to("function"),ClassDeclaration:to("class"),ClassExpression:()=>!0,EnumDeclaration:to("constant"),TypeAliasDeclaration:to("type"),NamespaceDeclaration:to("namespace"),VariableDefinition(n,e){n.matchContext(TE)||e(n,"variable")},TypeDefinition(n,e){e(n,"type")},__proto__:null};function Sw(n,e){let t=$y.get(e);if(t)return t;let i=[],s=!0;function r(o,c){let u=n.sliceString(o.from,o.to);i.push({label:u,type:c})}return e.cursor(Qt.IncludeAnonymous).iterate(o=>{if(s)s=!1;else if(o.name){let c=NE[o.name];if(c&&c(o,r)||kw.has(o.name))return!1}else if(o.to-o.from>8192){for(let c of Sw(n,o.node))i.push(c);return!1}}),$y.set(e,i),i}const Py=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,ww=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function EE(n){let e=Ct(n.state).resolveInner(n.pos,-1);if(ww.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&Py.test(n.state.sliceDoc(e.from,e.to));if(!t&&!n.explicit)return null;let i=[];for(let s=e;s;s=s.parent)kw.has(s.name)&&(i=i.concat(Sw(n.state.doc,s)));return{options:i,from:t?e.from:n.pos,validFor:Py}}const Hs=ou.define({name:"javascript",parser:CE.configure({props:[Hk.add({IfStatement:ef({except:/^\s*({|else\b)/}),TryStatement:ef({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:GQ,SwitchBody:n=>{let e=n.textAfter,t=/^\s*\}/.test(e),i=/^\s*(case|default)\b/.test(e);return n.baseIndent+(t?0:i?1:2)*n.unit},Block:UQ({closing:"}"}),ArrowFunction:n=>n.baseIndent+n.unit,"TemplateString BlockComment":()=>null,"Statement Property":ef({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}}),eS.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":eC,BlockComment(n){return{from:n.from+2,to:n.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),bw={test:n=>/^JSX/.test(n.name),facet:Uk({commentTokens:{block:{open:"{/*",close:"*/}"}}})},AE=Hs.configure({dialect:"ts"},"typescript"),ME=Hs.configure({dialect:"jsx",props:[Gp.add(n=>n.isTop?[bw]:void 0)]}),RE=Hs.configure({dialect:"jsx ts",props:[Gp.add(n=>n.isTop?[bw]:void 0)]},"typescript");let _w=n=>({label:n,type:"keyword"});const $w="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(_w),DE=$w.concat(["declare","implements","private","protected","public"].map(_w));function LE(n={}){let e=n.jsx?n.typescript?RE:ME:n.typescript?AE:Hs,t=n.typescript?jE.concat(DE):xw.concat($w);return new FQ(e,[Hs.data.of({autocomplete:gT(ww,tw(t))}),Hs.data.of({autocomplete:EE}),n.jsx?FE:[]])}function IE(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 Qy(n,e,t=n.length){for(let i=e?.firstChild;i;i=i.nextSibling)if(i.name=="JSXIdentifier"||i.name=="JSXBuiltin"||i.name=="JSXNamespacedName"||i.name=="JSXMemberExpression")return n.sliceString(i.from,Math.min(i.to,t));return""}const ZE=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),FE=Oe.inputHandler.of((n,e,t,i,s)=>{if((ZE?n.composing:n.compositionStarted)||n.state.readOnly||e!=t||i!=">"&&i!="/"||!Hs.isActiveAt(n.state,e,-1))return!1;let r=s(),{state:o}=r,c=o.changeByRange(u=>{var f;let{head:p}=u,g=Ct(o).resolveInner(p-1,-1),O;if(g.name=="JSXStartTag"&&(g=g.parent),!(o.doc.sliceString(p-1,p)!=i||g.name=="JSXAttributeValue"&&g.to>p)){if(i==">"&&g.name=="JSXFragmentTag")return{range:u,changes:{from:p,insert:"</>"}};if(i=="/"&&g.name=="JSXStartCloseTag"){let x=g.parent,k=x.parent;if(k&&x.from==p-2&&((O=Qy(o.doc,k.firstChild,p))||((f=k.firstChild)===null||f===void 0?void 0:f.name)=="JSXFragmentTag")){let w=`${O}>`;return{range:ne.cursor(p+w.length,-1),changes:{from:p,insert:w}}}}else if(i==">"){let x=IE(g);if(x&&x.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(o.doc.sliceString(p,p+2))&&(O=Qy(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 XE(){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 rn(n,e){const t=new URL("/graphql",XE()).toString(),i=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:n,variables:e})}),s=await i.json();if(!i.ok)throw new Error(`GraphQL HTTP ${i.status}`);if(s.errors&&s.errors.length>0)throw new Error(s.errors.map(r=>r.message).join(`
68
- `));return s.data}const zE=`
69
- query TaskFile($id: ID!, $startLine: Int, $endLine: Int) {
70
- task(id: $id) {
71
- id
72
- filePath
73
- fileContents(startLine: $startLine, endLine: $endLine)
74
- }
75
- }
76
- `,BE=`
77
- query ResourceFile($id: ID!, $startLine: Int, $endLine: Int) {
78
- resource(id: $id) {
79
- id
80
- filePath
81
- fileContents(startLine: $startLine, endLine: $endLine)
82
- }
83
- }
84
- `,VE=`
85
- query TaskCoverageDetails($id: ID!) {
86
- task(id: $id) {
87
- id
88
- coverage {
89
- percentage
90
- totalStatements
91
- coveredStatements
92
- details
93
- }
94
- }
95
- }
96
- `,qE=`
97
- query ResourceCoverageDetails($id: ID!) {
98
- resource(id: $id) {
99
- id
100
- coverage {
101
- percentage
102
- totalStatements
103
- coveredStatements
104
- details
105
- }
106
- }
107
- }
108
- `,YE=`
109
- query MiddlewareFile($id: ID!, $startLine: Int, $endLine: Int) {
110
- middleware(id: $id) {
111
- id
112
- filePath
113
- fileContents(startLine: $startLine, endLine: $endLine)
114
- }
115
- }
116
- `,WE=`
117
- query EventFile($id: ID!, $startLine: Int, $endLine: Int) {
118
- event(id: $id) {
119
- id
120
- filePath
121
- fileContents(startLine: $startLine, endLine: $endLine)
122
- }
123
- }
124
- `,UE=`
125
- query HookFile($id: ID!, $startLine: Int, $endLine: Int) {
126
- hook(id: $id) {
127
- id
128
- filePath
129
- fileContents(startLine: $startLine, endLine: $endLine)
130
- }
131
- }
132
- `,GE=`
133
- query TagFile($id: ID!, $startLine: Int, $endLine: Int) {
134
- tag(id: $id) {
135
- id
136
- filePath
137
- fileContents(startLine: $startLine, endLine: $endLine)
138
- }
139
- }
140
- `,jc=n=>Math.ceil((n||"").length/4),HE=(n,e)=>{const t=[],i=n;if(/@docs\.runner\b/.test(n)&&e.runnerAiMd&&t.push(`
141
-
142
- <runner_docs>
143
- ${e.runnerAiMd}
144
- </runner_docs>`),/@docs\.schema\b/.test(n)&&e.graphqlSdl&&t.push(`
145
-
146
- <graphql_sdl>
147
- ${e.graphqlSdl}
148
- </graphql_sdl>`),/@docs\.runnerDev\b/.test(n)&&e.runnerDevMd&&t.push(`
149
-
150
- <runner_dev_docs>
151
- ${e.runnerDevMd}
152
- </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(`
153
-
154
- <${c}>
155
- ${o}
156
- </${c}>`)}return t.length===0?{modelText:n,displayText:i}:{modelText:`${n.replace(/\s*@docs\.(runner|schema|projectOverview|runnerDev)\b/g,"")}${t.join("")}`,displayText:i}},Pw=(n,e)=>{const t=[];if(e.runner&&n.runnerAiMd&&t.push(`<runner_docs>
157
- ${n.runnerAiMd}
158
- </runner_docs>`),e.runnerDev&&n.runnerDevMd&&t.push(`<runner_dev_docs>
159
- ${n.runnerDevMd}
160
- </runner_dev_docs>`),e.schema&&n.graphqlSdl&&t.push(`<graphql_sdl>
161
- ${n.graphqlSdl}
162
- </graphql_sdl>`),e.projectOverview&&n.projectOverviewMd){const i=(n.projectOverviewMd||"").trim(),s=i.startsWith("#")?"project_overview":"project_ai_md";t.push(`<${s}>
163
- ${i}
164
- </${s}>`)}return t.join(`
165
-
166
- `)},gf=(n,e,t,i,s)=>{const r=[{role:"system",content:n}];r.push(...t);const o=Pw(s,e),c=/<(runner_docs|runner_dev_docs|graphql_sdl|project_overview|project_ai_md)>/i.test(i||"");return o&&!c&&r.push({role:"system",content:o}),r.push({role:"user",content:i}),r},KE=n=>{const e=/\s*@docs\.(runnerDev|runner|schema|projectOverview|fullContext|clear)\b/g,t=[];(n||"").replace(e,s=>(t.push(s.trim()),s));const i={runner:!1,runnerDev:!1,schema:!1,projectOverview:!1};for(const s of t){if(s.endsWith("clear")){i.runner=!1,i.runnerDev=!1,i.schema=!1,i.projectOverview=!1;continue}s.endsWith("runner")&&(i.runner=!0),s.endsWith("runnerDev")&&(i.runnerDev=!0),s.endsWith("schema")&&(i.schema=!0),s.endsWith("projectOverview")&&(i.projectOverview=!0),s.endsWith("fullContext")&&(i.runner=!0,i.schema=!0,i.projectOverview=!0)}return i},Of=(n,e,t,i,s)=>{const r=jc(n),o=jc((e||[]).join(`
167
-
168
- `)),c=KE(t||""),u={runner:s.runner||c.runner,runnerDev:s.runnerDev||c.runnerDev,schema:s.schema||c.schema,projectOverview:s.projectOverview||c.projectOverview},f=Pw(i,u),p=jc(f),g=jc(t||""),O=r+o+p+g;return{system:r,history:o,input:g+p,total:O}},JE=(n,e,t)=>{const i=n.split(`
169
- `),s=e.split(`
170
- `);let r=`--- a/${t}
171
- +++ b/${t}
172
- `;const o=Math.max(i.length,s.length);let c=0,u=[];for(let f=0;f<o;f++){const p=i[f],g=s[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},${i.length} +${c+1},${s.length} @@
173
- `,r+=u.join(`
174
- `)),r},eA=n=>{const t=Date.now()-n,i=Math.floor(t/1e3),s=Math.floor(t/(1e3*60)),r=Math.floor(t/(1e3*60*60)),o=Math.floor(t/(1e3*60*60*24));return i<30?"now":i<60?`${i}s`:s<60?`${s}m`:r<24?`${r}h`:o<7?`${o}d`:`${Math.floor(o/7)}w`},pm=async n=>{try{return await navigator.clipboard.writeText(n),!0}catch(e){return console.warn("Failed to copy to clipboard:",e),!1}},tA=n=>{const e=/\[([^\]]+)\]/g,t=[];let i=0,s;for(;(s=e.exec(n))!==null;)s.index>i&&t.push({type:"text",content:n.slice(i,s.index)}),t.push({type:"file",content:s[1]}),i=s.index+s[0].length;return i<n.length&&t.push({type:"text",content:n.slice(i)}),t},nA=n=>{try{localStorage.setItem("chat-sidebar-history",JSON.stringify({messages:n,timestamp:Date.now()}))}catch(e){console.warn("Failed to save chat history:",e)}},iA=()=>{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},sA=n=>{try{localStorage.setItem("chat-sidebar-settings",JSON.stringify(n))}catch(e){console.warn("Failed to save chat settings:",e)}},mm=()=>{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},rA=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)}},lA=()=>{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},oA=()=>{try{localStorage.removeItem("chat-sidebar-context")}catch(n){console.warn("Failed to clear chat context:",n)}},jn=({title:n,subtitle:e,isOpen:t,onClose:i,code:s,enableEdit:r=!1,saveOnFile:o})=>{const[c,u]=V.useState(s??""),[f,p]=V.useState(s??""),[g,O]=V.useState(!1),[x,k]=V.useState(null),[w,b]=V.useState(!1),C=V.useRef({position:"",top:"",left:"",right:"",width:"",overflowY:""});V.useEffect(()=>{function _(A){A.key==="Escape"&&i()}if(!t)return;const T=window.scrollY||window.pageYOffset||0;return C.current={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,right:document.body.style.right,width:document.body.style.width,overflowY:document.body.style.overflowY},document.body.style.position="fixed",document.body.style.top=`-${T}px`,document.body.style.left="0",document.body.style.right="0",document.body.style.width="100%",document.body.style.overflowY="scroll",window.addEventListener("keydown",_),()=>{window.removeEventListener("keydown",_),document.body.style.position=C.current.position,document.body.style.top=C.current.top,document.body.style.left=C.current.left,document.body.style.right=C.current.right,document.body.style.width=C.current.width,document.body.style.overflowY=C.current.overflowY,window.scrollTo(0,T)}},[t,i]),V.useEffect(()=>{const _=s??"";u(_),p(_)},[s,t]);const S=r&&typeof o=="string"&&o.length>0,Q=V.useCallback(async()=>{if(!(!S||!o)){O(!0),k(null);try{const T=await rn(`
175
- mutation EditFile($path: String!, $content: String!) {
176
- editFile(path: $path, content: $content) {
177
- success
178
- error
179
- path
180
- resolvedPath
181
- }
182
- }
183
- `,{path:o,content:c});if(!T.editFile?.success)throw new Error(T.editFile?.error||"Unknown error while saving");p(c)}catch(_){const T=_ instanceof Error?_.message:String(_);k(T)}finally{O(!1)}}},[S,o,c]),P=V.useCallback(async()=>{await pm(c||"")&&(b(!0),setTimeout(()=>b(!1),1500))},[c]);return t?Uc.createPortal(h.jsx("div",{className:"code-modal__backdrop",onClick:i,children:h.jsxs("div",{className:"code-modal__dialog",onClick:_=>{_.stopPropagation()},children:[h.jsxs("div",{className:"code-modal__header",children:[h.jsxs("div",{className:"code-modal__titles",children:[h.jsx("h3",{className:"code-modal__title",children:n}),e&&h.jsx("div",{className:"code-modal__subtitle",children:e})]}),h.jsxs("div",{className:"code-modal__header-right",children:[h.jsx("div",{className:"code-modal__esc-hint",children:"Press ESC to Close"}),S&&c!==f&&h.jsx("button",{className:"code-modal__btn code-modal__btn--glass-primary",onClick:Q,disabled:g,children:g?"SAVING...":"SAVE"}),h.jsx("button",{className:"code-modal__close",onClick:i,children:"×"})]})]}),h.jsxs("div",{className:"code-modal__content",children:[h.jsxs("div",{className:"code-modal__editor-wrap",onMouseDown:_=>_.stopPropagation(),onClick:_=>_.stopPropagation(),onKeyDownCapture:_=>{const T=_.key;(_.metaKey||_.ctrlKey)&&(T==="s"||T==="S")&&(_.preventDefault(),S&&c!==f&&!g&&Q())},children:[h.jsx("button",{className:`code-modal__copy-btn${w?" code-modal__copy-btn--copied":""}`,onClick:P,title:w?"Copied!":"Copy to clipboard","aria-label":w?"Copied":"Copy code"}),h.jsx(Ow,{value:c,onChange:_=>{S&&u(_)},extensions:[LE({typescript:!0})],theme:gw,editable:S,basicSetup:{lineNumbers:!0,foldGutter:!0,dropCursor:!1,allowMultipleSelections:!1},className:"code-modal__editor",style:{fontSize:"14px"}})]}),x&&h.jsx("div",{className:"code-modal__error",children:x})]})]})}),document.body):null},Go=({element:n,introspector:e,className:t=""})=>{if(!n.tags||n.tags.length===0)return null;const i=e.getTagsByIds(n.tags);return h.jsxs("div",{className:`tags-section ${t}`,children:[h.jsx("h4",{className:"tags-section__title",children:"Tags"}),h.jsx("div",{className:"tags-section__content",children:n.tagsDetailed&&n.tagsDetailed.length>0&&h.jsx("div",{className:"tags-section__detailed",children:h.jsx("div",{className:"tags-section__detailed__items",children:n.tagsDetailed.map(s=>{const r=i.find(o=>o.id===s.id);return h.jsxs("div",{className:"tags-section__detailed__item",children:[h.jsx("div",{className:"tag-name",children:h.jsx("a",{href:`#element-${s.id}`,className:"tags-section__tag-link",children:r?Te(r.id):s.id})}),s.config&&h.jsxs("div",{className:"tag-config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:s.config})]})]},s.id)})})})})]})};var Ho=n=>n.type==="checkbox",Ys=n=>n instanceof Date,en=n=>n==null;const Qw=n=>typeof n=="object";var Ot=n=>!en(n)&&!Array.isArray(n)&&Qw(n)&&!Ys(n),aA=n=>Ot(n)&&n.target?Ho(n.target)?n.target.checked:n.target.value:n,cA=n=>n.substring(0,n.search(/\.\d+(\.|$)/))||n,uA=(n,e)=>n.has(cA(e)),dA=n=>{const e=n.constructor&&n.constructor.prototype;return Ot(e)&&e.hasOwnProperty("isPrototypeOf")},gm=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function Mt(n){let e;const t=Array.isArray(n),i=typeof FileList<"u"?n instanceof FileList:!1;if(n instanceof Date)e=new Date(n);else if(!(gm&&(n instanceof Blob||i))&&(t||Ot(n)))if(e=t?[]:Object.create(Object.getPrototypeOf(n)),!t&&!dA(n))e=n;else for(const s in n)n.hasOwnProperty(s)&&(e[s]=Mt(n[s]));else return n;return e}var Fu=n=>/^\w*$/.test(n),St=n=>n===void 0,Om=n=>Array.isArray(n)?n.filter(Boolean):[],vm=n=>Om(n.replace(/["|']|\]/g,"").split(/\.|\[/)),$e=(n,e,t)=>{if(!e||!Ot(n))return t;const i=(Fu(e)?[e]:vm(e)).reduce((s,r)=>en(s)?s:s[r],n);return St(i)||i===n?St(n[e])?t:n[e]:i},pi=n=>typeof n=="boolean",at=(n,e,t)=>{let i=-1;const s=Fu(e)?[e]:vm(e),r=s.length,o=r-1;for(;++i<r;){const c=s[i];let u=t;if(i!==o){const f=n[c];u=Ot(f)||Array.isArray(f)?f:isNaN(+s[i+1])?{}:[]}if(c==="__proto__"||c==="constructor"||c==="prototype")return;n[c]=u,n=n[c]}};const Cy={BLUR:"blur",FOCUS_OUT:"focusout"},Gn={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},Ri={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},hA=oe.createContext(null);hA.displayName="HookFormContext";var fA=(n,e,t,i=!0)=>{const s={defaultValues:e._defaultValues};for(const r in n)Object.defineProperty(s,r,{get:()=>{const o=r;return e._proxyFormState[o]!==Gn.all&&(e._proxyFormState[o]=!i||Gn.all),n[o]}});return s};const pA=typeof window<"u"?oe.useLayoutEffect:oe.useEffect;var ki=n=>typeof n=="string",mA=(n,e,t,i,s)=>ki(n)?(i&&e.watch.add(n),$e(t,n,s)):Array.isArray(n)?n.map(r=>(i&&e.watch.add(r),$e(t,r))):(i&&(e.watchAll=!0),t),Sp=n=>en(n)||!Qw(n);function gs(n,e,t=new WeakSet){if(Sp(n)||Sp(e))return n===e;if(Ys(n)&&Ys(e))return n.getTime()===e.getTime();const i=Object.keys(n),s=Object.keys(e);if(i.length!==s.length)return!1;if(t.has(n)||t.has(e))return!0;t.add(n),t.add(e);for(const r of i){const o=n[r];if(!s.includes(r))return!1;if(r!=="ref"){const c=e[r];if(Ys(o)&&Ys(c)||Ot(o)&&Ot(c)||Array.isArray(o)&&Array.isArray(c)?!gs(o,c,t):o!==c)return!1}}return!0}var gA=(n,e,t,i,s)=>e?{...t[n],types:{...t[n]&&t[n].types?t[n].types:{},[i]:s||!0}}:{},yo=n=>Array.isArray(n)?n:[n],jy=()=>{let n=[];return{get observers(){return n},next:s=>{for(const r of n)r.next&&r.next(s)},subscribe:s=>(n.push(s),{unsubscribe:()=>{n=n.filter(r=>r!==s)}}),unsubscribe:()=>{n=[]}}},pn=n=>Ot(n)&&!Object.keys(n).length,ym=n=>n.type==="file",Hn=n=>typeof n=="function",wu=n=>{if(!gm)return!1;const e=n?n.ownerDocument:0;return n instanceof(e&&e.defaultView?e.defaultView.HTMLElement:HTMLElement)},Cw=n=>n.type==="select-multiple",xm=n=>n.type==="radio",OA=n=>xm(n)||Ho(n),vf=n=>wu(n)&&n.isConnected;function vA(n,e){const t=e.slice(0,-1).length;let i=0;for(;i<t;)n=St(n)?i++:n[e[i++]];return n}function yA(n){for(const e in n)if(n.hasOwnProperty(e)&&!St(n[e]))return!1;return!0}function xt(n,e){const t=Array.isArray(e)?e:Fu(e)?[e]:vm(e),i=t.length===1?n:vA(n,t),s=t.length-1,r=t[s];return i&&delete i[r],s!==0&&(Ot(i)&&pn(i)||Array.isArray(i)&&yA(i))&&xt(n,t.slice(0,-1)),n}var jw=n=>{for(const e in n)if(Hn(n[e]))return!0;return!1};function bu(n,e={}){const t=Array.isArray(n);if(Ot(n)||t)for(const i in n)Array.isArray(n[i])||Ot(n[i])&&!jw(n[i])?(e[i]=Array.isArray(n[i])?[]:{},bu(n[i],e[i])):en(n[i])||(e[i]=!0);return e}function Tw(n,e,t){const i=Array.isArray(n);if(Ot(n)||i)for(const s in n)Array.isArray(n[s])||Ot(n[s])&&!jw(n[s])?St(e)||Sp(t[s])?t[s]=Array.isArray(n[s])?bu(n[s],[]):{...bu(n[s])}:Tw(n[s],en(e)?{}:e[s],t[s]):t[s]=!gs(n[s],e[s]);return t}var no=(n,e)=>Tw(n,e,bu(e));const Ty={value:!1,isValid:!1},Ny={value:!0,isValid:!0};var Nw=n=>{if(Array.isArray(n)){if(n.length>1){const e=n.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:e,isValid:!!e.length}}return n[0].checked&&!n[0].disabled?n[0].attributes&&!St(n[0].attributes.value)?St(n[0].value)||n[0].value===""?Ny:{value:n[0].value,isValid:!0}:Ny:Ty}return Ty},Ew=(n,{valueAsNumber:e,valueAsDate:t,setValueAs:i})=>St(n)?n:e?n===""?NaN:n&&+n:t&&ki(n)?new Date(n):i?i(n):n;const Ey={isValid:!1,value:null};var Aw=n=>Array.isArray(n)?n.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,Ey):Ey;function Ay(n){const e=n.ref;return ym(e)?e.files:xm(e)?Aw(n.refs).value:Cw(e)?[...e.selectedOptions].map(({value:t})=>t):Ho(e)?Nw(n.refs).value:Ew(St(e.value)?n.ref.value:e.value,n)}var xA=(n,e,t,i)=>{const s={};for(const r of n){const o=$e(e,r);o&&at(s,r,o._f)}return{criteriaMode:t,names:[...n],fields:s,shouldUseNativeValidation:i}},_u=n=>n instanceof RegExp,io=n=>St(n)?n:_u(n)?n.source:Ot(n)?_u(n.value)?n.value.source:n.value:n,My=n=>({isOnSubmit:!n||n===Gn.onSubmit,isOnBlur:n===Gn.onBlur,isOnChange:n===Gn.onChange,isOnAll:n===Gn.all,isOnTouch:n===Gn.onTouched});const Ry="AsyncFunction";var kA=n=>!!n&&!!n.validate&&!!(Hn(n.validate)&&n.validate.constructor.name===Ry||Ot(n.validate)&&Object.values(n.validate).find(e=>e.constructor.name===Ry)),SA=n=>n.mount&&(n.required||n.min||n.max||n.maxLength||n.minLength||n.pattern||n.validate),Dy=(n,e,t)=>!t&&(e.watchAll||e.watch.has(n)||[...e.watch].some(i=>n.startsWith(i)&&/^\.\w+/.test(n.slice(i.length))));const xo=(n,e,t,i)=>{for(const s of t||Object.keys(n)){const r=$e(n,s);if(r){const{_f:o,...c}=r;if(o){if(o.refs&&o.refs[0]&&e(o.refs[0],s)&&!i)return!0;if(o.ref&&e(o.ref,o.name)&&!i)return!0;if(xo(c,e))break}else if(Ot(c)&&xo(c,e))break}}};function Ly(n,e,t){const i=$e(n,t);if(i||Fu(t))return{error:i,name:t};const s=t.split(".");for(;s.length;){const r=s.join("."),o=$e(e,r),c=$e(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};s.pop()}return{name:t}}var wA=(n,e,t,i)=>{t(n);const{name:s,...r}=n;return pn(r)||Object.keys(r).length>=Object.keys(e).length||Object.keys(r).find(o=>e[o]===(!i||Gn.all))},bA=(n,e,t)=>!n||!e||n===e||yo(n).some(i=>i&&(t?i===e:i.startsWith(e)||e.startsWith(i))),_A=(n,e,t,i,s)=>s.isOnAll?!1:!t&&s.isOnTouch?!(e||n):(t?i.isOnBlur:s.isOnBlur)?!n:(t?i.isOnChange:s.isOnChange)?n:!0,$A=(n,e)=>!Om($e(n,e)).length&&xt(n,e),PA=(n,e,t)=>{const i=yo($e(n,t));return at(i,"root",e[t]),at(n,t,i),n},Vc=n=>ki(n);function Iy(n,e,t="validate"){if(Vc(n)||Array.isArray(n)&&n.every(Vc)||pi(n)&&!n)return{type:t,message:Vc(n)?n:"",ref:e}}var Rr=n=>Ot(n)&&!_u(n)?n:{value:n,message:""},Zy=async(n,e,t,i,s,r)=>{const{ref:o,refs:c,required:u,maxLength:f,minLength:p,min:g,max:O,pattern:x,validate:k,name:w,valueAsNumber:b,mount:C}=n._f,S=$e(t,w);if(!C||e.has(w))return{};const Q=c?c[0]:o,P=D=>{s&&Q.reportValidity&&(Q.setCustomValidity(pi(D)?"":D||""),Q.reportValidity())},_={},T=xm(o),A=Ho(o),J=T||A,z=(b||ym(o))&&St(o.value)&&St(S)||wu(o)&&o.value===""||S===""||Array.isArray(S)&&!S.length,G=gA.bind(null,w,i,_),H=(D,ee,q,ue=Ri.maxLength,ve=Ri.minLength)=>{const de=D?ee:q;_[w]={type:D?ue:ve,message:de,ref:o,...G(D?ue:ve,de)}};if(r?!Array.isArray(S)||!S.length:u&&(!J&&(z||en(S))||pi(S)&&!S||A&&!Nw(c).isValid||T&&!Aw(c).isValid)){const{value:D,message:ee}=Vc(u)?{value:!!u,message:u}:Rr(u);if(D&&(_[w]={type:Ri.required,message:ee,ref:Q,...G(Ri.required,ee)},!i))return P(ee),_}if(!z&&(!en(g)||!en(O))){let D,ee;const q=Rr(O),ue=Rr(g);if(!en(S)&&!isNaN(S)){const ve=o.valueAsNumber||S&&+S;en(q.value)||(D=ve>q.value),en(ue.value)||(ee=ve<ue.value)}else{const ve=o.valueAsDate||new Date(S),de=N=>new Date(new Date().toDateString()+" "+N),X=o.type=="time",L=o.type=="week";ki(q.value)&&S&&(D=X?de(S)>de(q.value):L?S>q.value:ve>new Date(q.value)),ki(ue.value)&&S&&(ee=X?de(S)<de(ue.value):L?S<ue.value:ve<new Date(ue.value))}if((D||ee)&&(H(!!D,q.message,ue.message,Ri.max,Ri.min),!i))return P(_[w].message),_}if((f||p)&&!z&&(ki(S)||r&&Array.isArray(S))){const D=Rr(f),ee=Rr(p),q=!en(D.value)&&S.length>+D.value,ue=!en(ee.value)&&S.length<+ee.value;if((q||ue)&&(H(q,D.message,ee.message),!i))return P(_[w].message),_}if(x&&!z&&ki(S)){const{value:D,message:ee}=Rr(x);if(_u(D)&&!S.match(D)&&(_[w]={type:Ri.pattern,message:ee,ref:o,...G(Ri.pattern,ee)},!i))return P(ee),_}if(k){if(Hn(k)){const D=await k(S,t),ee=Iy(D,Q);if(ee&&(_[w]={...ee,...G(Ri.validate,ee.message)},!i))return P(ee.message),_}else if(Ot(k)){let D={};for(const ee in k){if(!pn(D)&&!i)break;const q=Iy(await k[ee](S,t),Q,ee);q&&(D={...q,...G(ee,q.message)},P(q.message),i&&(_[w]=D))}if(!pn(D)&&(_[w]={ref:Q,...D},!i))return _}}return P(!0),_};const QA={mode:Gn.onSubmit,reValidateMode:Gn.onChange,shouldFocusError:!0};function CA(n={}){let e={...QA,...n},t={submitCount:0,isDirty:!1,isReady:!1,isLoading:Hn(e.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1},i={},s=Ot(e.defaultValues)||Ot(e.values)?Mt(e.defaultValues||e.values)||{}:{},r=e.shouldUnregister?{}:Mt(s),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:jy(),state:jy()},x=e.criteriaMode===Gn.all,k=M=>Y=>{clearTimeout(f),f=setTimeout(M,Y)},w=async M=>{if(!e.disabled&&(p.isValid||g.isValid||M)){const Y=e.resolver?pn((await A()).errors):await z(i,!0);Y!==t.isValid&&O.state.next({isValid:Y})}},b=(M,Y)=>{!e.disabled&&(p.isValidating||p.validatingFields||g.isValidating||g.validatingFields)&&((M||Array.from(c.mount)).forEach(te=>{te&&(Y?at(t.validatingFields,te,Y):xt(t.validatingFields,te))}),O.state.next({validatingFields:t.validatingFields,isValidating:!pn(t.validatingFields)}))},C=(M,Y=[],te,ye,me=!0,fe=!0)=>{if(ye&&te&&!e.disabled){if(o.action=!0,fe&&Array.isArray($e(i,M))){const Ce=te($e(i,M),ye.argA,ye.argB);me&&at(i,M,Ce)}if(fe&&Array.isArray($e(t.errors,M))){const Ce=te($e(t.errors,M),ye.argA,ye.argB);me&&at(t.errors,M,Ce),$A(t.errors,M)}if((p.touchedFields||g.touchedFields)&&fe&&Array.isArray($e(t.touchedFields,M))){const Ce=te($e(t.touchedFields,M),ye.argA,ye.argB);me&&at(t.touchedFields,M,Ce)}(p.dirtyFields||g.dirtyFields)&&(t.dirtyFields=no(s,r)),O.state.next({name:M,isDirty:H(M,Y),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else at(r,M,Y)},S=(M,Y)=>{at(t.errors,M,Y),O.state.next({errors:t.errors})},Q=M=>{t.errors=M,O.state.next({errors:t.errors,isValid:!1})},P=(M,Y,te,ye)=>{const me=$e(i,M);if(me){const fe=$e(r,M,St(te)?$e(s,M):te);St(fe)||ye&&ye.defaultChecked||Y?at(r,M,Y?fe:Ay(me._f)):q(M,fe),o.mount&&w()}},_=(M,Y,te,ye,me)=>{let fe=!1,Ce=!1;const Be={name:M};if(!e.disabled){if(!te||ye){(p.isDirty||g.isDirty)&&(Ce=t.isDirty,t.isDirty=Be.isDirty=H(),fe=Ce!==Be.isDirty);const Ue=gs($e(s,M),Y);Ce=!!$e(t.dirtyFields,M),Ue?xt(t.dirtyFields,M):at(t.dirtyFields,M,!0),Be.dirtyFields=t.dirtyFields,fe=fe||(p.dirtyFields||g.dirtyFields)&&Ce!==!Ue}if(te){const Ue=$e(t.touchedFields,M);Ue||(at(t.touchedFields,M,te),Be.touchedFields=t.touchedFields,fe=fe||(p.touchedFields||g.touchedFields)&&Ue!==te)}fe&&me&&O.state.next(Be)}return fe?Be:{}},T=(M,Y,te,ye)=>{const me=$e(t.errors,M),fe=(p.isValid||g.isValid)&&pi(Y)&&t.isValid!==Y;if(e.delayError&&te?(u=k(()=>S(M,te)),u(e.delayError)):(clearTimeout(f),u=null,te?at(t.errors,M,te):xt(t.errors,M)),(te?!gs(me,te):me)||!pn(ye)||fe){const Ce={...ye,...fe&&pi(Y)?{isValid:Y}:{},errors:t.errors,name:M};t={...t,...Ce},O.state.next(Ce)}},A=async M=>{b(M,!0);const Y=await e.resolver(r,e.context,xA(M||c.mount,i,e.criteriaMode,e.shouldUseNativeValidation));return b(M),Y},J=async M=>{const{errors:Y}=await A(M);if(M)for(const te of M){const ye=$e(Y,te);ye?at(t.errors,te,ye):xt(t.errors,te)}else t.errors=Y;return Y},z=async(M,Y,te={valid:!0})=>{for(const ye in M){const me=M[ye];if(me){const{_f:fe,...Ce}=me;if(fe){const Be=c.array.has(fe.name),Ue=me._f&&kA(me._f);Ue&&p.validatingFields&&b([ye],!0);const Ht=await Zy(me,c.disabled,r,x,e.shouldUseNativeValidation&&!Y,Be);if(Ue&&p.validatingFields&&b([ye]),Ht[fe.name]&&(te.valid=!1,Y))break;!Y&&($e(Ht,fe.name)?Be?PA(t.errors,Ht,fe.name):at(t.errors,fe.name,Ht[fe.name]):xt(t.errors,fe.name))}!pn(Ce)&&await z(Ce,Y,te)}}return te.valid},G=()=>{for(const M of c.unMount){const Y=$e(i,M);Y&&(Y._f.refs?Y._f.refs.every(te=>!vf(te)):!vf(Y._f.ref))&&pe(M)}c.unMount=new Set},H=(M,Y)=>!e.disabled&&(M&&Y&&at(r,M,Y),!gs(N(),s)),D=(M,Y,te)=>mA(M,c,{...o.mount?r:St(Y)?s:ki(M)?{[M]:Y}:Y},te,Y),ee=M=>Om($e(o.mount?r:s,M,e.shouldUnregister?$e(s,M,[]):[])),q=(M,Y,te={})=>{const ye=$e(i,M);let me=Y;if(ye){const fe=ye._f;fe&&(!fe.disabled&&at(r,M,Ew(Y,fe)),me=wu(fe.ref)&&en(Y)?"":Y,Cw(fe.ref)?[...fe.ref.options].forEach(Ce=>Ce.selected=me.includes(Ce.value)):fe.refs?Ho(fe.ref)?fe.refs.forEach(Ce=>{(!Ce.defaultChecked||!Ce.disabled)&&(Array.isArray(me)?Ce.checked=!!me.find(Be=>Be===Ce.value):Ce.checked=me===Ce.value||!!me)}):fe.refs.forEach(Ce=>Ce.checked=Ce.value===me):ym(fe.ref)?fe.ref.value="":(fe.ref.value=me,fe.ref.type||O.state.next({name:M,values:Mt(r)})))}(te.shouldDirty||te.shouldTouch)&&_(M,me,te.shouldTouch,te.shouldDirty,!0),te.shouldValidate&&L(M)},ue=(M,Y,te)=>{for(const ye in Y){if(!Y.hasOwnProperty(ye))return;const me=Y[ye],fe=M+"."+ye,Ce=$e(i,fe);(c.array.has(M)||Ot(me)||Ce&&!Ce._f)&&!Ys(me)?ue(fe,me,te):q(fe,me,te)}},ve=(M,Y,te={})=>{const ye=$e(i,M),me=c.array.has(M),fe=Mt(Y);at(r,M,fe),me?(O.array.next({name:M,values:Mt(r)}),(p.isDirty||p.dirtyFields||g.isDirty||g.dirtyFields)&&te.shouldDirty&&O.state.next({name:M,dirtyFields:no(s,r),isDirty:H(M,fe)})):ye&&!ye._f&&!en(fe)?ue(M,fe,te):q(M,fe,te),Dy(M,c)&&O.state.next({...t,name:M}),O.state.next({name:o.mount?M:void 0,values:Mt(r)})},de=async M=>{o.mount=!0;const Y=M.target;let te=Y.name,ye=!0;const me=$e(i,te),fe=Ue=>{ye=Number.isNaN(Ue)||Ys(Ue)&&isNaN(Ue.getTime())||gs(Ue,$e(r,te,Ue))},Ce=My(e.mode),Be=My(e.reValidateMode);if(me){let Ue,Ht;const ii=Y.type?Ay(me._f):aA(M),ln=M.type===Cy.BLUR||M.type===Cy.FOCUS_OUT,Vu=!SA(me._f)&&!e.resolver&&!$e(t.errors,te)&&!me._f.deps||_A(ln,$e(t.touchedFields,te),t.isSubmitted,Be,Ce),or=Dy(te,c,ln);at(r,te,ii),ln?(!Y||!Y.readOnly)&&(me._f.onBlur&&me._f.onBlur(M),u&&u(0)):me._f.onChange&&me._f.onChange(M);const ar=_(te,ii,ln),qu=!pn(ar)||or;if(!ln&&O.state.next({name:te,type:M.type,values:Mt(r)}),Vu)return(p.isValid||g.isValid)&&(e.mode==="onBlur"?ln&&w():ln||w()),qu&&O.state.next({name:te,...or?{}:ar});if(!ln&&or&&O.state.next({...t}),e.resolver){const{errors:cr}=await A([te]);if(fe(ii),ye){const dl=Ly(t.errors,i,te),ur=Ly(cr,i,dl.name||te);Ue=ur.error,te=ur.name,Ht=pn(cr)}}else b([te],!0),Ue=(await Zy(me,c.disabled,r,x,e.shouldUseNativeValidation))[te],b([te]),fe(ii),ye&&(Ue?Ht=!1:(p.isValid||g.isValid)&&(Ht=await z(i,!0)));ye&&(me._f.deps&&L(me._f.deps),T(te,Ht,Ue,ar))}},X=(M,Y)=>{if($e(t.errors,Y)&&M.focus)return M.focus(),1},L=async(M,Y={})=>{let te,ye;const me=yo(M);if(e.resolver){const fe=await J(St(M)?M:me);te=pn(fe),ye=M?!me.some(Ce=>$e(fe,Ce)):te}else M?(ye=(await Promise.all(me.map(async fe=>{const Ce=$e(i,fe);return await z(Ce&&Ce._f?{[fe]:Ce}:Ce)}))).every(Boolean),!(!ye&&!t.isValid)&&w()):ye=te=await z(i);return O.state.next({...!ki(M)||(p.isValid||g.isValid)&&te!==t.isValid?{}:{name:M},...e.resolver||!M?{isValid:te}:{},errors:t.errors}),Y.shouldFocus&&!ye&&xo(i,X,M?me:c.mount),ye},N=M=>{const Y={...o.mount?r:s};return St(M)?Y:ki(M)?$e(Y,M):M.map(te=>$e(Y,te))},j=(M,Y)=>({invalid:!!$e((Y||t).errors,M),isDirty:!!$e((Y||t).dirtyFields,M),error:$e((Y||t).errors,M),isValidating:!!$e(t.validatingFields,M),isTouched:!!$e((Y||t).touchedFields,M)}),I=M=>{M&&yo(M).forEach(Y=>xt(t.errors,Y)),O.state.next({errors:M?t.errors:{}})},se=(M,Y,te)=>{const ye=($e(i,M,{_f:{}})._f||{}).ref,me=$e(t.errors,M)||{},{ref:fe,message:Ce,type:Be,...Ue}=me;at(t.errors,M,{...Ue,...Y,ref:ye}),O.state.next({name:M,errors:t.errors,isValid:!1}),te&&te.shouldFocus&&ye&&ye.focus&&ye.focus()},K=(M,Y)=>Hn(M)?O.state.subscribe({next:te=>"values"in te&&M(D(void 0,Y),te)}):D(M,Y,!0),ie=M=>O.state.subscribe({next:Y=>{bA(M.name,Y.name,M.exact)&&wA(Y,M.formState||p,ul,M.reRenderRoot)&&M.callback({values:{...r},...t,...Y,defaultValues:s})}}).unsubscribe,he=M=>(o.mount=!0,g={...g,...M.formState},ie({...M,formState:g})),pe=(M,Y={})=>{for(const te of M?yo(M):c.mount)c.mount.delete(te),c.array.delete(te),Y.keepValue||(xt(i,te),xt(r,te)),!Y.keepError&&xt(t.errors,te),!Y.keepDirty&&xt(t.dirtyFields,te),!Y.keepTouched&&xt(t.touchedFields,te),!Y.keepIsValidating&&xt(t.validatingFields,te),!e.shouldUnregister&&!Y.keepDefaultValue&&xt(s,te);O.state.next({values:Mt(r)}),O.state.next({...t,...Y.keepDirty?{isDirty:H()}:{}}),!Y.keepIsValid&&w()},Qe=({disabled:M,name:Y})=>{(pi(M)&&o.mount||M||c.disabled.has(Y))&&(M?c.disabled.add(Y):c.disabled.delete(Y))},De=(M,Y={})=>{let te=$e(i,M);const ye=pi(Y.disabled)||pi(e.disabled);return at(i,M,{...te||{},_f:{...te&&te._f?te._f:{ref:{name:M}},name:M,mount:!0,...Y}}),c.mount.add(M),te?Qe({disabled:pi(Y.disabled)?Y.disabled:e.disabled,name:M}):P(M,!0,Y.value),{...ye?{disabled:Y.disabled||e.disabled}:{},...e.progressive?{required:!!Y.required,min:io(Y.min),max:io(Y.max),minLength:io(Y.minLength),maxLength:io(Y.maxLength),pattern:io(Y.pattern)}:{},name:M,onChange:de,onBlur:de,ref:me=>{if(me){De(M,Y),te=$e(i,M);const fe=St(me.value)&&me.querySelectorAll&&me.querySelectorAll("input,select,textarea")[0]||me,Ce=OA(fe),Be=te._f.refs||[];if(Ce?Be.find(Ue=>Ue===fe):fe===te._f.ref)return;at(i,M,{_f:{...te._f,...Ce?{refs:[...Be.filter(vf),fe,...Array.isArray($e(s,M))?[{}]:[]],ref:{type:fe.type,name:M}}:{ref:fe}}}),P(M,!1,void 0,fe)}else te=$e(i,M,{}),te._f&&(te._f.mount=!1),(e.shouldUnregister||Y.shouldUnregister)&&!(uA(c.array,M)&&o.action)&&c.unMount.add(M)}}},Ye=()=>e.shouldFocusError&&xo(i,X,c.mount),Re=M=>{pi(M)&&(O.state.next({disabled:M}),xo(i,(Y,te)=>{const ye=$e(i,te);ye&&(Y.disabled=ye._f.disabled||M,Array.isArray(ye._f.refs)&&ye._f.refs.forEach(me=>{me.disabled=ye._f.disabled||M}))},0,!1))},ze=(M,Y)=>async te=>{let ye;te&&(te.preventDefault&&te.preventDefault(),te.persist&&te.persist());let me=Mt(r);if(O.state.next({isSubmitting:!0}),e.resolver){const{errors:fe,values:Ce}=await A();t.errors=fe,me=Mt(Ce)}else await z(i);if(c.disabled.size)for(const fe of c.disabled)xt(me,fe);if(xt(t.errors,"root"),pn(t.errors)){O.state.next({errors:{}});try{await M(me,te)}catch(fe){ye=fe}}else Y&&await Y({...t.errors},te),Ye(),setTimeout(Ye);if(O.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:pn(t.errors)&&!ye,submitCount:t.submitCount+1,errors:t.errors}),ye)throw ye},ft=(M,Y={})=>{$e(i,M)&&(St(Y.defaultValue)?ve(M,Mt($e(s,M))):(ve(M,Y.defaultValue),at(s,M,Mt(Y.defaultValue))),Y.keepTouched||xt(t.touchedFields,M),Y.keepDirty||(xt(t.dirtyFields,M),t.isDirty=Y.defaultValue?H(M,Mt($e(s,M))):H()),Y.keepError||(xt(t.errors,M),p.isValid&&w()),O.state.next({...t}))},jt=(M,Y={})=>{const te=M?Mt(M):s,ye=Mt(te),me=pn(M),fe=me?s:ye;if(Y.keepDefaultValues||(s=te),!Y.keepValues){if(Y.keepDirtyValues){const Ce=new Set([...c.mount,...Object.keys(no(s,r))]);for(const Be of Array.from(Ce))$e(t.dirtyFields,Be)?at(fe,Be,$e(r,Be)):ve(Be,$e(fe,Be))}else{if(gm&&St(M))for(const Ce of c.mount){const Be=$e(i,Ce);if(Be&&Be._f){const Ue=Array.isArray(Be._f.refs)?Be._f.refs[0]:Be._f.ref;if(wu(Ue)){const Ht=Ue.closest("form");if(Ht){Ht.reset();break}}}}if(Y.keepFieldsRef)for(const Ce of c.mount)ve(Ce,$e(fe,Ce));else i={}}r=e.shouldUnregister?Y.keepDefaultValues?Mt(s):{}:Mt(fe),O.array.next({values:{...fe}}),O.state.next({values:{...fe}})}c={mount:Y.keepDirtyValues?c.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},o.mount=!p.isValid||!!Y.keepIsValid||!!Y.keepDirtyValues,o.watch=!!e.shouldUnregister,O.state.next({submitCount:Y.keepSubmitCount?t.submitCount:0,isDirty:me?!1:Y.keepDirty?t.isDirty:!!(Y.keepDefaultValues&&!gs(M,s)),isSubmitted:Y.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:me?{}:Y.keepDirtyValues?Y.keepDefaultValues&&r?no(s,r):t.dirtyFields:Y.keepDefaultValues&&M?no(s,M):Y.keepDirty?t.dirtyFields:{},touchedFields:Y.keepTouched?t.touchedFields:{},errors:Y.keepErrors?t.errors:{},isSubmitSuccessful:Y.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:s})},Yi=(M,Y)=>jt(Hn(M)?M(r):M,Y),rr=(M,Y={})=>{const te=$e(i,M),ye=te&&te._f;if(ye){const me=ye.refs?ye.refs[0]:ye.ref;me.focus&&(me.focus(),Y.shouldSelect&&Hn(me.select)&&me.select())}},ul=M=>{t={...t,...M}},lr={control:{register:De,unregister:pe,getFieldState:j,handleSubmit:ze,setError:se,_subscribe:ie,_runSchema:A,_focusError:Ye,_getWatch:D,_getDirty:H,_setValid:w,_setFieldArray:C,_setDisabledField:Qe,_setErrors:Q,_getFieldArray:ee,_reset:jt,_resetDefaultValues:()=>Hn(e.defaultValues)&&e.defaultValues().then(M=>{Yi(M,e.resetOptions),O.state.next({isLoading:!1})}),_removeUnmounted:G,_disableForm:Re,_subjects:O,_proxyFormState:p,get _fields(){return i},get _formValues(){return r},get _state(){return o},set _state(M){o=M},get _defaultValues(){return s},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:L,register:De,handleSubmit:ze,watch:K,setValue:ve,getValues:N,reset:Yi,resetField:ft,clearErrors:I,unregister:pe,setError:se,setFocus:rr,getFieldState:j};return{...lr,formControl:lr}}function Mw(n={}){const e=oe.useRef(void 0),t=oe.useRef(void 0),[i,s]=oe.useState({isDirty:!1,isValidating:!1,isLoading:Hn(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:Hn(n.defaultValues)?void 0:n.defaultValues});if(!e.current)if(n.formControl)e.current={...n.formControl,formState:i},n.defaultValues&&!Hn(n.defaultValues)&&n.formControl.reset(n.defaultValues,n.resetOptions);else{const{formControl:o,...c}=CA(n);e.current={...c,formState:i}}const r=e.current.control;return r._options=n,pA(()=>{const o=r._subscribe({formState:r._proxyFormState,callback:()=>s({...r._formState}),reRenderRoot:!0});return s(c=>({...c,isReady:!0})),r._formState.isReady=!0,o},[r]),oe.useEffect(()=>r._disableForm(n.disabled),[r,n.disabled]),oe.useEffect(()=>{n.mode&&(r._options.mode=n.mode),n.reValidateMode&&(r._options.reValidateMode=n.reValidateMode)},[r,n.mode,n.reValidateMode]),oe.useEffect(()=>{n.errors&&(r._setErrors(n.errors),r._focusError())},[r,n.errors]),oe.useEffect(()=>{n.shouldUnregister&&r._subjects.state.next({values:r._getWatch()})},[r,n.shouldUnregister]),oe.useEffect(()=>{if(r._proxyFormState.isDirty){const o=r._getDirty();o!==i.isDirty&&r._subjects.state.next({isDirty:o})}},[r,i.isDirty]),oe.useEffect(()=>{n.values&&!gs(n.values,t.current)?(r._reset(n.values,{keepFieldsRef:!0,...r._options.resetOptions}),t.current=n.values,s(o=>({...o}))):r._resetDefaultValues()},[r,n.values]),oe.useEffect(()=>{r._state.mount||(r._setValid(),r._state.mount=!0),r._state.watch&&(r._state.watch=!1,r._subjects.state.next({...r._formState})),r._removeUnmounted()}),e.current.formState=fA(i,r),e.current}const qc=({children:n,className:e="",...t})=>h.jsx("form",{className:`form ${e}`,...t,children:n}),Ii=({label:n,htmlFor:e,hint:t,error:i,children:s,className:r=""})=>h.jsxs("div",{className:`form__group ${r}`,children:[h.jsx("label",{className:"form__label",htmlFor:e,children:n}),s,t&&h.jsx("div",{className:"form__hint",children:t}),i&&h.jsx("div",{className:"form__error",children:i})]}),Ws=oe.forwardRef(({className:n="",invalid:e,...t},i)=>h.jsx("input",{ref:i,className:`form__input ${e?"is-invalid":""} ${n}`,...t}));Ws.displayName="TextInput";const Rw=oe.forwardRef(({className:n="",invalid:e,...t},i)=>h.jsx("input",{ref:i,type:"password",className:`form__input ${e?"is-invalid":""} ${n}`,...t}));Rw.displayName="PasswordInput";const Dw=oe.forwardRef(({className:n="",invalid:e,children:t,...i},s)=>h.jsx("select",{ref:s,className:`form__select ${e?"is-invalid":""} ${n}`,...i,children:t}));Dw.displayName="Select";const jA=({className:n="",...e})=>h.jsxs("label",{className:`form__checkbox ${n}`,children:[h.jsx("input",{type:"checkbox",...e}),h.jsx("span",{className:"form__checkbox-label",children:e.title||e["aria-label"]||""})]}),TA=({children:n,className:e=""})=>h.jsx("div",{className:`form__actions ${e}`,children:n});async function Yc(n,e){const{settings:t,messages:i,tools:s,tool_choice:r,response_format:o,temperature:c}=n;if(!t.openaiApiKey){e.onError?.(new Error("Missing API key"));return}const f=(Q=>{const P=[];for(const _ of Q){if(_.role==="system"||_.role==="user"){const T=_.content??"";P.push({role:_.role,content:T});continue}if(_.role==="assistant"){const T=_.content??void 0;Array.isArray(_.tool_calls)&&_.tool_calls.length?P.push({role:"assistant",content:T??null,tool_calls:_.tool_calls.map(A=>({id:A.id,type:"function",function:{name:A.function.name,arguments:A.function.arguments}}))}):P.push({role:"assistant",content:T??null});continue}if(_.role==="tool"){const T=_.content??"",A=_.tool_call_id??"";P.push({role:"tool",content:T,tool_call_id:A});continue}}return P})(i),p=Array.isArray(s)?s.map(Q=>({type:"function",function:{...Q.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 w=await fetch(x,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t.openaiApiKey}`},body:JSON.stringify(k),signal:n.signal});if(!w.ok){const Q=await w.text();e.onError?.(new Error(Q||`HTTP ${w.status}`));return}if(!t.stream){const Q=await w.json(),P=Q.choices?.[0],_=(P?.message?.content??"")||"";Q.usage&&e.onUsage?.({prompt_tokens:Q.usage.prompt_tokens,completion_tokens:Q.usage.completion_tokens,total_tokens:Q.usage.total_tokens}),await Promise.resolve(e.onFinish?.(_,P?.finish_reason??void 0));return}if(!w.body){e.onError?.(new Error("No response body for stream"));return}const b=new TextDecoder,C=w.body.getReader();let S="";for(;;){const{value:Q,done:P}=await C.read();if(P)break;const _=b.decode(Q,{stream:!0});for(const T of _.split(`
184
- `)){const A=T.trim();if(!A.startsWith("data:"))continue;const J=A.replace("data: ","");if(J!=="[DONE]")try{const z=JSON.parse(J),G=z.choices?.[0];if(G){const H=G.delta;if(typeof H.content=="string"&&H.content.length>0&&(S+=H.content,e.onTextDelta?.(H.content)),Array.isArray(H.tool_calls))for(const D of H.tool_calls)e.onToolCallDelta?.({id:D.id,index:D.index,type:D.type,function:{name:D.function?.name,arguments:D.function?.arguments}});if(G.finish_reason){z.usage&&e.onUsage?.(z.usage),await Promise.resolve(e.onFinish?.(S,G.finish_reason));return}}z.usage&&e.onUsage?.(z.usage)}catch{}}}}function Fy(){const n=new Map;return{accept(e){const t=e.index,i=n.get(t)||{id:e.id||"",name:"",argsText:""};e.id&&(i.id=e.id),e.function?.name&&(i.name=e.function.name),typeof e.function?.arguments=="string"&&(i.argsText+=e.function.arguments),n.set(t,i)},list(){return Array.from(n.entries()).sort((e,t)=>e[0]-t[0]).map(([,e])=>e)}}}function NA(n){return n.map(e=>({type:"function",function:{name:e.name,description:e.description,parameters:e.parameters}}))}async function EA(n){const{apiKey:e,model:t,baseUrl:i,signal:s}=n;if(!e)return{ok:!1,error:"Missing API key"};try{const o=`${(i||"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:s});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 Lw=()=>{try{return!!mm()?.openaiApiKey}catch{return!1}};async function Iw(n,e){const t=mm();if(!t?.openaiApiKey)throw new Error("OpenAI API key not set. Configure it in Chat settings to enable AI fill.");const i={...t,stream:!1},s=["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(`
185
- `),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(`
186
-
187
- `),o=[{role:"system",content:s},{role:"user",content:r}];let c="";return await Yc({settings:i,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 AA(n){if(!n)return null;try{return JSON.parse(n)}catch{return null}}function Zw(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,i]of Object.entries(n.properties))e[t]=Zw(i);return e}default:return}}}function MA(n){if(n)return Zw(n)}function RA(n){return n.replace(/~1/g,"/").replace(/~0/g,"~")}function Fw(n,e){if(!n||!e||!e.startsWith("#/"))return null;const t=e.slice(2).split("/").map(RA);let i=n;for(const s of t)if(i&&typeof i=="object"&&s in i)i=i[s];else return null;return i}function Xy(n,e){if(!n)return n;if(n.$ref){const t=Fw(e,n.$ref);if(t)return t}return n}const cl=({schemaString:n,onJsonChange:e,hidePrint:t})=>{const[i,s]=oe.useState("print"),[r,o]=oe.useState(!1),[c,u]=oe.useState(!1),[f,p]=oe.useState(!1),[g,O]=oe.useState(!1),x=oe.useMemo(()=>AA(n),[n]),k=oe.useMemo(()=>x?.$ref&&Fw(x,x.$ref)||x,[x]),w=oe.useMemo(()=>MA(k),[k]),{register:b,control:C,watch:S,setValue:Q,reset:P}=Mw({defaultValues:w??{}}),_=S();oe.useEffect(()=>{O(Lw())},[n]);const T=(D,ee)=>{if(D)return ee?ee.split(".").reduce((q,ue)=>q?q[ue]:void 0,D):D},A=(D,ee,q=[],ue)=>{const ve=Xy(ee,x)||ee,de=[...q,D].join("."),X=ve.title||D,L=!!(ue&&ue.includes(D));if(ve.enum&&ve.enum.length>0)return h.jsx(Ii,{label:`${X}${L?" *":""}`,children:h.jsx(Dw,{...b(de),children:ve.enum.map((N,j)=>h.jsx("option",{value:String(N),children:String(N)},j))})},de);switch(ve.type){case"string":return h.jsx(Ii,{label:`${X}${L?" *":""}`,children:h.jsx(Ws,{value:T(_,de)??"",onChange:N=>Q(de,N.target.value,{shouldDirty:!0,shouldTouch:!0}),placeholder:ve.description||X})},de);case"number":case"integer":return h.jsx(Ii,{label:`${X}${L?" *":""}`,children:h.jsx(Ws,{type:"number",step:ve.type==="integer"?1:"any",value:T(_,de)??"",onChange:N=>{const j=N.target.value===""?void 0:Number(N.target.value);Q(de,j,{shouldDirty:!0,shouldTouch:!0})}})},de);case"boolean":return h.jsx(Ii,{label:`${X}${L?" *":""}`,children:h.jsx(jA,{checked:!!T(_,de),onChange:N=>Q(de,N.target.checked,{shouldDirty:!0,shouldTouch:!0})})},de);case"array":{const j=Xy(ve.items,x)?.type||"string";return h.jsx(Ii,{label:`${X}${L?" *":""}`,hint:`Array of ${j}. Comma-separated.`,children:h.jsx(Ws,{value:(T(_,de)||[]).join(", "),onChange:I=>{const se=I.target.value.split(",").map(K=>K.trim()).filter(Boolean);Q(de,se,{shouldDirty:!0,shouldTouch:!0})}})},de)}case"object":{const N=ve.properties||{};return h.jsxs("div",{className:"schema-renderer__object",children:[h.jsx("div",{className:"schema-renderer__object-title",children:X}),h.jsx("div",{className:"schema-renderer__grid",children:Object.entries(N).map(([j,I])=>A(j,I,[...q,D],ve.required))})]},de)}default:return h.jsx(Ii,{label:`${X}${L?" *":""}`,children:h.jsx(Ws,{...b(de)})},de)}},J=D=>D?D.type==="object"&&D.properties?h.jsx(qc,{className:"schema-renderer__form",children:h.jsx("div",{className:"schema-renderer__grid",children:Object.entries(D.properties).map(([ee,q])=>A(ee,q,[],D.required))})}):h.jsx(qc,{className:"schema-renderer__form",children:A("value",D||{type:"string"})}):h.jsx(qc,{className:"schema-renderer__form",children:h.jsx("div",{className:"schema-renderer__empty",children:"No schema defined"})}),z=oe.useMemo(()=>{try{return JSON.stringify(_??{},null,2)}catch{return"{}"}},[_]);oe.useEffect(()=>{if(e)try{const D=JSON.stringify(_??{});e(D,_)}catch{e("{}",_)}},[_,e]);const G=oe.useCallback(async()=>{await pm(z)&&(u(!0),setTimeout(()=>u(!1),1500))},[z]),H=async()=>{if(n){p(!0);try{const D=await Iw(n);D&&typeof D=="object"&&P(D)}catch(D){console.error("AI fill failed",D)}finally{p(!1)}}};return h.jsxs("div",{className:"schema-renderer",children:[h.jsxs("div",{className:"schema-renderer__tabs",children:[x&&h.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:H,disabled:!g||f,children:f?"Filling…":"✧ Fill"}),!t&&h.jsx("button",{type:"button",className:`schema-renderer__tab ${i==="print"?"is-active":""}`,onClick:()=>s("print"),children:"Print"}),h.jsx("button",{type:"button",className:`schema-renderer__tab ${i==="form"?"is-active":""}`,onClick:()=>{if(!r&&x){const D=wp(x);D&&typeof D=="object"&&P(D),o(!0)}s("form")},children:"Form"}),h.jsx("button",{type:"button",className:`schema-renderer__tab ${i==="json"?"is-active":""}`,onClick:()=>s("json"),children:"JSON"})]}),!t&&i==="print"&&h.jsx("pre",{className:"schema-renderer__code-block",children:O_(n)}),i==="form"&&h.jsxs("div",{className:"schema-renderer__form-wrapper",children:[J(k),h.jsxs("div",{className:"schema-renderer__json-inline",style:{position:"relative"},children:[h.jsx("button",{type:"button",className:`code-modal__copy-btn${c?" code-modal__copy-btn--copied":""}`,onClick:G,title:c?"Copied!":"Copy to clipboard","aria-label":c?"Copied":"Copy code"}),h.jsx("pre",{className:"schema-renderer__code-block",children:z})]})]}),i==="json"&&h.jsxs("div",{className:"schema-renderer__json",style:{position:"relative"},children:[h.jsx("button",{type:"button",className:`code-modal__copy-btn${c?" code-modal__copy-btn--copied":""}`,onClick:G,title:c?"Copied!":"Copy to clipboard","aria-label":c?"Copied":"Copy code"}),h.jsx("pre",{className:"schema-renderer__code-block",children:z})]})]})};function wp(n){if(n){if(n.enum&&n.enum.length>0)return n.enum[0];switch(n.type){case"string":return DA();case"number":return 42;case"integer":return 7;case"boolean":return!0;case"array":{const e=n.items||{type:"string"};return[wp(e)]}case"object":{const e={},t=n.properties||{};for(const[i,s]of Object.entries(t))e[i]=wp(s);return e}default:return}}}function DA(){const n=["✨ stardust","🧪 lab-magic","🚀 rocket-fuel","🍕 pizza-slice","🧩 puzzle-piece","🐙 octo-value"];return n[Math.floor(Math.random()*n.length)]}const Xw=({isOpen:n,title:e,schemaString:t,initialInputJson:i,onClose:s,onInvoke:r})=>{const[o,c]=oe.useState(i??"{}"),[u,f]=oe.useState(!1),[p,g]=oe.useState(!1),[O,x]=oe.useState(null),[k,w]=oe.useState(null),[b,C]=oe.useState(!1),[S,Q]=oe.useState(!1),P=oe.useRef(null),_=oe.useRef(null),T=oe.useRef(null),[A,J]=oe.useState({}),[z,G]=oe.useState(!1),H=oe.useMemo(()=>{if(!t)return null;try{return JSON.parse(t)}catch(N){return n&&console.error("ExecuteModal - failed to parse schema:",{schemaString:t,error:N}),null}},[t,n]),D=oe.useMemo(()=>{if(!H)return null;if(H.$ref&&H.definitions){const N=H.$ref.replace("#/definitions/","");return H.definitions[N]||null}return H},[H,n]),ee=oe.useMemo(()=>D&&D.properties&&Object.keys(D.properties).length>0&&(!D.type||D.type==="object"),[D,H,t,n]);oe.useEffect(()=>{if(!n)return;const N=j=>{j.key==="Escape"&&s(),(j.ctrlKey||j.metaKey)&&j.key==="Enter"&&(j.preventDefault(),p||X())};return window.addEventListener("keydown",N),()=>window.removeEventListener("keydown",N)},[n,s,p]),oe.useEffect(()=>{i!==void 0&&c(i)},[i]),oe.useEffect(()=>{if(!n)return;T.current=document.activeElement;const N=_.current;if(N){const I=Array.from(N.querySelectorAll('button, [href], input, textarea, select, [tabindex]:not([tabindex="-1"])')).filter(se=>!se.hasAttribute("disabled"));I.length>0&&I[0].focus()}const j=I=>{if(I.key!=="Tab")return;const se=N?Array.from(N.querySelectorAll('button, [href], input, textarea, select, [tabindex]:not([tabindex="-1"])')).filter(he=>!he.hasAttribute("disabled")):[];if(se.length===0)return;const K=se[0],ie=se[se.length-1];!I.shiftKey&&document.activeElement===ie&&(I.preventDefault(),K.focus()),I.shiftKey&&document.activeElement===K&&(I.preventDefault(),ie.focus())};return document.addEventListener("keydown",j),()=>{document.removeEventListener("keydown",j);try{T.current?.focus()}catch{}}},[n]),oe.useEffect(()=>{Q(Lw())},[n]),oe.useEffect(()=>{if(D&&D.properties){const N={};Object.entries(D.properties).forEach(([j,I])=>{if(I.default!==void 0)N[j]=I.default;else switch(I.type){case"string":N[j]="";break;case"number":case"integer":N[j]=0;break;case"boolean":N[j]=!1;break;case"array":N[j]=[];break;default:N[j]=""}}),J(N)}},[D]),oe.useEffect(()=>{ee&&Object.keys(A).length>0&&c(JSON.stringify(A,null,2))},[A,ee]);const q=(N,j)=>{J(I=>({...I,[N]:j}))},ue=async()=>{if(!(!t||!D)){w(null),C(!0);try{const N=await Iw(t),j={...A,...N||{}};J(j),c(JSON.stringify(j,null,2))}catch(N){w(N?.message||String(N))}finally{C(!1)}}},ve=(N,j)=>{const I=D.required&&D.required.includes(N),se=A[N]||"";if(j.enum&&Array.isArray(j.enum))return h.jsxs("div",{className:"execute-modal__field",children:[h.jsxs("label",{className:"execute-modal__label",children:[j.title||N,I?" *":""]}),h.jsx("select",{className:"execute-modal__select",value:se,onChange:K=>q(N,K.target.value),children:j.enum.map(K=>h.jsx("option",{value:K,children:K},K))})]},N);switch(j.type){case"boolean":return h.jsx("div",{className:"execute-modal__field",children:h.jsxs("label",{className:"execute-modal__label execute-modal__checkbox-label",children:[h.jsx("input",{type:"checkbox",className:"execute-modal__checkbox",checked:!!se,onChange:K=>q(N,K.target.checked)}),j.title||N,I?" *":""]})},N);case"number":case"integer":return h.jsxs("div",{className:"execute-modal__field",children:[h.jsxs("label",{className:"execute-modal__label",children:[j.title||N,I?" *":""]}),h.jsx("input",{type:"number",className:"execute-modal__input",value:se,step:j.type==="integer"?1:"any",placeholder:j.description,onChange:K=>q(N,K.target.value?Number(K.target.value):"")})]},N);default:return h.jsxs("div",{className:"execute-modal__field",children:[h.jsxs("label",{className:"execute-modal__label",children:[j.title||N,I?" *":""]}),h.jsx("input",{type:"text",className:"execute-modal__input",value:se,placeholder:j.description,onChange:K=>q(N,K.target.value)})]},N)}},de=N=>{if(!u)return N;try{const j=Function(`"use strict"; return (${N})`)();return JSON.stringify(j)}catch(j){throw new Error(j?.message||String(j))}},X=async()=>{w(null),x(null),g(!0);try{const N=de(o),j=await r({inputJson:N,evalInput:!1});if(j.error)w(j.error);else if(j.output)try{const I=JSON.parse(j.output);x(JSON.stringify(I,null,2))}catch{x(j.output)}}catch(N){w(N?.message||String(N))}finally{g(!1)}};if(oe.useEffect(()=>{if(!n)return;const N=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=`-${N}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,N)}},[n]),!n)return null;const L=h.jsx("div",{className:"execute-modal__overlay",role:"dialog","aria-modal":"true","aria-labelledby":"execute-modal-title",ref:P,onMouseDown:N=>{N.target===P.current&&s()},children:h.jsxs("div",{className:"execute-modal__container",ref:_,"aria-busy":p,children:[h.jsxs("div",{className:"execute-modal__left",children:[h.jsxs("div",{className:"execute-modal__header",children:[h.jsx("div",{id:"execute-modal-title",className:"execute-modal__title",children:e||"Execute"}),h.jsxs("div",{className:"execute-modal__controls",children:[D&&h.jsx("button",{className:"btn execute-modal__ai-btn",title:S?"AI prefill based on schema":"AI key not configured in Chat settings",onClick:ue,disabled:!S||b,children:b?"Filling…":"✧ Prefill"}),h.jsxs("label",{className:"execute-modal__eval",children:[h.jsx("input",{type:"checkbox",checked:u,onChange:N=>f(N.target.checked)}),"Eval input"]}),h.jsx("button",{className:`btn btn-primary ${p?"execute-modal__loading":""}`,onClick:X,disabled:p,title:p?"Running...":"Run task (Ctrl+Enter)",children:p?"Running...":"Run"}),h.jsx("button",{className:"btn",onClick:s,children:"Close"})]})]}),h.jsx("div",{className:"execute-modal__body",children:ee?h.jsxs("div",{className:"execute-modal__form-layout",children:[h.jsxs("div",{className:"execute-modal__form-section",children:[h.jsx("div",{className:"execute-modal__section-header",children:h.jsx("span",{className:"execute-modal__section-title",children:"Form"})}),h.jsx("div",{className:"execute-modal__form",children:D&&D.properties&&Object.entries(D.properties).map(([N,j])=>ve(N,j))})]}),h.jsxs("div",{className:"execute-modal__json-preview",children:[h.jsxs("div",{className:"execute-modal__section-header",children:[h.jsx("span",{className:"execute-modal__section-title",children:"JSON Preview"}),h.jsx("button",{className:`execute-modal__copy-btn${z?" execute-modal__copy-btn--copied":""}`,onClick:async()=>{await pm(o||"")&&(G(!0),setTimeout(()=>G(!1),1200))},title:z?"Copied!":"Copy JSON","aria-label":z?"Copied":"Copy JSON",type:"button"})]}),h.jsx("textarea",{className:"execute-modal__textarea execute-modal__textarea--preview",value:o,onChange:N=>c(N.target.value),onKeyDown:N=>{(N.ctrlKey||N.metaKey)&&N.key==="Enter"&&(N.preventDefault(),p||X())},spellCheck:!1,placeholder:"JSON will appear here as you fill the form..."})]})]}):h.jsxs("div",{className:"execute-modal__json-only",children:[h.jsxs("div",{className:"execute-modal__section-header",children:[h.jsx("span",{className:"execute-modal__section-title",children:"Input JSON"}),t&&h.jsx("div",{className:"execute-modal__schema-hint",children:h.jsx("span",{title:`Schema: ${t.slice(0,100)}${t.length>100?"...":""}`,children:"📋"})})]}),h.jsx("textarea",{className:"execute-modal__textarea",value:o,onChange:N=>c(N.target.value),onKeyDown:N=>{(N.ctrlKey||N.metaKey)&&N.key==="Enter"&&(N.preventDefault(),p||X())},spellCheck:!1,placeholder:"Enter JSON input..."})]})})]}),h.jsxs("div",{className:"execute-modal__right",children:[h.jsx("div",{className:"execute-modal__response-header",children:"Response"}),h.jsx("div",{className:"execute-modal__response-body",tabIndex:0,children:p?h.jsx("div",{className:"execute-modal__response-loading",children:"Running task..."}):h.jsxs(h.Fragment,{children:[k&&h.jsx("pre",{className:"execute-modal__error",children:k}),O&&h.jsx("pre",{className:"execute-modal__code",children:O}),!O&&!k&&h.jsx("div",{className:"execute-modal__empty",children:"No response yet"})]})})]})]})});return Uc.createPortal(L,document.body)},LA=({task:n,introspector:e})=>{const t=e.getDependencies(n),i=e.getMiddlewareUsagesForTask(n.id),s=e.getEmittedEvents(n),[r,o]=oe.useState(!1),[c,u]=oe.useState(null),[f,p]=oe.useState(!1),[g,O]=oe.useState(null),[x,k]=oe.useState(!1),[w,b]=oe.useState(null),[C,S]=oe.useState(!1);async function Q(){if(n?.id){o(!0),p(!0),O(null);try{const _=await rn(zE,{id:n.id});u(_?.task?.fileContents??null)}catch(_){O(_?.message??"Failed to load file"),u(null)}finally{p(!1)}}}oe.useEffect(()=>{const _=T=>{const A=T;A?.detail?.type==="task"&&A.detail.id===n.id&&S(!0)};return window.addEventListener("docs:execute-element",_),()=>window.removeEventListener("docs:execute-element",_)},[n.id]);async function P(){try{const T=(await rn(VE,{id:n.id}))?.task?.coverage,A=T?`Percentage: ${T.percentage??0}%
188
- Statements: ${T.coveredStatements??0}/${T.totalStatements??0}
189
-
190
- Details (raw):
191
- ${T.details??"N/A"}`:"No coverage details.";b(A),k(!0)}catch(_){b(`Error loading coverage: ${_?.message??String(_)}`),k(!0)}}return h.jsxs("div",{id:`element-${n.id}`,className:"task-card",children:[h.jsx("div",{className:"task-card__header",children:h.jsxs("div",{className:"task-card__header-content",children:[h.jsxs("div",{className:"main",children:[h.jsx("h3",{className:"task-card__title",children:n.meta?.title||Te(n.id)}),h.jsx("div",{className:"task-card__id",children:n.id}),n.meta?.description&&h.jsx("p",{className:"task-card__description",children:n.meta.description})]}),h.jsx("div",{className:"task-card__actions",children:h.jsx("button",{type:"button",className:"btn",onClick:()=>S(!0),title:"Run Task",children:"Run"})})]})}),h.jsxs("div",{className:"task-card__content",children:[h.jsxs("div",{className:"task-card__grid",children:[h.jsx("div",{children:h.jsxs("div",{className:"task-card__section",children:[h.jsx("h4",{className:"task-card__section__title",children:"Overview"}),h.jsxs("div",{className:"task-card__section__content",children:[h.jsxs("div",{className:"task-card__info-block",children:[h.jsx("div",{className:"label",children:"File Path:"}),h.jsx("div",{className:"value",children:n.filePath?h.jsx("a",{type:"button",onClick:Q,title:"View file contents",children:Jn(n.filePath)}):Jn(n.filePath)})]}),n.coverage?.percentage!==void 0&&h.jsxs("div",{className:"task-card__info-block",children:[h.jsx("div",{className:"label",children:"Coverage:"}),h.jsxs("div",{className:"value",children:[h.jsxs("span",{style:{fontWeight:600,color:n.coverage.percentage>=100?"#2e7d32":n.coverage.percentage>=80?"#ef6c00":"#c62828"},children:[n.coverage.percentage,"%"]})," ",h.jsx("button",{type:"button",onClick:P,title:"View coverage details",children:"(View Coverage)"})]})]}),n.registeredBy&&h.jsxs("div",{className:"task-card__info-block",children:[h.jsx("div",{className:"label",children:"Registered By:"}),h.jsx("div",{className:"value",children:h.jsx("a",{href:`#element-${n.registeredBy}`,className:"task-card__registrar-link",children:n.registeredBy})})]}),h.jsxs("div",{className:"task-card__info-block",children:[h.jsx("div",{className:"label",children:"Emits Events:"}),h.jsx("div",{className:"value",children:n.emits&&n.emits.length>0?h.jsx("div",{className:"task-card__emits-events",children:n.emits.map(_=>{const T=e.getEvent(_);return T?h.jsx("a",{href:`#element-${T.id}`,className:"task-card__emit-event-link",children:_},_):h.jsx("span",{className:"task-card__emit-event-text",children:_},_)})}):h.jsx("span",{className:"task-card__no-events",children:"None"})})]}),n.tags&&n.tags.length>0&&h.jsxs("div",{className:"task-card__info-block",children:[h.jsx("div",{className:"label",children:"Tags:"}),h.jsx("div",{className:"value",children:h.jsx("div",{className:"task-card__tags",children:e.getTagsByIds(n.tags).map(_=>h.jsx("a",{href:`#element-${_.id}`,className:"clean-button",children:Te(_.id)},_.id))})})]}),n.overriddenBy&&h.jsxs("div",{className:"task-card__alert task-card__alert--warning",children:[h.jsx("div",{className:"title",children:"Overridden By:"}),h.jsx("div",{className:"content",children:n.overriddenBy})]})]})]})}),h.jsx("div",{children:h.jsxs("div",{className:"task-card__section",children:[h.jsx("h4",{className:"task-card__section__title",children:"Input Schema"}),h.jsx("div",{className:"task-card__config",children:h.jsx(cl,{schemaString:n.inputSchema})})]})})]}),(t.tasks.length>0||t.resources.length>0||s.length>0)&&h.jsxs("div",{className:"task-card__relations",children:[h.jsx("h4",{className:"task-card__relations__title",children:"Dependencies & Relations"}),h.jsxs("div",{className:"task-card__relations__grid",children:[t.tasks.length>0&&h.jsxs("div",{className:"task-card__relations__category",children:[h.jsx("h5",{children:"Task Dependencies"}),h.jsx("div",{className:"task-card__relations__items",children:t.tasks.map(_=>h.jsxs("a",{href:`#element-${_.id}`,className:"task-card__relation-item task-card__relation-item--task task-card__relation-link",children:[h.jsx("div",{className:"title title--task",children:_.meta?.title||Te(_.id)}),h.jsx("div",{className:"id",children:_.id})]},_.id))})]}),t.resources.length>0&&h.jsxs("div",{className:"task-card__relations__category",children:[h.jsx("h5",{children:"Resource Dependencies"}),h.jsx("div",{className:"task-card__relations__items",children:t.resources.map(_=>h.jsxs("a",{href:`#element-${_.id}`,className:"task-card__relation-item task-card__relation-item--resource task-card__relation-link",children:[h.jsx("div",{className:"title title--resource",children:_.meta?.title||Te(_.id)}),h.jsx("div",{className:"id",children:_.id})]},_.id))})]}),s.length>0&&h.jsxs("div",{className:"task-card__relations__category",children:[h.jsx("h5",{children:"Emitted Events"}),h.jsx("div",{className:"task-card__relations__items",children:s.map(_=>h.jsxs("a",{href:`#element-${_.id}`,className:"task-card__relation-item task-card__relation-item--event task-card__relation-link",children:[h.jsx("div",{className:"title title--event",children:_.meta?.title||Te(_.id)}),h.jsx("div",{className:"id",children:_.id})]},_.id))})]})]})]}),i.length>0&&h.jsxs("div",{className:"task-card__middleware",children:[h.jsx("h4",{className:"task-card__middleware__title",children:"Middleware Configuration"}),h.jsx("div",{className:"task-card__middleware__items",children:i.map(_=>h.jsxs("div",{className:"task-card__middleware__item",children:[h.jsxs("a",{href:`#element-${_.id}`,className:"task-card__middleware-link",children:[h.jsx("div",{className:"title",children:_.node.meta?.title||Te(_.id)}),h.jsx("div",{className:"id",children:_.id})]}),_.config&&h.jsxs("div",{children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:_.config})]})]},_.id))})]}),h.jsx(Go,{element:n,introspector:e,className:"task-card__tags-section"})]}),h.jsx(jn,{title:n.meta?.title||Te(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}),h.jsx(Xw,{isOpen:C,title:n.meta?.title||Te(n.id),schemaString:n.inputSchema,onClose:()=>S(!1),onInvoke:async({inputJson:_})=>{const T=`
192
- mutation InvokeTask($taskId: ID!, $inputJson: String, $evalInput: Boolean) {
193
- invokeTask(taskId: $taskId, inputJson: $inputJson, evalInput: $evalInput) {
194
- success
195
- error
196
- result
197
- invocationId
198
- }
199
- }
200
- `;try{const A=await rn(T,{taskId:n.id,inputJson:_?.trim()||void 0,evalInput:!1});return{output:A.invokeTask.result??void 0,error:A.invokeTask.error??void 0}}catch(A){return{error:A?.message??String(A)}}}}),h.jsx(jn,{title:`${n.meta?.title||Te(n.id)} — Coverage Details`,subtitle:n.filePath||void 0,isOpen:x,onClose:()=>k(!1),code:w,enableEdit:!1,saveOnFile:null})]})},IA=({resource:n,introspector:e})=>{const t=e.getMiddlewareUsagesForResource(n.id),i=e.getTasksUsingResource(n.id),s=e.getResourcesByIds(n.dependsOn),r=[...e.getTasksByIds(n.registers),...e.getResourcesByIds(n.registers),...e.getMiddlewaresByIds(n.registers),...e.getEventsByIds(n.registers),...e.getHooksByIds(n.registers)];e.getResourcesByIds(n.overrides);const[o,c]=oe.useState(!1),[u,f]=oe.useState(null),[p,g]=oe.useState(!1),[O,x]=oe.useState(null),[k,w]=oe.useState(!1),[b,C]=oe.useState(null);async function S(){if(n?.id){c(!0),g(!0),x(null);try{const P=await rn(BE,{id:n.id});f(P?.resource?.fileContents??null)}catch(P){x(P?.message??"Failed to load file"),f(null)}finally{g(!1)}}}async function Q(){try{const _=(await rn(qE,{id:n.id}))?.resource?.coverage,T=_?`Percentage: ${_.percentage??0}%
201
- Statements: ${_.coveredStatements??0}/${_.totalStatements??0}
202
-
203
- Details (raw):
204
- ${_.details??"N/A"}`:"No coverage details.";C(T),w(!0)}catch(P){C(`Error loading coverage: ${P?.message??String(P)}`),w(!0)}}return h.jsxs("div",{id:`element-${n.id}`,className:"resource-card",children:[h.jsx("div",{className:"resource-card__header",children:h.jsx("div",{className:"resource-card__header-content",children:h.jsxs("div",{className:"main",children:[h.jsx("h3",{className:"resource-card__title",children:n.meta?.title||Te(n.id)}),h.jsx("div",{className:"resource-card__id",children:n.id}),n.meta?.description&&h.jsx("p",{className:"resource-card__description",children:n.meta.description})]})})}),h.jsxs("div",{className:"resource-card__content",children:[h.jsxs("div",{className:"resource-card__grid",children:[h.jsx("div",{children:h.jsxs("div",{className:"resource-card__section",children:[h.jsx("h4",{className:"resource-card__section__title",children:"Overview"}),h.jsxs("div",{className:"resource-card__section__content",children:[h.jsxs("div",{className:"resource-card__info-block",children:[h.jsx("div",{className:"label",children:"File Path:"}),h.jsx("div",{className:"value",children:n.filePath?h.jsx("a",{type:"button",onClick:S,title:"View file contents",children:Jn(n.filePath)}):Jn(n.filePath)})]}),n.coverage?.percentage!==void 0&&h.jsxs("div",{className:"resource-card__info-block",children:[h.jsx("div",{className:"label",children:"Coverage:"}),h.jsxs("div",{className:"value",children:[h.jsxs("span",{style:{fontWeight:600,color:n.coverage.percentage>=100?"#2e7d32":n.coverage.percentage>=80?"#ef6c00":"#c62828"},children:[n.coverage.percentage,"%"]})," ",h.jsx("button",{type:"button",onClick:Q,title:"View coverage details",children:"(View Coverage)"})]})]}),n.registeredBy&&h.jsxs("div",{className:"resource-card__info-block",children:[h.jsx("div",{className:"label",children:"Registered By:"}),h.jsx("div",{className:"value",children:h.jsx("a",{href:`#element-${n.registeredBy}`,className:"resource-card__registrar-link",children:n.registeredBy})})]}),n.context&&h.jsxs("div",{className:"resource-card__info-block",children:[h.jsx("div",{className:"label",children:"Context:"}),h.jsx("div",{className:"value",children:n.context})]}),h.jsxs("div",{className:"resource-card__info-block",children:[h.jsx("div",{className:"label",children:"Used By Tasks:"}),h.jsxs("div",{className:"value",children:[i.length," task(s)"]})]}),n.tags&&n.tags.length>0&&h.jsxs("div",{className:"resource-card__info-block",children:[h.jsx("div",{className:"label",children:"Tags:"}),h.jsx("div",{className:"value",children:h.jsx("div",{className:"resource-card__tags",children:e.getTagsByIds(n.tags).map(P=>h.jsx("a",{href:`#element-${P.id}`,className:"clean-button",children:Te(P.id)},P.id))})})]}),n.overriddenBy&&h.jsxs("div",{className:"resource-card__alert resource-card__alert--warning",children:[h.jsx("div",{className:"title",children:"Overridden By:"}),h.jsx("div",{className:"content",children:n.overriddenBy})]})]})]})}),h.jsx("div",{children:h.jsxs("div",{className:"resource-card__section",children:[h.jsx("h4",{className:"resource-card__section__title",children:"Configuration"}),h.jsxs("div",{className:"resource-card__config",children:[h.jsxs("div",{className:"resource-card__config__subsection",children:[h.jsx("h5",{children:"Current Configuration"}),h.jsx("pre",{className:"resource-card__config__block",children:v_(n.config)})]}),h.jsxs("div",{className:"resource-card__config__subsection",children:[h.jsx("h5",{children:"Configuration Schema"}),h.jsx(cl,{schemaString:n.configSchema})]})]})]})})]}),(s.length>0||i.length>0||r.length>0)&&h.jsxs("div",{className:"resource-card__relations",children:[h.jsx("h4",{className:"resource-card__relations__title",children:"Dependencies & Relations"}),h.jsxs("div",{className:"resource-card__relations__grid",children:[s.length>0&&h.jsxs("div",{className:"resource-card__relations__category",children:[h.jsx("h5",{children:"Resource Dependencies"}),h.jsx("div",{className:"resource-card__relations__items",children:s.map(P=>h.jsxs("a",{href:`#element-${P.id}`,className:"resource-card__relation-item resource-card__relation-item--resource resource-card__relation-link",children:[h.jsx("div",{className:"title title--resource",children:P.meta?.title||Te(P.id)}),h.jsx("div",{className:"id",children:P.id})]},P.id))})]}),i.length>0&&h.jsxs("div",{className:"resource-card__relations__category",children:[h.jsx("h5",{children:"Used By Tasks"}),h.jsx("div",{className:"resource-card__relations__items",children:i.map(P=>h.jsxs("a",{href:`#element-${P.id}`,className:"resource-card__relation-item resource-card__relation-item--task resource-card__relation-link",children:[h.jsx("div",{className:"title title--task",children:P.meta?.title||Te(P.id)}),h.jsx("div",{className:"id",children:P.id})]},P.id))})]}),r.length>0&&h.jsxs("div",{className:"resource-card__relations__category",children:[h.jsx("h5",{children:"Registered Elements"}),h.jsx("div",{className:"resource-card__relations__items",children:r.map(P=>h.jsxs("a",{href:`#element-${P.id}`,className:"resource-card__relation-item resource-card__relation-item--registered resource-card__relation-link",children:[h.jsx("div",{className:"title title--registered",children:P.meta?.title||Te(P.id)}),h.jsx("div",{className:"id",children:P.id})]},P.id))})]})]})]}),t.length>0&&h.jsxs("div",{className:"resource-card__middleware",children:[h.jsx("h4",{className:"resource-card__middleware__title",children:"Middleware Configuration"}),h.jsx("div",{className:"resource-card__middleware__items",children:t.map(P=>h.jsxs("a",{href:`#element-${P.id}`,className:"resource-card__middleware__item resource-card__middleware-link",children:[h.jsx("div",{className:"title",children:P.node.meta?.title||Te(P.id)}),h.jsx("div",{className:"id",children:P.id}),P.config&&h.jsxs("div",{children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:P.config})]})]},P.id))})]}),h.jsx(Go,{element:n,introspector:e,className:"resource-card__tags-section"})]}),h.jsx(jn,{title:n.meta?.title||Te(n.id),subtitle:n.filePath||void 0,isOpen:o,onClose:()=>c(!1),code:p?"Loading...":O?`Error: ${O}`:u,enableEdit:!!n.filePath,saveOnFile:n.filePath||null}),h.jsx(jn,{title:`${n.meta?.title||Te(n.id)} — Coverage Details`,subtitle:n.filePath||void 0,isOpen:k,onClose:()=>w(!1),code:b,enableEdit:!1,saveOnFile:null})]})},ZA=({middleware:n,introspector:e})=>{const t=e.getTasksUsingMiddlewareDetailed(n.id),i=e.getResourcesUsingMiddlewareDetailed(n.id),s=e.getMiddlewareEmittedEvents(n.id),[r,o]=oe.useState(!1),[c,u]=oe.useState(null),[f,p]=oe.useState(!1),[g,O]=oe.useState(null);async function x(){if(n?.id){o(!0),p(!0),O(null);try{const k=await rn(YE,{id:n.id});u(k?.middleware?.fileContents??null)}catch(k){O(k?.message??"Failed to load file"),u(null)}finally{p(!1)}}}return h.jsxs("div",{id:`element-${n.id}`,className:"middleware-card",children:[h.jsx("div",{className:"middleware-card__header",children:h.jsxs("div",{className:"middleware-card__header-content",children:[h.jsxs("div",{className:"main",children:[h.jsx("h3",{className:"middleware-card__title",children:n.meta?.title||Te(n.id)}),h.jsx("div",{className:"middleware-card__id",children:n.id}),n.meta?.description&&h.jsx("p",{className:"middleware-card__description",children:n.meta.description}),n.global?.enabled&&h.jsxs("div",{className:"middleware-card__global-badges",children:[h.jsx("span",{className:"middleware-card__global-badge",children:"Global"}),n.global.tasks&&h.jsx("span",{className:"middleware-card__global-badge",children:"Tasks"}),n.global.resources&&h.jsx("span",{className:"middleware-card__global-badge",children:"Resources"})]})]}),h.jsx("div",{className:"meta",children:h.jsx("div",{className:`middleware-card__type-badge middleware-card__type-badge--${n.type}`,children:n.type==="task"?"Task":"Resource"})})]})}),h.jsx("div",{className:"middleware-card__content",children:h.jsxs("div",{className:"middleware-card__grid",children:[h.jsxs("div",{className:"middleware-card__section",children:[h.jsx("h4",{className:"middleware-card__section__title",children:"Overview"}),h.jsxs("div",{className:"middleware-card__section__content",children:[h.jsxs("div",{className:"middleware-card__info-block",children:[h.jsx("div",{className:"label",children:"File Path:"}),h.jsx("div",{className:"value",children:n.filePath?h.jsx("a",{type:"button",onClick:x,title:"View file contents",children:Jn(n.filePath)}):Jn(n.filePath)})]}),n.registeredBy&&h.jsxs("div",{className:"middleware-card__info-block",children:[h.jsx("div",{className:"label",children:"Registered By:"}),h.jsx("div",{className:"value",children:h.jsx("a",{href:`#element-${n.registeredBy}`,className:"middleware-card__registrar-link",children:n.registeredBy})})]}),h.jsxs("div",{className:"middleware-card__info-block",children:[h.jsx("div",{className:"label",children:"Usage Statistics:"}),h.jsxs("div",{className:"middleware-card__usage-stats",children:[h.jsxs("div",{className:"middleware-card__usage-stat middleware-card__usage-stat--tasks",children:[h.jsx("div",{className:"value value--tasks",children:t.length}),h.jsx("div",{className:"label label--tasks",children:"Tasks"})]}),h.jsxs("div",{className:"middleware-card__usage-stat middleware-card__usage-stat--resources",children:[h.jsx("div",{className:"value value--resources",children:i.length}),h.jsx("div",{className:"label label--resources",children:"Resources"})]}),h.jsxs("div",{className:"middleware-card__usage-stat middleware-card__usage-stat--events",children:[h.jsx("div",{className:"value value--events",children:s.length}),h.jsx("div",{className:"label label--events",children:"Events"})]})]})]}),n.global?.enabled&&h.jsxs("div",{className:"middleware-card__global-config",children:[h.jsx("div",{className:"title",children:"Global Middleware Configuration"}),h.jsxs("div",{className:"content",children:[h.jsxs("div",{className:"config-item",children:[h.jsx("strong",{children:"Tasks:"})," ",n.global.tasks?"Enabled":"Disabled"]}),h.jsxs("div",{className:"config-item",children:[h.jsx("strong",{children:"Resources:"})," ",n.global.resources?"Enabled":"Disabled"]})]})]}),n.tags&&n.tags.length>0&&h.jsxs("div",{className:"middleware-card__info-block",children:[h.jsx("div",{className:"label",children:"Tags:"}),h.jsx("div",{className:"value",children:h.jsx("div",{className:"middleware-card__tags",children:e.getTagsByIds(n.tags).map(k=>h.jsx("a",{href:`#element-${k.id}`,className:"clean-button",children:Te(k.id)},k.id))})})]}),n.overriddenBy&&h.jsxs("div",{className:"middleware-card__alert middleware-card__alert--warning",children:[h.jsx("div",{className:"title",children:"Overridden By:"}),h.jsx("div",{className:"content",children:n.overriddenBy})]})]})]}),h.jsxs("div",{className:"middleware-card__section",children:[h.jsx("h4",{className:"middleware-card__section__title",children:"Configuration Schema"}),h.jsx("div",{className:"middleware-card__config",children:h.jsx(cl,{schemaString:n.configSchema})})]}),(t.length>0||i.length>0)&&h.jsxs("div",{className:"middleware-card__usage-details",children:[h.jsx("h4",{className:"middleware-card__usage-details__title",children:"Usage Details"}),h.jsxs("div",{className:"middleware-card__usage-details__grid",children:[t.length>0&&h.jsxs("div",{className:"middleware-card__usage-details__category",children:[h.jsx("h5",{children:"Used by Tasks"}),h.jsx("div",{className:"middleware-card__usage-details__items",children:t.map(k=>h.jsxs("a",{href:`#element-${k.id}`,className:"middleware-card__usage-item middleware-card__usage-link",children:[h.jsxs("div",{className:"middleware-card__usage-item__header",children:[h.jsxs("div",{className:"main",children:[h.jsx("div",{className:"title",children:k.node.meta?.title||Te(k.id)}),h.jsx("div",{className:"id",children:k.id})]}),k.config&&h.jsx("span",{className:"configured-badge configured-badge--task",children:"Configured"})]}),k.config&&h.jsxs("div",{className:"middleware-card__usage-item__config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-code",children:k.config})]})]},k.id))})]}),i.length>0&&h.jsxs("div",{className:"middleware-card__usage-details__category",children:[h.jsx("h5",{children:"Used by Resources"}),h.jsx("div",{className:"middleware-card__usage-details__items",children:i.map(k=>h.jsxs("a",{href:`#element-${k.id}`,className:"middleware-card__usage-item middleware-card__usage-link",children:[h.jsxs("div",{className:"middleware-card__usage-item__header",children:[h.jsxs("div",{className:"main",children:[h.jsx("div",{className:"title",children:k.node.meta?.title||Te(k.id)}),h.jsx("div",{className:"id",children:k.id})]}),k.config&&h.jsx("span",{className:"configured-badge configured-badge--resource",children:"Configured"})]}),k.config&&h.jsxs("div",{className:"middleware-card__usage-item__config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-code",children:k.config})]})]},k.id))})]})]})]}),s.length>0&&h.jsxs("div",{className:"middleware-card__events",children:[h.jsx("h4",{className:"middleware-card__events__title",children:"Events Emitted by Usage"}),h.jsx("div",{className:"middleware-card__events__items",children:s.map(k=>h.jsxs("a",{href:`#element-${k.id}`,className:"middleware-card__event-item middleware-card__event-link",children:[h.jsx("div",{className:"title",children:k.meta?.title||Te(k.id)}),h.jsx("div",{className:"id",children:k.id})]},k.id))})]}),t.length===0&&i.length===0&&h.jsx("div",{className:"middleware-card__empty-state",children:"This middleware is not currently used by any tasks or resources."}),h.jsx(Go,{element:n,introspector:e,className:"middleware-card__tags-section"})]})}),h.jsx(jn,{title:n.meta?.title||Te(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})]})},FA=({event:n,introspector:e})=>{const t=e.getEmittersOfEvent(n.id),i=e.getHooksOfEvent(n.id),s=n.id==="*",[r,o]=oe.useState(!1),[c,u]=oe.useState(null),[f,p]=oe.useState(!1),[g,O]=oe.useState(null);async function x(){if(n?.id){o(!0),p(!0),O(null);try{const S=await rn(WE,{id:n.id});u(S?.event?.fileContents??null)}catch(S){O(S?.message??"Failed to load file"),u(null)}finally{p(!1)}}}const w=t.length===0&&i.length===0?{text:"Unused",className:"status-unused"}:t.length===0?{text:"No Emitters",className:"status-no-emitters"}:i.length===0?{text:"No Listeners",className:"status-no-listeners"}:{text:"Active",className:"status-active"},[b,C]=oe.useState(!1);return oe.useEffect(()=>{const S=Q=>{const P=Q;P?.detail?.type==="event"&&P.detail.id===n.id&&C(!0)};return window.addEventListener("docs:execute-element",S),()=>window.removeEventListener("docs:execute-element",S)},[n.id]),h.jsxs("div",{id:`element-${n.id}`,className:"event-card",children:[h.jsx("div",{className:"event-card__header",children:h.jsxs("div",{className:"event-card__header-content",children:[h.jsxs("div",{className:"main",children:[h.jsxs("h3",{className:"event-card__title",children:[s?n.meta?.title||"Global Event":n.meta?.title||Te(n.id),s&&h.jsx("span",{className:"event-card__global-badge",children:"GLOBAL"})]}),!s&&h.jsx("div",{className:"event-card__id",children:n.id}),n.meta?.description&&h.jsx("p",{className:"event-card__description",children:n.meta.description})]}),h.jsx("div",{className:"meta",children:h.jsxs("div",{className:"event-card__stats",children:[h.jsxs("div",{className:"event-card__stat-badge",children:[h.jsx("span",{className:"icon",children:"Emit"}),h.jsxs("span",{className:"count",children:["Emitters: ",t.length]})]}),h.jsxs("div",{className:"event-card__stat-badge",children:[h.jsx("span",{className:"icon",children:"Hook"}),h.jsxs("span",{className:"count",children:["Hooks: ",i.length]})]}),h.jsx("div",{className:"event-card__run",children:h.jsx("button",{type:"button",className:"btn",onClick:()=>C(!0),title:"Invoke Event",children:"Emit"})})]})})]})}),h.jsxs("div",{className:"event-card__content",children:[h.jsxs("div",{className:"event-card__grid",children:[h.jsx("div",{children:h.jsxs("div",{className:"event-card__section",children:[h.jsx("h4",{className:"event-card__section__title",children:"Overview"}),h.jsxs("div",{className:"event-card__section__content",children:[s&&h.jsxs("div",{className:"event-card__global-message",children:[h.jsxs("div",{className:"event-card__global-message__header",children:[h.jsx("span",{className:"icon",children:"Global"}),h.jsx("h5",{className:"title",children:"Global/System Event"})]}),h.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."})]}),h.jsxs("div",{className:"event-card__info-block",children:[h.jsx("div",{className:"label",children:"File Path:"}),h.jsx("div",{className:"value",children:n.filePath?h.jsx("a",{type:"button",onClick:x,title:"View file contents",children:Jn(n.filePath)}):Jn(n.filePath)})]}),n.registeredBy&&h.jsxs("div",{className:"event-card__info-block",children:[h.jsx("div",{className:"label",children:"Registered By:"}),h.jsx("div",{className:"value",children:h.jsx("a",{href:`#element-${n.registeredBy}`,className:"event-card__registrar-link",children:n.registeredBy})})]}),h.jsxs("div",{className:"event-card__info-block",children:[h.jsx("div",{className:"label",children:"Event Status:"}),h.jsx("div",{className:`value value--status ${w.className}`,children:w.text})]}),n.listenedToBy&&n.listenedToBy.length>0&&h.jsxs("div",{className:"event-card__info-block",children:[h.jsx("div",{className:"label",children:"Listened To By:"}),h.jsx("div",{className:"event-card__listeners-list",children:n.listenedToBy.map(S=>h.jsx("a",{href:`#element-${S}`,className:"event-card__listener-item",children:h.jsxs("div",{className:"event-card__listener-item__content",children:[h.jsx("div",{className:"title",children:Te(S)}),h.jsx("div",{className:"id",children:S})]})},S))})]}),n.tags&&n.tags.length>0&&h.jsxs("div",{className:"event-card__info-block",children:[h.jsx("div",{className:"label",children:"Tags:"}),h.jsx("div",{className:"value",children:h.jsx("div",{className:"event-card__tags",children:e.getTagsByIds(n.tags).map(S=>h.jsx("a",{href:`#element-${S.id}`,className:"clean-button",children:Te(S.id)},S.id))})})]}),(!s&&t.length===0||i.length===0)&&h.jsxs("div",{className:`event-card__alert ${t.length===0?"event-card__alert--danger":"event-card__alert--warning"}`,children:[h.jsx("div",{className:"title",children:!s&&t.length===0?"No Emitters Found":"No Listeners Found"}),h.jsx("div",{className:"content",children:!s&&t.length===0?"This event is not emitted by any tasks, hooks, or resources.":"This event has no hooks listening to it."})]})]})]})}),h.jsx("div",{children:h.jsxs("div",{className:"event-card__section",children:[h.jsx("h4",{className:"event-card__section__title",children:"Payload Schema"}),h.jsx("div",{className:"event-card__config",children:h.jsx(cl,{schemaString:n.payloadSchema})})]})})]}),h.jsxs("div",{className:"event-card__flow",children:[h.jsx("h4",{className:"event-card__flow__title",children:"Event Flow & Statistics"}),h.jsxs("div",{className:"event-card__metrics",children:[h.jsxs("div",{className:`event-card__metric ${t.length>0?"event-card__metric--active":"event-card__metric--danger"}`,children:[h.jsx("div",{className:"value",children:t.length}),h.jsx("div",{className:"label",children:"Emitters"})]}),h.jsxs("div",{className:`event-card__metric ${i.length>0?"event-card__metric--active":"event-card__metric--warning"}`,children:[h.jsx("div",{className:"value",children:i.length}),h.jsx("div",{className:"label",children:"Listeners"})]})]}),h.jsxs("div",{className:"event-card__participants",children:[t.length>0&&h.jsxs("div",{className:"event-card__participant-section",children:[h.jsx("h5",{children:"Event Emitters"}),h.jsx("div",{className:"event-card__participant-section__items",children:t.map(S=>{let Q="event-card__emitter",P="📤";return"emits"in S&&Array.isArray(S.emits)?"dependsOn"in S&&"middleware"in S?(Q+=" event-card__emitter--task",P="Task"):"event"in S&&(Q+=" event-card__emitter--hook",P="Hook"):"config"in S&&(Q+=" event-card__emitter--resource",P="Resource"),h.jsx("a",{href:`#element-${S.id}`,className:`${Q} event-card__emitter-link`,children:h.jsxs("div",{className:"event-card__emitter__content",children:[h.jsx("span",{children:P}),h.jsxs("div",{className:"event-card__emitter__info",children:[h.jsx("div",{className:`title ${Q.includes("--task")?"title--task":Q.includes("--hook")?"title--hook":"title--resource"}`,children:S.meta?.title||Te(S.id)}),h.jsx("div",{className:"id",children:S.id})]})]})},S.id)})})]}),i.length>0&&h.jsxs("div",{className:"event-card__participant-section",children:[h.jsx("h5",{children:"Event Listeners"}),h.jsx("div",{className:"event-card__participant-section__items",children:i.map(S=>h.jsx("a",{href:`#element-${S.id}`,className:"event-card__listener event-card__listener-link",children:h.jsxs("div",{className:"event-card__listener__content",children:[h.jsxs("div",{className:"main",children:[h.jsxs("div",{className:"event-card__listener__info",children:[h.jsx("span",{children:"Hook"}),h.jsxs("div",{className:"details",children:[h.jsx("div",{className:"title",children:S.meta?.title||Te(S.id)}),h.jsx("div",{className:"id",children:S.id})]})]}),S.meta?.description&&h.jsx("div",{className:"event-card__listener__description",children:S.meta.description})]}),S.hookOrder!==null&&S.hookOrder!==void 0&&h.jsxs("span",{className:"event-card__listener__order-badge",children:["Order: ",S.hookOrder]})]})},S.id))})]})]}),t.length===0&&i.length===0&&h.jsx("div",{className:"event-card__empty-state",children:"This event has no emitters or listeners."})]}),h.jsx(Go,{element:n,introspector:e,className:"event-card__tags-section"})]}),h.jsx(jn,{title:s?n.meta?.title||"Global Event":n.meta?.title||Te(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}),h.jsx(Xw,{isOpen:b,title:n.meta?.title||Te(n.id),schemaString:n.payloadSchema,onClose:()=>C(!1),onInvoke:async({inputJson:S})=>{const Q=`
205
- mutation InvokeEvent($eventId: ID!, $inputJson: String, $evalInput: Boolean) {
206
- invokeEvent(eventId: $eventId, inputJson: $inputJson, evalInput: $evalInput) {
207
- success
208
- error
209
- invocationId
210
- }
211
- }
212
- `;try{const P=await rn(Q,{eventId:n.id,inputJson:S?.trim()||void 0,evalInput:!1});return{output:P.invokeEvent.success?"Event invoked successfully":P.invokeEvent.error??void 0,error:P.invokeEvent.error??void 0}}catch(P){return{error:P?.message??String(P)}}}})]})},XA=({hook:n,emittedEventsCount:e,isGlobal:t})=>h.jsx("div",{className:"hook-card__header",children:h.jsxs("div",{className:"hook-card__header-content",children:[h.jsxs("div",{className:"main",children:[h.jsxs("h3",{className:"hook-card__title",children:[t?"🌐":"🪝"," ",n.meta?.title||Te(n.id),t&&h.jsx("span",{className:"hook-card__global-badge",children:"GLOBAL"})]}),h.jsx("div",{className:"hook-card__id",children:n.id}),n.meta?.description&&h.jsx("p",{className:"hook-card__description",children:n.meta.description})]}),h.jsxs("div",{className:"hook-card__stats",children:[n.hookOrder!==null&&n.hookOrder!==void 0&&h.jsxs("div",{className:"hook-card__order-badge",children:["#",n.hookOrder]}),h.jsxs("div",{className:"hook-card__stat-badge",children:[h.jsx("span",{className:"icon",children:"📤"}),h.jsx("span",{className:"count",children:e})]})]})]})}),zA=({hook:n,targetEvents:e,isGlobal:t,introspector:i})=>{const s=()=>n.hookOrder===null||n.hookOrder===void 0?"Default":n.hookOrder.toString(),[r,o]=oe.useState(!1),[c,u]=oe.useState(null),[f,p]=oe.useState(!1),[g,O]=oe.useState(null);async function x(){if(n?.id){o(!0),p(!0),O(null);try{const k=await rn(UE,{id:n.id});u(k?.hook?.fileContents??null)}catch(k){O(k?.message??"Failed to load file"),u(null)}finally{p(!1)}}}return h.jsxs("div",{className:"hook-card__section",children:[h.jsx("h4",{className:"hook-card__section__title",children:"📋 Overview"}),h.jsxs("div",{className:"hook-card__section__content",children:[h.jsxs("div",{className:"hook-card__info-block",children:[h.jsx("div",{className:"label",children:"File Path:"}),h.jsx("div",{className:"value",children:h.jsx("a",{onClick:x,children:Jn(n.filePath)})})]}),n.registeredBy&&h.jsxs("div",{className:"hook-card__info-block",children:[h.jsx("div",{className:"label",children:"Registered By:"}),h.jsx("div",{className:"value",children:h.jsx("a",{href:`#element-${n.registeredBy}`,className:"hook-card__registrar-link",children:n.registeredBy})})]}),h.jsxs("div",{className:"hook-card__info-block",children:[h.jsx("div",{className:"label",children:"Target Events:"}),h.jsx("div",{className:"value",children:t?h.jsxs("div",{className:"hook-card__global-event",children:[h.jsx("span",{className:"global-indicator",children:"🌐 ALL EVENTS"}),h.jsx("div",{className:"global-description",children:"This hook listens to every event in the system"})]}):h.jsx(h.Fragment,{children:e.map(k=>h.jsxs("div",{children:[h.jsx("a",{href:`#element-${k.id}`,className:"hook-card__event-link",children:Te(k.id)}),k.meta?.title&&h.jsxs("div",{children:["(",k.meta.title,")"]})]},k.id))})})]}),h.jsxs("div",{className:"hook-card__info-block",children:[h.jsx("div",{className:"label",children:"Execution Order:"}),h.jsxs("div",{className:"value value--order",children:[s(),h.jsx("div",{className:"order-description",children:n.hookOrder===null||n.hookOrder===void 0?"Uses default ordering":`Priority level ${n.hookOrder}`})]})]}),h.jsxs("div",{className:"hook-card__info-block",children:[h.jsx("div",{className:"label",children:"Emits Events:"}),h.jsx("div",{className:"value",children:x_(n.emits)})]}),n.tags&&n.tags.length>0&&h.jsxs("div",{className:"hook-card__info-block",children:[h.jsx("div",{className:"label",children:"Tags:"}),h.jsx("div",{className:"value",children:h.jsx("div",{className:"hook-card__tags",children:i.getTagsByIds(n.tags).map(k=>h.jsx("a",{href:`#element-${k.id}`,className:"clean-button",children:Te(k.id)},k.id))})})]}),n.overriddenBy&&h.jsxs("div",{className:"hook-card__alert hook-card__alert--warning",children:[h.jsx("div",{className:"title",children:"⚠️ Overridden By:"}),h.jsx("div",{className:"content",children:n.overriddenBy})]})]}),h.jsx(jn,{title:n.meta?.title||Te(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})]})},BA=({isGlobal:n,targetEvents:e,introspector:t})=>n?h.jsxs("div",{className:"hook-card__section",children:[h.jsx("h4",{className:"hook-card__section__title",children:"🌐 Global Hook Details"}),h.jsxs("div",{className:"hook-card__global-info",children:[h.jsxs("div",{className:"hook-card__global-message",children:[h.jsxs("div",{className:"hook-card__global-message__header",children:[h.jsx("span",{className:"icon",children:"🌐"}),h.jsx("h5",{className:"title",children:"Universal Event Listener"})]}),h.jsxs("div",{className:"hook-card__global-message__content",children:["This hook is triggered by ",h.jsx("strong",{children:"every event"})," that occurs in the system. It acts as a universal listener that can respond to any event type."]})]}),h.jsxs("div",{className:"hook-card__schema-block",children:[h.jsx("div",{className:"title",children:"Global Hook Benefits"}),h.jsxs("div",{className:"hook-card__global-benefits",children:[h.jsxs("div",{className:"benefit",children:[h.jsx("span",{className:"icon",children:"🔍"}),h.jsx("span",{className:"text",children:"Monitor all system activity"})]}),h.jsxs("div",{className:"benefit",children:[h.jsx("span",{className:"icon",children:"📊"}),h.jsx("span",{className:"text",children:"Collect comprehensive metrics"})]}),h.jsxs("div",{className:"benefit",children:[h.jsx("span",{className:"icon",children:"🛡️"}),h.jsx("span",{className:"text",children:"Implement cross-cutting concerns"})]})]})]})]})]}):!e||e.length===0?h.jsxs("div",{className:"hook-card__section",children:[h.jsx("h4",{className:"hook-card__section__title",children:"📡 Target Event Details"}),h.jsxs("div",{className:"hook-card__not-found",children:[h.jsx("div",{className:"icon",children:"❌"}),h.jsx("h5",{className:"title",children:"Event Not Found"}),h.jsx("p",{className:"message",children:"No target events found for this hook."})]})]}):h.jsxs("div",{className:"hook-card__section",children:[h.jsx("h4",{className:"hook-card__section__title",children:"📡 Target Event Details"}),e.map(i=>h.jsxs("div",{children:[h.jsx("a",{href:`#element-${i.id}`,children:h.jsxs("div",{className:"hook-card__target-event",children:[h.jsxs("div",{className:"hook-card__target-event__header",children:[h.jsx("span",{className:"icon",children:"📡"}),h.jsx("h5",{className:"title",children:i.meta?.title||Te(i.id)})]}),h.jsx("div",{className:"hook-card__target-event__id",children:i.id}),i.meta?.description&&h.jsx("div",{className:"hook-card__target-event__description",children:i.meta.description})]})}),h.jsxs("div",{className:"hook-card__section__content",children:[h.jsxs("div",{className:"hook-card__schema-block",children:[h.jsx("div",{className:"title",children:"Payload Schema"}),h.jsx(cl,{schemaString:i.payloadSchema})]}),h.jsxs("div",{className:"hook-card__schema-block",children:[h.jsx("div",{className:"title",children:"Event Statistics"}),h.jsxs("div",{className:"hook-card__event-stats",children:[h.jsxs("div",{className:"hook-card__event-stats__stat",children:[h.jsx("div",{className:"value value--emitters",children:t.getEmittersOfEvent(i.id).length}),h.jsx("div",{className:"label",children:"Emitters"})]}),h.jsxs("div",{className:"hook-card__event-stats__stat",children:[h.jsx("div",{className:"value value--hooks",children:t.getHooksOfEvent(i.id).length}),h.jsx("div",{className:"label",children:"Hooks"})]})]})]})]})]},i.id))]}),VA=({dependencies:n,emittedEvents:e})=>n.tasks.length===0&&n.resources.length===0&&e.length===0?null:h.jsxs("div",{className:"hook-card__dependencies",children:[h.jsx("h4",{className:"hook-card__dependencies__title",children:"🔗 Dependencies & Relations"}),h.jsxs("div",{className:"hook-card__dependencies__grid",children:[n.tasks.length>0&&h.jsxs("div",{className:"hook-card__dependencies__category",children:[h.jsx("h5",{children:"Task Dependencies"}),h.jsx("div",{className:"hook-card__dependencies__items",children:n.tasks.map(t=>h.jsxs("a",{href:`#element-${t.id}`,className:"hook-card__dependency-item hook-card__dependency-item--task hook-card__dependency-link",children:[h.jsx("div",{className:"title title--task",children:t.meta?.title||Te(t.id)}),h.jsx("div",{className:"id",children:t.id})]},t.id))})]}),n.resources.length>0&&h.jsxs("div",{className:"hook-card__dependencies__category",children:[h.jsx("h5",{children:"Resource Dependencies"}),h.jsx("div",{className:"hook-card__dependencies__items",children:n.resources.map(t=>h.jsxs("a",{href:`#element-${t.id}`,className:"hook-card__dependency-item hook-card__dependency-item--resource hook-card__dependency-link",children:[h.jsx("div",{className:"title title--resource",children:t.meta?.title||Te(t.id)}),h.jsx("div",{className:"id",children:t.id})]},t.id))})]}),e.length>0&&h.jsxs("div",{className:"hook-card__dependencies__category",children:[h.jsx("h5",{children:"Emitted Events"}),h.jsx("div",{className:"hook-card__dependencies__items",children:e.map(t=>h.jsxs("a",{href:`#element-${t.id}`,className:"hook-card__dependency-item hook-card__dependency-item--event hook-card__dependency-link",children:[h.jsx("div",{className:"title title--event",children:t.meta?.title||Te(t.id)}),h.jsx("div",{className:"id",children:t.id})]},t.id))})]})]})]}),qA=({hook:n,introspector:e})=>{const t=e.getDependencies(n),i=e.getEmittedEvents(n),s=e.getEventsByIds(n.events),r=n.events.includes("*");return h.jsxs("div",{id:`element-${n.id}`,className:"hook-card",children:[h.jsx(XA,{hook:n,emittedEventsCount:i.length,isGlobal:r}),h.jsxs("div",{className:"hook-card__content",children:[h.jsxs("div",{className:"hook-card__grid",children:[h.jsx("div",{children:h.jsx(zA,{hook:n,targetEvents:s,isGlobal:r,introspector:e})}),h.jsx("div",{children:h.jsx(BA,{isGlobal:r,targetEvents:s,introspector:e})})]}),h.jsx(VA,{dependencies:t,emittedEvents:i}),h.jsx(Go,{element:n,introspector:e,className:"hook-card__tags-section"})]})]})},YA=({tag:n,introspector:e})=>[...n.tasks,...n.resources,...n.middlewares,...n.events,...n.hooks].length===0?null:h.jsxs("div",{className:"tag-card__relations",children:[h.jsx("h4",{className:"tag-card__relations__title",children:"🔗 Tagged Elements"}),h.jsxs("div",{className:"tag-card__relations__grid",children:[n.tasks.length>0&&h.jsxs("div",{className:"tag-card__relations__category",children:[h.jsx("h5",{children:"Tasks"}),h.jsx("div",{className:"tag-card__relations__items",children:n.tasks.map(i=>{const s=i.tagsDetailed?.find(r=>r.id===n.id)?.config;return h.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--task",children:[h.jsxs("a",{href:`#element-${i.id}`,className:"tag-card__relation-link",children:[h.jsx("div",{className:"title title--task",children:i.meta?.title||Te(i.id)}),h.jsx("div",{className:"id",children:i.id})]}),s&&h.jsxs("div",{className:"tag-card__relation-config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:s})]})]},i.id)})})]}),n.resources.length>0&&h.jsxs("div",{className:"tag-card__relations__category",children:[h.jsx("h5",{children:"Resources"}),h.jsx("div",{className:"tag-card__relations__items",children:n.resources.map(i=>{const s=i.tagsDetailed?.find(r=>r.id===n.id)?.config;return h.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--resource",children:[h.jsxs("a",{href:`#element-${i.id}`,className:"tag-card__relation-link",children:[h.jsx("div",{className:"title title--resource",children:i.meta?.title||Te(i.id)}),h.jsx("div",{className:"id",children:i.id})]}),s&&h.jsxs("div",{className:"tag-card__relation-config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:s})]})]},i.id)})})]}),n.middlewares.length>0&&h.jsxs("div",{className:"tag-card__relations__category",children:[h.jsx("h5",{children:"Middlewares"}),h.jsx("div",{className:"tag-card__relations__items",children:n.middlewares.map(i=>{const s=i.tagsDetailed?.find(r=>r.id===n.id)?.config;return h.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--middleware",children:[h.jsxs("a",{href:`#element-${i.id}`,className:"tag-card__relation-link",children:[h.jsx("div",{className:"title title--middleware",children:i.meta?.title||Te(i.id)}),h.jsx("div",{className:"id",children:i.id})]}),s&&h.jsxs("div",{className:"tag-card__relation-config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:s})]})]},i.id)})})]}),n.events.length>0&&h.jsxs("div",{className:"tag-card__relations__category",children:[h.jsx("h5",{children:"Events"}),h.jsx("div",{className:"tag-card__relations__items",children:n.events.map(i=>{const s=i.tagsDetailed?.find(r=>r.id===n.id)?.config;return h.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--event",children:[h.jsxs("a",{href:`#element-${i.id}`,className:"tag-card__relation-link",children:[h.jsx("div",{className:"title title--event",children:i.meta?.title||Te(i.id)}),h.jsx("div",{className:"id",children:i.id})]}),s&&h.jsxs("div",{className:"tag-card__relation-config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:s})]})]},i.id)})})]}),n.hooks.length>0&&h.jsxs("div",{className:"tag-card__relations__category",children:[h.jsx("h5",{children:"Hooks"}),h.jsx("div",{className:"tag-card__relations__items",children:n.hooks.map(i=>{const s=i.tagsDetailed?.find(r=>r.id===n.id)?.config;return h.jsxs("div",{className:"tag-card__relation-item tag-card__relation-item--hook",children:[h.jsxs("a",{href:`#element-${i.id}`,className:"tag-card__relation-link",children:[h.jsx("div",{className:"title title--hook",children:i.meta?.title||Te(i.id)}),h.jsx("div",{className:"id",children:i.id})]}),s&&h.jsxs("div",{className:"tag-card__relation-config",children:[h.jsx("div",{className:"config-title",children:"Configuration:"}),h.jsx("pre",{className:"config-block",children:s})]})]},i.id)})})]})]})]}),WA=({tag:n,introspector:e})=>{const t=[...n.tasks,...n.resources,...n.middlewares,...n.events,...n.hooks],[i,s]=oe.useState(!1),[r,o]=oe.useState(""),[c,u]=oe.useState(void 0),[f,p]=oe.useState(null),[g,O]=oe.useState(!1),[x,k]=oe.useState(null),[w,b]=oe.useState(null);async function C(){if(n?.id){s(!0),O(!0),k(null),o(n.meta?.title||Te(n.id)),u(n.filePath||void 0),b(n.filePath||null);try{const S=await rn(GE,{id:n.id});p(S?.tag?.fileContents??null)}catch(S){k(S?.message??"Failed to load file"),p(null)}finally{O(!1)}}}return h.jsxs("div",{id:`element-${n.id}`,className:"tag-card",children:[h.jsx("div",{className:"tag-card__header",children:h.jsx("div",{className:"tag-card__header-content",children:h.jsxs("div",{className:"main",children:[h.jsx("h3",{className:"tag-card__title",children:n.meta?.title||Te(n.id)}),h.jsx("div",{className:"tag-card__id",children:n.id}),n.meta?.description&&h.jsx("p",{className:"tag-card__description",children:n.meta.description})]})})}),h.jsxs("div",{className:"tag-card__content",children:[h.jsxs("div",{className:"tag-card__grid",children:[h.jsx("div",{children:h.jsxs("div",{className:"tag-card__section",children:[h.jsx("h4",{className:"tag-card__section__title",children:"Overview"}),h.jsxs("div",{className:"tag-card__section__content",children:[h.jsx("div",{className:"tag-card__summary",children:h.jsxs("div",{className:"tag-card__total",children:[h.jsx("span",{className:"value",children:t.length}),h.jsx("span",{className:"label",children:"Total Tagged Elements"})]})}),h.jsxs("div",{className:"tag-card__stats",children:[h.jsxs("div",{className:"tag-card__stat tag-card__stat--tasks",children:[h.jsx("div",{className:"tag-card__stat__value",children:n.tasks.length}),h.jsx("div",{className:"tag-card__stat__label",children:"Tasks"})]}),h.jsxs("div",{className:"tag-card__stat tag-card__stat--resources",children:[h.jsx("div",{className:"tag-card__stat__value",children:n.resources.length}),h.jsx("div",{className:"tag-card__stat__label",children:"Resources"})]}),h.jsxs("div",{className:"tag-card__stat tag-card__stat--events",children:[h.jsx("div",{className:"tag-card__stat__value",children:n.events.length}),h.jsx("div",{className:"tag-card__stat__label",children:"Events"})]}),h.jsxs("div",{className:"tag-card__stat tag-card__stat--middlewares",children:[h.jsx("div",{className:"tag-card__stat__value",children:n.middlewares.length}),h.jsx("div",{className:"tag-card__stat__label",children:"Middlewares"})]}),h.jsxs("div",{className:"tag-card__stat tag-card__stat--hooks",children:[h.jsx("div",{className:"tag-card__stat__value",children:n.hooks.length}),h.jsx("div",{className:"tag-card__stat__label",children:"Hooks"})]})]}),h.jsxs("div",{className:"tag-card__info-block",children:[h.jsx("div",{className:"label",children:"File Path:"}),h.jsx("div",{className:"value",children:n.filePath?h.jsx("a",{type:"button",onClick:C,title:"View file contents",children:Jn(n.filePath)}):Jn(n.filePath)})]})]})]})}),h.jsx("div",{children:h.jsxs("div",{className:"tag-card__section",children:[h.jsx("h4",{className:"tag-card__section__title",children:"Configuration Schema"}),h.jsx("div",{className:"tag-card__config",children:h.jsx(cl,{schemaString:n.configSchema})})]})})]}),h.jsx(YA,{tag:n,introspector:e})]}),h.jsx(jn,{title:r,subtitle:c,isOpen:i,onClose:()=>s(!1),code:g?"Loading...":x?`Error: ${x}`:f,enableEdit:!!w,saveOnFile:w})]})},UA=({introspector:n,detailed:e=!1})=>{const[t,i]=V.useState("summary");oe.useEffect(()=>{const b=setTimeout(()=>{window.dispatchEvent(new CustomEvent("docs:diagnostic-change"))},0);return()=>clearTimeout(b)},[]);const s=n.getDiagnostics(),r=n.getOrphanEvents(),o=n.getUnemittedEvents(),c=n.getUnusedMiddleware(),u=n.getOverrideConflicts(),f=s.filter(b=>b.severity==="error").length,p=s.filter(b=>b.severity==="warning").length,g=s.filter(b=>b.severity==="info").length,O=[{id:"summary",label:"Summary",count:s.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=(b,C,S,Q,P,_)=>h.jsxs("div",{className:`diagnostics-panel__summary-card ${_||""}`,children:[h.jsxs("div",{className:"diagnostics-panel__summary-card__header",children:[h.jsx("span",{className:"icon",children:Q}),h.jsx("h4",{children:b})]}),h.jsx("div",{className:"diagnostics-panel__summary-card__value",children:C}),h.jsx("div",{className:"diagnostics-panel__summary-card__description",children:P})]}),k=b=>{const C=b.nodeId?"a":"div",S=b.nodeId?{href:`#element-${b.nodeId}`,className:`diagnostics-panel__item diagnostics-panel__item--${b.severity} diagnostics-panel__item--clickable`}:{className:`diagnostics-panel__item diagnostics-panel__item--${b.severity}`};return h.jsx(C,{...S,children:h.jsxs("div",{className:"diagnostics-panel__item-content",children:[h.jsx("span",{className:"icon",children:y_(b.severity)}),h.jsxs("div",{className:"main",children:[h.jsxs("div",{className:"diagnostics-panel__item-header",children:[h.jsx("span",{className:`diagnostics-panel__severity-badge diagnostics-panel__severity-badge--${b.severity}`,children:b.severity}),h.jsx("span",{className:"diagnostics-panel__code-badge",children:b.code})]}),h.jsx("div",{className:"diagnostics-panel__message",children:b.message}),b.nodeId&&h.jsxs("div",{className:"diagnostics-panel__node-info",children:[h.jsxs("div",{children:[h.jsx("strong",{children:"Node:"})," ",Te(b.nodeId)]}),b.nodeKind&&h.jsxs("div",{children:[h.jsx("strong",{children:"Type:"})," ",b.nodeKind]})]})]}),b.nodeId&&h.jsx("div",{className:"diagnostics-panel__click-indicator",children:"🔗"})]})},`${b.code}-${b.nodeId||"global"}`)},w=(b,C,S,Q,P,_,T)=>h.jsxs("div",{className:"diagnostics-panel__special-section",children:[h.jsxs("h4",{children:[h.jsx("span",{className:"icon",children:S}),C," (",b.length,")"]}),b.length===0?h.jsxs("div",{className:"diagnostics-panel__empty-state",children:[h.jsx("div",{className:"celebration",children:"🎉"}),"No ",C.toLowerCase()," found. Great job!"]}):h.jsx("div",{className:"diagnostics-panel__special-section__items",children:b.map((A,J)=>{const z=P(A),G=!!(z&&String(z).trim()),H=G?String(z):"(unknown)",D=G?"a":"div",ee=G?{href:`#element-${H}`,className:`diagnostics-panel__special-section__item diagnostics-panel__special-section__item--clickable ${T||""}`}:{className:`diagnostics-panel__special-section__item ${T||""}`};return h.jsxs(D,{...ee,children:[h.jsx("div",{className:"title",children:_?_(A):Te(H)}),h.jsx("div",{className:"id",children:H}),G&&h.jsx("div",{className:"diagnostics-panel__click-indicator",children:"🔗"})]},J)})})]});return e?h.jsxs("div",{className:"diagnostics-panel",children:[h.jsx("div",{className:"diagnostics-panel__tabs",children:O.map(b=>h.jsxs("button",{onClick:()=>i(b.id),className:`diagnostics-panel__tab ${t===b.id?"diagnostics-panel__tab--active":""}`,children:[b.label,b.count>0&&h.jsx("span",{className:"diagnostics-panel__tab-count",children:b.count})]},b.id))}),h.jsxs("div",{className:"diagnostics-panel__content",children:[t==="summary"&&h.jsxs("div",{children:[h.jsxs("div",{className:"diagnostics-panel__detailed-grid",children:[x("Total Issues",s.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")]}),s.length>0&&h.jsxs("div",{children:[h.jsx("h4",{children:"Recent Diagnostics"}),h.jsx("div",{className:"diagnostics-panel__items",children:s.slice(0,5).map(k)})]})]}),t==="errors"&&h.jsx("div",{children:h.jsxs("div",{className:"diagnostics-panel__items",children:[s.filter(b=>b.severity==="error").map(k),f===0&&h.jsxs("div",{className:"diagnostics-panel__success-state",children:[h.jsx("div",{className:"icon",children:"✅"}),h.jsx("h4",{children:"No Errors Found!"}),h.jsx("p",{children:"Your application has no critical errors."})]})]})}),t==="warnings"&&h.jsx("div",{children:h.jsxs("div",{className:"diagnostics-panel__items",children:[s.filter(b=>b.severity==="warning").map(k),p===0&&h.jsxs("div",{className:"diagnostics-panel__success-state",children:[h.jsx("div",{className:"icon",children:"👍"}),h.jsx("h4",{children:"No Warnings!"}),h.jsx("p",{children:"No potential issues detected."})]})]})}),t==="orphans"&&w(r,"Orphan Events","👻","#6f42c1",b=>b.id,b=>`${Te(b.id)} (No listeners)`,"diagnostics-panel__special-section__item--orphan"),t==="unemitted"&&w(o,"Unemitted Events","📤","#fd7e14",b=>b.id,b=>`${Te(b.id)} (No emitters)`,"diagnostics-panel__special-section__item--unused"),t==="unused"&&w(c,"Unused Middleware","🔗","#6c757d",b=>b.id,b=>`${Te(b.id)} (Not used)`,"diagnostics-panel__special-section__item--unused"),t==="conflicts"&&h.jsxs("div",{className:"diagnostics-panel__special-section",children:[h.jsxs("h4",{children:[h.jsx("span",{className:"icon",children:"⚔️"}),"Override Conflicts (",u.length,")"]}),u.length===0?h.jsxs("div",{className:"diagnostics-panel__empty-state",children:[h.jsx("div",{className:"celebration",children:"🎉"}),"No override conflicts found. Great job!"]}):h.jsx("div",{className:"diagnostics-panel__special-section__items",children:u.map((b,C)=>h.jsxs("div",{className:"diagnostics-panel__special-section__item diagnostics-panel__special-section__item--conflict diagnostics-panel__conflict-item",children:[h.jsxs("div",{className:"title",children:[h.jsx("a",{href:`#element-${b.targetId}`,className:"diagnostics-panel__conflict-link",children:Te(b.targetId)})," ← overridden by → ",h.jsx("a",{href:`#element-${b.by}`,className:"diagnostics-panel__conflict-link",children:Te(b.by)})]}),h.jsxs("div",{className:"id",children:["Target: ",b.targetId]})]},C))})]})]})]}):h.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")]})},GA=({data:n})=>{const[e,t]=V.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}),[i,s]=V.useState([]),r=u=>{t(f=>f.includes(u)?f.filter(p=>p!==u):[...f,u])},o=u=>{s(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 h.jsxs("div",{className:`json-node ${O?"expanded":""}`,children:[h.jsx("span",{className:"json-toggle",onClick:()=>r(f),children:O?"▼":"▶"}),h.jsx("span",{className:"json-bracket",children:p?"[":"{"}),O&&h.jsx("div",{className:"json-children",children:g.map((x,k)=>h.jsxs("div",{className:"json-key-value",children:[!p&&h.jsxs("span",{className:"json-key",children:['"',x,'":']}),c(u[x],`${f}.${x}`),k<g.length-1&&h.jsx("span",{children:","})]},k))}),!O&&h.jsx("span",{className:"json-ellipsis",children:"..."}),h.jsx("span",{className:"json-bracket",children:p?"]":"}"})]})}else{const p=JSON.stringify(u),g=100;if(typeof u=="string"&&p.length>g){const O=i.includes(f),x=O?p:p.substring(0,g);return h.jsxs("span",{className:`json-value json-value--${typeof u}`,children:[x,!O&&h.jsx("span",{className:"json-expand-text",onClick:()=>o(f),style:{cursor:"pointer",color:"#0066cc",marginLeft:"4px"},children:"..."}),O&&p.length>g&&h.jsx("span",{className:"json-collapse-text",onClick:()=>o(f),style:{cursor:"pointer",color:"#0066cc",marginLeft:"4px"},children:"[collapse]"})]})}else return h.jsx("span",{className:`json-value json-value--${typeof u}`,children:p})}};return!n||typeof n=="object"&&Object.keys(n).length===0?null:h.jsx("div",{className:"json-viewer",children:c(n,"root")})},yf=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"},zy=(n,e=6)=>n?n.length>e?n.slice(-e):n:"",HA=({logs:n})=>{const[e,t]=V.useState(!1),[i,s]=V.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=V.useMemo(()=>[...e?n:n.slice(-50)].reverse(),[n,e]),u=V.useMemo(()=>i===null?null:c[i]??null,[i,c]);return V.useEffect(()=>{const f=p=>{p.key==="Escape"&&(i!==null?s(null):e&&t(!1))};return window.addEventListener("keydown",f),()=>window.removeEventListener("keydown",f)},[e,i]),h.jsxs("div",{className:"recent-logs live-section",children:[h.jsxs("div",{className:"recent-logs__header",children:[h.jsxs("h4",{className:"recent-logs__title",children:["Recent Logs (",n.length,")"]}),h.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:h.jsx("span",{children:e?"Exit":"Expand"})})]}),h.jsx("div",{className:`recent-logs__list ${e?"recent-logs__list--expanded":""}`,children:c.map((f,p)=>h.jsxs("div",{className:"recent-logs__row recent-logs__row--compact",onClick:()=>s(p),children:[h.jsx("span",{className:"recent-logs__time",children:new Date(f.timestampMs).toLocaleTimeString()}),h.jsx("span",{className:`recent-logs__level recent-logs__level--${yf(f.level)}`,children:f.level}),h.jsx("span",{className:"recent-logs__message",children:f.message}),f.correlationId&&h.jsx("span",{className:"recent-logs__corr",title:f.correlationId,children:zy(f.correlationId)}),f.sourceId&&h.jsxs("a",{href:`#element-${f.sourceId}`,onClick:g=>g.stopPropagation(),title:`Go to source #${f.sourceId}`,className:"recent-logs__source",children:["#",f.sourceId]}),h.jsx("button",{type:"button",className:"recent-logs__action",onClick:g=>{g.stopPropagation(),s(p)},title:"View details",children:"View"})]},`${f.timestampMs}-${p}`))}),e&&Uc.createPortal(h.jsx("div",{role:"dialog","aria-modal":"true",className:"recent-logs-fs__overlay",onClick:()=>t(!1),children:h.jsxs("div",{className:"recent-logs-fs__panel",onClick:f=>f.stopPropagation(),children:[h.jsxs("div",{className:"recent-logs-fs__header",children:[h.jsx("h3",{className:"recent-logs-fs__title",children:"Recent Logs - Full Screen"}),h.jsx("button",{className:"recent-logs-fs__close",onClick:()=>t(!1),children:"Close"})]}),h.jsx("div",{className:"recent-logs-fs__content",children:c.map((f,p)=>h.jsxs("div",{className:"recent-logs__row recent-logs__row--fullscreen",onClick:()=>s(p),children:[h.jsx("span",{className:"recent-logs-fs__time",children:r(f.timestampMs)}),h.jsx("span",{className:`recent-logs-fs__level recent-logs-fs__level--${yf(f.level)}`,children:f.level}),h.jsx("span",{className:"recent-logs-fs__message",children:f.message}),f.correlationId&&h.jsx("span",{className:"recent-logs-fs__corr",title:`Correlation ID: ${f.correlationId}`,children:zy(f.correlationId)}),f.sourceId&&h.jsxs("a",{href:`#element-${f.sourceId}`,onClick:g=>g.stopPropagation(),title:`Go to source #${f.sourceId}`,className:"recent-logs-fs__source",children:["#",f.sourceId]}),h.jsx("button",{className:"recent-logs-fs__action",onClick:g=>{g.stopPropagation(),s(p)},children:"Details"})]},`fs-${f.timestampMs}-${p}`))})]})}),document.body),u&&Uc.createPortal(h.jsx("div",{role:"dialog","aria-modal":"true",className:"recent-logs-modal__overlay",onClick:()=>s(null),children:h.jsxs("div",{className:"recent-logs-modal__panel",onClick:f=>f.stopPropagation(),children:[h.jsxs("div",{className:"recent-logs-modal__header",children:[h.jsx("h3",{className:"recent-logs-modal__title",children:"Log Details"}),h.jsx("button",{className:"recent-logs-modal__close",onClick:()=>s(null),children:"Close"})]}),h.jsx("div",{className:"recent-logs-modal__content",children:h.jsxs("div",{className:"recent-logs-modal__grid",children:[h.jsxs("div",{children:[h.jsxs("div",{className:"recent-logs-modal__field",children:[h.jsx("div",{className:"recent-logs-modal__label",children:"Timestamp"}),h.jsx("div",{className:"recent-logs-modal__value recent-logs-modal__value--mono",children:r(u.timestampMs)})]}),h.jsxs("div",{className:"recent-logs-modal__field",children:[h.jsx("div",{className:"recent-logs-modal__label",children:"Level"}),h.jsx("span",{className:`recent-logs-modal__level recent-logs-modal__level--${yf(u.level)}`,children:u.level})]}),u.correlationId&&h.jsxs("div",{className:"recent-logs-modal__field",children:[h.jsx("div",{className:"recent-logs-modal__label",children:"Correlation ID"}),h.jsx("div",{className:"recent-logs-modal__value recent-logs-modal__value--mono recent-logs-modal__value--break",children:u.correlationId})]}),u.sourceId&&h.jsxs("div",{className:"recent-logs-modal__field",children:[h.jsx("div",{className:"recent-logs-modal__label",children:"Source"}),h.jsxs("a",{href:`#element-${u.sourceId}`,className:"recent-logs-modal__source",children:["#",u.sourceId]})]})]}),h.jsxs("div",{children:[h.jsxs("div",{className:"recent-logs-modal__field",children:[h.jsx("div",{className:"recent-logs-modal__label",children:"Message"}),h.jsx("div",{className:"recent-logs-modal__message",children:u.message})]}),u.data&&u.data!=="{}"&&h.jsxs("div",{children:[h.jsxs("div",{className:"recent-logs-modal__data-header",children:[h.jsx("div",{className:"recent-logs-modal__label",children:"Data"}),h.jsx("button",{className:"recent-logs-modal__copy",onClick:()=>{const f=u.data??"";navigator.clipboard.writeText(f).catch(()=>{})},children:"Copy"})]}),h.jsx("div",{className:"recent-logs-modal__data",children:(()=>{const f=o(u.data);return f?h.jsx(GA,{data:f}):h.jsx("pre",{className:"recent-logs-modal__pre",children:u.data})})()})]})]})]})})]})}),document.body)]})},KA=({emissions:n,detailed:e=!1})=>{const[t,i]=V.useState(null),[s,r]=V.useState(null),[o,c]=V.useState(!1),u=(g,O)=>{i(g),r(O),c(!0)},f=()=>{c(!1),i(null),r(null)},p=g=>new Date(g).toLocaleTimeString();return h.jsxs("div",{className:"recent-events",children:[h.jsxs("h4",{children:["Recent Event Emissions (",n.length,")"]}),h.jsx("div",{className:"live-entries",children:n.length===0?h.jsx("div",{className:"live-entry",children:h.jsx("span",{children:"No recent event emissions"})}):h.jsx(h.Fragment,{children:n.slice(-10).reverse().map((g,O)=>h.jsxs("div",{className:"live-entry live-entry--emission",children:[h.jsx("span",{className:"entry-time",children:p(g.timestampMs)}),h.jsx("a",{href:`#element-${g.eventId}`,className:"entry-event",children:g.eventId}),g.emitterId&&h.jsxs("span",{className:"entry-emitter",children:["from"," ",h.jsx("a",{href:`#element-${g.emitterId}`,className:"entry-emitter--link",children:g.emitterId})]}),g.payload&&h.jsx("button",{className:"clean-button",onClick:()=>u(JSON.stringify(JSON.parse(g.payload),null,2),g.eventId),children:"View Payload"})]},`${g.timestampMs}-${O}`))})}),h.jsx(jn,{title:"Event Payload",subtitle:s||void 0,isOpen:o,onClose:f,code:t})]})},JA=({runs:n,errors:e,detailed:t=!1})=>{const[i,s]=V.useState(null),[r,o]=V.useState(null),[c,u]=V.useState(!1),f=(O,x)=>{s(O),o(x),u(!0)},p=()=>{u(!1),s(null),o(null)},g=O=>new Date(O).toLocaleTimeString();return h.jsxs("div",{className:"recent-runs",children:[e.length>0&&h.jsxs("div",{className:"errors-section",children:[h.jsxs("h4",{children:["Recent Errors (",e.length,")"]}),h.jsx("div",{className:"live-entries",children:e.slice(-10).reverse().map((O,x)=>h.jsxs("div",{className:"live-entry live-entry--error",children:[h.jsx("span",{className:"entry-time",children:g(O.timestampMs)}),h.jsxs("a",{href:`#element-${O.sourceId}`,className:"entry-source",children:[O.sourceKind,":",O.sourceId]}),O.stack&&h.jsxs("div",{className:"entry-actions",children:[h.jsx("button",{className:"clean-button",onClick:()=>f(O.stack,O.sourceId),children:"View Stack Trace"}),h.jsx("button",{className:"clean-button",title:"Add to AI",onClick:()=>{const w=`I have the following error on @${O.sourceResolved&&O.sourceResolved.id||O.sourceId}: ${O.message} with stack:
213
- ${O.stack||""}`,b=w;window.dispatchEvent(new CustomEvent("docs:add-to-ai",{detail:{messageText:w,displayText:b}}))},children:"✦"})]})]},`${O.timestampMs}-${x}`))})]}),n.length>0&&h.jsxs("div",{className:"runs-section",children:[h.jsxs("h4",{children:["Recent Runs (",n.length,")"]}),h.jsx("div",{className:"live-entries",children:n.slice(-10).reverse().map((O,x)=>h.jsxs("div",{className:`live-entry live-entry--run ${O.ok?"live-entry--success":"live-entry--failure"}`,children:[h.jsx("span",{className:"entry-time",children:g(O.timestampMs)}),h.jsx("span",{className:"entry-status",children:O.ok?"✅":"❌"}),h.jsxs("a",{href:`#element-${O.nodeId}`,className:"entry-node",children:[O.nodeKind,":",O.nodeId]}),O.durationMs&&h.jsxs("span",{className:"entry-duration",children:[O.durationMs.toFixed(1),"ms"]}),h.jsx("div",{className:"entry-actions",children:O.error&&h.jsx("button",{className:"clean-button",onClick:()=>f(O.error,O.nodeId),children:"View Error"})})]},`${O.timestampMs}-${x}`))})]}),h.jsx(jn,{title:"Error Stack Trace",subtitle:r||void 0,isOpen:c,onClose:p,code:i})]})},eM=`
214
- query LiveData($afterTimestamp: Float, $last: Int) {
215
- live {
216
- memory {
217
- heapUsed
218
- heapTotal
219
- rss
220
- }
221
- cpu {
222
- usage
223
- loadAverage
224
- }
225
- eventLoop {
226
- lag
227
- }
228
- gc(windowMs: 30000) {
229
- collections
230
- duration
231
- }
232
- logs(afterTimestamp: $afterTimestamp, last: $last) {
233
- timestampMs
234
- level
235
- message
236
- data
237
- correlationId
238
- sourceId
239
- }
240
- emissions(afterTimestamp: $afterTimestamp, last: $last) {
241
- timestampMs
242
- eventId
243
- emitterId
244
- payload
245
- correlationId
246
- eventResolved {
247
- id
248
- tags {
249
- id
250
- config
251
- }
252
- meta {
253
- title
254
- description
255
- }
256
- }
257
- }
258
- errors(afterTimestamp: $afterTimestamp, last: $last) {
259
- timestampMs
260
- sourceId
261
- sourceKind
262
- message
263
- stack
264
- data
265
- correlationId
266
- sourceResolved {
267
- id
268
- tags {
269
- id
270
- config
271
- }
272
- meta {
273
- title
274
- description
275
- }
276
- }
277
- }
278
- runs(afterTimestamp: $afterTimestamp, last: $last) {
279
- timestampMs
280
- nodeId
281
- nodeKind
282
- ok
283
- durationMs
284
- error
285
- }
286
- }
287
- }
288
- `,tM=({detailed:n=!1,introspector:e})=>{const[t,i]=V.useState(null),[s,r]=V.useState(!0),[o,c]=V.useState(null),[u,f]=V.useState(Date.now()),p=V.useRef(null),g=async x=>{try{const k={last:n?50:10};x&&(k.afterTimestamp=x);const w=await rn(eM,k);if(w.live){i(C=>!C||!x?w.live:{...w.live,logs:[...C.logs,...w.live.logs].slice(-100),emissions:[...C.emissions,...w.live.emissions].slice(-100),errors:[...C.errors,...w.live.errors].slice(-100),runs:[...C.runs,...w.live.runs].slice(-100)});const b=[...w.live.logs,...w.live.emissions,...w.live.errors,...w.live.runs];if(b.length>0){const C=Math.max(...b.map(S=>S.timestampMs));f(C)}}c(null)}catch(k){c(k instanceof Error?k.message:"Failed to fetch live data")}};V.useEffect(()=>(g(),s&&(p.current=setInterval(()=>{g(u)},5e3)),()=>{p.current&&clearInterval(p.current)}),[s,u]);const O=x=>`${(x/1048576).toFixed(1)} MB`;return o?h.jsx("div",{className:"live-panel live-panel--error",children:h.jsxs("div",{className:"live-error",children:[h.jsxs("span",{children:["❌ Error loading live data: ",o]}),h.jsx("button",{onClick:()=>g(),children:"Retry"})]})}):t?h.jsxs("div",{className:"live-panel",children:[h.jsxs("div",{className:"live-controls",children:[h.jsxs("button",{onClick:()=>r(!s),className:`clean-button ${s?"live-toggle--active":""}`,children:[s?"⏸ Pause":"▶ Resume"," Live Updates"]}),h.jsx("button",{onClick:()=>g(),className:"clean-button",children:"Refresh"})]}),h.jsxs("div",{className:"live-main-grid",children:[h.jsxs("div",{className:"live-section live-section--health",children:[h.jsx("h3",{children:"System Health"}),h.jsxs("div",{className:"health-metrics",children:[h.jsxs("div",{className:"metric",children:[h.jsx("span",{className:"metric-label",children:"Memory"}),h.jsxs("span",{className:"metric-value",children:[O(t.memory.heapUsed)," /"," ",O(t.memory.heapTotal)]}),h.jsxs("div",{className:"metric-detail",children:["RSS: ",O(t.memory.rss)]})]}),h.jsxs("div",{className:"metric",children:[h.jsx("span",{className:"metric-label",children:"CPU Usage"}),h.jsxs("span",{className:"metric-value",children:[(t.cpu.usage*100).toFixed(1),"%"]}),h.jsxs("div",{className:"metric-detail",children:["Load: ",t.cpu.loadAverage.toFixed(2)]})]}),h.jsxs("div",{className:"metric",children:[h.jsx("span",{className:"metric-label",children:"Event Loop"}),h.jsxs("span",{className:"metric-value",children:[t.eventLoop.lag.toFixed(2),"ms"]}),h.jsx("div",{className:"metric-detail",children:"Lag"})]}),h.jsxs("div",{className:"metric",children:[h.jsx("span",{className:"metric-label",children:"GC (30s)"}),h.jsx("span",{className:"metric-value",children:t.gc.collections}),h.jsxs("div",{className:"metric-detail",children:[t.gc.duration.toFixed(1),"ms total"]})]})]})]}),h.jsx("div",{className:"live-logs-section",children:h.jsx(HA,{logs:t.logs})}),h.jsxs("div",{className:"live-events-runs-grid",children:[h.jsx("div",{className:"live-section",children:h.jsx(KA,{emissions:t.emissions,detailed:n})}),h.jsx("div",{className:"live-section",children:h.jsx(JA,{runs:t.runs,errors:t.errors,detailed:n})})]})]})]}):h.jsx("div",{className:"live-panel live-panel--loading",children:h.jsx("div",{className:"live-loading",children:"📡 Loading live data..."})})};function km(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var sr=km();function zw(n){sr=n}var ko={exec:()=>null};function He(n,e=""){let t=typeof n=="string"?n:n.source,i={replace:(s,r)=>{let o=typeof r=="string"?r:r.source;return o=o.replace(tn.caret,"$1"),t=t.replace(s,o),i},getRegex:()=>new RegExp(t,e)};return i}var tn={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")},nM=/^(?:[ \t]*(?:\n|$))+/,iM=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,sM=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Ko=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,rM=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Sm=/(?:[*+-]|\d{1,9}[.)])/,Bw=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Vw=He(Bw).replace(/bull/g,Sm).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(),lM=He(Bw).replace(/bull/g,Sm).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(),wm=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,oM=/^[^\n]+/,bm=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,aM=He(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",bm).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),cM=He(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Sm).getRegex(),Xu="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",_m=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,uM=He("^ {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",_m).replace("tag",Xu).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),qw=He(wm).replace("hr",Ko).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",Xu).getRegex(),dM=He(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",qw).getRegex(),$m={blockquote:dM,code:iM,def:aM,fences:sM,heading:rM,hr:Ko,html:uM,lheading:Vw,list:cM,newline:nM,paragraph:qw,table:ko,text:oM},By=He("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Ko).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",Xu).getRegex(),hM={...$m,lheading:lM,table:By,paragraph:He(wm).replace("hr",Ko).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",By).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",Xu).getRegex()},fM={...$m,html:He(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",_m).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:ko,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:He(wm).replace("hr",Ko).replace("heading",` *#{1,6} *[^
289
- ]`).replace("lheading",Vw).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},pM=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,mM=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Yw=/^( {2,}|\\)\n(?!\s*$)/,gM=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,zu=/[\p{P}\p{S}]/u,Pm=/[\s\p{P}\p{S}]/u,Ww=/[^\s\p{P}\p{S}]/u,OM=He(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Pm).getRegex(),Uw=/(?!~)[\p{P}\p{S}]/u,vM=/(?!~)[\s\p{P}\p{S}]/u,yM=/(?:[^\s\p{P}\p{S}]|~)/u,xM=/\[[^\[\]]*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)|`[^`]*?`|<(?! )[^<>]*?>/g,Gw=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,kM=He(Gw,"u").replace(/punct/g,zu).getRegex(),SM=He(Gw,"u").replace(/punct/g,Uw).getRegex(),Hw="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",wM=He(Hw,"gu").replace(/notPunctSpace/g,Ww).replace(/punctSpace/g,Pm).replace(/punct/g,zu).getRegex(),bM=He(Hw,"gu").replace(/notPunctSpace/g,yM).replace(/punctSpace/g,vM).replace(/punct/g,Uw).getRegex(),_M=He("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Ww).replace(/punctSpace/g,Pm).replace(/punct/g,zu).getRegex(),$M=He(/\\(punct)/,"gu").replace(/punct/g,zu).getRegex(),PM=He(/^<(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(),QM=He(_m).replace("(?:-->|$)","-->").getRegex(),CM=He("^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",QM).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),$u=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`[^`]*`|[^\[\]\\`])*?/,jM=He(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",$u).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Kw=He(/^!?\[(label)\]\[(ref)\]/).replace("label",$u).replace("ref",bm).getRegex(),Jw=He(/^!?\[(ref)\](?:\[\])?/).replace("ref",bm).getRegex(),TM=He("reflink|nolink(?!\\()","g").replace("reflink",Kw).replace("nolink",Jw).getRegex(),Qm={_backpedal:ko,anyPunctuation:$M,autolink:PM,blockSkip:xM,br:Yw,code:mM,del:ko,emStrongLDelim:kM,emStrongRDelimAst:wM,emStrongRDelimUnd:_M,escape:pM,link:jM,nolink:Jw,punctuation:OM,reflink:Kw,reflinkSearch:TM,tag:CM,text:gM,url:ko},NM={...Qm,link:He(/^!?\[(label)\]\((.*?)\)/).replace("label",$u).getRegex(),reflink:He(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",$u).getRegex()},bp={...Qm,emStrongRDelimAst:bM,emStrongLDelim:SM,url:He(/^((?: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.!#$%&'*+\/=?_`{\|}~-]+@)))/},EM={...bp,br:He(Yw).replace("{2,}","*").getRegex(),text:He(bp.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Tc={normal:$m,gfm:hM,pedantic:fM},so={normal:Qm,gfm:bp,breaks:EM,pedantic:NM},AM={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Vy=n=>AM[n];function fi(n,e){if(e){if(tn.escapeTest.test(n))return n.replace(tn.escapeReplace,Vy)}else if(tn.escapeTestNoEncode.test(n))return n.replace(tn.escapeReplaceNoEncode,Vy);return n}function qy(n){try{n=encodeURI(n).replace(tn.percentDecode,"%")}catch{return null}return n}function Yy(n,e){let t=n.replace(tn.findPipe,(r,o,c)=>{let u=!1,f=o;for(;--f>=0&&c[f]==="\\";)u=!u;return u?"|":" |"}),i=t.split(tn.splitPipe),s=0;if(i[0].trim()||i.shift(),i.length>0&&!i.at(-1)?.trim()&&i.pop(),e)if(i.length>e)i.splice(e);else for(;i.length<e;)i.push("");for(;s<i.length;s++)i[s]=i[s].trim().replace(tn.slashPipe,"|");return i}function ro(n,e,t){let i=n.length;if(i===0)return"";let s=0;for(;s<i&&n.charAt(i-s-1)===e;)s++;return n.slice(0,i-s)}function MM(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let i=0;i<n.length;i++)if(n[i]==="\\")i++;else if(n[i]===e[0])t++;else if(n[i]===e[1]&&(t--,t<0))return i;return t>0?-2:-1}function Wy(n,e,t,i,s){let r=e.href,o=e.title||null,c=n[1].replace(s.other.outputLinkReplace,"$1");i.state.inLink=!0;let u={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:r,title:o,text:c,tokens:i.inlineTokens(c)};return i.state.inLink=!1,u}function RM(n,e,t){let i=n.match(t.other.indentCodeCompensation);if(i===null)return e;let s=i[1];return e.split(`
290
- `).map(r=>{let o=r.match(t.other.beginningSpace);if(o===null)return r;let[c]=o;return c.length>=s.length?r.slice(s.length):r}).join(`
291
- `)}var Pu=class{options;rules;lexer;constructor(n){this.options=n||sr}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:ro(t,`
292
- `)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],i=RM(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:i}}}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 i=ro(t,"#");(this.options.pedantic||!i||this.rules.other.endingSpaceChar.test(i))&&(t=i.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:ro(e[0],`
293
- `)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=ro(e[0],`
294
- `).split(`
295
- `),i="",s="",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(`
296
- `),p=f.replace(this.rules.other.blockquoteSetextReplace,`
297
- $1`).replace(this.rules.other.blockquoteSetextReplace2,"");i=i?`${i}
298
- ${f}`:f,s=s?`${s}
299
- ${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+`
300
- `+t.join(`
301
- `),w=this.blockquote(k);r[r.length-1]=w,i=i.substring(0,i.length-x.raw.length)+w.raw,s=s.substring(0,s.length-x.text.length)+w.text;break}else if(O?.type==="list"){let x=O,k=x.raw+`
302
- `+t.join(`
303
- `),w=this.list(k);r[r.length-1]=w,i=i.substring(0,i.length-O.raw.length)+w.raw,s=s.substring(0,s.length-x.raw.length)+w.raw,t=k.substring(r.at(-1).raw.length).split(`
304
- `);continue}}return{type:"blockquote",raw:i,tokens:r,text:s}}}list(n){let e=this.rules.block.list.exec(n);if(e){let t=e[1].trim(),i=t.length>1,s={type:"list",raw:"",ordered:i,start:i?+t.slice(0,-1):"",loose:!1,items:[]};t=i?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=i?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(`
305
- `,1)[0].replace(this.rules.other.listReplaceTabs,C=>" ".repeat(3*C.length)),O=n.split(`
306
- `,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+`
307
- `,n=n.substring(O.length+1),u=!0),!u){let C=this.rules.other.nextBulletRegex(k),S=this.rules.other.hrRegex(k),Q=this.rules.other.fencesBeginRegex(k),P=this.rules.other.headingBeginRegex(k),_=this.rules.other.htmlBeginRegex(k);for(;n;){let T=n.split(`
308
- `,1)[0],A;if(O=T,this.options.pedantic?(O=O.replace(this.rules.other.listReplaceNesting," "),A=O):A=O.replace(this.rules.other.tabCharGlobal," "),Q.test(O)||P.test(O)||_.test(O)||C.test(O)||S.test(O))break;if(A.search(this.rules.other.nonSpaceChar)>=k||!O.trim())p+=`
309
- `+A.slice(k);else{if(x||g.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||Q.test(g)||P.test(g)||S.test(g))break;p+=`
310
- `+O}!x&&!O.trim()&&(x=!0),f+=T+`
311
- `,n=n.substring(T.length+1),g=A.slice(k)}}s.loose||(o?s.loose=!0:this.rules.other.doubleBlankLine.test(f)&&(o=!0));let w=null,b;this.options.gfm&&(w=this.rules.other.listIsTask.exec(p),w&&(b=w[0]!=="[ ] ",p=p.replace(this.rules.other.listReplaceTask,""))),s.items.push({type:"list_item",raw:f,task:!!w,checked:b,loose:!1,text:p,tokens:[]}),s.raw+=f}let c=s.items.at(-1);if(c)c.raw=c.raw.trimEnd(),c.text=c.text.trimEnd();else return;s.raw=s.raw.trimEnd();for(let u=0;u<s.items.length;u++)if(this.lexer.state.top=!1,s.items[u].tokens=this.lexer.blockTokens(s.items[u].text,[]),!s.loose){let f=s.items[u].tokens.filter(g=>g.type==="space"),p=f.length>0&&f.some(g=>this.rules.other.anyLine.test(g.raw));s.loose=p}if(s.loose)for(let u=0;u<s.items.length;u++)s.items[u].loose=!0;return s}}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," "),i=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",s=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:i,title:s}}}table(n){let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=Yy(e[1]),i=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),s=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
312
- `):[],r={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===i.length){for(let o of i)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 s)r.rows.push(Yy(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)===`
313
- `?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=ro(t.slice(0,-1),"\\");if((t.length-r.length)%2===0)return}else{let r=MM(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 i=e[2],s="";if(this.options.pedantic){let r=this.rules.other.pedanticHrefTitle.exec(i);r&&(i=r[1],s=r[3])}else s=e[3]?e[3].slice(1,-1):"";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?i=i.slice(1):i=i.slice(1,-1)),Wy(e,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:s&&s.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 i=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),s=e[i.toLowerCase()];if(!s){let r=t[0].charAt(0);return{type:"text",raw:r,text:r}}return Wy(t,s,t[0],this.lexer,this.rules)}}emStrong(n,e,t=""){let i=this.rules.inline.emStrongLDelim.exec(n);if(!(!i||i[3]&&t.match(this.rules.other.unicodeAlphaNumeric))&&(!(i[1]||i[2])||!t||this.rules.inline.punctuation.exec(t))){let s=[...i[0]].length-1,r,o,c=s,u=0,f=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(f.lastIndex=0,e=e.slice(-1*n.length+s);(i=f.exec(e))!=null;){if(r=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!r)continue;if(o=[...r].length,i[3]||i[4]){c+=o;continue}else if((i[5]||i[6])&&s%3&&!((s+o)%3)){u+=o;continue}if(c-=o,c>0)continue;o=Math.min(o,o+c+u);let p=[...i[0]][0].length,g=n.slice(0,s+i.index+p+o);if(Math.min(s,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," "),i=this.rules.other.nonSpaceChar.test(t),s=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return i&&s&&(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,i;return e[2]==="@"?(t=e[1],i="mailto:"+t):(t=e[1],i=t),{type:"link",raw:e[0],text:t,href:i,tokens:[{type:"text",raw:t,text:t}]}}}url(n){let e;if(e=this.rules.inline.url.exec(n)){let t,i;if(e[2]==="@")t=e[0],i="mailto:"+t;else{let s;do s=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(s!==e[0]);t=e[0],e[1]==="www."?i="http://"+e[0]:i=e[0]}return{type:"link",raw:e[0],text:t,href:i,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}}}},Fi=class _p{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||sr,this.options.tokenizer=this.options.tokenizer||new Pu,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:tn,block:Tc.normal,inline:so.normal};this.options.pedantic?(t.block=Tc.pedantic,t.inline=so.pedantic):this.options.gfm&&(t.block=Tc.gfm,this.options.breaks?t.inline=so.breaks:t.inline=so.gfm),this.tokenizer.rules=t}static get rules(){return{block:Tc,inline:so}}static lex(e,t){return new _p(t).lex(e)}static lexInline(e,t){return new _p(t).inlineTokens(e)}lex(e){e=e.replace(tn.carriageReturn,`
314
- `),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let i=this.inlineQueue[t];this.inlineTokens(i.src,i.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],i=!1){for(this.options.pedantic&&(e=e.replace(tn.tabCharGlobal," ").replace(tn.spaceLine,""));e;){let s;if(this.options.extensions?.block?.some(o=>(s=o.call({lexer:this},e,t))?(e=e.substring(s.raw.length),t.push(s),!0):!1))continue;if(s=this.tokenizer.space(e)){e=e.substring(s.raw.length);let o=t.at(-1);s.raw.length===1&&o!==void 0?o.raw+=`
315
- `:t.push(s);continue}if(s=this.tokenizer.code(e)){e=e.substring(s.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=(o.raw.endsWith(`
316
- `)?"":`
317
- `)+s.raw,o.text+=`
318
- `+s.text,this.inlineQueue.at(-1).src=o.text):t.push(s);continue}if(s=this.tokenizer.fences(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.heading(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.hr(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.blockquote(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.list(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.html(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.def(e)){e=e.substring(s.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=(o.raw.endsWith(`
319
- `)?"":`
320
- `)+s.raw,o.text+=`
321
- `+s.raw,this.inlineQueue.at(-1).src=o.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title},t.push(s));continue}if(s=this.tokenizer.table(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.lheading(e)){e=e.substring(s.raw.length),t.push(s);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&&(s=this.tokenizer.paragraph(r))){let o=t.at(-1);i&&o?.type==="paragraph"?(o.raw+=(o.raw.endsWith(`
322
- `)?"":`
323
- `)+s.raw,o.text+=`
324
- `+s.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(s),i=r.length!==e.length,e=e.substring(s.raw.length);continue}if(s=this.tokenizer.text(e)){e=e.substring(s.raw.length);let o=t.at(-1);o?.type==="text"?(o.raw+=(o.raw.endsWith(`
325
- `)?"":`
326
- `)+s.raw,o.text+=`
327
- `+s.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(s);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 i=e,s=null;if(this.tokens.links){let c=Object.keys(this.tokens.links);if(c.length>0)for(;(s=this.tokenizer.rules.inline.reflinkSearch.exec(i))!=null;)c.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))&&(i=i.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(s=this.tokenizer.rules.inline.anyPunctuation.exec(i))!=null;)i=i.slice(0,s.index)+"++"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;(s=this.tokenizer.rules.inline.blockSkip.exec(i))!=null;)i=i.slice(0,s.index)+"["+"a".repeat(s[0].length-2)+"]"+i.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,i,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}},Qu=class{options;parser;constructor(n){this.options=n||sr}space(n){return""}code({text:n,lang:e,escaped:t}){let i=(e||"").match(tn.notSpaceStart)?.[0],s=n.replace(tn.endingNewline,"")+`
328
- `;return i?'<pre><code class="language-'+fi(i)+'">'+(t?s:fi(s,!0))+`</code></pre>
329
- `:"<pre><code>"+(t?s:fi(s,!0))+`</code></pre>
330
- `}blockquote({tokens:n}){return`<blockquote>
331
- ${this.parser.parse(n)}</blockquote>
332
- `}html({text:n}){return n}def(n){return""}heading({tokens:n,depth:e}){return`<h${e}>${this.parser.parseInline(n)}</h${e}>
333
- `}hr(n){return`<hr>
334
- `}list(n){let e=n.ordered,t=n.start,i="";for(let o=0;o<n.items.length;o++){let c=n.items[o];i+=this.listitem(c)}let s=e?"ol":"ul",r=e&&t!==1?' start="'+t+'"':"";return"<"+s+r+`>
335
- `+i+"</"+s+`>
336
- `}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+" "+fi(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>
337
- `}checkbox({checked:n}){return"<input "+(n?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:n}){return`<p>${this.parser.parseInline(n)}</p>
338
- `}table(n){let e="",t="";for(let s=0;s<n.header.length;s++)t+=this.tablecell(n.header[s]);e+=this.tablerow({text:t});let i="";for(let s=0;s<n.rows.length;s++){let r=n.rows[s];t="";for(let o=0;o<r.length;o++)t+=this.tablecell(r[o]);i+=this.tablerow({text:t})}return i&&(i=`<tbody>${i}</tbody>`),`<table>
339
- <thead>
340
- `+e+`</thead>
341
- `+i+`</table>
342
- `}tablerow({text:n}){return`<tr>
343
- ${n}</tr>
344
- `}tablecell(n){let e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+`</${t}>
345
- `}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>${fi(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 i=this.parser.parseInline(t),s=qy(n);if(s===null)return i;n=s;let r='<a href="'+n+'"';return e&&(r+=' title="'+fi(e)+'"'),r+=">"+i+"</a>",r}image({href:n,title:e,text:t,tokens:i}){i&&(t=this.parser.parseInline(i,this.parser.textRenderer));let s=qy(n);if(s===null)return fi(t);n=s;let r=`<img src="${n}" alt="${t}"`;return e&&(r+=` title="${fi(e)}"`),r+=">",r}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:fi(n.text)}},Cm=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""}},Xi=class $p{options;renderer;textRenderer;constructor(e){this.options=e||sr,this.options.renderer=this.options.renderer||new Qu,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Cm}static parse(e,t){return new $p(t).parse(e)}static parseInline(e,t){return new $p(t).parseInline(e)}parse(e,t=!0){let i="";for(let s=0;s<e.length;s++){let r=e[s];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)){i+=u||"";continue}}let o=r;switch(o.type){case"space":{i+=this.renderer.space(o);continue}case"hr":{i+=this.renderer.hr(o);continue}case"heading":{i+=this.renderer.heading(o);continue}case"code":{i+=this.renderer.code(o);continue}case"table":{i+=this.renderer.table(o);continue}case"blockquote":{i+=this.renderer.blockquote(o);continue}case"list":{i+=this.renderer.list(o);continue}case"html":{i+=this.renderer.html(o);continue}case"def":{i+=this.renderer.def(o);continue}case"paragraph":{i+=this.renderer.paragraph(o);continue}case"text":{let c=o,u=this.renderer.text(c);for(;s+1<e.length&&e[s+1].type==="text";)c=e[++s],u+=`
346
- `+this.renderer.text(c);t?i+=this.renderer.paragraph({type:"paragraph",raw:u,text:u,tokens:[{type:"text",raw:u,text:u,escaped:!0}]}):i+=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 i}parseInline(e,t=this.renderer){let i="";for(let s=0;s<e.length;s++){let r=e[s];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)){i+=c||"";continue}}let o=r;switch(o.type){case"escape":{i+=t.text(o);break}case"html":{i+=t.html(o);break}case"link":{i+=t.link(o);break}case"image":{i+=t.image(o);break}case"strong":{i+=t.strong(o);break}case"em":{i+=t.em(o);break}case"codespan":{i+=t.codespan(o);break}case"br":{i+=t.br(o);break}case"del":{i+=t.del(o);break}case"text":{i+=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 i}},Wc=class{options;block;constructor(n){this.options=n||sr}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}provideLexer(){return this.block?Fi.lex:Fi.lexInline}provideParser(){return this.block?Xi.parse:Xi.parseInline}},DM=class{defaults=km();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=Xi;Renderer=Qu;TextRenderer=Cm;Lexer=Fi;Tokenizer=Pu;Hooks=Wc;constructor(...n){this.use(...n)}walkTokens(n,e){let t=[];for(let i of n)switch(t=t.concat(e.call(this,i)),i.type){case"table":{let s=i;for(let r of s.header)t=t.concat(this.walkTokens(r.tokens,e));for(let r of s.rows)for(let o of r)t=t.concat(this.walkTokens(o.tokens,e));break}case"list":{let s=i;t=t.concat(this.walkTokens(s.items,e));break}default:{let s=i;this.defaults.extensions?.childTokens?.[s.type]?this.defaults.extensions.childTokens[s.type].forEach(r=>{let o=s[r].flat(1/0);t=t.concat(this.walkTokens(o,e))}):s.tokens&&(t=t.concat(this.walkTokens(s.tokens,e)))}}return t}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{let i={...t};if(i.async=this.defaults.async||i.async||!1,t.extensions&&(t.extensions.forEach(s=>{if(!s.name)throw new Error("extension name required");if("renderer"in s){let r=e.renderers[s.name];r?e.renderers[s.name]=function(...o){let c=s.renderer.apply(this,o);return c===!1&&(c=r.apply(this,o)),c}:e.renderers[s.name]=s.renderer}if("tokenizer"in s){if(!s.level||s.level!=="block"&&s.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let r=e[s.level];r?r.unshift(s.tokenizer):e[s.level]=[s.tokenizer],s.start&&(s.level==="block"?e.startBlock?e.startBlock.push(s.start):e.startBlock=[s.start]:s.level==="inline"&&(e.startInline?e.startInline.push(s.start):e.startInline=[s.start]))}"childTokens"in s&&s.childTokens&&(e.childTokens[s.name]=s.childTokens)}),i.extensions=e),t.renderer){let s=this.defaults.renderer||new Qu(this.defaults);for(let r in t.renderer){if(!(r in s))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;let o=r,c=t.renderer[o],u=s[o];s[o]=(...f)=>{let p=c.apply(s,f);return p===!1&&(p=u.apply(s,f)),p||""}}i.renderer=s}if(t.tokenizer){let s=this.defaults.tokenizer||new Pu(this.defaults);for(let r in t.tokenizer){if(!(r in s))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;let o=r,c=t.tokenizer[o],u=s[o];s[o]=(...f)=>{let p=c.apply(s,f);return p===!1&&(p=u.apply(s,f)),p}}i.tokenizer=s}if(t.hooks){let s=this.defaults.hooks||new Wc;for(let r in t.hooks){if(!(r in s))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;let o=r,c=t.hooks[o],u=s[o];Wc.passThroughHooks.has(r)?s[o]=f=>{if(this.defaults.async)return Promise.resolve(c.call(s,f)).then(g=>u.call(s,g));let p=c.call(s,f);return u.call(s,p)}:s[o]=(...f)=>{let p=c.apply(s,f);return p===!1&&(p=u.apply(s,f)),p}}i.hooks=s}if(t.walkTokens){let s=this.defaults.walkTokens,r=t.walkTokens;i.walkTokens=function(o){let c=[];return c.push(r.call(this,o)),s&&(c=c.concat(s.call(this,o))),c}}this.defaults={...this.defaults,...i}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return Fi.lex(n,e??this.defaults)}parser(n,e){return Xi.parse(n,e??this.defaults)}parseMarkdown(n){return(e,t)=>{let i={...t},s={...this.defaults,...i},r=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&i.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"));s.hooks&&(s.hooks.options=s,s.hooks.block=n);let o=s.hooks?s.hooks.provideLexer():n?Fi.lex:Fi.lexInline,c=s.hooks?s.hooks.provideParser():n?Xi.parse:Xi.parseInline;if(s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(e):e).then(u=>o(u,s)).then(u=>s.hooks?s.hooks.processAllTokens(u):u).then(u=>s.walkTokens?Promise.all(this.walkTokens(u,s.walkTokens)).then(()=>u):u).then(u=>c(u,s)).then(u=>s.hooks?s.hooks.postprocess(u):u).catch(r);try{s.hooks&&(e=s.hooks.preprocess(e));let u=o(e,s);s.hooks&&(u=s.hooks.processAllTokens(u)),s.walkTokens&&this.walkTokens(u,s.walkTokens);let f=c(u,s);return s.hooks&&(f=s.hooks.postprocess(f)),f}catch(u){return r(u)}}}onError(n,e){return t=>{if(t.message+=`
347
- Please report this to https://github.com/markedjs/marked.`,n){let i="<p>An error occurred:</p><pre>"+fi(t.message+"",!0)+"</pre>";return e?Promise.resolve(i):i}if(e)return Promise.reject(t);throw t}}},ir=new DM;function Ge(n,e){return ir.parse(n,e)}Ge.options=Ge.setOptions=function(n){return ir.setOptions(n),Ge.defaults=ir.defaults,zw(Ge.defaults),Ge};Ge.getDefaults=km;Ge.defaults=sr;Ge.use=function(...n){return ir.use(...n),Ge.defaults=ir.defaults,zw(Ge.defaults),Ge};Ge.walkTokens=function(n,e){return ir.walkTokens(n,e)};Ge.parseInline=ir.parseInline;Ge.Parser=Xi;Ge.parser=Xi.parse;Ge.Renderer=Qu;Ge.TextRenderer=Cm;Ge.Lexer=Fi;Ge.lexer=Fi.lex;Ge.Tokenizer=Pu;Ge.Hooks=Wc;Ge.parse=Ge;Ge.options;Ge.setOptions;Ge.use;Ge.walkTokens;Ge.parseInline;Xi.parse;Fi.lex;var xf={exports:{}},Uy;function LM(){return Uy||(Uy=1,(function(n){var e=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};/**
348
- * Prism: Lightweight, robust, elegant syntax highlighting
349
- *
350
- * @license MIT <https://opensource.org/licenses/MIT>
351
- * @author Lea Verou <https://lea.verou.me>
352
- * @namespace
353
- * @public
354
- */var t=(function(i){var s=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,r=0,o={},c={manual:i.Prism&&i.Prism.manual,disableWorkerMessageHandler:i.Prism&&i.Prism.disableWorkerMessageHandler,util:{encode:function S(Q){return Q instanceof u?new u(Q.type,S(Q.content),Q.alias):Array.isArray(Q)?Q.map(S):Q.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/\u00a0/g," ")},type:function(S){return Object.prototype.toString.call(S).slice(8,-1)},objId:function(S){return S.__id||Object.defineProperty(S,"__id",{value:++r}),S.__id},clone:function S(Q,P){P=P||{};var _,T;switch(c.util.type(Q)){case"Object":if(T=c.util.objId(Q),P[T])return P[T];_={},P[T]=_;for(var A in Q)Q.hasOwnProperty(A)&&(_[A]=S(Q[A],P));return _;case"Array":return T=c.util.objId(Q),P[T]?P[T]:(_=[],P[T]=_,Q.forEach(function(J,z){_[z]=S(J,P)}),_);default:return Q}},getLanguage:function(S){for(;S;){var Q=s.exec(S.className);if(Q)return Q[1].toLowerCase();S=S.parentElement}return"none"},setLanguage:function(S,Q){S.className=S.className.replace(RegExp(s,"gi"),""),S.classList.add("language-"+Q)},currentScript:function(){if(typeof document>"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(_){var S=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(_.stack)||[])[1];if(S){var Q=document.getElementsByTagName("script");for(var P in Q)if(Q[P].src==S)return Q[P]}return null}},isActive:function(S,Q,P){for(var _="no-"+Q;S;){var T=S.classList;if(T.contains(Q))return!0;if(T.contains(_))return!1;S=S.parentElement}return!!P}},languages:{plain:o,plaintext:o,text:o,txt:o,extend:function(S,Q){var P=c.util.clone(c.languages[S]);for(var _ in Q)P[_]=Q[_];return P},insertBefore:function(S,Q,P,_){_=_||c.languages;var T=_[S],A={};for(var J in T)if(T.hasOwnProperty(J)){if(J==Q)for(var z in P)P.hasOwnProperty(z)&&(A[z]=P[z]);P.hasOwnProperty(J)||(A[J]=T[J])}var G=_[S];return _[S]=A,c.languages.DFS(c.languages,function(H,D){D===G&&H!=S&&(this[H]=A)}),A},DFS:function S(Q,P,_,T){T=T||{};var A=c.util.objId;for(var J in Q)if(Q.hasOwnProperty(J)){P.call(Q,J,Q[J],_||J);var z=Q[J],G=c.util.type(z);G==="Object"&&!T[A(z)]?(T[A(z)]=!0,S(z,P,null,T)):G==="Array"&&!T[A(z)]&&(T[A(z)]=!0,S(z,P,J,T))}}},plugins:{},highlightAll:function(S,Q){c.highlightAllUnder(document,S,Q)},highlightAllUnder:function(S,Q,P){var _={callback:P,container:S,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};c.hooks.run("before-highlightall",_),_.elements=Array.prototype.slice.apply(_.container.querySelectorAll(_.selector)),c.hooks.run("before-all-elements-highlight",_);for(var T=0,A;A=_.elements[T++];)c.highlightElement(A,Q===!0,_.callback)},highlightElement:function(S,Q,P){var _=c.util.getLanguage(S),T=c.languages[_];c.util.setLanguage(S,_);var A=S.parentElement;A&&A.nodeName.toLowerCase()==="pre"&&c.util.setLanguage(A,_);var J=S.textContent,z={element:S,language:_,grammar:T,code:J};function G(D){z.highlightedCode=D,c.hooks.run("before-insert",z),z.element.innerHTML=z.highlightedCode,c.hooks.run("after-highlight",z),c.hooks.run("complete",z),P&&P.call(z.element)}if(c.hooks.run("before-sanity-check",z),A=z.element.parentElement,A&&A.nodeName.toLowerCase()==="pre"&&!A.hasAttribute("tabindex")&&A.setAttribute("tabindex","0"),!z.code){c.hooks.run("complete",z),P&&P.call(z.element);return}if(c.hooks.run("before-highlight",z),!z.grammar){G(c.util.encode(z.code));return}if(Q&&i.Worker){var H=new Worker(c.filename);H.onmessage=function(D){G(D.data)},H.postMessage(JSON.stringify({language:z.language,code:z.code,immediateClose:!0}))}else G(c.highlight(z.code,z.grammar,z.language))},highlight:function(S,Q,P){var _={code:S,grammar:Q,language:P};if(c.hooks.run("before-tokenize",_),!_.grammar)throw new Error('The language "'+_.language+'" has no grammar.');return _.tokens=c.tokenize(_.code,_.grammar),c.hooks.run("after-tokenize",_),u.stringify(c.util.encode(_.tokens),_.language)},tokenize:function(S,Q){var P=Q.rest;if(P){for(var _ in P)Q[_]=P[_];delete Q.rest}var T=new g;return O(T,T.head,S),p(S,T,Q,T.head,0),k(T)},hooks:{all:{},add:function(S,Q){var P=c.hooks.all;P[S]=P[S]||[],P[S].push(Q)},run:function(S,Q){var P=c.hooks.all[S];if(!(!P||!P.length))for(var _=0,T;T=P[_++];)T(Q)}},Token:u};i.Prism=c;function u(S,Q,P,_){this.type=S,this.content=Q,this.alias=P,this.length=(_||"").length|0}u.stringify=function S(Q,P){if(typeof Q=="string")return Q;if(Array.isArray(Q)){var _="";return Q.forEach(function(G){_+=S(G,P)}),_}var T={type:Q.type,content:S(Q.content,P),tag:"span",classes:["token",Q.type],attributes:{},language:P},A=Q.alias;A&&(Array.isArray(A)?Array.prototype.push.apply(T.classes,A):T.classes.push(A)),c.hooks.run("wrap",T);var J="";for(var z in T.attributes)J+=" "+z+'="'+(T.attributes[z]||"").replace(/"/g,"&quot;")+'"';return"<"+T.tag+' class="'+T.classes.join(" ")+'"'+J+">"+T.content+"</"+T.tag+">"};function f(S,Q,P,_){S.lastIndex=Q;var T=S.exec(P);if(T&&_&&T[1]){var A=T[1].length;T.index+=A,T[0]=T[0].slice(A)}return T}function p(S,Q,P,_,T,A){for(var J in P)if(!(!P.hasOwnProperty(J)||!P[J])){var z=P[J];z=Array.isArray(z)?z:[z];for(var G=0;G<z.length;++G){if(A&&A.cause==J+","+G)return;var H=z[G],D=H.inside,ee=!!H.lookbehind,q=!!H.greedy,ue=H.alias;if(q&&!H.pattern.global){var ve=H.pattern.toString().match(/[imsuy]*$/)[0];H.pattern=RegExp(H.pattern.source,ve+"g")}for(var de=H.pattern||H,X=_.next,L=T;X!==Q.tail&&!(A&&L>=A.reach);L+=X.value.length,X=X.next){var N=X.value;if(Q.length>S.length)return;if(!(N instanceof u)){var j=1,I;if(q){if(I=f(de,L,S,ee),!I||I.index>=S.length)break;var he=I.index,se=I.index+I[0].length,K=L;for(K+=X.value.length;he>=K;)X=X.next,K+=X.value.length;if(K-=X.value.length,L=K,X.value instanceof u)continue;for(var ie=X;ie!==Q.tail&&(K<se||typeof ie.value=="string");ie=ie.next)j++,K+=ie.value.length;j--,N=S.slice(L,K),I.index-=L}else if(I=f(de,0,N,ee),!I)continue;var he=I.index,pe=I[0],Qe=N.slice(0,he),De=N.slice(he+pe.length),Ye=L+N.length;A&&Ye>A.reach&&(A.reach=Ye);var Re=X.prev;Qe&&(Re=O(Q,Re,Qe),L+=Qe.length),x(Q,Re,j);var ze=new u(J,D?c.tokenize(pe,D):pe,ue,pe);if(X=O(Q,Re,ze),De&&O(Q,X,De),j>1){var ft={cause:J+","+G,reach:Ye};p(S,Q,P,X.prev,L,ft),A&&ft.reach>A.reach&&(A.reach=ft.reach)}}}}}}function g(){var S={value:null,prev:null,next:null},Q={value:null,prev:S,next:null};S.next=Q,this.head=S,this.tail=Q,this.length=0}function O(S,Q,P){var _=Q.next,T={value:P,prev:Q,next:_};return Q.next=T,_.prev=T,S.length++,T}function x(S,Q,P){for(var _=Q.next,T=0;T<P&&_!==S.tail;T++)_=_.next;Q.next=_,_.prev=Q,S.length-=T}function k(S){for(var Q=[],P=S.head.next;P!==S.tail;)Q.push(P.value),P=P.next;return Q}if(!i.document)return i.addEventListener&&(c.disableWorkerMessageHandler||i.addEventListener("message",function(S){var Q=JSON.parse(S.data),P=Q.language,_=Q.code,T=Q.immediateClose;i.postMessage(c.highlight(_,c.languages[P],P)),T&&i.close()},!1)),c;var w=c.util.currentScript();w&&(c.filename=w.src,w.hasAttribute("data-manual")&&(c.manual=!0));function b(){c.manual||c.highlightAll()}if(!c.manual){var C=document.readyState;C==="loading"||C==="interactive"&&w&&w.defer?document.addEventListener("DOMContentLoaded",b):window.requestAnimationFrame?window.requestAnimationFrame(b):window.setTimeout(b,16)}return c})(e);n.exports&&(n.exports=t),typeof p0<"u"&&(p0.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(i){i.type==="entity"&&(i.attributes.title=i.content.replace(/&amp;/,"&"))}),Object.defineProperty(t.languages.markup.tag,"addInlined",{value:function(s,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[s]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return s}),"i"),lookbehind:!0,greedy:!0,inside:c},t.languages.insertBefore("markup","cdata",u)}}),Object.defineProperty(t.languages.markup.tag,"addAttribute",{value:function(i,s){t.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+i+")"+/\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:[s,"language-"+s],inside:t.languages[s]},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(i){var s=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;i.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+s.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\\((?:"+s.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+s.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+s.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:s,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:/[(){};:,]/},i.languages.css.atrule.inside.rest=i.languages.css;var r=i.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 i="Loading…",s=function(w,b){return"✖ Error "+w+" while fetching file: "+b},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(w,b,C){var S=new XMLHttpRequest;S.open("GET",w,!0),S.onreadystatechange=function(){S.readyState==4&&(S.status<400&&S.responseText?b(S.responseText):S.status>=400?C(s(S.status,S.statusText)):C(r))},S.send(null)}function x(w){var b=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(w||"");if(b){var C=Number(b[1]),S=b[2],Q=b[3];return S?Q?[C,Number(Q)]:[C,void 0]:[C,C]}}t.hooks.add("before-highlightall",function(w){w.selector+=", "+g}),t.hooks.add("before-sanity-check",function(w){var b=w.element;if(b.matches(g)){w.code="",b.setAttribute(c,u);var C=b.appendChild(document.createElement("CODE"));C.textContent=i;var S=b.getAttribute("data-src"),Q=w.language;if(Q==="none"){var P=(/\.(\w+)$/.exec(S)||[,"none"])[1];Q=o[P]||P}t.util.setLanguage(C,Q),t.util.setLanguage(b,Q);var _=t.plugins.autoloader;_&&_.loadLanguages(Q),O(S,function(T){b.setAttribute(c,f);var A=x(b.getAttribute("data-range"));if(A){var J=T.split(/\r\n?|\n/g),z=A[0],G=A[1]==null?J.length:A[1];z<0&&(z+=J.length),z=Math.max(0,Math.min(z-1,J.length)),G<0&&(G+=J.length),G=Math.max(0,Math.min(G,J.length)),T=J.slice(z,G).join(`
355
- `),b.hasAttribute("data-start")||b.setAttribute("data-start",String(z+1))}C.textContent=T,t.highlightElement(C)},function(T){b.setAttribute(c,p),C.textContent=T})}}),t.plugins.fileHighlight={highlight:function(b){for(var C=(b||document).querySelectorAll(g),S=0,Q;Q=C[S++];)t.highlightElement(Q)}};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)}})()})(xf)),xf.exports}var IM=LM();const kf=dx(IM);var Gy={},Hy;function ZM(){return Hy||(Hy=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)),Gy}ZM();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,i=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,s=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function r(u,f){return u=u.replace(/<S>/g,function(){return t}).replace(/<BRACES>/g,function(){return i}).replace(/<SPREAD>/g,function(){return s}),RegExp(u,f)}s=r(s).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},i={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:i},{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:i},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:i.entity}}],environment:{pattern:RegExp("\\$?"+e),alias:"constant"},variable:i.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 s=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],r=i.variable[1].inside,o=0;o<s.length;o++)r[s[o]]=n.languages.bash[s[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 Ky={},Jy;function FM(){return Jy||(Jy=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),Ky}FM();(function(n){var e=/[*&][^\s[\]{},]+/,t=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,i="(?:"+t.source+"(?:[ ]+"+e.source+")?|"+e.source+"(?:[ ]+"+t.source+")?)",s=/(?:[^\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 i}).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 i})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return i}).replace(/<<key>>/g,function(){return"(?:"+s+"|"+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(w){return typeof w!="string"&&w.type!=="comment"&&w.type!=="scalar"}),i=0;function s(w){return t[i+w]}function r(w,b){b=b||0;for(var C=0;C<w.length;C++){var S=s(C+b);if(!S||S.type!==w[C])return!1}return!0}function o(w,b){for(var C=1,S=i;S<t.length;S++){var Q=t[S],P=Q.content;if(Q.type==="punctuation"&&typeof P=="string"){if(w.test(P))C++;else if(b.test(P)&&(C--,C===0))return S}}return-1}function c(w,b){var C=w.alias;C?Array.isArray(C)||(w.alias=C=[C]):w.alias=C=[],C.push(b)}for(;i<t.length;){var u=t[i++];if(u.type==="keyword"&&u.content==="mutation"){var f=[];if(r(["definition-mutation","punctuation"])&&s(1).content==="("){i+=2;var p=o(/^\($/,/^\)$/);if(p===-1)continue;for(;i<p;i++){var g=s(0);g.type==="variable"&&(c(g,"variable-input"),f.push(g.content))}i=p+1}if(r(["punctuation","property-query"])&&s(0).content==="{"&&(i++,c(s(0),"property-mutation"),f.length>0)){var O=o(/^\{$/,/^\}$/);if(O===-1)continue;for(var x=i;x<O;x++){var k=t[x];k.type==="variable"&&f.indexOf(k.content)>=0&&c(k,"variable-input")}}}}});const e1=new Ge.Renderer;e1.code=(n,e)=>{let t=n;if(e&&kf.languages[e])try{t=kf.highlight(n,kf.languages[e],e)}catch(i){console.warn(`Failed to highlight code with language "${e}":`,i)}return`<pre class="language-${e||"text"}"><code class="language-${e||"text"}">${t}</code></pre>`};Ge.setOptions({breaks:!0,gfm:!0,renderer:e1});const t1=({content:n,className:e=""})=>{const t=oe.useMemo(()=>{try{return Ge(n)}catch(i){return console.error("Error rendering markdown:",i),n}},[n]);return h.jsx("div",{className:`markdown-content ${e}`,dangerouslySetInnerHTML:{__html:t}})},Dr=({elements:n,title:e,icon:t,id:i,enableActions:s,onAction:r})=>{const[o,c]=oe.useState({}),[u,f]=oe.useState({}),p=oe.useRef({}),g=x=>{c(k=>({...k,[x]:!k[x]}))};if(oe.useEffect(()=>{const k=setTimeout(()=>{const w={};Object.entries(p.current).forEach(([b,C])=>{if(C){const S=C.firstElementChild;if(S){const Q=S.scrollHeight>S.clientHeight;w[b]=Q}}}),f(w)},0);return()=>clearTimeout(k)},[n]),n.length===0)return null;const O=x=>{r?.(x)};return h.jsxs("div",{className:"element-table",id:i,children:[h.jsxs("h2",{className:"element-table__title",children:[t&&h.jsx("span",{className:"element-table__icon",children:t}),e," (",n.length,")"]}),h.jsx("div",{className:"element-table__container",children:h.jsxs("table",{className:"element-table__table",children:[h.jsx("thead",{children:h.jsxs("tr",{children:[h.jsx("th",{className:"element-table__header element-table__header--id",children:"ID"}),h.jsx("th",{className:"element-table__header element-table__header--title",children:"Title"}),h.jsx("th",{className:"element-table__header element-table__header--description",children:"Description"})]})}),h.jsx("tbody",{children:n.map(x=>{const k=!!o[x.id];return h.jsxs("tr",{className:"element-table__row",children:[h.jsx("td",{className:"element-table__cell element-table__cell--id",children:h.jsx("div",{className:"element-table__id-container",children:h.jsx("a",{href:`#element-${x.id}`,className:"element-table__id-link",title:x.id,children:h.jsx("code",{className:"element-table__id-code",children:x.id})})})}),h.jsxs("td",{className:"element-table__cell element-table__cell--title",children:[h.jsx("a",{href:`#element-${x.id}`,className:"element-table__title-link",title:x.meta?.title||x.id,children:x.meta?.title||h.jsx("span",{className:"element-table__empty",children:"Untitled"})}),s&&h.jsx("button",{className:`element-table__action-btn ${s==="task"?"element-table__action-btn--run":"element-table__action-btn--emit"}`,onClick:w=>{w.preventDefault(),w.stopPropagation(),O(x)},title:s==="task"?"Run Task":"Emit Event","aria-label":s==="task"?"Run":"Emit",children:s==="task"?"Run":"Emit"})]}),h.jsx("td",{className:"element-table__cell element-table__cell--description",children:x.meta?.description?h.jsxs("div",{className:"element-table__description-container",children:[h.jsx("div",{ref:w=>{p.current[x.id]=w},className:`element-table__description ${k?"expanded":""}`,children:h.jsx(t1,{content:x.meta.description})}),u[x.id]&&h.jsx("button",{className:"element-table__expand-btn",onClick:w=>{w.stopPropagation(),g(x.id)},"aria-expanded":k,title:k?"Show less":"Show more",children:k?"Less":"More"})]}):h.jsx("span",{className:"element-table__empty",children:"—"})})]},x.id)})})]})})]})},XM=({introspector:n,sidebarWidth:e,chatWidth:t,isChatOpen:i,chatPushesLeft:s,openStats:r,isStatsOpen:o,closeStats:c,suspendRendering:u=!1,tasks:f,resources:p,events:g,hooks:O,middlewares:x,tags:k})=>{const w=n.getRoot(),b=w?.meta?.title||"Runner Application Documentation",C=w?.meta?.description||"Complete overview of your application's architecture and components";return h.jsxs("div",{className:`docs-main-content ${u?"docs-main-content--suspended":""}`,style:{marginLeft:`${e+(s&&i&&t||0)+40}px`,marginRight:void 0},children:[u&&h.jsx("div",{className:"docs-main-overlay"}),h.jsxs("div",{className:"docs-content-container",children:[h.jsxs("header",{id:"top",className:"docs-header",children:[h.jsx("h1",{children:b}),h.jsx("p",{children:C})]}),h.jsxs("section",{id:"live",className:"docs-section",children:[h.jsx("h2",{children:"📡 Live Telemetry"}),h.jsx(tM,{detailed:!0,introspector:n})]}),h.jsxs("section",{id:"diagnostics",className:"docs-section",children:[h.jsx("h2",{children:"🔍 Diagnostics"}),h.jsx(UA,{introspector:n,detailed:!0})]}),h.jsxs("section",{id:"overview",className:"docs-section",children:[h.jsxs("div",{className:"overview-header",children:[h.jsx("h2",{children:"📋 Overview"}),h.jsx("div",{children:h.jsx("button",{onClick:r,"aria-label":"Open Stats",title:"Open Stats",className:"clean-button",children:"📊"})})]}),h.jsxs("div",{className:"overview-grid",children:[h.jsxs("a",{href:"#tasks",className:"card card--tasks",children:[h.jsx("h3",{children:"Tasks"}),h.jsx("div",{className:"count",children:f.length})]}),h.jsxs("a",{href:"#resources",className:"card card--resources",children:[h.jsx("h3",{children:"Resources"}),h.jsx("div",{className:"count",children:p.length})]}),h.jsxs("a",{href:"#events",className:"card card--events",children:[h.jsx("h3",{children:"Events"}),h.jsx("div",{className:"count",children:g.length})]}),h.jsxs("a",{href:"#middlewares",className:"card card--middlewares",children:[h.jsx("h3",{children:"Middlewares"}),h.jsx("div",{className:"count",children:x.length})]}),h.jsxs("a",{href:"#hooks",className:"card card--hooks",children:[h.jsx("h3",{children:"Hooks"}),h.jsx("div",{className:"count",children:O.length})]}),h.jsxs("a",{href:"#tags",className:"card card--tags",children:[h.jsx("h3",{children:"Tags"}),h.jsx("div",{className:"count",children:k.length})]})]})]}),f.length>0&&h.jsx(Dr,{elements:f,title:"Tasks Overview",icon:"⚙️",id:"tasks",enableActions:"task",onAction:S=>{window.dispatchEvent(new CustomEvent("docs:execute-element",{detail:{type:"task",id:S.id}}))}}),f.length>0&&h.jsxs("section",{className:"docs-section",children:[h.jsxs("h2",{children:["⚙️ Tasks (",f.length,")"]}),h.jsx("div",{className:"docs-component-grid",children:f.map(S=>h.jsx(LA,{task:S,introspector:n},S.id))})]}),p.length>0&&h.jsx(Dr,{elements:p,title:"Resources Overview",icon:"🔧",id:"resources"}),p.length>0&&h.jsxs("section",{className:"docs-section",children:[h.jsxs("h2",{children:["🔧 Resources (",p.length,")"]}),h.jsx("div",{className:"docs-component-grid",children:p.map(S=>h.jsx(IA,{resource:S,introspector:n},S.id))})]}),g.length>0&&h.jsx(Dr,{elements:g,title:"Events Overview",icon:"📡",id:"events",enableActions:"event",onAction:S=>{window.dispatchEvent(new CustomEvent("docs:execute-element",{detail:{type:"event",id:S.id}}))}}),g.length>0&&h.jsxs("section",{className:"docs-section",children:[h.jsxs("h2",{children:["📡 Events (",g.length,")"]}),h.jsx("div",{className:"docs-component-grid",children:g.map(S=>h.jsx(FA,{event:S,introspector:n},S.id))})]}),O.length>0&&h.jsx(Dr,{elements:O,title:"Hooks Overview",icon:"🪝",id:"hooks"}),O.length>0&&h.jsxs("section",{className:"docs-section",children:[h.jsxs("h2",{children:["🪝 Hooks (",O.length,")"]}),h.jsx("div",{className:"docs-component-grid",children:O.map(S=>h.jsx(qA,{hook:S,introspector:n},S.id))})]}),x.length>0&&h.jsx(Dr,{elements:x,title:"Middlewares Overview",icon:"🔗",id:"middlewares"}),x.length>0&&h.jsxs("section",{className:"docs-section",children:[h.jsxs("h2",{children:["🔗 Middlewares (",x.length,")"]}),h.jsx("div",{className:"docs-component-grid",children:x.map(S=>h.jsx(ZA,{middleware:S,introspector:n},S.id))})]}),k.length>0&&h.jsx(Dr,{elements:k,title:"Tags Overview",icon:"🏷️",id:"tags"}),k.length>0&&h.jsxs("section",{className:"docs-section",children:[h.jsxs("h2",{children:["Tags (",k.length,")"]}),h.jsx("div",{className:"docs-tags-grid",children:k.map(S=>h.jsx(WA,{tag:S,introspector:n},S.id))})]})]})]})},Fe={STORAGE_KEYS:{SHOW_SYSTEM:"docs-show-system",SIDEBAR_WIDTH:"docs-sidebar-width",CHAT_SIDEBAR_WIDTH:"docs-chat-sidebar-width",CHAT_OPEN:"docs-chat-open",VIEW_MODE:"docs-view-mode",TREE_TYPE:"docs-tree-type",COMPACT_MODE:"docs-compact-mode"},DEFAULTS:{SIDEBAR_WIDTH:280,CHAT_SIDEBAR_WIDTH:320,CHAT_OPEN:!1,VIEW_MODE:"list",TREE_TYPE:"namespace",SHOW_SYSTEM:!1,COMPACT_MODE:!1},CONSTRAINTS:{MIN_SIDEBAR_WIDTH:80,MAX_SIDEBAR_WIDTH:600,MIN_CHAT_WIDTH:240,MAX_CHAT_WIDTH:600,HIGHLIGHT_DURATION:2e3},CSS_CLASSES:{HIGHLIGHT_TARGET:"docs-highlight-target",SIDEBAR_RESIZER_ACTIVE:"docs-sidebar-resizer--active"},SYSTEM_TAG_ID:"globals.tags.system"};function xs(n){return String(n||"").toLowerCase()}function Pp(n){const e=String(n??""),t=e.trim().startsWith(":"),i=t?e.trim().slice(1):e.trim();if(!i)return{isTagSearch:t,groups:[]};const s=i.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=xs(f.slice(1));p&&u.push(p)}else{const p=xs(f);p&&c.push(p)}}),{include:c,exclude:u}}).filter(r=>r.include.length>0||r.exclude.length>0);return{isTagSearch:t,groups:s}}function ex(n,e){if(!e.groups.length)return!0;const t=xs(n.id),i=Array.isArray(n.tags)?n.tags.map(xs):[],s=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=>i.some(f=>f.includes(u))),c=r.exclude.length===0||!r.exclude.some(u=>i.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(s)}function zM(n,e){if(!e.groups.length)return!0;const t=xs(n.label),i=xs(n.elementId||""),s=n.element,r={id:xs(s?.id||i||t),tags:Array.isArray(s?.tags)?s.tags:[]},o=c=>{if(c.include.length===0&&c.exclude.length===0)return!0;if(e.isTagSearch){const u=(r.tags||[]).map(xs),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)||i.includes(p)),f=c.exclude.length===0||!c.exclude.some(p=>t.includes(p)||i.includes(p));return u&&f}};return e.groups.some(o)}const BM=(n,e)=>{const[t,i]=V.useState(e||""),s=V.useMemo(()=>Pp(t),[t]),[r,o]=V.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.SHOW_SYSTEM)==="1"}catch{return Fe.DEFAULTS.SHOW_SYSTEM}});V.useEffect(()=>{i(e||"")},[e]);const c=O=>O?Array.isArray(O?.tags)?O.tags.includes(Fe.SYSTEM_TAG_ID):O?.id===Fe.SYSTEM_TAG_ID:!1,u=O=>{let x=O;return r||(x=x.filter(k=>!c(k))),t&&(x=x.filter(k=>ex({id:String(k.id),tags:k.tags||[]},s))),x},f=V.useMemo(()=>{const O=u(n.getTasks()),x=u(n.getResources()),k=u(n.getEvents()),w=u(n.getHooks()),b=u(n.getMiddlewares());let C=n.getAllTags();if(r||(C=C.filter(S=>!c(S))),t){const S=s.isTagSearch?t.trim().slice(1):t.trim(),Q=Pp(S);C=C.filter(P=>ex({id:P.id,tags:[]},Q))}return{tasks:O,resources:x,events:k,hooks:w,middlewares:b,tags:C,allElements:[...O,...x,...k,...w,...b,...C]}},[n,r,t,s]),p=O=>{o(O);try{localStorage.setItem(Fe.STORAGE_KEYS.SHOW_SYSTEM,O?"1":"0")}catch{}};return{localNamespaceSearch:t,setLocalNamespaceSearch:i,showSystem:r,handleShowSystemChange:p,resetFilters:()=>{i(""),p(!0)},isSystemElement:c,applyFilters:u,...f}},VM=()=>{const[n,e]=V.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.VIEW_MODE)||Fe.DEFAULTS.VIEW_MODE}catch{return Fe.DEFAULTS.VIEW_MODE}}),[t,i]=V.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.TREE_TYPE)||Fe.DEFAULTS.TREE_TYPE}catch{return Fe.DEFAULTS.TREE_TYPE}});return{viewMode:n,treeType:t,handleViewModeChange:o=>{e(o);try{localStorage.setItem(Fe.STORAGE_KEYS.VIEW_MODE,o)}catch{}},handleTreeTypeChange:o=>{i(o);try{localStorage.setItem(Fe.STORAGE_KEYS.TREE_TYPE,o)}catch{}}}},qM=(n=0)=>{const[e,t]=V.useState(()=>{try{return parseInt(localStorage.getItem(Fe.STORAGE_KEYS.SIDEBAR_WIDTH)||Fe.DEFAULTS.SIDEBAR_WIDTH.toString(),10)}catch{return Fe.DEFAULTS.SIDEBAR_WIDTH}}),[i,s]=V.useState(!1),r=V.useRef(null),o=V.useRef(null),c=V.useCallback(p=>{p.preventDefault(),s(!0),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[]),u=V.useCallback(p=>{if(!i)return;const g=p.clientX-n,O=Math.min(Math.max(g,Fe.CONSTRAINTS.MIN_SIDEBAR_WIDTH),Fe.CONSTRAINTS.MAX_SIDEBAR_WIDTH);t(O)},[i,n]),f=V.useCallback(()=>{if(i){s(!1),document.body.style.cursor="",document.body.style.userSelect="";try{localStorage.setItem(Fe.STORAGE_KEYS.SIDEBAR_WIDTH,e.toString())}catch{}}},[i,e]);return V.useEffect(()=>{if(i)return document.addEventListener("mousemove",u),document.addEventListener("mouseup",f),()=>{document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",f)}},[i,u,f]),{sidebarWidth:e,isResizing:i,sidebarRef:r,resizerRef:o,handleMouseDown:c}},YM=n=>{const[e,t]=V.useState(()=>{try{return parseInt(localStorage.getItem(Fe.STORAGE_KEYS.CHAT_SIDEBAR_WIDTH)||Fe.DEFAULTS.CHAT_SIDEBAR_WIDTH.toString(),10)}catch{return Fe.DEFAULTS.CHAT_SIDEBAR_WIDTH}}),[i,s]=V.useState(!1),r=V.useRef(null),o=V.useRef(null),c=V.useCallback(p=>{p.preventDefault(),s(!0),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[]),u=V.useCallback(p=>{if(!i)return;const g=p.clientX-n,O=Math.min(Math.max(g,Fe.CONSTRAINTS.MIN_CHAT_WIDTH),Fe.CONSTRAINTS.MAX_CHAT_WIDTH);t(O)},[i,n]),f=V.useCallback(()=>{if(i){s(!1),document.body.style.cursor="",document.body.style.userSelect="";try{localStorage.setItem(Fe.STORAGE_KEYS.CHAT_SIDEBAR_WIDTH,e.toString())}catch{}}},[i,e]);return V.useEffect(()=>{if(i)return document.addEventListener("mousemove",u),document.addEventListener("mouseup",f),()=>{document.removeEventListener("mousemove",u),document.removeEventListener("mouseup",f)}},[i,u,f]),{chatWidth:e,isResizing:i,sidebarRef:r,resizerRef:o,handleMouseDown:c}};function Qp(n){return n.split(".")}function n1(n){const e=Qp(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 Cp(n){return{folder:"📁",task:"⚙️",resource:"🔧",event:"📡",hook:"🪝",middleware:"🔗",tag:"🏷️"}[n]||"📄"}function i1(n){const e=new Map;n.forEach(s=>{const r=Qp(s.id),o=n1(s);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:Cp(O),children:[],elementId:g?s.id:void 0,element:g?s:void 0,isExpanded:!1};if(u.set(c,x),f>0){const k=r.slice(0,f).join("."),w=e.get(k);w&&!w.children.find(b=>b.id===c)&&w.children.push(x)}}u=e}});const t=Array.from(e.values()).filter(s=>Qp(s.id).length===1),i=s=>s.map(r=>({...r,children:i(r.children),count:r.type==="folder"?s1(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 i(t)}function s1(n){return n.children.length===0?1:n.children.reduce((e,t)=>e+s1(t),0)}function WM(n){const e=new Map;n.forEach(i=>{const s=n1(i);e.has(s)||e.set(s,[]),e.get(s).push(i)});const t=[];return e.forEach((i,s)=>{const r=i1(i),o=`type:${s}`,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:s,label:tx(s+"s"),type:"folder",icon:Cp(s),children:c(r[0].children),count:i.length,isExpanded:!1}):t.push({id:s,label:tx(s+"s"),type:"folder",icon:Cp(s),children:c(r),count:i.length,isExpanded:!1})}),t.sort((i,s)=>i.label.localeCompare(s.label))}function UM(n,e){if(!e.trim())return n;const t=Pp(e),i=s=>{const r=zM({label:s.label,elementId:s.elementId,element:s.element},t),o=s.children.map(i).filter(c=>c!==null);return r||o.length>0?{...s,children:o,isExpanded:o.length>0}:null};return n.map(i).filter(s=>s!==null)}function r1(n,e,t){return n.map(i=>i.id===e?{...i,isExpanded:t!==void 0?t:!i.isExpanded}:i.children.length>0?{...i,children:r1(i.children,e,t)}:i)}function tx(n){return n.charAt(0).toUpperCase()+n.slice(1)}const GM=(n,e,t,i,s)=>{const[r,o]=V.useState([]);V.useEffect(()=>{let f;e==="namespace"?f=i1(n):f=WM(n),t&&(f=UM(f,t)),o(f)},[n,e,t]);const c=f=>{if(!f.elementId)return;const p=`element-${f.elementId}`;window.location.hash===`#${p}`?document.getElementById(p)?.scrollIntoView({behavior:"instant",block:"start"}):window.location.hash=`#${p}`;const g=document.getElementById(p);g&&(g.classList.add(Fe.CSS_CLASSES.HIGHLIGHT_TARGET),setTimeout(()=>{g.classList.remove(Fe.CSS_CLASSES.HIGHLIGHT_TARGET)},Fe.CONSTRAINTS.HIGHLIGHT_DURATION))},u=(f,p)=>{o(g=>r1(g,f,p))};return V.useEffect(()=>{const f=()=>{const p=window.location.hash;if(p.startsWith("#element-")&&t){const g=p.substring(9),O=i.getAll(),x=[...s.tasks,...s.resources,...s.events,...s.hooks,...s.middlewares,...s.tags];O.some(k=>k.id===g),x.some(k=>k.id===g)}};return window.addEventListener("hashchange",f),f(),()=>{window.removeEventListener("hashchange",f)}},[t,s,i]),{treeNodes:r,handleTreeNodeClick:c,handleToggleExpansion:u}};function nx(n,e){const[t,i]=V.useState(n);return V.useEffect(()=>{const s=window.setTimeout(()=>i(n),e);return()=>window.clearTimeout(s)},[n,e]),t}const HM=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:"tags",label:"Tags",icon:"🏷️",count:n.tags,hasContent:n.tags>0}].filter(t=>t.hasContent),Lr=["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(`
356
- `),KM=`
357
- query UniversalElementFile($idIncludes: ID!, $startLine: Int, $endLine: Int) {
358
- all(idIncludes: $idIncludes) {
359
- id
360
- filePath
361
- fileContents(startLine: $startLine, endLine: $endLine)
362
- __typename
363
- }
364
- }
365
- `;async function JM(n,e,t){try{const r=(await rn(KM,{idIncludes:n})).all||[],o=r.find(c=>c.id===n);return o||(r.length>0?r[0]:null)}catch(i){return console.error(`Failed to fetch file contents for element: ${n}`,i),null}}const e2=(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 i=t,s=c=>c.startsWith("@")?c.slice(1):c,r=async c=>{const u=s(c);return await JM(u)};return(await Promise.all(i.items.map(c=>r(c)))).map((c,u)=>c??{id:i.items[u],filePath:null,fileContents:null})}},{name:"graphql_query",description:["Execute a GraphQL query against the app's /graphql endpoint."].join(`
366
- `),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 i=t||{};if(!i.query||typeof i.query!="string")return{error:"Missing 'query' string"};let s;if(typeof i.variables=="string")try{s=JSON.parse(i.variables)}catch{return{error:"Invalid JSON in 'variables'"}}else i.variables&&typeof i.variables=="object"&&!Array.isArray(i.variables)&&(s=i.variables);return{data:await rn(i.query,s)}}}];function ix(n,e){n(t=>{const i=t.toolCalls||[],s=e.index,r=i[s],o=e.function?.name||r?.name,c=(r?.argsPreview||"")+(e.function?.arguments||""),u=i.slice();return u[s]={id:e.id||r?.id||String(s),name:o,argsPreview:c,status:"running"},{...t,thinkingStage:"processing",toolCalls:u}})}function sx(n,e){n(t=>({...t,thinkingStage:"processing",toolCalls:e.map((i,s)=>({id:i.id||String(s),name:i.name,argsPreview:i.argsText||"",status:"pending"}))}))}function Nc(n,e,t,i){n(s=>({...s,toolCalls:(s.toolCalls||[]).map((r,o)=>o===e?{...r,status:t,...i?{resultPreview:i}:{}}:r)}))}function rx(n){n(e=>{const t=e.toolCalls||[];if(!t.length)return e;let i;for(let o=e.messages.length-1;o>=0;o--){const c=e.messages[o];if(c.author==="bot"&&c.type==="text"){i=o;break}}if(i===void 0)return e;const s=e.messages.slice(),r=s[i];return s[i]={...r,toolCalls:t.map(o=>({id:o.id,name:o.name,argsPreview:o.argsPreview,resultPreview:o.resultPreview}))},{...e,messages:s}})}function lx(n,e){n(t=>({...t,messages:[...t.messages,{id:e,author:"bot",type:"text",text:"",timestamp:Date.now(),toolCalls:(t.toolCalls||[]).map(i=>({id:i.id,name:i.name,argsPreview:i.argsPreview,resultPreview:i.resultPreview}))}]}))}const l1={openaiApiKey:null,model:"gpt-5-mini",stream:!0,responseMode:"text",baseUrl:"https://api.openai.com",enableShortcuts:!0,showTokenMeter:!0,virtualizeMessages:!1},Di={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:l1,canStop:!1,lastUsage:null,chatContext:{include:{runner:!1,runnerDev:!1,schema:!1,projectOverview:!1}}},t2=n=>{const[e,t]=V.useState(Di),i=V.useRef(null),s=V.useRef(null),r=V.useRef({runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null});V.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]),V.useEffect(()=>{const S=iA();S&&S.length>0&&t(_=>({..._,messages:S}));const Q=mm();Q&&t(_=>({..._,settings:{...l1,...Q}}));const P=lA();P&&P.include&&t(_=>({..._,chatContext:{include:{..._.chatContext?.include,...P.include}}}))},[]),V.useEffect(()=>{const S=setTimeout(()=>{nA(e.messages)},1e3);return()=>clearTimeout(S)},[e.messages]),V.useEffect(()=>{rA(e.chatContext||null)},[e.chatContext]),V.useEffect(()=>()=>{i.current&&window.clearTimeout(i.current),s.current&&s.current.abort()},[]),V.useEffect(()=>{const S=e.deepImpl;if(!S?.enabled||!S.auto?.running||e.isTyping||e.canStop)return;if((S.todo||[]).every(G=>{const H=D=>{const ee=D.status==="done"||D.status==="error",q=Array.isArray(D.children)?D.children:[];return ee&&q.every(H)};return H(G)})||S.flowStage==="done"||S.flowStage==="patch.ready"){t(G=>({...G,deepImpl:{...G.deepImpl||Di.deepImpl,auto:{running:!1}}}));return}const P=S.budget?.totalTokens??65500,_=S.budget?.usedApprox??0,T=S.budget?.reserveOutput??2e3,A=S.budget?.reserveSafety??1500;if(Math.max(0,P-_-T-A)<=0){t(G=>({...G,deepImpl:{...G.deepImpl||Di.deepImpl,auto:{running:!1}},messages:[...G.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 z=["DEEPIMPL_CONTINUE","Proceed with the next actionable step.","If TODOs are complete, move to implement or finalize patch."].join(`
367
- `);u(z)},[e.deepImpl,e.isTyping,e.canStop]);const o=V.useCallback(S=>{t(Q=>{const P={...Q,settings:{...Q.settings,...S}};return sA(P.settings),P})},[]),c=V.useCallback(S=>{const Q={id:`error-${Date.now()}`,author:"bot",type:"text",text:S,timestamp:Date.now()};t(P=>({...P,messages:[...P.messages,Q],isTyping:!1,thinkingStage:"none",canStop:!1}))},[]),u=V.useCallback(async(S,Q)=>{const{settings:P}=e;if(!P.openaiApiKey){c("❌ OpenAI API key is required. Please configure it in the settings to use the AI assistant.");return}s.current=new AbortController;const _=`b-${Date.now()}`;t(D=>({...D,isTyping:!0,thinkingStage:"thinking",toolCalls:[],canStop:!0,messages:[...D.messages,{id:_,author:"bot",type:"text",text:"",timestamp:Date.now()}]}));let T="",A={promptTokens:0,completionTokens:0,totalTokens:0};const J=e.messages.filter(D=>D.type==="text").map(D=>({role:D.author==="user"?"user":"assistant",content:D.text||""})),z=[...e2()],G=NA(z),H=Fy();try{const D={runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},q=/@docs\.(runner|schema|runnerDev|projectOverview)\b/.test(S);q&&console.log("[chat] @docs tokens detected in input, include flags:",e.chatContext?.include||{});const ue=HE(S,D);q&&console.log("[chat] expandDocsInMessage applied:",{originalLength:S.length,expandedLength:ue.modelText.length});const ve=gf(Lr,Q??(e.chatContext?.include||{}),J,ue.modelText,D),de=async()=>{const X=H.list();if(X.length!==0)try{const L={role:"assistant",tool_calls:X.map((ie,he)=>({id:ie.id||`call_${he}`,type:"function",function:{name:ie.name,arguments:ie.argsText}}))};sx(t,X);const N=[];for(let ie=0;ie<X.length;ie++){const he=X[ie],pe=z.find(Ye=>Ye.name===he.name);if(!pe)continue;let Qe={};try{Qe=he.argsText?JSON.parse(he.argsText):{}}catch{}Nc(t,ie,"running");const De=await pe.run(Qe);Nc(t,ie,"done",JSON.stringify(De,null,2)),N.push({role:"tool",content:JSON.stringify(De),tool_call_id:he.id,name:he.name})}const j=`b-${Date.now()}-2`;t(ie=>{const pe=(ie.messages.find(Qe=>Qe.id===_)?.text||"").trim().length>0?ie.messages:ie.messages.filter(Qe=>Qe.id!==_);return{...ie,messages:pe}}),lx(t,j);let I="";const se=[...gf(Lr,Q??(e.chatContext?.include||{}),J,ue.modelText,D),L,...N],K=Fy();await Yc({settings:P,messages:se,tools:G,tool_choice:"auto",temperature:.2,response_format:P.responseMode==="json"?{type:"json_object"}:void 0,signal:s.current?.signal},{onTextDelta:ie=>{I+=ie,t(he=>({...he,messages:he.messages.map(pe=>pe.id===j?{...pe,text:I}:pe)}))},onToolCallDelta:ie=>{K.accept(ie),ix(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||Di.deepImpl,budget:{...he.deepImpl?.budget||Di.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:async()=>{rx(t);const ie=K.list();if(ie.length>0)try{const he={role:"assistant",tool_calls:ie.map((Re,ze)=>({id:Re.id||`call2_${ze}`,type:"function",function:{name:Re.name,arguments:Re.argsText}}))};sx(t,ie);const pe=[];for(let Re=0;Re<ie.length;Re++){const ze=ie[Re],ft=z.find(rr=>rr.name===ze.name);if(!ft)continue;let jt={};try{jt=ze.argsText?JSON.parse(ze.argsText):{}}catch{}Nc(t,Re,"running");const Yi=await ft.run(jt);Nc(t,Re,"done",JSON.stringify(Yi,null,2)),pe.push({role:"tool",content:JSON.stringify(Yi),tool_call_id:ze.id,name:ze.name})}const Qe=`b-${Date.now()}-3`;lx(t,Qe);let De="";const Ye=[...gf(Lr,Q??(e.chatContext?.include||{}),J,ue.modelText,D),he,...pe];await Yc({settings:P,messages:Ye,temperature:.2,response_format:P.responseMode==="json"?{type:"json_object"}:void 0,signal:s.current?.signal},{onTextDelta:Re=>{De+=Re,t(ze=>({...ze,messages:ze.messages.map(ft=>ft.id===Qe?{...ft,text:De}:ft)}))},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(ze=>({...ze,lastUsage:{...A},deepImpl:{...ze.deepImpl||Di.deepImpl,budget:{...ze.deepImpl?.budget||Di.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:()=>{rx(t),setTimeout(()=>{const ze=[...e.messages].reverse().find(jt=>jt.author==="bot"&&jt.type==="text");(!ze||!(ze.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 ze=Re?.message||String(Re);t(ft=>({...ft,isTyping:!1,thinkingStage:"none",canStop:!1,messages:ft.messages.map(jt=>jt.id===j?{...jt,text:(jt.text||"")+(ze?`
368
-
369
- ❌ Error: ${ze}`:"")}:jt)}))}})}catch(he){const pe=`❌ Tool execution failed: ${String(he)}`,Qe=I.endsWith(`
370
- `)?"":`
371
-
372
- `,De=I+Qe+pe;t(Ye=>({...Ye,messages:Ye.messages.map(Re=>Re.id===j?{...Re,text:De}:Re),toolCalls:(Ye.toolCalls||[]).map(Re=>Re.status==="running"||Re.status==="pending"?{...Re,status:"error"}:Re)}))}},onError:ie=>{const he=ie?.message||String(ie);t(pe=>({...pe,isTyping:!1,thinkingStage:"none",canStop:!1,messages:pe.messages.map(Qe=>Qe.id===j?{...Qe,text:(Qe.text||"")+(he?`
373
-
374
- ❌ Error: ${he}`:"")}:Qe)}))}})}catch(L){const N=`❌ Tool execution failed: ${String(L)}`,j=T.endsWith(`
375
- `)?"":`
376
-
377
- `,I=T+j+N;t(se=>({...se,messages:se.messages.map(K=>K.id===_?{...K,text:I}:K),toolCalls:(se.toolCalls||[]).map(K=>K.status==="running"||K.status==="pending"?{...K,status:"error"}:K)}))}};await Yc({settings:P,messages:ve,tools:G,tool_choice:"auto",response_format:P.responseMode==="json"?{type:"json_object"}:void 0,signal:s.current?.signal},{onTextDelta:X=>{T+=X,t(L=>({...L,thinkingStage:"generating",messages:L.messages.map(N=>N.id===_?{...N,text:T}:N)}))},onToolCallDelta:X=>{H.accept(X),ix(t,X)},onUsage:X=>{A={promptTokens:A.promptTokens+(X.prompt_tokens||0),completionTokens:A.completionTokens+(X.completion_tokens||0),totalTokens:A.totalTokens+(X.total_tokens||0)},t(L=>({...L,lastUsage:{...A},deepImpl:{...L.deepImpl||Di.deepImpl,budget:{...L.deepImpl?.budget||Di.deepImpl.budget,usedApprox:A.totalTokens}}}))},onFinish:async(X,L)=>{},onError:X=>{const L=X?.message||String(X);t(N=>({...N,isTyping:!1,thinkingStage:"none",canStop:!1,messages:N.messages.map(j=>j.id===_?{...j,text:(j.text||"")+(L?`
378
-
379
- ❌ Error: ${L}`:"")}:j)}))}}),await de(),t(X=>({...X,isTyping:!1,thinkingStage:"none",canStop:!1}))}catch(D){D.name==="AbortError"?t(ee=>({...ee,isTyping:!1,thinkingStage:"none",toolCalls:[],canStop:!1,messages:ee.messages.map(q=>q.id===_?{...q,text:"❌ Request stopped by user"}:q)})):t(ee=>({...ee,isTyping:!1,thinkingStage:"none",toolCalls:[],canStop:!1,messages:ee.messages.map(q=>q.id===_?{...q,text:`❌ Error: ${D?.message||"Failed to contact OpenAI"}`}:q)}))}},[e,c]),f=V.useCallback(()=>{const S=e.inputValue.trim();if(!S)return;try{const P=e.messages.filter(T=>T.type==="text").map(T=>T.text||""),_=Of(Lr,P,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(T=>({...T,preflightContext:{system:_.system,history:_.history,input:_.input,tokens:_.total}}))}catch{}const Q={id:`m-${Date.now()}`,author:"user",type:"text",text:S,timestamp:Date.now()};t(P=>({...P,messages:[...P.messages,Q],inputValue:""})),u(S)},[e.inputValue,u]),p=V.useCallback((S,Q,P)=>{if(!S.trim())return;try{const T=e.messages.filter(J=>J.type==="text").map(J=>J.text||""),A=Of(Lr,T,e.inputValue||"",{runnerAiMd:n?.docs?.runnerAiMd||null,graphqlSdl:n?.docs?.graphqlSdl||null,runnerDevMd:n?.docs?.runnerDevMd||null,projectOverviewMd:n?.docs?.projectOverviewMd||null},e.chatContext?.include||{});t(J=>({...J,preflightContext:{system:A.system,history:A.history,input:A.input,tokens:A.total}}))}catch{}const _={id:`m-${Date.now()}`,author:"user",type:"text",text:Q||S.trim(),timestamp:Date.now()};t(T=>({...T,messages:[...T.messages,_],inputValue:""})),u(S.trim(),P)},[u,e.messages,e.inputValue,n?.docs]),g=V.useCallback(async(S,Q)=>{const P=S??e.settings.openaiApiKey;return P?EA({apiKey:P,model:e.settings.model,baseUrl:Q??e.settings.baseUrl??"https://api.openai.com"}):{ok:!1,error:"Missing API key"}},[e.settings.model,e.settings.openaiApiKey,e.settings.baseUrl]),O=V.useCallback(()=>{s.current&&(s.current.abort(),s.current=null),i.current&&(window.clearTimeout(i.current),i.current=null)},[]),x=V.useCallback(()=>{localStorage.removeItem("chat-sidebar-history"),oA(),t(S=>({...S,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=V.useCallback(()=>{const S=e.messages,Q=S.map(T=>T.author).lastIndexOf("user");if(Q===-1)return;const P=S[Q],_=S.slice(0,Q+1);t(T=>({...T,messages:_})),u(P.text)},[e.messages,u]);V.useMemo(()=>e.inputValue||"",[e.inputValue]);const w=e.messages.filter(S=>S.type==="text").filter(S=>S.id!=="welcome").map(S=>S.text||""),b=Of(Lr,w,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||{}),C=(()=>{const S=(e.inputValue||"").trim().length>0,Q=!!(e.chatContext?.include?.runner||e.chatContext?.include?.runnerDev||e.chatContext?.include?.schema||e.chatContext?.include?.projectOverview);if(!(w.length>0)&&!S&&!Q&&!e.isTyping)return{mode:"context",total:b.system,breakdown:{system:b.system,history:0,input:0}};if(e.isTyping){const _=e.preflightContext;return{mode:"context",total:_?.tokens??b.total,breakdown:_?{system:_.system,history:_.history,input:_.input}:{system:b.system,history:b.history,input:b.input}}}return S||!e.lastUsage?{mode:"context",total:b.total,breakdown:{system:b.system,history:b.history,input:b.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:C}},n2=({settings:n,onSave:e,onTest:t,onClearKey:i})=>{const s=V.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}}=Mw({defaultValues:s});oe.useEffect(()=>{c(s)},[s,c]);const[p,g]=V.useState("idle"),[O,x]=V.useState(void 0),k=w=>{const b={openaiApiKey:w.openaiApiKey||null,baseUrl:w.baseUrl||"https://api.openai.com",model:w.model,stream:n.stream,responseMode:n.responseMode,enableShortcuts:n.enableShortcuts,showTokenMeter:n.showTokenMeter,virtualizeMessages:n.virtualizeMessages};e(b)};return h.jsxs(qc,{className:"dark-mode",onSubmit:o(k),children:[h.jsxs(h.Fragment,{children:[h.jsx(Ii,{label:"OpenAI API Key",htmlFor:"openai-key",hint:"Stored locally in your browser via localStorage.",children:h.jsx(Rw,{id:"openai-key",placeholder:"sk-...",...r("openaiApiKey")})}),h.jsx(Ii,{label:"OpenAI Base URL",htmlFor:"openai-base",hint:"For proxies or Azure-hosted endpoints.",children:h.jsx(Ws,{id:"openai-base",placeholder:"https://api.openai.com",...r("baseUrl")})}),h.jsx(Ii,{label:"Model",htmlFor:"openai-model",hint:"Example: gpt-5-mini",children:h.jsx(Ws,{id:"openai-model",...r("model")})})]}),h.jsxs(TA,{children:[h.jsx("button",{type:"submit",className:"btn btn--primary",title:"Save settings",children:"Save"}),h.jsx("button",{type:"button",onClick:()=>{c(s),u("openaiApiKey",s.openaiApiKey),u("baseUrl",s.baseUrl),u("model",s.model)},className:"btn",title:"Reset",children:"Reset"}),h.jsx("button",{type:"button",onClick:async()=>{g("testing"),x(void 0);const w=document.getElementById("openai-key")?.value||s.openaiApiKey,b=document.getElementById("openai-base")?.value||s.baseUrl,C=await t(w,b);C.ok?g("ok"):(g("error"),x(C.error))},className:"btn",title:"Test connection",children:p==="testing"?"Testing…":"Test"}),h.jsx("button",{type:"button",onClick:()=>{i();const w={...s,openaiApiKey:""};c(w),u("openaiApiKey",""),g("idle"),x(void 0)},className:"btn",title:"Clear API key",children:"Clear"}),h.jsx("span",{className:`status ${p==="ok"?"status--ok":p==="error"?"status--error":""}`,children:p==="ok"?"Connected":p==="error"?"Error":""})]}),p==="error"&&O&&h.jsx("div",{className:"form__error",children:O})]})},i2=({chatState:n,setChatState:e,sendMessage:t,sendMessageWithText:i,stopRequest:s,onTaggedElementSelect:r,availableElements:o,retryLastResponse:c,canRetry:u,docsRunner:f,docsSchema:p,docsProjectOverview:g,docsRunnerDev:O})=>{const x=V.useRef(null),[k,w]=V.useState([]),[b,C]=V.useState(!1),[S,Q]=V.useState(-1),[P,_]=V.useState(""),[T,A]=V.useState(-1),[J,z]=V.useState(!1),[G,H]=V.useState(!1);V.useEffect(()=>{x.current&&setTimeout(()=>{x.current?.focus()},100)},[]);const D=V.useCallback(async()=>{if(!(!n.inputValue.trim()||n.isTyping||J)){z(!0);try{const L=n.inputValue,N=/\s*@docs\.(runnerDev|runner|schema|projectOverview|fullContext|clear)\b/g,j=[];L.replace(N,K=>(j.push(K.trim()),K)),j.length>0&&e(K=>{const ie={...K.chatContext?.include||{}};let he=!1;for(const pe of j){if(pe.endsWith("clear")){ie.runner=!1,ie.runnerDev=!1,ie.schema=!1,ie.projectOverview=!1,he=!0;continue}pe.endsWith("runner")&&(ie.runner=!0),pe.endsWith("runnerDev")&&(ie.runnerDev=!0),pe.endsWith("schema")&&(ie.schema=!0),pe.endsWith("projectOverview")&&(ie.projectOverview=!0),pe.endsWith("fullContext")&&(ie.runner=!0,ie.schema=!0,ie.projectOverview=!0)}return{...K,chatContext:{include:ie}}});const I=L.replace(N," ").replace(/\s{2,}/g," ").trim(),se=j.length>0?(()=>{const K={...n.chatContext?.include||{}};let ie=!1;for(const he of j){if(he.endsWith("clear")){K.runner=!1,K.runnerDev=!1,K.schema=!1,K.projectOverview=!1,ie=!0;continue}he.endsWith("runner")&&(K.runner=!0),he.endsWith("runnerDev")&&(K.runnerDev=!0),he.endsWith("schema")&&(K.schema=!0),he.endsWith("projectOverview")&&(K.projectOverview=!0),he.endsWith("fullContext")&&(K.runner=!0,K.schema=!0,K.projectOverview=!0)}return K})():void 0;if(j.length>0){const K=j.filter(pe=>!pe.endsWith("clear")).map(pe=>pe.includes("fullContext")?"Full Context (Runner + Project Overview + GraphQL Schema)":pe.includes("projectOverview")?"Project Overview":pe.endsWith("runnerDev")?"Runner-Dev":pe.endsWith("runner")?"Runner":pe.endsWith("schema")?"GraphQL Schema":pe.replace(/^@docs\./,""));if(I.length===0){e(Qe=>({...Qe,messages:[...Qe.messages,{id:`ctx-${Date.now()}`,author:"bot",type:"text",text:K.length>0?`Context updated: ${K.join(", ")}`:"Context cleared.",timestamp:Date.now()}],inputValue:""}));const pe=`Please read the provided docs context and give a concise, high-signal summary covering the most relevant points for development. Context enabled: ${K.join(", ")}.`;i(pe,L,se);return}const ie=I.trim().toLowerCase();if(/^(read|read it|read them|read this|summarize|summary)$/i.test(ie)){const pe=`Please read the provided docs context and give a concise, high-signal summary covering the most relevant points for development. Context enabled: ${K.join(", ")}.`;i(pe,L,se);return}}i(I,L,se)}finally{z(!1)}}},[n.inputValue,n.isTyping,J,i,e]),ee=V.useCallback(L=>{if(L.length===0)return[];const N=L.toLowerCase(),j=[];if(N.startsWith("docs")){let I=N.substring(4);I.startsWith(".")&&(I=I.substring(1)),de.forEach(se=>{const K=se.id.replace("docs.",""),ie=se.id;(I===""||K.toLowerCase().includes(I)||ie.toLowerCase().includes(N))&&j.push({id:se.id,name:se.id,type:"docs",title:se.title,description:se.description})})}else o&&Object.entries(o).forEach(([I,se])=>{se.forEach(K=>{K.name.toLowerCase().includes(N)&&j.push({id:K.id,name:K.name,type:I.slice(0,-1),title:K.title,description:K.description})})});return j.sort((I,se)=>{const K=I.name.toLowerCase(),ie=se.name.toLowerCase();return K===N?-1:ie===N?1:K.startsWith(N)&&!ie.startsWith(N)?-1:ie.startsWith(N)&&!K.startsWith(N)?1:K.localeCompare(ie)}).slice(0,10)},[o]),q=V.useCallback(L=>{const N=L.target.value,j=L.target.selectionStart;e(K=>({...K,inputValue:N}));const I=N.substring(0,j),se=I.lastIndexOf("@");if(se!==-1){const K=I.substring(se+1);if(/\s/.test(K))C(!1);else{const he=K,pe=ee(he);w(pe),C(pe.length>0),_(he),A(se),Q(-1)}}else C(!1)},[e,ee]),ue=V.useCallback(L=>{if(T===-1)return;const N=n.inputValue,j=N.substring(0,T),I=N.substring(T+1+P.length),se=`${j}@${L.name} ${I}`;e(ie=>({...ie,inputValue:se})),C(!1);const K=j.length+1+L.name.length+1;setTimeout(()=>{x.current&&(x.current.setSelectionRange(K,K),x.current.focus())},0)},[n.inputValue,T,P,e,r]),ve=V.useCallback(L=>{if(b&&k.length>0){if(L.key==="ArrowDown"){L.preventDefault(),Q(N=>N<k.length-1?N+1:0);return}if(L.key==="ArrowUp"){L.preventDefault(),Q(N=>N>0?N-1:k.length-1);return}if((L.key==="Enter"||L.key==="Tab")&&S>=0){L.preventDefault(),ue(k[S]);return}if(L.key==="Escape"){L.preventDefault(),C(!1);return}}if(L.key==="Enter"&&(L.ctrlKey||L.metaKey))L.preventDefault(),D();else if(L.key==="Enter"&&!L.shiftKey&&!b)L.preventDefault(),D();else if(L.key==="Escape")n.canStop?(L.preventDefault(),s()):n.inputValue===""&&x.current?.blur();else if(L.key==="ArrowUp"&&n.inputValue===""&&!b){const N=[...n.messages].reverse().find(j=>j.author==="user"&&j.type==="text");N&&N.type==="text"&&e(j=>({...j,inputValue:N.text}))}},[b,k,S,ue,D,n.canStop,n.inputValue,n.messages,e,s]);V.useEffect(()=>{const L=N=>{N.target?.closest?.(".chat-input-container")||(C(!1),H(!1))};if(b||G)return document.addEventListener("click",L),()=>document.removeEventListener("click",L)},[b,G]);const de=[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),X=L=>{const N=x.current,j=`@${L}`;e(I=>{const se=I.inputValue||"";if(!N){const ze=se?`${se} ${j} `:`${j} `;return{...I,inputValue:ze}}const K=N.selectionStart??se.length,ie=N.selectionEnd??K,he=se.slice(0,K),pe=se.slice(ie),Qe=he.length>0&&!/\s$/.test(he),De=pe.length===0||!/^\s/.test(pe),Ye=`${Qe?" ":""}${j}${De?" ":""}`,Re=`${he}${Ye}${pe}`;return setTimeout(()=>{try{const ze=(he+Ye).length;N.focus(),N.setSelectionRange(ze,ze)}catch{}},0),{...I,inputValue:Re}})};return h.jsxs("div",{className:"docs-chat-input",children:[h.jsxs("div",{className:"chat-input-container",children:[h.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:q,onKeyDown:ve,autoComplete:"off",autoCorrect:"off",spellCheck:!1,className:"chat-main-input",rows:3}),b&&k.length>0&&h.jsx("div",{className:"chat-suggestions-dropdown",children:k.map((L,N)=>h.jsxs("div",{className:`chat-suggestion-item ${N===S?"selected":""}`,onClick:()=>ue(L),children:[h.jsxs("div",{className:"suggestion-header",children:[h.jsx("span",{className:"suggestion-type",children:L.type}),h.jsx("span",{className:"suggestion-name",children:L.name})]}),(L.title||L.description)&&h.jsxs("div",{className:"suggestion-meta",children:[L.title&&h.jsx("div",{className:"suggestion-title",children:L.title}),L.description&&h.jsx("div",{className:"suggestion-description",children:L.description})]})]},`${L.type}-${L.id}`))}),h.jsxs("div",{className:"chat-button-group",children:[h.jsxs("div",{className:"docs-insert-wrapper",children:[h.jsx("button",{onClick:()=>H(L=>!L),className:"chat-insert-btn docs-insert-btn",title:"Add context",disabled:de.length===0,children:h.jsx("span",{className:"insert-icon",children:"+"})}),G&&de.length>0&&h.jsx("div",{className:"chat-docs-menu",children:de.map(L=>h.jsxs("button",{className:"chat-docs-menu__item",onClick:()=>{X(L.id),H(!1),setTimeout(()=>x.current?.focus(),0)},children:[h.jsx("div",{className:"chat-docs-menu__item-title",children:L.title}),h.jsx("div",{className:"chat-docs-menu__item-desc",children:L.description}),h.jsxs("div",{className:"chat-docs-menu__item-id",children:["@",L.id]})]},L.id))})]}),n.canStop?h.jsx("button",{onClick:s,className:"chat-send-btn chat-send-btn--stop",title:"Stop generating response",children:h.jsx("span",{className:"send-text",children:"Stop"})}):h.jsxs(h.Fragment,{children:[u&&h.jsx("button",{onClick:c,className:"chat-send-btn chat-send-btn--retry",disabled:n.isTyping||J,title:"Retry last response",children:h.jsx("span",{className:"send-text",children:"↻"})}),h.jsx("button",{onClick:D,className:"chat-send-btn",disabled:!n.inputValue.trim()||n.isTyping||J,title:"Send message (Enter or Ctrl+Enter)",children:h.jsx("span",{className:"send-text",children:J?"Processing...":"Send"})})]})]})]}),h.jsx("div",{className:"chat-input-hints",children:h.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"]})})]})},s2=({children:n,onClickOutside:e,className:t="",style:i,enabled:s=!0})=>{const r=V.useRef(null);return V.useEffect(()=>{if(!s)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)}},[s,e]),h.jsx("div",{ref:r,className:t,style:i,children:n})};function r2(n,e){return V.useMemo(()=>n.filter(t=>!(e&&t.author==="bot"&&t.type==="text"&&!t.text.trim())),[n,e])}function l2(n,e){const[t,i]=V.useState(!0),s=V.useRef(null),r=V.useRef(!1),o=V.useRef(!1),c=V.useCallback(()=>{const u=n.current;u&&(u.scrollTop=u.scrollHeight)},[n]);return V.useEffect(()=>{if(r.current)return;r.current=!0;const u=requestAnimationFrame(()=>{c();const f=requestAnimationFrame(()=>c());s.current=f});return s.current=u,()=>{s.current&&cancelAnimationFrame(s.current),s.current=null}},[]),V.useEffect(()=>{const u=n.current;if(!u)return;const f=()=>{const g=u.scrollHeight-u.scrollTop-u.clientHeight<=32;i(g)};return f(),u.addEventListener("scroll",f,{passive:!0}),()=>u.removeEventListener("scroll",f)},[n]),V.useEffect(()=>{if(!o.current)return o.current=!0,s.current&&cancelAnimationFrame(s.current),s.current=requestAnimationFrame(()=>{c(),Promise.resolve().then(()=>c())}),()=>{s.current&&cancelAnimationFrame(s.current),s.current=null};if(t)return s.current&&cancelAnimationFrame(s.current),s.current=requestAnimationFrame(()=>{c(),Promise.resolve().then(()=>c())}),()=>{s.current&&cancelAnimationFrame(s.current),s.current=null}},[t,c,...e]),{isAtBottom:t,scrollToBottom:c}}const o1=({calls:n,showStatus:e=!0,onOpenArguments:t,onOpenResponse:i})=>{const s=(n||[]).filter(Boolean);return s.length?h.jsx("div",{className:"tool-calls-list",children:s.map((r,o)=>h.jsx("div",{className:`tool-call${r.status?` tool-call--${r.status}`:""}`,children:h.jsxs("div",{className:"tool-call-row",children:[e&&h.jsx("div",{className:`tool-call-badge tool-call-badge--${r.status||"pending"}`,children:r.status||"pending"}),h.jsxs("div",{className:"tool-call-info",children:[h.jsx("div",{className:"tool-call-name",children:r.name||"tool"}),h.jsxs("div",{className:"tool-call-actions",children:[h.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"}),h.jsx("button",{className:"tool-call-link",onClick:()=>r.resultPreview&&i?.(`${r.name||"tool"} — Response`,r.resultPreview),disabled:!r.resultPreview,"aria-disabled":!r.resultPreview,children:"Response"})]})]})]})},r.id||o))}):null},o2=oe.memo(({message:n,onOpenFile:e,onOpenDiff:t})=>{const[i,s]=oe.useState(!1),[r,o]=oe.useState(!1),[c,u]=oe.useState(""),[f,p]=oe.useState(""),g=n.author==="bot"&&n.type==="text",O=g?n.text:"",x=oe.useCallback(async k=>{if(k)try{if(navigator?.clipboard?.writeText)await navigator.clipboard.writeText(k);else{const w=document.createElement("textarea");w.value=k,w.className="clipboard-textarea",document.body.appendChild(w),w.focus(),w.select(),document.execCommand("copy"),document.body.removeChild(w)}s(!0),setTimeout(()=>s(!1),1500)}catch{}},[]);return h.jsxs("div",{className:`chat-message chat-message--${n.author}`,children:[h.jsxs("div",{className:"chat-message-header",children:[h.jsx("span",{className:"chat-message-author",children:n.author==="user"?"You":"AI"}),h.jsx("span",{className:"chat-message-time"})]}),h.jsxs("div",{className:"chat-bubble",children:[n.type==="text"&&h.jsx("div",{className:"message-text",children:n.author==="bot"?h.jsx(t1,{content:n.text}):tA(n.text).map((k,w)=>h.jsx("span",{children:k.type==="text"?k.content:h.jsxs("button",{className:"file-reference-btn",onClick:b=>{b.stopPropagation(),e({fileName:k.content,content:`// File: ${k.content}
380
- // This is a simulated file view
381
- // In production, this would load the actual file content`,language:"typescript"},`File: ${k.content}`)},children:["[",k.content,"]"]})},w))}),n.author==="bot"&&n.type==="text"&&(()=>{const w=n.toolCalls||[];return w.length?h.jsxs("details",{className:"message-tool-calls",children:[h.jsxs("summary",{children:["Used tools (",w.length,")"]}),h.jsx("div",{className:"tool-calls-content",children:h.jsx(o1,{calls:w,showStatus:!1,onOpenArguments:(b,C)=>{u(b),p(C),o(!0)},onOpenResponse:(b,C)=>{u(b),p(C),o(!0)}})})]}):null})(),n.type==="file"&&h.jsxs("div",{className:"message-file",children:[n.text&&h.jsx("div",{className:"message-text",children:n.text}),h.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:[h.jsxs("div",{className:"file-header",children:[h.jsx("span",{className:"file-icon",children:"📄"}),h.jsx("span",{className:"file-name",children:n.file.fileName})]}),h.jsxs("div",{className:"file-snippet",children:[n.file.content.split(`
382
- `).slice(0,3).join(`
383
- `),n.file.content.split(`
384
- `).length>3&&`
385
- ...`]})]})]}),n.type==="diff"&&h.jsxs("div",{className:"message-diff",children:[n.text&&h.jsx("div",{className:"message-text",children:n.text}),h.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:[h.jsxs("div",{className:"diff-header",children:[h.jsx("span",{className:"diff-icon",children:"🔄"}),h.jsx("span",{className:"diff-file",children:n.diff.fileName})]}),h.jsxs("div",{className:"diff-stats",children:[h.jsxs("span",{className:"diff-additions",children:["+",n.diff.newVersion.split(`
386
- `).length]}),h.jsxs("span",{className:"diff-deletions",children:["-",n.diff.previousVersion.split(`
387
- `).length]})]})]})]}),g&&O&&h.jsx("button",{className:`chat-copy-btn${i?" chat-copy-btn--copied":""}`,"aria-label":i?"Copied":"Copy message",title:i?"Copied!":"Copy",onClick:k=>{k.stopPropagation(),x(O)}})]}),h.jsx(jn,{title:c,isOpen:r,onClose:()=>o(!1),code:f,enableEdit:!1})]})}),a2=({stage:n="thinking",toolCalls:e=[]})=>{const[t,i]=V.useState(!1),[s,r]=V.useState(""),[o,c]=V.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??""),i(!0)}return h.jsxs("div",{className:"chat-message chat-message--bot","aria-live":"polite",children:[h.jsxs("div",{className:"chat-message-header",children:[h.jsx("span",{className:"chat-message-author",children:"AI"}),h.jsx("span",{className:"chat-message-time",children:"Now"})]}),h.jsxs("div",{className:"chat-bubble",children:[h.jsxs("div",{className:"thinking-animation",children:[h.jsx("div",{className:"thinking-stage",children:p}),h.jsxs("div",{className:"thinking-dots",children:[h.jsx("span",{className:"dot"}),h.jsx("span",{className:"dot"}),h.jsx("span",{className:"dot"})]})]}),g.length>0&&h.jsx(o1,{calls:g,showStatus:!0,onOpenArguments:(x,k)=>O(x,k),onOpenResponse:(x,k)=>O(x,k)})]}),h.jsx(jn,{title:s,isOpen:t,onClose:()=>i(!1),code:o??"",enableEdit:!1})]})},c2=oe.memo(({messages:n,isTyping:e,onOpenFile:t,onOpenDiff:i,thinkingStage:s,toolCalls:r})=>{const o=V.useMemo(()=>n.map(c=>({m:c,time:eA(c.timestamp)})),[n]);return h.jsxs(h.Fragment,{children:[o.map(({m:c,time:u})=>h.jsx("div",{children:h.jsx(o2,{message:c,onOpenFile:t,onOpenDiff:i})},c.id)),e&&h.jsx(a2,{stage:s,toolCalls:r})]})});function u2(n){const{enabled:e=!0}=n;V.useEffect(()=>{if(!e)return;const t=i=>{const s=i.metaKey||i.ctrlKey;if(s&&i.shiftKey&&(i.key==="A"||i.key==="a")){i.preventDefault(),n.onToggleChat?.();return}if(s&&(i.key==="I"||i.key==="i")){i.preventDefault(),n.onFocusInput?.();return}if(s&&i.key==="Enter"){i.preventDefault(),n.onSend?.();return}if(i.key==="Escape"){n.onStop?.();return}if(s&&(i.key==="K"||i.key==="k")){i.preventDefault(),n.onClear?.();return}};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e,n])}const d2=({width:n,sidebarRef:e,isChatOpen:t,onToggleChat:i,runnerAiMd:s,runnerDevMd:r,projectOverviewMd:o,graphqlSdl:c,availableElements:u})=>{const{chatState:f,setChatState:p,sendMessage:g,sendMessageWithText:O,clearChat:x,updateSettings:k,testOpenAIConnection:w,stopRequest:b,retryLastResponse:C,tokenStatus:S}=t2({availableElements:u,docs:{runnerAiMd:s,graphqlSdl:c,runnerDevMd:r,projectOverviewMd:o}}),[Q,P]=V.useState(!1),[_,T]=V.useState({isOpen:!1,title:"",content:""}),A=V.useRef(null),J=V.useRef(null),z=r2(f.messages,f.isTyping);l2(A,[z,f.isTyping]);const G=V.useCallback((X,L)=>{T({isOpen:!0,title:L,subtitle:X.fileName,content:X.content,language:X.language})},[]),H=V.useCallback(X=>{T({isOpen:!0,title:`Diff: ${X.fileName}`,subtitle:"Unified diff format",content:X.diffText||JE(X.previousVersion,X.newVersion,X.fileName),language:"diff"})},[]),D=V.useCallback(()=>{T(X=>({...X,isOpen:!1}))},[]),ee=V.useRef(O),q=V.useRef(t),ue=V.useRef(i);V.useEffect(()=>{ee.current=O,q.current=t,ue.current=i},[O,t,i]),V.useEffect(()=>{const X=L=>{const N=L.detail||{},j=N.messageText||"",I=N.displayText||void 0;j&&(q.current||ue.current(),ee.current(j,I))};return window.addEventListener("docs:add-to-ai",X),()=>window.removeEventListener("docs:add-to-ai",X)},[]);const ve=V.useCallback((X,L)=>{p(N=>{const j=N.inputValue||"",I=`@${X}`,se=j?`${j} ${I} `:`${I} `;return{...N,inputValue:se}})},[p]),de=V.useMemo(()=>f.messages.map(N=>N.author).lastIndexOf("user")!==-1&&!f.isTyping,[f.messages,f.isTyping]);return u2({enabled:!0,onToggleChat:i,onFocusInput:()=>{document.querySelector(".docs-chat-input .chat-main-input")?.focus()},onSend:()=>{!f.isTyping&&(f.inputValue||"").trim()&&g()},onStop:()=>{f.canStop&&b()},onClear:()=>{window.confirm("Are you sure you want to clear all chat history? This action cannot be undone.")&&x()}}),V.useEffect(()=>{if(!Q)return;const X=L=>{L.key==="Escape"&&(L.preventDefault(),P(!1))};return document.addEventListener("keydown",X),()=>document.removeEventListener("keydown",X)},[Q]),h.jsxs(h.Fragment,{children:[h.jsxs("aside",{ref:e,className:"docs-chat-sidebar",style:{width:`${n}px`},role:"complementary","aria-label":"AI chat",children:[h.jsx(fx,{icon:"",title:"Runtime AI (beta)",className:"sidebar-header--chat",status:h.jsxs(h.Fragment,{children:[f.isTyping?h.jsx("span",{className:"status-thinking",children:"Thinking..."}):h.jsx("span",{className:"status-ready",children:"Ready"}),h.jsx("span",{className:"status-sep",style:{margin:"0 8px",opacity:.5},children:"|"}),(()=>{const X=S.mode==="context"?`System: ${S.breakdown.system} • History: ${S.breakdown.history} • Input: ${S.breakdown.input}`:f.lastUsage?`Prompt: ${f.lastUsage.promptTokens} • Completion: ${f.lastUsage.completionTokens} • Total: ${f.lastUsage.totalTokens}`:"";return h.jsx("span",{className:"status-context",title:X,children:S.mode==="context"?h.jsxs(h.Fragment,{children:["Context: ",S.total]}):h.jsxs(h.Fragment,{children:["Tokens: ",S.total]})})})()]}),actions:h.jsxs(h.Fragment,{children:[h.jsx("button",{className:"sidebar-header__action-btn",onClick:X=>{X.preventDefault(),X.stopPropagation(),P(L=>!L)},title:"Settings",children:"⚙️"}),h.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.")&&x()},title:"Clear chat",children:"🗑️"})]})}),Q&&h.jsx(s2,{className:"docs-chat-settings",style:{padding:"12px",borderTop:"1px solid #eee",borderBottom:"1px solid #eee"},onClickOutside:X=>{X&&X.target?.closest('button[title="Settings"]')||P(!1)},children:h.jsx(n2,{settings:f.settings,onSave:X=>{k(X),P(!1)},onTest:(X,L)=>w(X,L),onClearKey:()=>k({openaiApiKey:null})})}),h.jsxs(h.Fragment,{children:[h.jsxs("div",{ref:A,className:"docs-chat-messages",children:[h.jsx(c2,{messages:z,isTyping:f.isTyping,thinkingStage:f.thinkingStage!=="none"?f.thinkingStage:void 0,toolCalls:f.toolCalls,onOpenFile:G,onOpenDiff:H}),h.jsx("div",{ref:J,style:{height:"20px"}})]}),h.jsx(i2,{chatState:f,setChatState:p,sendMessage:g,sendMessageWithText:O,stopRequest:b,onTaggedElementSelect:ve,availableElements:u,retryLastResponse:C,canRetry:de,docsRunner:s,docsSchema:c,docsProjectOverview:o,docsRunnerDev:r})]})]}),h.jsx(jn,{title:_.title,subtitle:_.subtitle,isOpen:_.isOpen,onClose:D,code:_.content})]})};function h2(){const[n,e]=V.useState(!0),[t,i]=V.useState([]),[s,r]=V.useState([]),[o,c]=V.useState([]),[u,f]=V.useState(Array.from({length:7},()=>Array.from({length:24},()=>0)));return V.useEffect(()=>{let p=!1;const g=`
388
- query LiveData($afterTimestamp: Float, $last: Int) {
389
- live {
390
- logs(afterTimestamp: $afterTimestamp, last: $last) {
391
- timestampMs
392
- level
393
- message
394
- }
395
- errors(afterTimestamp: $afterTimestamp, last: $last) {
396
- timestampMs
397
- sourceId
398
- sourceKind
399
- message
400
- sourceResolved { id }
401
- }
402
- runs(afterTimestamp: $afterTimestamp, last: $last) {
403
- timestampMs
404
- nodeId
405
- nodeKind
406
- ok
407
- durationMs
408
- }
409
- }
410
- }
411
- `;async function O(k){e(!0);try{const w=await rn(g,{last:200,afterTimestamp:k});if(p)return;const b=Date.now(),C=30,S=6e4,Q=b-C*S,P={};for(let G=0;G<C;G++){const H=Q+G*S;P[H]={success:0,error:0,canceled:0,durations:[]}}for(const G of w.live.runs||[]){if(G.timestampMs<Q)continue;const H=Math.floor((G.timestampMs-Q)/S)*S+Q,D=P[H];D&&(G.ok?D.success+=1:D.error+=1,typeof G.durationMs=="number"&&D.durations.push(G.durationMs))}const _=[],T=[];Object.keys(P).map(G=>Number(G)).sort((G,H)=>G-H).forEach(G=>{const H=P[G];if(_.push({t:G,success:H.success,error:H.error,canceled:H.canceled}),H.durations.length>0){const D=[...H.durations].sort((q,ue)=>q-ue),ee=q=>D[Math.min(D.length-1,Math.floor(q*(D.length-1)))];T.push({t:G,p50:ee(.5),p95:ee(.95),p99:ee(.99)})}else T.push({t:G,p50:0,p95:0,p99:0})});const A={};for(const G of w.live.errors||[]){const H=G.sourceId||"unknown";A[H]=(A[H]||0)+1}const J=Object.entries(A).map(([G,H])=>({taskId:G,errors:H})).sort((G,H)=>H.errors-G.errors).slice(0,10),z=Array.from({length:7},()=>Array.from({length:24},()=>0));for(const G of w.live.logs||[]){const H=new Date(G.timestampMs),D=H.getDay(),ee=H.getHours();z[D][ee]+=1}i(_),r(T),c(J),f(z)}finally{p||e(!1)}}O();const x=window.setInterval(()=>O(Date.now()-5e3),5e3);return()=>{p=!0,window.clearInterval(x)}},[]),{throughput:t,latency:s,errorByTask:o,heatmap:u,isLoading:n}}const f2=({onClose:n,overlay:e=!1})=>{const{throughput:t,latency:i,errorByTask:s,heatmap:r,isLoading:o}=h2();V.useEffect(()=>{const p=g=>{(g.key==="Escape"||g.key==="Esc")&&n()};return window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p)},[n]);const c=V.useMemo(()=>{if(t.length===0)return"";const p=800,g=160,O=Math.max(1,...t.map(b=>b.success+b.error+b.canceled)),x=b=>b/Math.max(1,t.length-1)*p,k=b=>g-b/O*g,w=t.map((b,C)=>`${x(C)},${k(b.success+b.error)}`);return`M0,${g} L${w.join(" L")} L${p},${g} Z`},[t]),u=V.useMemo(()=>{if(i.length===0)return{p50:"",p95:"",p99:""};const p=800,g=160,O=Math.max(1,...i.flatMap(b=>[b.p50,b.p95,b.p99])),x=b=>b/Math.max(1,i.length-1)*p,k=b=>g-b/O*g,w=b=>i.map((C,S)=>`${S===0?"M":"L"}${x(S)},${k(b(C))}`).join(" ");return{p50:w(b=>b.p50),p95:w(b=>b.p95),p99:w(b=>b.p99)}},[i]),f=h.jsxs(h.Fragment,{children:[h.jsxs("div",{className:"overview-stats-panel__header",children:[h.jsx("h3",{children:"Performance Stats"}),h.jsx("button",{onClick:n,className:"clear-button",children:"Close"})]}),h.jsxs("div",{className:"overview-stats-panel__grid",children:[h.jsxs("section",{className:"overview-stats-panel__section",children:[h.jsx("h4",{children:"Throughput over time"}),h.jsx("div",{className:"overview-stats-panel__chart",children:o?h.jsx("div",{className:"overview-stats-panel__loading",children:"Loading…"}):h.jsxs("svg",{width:"100%",height:160,viewBox:"0 0 800 160",children:[h.jsx("defs",{children:h.jsxs("linearGradient",{id:"tp",x1:"0",y1:"0",x2:"0",y2:"1",children:[h.jsx("stop",{offset:"0%",stopColor:"#60a5fa",stopOpacity:"0.7"}),h.jsx("stop",{offset:"100%",stopColor:"#60a5fa",stopOpacity:"0.1"})]})}),h.jsx("path",{d:c,fill:"url(#tp)",stroke:"#3b82f6",strokeWidth:1})]})})]}),h.jsxs("section",{className:"overview-stats-panel__section",children:[h.jsx("h4",{children:"Latency percentiles"}),h.jsx("div",{className:"overview-stats-panel__chart",children:o?h.jsx("div",{className:"overview-stats-panel__loading",children:"Loading…"}):h.jsxs("svg",{width:"100%",height:160,viewBox:"0 0 800 160",children:[h.jsx("path",{d:u.p50,fill:"none",stroke:"#22c55e",strokeWidth:2}),h.jsx("path",{d:u.p95,fill:"none",stroke:"#eab308",strokeWidth:2}),h.jsx("path",{d:u.p99,fill:"none",stroke:"#ef4444",strokeWidth:2})]})})]}),h.jsxs("section",{className:"overview-stats-panel__section",children:[h.jsx("h4",{children:"Error rate"}),h.jsx("div",{className:"overview-stats-panel__list",children:o?h.jsx("div",{className:"overview-stats-panel__loading",children:"Loading…"}):s.length===0?h.jsx("div",{className:"overview-stats-panel__empty",children:"No errors"}):h.jsx("ul",{children:s.map(p=>h.jsxs("li",{children:[p.taskId," — ",p.errors]},p.taskId))})})]}),h.jsxs("section",{className:"overview-stats-panel__section",children:[h.jsx("h4",{children:"Activity heatmap"}),h.jsx("div",{className:"overview-stats-panel__chart",children:!o&&h.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,w=g/7*160,C=`rgba(99,102,241,${.15+Math.min(1,O/10)*.75})`;return h.jsx("rect",{x:k,y:w,width:800/24-1,height:160/7-1,fill:C},`${x}-${g}`)}))})})]})]})]});return e?h.jsx("div",{className:"overview-stats-panel overview-stats-panel--overlay",onClick:n,children:h.jsx("div",{role:"dialog","aria-modal":"true",className:"overview-stats-panel__content",onClick:p=>p.stopPropagation(),children:f})}):h.jsx("div",{className:"overview-stats-panel overview-stats-panel--inline",children:h.jsx("div",{role:"region","aria-label":"Performance stats",className:"overview-stats-panel__content",children:f})})},ox=({introspector:n,namespacePrefix:e,runnerFrameworkMd:t,runnerDevMd:i,projectOverviewMd:s,graphqlSdl:r})=>{const o=V.useRef(!1),[c,u]=V.useState(()=>{try{return localStorage.getItem(Fe.STORAGE_KEYS.CHAT_OPEN)==="true"}catch{return Fe.DEFAULTS.CHAT_OPEN}}),[f,p]=V.useState(()=>{try{const q=localStorage.getItem("docs-dark-mode");return q?JSON.parse(q):!0}catch{return!0}});V.useEffect(()=>{document.documentElement.setAttribute("data-theme",f?"dark":"light");try{localStorage.setItem("docs-dark-mode",JSON.stringify(f))}catch(q){console.warn("Failed to save dark mode preference:",q)}},[f]);const g=()=>{p(!f)},O=BM(n,e),x=VM(),k=YM(40),w=qM(c?k.chatWidth+40:0),b=nx(w.sidebarWidth,180),C=nx(k.chatWidth,180),[S,Q]=V.useState(!1),P=()=>{u(q=>{const ue=!q;try{localStorage.setItem(Fe.STORAGE_KEYS.CHAT_OPEN,String(ue))}catch{}return Q(!0),window.setTimeout(()=>Q(!1),260),ue})},[_,T]=V.useState(()=>{try{return window.location.hash==="#overview-stats"}catch{return!1}});V.useEffect(()=>{const q=()=>{try{T(window.location.hash==="#overview-stats")}catch{}};return window.addEventListener("hashchange",q),q(),()=>window.removeEventListener("hashchange",q)},[]);const A=()=>{try{window.location.hash="#overview-stats"}catch{}},J=()=>{try{window.location.hash==="#overview-stats"&&(window.location.hash="#overview")}catch{}},z=GM(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}),G=HM({tasks:O.tasks.length,resources:O.resources.length,events:O.events.length,hooks:O.hooks.length,middlewares:O.middlewares.length,tags:O.tags.length}),H=O.tasks.length+O.resources.length+O.events.length+O.hooks.length+O.middlewares.length,D=q=>{window.location.hash=`#${q}`,document.getElementById(q)?.scrollIntoView({behavior:"instant",block:"start"})};V.useEffect(()=>{const q=()=>{const X=window.location.hash;if(X&&X.length>1){const L=X.slice(1);document.getElementById(L)?.scrollIntoView({behavior:"instant",block:"start"})}},ue=()=>{const X=window.location.hash;if(X.startsWith("#element-")&&O.localNamespaceSearch){const L=X.substring(9),N=n.getAll(),j=O.allElements,I=N.some(K=>K.id===L),se=j.some(K=>K.id===L);I&&!se&&O.resetFilters()}q()},ve=()=>{setTimeout(q,100)},de=()=>{ve()};return window.addEventListener("hashchange",ue),window.addEventListener("docs:layout-change",ve),window.addEventListener("docs:diagnostic-change",de),o.current||(ue(),o.current=!0),()=>{window.removeEventListener("hashchange",ue),window.removeEventListener("docs:layout-change",ve),window.removeEventListener("docs:diagnostic-change",de)}},[O.localNamespaceSearch,O.allElements,O.setLocalNamespaceSearch,n]),window!==void 0&&console.log(n.serialize());const ee=w.isResizing||k.isResizing||S||b!==w.sidebarWidth||C!==k.chatWidth;return h.jsxs("div",{className:"docs-app",children:[h.jsx(g_,{sidebarWidth:w.sidebarWidth,sidebarRef:w.sidebarRef,isChatOpen:c,onToggleChat:P,leftOffset:c?k.chatWidth+40:0,isDarkMode:f,onToggleDarkMode:g,viewMode:x.viewMode,treeType:x.treeType,localNamespaceSearch:O.localNamespaceSearch,showSystem:O.showSystem,treeNodes:z.treeNodes,sections:G,totalComponents:H,onViewModeChange:x.handleViewModeChange,onTreeTypeChange:x.handleTreeTypeChange,onNamespaceSearchChange:O.setLocalNamespaceSearch,onShowSystemChange:O.handleShowSystemChange,onTreeNodeClick:z.handleTreeNodeClick,onToggleExpansion:z.handleToggleExpansion,onSectionClick:D}),h.jsx("div",{ref:w.resizerRef,className:`docs-sidebar-resizer ${w.isResizing?"docs-sidebar-resizer--active":""}`,style:{left:`${(c?k.chatWidth+40:0)+w.sidebarWidth+40}px`},onMouseDown:w.handleMouseDown}),h.jsx(XM,{introspector:n,sidebarWidth:b,chatWidth:C,isChatOpen:c,openStats:A,isStatsOpen:_,closeStats:J,chatPushesLeft:!0,suspendRendering:ee,tasks:O.tasks,resources:O.resources,events:O.events,hooks:O.hooks,middlewares:O.middlewares,tags:O.tags}),c&&h.jsxs(h.Fragment,{children:[h.jsx("div",{ref:k.resizerRef,className:`docs-sidebar-resizer ${k.isResizing?"docs-sidebar-resizer--active":""}`,style:{left:`${k.chatWidth+40}px`},onMouseDown:k.handleMouseDown}),h.jsx(d2,{width:k.chatWidth,sidebarRef:k.sidebarRef,onToggleChat:P,isChatOpen:c,runnerAiMd:t,runnerDevMd:i,projectOverviewMd:s,graphqlSdl:r,availableElements:{tasks:O.tasks.map(q=>({id:q.id,name:q.id,title:q.meta?.title||void 0,description:q.meta?.description||void 0})),resources:O.resources.map(q=>({id:q.id,name:q.id,title:q.meta?.title||void 0,description:q.meta?.description||void 0})),events:O.events.map(q=>({id:q.id,name:q.id,title:q.meta?.title||void 0,description:q.meta?.description||void 0})),hooks:O.hooks.map(q=>({id:q.id,name:q.id,title:q.meta?.title||void 0,description:q.meta?.description||void 0})),middlewares:O.middlewares.map(q=>({id:q.id,name:q.id,title:q.meta?.title||void 0,description:q.meta?.description||void 0})),tags:O.tags.map(q=>({id:q.id,name:q.id,title:q.meta?.title||void 0,description:q.meta?.description||void 0}))}})]}),_&&h.jsx(f2,{overlay:!0,onClose:J})]})},p2=Symbol("runner-dev.elementKind");function lo(n){return new Map(n.map(e=>[e.id,e]))}function At(n){return n?Array.isArray(n)?n.map(e=>typeof e=="string"?e:m2(e)).filter(Boolean):typeof n=="string"?[n]:[]:[]}function m2(n){return n?typeof n.id=="string"?n.id:String(n):""}function a1(n){return n.getEvents().filter(t=>n.getHooksOfEvent(t.id).length===0).map(t=>({id:t.id}))}function c1(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 u1(n){return n.getMiddlewares().filter(t=>{const i=(t.usedByTasks?.length??0)>0||(t.usedByResources?.length??0)>0,s=!!t.global?.enabled;return!i&&!s}).map(t=>({id:t.id}))}function d1(n){const e=n.getResources(),t=new Map;for(const s of e)for(const r of s.overrides??[])t.has(r)||t.set(r,new Set),t.get(r).add(s.id);const i=[];for(const[s,r]of t)if(r.size>1)for(const o of r)i.push({targetId:s,by:o});return i.sort((s,r)=>s.targetId===r.targetId?s.by.localeCompare(r.by):s.targetId.localeCompare(r.targetId)),i}function g2(n){const e=[];n.getResources(),n.getTasks(),n.getHooks(),n.getEvents(),n.getMiddlewares();for(const t of a1(n))Sf(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 c1(n))Sf(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 u1(n))Sf(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 d1(n))e.push({severity:"error",code:"OVERRIDE_CONFLICT",message:`Override conflict on ${t.targetId} by ${t.by}`,nodeId:t.targetId});return e.sort((t,i)=>{if(t.code!==i.code)return t.code.localeCompare(i.code);const s=t.nodeId??"",r=i.nodeId??"";return s!==r?s.localeCompare(r):t.message.localeCompare(i.message)}),e}function Sf(n){const e=String(n).toLowerCase();return e.startsWith("globals.")||e==="*"}function O2(n,e){try{Object.defineProperty(n,p2,{value:e,enumerable:!1,configurable:!1,writable:!1})}catch{}return n}class jm{tasks=[];hooks=[];resources=[];events=[];taskMiddlewares=[];resourceMiddlewares=[];middlewares=[];tags=[];store=null;rootId=null;taskMap=new Map;hookMap=new Map;resourceMap=new Map;eventMap=new Map;middlewareMap=new Map;tagMap=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.rootId=e.rootId??null,this.taskMap=lo(this.tasks),this.hookMap=lo(this.hooks),this.resourceMap=lo(this.resources),this.eventMap=lo(this.events),this.middlewareMap=lo(this.middlewares),this.tags=e.tags,this.tagMap=new Map;for(const t of this.tags)this.tagMap.set(t.id,t)}buildRunsOptions(e,t){const i={};typeof t?.afterTimestamp=="number"&&(i.afterTimestamp=t.afterTimestamp),typeof t?.last=="number"&&(i.last=t.last);const s=t?.filter??{};return i.nodeIds=[String(e)],Array.isArray(s.nodeKinds)&&(i.nodeKinds=s.nodeKinds),typeof s.ok=="boolean"&&(i.ok=s.ok),Array.isArray(s.parentIds)&&(i.parentIds=s.parentIds),Array.isArray(s.rootIds)&&(i.rootIds=s.rootIds),Array.isArray(s.correlationIds)&&(i.correlationIds=s.correlationIds),i}getRoot(){const e=this.store,i=(e?.root?.resource?.id?String(e.root.resource.id):null)??this.rootId??this.resources[0]?.id;return O2(this.resourceMap.get(String(i)),"RESOURCE")}getAll(){return[...this.tasks,...this.hooks,...this.resources,...this.events,...this.middlewares]}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=At(e.dependsOn),i=this.tasks.filter(u=>t.includes(u.id)),s=this.hooks.filter(u=>t.includes(u.id)),r=this.resources.filter(u=>t.includes(u.id)),o=At(e.emits),c=this.events.filter(u=>o.includes(u.id));return{tasks:i,hooks:s,resources:r,emitters:c}}getEmittedEvents(e){const t=At(e.emits);return this.events.filter(i=>t.includes(i.id))}getMiddlewaresByIds(e){const t=new Set(At(e));return this.middlewares.filter(i=>t.has(i.id))}getResourcesByIds(e){const t=new Set(At(e));return this.resources.filter(i=>t.has(i.id))}getTasksByIds(e){const t=new Set(At(e));return this.tasks.filter(i=>t.has(i.id))}getHooksByIds(e){const t=new Set(At(e));return this.hooks.filter(i=>t.has(i.id))}getEventsByIds(e){const t=new Set(At(e));return this.events.filter(i=>t.has(i.id))}getTasksUsingResource(e){return[...this.tasks,...this.hooks].filter(t=>At(t.dependsOn).includes(e))}getTasksUsingMiddleware(e){return this.tasks.filter(t=>At(t.middleware).includes(e))}getTaskLikesUsingMiddleware(e){return this.getTasksUsingMiddleware(e)}getEmittersOfEvent(e){return[...this.tasks,...this.hooks,...this.resources].filter(t=>At(t.emits).includes(e))}getHooksOfEvent(e){return this.hooks.filter(t=>t.events.includes(e))}getMiddlewareEmittedEvents(e){const t=this.getTasksUsingMiddleware(e),i=new Set;for(const s of t)for(const r of At(s.emits))i.add(r);return this.events.filter(s=>i.has(s.id))}getMiddlewareUsagesForTask(e){const t=this.taskMap.get(e);return t?(t.middlewareDetailed??[]).map(s=>({id:s.id,config:s.config??null,node:this.middlewareMap.get(s.id)})).filter(s=>!!s.node):[]}getMiddlewareUsagesForResource(e){const t=this.resourceMap.get(e);return t?(t.middlewareDetailed??[]).map(s=>({id:s.id,config:s.config??null,node:this.middlewareMap.get(s.id)})).filter(s=>!!s.node):[]}getTasksUsingMiddlewareDetailed(e){const t=[];return(s=>{for(const r of s)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 i of this.resources)if((i.middleware||[]).includes(e)){const s=(i.middlewareDetailed||[]).find(r=>r.id===e)?.config??null;t.push({id:i.id,config:s??null,node:i})}return t}getEmittedEventsForResource(e){const t=this.getTasksUsingResource(e),i=new Set;for(const s of t)for(const r of At(s.emits))i.add(r);return this.getEventsByIds(Array.from(i))}getTasksWithTag(e){return this.tasks.filter(t=>At(t.tags).includes(e))}getHooksWithTag(e){return this.hooks.filter(t=>At(t.tags).includes(e))}getResourcesWithTag(e){return this.resources.filter(t=>At(t.tags).includes(e))}getMiddlewaresWithTag(e){return this.middlewares.filter(t=>At(t.tags).includes(e))}getEventsWithTag(e){return this.events.filter(t=>At(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 a1(this)}getUnemittedEvents(){return c1(this)}getUnusedMiddleware(){return u1(this)}getOverrideConflicts(){return d1(this)}getDiagnostics(){return g2(this)}buildRunOptionsForTask(e,t){return this.buildRunsOptions(e,t)}buildRunOptionsForHook(e,t){return this.buildRunsOptions(e,t)}serialize(){return{tasks:this.tasks,hooks:this.hooks,resources:this.resources,events:this.events,middlewares:this.middlewares,tags:this.tags,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 jm({data:e})}}function ax(n){return jm.deserialize(n)}function v2(){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 y2(){try{return localStorage.getItem(Fe.STORAGE_KEYS.SHOW_SYSTEM)==="1"}catch{return Fe.DEFAULTS.SHOW_SYSTEM}}function x2(n){try{localStorage.setItem(Fe.STORAGE_KEYS.SHOW_SYSTEM,n?"1":"0")}catch{}}function k2(n,e){const t=Fe.SYSTEM_TAG_ID;if(e===t)return!0;const i=[n.getTask(e),n.getHook(e),n.getResource(e),n.getMiddleware(e),n.getEvent(e)];for(const s of i)if(s&&Array.isArray(s.tags)&&s.tags.includes(t))return!0;return!1}function cx(n){const e=v2();if(!e)return;!y2()&&k2(n,e)&&x2(!0)}function ux(){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 S2(){const n=document.getElementById("root"),e=window.__DOCS_PROPS__;if(e&&e.introspectorData){const c=ax(e.introspectorData);cx(c),S0.hydrateRoot(n,oe.createElement(ox,{introspector:c,namespacePrefix:e.namespacePrefix,runnerFrameworkMd:e.runnerFrameworkMd,runnerDevMd:e.runnerDevMd,projectOverviewMd:e.projectOverviewMd,graphqlSdl:e.graphqlSdl})),ux();return}const t=__API_URL__||"",i=new URL("/docs/data",t||window.location.origin),r=await(await fetch(i.toString())).json(),o=ax(r.introspectorData);cx(o),S0.createRoot(n).render(oe.createElement(ox,{introspector:o,namespacePrefix:r.namespacePrefix,runnerFrameworkMd:r.runnerFrameworkMd,runnerDevMd:r.runnerDevMd,projectOverviewMd:r.projectOverviewMd,graphqlSdl:r.graphqlSdl})),ux()}S2();
412
- //# sourceMappingURL=docs-BFikHcCB.js.map